@font-face{font-family:"Rubik";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/rubik-hebrew-500-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/rubik-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/rubik-hebrew-700-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/rubik-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/rubik-hebrew-800-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/rubik-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/rubik-hebrew-900-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/rubik-latin-900-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Assistant";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/assistant-hebrew-400-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Assistant";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/assistant-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Assistant";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/assistant-hebrew-600-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Assistant";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/assistant-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Assistant";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/assistant-hebrew-700-normal.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Assistant";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/assistant-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* ===== Theme: "קרח ואבן" – כחול המותג, אבן ירושלמית, צהוב המודעות ===== */
:root{
  --navy:#0d2a66;
  --navy-2:#1a47a3;
  --deep:#081a44;
  --ink:#16203a;
  --muted:#56607a;
  --yellow:#f7b928;
  --yellow-hi:#ffd35c;
  --yellow-lo:#c98d0a;
  --wa-hi:#1a9e4f;
  --wa:#128c43;
  --wa-lo:#0a5f2c;
  --ice:#eaf1ff;
  --ice-2:#cfe0ff;
  --stone:#f4efe6;
  --stone-2:#e6dccb;
  --paper:#fffdf9;
  --line:#e2d8c6;
  --focus:#f7b928;
  --r-sm:12px;--r:18px;--r-lg:28px;
  --shadow-1:0 1px 2px rgba(8,26,68,.06),0 6px 18px rgba(8,26,68,.08);
  --shadow-2:0 2px 4px rgba(8,26,68,.08),0 18px 40px rgba(8,26,68,.14);
  --f-display:"Rubik","Assistant",system-ui,"Segoe UI",Arial,sans-serif;
  --f-body:"Assistant","Rubik",system-ui,"Segoe UI",Arial,sans-serif;
  /* type scale – major third (1.25) */
  --t-xs:.8rem;--t-sm:.9rem;--t-base:1.125rem;--t-md:1.35rem;--t-lg:1.7rem;
  --t-xl:clamp(1.9rem,4.6vw,2.75rem);
  --t-hero:clamp(2.4rem,7vw,4.4rem);
  --sp-1:8px;--sp-2:16px;--sp-3:24px;--sp-4:40px;--sp-5:64px;--sp-6:96px;
  color-scheme:light;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--f-body);font-size:var(--t-base);line-height:1.7;word-spacing:.04em;background:var(--stone);color:var(--ink);padding-block-end:88px;-webkit-font-smoothing:antialiased}
@media (min-width:900px){body{padding-block-end:0}}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy-2);text-underline-offset:3px}
h1,h2,h3{font-family:var(--f-display);text-wrap:balance;line-height:1.15;margin:0;letter-spacing:0}
p{margin:0}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:8px}
.wrap{max-width:1160px;margin-inline:auto;padding-inline:16px}
@media (min-width:700px){.wrap{padding-inline:28px}}
.ltr{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;inset-inline-start:12px;inset-block-start:-80px;background:var(--yellow);color:var(--deep);padding:10px 16px;border-radius:10px;font-weight:700;z-index:200;text-decoration:none}
.skip:focus{inset-block-start:12px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* ===== Header ===== */
.top{position:sticky;inset-block-start:0;z-index:40;background:rgba(255,253,249,.94);backdrop-filter:blur(10px) saturate(1.3);border-block-end:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:var(--sp-3);min-height:72px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);margin-inline-end:auto}
.logo svg{width:42px;height:42px;flex:none}
.logo b{display:block;font-family:var(--f-display);font-size:1.9rem;font-weight:900;line-height:.95}
.logo small{display:block;font-family:var(--f-display);font-size:.82rem;font-weight:700;color:var(--deep);line-height:1.3}
.nav{display:none;gap:28px}
.nav a{font-family:var(--f-display);font-weight:500;color:var(--ink);text-decoration:none;padding-block:6px;border-block-end:2px solid transparent}
.nav a:hover{border-color:var(--yellow)}
@media (min-width:900px){.nav{display:flex}}
.bsd{font-size:var(--t-xs);font-weight:700;color:var(--navy);align-self:flex-start;margin-block-start:6px}
.top-call{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:700;color:var(--navy);text-decoration:none;padding:9px 14px;border-radius:999px;border:2px solid var(--navy)}
.top-call:hover{background:var(--navy);color:#fff}
.top-call svg{width:18px;height:18px}
@media (max-width:440px){.top-call .ltr{display:none}.top-call{padding:10px}}

/* ===== 3D Buttons ===== */
.btn{--hi:#fff;--mid:#eee;--lo:#999;--fg:#111;--depth:6px;
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:12px 26px;
  border-radius:16px;border:0;cursor:pointer;text-decoration:none;
  font-family:var(--f-display);font-weight:800;font-size:1.2rem;line-height:1.1;color:var(--fg);
  background:linear-gradient(180deg,var(--hi) 0%,var(--mid) 58%);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.35),
    inset 0 -2px 0 rgba(0,0,0,.12),
    0 var(--depth) 0 var(--lo),
    0 calc(var(--depth) + 6px) 18px rgba(8,26,68,.28);
  transform:translateY(0);
  transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}
.btn::before{content:"";position:absolute;inset:3px 8px auto;height:42%;border-radius:12px 12px 40% 40%/12px 12px 18px 18px;background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(255,255,255,0));pointer-events:none}
.btn:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:inset 0 2px 0 rgba(255,255,255,.35),inset 0 -2px 0 rgba(0,0,0,.12),0 calc(var(--depth) + 2px) 0 var(--lo),0 calc(var(--depth) + 10px) 22px rgba(8,26,68,.3)}
.btn:active{transform:translateY(calc(var(--depth) - 1px));box-shadow:inset 0 2px 0 rgba(255,255,255,.25),inset 0 -1px 0 rgba(0,0,0,.12),0 1px 0 var(--lo),0 3px 8px rgba(8,26,68,.25)}
.btn svg{width:24px;height:24px;flex:none;filter:drop-shadow(0 1px 0 rgba(0,0,0,.2))}
.btn-wa{--hi:var(--wa-hi);--mid:var(--wa);--lo:var(--wa-lo);--fg:#fff;text-shadow:0 1px 0 rgba(0,0,0,.25)}
.btn-call{--hi:var(--yellow-hi);--mid:var(--yellow);--lo:var(--yellow-lo);--fg:var(--deep)}
.ctas{display:flex;flex-wrap:wrap;gap:14px 16px;padding-block-end:8px}

/* ===== Floating 3D WhatsApp (desktop) ===== */
.wa-fab{position:fixed;z-index:55;inset-inline-start:24px;inset-block-end:24px;width:68px;height:68px;border-radius:50%;display:none;align-items:center;justify-content:center;color:#fff;text-decoration:none;
  background:radial-gradient(circle at 35% 28%,#3fd27a 0%,var(--wa-hi) 34%,var(--wa) 62%,var(--wa-lo) 100%);
  box-shadow:inset 0 -6px 10px rgba(0,0,0,.25),inset 0 4px 6px rgba(255,255,255,.35),0 6px 0 #084d24,0 14px 26px rgba(8,26,68,.35);
  transition:transform .15s ease,box-shadow .15s ease}
.wa-fab svg{width:36px;height:36px;filter:drop-shadow(0 2px 1px rgba(0,0,0,.3))}
.wa-fab:hover{transform:translateY(-3px) scale(1.03)}
.wa-fab:active{transform:translateY(5px);box-shadow:inset 0 -3px 6px rgba(0,0,0,.25),inset 0 3px 5px rgba(255,255,255,.3),0 1px 0 #084d24,0 4px 10px rgba(8,26,68,.3)}
.wa-fab::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(26,158,79,.45);animation:ring 2.6s ease-out infinite}
@keyframes ring{0%{transform:scale(.9);opacity:.9}80%,100%{transform:scale(1.35);opacity:0}}
@media (min-width:900px){.wa-fab{display:flex}}

/* ===== Footer ===== */
.foot{background:var(--deep);color:#c9d4f0;padding-block:var(--sp-5) var(--sp-4);margin-block-start:var(--sp-5)}
.foot .wrap{display:grid;gap:28px}
@media (min-width:760px){.foot .wrap{grid-template-columns:1.4fr 1fr 1fr;align-items:start}}
.foot h2{font-size:var(--t-sm);color:#fff;margin-block-end:12px;font-weight:700;letter-spacing:.04em}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.foot a{color:#fff;text-decoration-color:rgba(255,255,255,.4)}
.foot .fine{grid-column:1/-1;border-block-start:1px solid rgba(255,255,255,.14);padding-block-start:18px;font-size:var(--t-sm);color:#9fb0da}
.foot .brand{display:grid;gap:6px}
.foot .brand b{color:#fff;font-family:var(--f-display);font-size:1.5rem;font-weight:900}

/* ===== Mobile contact bar ===== */
.mbar{position:fixed;inset-inline:0;inset-block-end:0;z-index:50;display:grid;grid-template-columns:1.25fr 1fr;gap:12px;padding:10px 12px calc(14px + env(safe-area-inset-bottom,0px));background:rgba(255,253,249,.97);border-block-start:1px solid var(--line);box-shadow:0 -8px 24px rgba(8,26,68,.1)}
.mbar .btn{min-height:52px;font-size:1.2rem;padding:8px 10px;--depth:4px}
@media (min-width:900px){.mbar{display:none}}

/* ===== Legal/document pages ===== */
.doc{padding-block:var(--sp-4) 0}
.doc article{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,4.5vw,56px);max-width:800px;margin-inline:auto;box-shadow:var(--shadow-1)}
.doc h1{font-size:var(--t-xl);color:var(--navy);font-weight:900;margin-block-end:8px}
.doc .meta{color:var(--muted);margin-block-end:28px;font-size:var(--t-sm)}
.doc h2{font-size:var(--t-md);color:var(--deep);font-weight:800;margin-block:32px 10px}
.doc p,.doc li{max-width:66ch}
.doc p+p{margin-block-start:10px}
.doc ul{padding-inline-start:22px;margin-block:8px}
.doc li+li{margin-block-start:6px}
.doc li::marker{color:var(--navy-2)}
.back{display:inline-flex;gap:6px;align-items:center;font-weight:700;margin-block-end:18px;font-family:var(--f-display)}

/* ===== Accessibility widget ===== */
#a11y-trigger{position:fixed;z-index:60;inset-inline-end:14px;inset-block-end:calc(100px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;border:0;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;
  background:radial-gradient(circle at 35% 28%,#5b8cf0 0%,var(--navy-2) 34%,var(--navy) 64%,var(--deep) 100%);
  box-shadow:inset 0 -6px 10px rgba(0,0,0,.3),inset 0 4px 6px rgba(255,255,255,.3),0 5px 0 #05112e,0 12px 22px rgba(8,26,68,.4),0 0 0 3px #fff;
  transition:transform .15s ease,box-shadow .15s ease}
#a11y-trigger:hover{transform:translateY(-3px)}
#a11y-trigger:active{transform:translateY(4px);box-shadow:inset 0 -3px 6px rgba(0,0,0,.3),inset 0 3px 5px rgba(255,255,255,.25),0 1px 0 #05112e,0 4px 10px rgba(8,26,68,.35),0 0 0 3px #fff}
#a11y-trigger svg{width:32px;height:32px;filter:drop-shadow(0 2px 1px rgba(0,0,0,.35))}
@media (min-width:900px){#a11y-trigger{inset-block-end:30px;inset-inline-end:24px}}
#a11y-panel{position:fixed;z-index:61;inset-inline-end:14px;inset-block-end:calc(168px + env(safe-area-inset-bottom,0px));width:min(370px,calc(100vw - 28px));max-height:calc(100vh - 200px);overflow:auto;background:#fff;color:#111;border:2px solid var(--navy);border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.3);padding:18px;font-family:var(--f-body)}
@media (min-width:900px){#a11y-panel{inset-block-end:100px;inset-inline-end:24px;max-height:calc(100vh - 130px)}}
#a11y-panel h2{font-size:1.25rem;color:var(--navy);margin-block-end:4px}
#a11y-panel .hint{font-size:.9rem;color:#444;margin-block-end:14px}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.a11y-grid button{font-family:var(--f-display);font-size:.95rem;font-weight:700;min-height:66px;padding:8px;border-radius:14px;border:2px solid #c9cfdd;background:linear-gradient(180deg,#fff,#eef2fa);color:#111;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;line-height:1.25;box-shadow:0 3px 0 #c9cfdd}
.a11y-grid button:active{transform:translateY(2px);box-shadow:0 1px 0 #c9cfdd}
.a11y-grid button small{font-family:var(--f-body);font-weight:600;font-size:.82rem;color:#333}
.a11y-grid button[aria-pressed="true"],.a11y-grid button.on{background:linear-gradient(180deg,var(--navy-2),var(--navy));color:#fff;border-color:var(--navy);box-shadow:0 3px 0 var(--deep)}
.a11y-grid button[aria-pressed="true"] small,.a11y-grid button.on small{color:#e6ecff}
.a11y-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-block-start:14px}
.a11y-foot button{font-family:var(--f-display);font-weight:700;border:2px solid #111;background:#fff;color:#111;border-radius:10px;padding:8px 14px;cursor:pointer}
.a11y-close{position:absolute;inset-block-start:10px;inset-inline-end:10px;width:38px;height:38px;border-radius:50%;border:0;background:#eef1f7;color:#111;font-size:1.3rem;cursor:pointer;line-height:1}

/* preference classes on <html> */
html.a11y-text-115{font-size:115%}
html.a11y-text-130{font-size:130%}
html.a11y-text-150{font-size:150%}
html.a11y-lines-16 body *{line-height:1.9!important}
html.a11y-lines-20 body *{line-height:2.2!important}
html.a11y-readable body,html.a11y-readable body *{font-family:Arial,"Segoe UI",Tahoma,sans-serif!important}
html.a11y-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;outline:2px dashed #b36b00;outline-offset:2px}
html.a11y-headings h1,html.a11y-headings h2,html.a11y-headings h3{outline:3px solid #b36b00;outline-offset:4px}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='48' viewBox='0 0 40 48'%3E%3Cpath d='M2 2l0 38 10-9 7 15 7-3-7-15 14 0z' fill='%23000' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") 2 2,auto!important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-contrast-high{--navy:#000;--navy-2:#000;--deep:#000;--ink:#000;--muted:#000;--stone:#fff;--stone-2:#fff;--paper:#fff;--line:#000;--ice:#fff;--ice-2:#fff;--wa-hi:#000;--wa:#000;--wa-lo:#444;--yellow:#ffe000;--yellow-hi:#ffe000;--yellow-lo:#000;--shadow-1:none;--shadow-2:none}
html.a11y-contrast-high :is(.hero,.band,.foot,.why){background:#000!important}
html.a11y-contrast-high :is(.card,.feature,.step,.shot){border:2px solid #000!important}
html.a11y-contrast-high .airflow{display:none}
html.a11y-contrast-invert :is(.top,main,.foot,.mbar,.wa-fab){filter:invert(1) hue-rotate(180deg)}
html.a11y-contrast-invert :is(main,.top) img{filter:invert(1) hue-rotate(180deg)}
html.a11y-contrast-mono :is(.top,main,.foot,.mbar,.wa-fab){filter:grayscale(1)}
@media print{
  html[class*="a11y-"] *{filter:none!important}
  html[class*="a11y-text-"]{font-size:100%!important}
  #a11y-trigger,#a11y-panel,.mbar,.wa-fab{display:none!important}
}
/* ===== Home ===== */
section{padding-block:var(--sp-5)}
@media (min-width:900px){section{padding-block:var(--sp-6)}}

.sec-head{display:grid;gap:10px;margin-block-end:var(--sp-4);max-width:680px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:700;font-size:var(--t-sm);color:var(--navy-2);letter-spacing:.03em}
.eyebrow svg{width:16px;height:16px}
.h2{font-size:var(--t-xl);font-weight:900;color:var(--deep)}
.sub{color:var(--muted);font-size:var(--t-md);line-height:1.5}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;color:#fff;padding-block:var(--sp-4) calc(var(--sp-5) + 12px);
  background:
    radial-gradient(700px 360px at 12% 110%,rgba(59,123,255,.35),transparent 70%),
    radial-gradient(900px 480px at 95% -20%,rgba(247,185,40,.18),transparent 65%),
    linear-gradient(170deg,var(--navy-2) 0%,var(--navy) 45%,var(--deep) 100%)}
@media (min-width:900px){.hero{padding-block:88px 110px}}
.airflow{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.5}
.airflow path{fill:none;stroke:#cfe0ff;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:6 14;animation:flow 14s linear infinite}
.airflow path:nth-child(2n){animation-duration:19s;opacity:.6}
.airflow path:nth-child(3n){animation-duration:24s;opacity:.4}
@keyframes flow{to{stroke-dashoffset:-400}}
.hero .wrap{position:relative;display:grid;gap:48px}
@media (min-width:900px){.hero .wrap{grid-template-columns:1.1fr .9fr;align-items:center;gap:56px}}
.hero .kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:500;font-size:var(--t-sm);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);padding:7px 16px;border-radius:999px}
.hero .kicker i{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px rgba(247,185,40,.25)}
.hero h1{font-size:var(--t-hero);font-weight:900;line-height:1.02;margin-block:22px 18px}
.hero h1 span{display:block;color:var(--yellow);text-shadow:0 4px 24px rgba(247,185,40,.25)}
.hero .lead{font-size:clamp(1.2rem,2.6vw,1.5rem);color:#dfe7fb;margin-block-end:32px;max-width:32ch}
.hero .lead b{color:#fff;font-weight:700}
.checks{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px 22px;color:#cfdaf5;font-weight:600}
.checks li{display:flex;align-items:center;gap:8px}
.checks svg{width:20px;height:20px;padding:3px;border-radius:50%;background:rgba(247,185,40,.18);color:var(--yellow)}

.stack{position:relative;padding-block-end:56px;padding-inline-start:0;max-width:520px;justify-self:center;width:100%}
.stack .photo{margin:0;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;max-width:100%;box-shadow:0 30px 60px rgba(0,0,0,.45),0 0 0 6px rgba(255,255,255,.95);rotate:-2deg}
.stack .photo img{width:100%;height:100%;object-fit:cover}
.stack .strip{position:absolute;inset-inline-end:-4%;inset-block-end:0;width:82%;margin:0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 22px 44px rgba(0,0,0,.45),0 0 0 4px #fff;rotate:2deg}
.stack .strip img{width:100%;aspect-ratio:1200/368;object-fit:cover}
.pin{position:absolute;inset-block-start:10%;inset-inline-start:50%;translate:50% 0;display:flex;flex-direction:column;align-items:center}
.pin span{background:var(--navy);color:#fff;font-family:var(--f-display);font-weight:700;font-size:.85rem;padding:6px 14px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 14px rgba(0,0,0,.3)}
.coin{position:absolute;inset-block-start:-18px;inset-inline-start:-10px;width:128px;height:128px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  font-family:var(--f-display);font-weight:900;font-size:1.25rem;line-height:1.02;color:var(--deep);rotate:-10deg;
  background:radial-gradient(circle at 35% 28%,#ffe599 0%,var(--yellow-hi) 30%,var(--yellow) 62%,var(--yellow-lo) 100%);
  box-shadow:inset 0 -6px 10px rgba(120,70,0,.3),inset 0 4px 6px rgba(255,255,255,.6),0 7px 0 #9a6a00,0 16px 28px rgba(0,0,0,.4)}
.coin em{font-style:normal;margin-block-start:6px;background:var(--navy);color:#fff;font-size:.88rem;padding:3px 10px;border-radius:999px}
@media (min-width:900px){.coin{width:150px;height:150px;font-size:1.45rem;inset-inline-start:-40px}}

/* ---------- services ---------- */
.services{display:grid;gap:20px}
@media (min-width:860px){.services{grid-template-columns:1.3fr 1fr;align-items:stretch}}
.feature{background:var(--paper);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-2);display:flex;flex-direction:column}
.feature figure{margin:0;position:relative}
.feature img{width:100%;aspect-ratio:16/7;object-fit:cover}
.feature .body{padding:28px;display:grid;gap:10px;align-content:start}
.feature h3{font-size:var(--t-lg);color:var(--deep);font-weight:800}
.feature p{color:var(--muted);font-size:var(--t-md);line-height:1.55}
.side{display:grid;gap:20px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-content:center;box-shadow:var(--shadow-1)}
.tile{grid-row:span 2;width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:var(--navy);
  background:linear-gradient(160deg,#fff 0%,var(--ice) 45%,var(--ice-2) 100%);
  box-shadow:inset 0 2px 0 #fff,inset 0 -3px 0 rgba(26,71,163,.18),0 4px 0 #b9cdf3,0 8px 16px rgba(26,71,163,.18)}
.tile svg{width:30px;height:30px}
.card h3{font-size:var(--t-md);color:var(--deep);font-weight:800}
.card p{color:var(--muted)}

/* ---------- why ---------- */
.why{background:var(--ice);border-block:1px solid var(--ice-2)}
.why ul{list-style:none;margin:0;padding:0;display:grid;gap:28px}
@media (min-width:760px){.why ul{grid-template-columns:repeat(3,1fr);gap:0}.why li+li{border-inline-start:1px solid var(--ice-2)}}
.why li{display:grid;gap:10px;padding-inline:0 28px}
@media (min-width:760px){.why li{padding-inline:32px}.why li:first-child{padding-inline-start:0}}
.why li .tile{width:56px;height:56px}
.why li b{font-family:var(--f-display);font-size:var(--t-md);color:var(--deep);font-weight:800}
.why li span{color:var(--muted)}

/* ---------- gallery ---------- */
.gallery{display:grid;gap:20px}
@media (min-width:700px){.gallery{grid-template-columns:1fr 1fr}}
.shot{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-2);background:#ddd}
.shot img{width:100%;aspect-ratio:4/3;object-fit:cover}
.shot figcaption{position:absolute;inset-inline:0;inset-block-end:0;padding:48px 22px 18px;color:#fff;font-family:var(--f-display);font-weight:700;font-size:var(--t-md);background:linear-gradient(0deg,rgba(8,26,68,.85),rgba(8,26,68,0))}

/* ---------- steps ---------- */
.steps{counter-reset:s;list-style:none;margin:0;padding:0;display:grid;gap:24px;position:relative}
@media (min-width:760px){.steps{grid-template-columns:repeat(3,1fr);gap:28px}
  .steps::before{content:"";position:absolute;inset-inline:16% 16%;inset-block-start:31px;border-block-start:3px dashed var(--stone-2)}}
.step{counter-increment:s;position:relative;display:grid;gap:6px;justify-items:start}
@media (min-width:760px){.step{justify-items:center;text-align:center}}
.step::before{content:counter(s);width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-block-end:10px;
  font-family:var(--f-display);font-weight:900;font-size:1.6rem;color:#fff;
  background:radial-gradient(circle at 35% 28%,#5b8cf0 0%,var(--navy-2) 36%,var(--navy) 70%,var(--deep) 100%);
  box-shadow:inset 0 -5px 8px rgba(0,0,0,.3),inset 0 3px 5px rgba(255,255,255,.3),0 5px 0 #05112e,0 10px 18px rgba(8,26,68,.3),0 0 0 6px var(--stone)}
.step b{font-family:var(--f-display);font-size:var(--t-md);color:var(--deep);font-weight:800}
.step span{color:var(--muted);max-width:28ch}

/* ---------- cta band ---------- */
.band{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:var(--sp-5) 20px;text-align:center;color:#fff;display:grid;gap:14px;justify-items:center;
  background:radial-gradient(600px 300px at 50% 120%,rgba(59,123,255,.4),transparent 70%),linear-gradient(170deg,var(--navy-2),var(--deep));box-shadow:var(--shadow-2)}
.band > *{position:relative}
.band h2{font-size:var(--t-xl);font-weight:900}
.band p{color:#dbe4fa;font-size:var(--t-md)}
.band .phone{font-family:var(--f-display);font-size:clamp(2.2rem,8vw,3.6rem);font-weight:900;color:#fff;text-decoration:none;letter-spacing:.02em;margin-block:4px 10px}
.band .ctas{justify-content:center}
@media (max-width:899px){.stack .photo{aspect-ratio:1/1}.stack .strip{inset-inline-end:0}}

/* ---------- brands marquee ---------- */
.brands{background:var(--paper);padding-block:36px 28px;border-block-end:1px solid var(--line)}
.brands-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-block-end:22px}
.brands-head h2{font-size:var(--t-md);font-weight:800;color:var(--deep)}
.marquee-toggle{font-family:var(--f-display);font-weight:700;font-size:var(--t-sm);color:var(--navy);background:transparent;border:2px solid var(--ice-2);border-radius:999px;padding:6px 14px;cursor:pointer}
.marquee-toggle:hover{border-color:var(--navy)}
.marquee{overflow:hidden;direction:ltr;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;width:max-content;animation:marquee 32s linear infinite}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track,.marquee.paused .marquee-track{animation-play-state:paused}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee-list{list-style:none;margin:0;padding:0;display:flex;gap:18px;padding-inline-end:18px}
.brand{flex:none;width:200px;height:96px;display:flex;align-items:center;justify-content:center;padding:18px 26px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1)}
.brand img{max-width:100%;max-height:52px;width:auto;height:auto;object-fit:contain}
.brands-note{margin-block-start:18px;font-size:var(--t-xs);color:var(--muted)}
@media (prefers-reduced-motion:reduce){
  .marquee{-webkit-mask-image:none;mask-image:none;direction:rtl}
  .marquee-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center;padding-inline:16px}
  .marquee-list[aria-hidden="true"],.marquee-toggle{display:none}
  .marquee-list{flex-wrap:wrap;justify-content:center;padding:0;gap:12px}
}
html.a11y-motion .marquee-track{animation:none}
.marquee{padding-block:4px 14px}
@media (max-width:600px){.brand{width:160px;height:84px;padding:14px 18px}.brand img{max-height:44px}}
