/*
 * Lapkin Light Matrix · shared design system
 * Self-hosted Onest + restrained data-field background.
 * Loaded after page-local CSS so legacy markup remains compatible.
 */

@font-face{
  font-family:'Onest';font-style:normal;font-weight:300 800;font-display:swap;
  src:url('assets/fonts/onest-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
  font-family:'Onest';font-style:normal;font-weight:300 800;font-display:swap;
  src:url('assets/fonts/onest-latin.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;
}

:root{
  color-scheme:light;
  --bg:#f3f8f3;
  --bg2:#e8f1ea;
  --card:#ffffff;
  --card-glass:rgba(255,255,255,.84);
  --border:#c8d7cc;
  --border-strong:#73877b;
  --control-border:#73877b;
  --txt:#14251d;
  --muted:#53655b;
  --muted-2:#62746a;
  --accent:#0b6b4f;
  --accent-hover:#07533e;
  --accent-soft:rgba(11,107,79,.1);
  --accent-pale:#d9f1e4;
  --pulse:#b8e66b;
  --green:#0d754f;
  --danger:#b42318;
  --shadow-sm:0 10px 30px rgba(36,70,52,.08);
  --shadow-md:0 24px 70px rgba(36,70,52,.12);
  --shadow-accent:0 18px 42px rgba(11,107,79,.2);
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --ease-emphasis:cubic-bezier(.16,1,.3,1);
  --motion-instant:120ms;
  --motion-fast:220ms;
  --motion-base:420ms;
  --motion-slow:680ms;
  --motion-distance:18px;
  --font-sans:'Onest','Segoe UI',system-ui,-apple-system,sans-serif;
  --font-mono:ui-monospace,'SFMono-Regular',Consolas,'Liberation Mono',monospace;
}

html{background:var(--bg);color:var(--txt)}
::selection{background:rgba(184,230,107,.62);color:var(--txt)}
body{
  position:relative;isolation:isolate;min-width:320px;
  background:transparent!important;color:var(--txt)!important;
  font-family:var(--font-sans)!important;font-optical-sizing:auto;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-wrap:anywhere;
}
body.nav-open{overflow:hidden}
body>.matrix-field{position:fixed;z-index:-2;inset:0;overflow:hidden;pointer-events:none;background:
  radial-gradient(900px 620px at 78% 8%,rgba(184,230,107,.18),transparent 68%),
  radial-gradient(760px 560px at 5% 58%,rgba(69,164,119,.1),transparent 70%),
  linear-gradient(180deg,#f8fbf7 0%,var(--bg) 42%,#edf5ef 100%)}
.matrix-field::before{content:'';position:absolute;inset:0;background-image:
  linear-gradient(rgba(11,107,79,.045) 1px,transparent 1px),
  linear-gradient(90deg,rgba(11,107,79,.045) 1px,transparent 1px);
  background-size:72px 72px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 92%)}
.matrix-field::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,251,247,.84) 0 14%,transparent 33% 72%,rgba(248,251,247,.62));}
.matrix-column{position:absolute;top:-28vh;left:var(--matrix-x);width:78px;white-space:pre;text-align:center;
  color:rgba(11,107,79,var(--matrix-alpha));font:600 10px/2.05 var(--font-mono);letter-spacing:.08em;
  transform:translate3d(0,var(--matrix-shift),0);animation:matrixDrift var(--matrix-duration) linear var(--matrix-delay) infinite alternate;
  text-shadow:0 0 14px rgba(86,185,126,.13);user-select:none}
.matrix-column:nth-child(3n){color:rgba(88,141,63,var(--matrix-alpha))}
.matrix-column:nth-child(4n){font-size:9px;letter-spacing:.14em}
.matrix-field[data-paused='true'] .matrix-column{animation-play-state:paused}
@keyframes matrixDrift{to{transform:translate3d(0,28vh,0)}}

header,.hero,section,footer,.page,.page-legal .wrap{position:relative;z-index:1}
a{color:var(--accent)}
:where(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px}
.skip-link{position:fixed;z-index:100;top:10px;left:14px;padding:10px 14px;border-radius:10px;background:var(--txt);color:#fff;font-weight:700;transform:translateY(-150%);transition:transform .18s ease}
.skip-link:focus{color:#fff;transform:translateY(0)}
h1,h2,h3{color:var(--txt);font-family:var(--font-sans);font-weight:750;letter-spacing:-.035em}
p,li{color:var(--muted)}
.wrap{max-width:1180px}
section .wrap>h2::before{background:linear-gradient(90deg,var(--accent),rgba(11,107,79,.16))}
.sub{color:var(--muted);max-width:720px}

/* Navigation and global controls */
@view-transition{navigation:auto}
@keyframes motionPageOut{to{opacity:0;transform:translate3d(0,-7px,0);filter:blur(1.5px)}}
@keyframes motionPageIn{from{opacity:0;transform:translate3d(0,10px,0);filter:blur(2px)}}
::view-transition-old(root){animation:var(--motion-fast) ease both motionPageOut}
::view-transition-new(root){animation:var(--motion-base) var(--ease-emphasis) both motionPageIn}
.site-header .site-logo,.page-home header .logo,.page-med header .logo{view-transition-name:site-brand}
::view-transition-group(site-brand){animation-duration:var(--motion-base);animation-timing-function:var(--ease-emphasis)}

.scroll-progress{height:3px;background:linear-gradient(90deg,var(--accent),#42a878,var(--pulse));box-shadow:0 0 15px rgba(11,107,79,.22)}
header{position:sticky;top:0;z-index:50;background:rgba(248,251,247,.82)!important;border-bottom-color:rgba(132,163,143,.32)!important;box-shadow:none}
header.is-scrolled{background:rgba(248,251,247,.94)!important;box-shadow:0 12px 36px -24px rgba(20,52,35,.28)!important}
.logo{color:var(--txt);letter-spacing:-.025em}.logo em{color:var(--accent)}
nav ul a{color:#5c6e64}nav ul a:hover,nav ul a[aria-current='location']{color:var(--accent)}
nav ul a::after{height:2px;background:var(--accent)}
.burger{position:relative;flex:0 0 44px;min-width:44px;min-height:44px;background:rgba(255,255,255,.72);border-color:var(--control-border);color:var(--txt);font-size:0!important;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease,transform var(--motion-fast) var(--ease-premium)}
.burger span{font-size:0}
.burger::before,.burger::after{content:'';position:absolute;left:50%;top:50%;width:18px;height:2px;border-radius:99px;background:currentColor;transition:transform var(--motion-fast) var(--ease-emphasis)}
.burger::before{transform:translate(-50%,-5px)}
.burger::after{transform:translate(-50%,5px)}
nav.open .burger::before{transform:translate(-50%,0) rotate(45deg)}
nav.open .burger::after{transform:translate(-50%,0) rotate(-45deg)}
.burger:active{transform:scale(.94)}
nav.open ul{background:rgba(248,251,247,.98)!important;border-bottom-color:var(--border)!important;box-shadow:var(--shadow-sm)}

.btn{position:relative;isolation:isolate;display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:10px;overflow:hidden;border:1px solid transparent;border-radius:13px;padding:11px 24px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;cursor:pointer;box-shadow:0 10px 26px -16px rgba(11,107,79,.72);transform:translateY(0);transition:transform var(--motion-fast) var(--ease-premium),background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,box-shadow var(--motion-base) var(--ease-premium),filter var(--motion-fast) ease}
.btn::after{content:'';position:absolute;z-index:1;top:-55%;bottom:-55%;left:-72%;width:42%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);transition:left var(--motion-slow) var(--ease-emphasis);pointer-events:none}
.btn:hover{background:var(--accent-hover);filter:none;box-shadow:var(--shadow-accent);transform:translateY(-2px)}
.btn:hover::after{left:132%}
.btn:active{box-shadow:0 5px 14px rgba(11,107,79,.14);transform:translateY(0) scale(.98)}
.btn:disabled,.btn[aria-disabled='true']{opacity:.62;cursor:not-allowed;transform:none;box-shadow:none}
.motion-magnetic{translate:var(--magnetic-x,0) var(--magnetic-y,0);transition:translate var(--motion-base) var(--ease-emphasis),transform var(--motion-fast) var(--ease-premium),background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,box-shadow var(--motion-base) var(--ease-premium)}
.home-cta-short{display:none}
.btn.ghost{background:rgba(255,255,255,.74);border-color:var(--border-strong);color:var(--txt);box-shadow:none}
.btn.ghost:hover{background:#fff;border-color:var(--accent);color:var(--accent)}
.text-link{color:var(--accent);border-bottom-color:rgba(11,107,79,.35)}
.text-link:hover{color:var(--accent-hover);border-color:var(--accent-hover)}

/* Progressive motion layer: content remains visible when JavaScript is unavailable. */
.motion-ready [data-motion='reveal']{opacity:0;filter:blur(2px);transform:translate3d(0,var(--motion-distance),0);transition:none}
.motion-ready [data-motion='reveal'].is-revealed{opacity:1;filter:none;transform:translate3d(0,0,0);transition:opacity var(--motion-slow) ease,filter var(--motion-slow) ease,transform var(--motion-slow) var(--ease-emphasis)}
.motion-ready [data-motion='stagger']> *{opacity:0;filter:blur(1.5px);transform:translate3d(0,14px,0);transition:none}
.motion-ready [data-motion='stagger'].is-revealed> *{opacity:1;filter:none;transform:translate3d(0,0,0);transition:opacity 560ms ease calc(var(--motion-order,0) * 55ms),filter 560ms ease calc(var(--motion-order,0) * 55ms),transform 620ms var(--ease-emphasis) calc(var(--motion-order,0) * 55ms)}
.motion-surface{isolation:isolate;overflow:hidden}
.expert-panel.motion-surface{position:relative}
.motion-surface::after{content:'';position:absolute;z-index:0;inset:0;border-radius:inherit;background:radial-gradient(390px circle at var(--surface-x,50%) var(--surface-y,22%),rgba(184,230,107,.18),transparent 58%);opacity:0;pointer-events:none;transition:opacity var(--motion-base) ease}
.motion-surface> *{position:relative;z-index:1}
@media(hover:hover) and (pointer:fine){.motion-surface:hover::after{opacity:1}}
@keyframes motionDetailsIn{from{opacity:0;transform:translate3d(0,-5px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
details[open]>:not(summary){animation:motionDetailsIn var(--motion-base) var(--ease-emphasis) both}
@keyframes motionStatusIn{from{opacity:0;transform:translate3d(0,5px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.form-status[data-state='success'],.form-status[data-state='error']{animation:motionStatusIn var(--motion-base) var(--ease-emphasis) both}

/* Main hero */
.page-home .hero{padding-top:94px;background:linear-gradient(90deg,rgba(248,251,247,.9),rgba(248,251,247,.46) 58%,rgba(248,251,247,.2))}
.page-home .hero::before{width:640px;height:640px;left:58%;top:-410px;background:radial-gradient(circle,rgba(184,230,107,.32),rgba(64,158,111,.09) 46%,transparent 70%);filter:blur(8px)}
.page-home .hero::after{background:linear-gradient(90deg,rgba(248,251,247,.88),transparent 45%,rgba(248,251,247,.14)),linear-gradient(rgba(11,107,79,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,107,79,.035) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px}
.hero .kicker,.eyebrow{color:var(--accent);font:700 11px/1.4 var(--font-mono);letter-spacing:.12em}
.page-home .hero h1{font-size:clamp(42px,5vw,68px);line-height:.98;letter-spacing:-.055em;max-width:720px}
.hero h1 em{color:var(--accent)}
.hero-copy>p,.hero>p,.page-med .hero p{color:var(--muted);font-size:18px;line-height:1.65}
.hero-assurance{color:var(--muted)}
.hero-assurance i,.form-guide i,.hero-note i,.signal-dot{background:var(--accent);box-shadow:0 0 0 4px rgba(11,107,79,.08)}
.proof{border-color:rgba(94,132,109,.2);background:rgba(255,255,255,.42);border-radius:18px;overflow:hidden}
.proof>div+div{border-left-color:rgba(94,132,109,.2)}
.proof b{color:var(--txt)}.proof b span{color:var(--accent)}.proof small{color:var(--muted)}

.system-visual,.med-visual{border-color:rgba(109,143,122,.34);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(234,244,237,.88));box-shadow:var(--shadow-md),inset 0 1px 0 #fff}
.system-visual::before,.med-visual::before{background:radial-gradient(380px circle at var(--visual-x,72%) var(--visual-y,16%),rgba(184,230,107,.2),transparent 62%)}
.system-visual::after{background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.7) 49%,transparent 72%)}
.visual-label,.med-visual-head{color:var(--txt)}
.visual-code,.med-visual-head span:last-child{color:var(--accent);font-family:var(--font-mono)}
.system-orbit{stroke:rgba(11,107,79,.2)}
.system-core{background:radial-gradient(circle at 34% 28%,#eaffbd,var(--pulse) 44%,#79bd68);color:#18301f;box-shadow:0 24px 54px -22px rgba(44,130,76,.5),0 0 0 11px rgba(11,107,79,.06)}
.system-node,.path-node{border-color:rgba(121,151,132,.34);background:rgba(255,255,255,.91);box-shadow:0 14px 34px -24px rgba(22,62,39,.34)}
.system-node i,.path-node i{background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono)}
.system-node b,.path-node b{color:var(--txt)}
.path-node small{color:var(--muted)}
.path-node>span:last-child{color:var(--accent)}
.visual-footer,.med-visual-foot{border-top-color:rgba(104,139,116,.24)}
.visual-footer span,.med-visual-foot{color:var(--muted-2)}
.visual-footer b,.med-visual-foot b{color:var(--txt)}

/* Sections and cards */
.page-home section[style*='background'],.page-med section[style*='background']{background:rgba(232,241,234,.72)!important;border-block:1px solid rgba(119,150,130,.12)}
.card{border-color:rgba(128,159,139,.34);background:var(--card-glass);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.card::after{background:radial-gradient(430px circle at var(--spot-x,50%) var(--spot-y,0%),rgba(184,230,107,.2),transparent 45%)}
.card:hover{border-color:rgba(11,107,79,.55);box-shadow:0 24px 58px -34px rgba(11,107,79,.42)}
.card p{color:var(--muted)}
.card .price{color:var(--accent)}
.card .tagline,.quiz-result .tagline{background:var(--accent-soft);color:var(--accent)}
.featured-service{border-color:rgba(11,107,79,.42);background:radial-gradient(650px circle at 88% 24%,rgba(184,230,107,.22),transparent 54%),rgba(255,255,255,.92)}
.principles .card{border-left-color:var(--accent)}
.steps .card::before{background:var(--pulse);color:#17321f;box-shadow:0 8px 20px rgba(72,141,79,.14)}
.case .meta span{border-color:var(--border);color:var(--muted)}
.case .result{border-top-color:var(--border)}.case .result b{color:var(--accent)}
.case-filter button{border-color:var(--control-border);background:rgba(255,255,255,.76);color:var(--muted);box-shadow:0 6px 18px -16px rgba(20,60,38,.28)}
.case-filter button:hover{border-color:var(--accent);color:var(--accent)}
.case-filter button[aria-pressed='true']{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 15px 30px -20px rgba(11,107,79,.72)}
.case-filter button span{background:rgba(11,107,79,.08)}
.case-filter button[aria-pressed='true'] span{background:rgba(255,255,255,.18)}
.case-bridge{border-color:rgba(11,107,79,.22);background:linear-gradient(135deg,rgba(217,241,228,.84),rgba(255,255,255,.88));box-shadow:var(--shadow-sm)}
.case-bridge p{color:var(--muted)}.case-bridge b{color:var(--txt)}

.about .photo{border-color:rgba(11,107,79,.22);background:linear-gradient(155deg,#fff,#e4f0e7);box-shadow:var(--shadow-md)}
.about .photo::before{background:radial-gradient(circle at 28% 18%,rgba(184,230,107,.34),transparent 58%)}
.about .photo::after{border-color:rgba(11,107,79,.22)}
.photo-mono{background:linear-gradient(145deg,var(--pulse),#62b678);color:#17301f;box-shadow:0 22px 42px -20px rgba(11,107,79,.45)}
.photo-caption b{color:var(--txt)}.photo-caption span,.about p{color:var(--muted)}

/* Quiz and FAQ */
.quiz-box{border-color:rgba(11,107,79,.3);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(232,244,235,.9));box-shadow:var(--shadow-md)}
.quiz-box::before{background:radial-gradient(circle,rgba(184,230,107,.32),transparent 68%)}
.quiz-head{border-bottom-color:var(--border)}
.quiz-progress i{background:#bfd0c4}.quiz-progress span{background:#c8d8cd}
.quiz-box[data-stage='1'] .quiz-progress i:nth-child(1),.quiz-box[data-stage='2'] .quiz-progress i:nth-child(-n+3),.quiz-box[data-stage='3'] .quiz-progress i{background:var(--accent);box-shadow:0 0 0 4px rgba(11,107,79,.1)}
.quiz-step-label,.quiz-result-desc{color:var(--muted)}
.quiz-opt{border-color:var(--control-border);background:rgba(255,255,255,.78);color:var(--txt)}
.quiz-opt::after{color:var(--accent)}
.quiz-opt:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 14px 28px -24px rgba(11,107,79,.45)}
.quiz-result-price{color:var(--accent)}
details{border-color:rgba(126,156,136,.36);background:rgba(255,255,255,.82);box-shadow:0 8px 24px -22px rgba(24,64,41,.28)}
details:hover,details[open]{border-color:rgba(11,107,79,.45);background:#fff}
details summary::after{color:var(--accent)}details p{color:var(--muted)}

/* Contact and form */
.contact{border-color:rgba(11,107,79,.3);background:radial-gradient(620px circle at 50% -34%,rgba(184,230,107,.3),transparent 64%),rgba(255,255,255,.9);box-shadow:var(--shadow-md)}
.field label{color:var(--txt)}.field label span{color:var(--muted-2)}.field:focus-within label{color:var(--accent)}
input,textarea{border-color:var(--control-border);background:rgba(250,252,250,.96);color:var(--txt)}
input::placeholder,textarea::placeholder{color:var(--muted-2)}
input:focus,textarea:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 4px rgba(11,107,79,.09)}
input[aria-invalid='true'],textarea[aria-invalid='true']{border-color:var(--danger);box-shadow:0 0 0 4px rgba(180,35,24,.08)}
.field-error{color:var(--danger)}.consent-row,.note,.form-guide{color:var(--muted)}
.mobile-cta{border-color:rgba(11,107,79,.38);background:rgba(250,252,250,.96);box-shadow:0 18px 46px rgba(25,60,40,.18);color:var(--txt)}
.mobile-cta small{color:var(--muted)}.mobile-cta i{background:var(--accent);color:#fff}
footer{border-top-color:rgba(111,144,122,.28);color:var(--muted);background:rgba(248,251,247,.64)}

/* Medical landing */
.page-med .hero{background:linear-gradient(90deg,rgba(248,251,247,.94),rgba(248,251,247,.4));}
.page-med header nav{gap:16px}.page-med header .logo{white-space:nowrap}.med-cta-short{display:none}
.page-med .hero::before{background:radial-gradient(circle,rgba(184,230,107,.28),rgba(11,107,79,.07) 48%,transparent 70%)}
.page-med .hero::after{background:linear-gradient(90deg,rgba(248,251,247,.74),transparent 48%),linear-gradient(rgba(11,107,79,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,107,79,.035) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px}
.page-med .hero h1{font-size:clamp(42px,4.6vw,64px);letter-spacing:-.05em}
.pain{border-top-color:#c56b61}.pain:hover{border-color:#b42318}.fix{border-top-color:var(--accent)}.fix:hover{border-color:var(--accent)}
.banner{border-color:rgba(11,107,79,.36);background:linear-gradient(115deg,rgba(217,241,228,.95),rgba(255,255,255,.86));color:var(--muted);box-shadow:var(--shadow-sm)}
.banner b{color:var(--accent)}

/* Legal pages */
.page-legal{min-height:100vh}
.page-legal .wrap{max-width:860px;margin:48px auto;padding:clamp(28px,5vw,62px);border:1px solid rgba(126,156,136,.34);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-md);backdrop-filter:blur(14px)}
.page-legal h1{font-size:clamp(30px,4vw,44px);line-height:1.12;margin:24px 0 10px}
.page-legal h2{font-size:20px;color:var(--txt);margin:34px 0 12px}
.page-legal p,.page-legal li{color:var(--muted);font-size:15.5px}
.page-legal .muted{color:var(--muted-2)}
.page-legal ul{padding-left:24px}.page-legal li+li{margin-top:8px}
.page-legal a{font-weight:650}
.page-legal .wrap>p:first-child a{display:inline-flex;align-items:center;min-height:44px}

/* Printable diagnostic offer */
.page-offer{background:#eaf2ec!important}
.page-offer .page{background:#fff;box-shadow:0 24px 80px rgba(28,67,43,.16)}
.page-offer .top{border-bottom-color:var(--accent)}
.page-offer .top small{color:var(--muted)}
.page-offer .logo em,.page-offer h1 em,.page-offer h2{color:var(--accent)}
.page-offer .lead,.page-offer .box p,.page-offer .verdict,.page-offer .contacts{color:var(--muted)}
.page-offer .box{border-color:var(--border);background:#fbfdfb}
.page-offer ol.steps li{border-bottom-color:var(--border)}
.page-offer ol.steps li::before{background:var(--pulse);color:#18301f}
.page-offer .verdict{background:#edf7f0;border-left-color:var(--accent)}
.page-offer .offer{background:#153a2c;color:#fff}
.page-offer .offer .price{color:var(--pulse)}
.page-offer .offer .price small,.page-offer .offer .terms{color:#d6e6dc}

@media screen{
  .page-offer{padding:24px}
  .page-offer .page{width:min(100%,210mm);min-height:calc(100vh - 48px);border-radius:18px}
}

@media(max-width:820px){
  .matrix-field::after{background:linear-gradient(90deg,rgba(248,251,247,.7),transparent 36% 76%,rgba(248,251,247,.3))}
  .matrix-column:nth-child(n+9){display:none}
  .page-home .hero,.page-med .hero{padding-top:66px}
  .proof{background:rgba(255,255,255,.62)}
  .mobile-cta{color:var(--txt)}
  .page-legal .wrap{margin:20px 14px;border-radius:22px}
  .page-offer{padding:12px}
  .page-offer .page{min-height:calc(100vh - 24px);padding:36px 28px}
  .page-home nav ul{position:absolute;top:66px;right:0;left:0;display:flex;visibility:hidden;flex-direction:column;gap:16px;border-bottom:1px solid var(--border);padding:18px 24px;background:var(--bg2);opacity:0;pointer-events:none;transform:translate3d(0,-10px,0);transition:opacity var(--motion-fast) ease,visibility var(--motion-fast) step-end,transform var(--motion-base) var(--ease-emphasis)}
  .page-home nav.open ul{visibility:visible;gap:2px;padding:10px 18px;opacity:1;pointer-events:auto;transform:translate3d(0,0,0);transition:opacity var(--motion-fast) ease,visibility 0s step-start,transform var(--motion-base) var(--ease-emphasis)}
  .page-home nav.open ul a{display:flex;align-items:center;min-height:44px;padding:0;font-size:15px}
}

@media(max-width:560px){
  .matrix-field::before{background-size:54px 54px}
  .matrix-column{font-size:8px;width:54px;opacity:.82}
  .matrix-column:nth-child(n+7){display:none}
  .page-home .hero h1,.page-med .hero h1{font-size:clamp(38px,11vw,50px);line-height:1.01}
  .proof{border-radius:16px}
  .page-legal .wrap{padding:30px 20px}
  .page-offer .top,.page-offer .offer,.page-offer .contacts{align-items:flex-start;flex-direction:column;gap:10px}
  .page-offer .grid{grid-template-columns:1fr}
  .page-offer .page{padding:30px 20px}
}

@media(max-width:440px){
  .page-med .med-header-cta{padding:8px 15px!important}
  .page-med .med-cta-wide{display:none}
  .page-med .med-cta-short{display:inline}
}

@media(max-width:360px){
  .page-home .home-cta-wide{display:none}
  .page-home .home-cta-short{display:inline}
  .page-med .med-header-cta{padding:8px 15px!important}
  .page-med .med-cta-wide{display:none}
  .page-med .med-cta-short{display:inline}
  .page-legal .wrap{padding:28px 16px}
  .page-legal h1{font-size:24px;letter-spacing:-.04em}
}

html.motion-reduced{scroll-behavior:auto!important}
html.motion-reduced *,html.motion-reduced *::before,html.motion-reduced *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
html.motion-reduced .matrix-column{animation:none!important;transform:none!important}
html.motion-reduced .matrix-field{opacity:.72}
html.motion-reduced .scroll-progress{display:none!important}
html.motion-reduced [data-motion],html.motion-reduced [data-motion]> *,html.motion-reduced .reveal,html.motion-reduced .reveal-stagger>*{opacity:1!important;filter:none!important;transform:none!important}
html.motion-reduced .motion-magnetic{translate:none!important}
html.motion-reduced .content-hero .decision-step{opacity:1!important}
html.motion-reduced::view-transition-old(root),html.motion-reduced::view-transition-new(root){animation:none!important}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .matrix-column{animation:none!important;transform:none!important}
  .matrix-field{opacity:.72}
  .scroll-progress{display:none!important}
  [data-motion],[data-motion]> *{opacity:1!important;filter:none!important;transform:none!important}
  .motion-magnetic{translate:none!important}
  ::view-transition-old(root),::view-transition-new(root),::view-transition-group(site-brand){animation:none!important}
}

@media print{
  .matrix-field{display:none!important}
  .page-offer{background:#fff!important}
  .page-offer .page{width:210mm;min-height:297mm;padding:16mm 18mm;border-radius:0;box-shadow:none}
}
