/* === Base === */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  background: #0e1d36 !important;
  height: 100%;
}
html, body { overflow-x: hidden; max-width: 100%; overscroll-behavior-x: none; }
body { overflow-x: hidden !important; touch-action: pan-y; max-width:100vw; position:relative; }
#shv53, .shv5, .shv5-top, .shv5-main, .shv5-hero, .shv5-section { max-width:100vw; overflow-x:hidden; }
#shv53, #shv53 * { box-sizing: border-box; }
#shv53 { width: 100%; }

/* === Tokens === */
:root{
  --bg1:#15284a;
  --bg2:#122444;
  --bg3:#0e1d36;

  --text:#eef2ff;
  --muted:rgba(238,242,255,.76);
  --accent:#ff8c00;

  --blue:rgba(45,115,255,.30);
  --blue2:rgba(30,80,180,.20);
  --orange:rgba(255,140,0,.20);
  --orange2:rgba(255,176,0,.13);

  --green:#23c55e;

  --line:rgba(255,255,255,.12);
  --line2:rgba(255,255,255,.09);

  --glass:rgba(255,255,255,.065);
  --glass2:rgba(255,255,255,.04);

  --r:22px;
  --shadow:0 22px 80px rgba(0,0,0,.30);
  --shadow2:0 12px 38px rgba(0,0,0,.19);

  --w:1120px;
  --pad:18px;

  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  --fw-strong: 720;
  --fw-bold: 650;
  --fw-reg: 520;
}

.shv5{
  font-family: var(--font);
  color: var(--text);
  padding-bottom: 74px;
  position: relative;
}

/* === Background === */
.shv5-bg{
  position: fixed;
  inset: 0;
  z-index: -10;
  pointer-events: none;
  background:
    radial-gradient(950px 620px at 16% -6%, var(--blue), transparent 58%),
    radial-gradient(760px 540px at 90% 10%, var(--orange), transparent 60%),
    radial-gradient(1100px 760px at 50% 28%, rgba(255,255,255,.105), transparent 62%),
    radial-gradient(980px 760px at 52% 120%, var(--blue2), transparent 66%),
    radial-gradient(900px 420px at 55% 78%, var(--orange2), transparent 70%),
    linear-gradient(180deg, var(--bg1) 0%, var(--bg2) 58%, var(--bg3) 100%);
  animation: shv5Drift 18s ease-in-out infinite alternate;
  transform: translate3d(0,0,0);
}
@keyframes shv5Drift{
  0%   { transform: translate3d(-0.8%, -0.6%, 0) scale(1.01); opacity: .95; }
  100% { transform: translate3d( 0.8%,  0.6%, 0) scale(1.01); opacity: 1; }
}
@media (prefers-reduced-motion: reduce){ .shv5-bg{ animation:none !important; } }
.shv5-bg::after{
  content:"";
  position:absolute; inset:0;
  opacity:.048;
  mix-blend-mode: overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
  background-size:240px 240px;
}

.shv5-wrap{ width:min(var(--w), calc(100% - 2*var(--pad))); margin:0 auto; max-width:100%; min-width:0; }

/* === Subtle glow hover (premium) === */
.shv5-glowcard{
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .22s ease, filter .18s ease;
}
.shv5-glowcard:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 0 0 10px rgba(45,115,255,.06), var(--shadow2);
}

/* === Top bar === */
.shv5-top{
  position: sticky; top:0; z-index: 50;
  background: rgba(16,28,50,.52);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line2);
}
.shv5-top__inner{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding: 12px 0; min-width:0; }
.shv5-brand{ display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--text); min-width:0; flex:1 1 auto; }
.shv5-logo{
  width:42px; height:42px; border-radius:14px;
  border:1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.03);
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
  object-fit: cover;
}
.shv5-brand__name{ font-weight: var(--fw-strong); letter-spacing:.2px; font-size:18px; line-height:1; }
.shv5-brand__accent{
  background: linear-gradient(90deg, rgba(255,176,0,.95), rgba(255,140,0,.95));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.shv5-brand__tag{ margin-top:4px; font-size:12.5px; color:var(--muted); font-weight: var(--fw-reg); }
.shv5-top__cta{ display:flex; gap:10px; align-items:center; min-width:0; flex-wrap:wrap; justify-content:flex-end; }
.shv5-chip{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 9px 11px;
  border-radius:999px;
  border:1px solid var(--line);
  background: rgba(255,255,255,.055);
  color:var(--text);
  text-decoration:none;
  font-weight: var(--fw-bold);
  font-size: 13.5px;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, box-shadow .2s ease;
  white-space: nowrap;
  max-width:100%;
}
.shv5-chip:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.075);
  border-color: rgba(255,255,255,.20);
  box-shadow: 0 0 0 10px rgba(255,140,0,.06);
}
.shv5-chip--ghost{ background: rgba(255,255,255,.035); color: rgba(238,242,255,.90); }


.shv5-hero__inner, .shv5-grid, .shv5-two, .shv5-side, .shv5-panel, .shv5-surface, .shv5-formcard, .shv5-glasscopy, .shv5-copy, .shv5-kicker, .shv5-badgerow, .shv5-scn, .shv5-row, .shv5-info, .shv5-infobar{ min-width:0; }
/* === Hero === */
.shv5-hero{ padding: 28px 0 14px; }
.shv5-hero__inner{ display:grid; grid-template-columns: 1fr; gap: 14px; align-items:start; }

.shv5-glasscopy{
  position: relative;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  box-shadow: 0 0 0 1px rgba(255,255,255,.03) inset;
  padding: 16px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.shv5-glasscopy::before{
  content:"";
  position:absolute; inset:-2px;
  border-radius: 28px;
  background:
    radial-gradient(720px 280px at 16% 0%, rgba(45,115,255,.18), transparent 58%),
    radial-gradient(620px 260px at 92% 14%, rgba(255,140,0,.12), transparent 62%);
  pointer-events:none;
  opacity:.9;
}
.shv5-glasscopy > *{ position: relative; }

.shv5-kicker{
  display:inline-flex; align-items:center; gap:10px;
  border:1px solid var(--line2);
  background: rgba(255,255,255,.035);
  padding:8px 12px;
  border-radius:999px;
  color: rgba(238,242,255,.86);
  font-size: 12.5px;
  font-weight: var(--fw-reg);
}
.shv5-pulse{
  width:9px; height:9px; border-radius:999px;
  background: linear-gradient(180deg, rgba(45,115,255,.95), rgba(255,140,0,.95));
  box-shadow: 0 0 0 7px rgba(45,115,255,.10);
}

.shv5-badgerow{
  margin-top: 10px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.shv5-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.02);
  color: rgba(238,242,255,.86);
  font-size: 12.6px;
  font-weight: var(--fw-reg);
}
.shv5-badge b{ font-weight: var(--fw-strong); color: rgba(238,242,255,.94); }
.shv5-badge--gold{
  border-color: rgba(255,140,0,.18);
  background: rgba(255,140,0,.06);
}
.shv5-badge__dot{
  width:8px; height:8px; border-radius:999px;
  background: rgba(255,176,0,.95);
  box-shadow: 0 0 0 7px rgba(255,140,0,.10);
}
.shv5-badge__mini{ opacity:.95; }

.shv5-h1{
  margin:14px 0 8px;
  font-size: clamp(28px, 5.2vw, 44px);
  letter-spacing: -0.7px;
  line-height: 1.08;
  font-weight: var(--fw-strong);
}
.shv5-accent{
  background: linear-gradient(90deg, rgba(45,115,255,.98), rgba(255,140,0,.98));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.shv5-lead{
  margin:0;
  color: var(--muted);
  font-size: 15.8px;
  line-height: 1.7;
  font-weight: var(--fw-reg);
  max-width: 62ch;
  text-shadow: 0 1px 0 rgba(0,0,0,.12);
}

.shv5-diff{
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.03);
  color: rgba(238,242,255,.86);
  font-size: 12.8px;
  line-height: 1.6;
  font-weight: var(--fw-reg);
}

.shv5-actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 14px; }
.shv5-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(45,115,255,.32);
  background: linear-gradient(180deg, rgba(45,115,255,.14), rgba(255,255,255,.02));
  color: var(--text);
  text-decoration:none;
  font-weight: var(--fw-strong);
  transition: transform .15s ease, filter .15s ease, border-color .15s ease, box-shadow .25s ease;
  position: relative;
  overflow:hidden;
}
.shv5-btn:hover{ transform: translateY(-1px); filter: brightness(1.03); border-color: rgba(45,115,255,.56); box-shadow: 0 0 0 10px rgba(45,115,255,.08); }
.shv5-btn--soft{ border-color: var(--line); background: rgba(255,255,255,.045); }
.shv5-btn--primary{ border-color: rgba(255,140,0,.36); background: linear-gradient(180deg, rgba(255,140,0,.17), rgba(255,255,255,.02)); }
.shv5-btn--primary:hover{ border-color: rgba(255,140,0,.60); box-shadow: 0 0 0 10px rgba(255,140,0,.10); }

/* micro-proof */
.shv5-microproof{
  margin-top: 12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.shv5-mp{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 9px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.018);
  color: rgba(238,242,255,.88);
  font-size: 12.8px;
  font-weight: var(--fw-reg);
}
.shv5-mp__i{ opacity:.95; }

.shv5-trust{
  margin-top: 12px;
  display:flex; flex-wrap:wrap; gap:8px; align-items:center;
  color: rgba(238,242,255,.74);
  font-size: 12.8px;
  font-weight: var(--fw-reg);
}
.shv5-trust__dot{ opacity:.35; }
.shv5-trust__item{ position:relative; padding-left:18px; }
.shv5-trust__item::before{ content:"✓"; position:absolute; left:0; top:0; opacity:.65; color: rgba(255,176,0,.95); }

/* Premium surfaces */
.shv5-panel, .shv5-surface, .shv5-formpanel, .shv5-sidecard, .shv5-supplierCard{ position:relative; }
.shv5-panel::after, .shv5-surface::after, .shv5-formpanel::after, .shv5-sidecard::after, .shv5-supplierCard::after{
  content:"";
  position:absolute; inset:-1px;
  border-radius: inherit;
  pointer-events:none;
  background: linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,0) 35%, rgba(255,140,0,.10) 70%, rgba(255,255,255,0));
  opacity:.22;
  mask: linear-gradient(#000, #000) content-box, linear-gradient(#000, #000);
  -webkit-mask: linear-gradient(#000, #000) content-box, linear-gradient(#000, #000);
  padding:1px;
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.shv5-panel{
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.11);
  background: linear-gradient(180deg, var(--glass), var(--glass2));
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
  padding: 14px;
  overflow:hidden;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.shv5-panel::before{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(700px 260px at 22% 0%, rgba(45,115,255,.18), transparent 58%),
    radial-gradient(620px 220px at 88% 12%, rgba(255,140,0,.12), transparent 60%);
  pointer-events:none;
  opacity: .95;
}
.shv5-panel > *{ position:relative; }
.shv5-panel__top{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom: 10px; }
.shv5-panel__title{ font-weight: var(--fw-strong); letter-spacing:.2px; }
.shv5-link{ color: rgba(238,242,255,.88); text-decoration:none; border-bottom: 1px solid rgba(255,255,255,.16); padding-bottom: 2px; font-size: 12.5px; font-weight: var(--fw-reg); }
.shv5-link:hover{ border-bottom-color: rgba(255,140,0,.55); }

/* scenarios */
.shv5-scenarios{ display:grid; gap:10px; }
.shv5-scn{
  display:grid;
  grid-template-columns: 92px 1fr;
  gap:12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.025);
  overflow:hidden;
  cursor:pointer;
}
.shv5-scn:hover{ border-color: rgba(255,140,0,.24); background: rgba(255,255,255,.035); }

.shv5-scn__media{
  width:92px;
  min-height:92px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position:relative;
  filter: saturate(1.02) contrast(1.02);
}

/* Individuelle illustrasjoner (Cloudinary) */
.shv5-scn__media--left{
  background-image: url("https://res.cloudinary.com/di4e96sme/image/upload/v1772573286/ChatGPT_Image_3._mars_2026_22_27_48_ojsyxg.png");
}
.shv5-scn__media--mid{
  background-image: url("https://res.cloudinary.com/di4e96sme/image/upload/v1772573288/ChatGPT_Image_3._mars_2026_22_27_41_agtkwp.png");
}
.shv5-scn__media--right{
  background-image: url("https://res.cloudinary.com/di4e96sme/image/upload/v1772573287/ChatGPT_Image_3._mars_2026_22_27_45_hucih8.png");
}

/* Subtil overlay for premium/kontrast */
.shv5-scn__media::after{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(120px 120px at 30% 20%, rgba(255,255,255,.10), transparent 60%),
              linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.32));
  mix-blend-mode: multiply;
  pointer-events:none;
}

.shv5-scn__body{ padding: 12px 12px 12px 0; }
.shv5-scn__h{ font-weight: var(--fw-strong); letter-spacing:.1px; }
.shv5-scn__p{ margin-top:4px; color: var(--muted); font-size: 13px; line-height:1.55; font-weight: var(--fw-reg); text-shadow: 0 1px 0 rgba(0,0,0,.12); }
.shv5-note{ margin-top: 10px; color: var(--muted); font-size: 12.6px; line-height:1.6; font-weight: var(--fw-reg); }

/* Responsivt: litt større thumbnails på desktop */
@media (min-width: 980px){
  .shv5-scn{ grid-template-columns: 108px 1fr; }
  .shv5-scn__media{ width:108px; min-height:108px; }
}
/* sections */
.shv5-section{ padding: 20px 0; }
.shv5-surface{
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.022);
  padding: 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.shv5-head{ margin-bottom: 12px; }
.shv5-h2{ margin:0; font-size: 22px; letter-spacing:-.2px; font-weight: var(--fw-strong); }
.shv5-sub{ margin:8px 0 0; color: var(--muted); line-height:1.65; font-weight: var(--fw-reg); max-width: 72ch; text-shadow: 0 1px 0 rgba(0,0,0,.10); }
.shv5-steps{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 10px; }
.shv5-step{
  display:flex; align-items:center; gap:10px;
  padding: 9px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.022);
  color: rgba(238,242,255,.90);
  font-weight: var(--fw-reg);
  font-size: 13.2px;
}
.shv5-step__n{
  width:26px; height:26px; border-radius:999px;
  display:grid; place-items:center;
  border:1px solid rgba(255,140,0,.22);
  background: rgba(255,140,0,.10);
  font-weight: var(--fw-strong);
  font-size: 12.5px;
}

/* infobar */
.shv5-infobar{
  margin: 10px 0 0;
  display:flex; align-items:flex-start; gap:10px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,140,0,.18);
  background: rgba(255,140,0,.06);
  color: rgba(238,242,255,.86);
  font-size: 13px;
  line-height: 1.55;
  font-weight: var(--fw-reg);
}
.shv5-infobar b{ font-weight: var(--fw-strong); color: rgba(238,242,255,.94); }
.shv5-infobar__i{
  width:20px; height:20px; margin-top: 1px;
  display:grid; place-items:center;
  color: rgba(255,176,0,.95);
  flex: 0 0 auto;
}
.shv5-infobar__i svg{ width:20px; height:20px; }

/* form */
.shv5-section--form{ padding-top: 10px; }
.shv5-formhead{ margin-bottom: 12px; }
.shv5-grid{ display:grid; grid-template-columns: 1fr; gap: 12px; align-items:start; }

.shv5-formpanel{
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, var(--glass), var(--glass2));
  box-shadow: var(--shadow);
  overflow:hidden;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.shv5-form{ padding: 14px; }
.shv5-row{ margin-bottom: 12px; }
.shv5-two{ display:grid; grid-template-columns: 1fr; gap: 12px; }

.shv5-label{ display:block; margin-bottom: 7px; font-weight: var(--fw-bold); font-size: 13px; color: rgba(238,242,255,.92); }
.shv5-input{
  width:100%;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.15);
  background: rgba(18,30,54,.44);
  color: var(--text);
  padding: 12px 12px;
  outline:none;
  font-weight: var(--fw-reg);
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.shv5-input:focus{ border-color: rgba(255,140,0,.44); background: rgba(18,30,54,.54); transform: translateY(-1px); }

/* Full-width row helper */
.shv5-row--full{ grid-column: 1 / -1; }

/* Icon inputs (tonal accent) */
.shv5-input.shv5-i-user,
.shv5-input.shv5-i-phone,
.shv5-input.shv5-i-mail,
.shv5-input.shv5-i-pin,
.shv5-input.shv5-i-note,
.shv5-input.shv5-i-clock,
.shv5-input.shv5-i-tag{
  padding-left: 44px;
  background-repeat: no-repeat;
  background-position: 14px 50%;
  background-size: 18px 18px;
}

.shv5-textarea.shv5-i-note{
  background-position: 14px 16px;
  padding-top: 14px;
}

.shv5-input.shv5-i-user{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-phone{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.86 19.86 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.86 19.86 0 0 1 2.11 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.86.31 1.7.57 2.5a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.58-1.14a2 2 0 0 1 2.11-.45c.8.26 1.64.45 2.5.57A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-mail{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v16H4z'/%3E%3Cpath d='m22 6-10 7L2 6'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-pin{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4.5 8-12a8 8 0 0 0-16 0c0 7.5 8 12 8 12z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-note{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3Cpath d='M10 9H8'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-clock{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E"); }
.shv5-input.shv5-i-tag{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8c00' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.59 13.41 11 3.83V2h-1.83L2 9.17V11l9.59 9.59a2 2 0 0 0 2.82 0l6.18-6.18a2 2 0 0 0 0-2.82z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E"); }


.shv5-textarea{ resize: vertical; min-height: 118px; }

.shv5-radio{ display:flex; flex-wrap:wrap; gap:8px; }
.shv5-r{
  display:flex; align-items:center; gap:10px;
  padding: 9px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.022);
  cursor:pointer;
  user-select:none;
  transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .2s ease;
}
.shv5-r:hover{ transform: translateY(-1px); box-shadow: 0 0 0 10px rgba(255,140,0,.05); }
.shv5-r input{ accent-color:#ff8a00; }
.shv5-r span{ font-size: 13px; font-weight: var(--fw-reg); color: rgba(238,242,255,.92); }
.shv5-r.is-active{
  border-color: rgba(255,140,0,.38) !important;
  background: rgba(255,140,0,.10) !important;
  box-shadow: 0 0 0 10px rgba(255,140,0,.06);
}

.shv5-help{ margin-top: 8px; color: var(--muted); font-size: 12.5px; line-height:1.55; font-weight: var(--fw-reg); }
.shv5-help--tight{ margin-top: 6px; }
.shv5-ddwrap{ border-top: 1px solid rgba(255,255,255,.11); padding-top: 12px; margin-top: 2px; }

/* hard stop */
.shv5-help--err{ color: rgba(255,210,210,.92); }
.shv5-input.is-bad{
  border-color: rgba(255,120,120,.42) !important;
  background: rgba(255,120,120,.06) !important;
}

.shv5-consent{ border-top: 1px solid rgba(255,255,255,.11); padding-top: 12px; margin-top: 6px; }
.shv5-c{ display:flex; gap:10px; align-items:flex-start; color: var(--muted); font-size: 12.8px; line-height: 1.55; font-weight: var(--fw-reg); }
.shv5-c input{ margin-top: 3px; accent-color:#ff8a00; }

.shv5-progress{
  margin-top: 12px;
  border-top: 1px solid rgba(255,255,255,.11);
  padding-top: 12px;
}
.shv5-progress__top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom: 8px;
}
.shv5-progress__label{ color: rgba(238,242,255,.82); font-size: 12.6px; font-weight: var(--fw-reg); }
.shv5-progress__pct{ color: rgba(238,242,255,.92); font-size: 12.6px; font-weight: var(--fw-strong); }
.shv5-progress__bar{
  height: 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.02);
  overflow:hidden;
}
.shv5-progress__fill{
  height: 100%;
  width: 0%;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(45,115,255,.85), rgba(255,140,0,.85));
  transition: width .18s ease;
  opacity: .85;
}

.shv5-actions2{ margin-top: 12px; display:grid; gap:10px; }
.shv5-submit{
  width:100%;
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding: 13px 14px;
  border-radius: 14px;
  border:1px solid rgba(255,140,0,.38);
  background: linear-gradient(180deg, rgba(255,140,0,.17), rgba(255,255,255,.02));
  color: rgba(255,248,240,.98);
  font-weight: var(--fw-strong);
  cursor:pointer;
  transition: transform .15s ease, filter .15s ease, border-color .15s ease, box-shadow .25s ease;
  position: relative;
  overflow:hidden;
}
.shv5-submit:hover{ transform: translateY(-1px); filter: brightness(1.03); border-color: rgba(255,140,0,.60); box-shadow: 0 0 0 10px rgba(255,140,0,.10); }
.shv5-submit:disabled{ opacity:.6; cursor:not-allowed; transform:none; }

.shv5-fine{ text-align:center; color: var(--muted); font-size: 12.3px; line-height:1.55; font-weight: var(--fw-reg); }
.shv5-fine--reassure{ margin-top: -2px; opacity: .92; }
.shv5-error{
  border:1px solid rgba(255,120,120,.32);
  background: rgba(255,120,120,.10);
  border-radius: 14px;
  padding: 12px;
  color: rgba(255,220,220,.95);
  font-size: 13px;
  line-height: 1.45;
  font-weight: var(--fw-reg);
}
.shv5-honey{ display:none !important; }

/* success overlay */
.shv5-success{
  position:absolute; inset:0;
  display:grid; place-items:center;
  padding: 14px;
  background: rgba(16,28,50,.72);
  backdrop-filter: blur(14px);
  transform: translateY(14px);
  opacity:0;
  pointer-events:none;
  transition: opacity .20s ease, transform .20s ease;
}
.shv5-success.is-on{ opacity:1; transform: translateY(0); pointer-events:auto; }
.shv5-success__inner{
  width:min(560px, 100%);
  border-radius: var(--r);
  border:1px solid rgba(35,197,94,.44);
  background: linear-gradient(180deg, rgba(35,197,94,.12), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
  padding: 16px;
}
.shv5-success__badge{
  display:inline-flex; align-items:center; gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  border:1px solid rgba(35,197,94,.48);
  background: rgba(35,197,94,.14);
  font-weight: var(--fw-strong);
}
.shv5-success__h{ margin-top: 12px; font-size: 18px; font-weight: var(--fw-strong); letter-spacing: -.1px; }
.shv5-success__p{ margin-top: 8px; color: var(--muted); line-height: 1.6; font-weight: var(--fw-reg); }
.shv5-success__actions{ margin-top: 14px; display:flex; gap:10px; flex-wrap:wrap; }

/* side */
.shv5-side{ display:grid; gap:12px; }
.shv5-sidecard{
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.022);
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
  padding: 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.shv5-sidecard__h{ font-weight: var(--fw-strong); }

/* FAQ */
.shv5-faq{ margin-top: 10px; display:grid; gap:10px; }
.shv5-faq__q{
  width:100%;
  display:grid;
  grid-template-columns: 34px 1fr 22px;
  align-items:center;
  gap:10px;
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.018);
  color: rgba(238,242,255,.94);
  cursor:pointer;
  text-align:left;
}
.shv5-faq__q:hover{
  border-color: rgba(255,140,0,.22);
  background: rgba(255,255,255,.028);
}
.shv5-faq__icon{
  width:34px; height:34px;
  border-radius: 12px;
  display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.11);
  background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01));
  color: rgba(255,176,0,.90);
}
.shv5-faq__icon svg{ width:18px; height:18px; color: currentColor; }
.shv5-faq__txt{ font-weight: var(--fw-bold); font-size: 13.2px; }
.shv5-faq__chev{
  justify-self:end;
  width:22px; height:22px;
  display:grid; place-items:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  color: rgba(238,242,255,.86);
  font-weight: 800;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.shv5-faq__a{
  margin-top: -6px;
  padding: 10px 12px 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.09);
  background: rgba(255,255,255,.012);
  animation: shv5Acc .18s ease-out both;
}
@keyframes shv5Acc{
  from{ opacity:0; transform: translateY(-4px); }
  to{ opacity:1; transform: translateY(0); }
}
.shv5-faq__row{
  display:grid;
  grid-template-columns: 20px 1fr;
  align-items:start;
  gap:10px;
  padding: 7px 0;
  color: var(--muted);
  font-size: 12.9px;
  line-height: 1.6;
  font-weight: var(--fw-reg);
}
.shv5-faq__miniIcon{ width:20px; height:20px; display:grid; place-items:center; opacity:.95; }

.shv5-faq__q.is-open{
  border-color: rgba(255,140,0,.26);
  background: rgba(255,140,0,.05);
}
.shv5-faq__q.is-open .shv5-faq__chev{
  transform: rotate(45deg);
  border-color: rgba(255,140,0,.24);
  background: rgba(255,140,0,.08);
}

/* supplier section */
.shv5-supplierGrid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.shv5-supplierCard{
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.022);
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
  padding: 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.shv5-supplierCard__h{ font-weight: var(--fw-strong); }
.shv5-bullets{
  margin: 10px 0 0;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.7;
}
.shv5-supplierNote{
  margin-top: 10px;
  color: rgba(238,242,255,.70);
  font-size: 12.6px;
}

/* footer */
.shv5-footer{ padding: 14px 0 6px; margin-top: 14px; border-top: 1px solid rgba(255,255,255,.09); }
.shv5-footer__inner{ display:flex; justify-content:space-between; gap:12px; align-items:center; flex-wrap:wrap; }
.shv5-copy{ color: var(--muted); font-size: 12.5px; font-weight: var(--fw-reg); }
.shv5-footlinks{ display:flex; gap:10px; align-items:center; }
.shv5-link2{ color: rgba(238,242,255,.88); text-decoration:none; border-bottom: 1px solid rgba(255,255,255,.16); padding-bottom:2px; font-weight: var(--fw-reg); font-size: 12.5px; }
.shv5-link2:hover{ border-bottom-color: rgba(255,140,0,.55); }
.shv5-sep{ opacity:.35; }

/* sticky CTA (mobile) + scroll-progress */
.shv5-sticky{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 14px;
  width: min(560px, calc(100% - 24px));
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}
.shv5-sticky.is-on{ opacity:1; pointer-events:auto; }
.shv5-sticky__btn{
  display:flex; align-items:center; justify-content:space-between;
  width:100%;
  padding: 13px 15px;
  border-radius: 14px;
  border:1px solid rgba(255,140,0,.24);
  background: rgba(16,28,50,.58);
  backdrop-filter: blur(14px);
  color: var(--text);
  text-decoration:none;
  font-weight: var(--fw-strong);
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
  position: relative;
  overflow: hidden;
}
.shv5-sticky__btn::after{
  content:"";
  position:absolute;
  left:0; bottom:0;
  height:2px;
  width: var(--shv5-progress, 0%);
  background: linear-gradient(90deg, rgba(45,115,255,.85), rgba(255,140,0,.85));
  opacity:.75;
}
.shv5-sticky__arrow{ opacity:.9; }

/* Desktop spacing */
@media (min-width: 980px){
  .shv5-hero{ padding: 58px 0 22px; }
  .shv5-hero__inner{ grid-template-columns: 1.15fr .85fr; gap: 26px; }
  .shv5-grid{ grid-template-columns: 1.2fr .8fr; gap: 16px; }
  .shv5-two{ grid-template-columns: 1fr 1fr; }
  .shv5-side{ position: sticky; top: 92px; }
  .shv5-supplierGrid{ grid-template-columns: 1fr 1fr; }
  .shv5-glasscopy{ padding: 20px; }
}
@media (min-width: 721px){ .shv5-sticky{ display:none; } }

/* Mobile tweaks */
@media (max-width: 640px){
  :root{ --pad: 16px; }
  html, body, #shv53, .shv5 { overflow-x:hidden !important; }
  .shv5-wrap, .shv5-main, .shv5-hero, .shv5-section, .shv5-surface, .shv5-glasscopy, .shv5-panel, .shv5-formcard, .shv5-top, .shv5-top__inner{ max-width:100%; overflow-x:hidden; }
  .shv5-top__inner{ padding: 10px 0; flex-wrap: wrap; align-items: flex-start; }
  .shv5-brand{ width:100%; min-width:0; }
  .shv5-brand__txt{ min-width:0; }
  .shv5-top__cta{ width:100%; justify-content:flex-start; flex-wrap:wrap; gap:8px; }
  .shv5-chip{ max-width:100%; white-space:normal; }
  .shv5-brand__tag{ display:none; }
  .shv5-logo{ width:38px; height:38px; border-radius: 13px; flex:0 0 38px; }
  .shv5-brand__name{ font-size: 17px; }
  .shv5-chip{ padding: 9px 11px; font-size: 13px; }
  .shv5-hero{ padding: 20px 0 10px; }
  .shv5-lead{ font-size: 15.3px; line-height: 1.72; }
  .shv5-btn{ width: 100%; }
  .shv5-scn{ grid-template-columns: 96px minmax(0,1fr); }
  .shv5-scn__media{ width: 96px; min-height: 96px; }
  .shv5-row{ margin-bottom: 13px; }
  .shv5-input, .shv5-select, .shv5-textarea{ max-width:100%; }
  .shv5-sticky{ bottom: 16px; }
  .shv5-sticky__btn{ padding: 14px 16px; }
  .shv5-bg::after{ opacity: .043; }
}
/* =========================
   Cookie banner (subtil, premium)
========================= */
.shv5-consentbar{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 86px; /* over sticky CTA */
  width: min(980px, calc(100% - 24px));
  z-index: 1200;
  display: none;
}
.shv5-consentbar.is-on{ display:block; }
.shv5-consentbar__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(14,29,54,.82);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 14px 40px rgba(0,0,0,.28);
}
.shv5-consentbar__title{
  font-weight: var(--fw-strong);
  letter-spacing:.15px;
  font-size: 12.5px;
  margin-bottom: 3px;
}
.shv5-consentbar__desc{
  color: var(--muted);
  font-size: 12.3px;
  line-height: 1.45;
  font-weight: var(--fw-reg);
}
.shv5-consentbar__more{
  color: rgba(238,242,255,.90);
  text-decoration:none;
  border-bottom: 1px solid rgba(255,255,255,.16);
  padding-bottom:2px;
  margin-left: 6px;
}
.shv5-consentbar__more:hover{ border-bottom-color: rgba(255,140,0,.55); }

.shv5-consentbar__actions{ display:flex; gap:10px; flex-shrink:0; }

.shv5-consentbtn{
  border-radius: 14px;
  padding: 9px 11px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
  color: var(--text);
  font-weight: var(--fw-bold);
  font-size: 12.6px;
  cursor:pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, box-shadow .2s ease;
}
.shv5-consentbtn:hover{ transform: translateY(-1px); background: rgba(255,255,255,.09); }
.shv5-consentbtn--primary{
  background: rgba(255,255,255,.92);
  color: #0E1D36;
  border-color: rgba(255,255,255,.35);
}
.shv5-consentbtn--primary:hover{ background: rgba(255,255,255,1); box-shadow: 0 0 0 10px rgba(255,255,255,.06); }

/* Footer: button should look like link */
.shv5-link2--btn{
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  font: inherit;
}

/* In-form privacy link */
.shv5-consentlink{
  color: rgba(238,242,255,.90);
  text-decoration:none;
  border-bottom: 1px solid rgba(255,255,255,.16);
  padding-bottom:2px;
}
.shv5-consentlink:hover{ border-bottom-color: rgba(255,140,0,.55); }

@media (max-width: 720px){
  .shv5-consentbar{
    bottom: 92px;
    width: calc(100% - 24px);
  }
  .shv5-consentbar__inner{ flex-direction: column; align-items: flex-start; }
  .shv5-consentbar__actions{ width: 100%; }
  .shv5-consentbtn{ width: 100%; }
}


/* inline thank state */
.shv5-thankInline[hidden]{ display:none !important; }
.shv5-thankInline{ margin-top: 18px; }
.shv5-thankInline__card{ padding:24px; }
.shv5-thankInline__badge{ display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; background:rgba(40,191,112,.14); border:1px solid rgba(40,191,112,.32); color:#d9ffe8; font-weight:800; font-size:.95rem; letter-spacing:.02em; }
.shv5-thankInline__dot{ width:12px; height:12px; border-radius:999px; background:#29d17c; box-shadow:0 0 0 6px rgba(41,209,124,.14); }
.shv5-thankInline__title{ margin:18px 0 10px; font-size:clamp(1.9rem,4vw,3rem); line-height:1.06; font-weight:900; color:#fff; }
.shv5-thankInline__lead{ margin:0 0 18px; color:rgba(235,244,255,.82); font-size:1.04rem; line-height:1.7; max-width:62ch; }
.shv5-thankInline__grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:20px 0; }
.shv5-thankInline__mini{ padding:18px; border-radius:20px; background:rgba(12,18,31,.58); border:1px solid rgba(255,255,255,.08); }
.shv5-thankInline__k{ display:block; color:rgba(184,202,227,.7); font-size:.82rem; margin-bottom:8px; text-transform:uppercase; letter-spacing:.08em; }
.shv5-thankInline__v{ display:block; color:#fff; font-weight:800; font-size:1.02rem; }
.shv5-thankInline__list{ margin:18px 0 0; padding:0; list-style:none; display:grid; gap:10px; }
.shv5-thankInline__list li{ display:flex; gap:12px; align-items:flex-start; color:rgba(235,244,255,.84); }
.shv5-thankInline__list b{ color:#fff; }
.shv5-thankInline__tick{ width:24px; height:24px; flex:0 0 24px; display:grid; place-items:center; border-radius:999px; background:rgba(78,151,255,.14); border:1px solid rgba(78,151,255,.3); color:#a8c9ff; font-weight:900; }
.shv5-thankInline__actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:22px; }
.shv5-thankInline__note{ margin-top:16px; color:rgba(184,202,227,.74); font-size:.95rem; }
@media (max-width: 640px){
  .shv5-thankInline__card{ padding:20px; }
  .shv5-thankInline__grid{ grid-template-columns:1fr; }
}

@media (max-width: 640px){
  html, body { overscroll-behavior-y: auto; -webkit-overflow-scrolling: touch; }
  .shv5-bg{ position:absolute !important; min-height:100%; }
  .shv5-top{ position:static; backdrop-filter:none; -webkit-backdrop-filter:none; }
  .shv5-surface, .shv5-glasscopy, .shv5-panel, .shv5-formcard, .shv5-sticky__btn, .shv5-consentbar__inner{ backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
  .shv5-footer__inner{ align-items:flex-start; }
  .shv5-footlinks{ display:grid; grid-template-columns:1fr; gap:8px; width:100%; }
  .shv5-sep{ display:none; }
  .shv5-copy{ width:100%; }
}


/* === Mobile Safari / touch scroll hardening === */
html.shv5-coarse,
html.shv5-coarse body{
  -webkit-text-size-adjust: 100%;
  touch-action: pan-y;
}
html.shv5-coarse a,
html.shv5-coarse button,
html.shv5-coarse [role="button"],
html.shv5-coarse .shv5-scn,
html.shv5-coarse .shv5-faq__q{
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
html.shv5-coarse .shv5-scn,
html.shv5-coarse .shv5-faq__q,
html.shv5-coarse .shv5-chip,
html.shv5-coarse .shv5-btn,
html.shv5-coarse .shv5-sticky__btn{
  user-select: none;
  -webkit-user-select: none;
}
@media (hover: none) and (pointer: coarse), (max-width: 720px){
  .shv5-bg{ position:absolute; inset:0; min-height:100%; animation:none !important; }
  .shv5-top{ position:static; backdrop-filter:none; -webkit-backdrop-filter:none; }
  .shv5-side{ position:static !important; top:auto !important; }
  .shv5-glasscopy,
  .shv5-surface,
  .shv5-panel,
  .shv5-formcard,
  .shv5-supplierCard,
  .shv5-sticky__btn,
  .shv5-consentbar__inner{ backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
}
html.shv5-ios .shv5-sticky{
  bottom: max(12px, env(safe-area-inset-bottom));
}
html.shv5-ios .shv5,
html.shv5-ios body{
  -webkit-overflow-scrolling: touch;
}
