/* =====================================================================
   SANKOM PATENT — Swiss International Typographic landing
   Palette grounded in the cream studio-photo background (#EAE6E0)
   ===================================================================== */
:root{
  --paper:#F4F1EC;
  --paper-2:#ECE7DE;
  --ink:#14161A;
  --ink-soft:#43474E;
  --red:#D81E1E;
  --red-dk:#B5160F;
  --grey:#67696E;
  --line:rgba(20,22,26,.16);
  --line-2:rgba(20,22,26,.08);
  --white:#FBFAF7;
  --maxw:1240px;
  --gut:clamp(18px,4vw,40px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --mono:'Space Mono',ui-monospace,Menlo,monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;
  font-family:'Archivo',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--paper);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
sup{font-size:.5em;vertical-align:super}

.mono{font-family:var(--mono);font-weight:400}
.small{font-size:11px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* keyboard focus ring (mouse users unaffected) */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}

.grid{
  width:100%;max-width:var(--maxw);margin-inline:auto;
  padding-inline:var(--gut);
}

/* ---------- buttons ---------- */
.btn{
  --bh:54px;
  display:inline-flex;align-items:center;gap:10px;justify-content:center;
  height:var(--bh);padding:0 22px;border:1.5px solid var(--ink);
  font-weight:700;font-size:14px;letter-spacing:.02em;border-radius:2px;
  background:transparent;color:var(--ink);cursor:pointer;
  transition:transform .25s var(--ease),background .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);
  white-space:nowrap;
}
.btn svg{transition:transform .3s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn-solid{background:var(--red);border-color:var(--red);color:#fff}
.btn-solid:hover{background:var(--red-dk);border-color:var(--red-dk);transform:translateY(-2px);box-shadow:0 10px 26px -12px rgba(216,30,30,.7)}
.btn-line{background:transparent}
.btn-line:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}
.btn-invert{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.btn-invert:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(0,0,0,.5)}
.btn-sm{--bh:42px;font-size:13px;padding:0 16px}
.btn-lg{--bh:58px;font-size:15px;padding:0 26px}

/* ---------- scroll rule (top progress) ---------- */
.scrollrule{position:fixed;top:0;left:0;height:3px;width:0;background:var(--red);z-index:120;transition:width .1s linear}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:100;background:rgba(244,241,236,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:inline-flex;align-items:center;gap:9px;color:var(--red)}
.brand-mark{display:inline-flex;color:var(--red)}
.brand-word{font-weight:900;letter-spacing:.16em;font-size:18px;color:var(--ink)}
.brand-word sup{color:var(--red)}

.nav-links{display:flex;gap:6px;align-items:center}
.nav-links a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;font-size:13.5px;font-weight:600;color:var(--ink-soft);position:relative;transition:color .2s}
.nav-links a .ix{font-family:var(--mono);font-size:10px;color:var(--red);opacity:.8}
.nav-links a:hover{color:var(--ink)}
.nav-links a::after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:1.5px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav-links a:hover::after{transform:scaleX(1)}

.nav-right{display:flex;align-items:center;gap:14px}
.lang{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;color:var(--grey)}
.lang-btn{background:none;border:none;font-family:var(--mono);font-size:12px;color:var(--grey);cursor:pointer;padding:2px}
.lang-btn.is-active{color:var(--ink);font-weight:700}

.burger{display:none;flex-direction:column;gap:5px;width:42px;height:42px;border:1px solid var(--line);background:none;border-radius:2px;cursor:pointer;align-items:center;justify-content:center}
.burger span{display:block;width:18px;height:2px;background:var(--ink);transition:.3s var(--ease)}
.burger[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-menu{display:flex;flex-direction:column;gap:2px;padding:10px var(--gut) 20px;border-bottom:1px solid var(--line);background:var(--paper)}
.mobile-menu[hidden]{display:none}
.mobile-menu a{padding:13px 4px;font-weight:600;border-bottom:1px solid var(--line-2)}
.mobile-menu .btn{margin-top:12px}

/* ---------- HERO ---------- */
.hero{padding:clamp(34px,6vw,70px) 0 clamp(30px,5vw,56px);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(26px,5vw,64px);align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);text-transform:uppercase;font-size:12px;letter-spacing:.14em;color:var(--ink-soft);margin:0 0 18px}
.tick{width:26px;height:2px;background:var(--red)}
.display{font-weight:900;letter-spacing:-.03em;line-height:.92;margin:0}
h1.display{font-size:clamp(52px,9vw,108px)}
.display .line{display:block}
.display .accent{color:var(--red)}
.hero-lead{max-width:46ch;margin:22px 0 28px;font-size:clamp(16px,1.4vw,18.5px);line-height:1.6;color:var(--ink-soft)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
.hero-spec{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;border-top:1px solid var(--line)}
.hero-spec>div{padding:16px 16px 16px 0;border-right:1px solid var(--line-2)}
.hero-spec>div:last-child{border-right:none}
.hero-spec dt{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);margin-bottom:6px}
.hero-spec dd{margin:0;font-size:13.5px;font-weight:600;line-height:1.3}

.hero-figure{margin:0}
.hero-frame{position:relative;background:var(--white);border:1px solid var(--line);border-radius:3px;overflow:hidden;box-shadow:0 40px 80px -50px rgba(20,22,26,.6)}
.hero-frame img{width:100%;aspect-ratio:5/6;object-fit:cover;object-position:center 22%}
.frame-tag{position:absolute;background:var(--ink);color:var(--paper);font-size:11px;padding:7px 10px;border-radius:2px;display:inline-flex;flex-direction:column;gap:1px;line-height:1.2}
.frame-tag .mono{font-size:11px;color:#fff}
.frame-tag span:last-child{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.tag-tl{top:14px;left:14px}
.tag-br{bottom:14px;right:14px;background:var(--red)}
.tag-br .mono{color:#fff;font-weight:700;font-size:15px}
.hero-figure figcaption{margin-top:12px;font-size:11px;color:var(--grey);text-transform:uppercase;letter-spacing:.08em}

/* ---------- MARQUEE ---------- */
.marquee{overflow:hidden;border-bottom:1px solid var(--line);background:var(--ink);color:var(--paper)}
.marquee-track{display:inline-flex;align-items:center;gap:26px;white-space:nowrap;padding:14px 0;will-change:transform;animation:marq 32s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{font-family:var(--mono);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.marquee-track b{color:var(--red);font-size:16px}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}

/* ---------- generic section + heads ---------- */
.section{padding:clamp(56px,8vw,108px) 0;border-bottom:1px solid var(--line);position:relative}
.sec-head{max-width:60ch;margin:0 auto clamp(34px,5vw,60px);text-align:center}
.sec-head--left{margin-left:0;margin-right:0;text-align:left;max-width:42ch}
.sec-ix{display:inline-block;font-size:13px;color:var(--red);letter-spacing:.1em;margin-bottom:14px;position:relative;padding-left:30px}
.sec-ix::before{content:"";position:absolute;left:0;top:50%;width:22px;height:1.5px;background:var(--red)}
.sec-title{font-weight:800;letter-spacing:-.02em;line-height:1.02;font-size:clamp(30px,4.6vw,52px);margin:0}
.sec-sub{margin:16px 0 0;font-size:clamp(15px,1.3vw,17.5px);line-height:1.6;color:var(--ink-soft)}
.sec-head:not(.sec-head--left) .sec-sub{margin-inline:auto;max-width:54ch}

/* ---------- 01 PATENT / compression map ---------- */
.map-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,70px);align-items:center}
.map-stage{display:flex;align-items:center;gap:24px;justify-content:center}
.leg{width:min(260px,60vw);height:auto;overflow:visible}
.leg-base{fill:var(--paper-2);stroke:var(--line);stroke-width:1.5}
.press-fill{transition:transform .25s var(--ease);transform-origin:center bottom}
.knit line{stroke:rgba(255,255,255,.34);stroke-width:1.4}
.scan line{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 3;opacity:.55}
.scan circle{fill:var(--red);stroke:var(--paper);stroke-width:2.5px}
.zones line{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 3}
.zones circle{fill:var(--red)}
.zones text{fill:var(--ink-soft);font-size:11px}
.zones .zone{opacity:.34;transition:opacity .25s}
.zones .zone.is-live{opacity:1}
.zones .zone.is-live text{fill:var(--ink);font-weight:700}

.gauge{border:1px solid var(--line);border-radius:3px;padding:18px;min-width:148px;background:var(--white)}
.gauge-cap{display:block;font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);margin-bottom:10px;line-height:1.4}
.gauge-read{display:flex;align-items:baseline;gap:2px;line-height:1}
.gauge-read .mono{font-size:46px;font-weight:700;color:var(--red)}
.gauge-read em{font-size:20px;font-style:normal;color:var(--red)}
.gauge-mm{font-size:14px;margin-top:6px;color:var(--ink)}
.gauge-where{margin-top:12px;font-size:11px;letter-spacing:.18em;color:var(--ink);border-top:1px solid var(--line);padding-top:10px}

.scrub-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.14em;color:var(--ink-soft);margin-bottom:10px}
.scrub{-webkit-appearance:none;appearance:none;width:100%;height:3px;background:linear-gradient(90deg,var(--red),#EAD9C2);border-radius:3px;outline:none;margin:0 0 30px}
.scrub::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:var(--ink);border:3px solid var(--paper);box-shadow:0 4px 12px -3px rgba(0,0,0,.5);cursor:pointer;transition:transform .15s}
.scrub::-webkit-slider-thumb:hover{transform:scale(1.12)}
.scrub::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--ink);border:3px solid var(--paper);cursor:pointer}
.map-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px;counter-reset:none}
.map-steps li{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--line-2);opacity:.5;transition:opacity .3s var(--ease)}
.map-steps li.is-on{opacity:1}
.map-steps b{font-size:13px;color:var(--red);font-weight:700;padding-top:2px}
.map-steps h4{margin:0 0 4px;font-size:16px;font-weight:700}
.map-steps p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.5}
.map-note{margin:18px 0 0;font-size:11px;color:var(--grey);letter-spacing:.02em}

/* ---------- 02 BENEFITS ---------- */
.ben-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ben-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(16px,3vw,42px);padding:clamp(22px,3.4vw,34px) 0;border-bottom:1px solid var(--line);position:relative}
.ben-num{font-size:13px;color:var(--red);align-self:start;padding-top:6px}
.ben-row h3{margin:0;font-size:clamp(20px,2.6vw,30px);font-weight:800;letter-spacing:-.015em;grid-column:2;line-height:1.05}
.ben-row p{margin:8px 0 0;grid-column:2;max-width:60ch;color:var(--ink-soft);font-size:15.5px;line-height:1.55}
.ben-ico{grid-row:1 / span 2;grid-column:3;width:clamp(46px,6vw,72px);height:clamp(46px,6vw,72px);border:1.5px solid var(--ink);border-radius:50%;display:grid;place-items:center;color:var(--ink);transition:.35s var(--ease)}
.ben-ico svg{width:50%;height:50%}
.ben-row:hover .ben-ico{background:var(--red);border-color:var(--red);color:#fff;transform:rotate(8deg)}

/* ---------- 03 ANATOMY ---------- */
.anatomy{background:var(--paper-2)}
.anatomy-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:center}
.an-legend{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:2px}
.an-legend li{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:13px 12px;border:1px solid transparent;border-radius:3px;cursor:pointer;align-items:center;transition:.25s var(--ease);opacity:.6}
.an-legend li b{font-size:12px;color:var(--red)}
.an-legend li span{font-size:14.5px;font-weight:600}
.an-legend li.is-on{opacity:1;background:var(--white);border-color:var(--line)}
.an-legend li:hover{opacity:1}

.an-figure{margin:0}
.an-photo{position:relative;background:var(--white);border:1px solid var(--line);border-radius:3px;overflow:hidden}
.an-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 30%}
.an-dot{position:absolute;width:26px;height:26px;border-radius:50%;border:none;background:transparent;cursor:pointer;transform:translate(-50%,-50%);padding:0}
.an-dot::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 0 rgba(216,30,30,.5);animation:ping 2.6s var(--ease) infinite}
.an-dot::after{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--red);opacity:0;transition:.25s}
.an-dot:hover::after,.an-dot.is-on::after{opacity:1}
.an-dot.is-on::before{background:var(--ink);animation:none}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(216,30,30,.5)}70%{box-shadow:0 0 0 14px rgba(216,30,30,0)}100%{box-shadow:0 0 0 0 rgba(216,30,30,0)}}
@media (prefers-reduced-motion:reduce){.an-dot::before{animation:none}}
.an-readout{position:absolute;left:14px;bottom:14px;right:14px;background:var(--ink);color:#fff;font-size:12px;padding:10px 12px;border-radius:2px;letter-spacing:.02em}

/* ---------- 04 CONFIGURATOR ---------- */
.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.config-photo{margin:0}
.config-frame{position:relative;background:var(--white);border:1px solid var(--line);border-radius:3px;overflow:hidden;box-shadow:0 40px 80px -55px rgba(20,22,26,.6)}
.config-frame img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center 24%;transition:opacity .3s var(--ease)}
.config-frame.is-swapping img{opacity:0}
.config-pin{position:absolute;top:14px;left:14px;background:var(--paper);border:1px solid var(--line);font-size:11px;padding:6px 10px;border-radius:2px;letter-spacing:.06em}

.cf-block{margin-top:26px}
.cf-label{display:block;font-size:11px;letter-spacing:.16em;color:var(--grey);margin-bottom:12px}
.cf-note{margin:12px 0 0;font-size:11.5px;color:var(--grey);letter-spacing:.02em}
.swatches{display:flex;gap:10px;flex-wrap:wrap}
.sw{display:inline-flex;align-items:center;gap:9px;padding:9px 15px 9px 11px;border:1.5px solid var(--line);background:var(--white);border-radius:2px;cursor:pointer;font-size:13.5px;font-weight:600;font-family:inherit;transition:.2s var(--ease)}
.sw .dot{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}
.sw .dot-white{border-color:var(--grey)}
.sw.is-on{border-color:var(--ink)}
.sw:hover{transform:translateY(-2px)}
.sizes{display:flex;gap:10px;flex-wrap:wrap}
.sz{display:inline-flex;flex-direction:column;align-items:center;gap:3px;padding:11px 18px;border:1.5px solid var(--line);background:var(--white);border-radius:2px;cursor:pointer;font-weight:800;font-size:14px;font-family:inherit;line-height:1.1;transition:.2s var(--ease)}
.sz i{font-size:10px;font-weight:400;color:var(--grey);font-style:normal}
.sz.is-on{border-color:var(--red);color:var(--red)}
.sz.is-on i{color:var(--red)}
.sz:hover{transform:translateY(-2px)}

.cf-buy{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px}
.cf-price{display:flex;flex-direction:column;gap:4px}
.cf-now{font-size:32px;font-weight:700;color:var(--ink)}
.cf-deal{font-size:12px;color:var(--red)}

/* ---------- 05 COMPARE ---------- */
.cmp-table{border:1px solid var(--line);border-radius:3px;overflow:hidden;max-width:880px;margin-inline:auto}
.cmp-head,.cmp-row{display:grid;grid-template-columns:1.7fr 1fr 1fr;align-items:center}
.cmp-head{background:var(--ink);color:var(--paper)}
.cmp-head span{padding:16px 20px;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.cmp-head .cmp-plain{text-align:center;color:rgba(255,255,255,.62)}
.cmp-head .cmp-sankom{text-align:center;color:#fff;background:var(--red)}
.cmp-row{border-top:1px solid var(--line)}
.cmp-row span{padding:16px 20px;font-size:15px}
.cmp-row span:first-child{font-weight:600}
.cmp-row .x,.cmp-row .v{text-align:center;font-weight:800;font-size:18px}
.cmp-row .x{color:var(--grey)}
.cmp-row .v{color:var(--red)}
.cmp-row span:last-child{background:rgba(216,30,30,.05)}
.cmp-row:hover{background:rgba(20,22,26,.025)}

/* ---------- LIFESTYLE ---------- */
.life{padding:clamp(56px,8vw,104px) 0;border-bottom:1px solid var(--line);background:var(--ink);color:var(--paper)}
.life-title{font-size:clamp(34px,5.5vw,68px);margin:0 0 clamp(28px,4vw,46px);letter-spacing:-.03em}
.life-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,22px)}
.life-card{margin:0;position:relative;overflow:hidden;border-radius:3px;background:#222}
.life-card img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .6s var(--ease);filter:grayscale(.1)}
.life-card:hover img{transform:scale(1.05)}
.life-card figcaption{position:absolute;left:14px;bottom:14px;right:14px;font-size:12px;letter-spacing:.04em;background:rgba(20,22,26,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:9px 11px;border-radius:2px;border-left:2px solid var(--red)}

/* ---------- 06 FAQ ---------- */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,64px);align-items:start}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 4px;cursor:pointer;font-size:clamp(16px,1.7vw,19px);font-weight:700;letter-spacing:-.01em}
.faq-item summary::-webkit-details-marker{display:none}
.faq-pm{position:relative;flex:0 0 18px;width:18px;height:18px}
.faq-pm::before,.faq-pm::after{content:"";position:absolute;background:var(--red);transition:transform .3s var(--ease)}
.faq-pm::before{left:0;right:0;top:8px;height:2px}
.faq-pm::after{top:0;bottom:0;left:8px;width:2px}
.faq-item[open] .faq-pm::after{transform:scaleY(0)}
.faq-item p{margin:0 0 22px;padding-right:34px;color:var(--ink-soft);font-size:15.5px;line-height:1.65;max-width:62ch}
.faq-item[open] summary{color:var(--red)}

/* ---------- FINAL CTA ---------- */
.cta{background:var(--red);color:#fff;padding:clamp(64px,9vw,120px) 0;text-align:center;position:relative;overflow:hidden}
.cta-inner{position:relative;z-index:1}
.cta-plus{position:absolute;font-size:min(60vw,640px);font-weight:900;line-height:.7;color:rgba(255,255,255,.08);top:50%;left:50%;transform:translate(-50%,-46%);z-index:0;pointer-events:none}
.cta .display{font-size:clamp(34px,6vw,76px);max-width:16ch;margin:0 auto;letter-spacing:-.03em}
.cta p{max-width:52ch;margin:20px auto 34px;font-size:clamp(15px,1.4vw,18px);line-height:1.55;color:rgba(255,255,255,.9)}

/* ---------- FOOTER ---------- */
.footer{background:var(--ink);color:var(--paper);padding:clamp(44px,6vw,72px) 0 28px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1.4fr auto;gap:clamp(22px,4vw,48px);padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.14)}
.footer .brand-word{color:#fff}
.foot-brand p{margin:16px 0 0;font-size:12px;line-height:1.6;color:rgba(255,255,255,.55);max-width:34ch}
.foot-col{display:flex;flex-direction:column;gap:11px}
.foot-h{font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--red);margin-bottom:4px}
.foot-col a{font-size:14px;color:rgba(255,255,255,.82);transition:color .2s}
.foot-col a:hover{color:#fff}
.foot-col .mono{color:rgba(255,255,255,.6)}
.foot-cta{display:flex;align-items:flex-start}
.footer-base{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:22px;flex-wrap:wrap}
.footer-base p{margin:0;font-size:12.5px;color:rgba(255,255,255,.6)}
.footer-base a{color:#fff;border-bottom:1px solid var(--red);padding-bottom:1px}
.footer-base .small{color:rgba(255,255,255,.6)}

/* ---------- reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width:980px){
  .nav-links{display:none}
  .burger{display:flex}
  .nav-right .lang{display:none}
  .hero-grid{grid-template-columns:1fr;gap:34px}
  .hero-figure{order:-1;max-width:420px}
  .map-wrap,.anatomy-grid,.config-grid,.faq-grid{grid-template-columns:1fr}
  .anatomy-grid .an-figure,.config-photo{max-width:460px}
  .faq-grid .sec-head--left{text-align:center;max-width:none;margin-inline:auto}
  .sec-ix{padding-left:0}
  .sec-ix::before{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .foot-cta{grid-column:1 / -1}
}
@media (max-width:560px){
  .nav-right .btn-sm{display:none}
  .hero-spec{grid-template-columns:1fr;border-top:none}
  .hero-spec>div{border-right:none;border-top:1px solid var(--line);padding:14px 0}
  .map-stage{flex-direction:column}
  .ben-row{grid-template-columns:auto 1fr;gap:14px}
  .ben-ico{display:none}
  .ben-row h3,.ben-row p{grid-column:2}
  .ben-num{grid-row:1}
  .life-grid{grid-template-columns:1fr;max-width:380px;margin-inline:auto}
  .cmp-head span,.cmp-row span{padding:13px 12px;font-size:13px}
  .cmp-row .x,.cmp-row .v{font-size:16px}
  .footer-grid{grid-template-columns:1fr}
  .footer-base{justify-content:flex-start}
  .cf-buy{flex-direction:column;align-items:stretch}
  .cf-buy .btn{width:100%}
}
