@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Source+Serif+4:wght@500;600;700&display=swap');

:root{
  --ivory:#F8F8F6;
  --sage:#CBB9A3;
  --sage-muted:#E4D8C9;
  --sage-deep:#B8A28A;
  --champagne:#F1EEE8;
  --graphite:#1C1C1C;
  --muted:#404040;
  --muted-soft:#5F6368;
  --border:#E7E4DF;
  --white:#fff;
  --shadow:0 28px 90px rgba(28,28,28,.09);
  --shadow-soft:0 18px 48px rgba(28,28,28,.06);
  --shadow-panel:0 20px 60px rgba(28,28,28,.08);
  --radius-xl:42px;
  --radius-lg:32px;
  --radius-md:24px;
  --radius-card:28px;
  --radius-image:30px;
  --radius-panel:34px;
  --section-space:108px;
  --section-space-compact:84px;
  --hero-title:clamp(42px,4.2vw,78px);
  --page-title:clamp(38px,3.45vw,62px);
  --section-title:clamp(31px,2.7vw,48px);
  --card-title:clamp(24px,1.95vw,34px);
  --body-copy:clamp(17px,.92vw,20px);
  --lead-copy:clamp(19px,1.08vw,24px);
  --divider-line:linear-gradient(90deg, rgba(203,185,163,0), rgba(203,185,163,.8), rgba(203,185,163,0));
  --surface-soft:rgba(255,255,255,.8);
  --surface-strong:rgba(255,255,255,.9);
  --lift-sm:translateY(-3px);
  --lift-xs:translateY(-2px);
  --section-glow:radial-gradient(circle at top right, rgba(203,185,163,.12), transparent 42%);
  --ease-premium:cubic-bezier(.22,.61,.36,1);
  --motion-fast:.22s;
  --motion-base:.3s;
  --motion-slow:.56s;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at top left, rgba(203,185,163,.18), transparent 34%),
    linear-gradient(180deg, #fbfaf8 0%, var(--ivory) 30%, #fff 100%);
  color:var(--graphite);
  line-height:1.75;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-synthesis-weight:none;
  overflow-x:clip;
}
img{display:block;max-width:100%;height:auto;object-fit:cover}


@keyframes duosFadeUp{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}

@media (prefers-reduced-motion:no-preference){
  .editorial-section,
  .final-cta,
  .page-hero{
    animation:duosFadeUp .7s var(--ease-premium) both;
  }
  .hero-copy,
  .page-hero-copy,
  .story-copy,
  .process-preview-copy,
  .section-copy,
  .editorial-card,
  .steps > div,
  .pricing-row,
  .myopia-feature,
  .contact-card,
  .cta-panel{
    animation:duosFadeUp .62s var(--ease-premium) both;
  }
  .editorial-card:nth-child(2),
  .steps > div:nth-child(2),
  .pricing-row:nth-child(2),
  .myopia-feature:nth-child(2){animation-delay:.06s}
  .editorial-card:nth-child(3),
  .steps > div:nth-child(3),
  .pricing-row:nth-child(3),
  .pricing-row:nth-child(4){animation-delay:.12s}
  .editorial-section:nth-of-type(2),
  .final-cta:nth-of-type(2){animation-delay:.04s}
  .editorial-section:nth-of-type(3),
  .final-cta:nth-of-type(3){animation-delay:.08s}
}
.container{width:min(90%,clamp(1180px,86vw,1440px));margin-inline:auto}
.narrow{max-width:920px}

.editorial-section,
.final-cta,
.page-hero,
.editorial-hero{position:relative}

.editorial-section:before,
.final-cta:before,
.page-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.6;
  background:transparent;
}

.editorial-section > .container,
.final-cta > .container,
.page-hero > .container,
.editorial-hero > .container{
  position:relative;
  z-index:1;
}

.editorial-section .container > :first-child,
.final-cta .container > :first-child,
.page-hero .container > :first-child{margin-top:0}

.section-copy h2,
.process-preview-copy h2,
.reassurance h2,
.page-hero-copy h1,
.cta-panel h2{letter-spacing:0}

.section-copy h2::after,
.process-preview-copy h2::after,
.reassurance h2::after,
.story-copy h2::after{
  content:"";
  display:block;
  width:72px;
  height:1px;
  margin-top:18px;
  background:var(--divider-line);
}

.process-preview-copy h2::after,
.reassurance h2::after{margin-inline:auto}

main > .editorial-section + .editorial-section:after,
main > .page-hero + .editorial-section:after{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:min(90%, 1180px);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg, rgba(203,185,163,0), rgba(203,185,163,.42), rgba(203,185,163,0));
}

.site-header{position:sticky;top:0;z-index:1000;background:rgba(248,248,246,.88);border-bottom:1px solid rgba(231,228,223,.82);transition:background var(--motion-base) var(--ease-premium),backdrop-filter var(--motion-base) var(--ease-premium),box-shadow var(--motion-base) var(--ease-premium),border-color var(--motion-base) var(--ease-premium)}
.site-header .container{width:min(98%,2200px)}
body.is-scrolled .site-header{background:rgba(255,255,255,.68);backdrop-filter:blur(26px) saturate(138%);box-shadow:0 10px 28px rgba(28,28,28,.045);border-color:rgba(231,228,223,.68)}
.header-inner{
  position:relative;
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  align-items:center;
  gap:clamp(18px,1.8vw,40px);
  padding:clamp(11px,.95vw,16px) 0;
  transition:padding var(--motion-base) var(--ease-premium),gap var(--motion-base) var(--ease-premium);
}
body.is-scrolled .header-inner{padding:clamp(8px,.72vw,12px) 0;gap:clamp(16px,1.45vw,30px)}
.brand{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:clamp(8px,.7vw,12px);
  min-width:0;
  width:max-content;
  flex:0 0 auto;
  justify-self:start;
  text-decoration:none;
  color:var(--graphite);
  border-radius:16px;
  transition:transform var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}
.brand:hover{transform:translateY(-1px);opacity:.9}
.brand img{
  height:clamp(46px,2.35vw,68px);
  width:auto;
  object-fit:contain;
  transition:height var(--motion-base) var(--ease-premium);
}
body.is-scrolled .brand img{height:clamp(40px,2vw,58px)}
.brand span{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:clamp(20px,1.35vw,28px);
  padding-left:clamp(9px,.7vw,14px);
  font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(20px,1.22vw,30px);
  font-weight:600;
  letter-spacing:0;
  line-height:1;
}
.brand span:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:1px;
  height:clamp(18px,1.25vw,24px);
  transform:translateY(-50%);
  background:linear-gradient(180deg,transparent,rgba(203,185,163,.72),transparent);
}
.site-nav{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(4px,.38vw,12px);
  width:max-content;
  max-width:calc(100% - clamp(300px,22vw,460px));
}
.site-nav > a,
.site-nav > .dropdown > a{
  display:inline-flex;
  align-items:center;
  min-height:clamp(36px,2.15vw,48px);
}
.site-nav a{
  color:var(--muted);
  text-decoration:none;
  font-size:clamp(13px,.82vw,18px);
  font-weight:500;
  padding:clamp(8px,.52vw,12px) clamp(8px,.82vw,18px);
  border-radius:999px;
  white-space:nowrap;
  letter-spacing:0;
  transition:color var(--motion-fast) var(--ease-premium),background var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium);
}
.site-nav a:hover,.site-nav a.active{color:var(--graphite);background:rgba(203,185,163,.18);box-shadow:inset 0 0 0 1px rgba(203,185,163,.28)}
.lang-switcher,
.mobile-lang-switcher{
  display:flex;
  align-items:center;
  gap:6px;
}
.lang-switcher{
  justify-self:end;
  margin-left:auto;
  padding:4px;
  border:1px solid rgba(203,185,163,.24);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(14px);
}
.lang-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-decoration:none;
  transition:background var(--motion-fast) var(--ease-premium),color var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium);
}
.lang-link:hover{
  color:var(--graphite);
  background:rgba(203,185,163,.14);
}
.lang-link.active{
  color:var(--graphite);
  background:rgba(203,185,163,.22);
  box-shadow:inset 0 0 0 1px rgba(203,185,163,.30);
}
.mobile-lang-switcher{
  display:none;
}
.dropdown{
  position:relative;
  display:flex;
  align-items:center;
}
.dropdown-content{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,8px);min-width:190px;width:max-content;max-width:340px;opacity:0;visibility:hidden;background:rgba(255,255,255,.94);border:1px solid var(--border);border-radius:20px;padding:8px;box-shadow:0 16px 38px rgba(28,28,28,.08);transition:opacity var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium),visibility var(--motion-fast) var(--ease-premium)}
.dropdown:hover .dropdown-content,.dropdown:focus-within .dropdown-content{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dropdown-content a{display:block;border-radius:14px;padding:10px 12px;line-height:1.35}
.dropdown-content a.active{background:rgba(203,185,163,.20);color:var(--graphite)}
.mobile-menu{display:none}

h1,h2,h3{
  font-family:"Source Serif 4",Georgia,serif;
  font-weight:600;
  letter-spacing:0;
  color:var(--graphite);
  text-wrap:balance;
}
h1{font-size:var(--hero-title);line-height:1.08}
h2{font-size:var(--section-title);line-height:1.12}
h3{font-size:var(--card-title);line-height:1.16}
p{
  color:var(--muted);
  font-size:var(--body-copy);
  line-height:1.76;
}

main p a,
main li a,
main .condition-treatment-item a,
main .plusoptix-outro a,
main .soft-note a{
  color:var(--graphite);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid rgba(28,28,28,.24);
  text-underline-offset:.18em;
  background-image:linear-gradient(rgba(203,185,163,.16), rgba(203,185,163,.16));
  background-repeat:no-repeat;
  background-size:0 100%;
  background-position:0 100%;
  transition:color var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}

main p a:hover,
main li a:hover,
main .condition-treatment-item a:hover,
main .plusoptix-outro a:hover,
main .soft-note a:hover{
  color:var(--graphite);
  border-bottom-color:rgba(184,162,138,.62);
  opacity:.88;
  background-size:100% 100%;
}
.lead{
  font-size:var(--lead-copy);
  line-height:1.72;
  color:var(--muted);
}
.eyebrow{
  display:inline-flex;
  margin-bottom:18px;
  color:var(--sage-deep);
  font-size:clamp(12px,.58vw,14px);
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:clamp(50px,2.55vw,58px);
  padding:clamp(14px,.76vw,17px) clamp(24px,1.25vw,30px);
  border:1px solid transparent;
  border-radius:999px;
  background:var(--graphite);
  color:#fff!important;
  text-decoration:none;
  font-size:clamp(14px,.72vw,16px);
  font-weight:600;
  letter-spacing:.01em;
  box-shadow:0 16px 38px rgba(28,28,28,.16);
  transition:transform var(--motion-base) var(--ease-premium),box-shadow var(--motion-base) var(--ease-premium),background-color var(--motion-base) var(--ease-premium),color var(--motion-base) var(--ease-premium),border-color var(--motion-base) var(--ease-premium);
}
.btn:hover,
.btn:focus-visible{
  transform:translateY(-2px) scale(1.012);
  box-shadow:0 24px 52px rgba(28,28,28,.22);
  background:#2b2b2b;
  color:#fff!important;
  border-color:#2b2b2b;
}
.btn:active{
  transform:translateY(0);
  box-shadow:0 12px 28px rgba(28,28,28,.14);
  background:#252525;
  color:#fff!important;
  border-color:#252525;
}
.btn:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px rgba(203,185,163,.28),0 22px 48px rgba(28,28,28,.20);
}
.btn-secondary{background:#fff;color:var(--graphite)!important;border:1px solid rgba(203,185,163,.38);box-shadow:var(--shadow-soft)}
.btn-secondary:hover,
.btn-secondary:focus-visible{
  transform:translateY(-2px) scale(1.01);
  background:rgba(241,238,232,.96);
  color:var(--graphite)!important;
  border-color:rgba(184,162,138,.56);
  box-shadow:0 20px 42px rgba(28,28,28,.11);
}
.btn-secondary:active{
  background:rgba(236,231,223,.98);
  color:var(--graphite)!important;
  border-color:rgba(184,162,138,.62);
  box-shadow:0 10px 24px rgba(28,28,28,.08);
}
.story-cta{
  min-height:54px;
  padding:16px 28px;
  background:var(--graphite);
  color:#fff!important;
  border:1px solid rgba(28,28,28,.08);
  box-shadow:0 18px 42px rgba(28,28,28,.14);
}
.story-cta:hover{
  transform:translateY(-2px) scale(1.012);
  background:#2f2a27;
  color:#fff!important;
  box-shadow:0 24px 50px rgba(28,28,28,.18);
}
.btn-light{
  background:#fff;
  color:var(--graphite)!important;
  border:1px solid rgba(203,185,163,.42);
  box-shadow:0 12px 30px rgba(28,28,28,.08);
}
.btn-light:hover,
.btn-light:focus-visible{
  transform:translateY(-2px) scale(1.01);
  background:#3a342f;
  color:#fff!important;
  border-color:#3a342f;
  box-shadow:0 20px 42px rgba(28,28,28,.16);
}
.btn-light:active{
  background:#312c28;
  color:#fff!important;
  border-color:#312c28;
  box-shadow:0 12px 26px rgba(28,28,28,.12);
}
.text-link{color:var(--graphite);font-weight:700;text-decoration:none;border-bottom:1px solid rgba(28,28,28,.28);padding-bottom:2px;transition:color var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium)}
.text-link:hover{opacity:.88;border-bottom-color:rgba(184,162,138,.64)}
.subpage-back-wrap{
  padding:20px 0 0;
}
.subpage-back-stack{
  display:grid;
  justify-items:start;
  gap:8px;
}
.subpage-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--muted-soft);
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  line-height:1.4;
  transition:color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium);
}
.subpage-back:hover{
  color:var(--graphite);
  transform:translateX(-2px);
}

.editorial-hero{
  min-height:calc(100vh - 140px);
  display:grid;
  align-items:center;
  padding:0 0 38px;
  overflow:hidden;
}
.hero-layout{
  position:relative;
  display:block;
  min-height:544px;
  width:100%;
}
.hero-layout > *,
.page-hero-shell > *,
.split-section > *,
.image-text > *,
.story-overlay > *,
.layered-image-section .container > *,
.checklist-layout > *,
.parent-hero-layout > *{min-width:0}
.hero-copy{
  position:relative;
  z-index:2;
  max-width:520px;
  margin-left:56px;
  padding:72px 0 74px;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
}
.hero-copy h1{max-width:12ch;margin-bottom:30px}
.hero-copy p{max-width:34rem}
.hero-copy p + p{margin-top:12px}
.hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:34px;
}
.hero-media,
.page-hero-media,
.story-media,
.parent-image-stack{
  position:relative;
  width:100%;
  max-width:100%;
  border-radius:var(--radius-image);
  overflow:hidden;
  line-height:0;
  box-shadow:0 16px 44px rgba(28,28,28,.06);
}
.hero-layout .hero-media{
  position:absolute;
  top:-18px;
  right:-24px;
  bottom:18px;
  left:0;
  z-index:0;
  border-radius:calc(var(--radius-image) + 6px);
  box-shadow:0 22px 56px rgba(28,28,28,.07);
}
.hero-layout .hero-media:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg, rgba(248,248,246,.94) 0%, rgba(248,248,246,.88) 16%, rgba(248,248,246,.62) 31%, rgba(248,248,246,.22) 48%, rgba(248,248,246,.04) 66%, rgba(248,248,246,0) 82%);
  pointer-events:none;
}
.hero-media img,
.page-hero-media img,
.story-media img,
.parent-image-stack img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:brightness(1.06) saturate(.78) contrast(.97);
}
.hero-media{min-height:544px}
.hero-media img{aspect-ratio:auto}
.image-hover img{transition:transform var(--motion-slow) var(--ease-premium)}
.image-hover:hover img{transform:scale(1.02)}

.home-hero.editorial-hero{
  padding:0 0 48px;
}
.home-hero .hero-layout{
  display:grid;
  min-height:clamp(680px,41vw,820px);
  position:relative;
  overflow:hidden;
}
.home-hero .hero-copy{
  grid-area:1 / 1;
  position:relative;
  align-self:start;
  z-index:2;
  max-width:clamp(420px,34vw,560px);
  margin-left:0;
  padding:
    clamp(82px,6.2vw,118px)
    clamp(36px,4vw,58px)
    clamp(108px,9vw,144px);
}
.home-hero .hero-copy h1{
  max-width:11ch;
  margin-bottom:26px;
}
.home-hero .hero-actions{
  margin-top:30px;
}
.home-hero .hero-actions .btn:first-child{
  min-width:224px;
}
.home-hero .hero-layout .hero-media{
  grid-area:1 / 1;
  position:absolute;
  inset:0;
  border-radius:0;
}
.home-hero .hero-image-frame{
  border-radius:0;
}
.home-hero .hero-media img{
  object-position:74% 35%;
  filter:brightness(1.03) saturate(.8) contrast(.98);
}
.home-hero .hero-visual,
.home-hero .hero-image-frame{
  position:relative;
  overflow:hidden;
}
.home-hero .hero-image-frame{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.home-hero .hero-image-frame img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.home-hero .eye-scan-beam{
  position:absolute;
  left:var(--beam-left-px,69.9%);
  top:var(--beam-top-px,47.2%);
  width:clamp(4px,.42vw,7px);
  height:clamp(25px,3.3vw,46px);
  border-radius:999px;
  background:
    radial-gradient(ellipse at center,
      rgba(255,255,250,1) 0%,
      rgba(255,252,242,.98) 14%,
      rgba(255,232,198,.7) 34%,
      rgba(255,178,108,.24) 58%,
      rgba(255,150,82,0) 100%
    ),
    linear-gradient(
      to bottom,
      rgba(255,226,182,0),
      rgba(255,248,232,.4) 12%,
      rgba(255,253,247,.98) 50%,
      rgba(255,220,178,.48) 86%,
      rgba(255,226,182,0)
    );
  box-shadow:
    0 0 12px rgba(255,245,228,.62),
    0 0 26px rgba(255,196,122,.36),
    0 0 48px rgba(255,150,82,.18);
  transform:translate(-50%,-50%);
  pointer-events:none;
  z-index:3;
  animation:eyeBeamScan 4.5s ease-in-out infinite alternate;
  isolation:isolate;
  filter:blur(1.35px);
}
.home-hero .eye-scan-beam::before,
.home-hero .eye-scan-beam::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  transform:translate(-50%,-50%);
  border-radius:999px;
  pointer-events:none;
}
.home-hero .eye-scan-beam::before{
  inset:-26px -52px;
  width:auto;
  height:auto;
  background:
    radial-gradient(
      ellipse at center,
      rgba(255,246,228,.52) 0%,
      rgba(255,220,176,.38) 26%,
      rgba(255,186,118,.22) 50%,
      rgba(255,138,78,.08) 72%,
      rgba(255,120,50,0) 100%
    ),
    radial-gradient(
      ellipse at center,
      rgba(255,250,240,.34) 0%,
      rgba(255,220,178,.16) 42%,
      rgba(255,150,82,0) 100%
    );
  filter:blur(26px);
  opacity:1;
  mix-blend-mode:screen;
}
.home-hero .eye-scan-beam::after{
  inset:-18px -34px;
  width:auto;
  height:auto;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(255,255,250,.68), transparent 24%),
    radial-gradient(ellipse at 38% 38%, rgba(255,248,232,.42), transparent 36%),
    radial-gradient(ellipse at 64% 66%, rgba(255,184,112,.34), transparent 42%),
    radial-gradient(ellipse at center, rgba(255,214,168,.2), transparent 64%);
  filter:blur(14px);
  opacity:.92;
  mix-blend-mode:screen;
}
@keyframes eyeBeamScan{
  from{
    transform:translate(calc(-50% - 16px),-50%);
    opacity:.75;
  }
  to{
    transform:translate(calc(-50% + 16px),-50%);
    opacity:1;
  }
}
@media (prefers-reduced-motion: reduce){
  .home-hero .eye-scan-beam{animation:none}
}

.editorial-section{padding:var(--section-space) 0}
.compact-section{padding:76px 0 82px}
.soft-band{background:linear-gradient(180deg,rgba(241,238,232,.86),rgba(248,248,246,.78))}
.editorial-section{
  background-image:var(--section-glow);
  background-repeat:no-repeat;
  background-size:100% 100%;
}
.soft-band{
  background-image:
    radial-gradient(circle at bottom left, rgba(203,185,163,.08), transparent 34%),
    linear-gradient(180deg,rgba(241,238,232,.86),rgba(248,248,246,.78));
}
.split-section{display:grid;grid-template-columns:.88fr 1.12fr;gap:80px;align-items:start}
.text-column{display:grid;gap:18px;max-width:40rem}
.section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin-bottom:42px}
.section-heading-row h2,.process-preview h2,.reassurance h2,.editorial-section h2{max-width:16ch}
.editorial-section h2 + p{margin-top:18px}

.homepage-intro{
  padding-top:76px;
  padding-bottom:78px;
}
.homepage-intro .split-section{
  position:relative;
  gap:74px;
}
.homepage-intro .split-section:before{
  content:"";
  position:absolute;
  left:0;
  top:-18px;
  width:96px;
  height:1px;
  background:var(--divider-line);
}
.homepage-intro .text-column{
  max-width:38rem;
  padding-top:42px;
}

.homepage-care{
  padding-top:46px;
  padding-bottom:48px;
}
.homepage-care .section-heading-row{
  margin-bottom:48px;
}
.homepage-care-heading{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  width:100%;
  text-align:left;
  gap:22px;
}
.homepage-care-heading .section-copy{
  margin:0;
  max-width:31rem;
  grid-column:1 / span 2;
  width:100%;
}
.homepage-care-heading .section-copy h2{
  max-width:16ch;
}
.homepage-care-heading .section-copy h2::after{
  margin-inline:0;
}
.homepage-care-heading .text-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0 8px 0 auto;
  justify-self:end;
  min-height:50px;
  padding:14px 22px;
  border:1px solid rgba(184,162,138,.46);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 34px rgba(28,28,28,.08);
  border-bottom-color:transparent;
  font-size:14px;
  font-weight:700;
  line-height:1;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium);
}
.homepage-care-heading .text-link:hover{
  transform:translateY(-3px);
  background:#fff;
  border-color:rgba(184,162,138,.62);
  box-shadow:0 20px 40px rgba(28,28,28,.1);
}
.homepage-care .editorial-card{
  min-height:248px;
}
.homepage-card{
  padding-bottom:54px;
}
.homepage-card:after{
  display:none;
}
.homepage-card:before{
  background:
    linear-gradient(135deg,rgba(241,238,232,.86),transparent 50%,rgba(203,185,163,.10)),
    radial-gradient(circle at bottom right, rgba(203,185,163,.14), transparent 26%);
}
.homepage-card h3{
  transition:color var(--motion-fast) var(--ease-premium);
}
.homepage-card::marker{content:""}
.homepage-card:hover h3{
  color:#2b2b2b;
}
.homepage-care-grid{
  position:relative;
}
@media (prefers-reduced-motion:no-preference){
  .homepage-care-grid.is-reveal-ready .homepage-card{
    animation:none !important;
    opacity:0;
    filter:blur(5px);
    pointer-events:none;
    will-change:transform, opacity, filter;
    transform-origin:center top;
    transition:
      opacity 1.08s var(--ease-premium),
      transform 1.08s var(--ease-premium),
      filter 1.08s var(--ease-premium),
      box-shadow var(--motion-fast) var(--ease-premium),
      border-color var(--motion-fast) var(--ease-premium),
      background-color var(--motion-fast) var(--ease-premium);
    transition-delay:var(--care-delay, 0ms);
  }
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(1){
    transform:translateX(84px) translateY(-26px) scale(.92);
  }
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(2){
    transform:translateY(-34px) scale(.88);
  }
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(3){
    transform:translateX(-84px) translateY(-26px) scale(.92);
  }
  .homepage-care-grid.is-reveal-ready.is-revealed .homepage-card{
    opacity:1;
    filter:blur(0);
    transform:translateY(0) scale(1);
    pointer-events:auto;
  }
  .homepage-care-grid.is-reveal-ready.is-revealed .homepage-card:hover{
    transform:translateY(-4px) scale(1.018);
    box-shadow:0 22px 52px rgba(28,28,28,.1);
  }
}

.editorial-cards{display:grid;gap:22px}
.editorial-cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.editorial-cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.editorial-card{
  position:relative;
  display:block;
  min-height:292px;
  padding:34px;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:var(--surface-soft);
  box-shadow:var(--shadow-soft);
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
a.editorial-card{
  cursor:pointer;
}
.editorial-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(241,238,232,.86),transparent 50%,rgba(203,185,163,.10));pointer-events:none}
.editorial-card:hover,
.editorial-card:focus-visible{transform:translateY(-4px) scale(1.012);box-shadow:0 22px 52px rgba(28,28,28,.10);border-color:rgba(184,162,138,.62);background:var(--surface-strong)}
.editorial-card:after{
  content:"";
  position:absolute;
  inset:auto 34px 0 34px;
  height:1px;
  background:linear-gradient(90deg, rgba(203,185,163,0), rgba(203,185,163,.32), rgba(203,185,163,0));
  opacity:.7;
}
.editorial-card h3,.editorial-card p{position:relative}
.editorial-card h3{
  margin-bottom:14px;
  color:var(--graphite);
}
.editorial-card p{
  max-width:32rem;
  color:var(--graphite);
}
.editorial-card ul{
  position:relative;
  margin:14px 0 0;
  padding-left:20px;
  display:grid;
  gap:8px;
  color:var(--graphite);
}
.editorial-card li{
  color:var(--graphite);
  line-height:1.72;
}
.editorial-card p + ul{
  margin-top:12px;
}
.legal-prose{
  max-width:900px;
  margin:0 auto;
  padding:44px clamp(24px,3vw,40px);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:var(--surface-soft);
  box-shadow:var(--shadow-soft);
}
.legal-prose section + section{
  margin-top:34px;
  padding-top:34px;
  border-top:1px solid rgba(203,185,163,.28);
}
.legal-prose h2{
  margin:0 0 14px;
  font-size:clamp(1.35rem,1.05rem + .8vw,1.9rem);
  color:var(--graphite);
}
.legal-prose p{
  margin:0;
  max-width:none;
  color:var(--graphite);
}
.legal-prose p + p{
  margin-top:14px;
}
.legal-prose ul{
  margin:16px 0 0;
  padding-left:20px;
  display:grid;
  gap:8px;
  color:var(--graphite);
}
.legal-prose li{
  line-height:1.72;
}
.legal-prose strong{
  color:var(--graphite);
}
.contact-cards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-auto-rows:auto;
  gap:20px;
  align-items:stretch;
  max-width:1080px;
  margin-inline:auto;
}
.contact-hours-note{
  margin:0 0 32px;
  max-width:44rem;
  margin-inline:auto;
  text-align:center;
}
.contact-hours-note .eyebrow{
  margin-bottom:10px;
  justify-content:center;
}
.contact-hours-note p:last-child{
  margin:0;
  color:var(--ink);
  font-size:clamp(1.0625rem,1.5vw,1.25rem);
  line-height:1.45;
  font-weight:600;
  letter-spacing:.01em;
}
.contact-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:164px;
  height:100%;
  padding:24px 26px;
  text-align:center;
}
.contact-card h3{
  margin-bottom:12px;
}
.contact-card p{
  max-width:30rem;
  line-height:1.68;
}
.contact-social-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:0;
  width:100%;
}
.contact-social-row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:100%;
  gap:12px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(241,238,232,.42);
  text-decoration:none;
  color:inherit;
  transition:opacity var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.contact-social-row:hover{
  opacity:.86;
  transform:translateX(1px);
  background:rgba(241,238,232,.62);
}
.contact-map-section{
  padding-top:0;
}
.contact-map-frame{
  position:relative;
  display:grid;
  min-height:420px;
  overflow:hidden;
  border:1px solid rgba(231,228,223,.96);
  border-radius:var(--radius-card);
  box-shadow:0 14px 34px rgba(28,28,28,.05);
  background:#fff;
}
.contact-map-frame iframe{
  display:block;
  width:100%;
  height:420px;
  border:0;
}
.contact-map-placeholder{
  display:grid;
  min-height:420px;
  align-content:center;
  justify-items:center;
  gap:20px;
  padding:36px 32px;
  text-align:center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(249,247,243,.92)),
    radial-gradient(circle at top left, rgba(241,238,232,.46), transparent 48%);
}
.contact-map-placeholder__copy{
  display:grid;
  gap:12px;
  max-width:42rem;
}
.contact-map-placeholder__copy .eyebrow,
.contact-map-placeholder__copy p{
  margin:0;
}
.contact-map-placeholder__title{
  margin:0;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(2rem,2.8vw,2.7rem);
  line-height:.95;
  color:var(--heading);
}
.contact-map-placeholder__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}
.contact-map-placeholder__actions .btn{
  min-width:200px;
}
.contact-form-section{
  padding-top:8px;
}
.contact-form-shell{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  align-items:start;
  max-width:860px;
  margin:0 auto;
  padding:22px 24px 20px;
  border:1px solid rgba(231,228,223,.96);
  border-radius:var(--radius-card);
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,248,244,.92)),
    radial-gradient(circle at top left, rgba(241,238,232,.48), transparent 44%);
  box-shadow:0 18px 48px rgba(28,28,28,.06);
}
.contact-form-intro{
  display:grid;
  gap:10px;
  max-width:42rem;
  margin:0 auto;
  text-align:center;
  justify-items:center;
}
.contact-form-intro h2,
.contact-form-intro p{
  margin:0;
  max-width:none;
}
.contact-form-intro .eyebrow{
  margin-bottom:8px;
}
.contact-form{
  display:grid;
  gap:14px;
  max-width:720px;
  width:100%;
  margin:0 auto;
}
.contact-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 14px;
}
.contact-field{
  display:grid;
  gap:6px;
}
.contact-field label{
  font-size:14px;
  line-height:1.35;
  font-weight:600;
  color:var(--graphite);
}
.contact-field input,
.contact-field textarea{
  width:100%;
  padding:13px 15px;
  border:1px solid rgba(211,205,197,.96);
  border-radius:16px;
  background:rgba(255,255,255,.88);
  color:var(--ink);
  font:inherit;
  line-height:1.55;
  transition:border-color var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.contact-field textarea{
  min-height:124px;
  resize:vertical;
}
.contact-field input:hover,
.contact-field textarea:hover{
  background:rgba(255,255,255,.96);
  border-color:rgba(191,180,166,.88);
}
.contact-field input:focus,
.contact-field textarea:focus{
  outline:none;
  border-color:rgba(184,162,138,.92);
  background:#fff;
  box-shadow:0 0 0 4px rgba(184,162,138,.14);
}
.contact-field input.is-invalid,
.contact-field textarea.is-invalid,
.contact-consent input.is-invalid{
  border-color:rgba(168,92,78,.72);
  box-shadow:0 0 0 4px rgba(168,92,78,.10);
}
.contact-field-error{
  min-height:16px;
  margin:0;
  color:#8d5146;
  font-size:13px;
  line-height:1.4;
}
.contact-field-honeypot{
  position:absolute !important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0;
}
.contact-form-footer{
  display:grid;
  gap:8px;
}
.contact-consent{
  display:flex;
  align-items:flex-start;
  gap:12px;
  font-size:14px;
  line-height:1.55;
  color:var(--graphite);
  cursor:pointer;
}
.contact-consent-optional{
  color:var(--muted);
}
.contact-consent input{
  width:18px;
  height:18px;
  margin-top:2px;
  accent-color:var(--ink);
  flex:0 0 auto;
}
.contact-form-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.contact-submit{
  min-width:170px;
}
.contact-submit:disabled{
  opacity:.72;
  cursor:wait;
  transform:none;
}
.contact-form-status{
  margin:0;
  min-height:22px;
  flex:1 1 260px;
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
}
.contact-form-status[data-state="success"]{
  color:#345846;
}
.contact-form-status[data-state="error"]{
  color:#8d5146;
}
.contact-form-status[data-state="loading"]{
  color:var(--graphite);
}
.contact-form-privacy-note{
  margin:2px 0 0;
  font-size:13px;
  line-height:1.6;
  color:var(--muted);
}
.contact-form-privacy-note a{
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.contact-form-privacy-note a:hover{
  color:var(--graphite);
}
.cookie-consent{
  position:fixed;
  right:clamp(16px,2vw,28px);
  bottom:clamp(16px,2vw,28px);
  z-index:80;
  width:min(560px,calc(100vw - 24px));
  opacity:0;
  transform:translateY(16px);
  transition:opacity var(--motion-base) var(--ease-premium), transform var(--motion-base) var(--ease-premium);
}
.cookie-consent.is-visible{
  opacity:1;
  transform:translateY(0);
}
.cookie-consent.is-hidden{
  opacity:0;
  transform:translateY(12px);
}
.cookie-consent__panel{
  border:1px solid rgba(231,228,223,.92);
  border-radius:28px;
  background:rgba(255,255,255,.96);
  box-shadow:0 22px 64px rgba(28,28,28,.12);
  backdrop-filter:blur(18px);
  padding:20px;
}
.cookie-consent__summary{
  display:grid;
  gap:18px;
}
.cookie-consent__copy h2{
  font-family:"Source Serif 4",serif;
  font-size:clamp(24px,1.8vw,30px);
  line-height:1.06;
  margin-bottom:10px;
}
.cookie-consent__copy p{
  font-size:14px;
  line-height:1.65;
  color:var(--muted);
}
.cookie-consent__eyebrow{
  margin-bottom:10px;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--sage-deep);
}
.cookie-consent__link{
  display:inline-flex;
  margin-top:10px;
  font-size:13px;
  font-weight:500;
  color:var(--graphite);
  text-decoration:underline;
  text-underline-offset:3px;
}
.cookie-consent__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.cookie-consent__button{
  min-height:46px;
}
.cookie-consent__button-secondary{
  background:rgba(255,255,255,.86);
  color:var(--graphite)!important;
  -webkit-text-fill-color:var(--graphite);
  border:1px solid rgba(28,28,28,.1);
  box-shadow:none;
}
.cookie-consent__button-secondary:hover{
  background:rgba(255,255,255,.98);
  color:var(--graphite)!important;
  -webkit-text-fill-color:var(--graphite);
}
.cookie-consent__settings{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(231,228,223,.9);
}
.cookie-consent__categories{
  display:grid;
  gap:12px;
}
.cookie-consent__category{
  display:block;
  padding:14px 16px;
  border:1px solid rgba(231,228,223,.92);
  border-radius:20px;
  background:rgba(248,248,246,.9);
}
.cookie-consent__category-main{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.cookie-consent__category-text{
  display:grid;
  gap:4px;
}
.cookie-consent__category-text strong{
  font-size:15px;
  line-height:1.35;
}
.cookie-consent__category-text small{
  font-size:13px;
  line-height:1.6;
  color:var(--muted);
}
.cookie-consent__category--locked{
  background:rgba(241,238,232,.9);
}
.cookie-consent__toggle-wrap{
  position:relative;
  flex:0 0 auto;
  width:48px;
  height:28px;
}
.cookie-consent__toggle-wrap input{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}
.cookie-consent__toggle{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:rgba(28,28,28,.14);
  transition:background-color var(--motion-fast) ease;
}
.cookie-consent__toggle::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:var(--white);
  box-shadow:0 3px 12px rgba(28,28,28,.18);
  transition:transform var(--motion-fast) ease;
}
.cookie-consent__toggle-wrap input:checked + .cookie-consent__toggle{
  background:var(--graphite);
}
.cookie-consent__toggle-wrap input:checked + .cookie-consent__toggle::after{
  transform:translateX(20px);
}
.cookie-consent__toggle-wrap input:disabled + .cookie-consent__toggle{
  background:var(--sage-deep);
}
.cookie-consent__settings-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:16px;
}
.oci-vady-grid{
  gap:22px;
}
.oci-vady-reveal{
  opacity:1;
}
.ortoptika-intro-reveal{
  opacity:1;
}
.oci-vada-card{
  min-height:278px;
  padding:30px 32px;
  background:rgba(255,255,255,.88);
  transition:transform var(--motion-base) var(--ease-premium), box-shadow var(--motion-base) var(--ease-premium), border-color var(--motion-base) var(--ease-premium), background-color var(--motion-base) var(--ease-premium);
}
.oci-vada-card h3{
  font-size:clamp(28px,2.7vw,36px);
  line-height:1.12;
  margin-bottom:16px;
}
.oci-vada-card p{
  max-width:none;
  line-height:1.78;
}
.oci-vada-card .card-link{
  position:relative;
  display:inline-flex;
  margin-top:24px;
  color:var(--graphite);
  font-size:14px;
  font-weight:600;
  line-height:1.3;
  text-decoration:none;
  border-bottom:1px solid rgba(28,28,28,.22);
  opacity:.84;
  transition:opacity var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium);
}
.oci-vada-card:hover{
  transform:translateY(-4px) scale(1.012);
  box-shadow:0 22px 46px rgba(28,28,28,.10);
  border-color:rgba(203,185,163,.62);
  background:rgba(255,255,255,.96);
}
.oci-vada-card:hover .card-link{
  opacity:1;
  border-color:rgba(28,28,28,.52);
  transform:translateY(-1px);
}
@media (prefers-reduced-motion:no-preference){
  .oci-vady-reveal{
    opacity:0;
    clip-path:inset(0 100% 0 0);
    transform:translateY(8px);
    will-change:opacity,clip-path,transform;
  }
  .oci-vady-reveal.is-visible{
    animation:aboutTextReveal .88s steps(24,end) forwards;
  }
  .ortoptika-intro-reveal{
    opacity:0;
    clip-path:inset(0 100% 0 0);
    transform:translateY(8px);
    will-change:opacity,clip-path,transform;
  }
  .ortoptika-intro-reveal.is-visible{
    animation:aboutTextReveal .88s steps(24,end) forwards;
  }
}
.pricing-sheet{
  max-width:920px;
  margin:0 auto;
  display:grid;
  gap:0;
}
.pricing-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 96px 146px;
  align-items:start;
  gap:20px;
  padding:22px 0;
  border-top:1px solid rgba(231,228,223,.92);
  transition:transform var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.pricing-row:hover{
  transform:var(--lift-xs);
  background:rgba(255,255,255,.44);
}
.pricing-row:last-child{
  border-bottom:1px solid rgba(231,228,223,.92);
}
.pricing-row h3{
  font-size:clamp(24px,2.3vw,30px);
  line-height:1.18;
  margin:0;
}
.pricing-copy{
  display:grid;
  gap:8px;
}
.pricing-copy p{
  margin:0;
  color:var(--muted);
  max-width:34rem;
  font-size:14px;
  line-height:1.5;
  color:rgba(28,28,28,.62);
}
.pricing-row-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  justify-self:start;
  width:auto;
  min-width:132px;
  min-height:36px;
  padding:9px 16px;
  border:1px solid rgba(184,162,138,.4);
  border-radius:999px;
  background:rgba(255,255,255,.9);
  color:var(--graphite);
  font-size:13px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.pricing-row-cta:hover{
  transform:translateY(-2px) scale(1.01);
  box-shadow:0 14px 28px rgba(28,28,28,.09);
  border-color:rgba(184,162,138,.58);
  background:#fff;
}
.pricing-value{
  font-size:18px;
  line-height:1.2;
  color:var(--graphite);
  font-weight:700;
  text-align:right;
  justify-self:start;
  width:96px;
  white-space:nowrap;
  letter-spacing:.02em;
  padding-top:2px;
}
.pricing-note-section{
  padding-top:0;
  padding-bottom:28px;
}
.pricing-note-box{
  max-width:920px;
  margin:0 auto;
  padding:30px 34px;
  display:flex;
  flex-direction:column;
  align-items:center;
  border:1px solid rgba(231,228,223,.96);
  border-radius:var(--radius-card);
  background:linear-gradient(180deg,rgba(241,238,232,.6),rgba(255,255,255,.92));
  box-shadow:0 12px 34px rgba(28,28,28,.04);
  text-align:center;
}
.pricing-note-box p{
  margin-left:auto;
  margin-right:auto;
  max-width:42rem;
  color:var(--muted);
  text-align:center;
}
.pricing-note-box p + p{
  margin-top:12px;
}
.pricing-note-box .pricing-note-cta{
  margin-left:auto;
  margin-right:auto;
}
.pricing-note-cta{
  margin-top:20px;
  background:var(--graphite);
  color:#fff!important;
}
.pricing-note-cta:hover{
  background:#2b2b2b;
}

.visual-split{grid-template-columns:.84fr 1.16fr}
.image-text,
.story-overlay,
.layered-image-section .container{
  display:grid;
  grid-template-columns:minmax(320px,.92fr) minmax(0,1fr);
  gap:54px;
  align-items:center;
}
.compact-story{
  gap:42px;
  align-items:start;
}
.image-block,
.story-media{
  position:relative;
  width:100%;
  max-width:100%;
  aspect-ratio:4/3;
  border-radius:var(--radius-image);
  overflow:hidden;
  line-height:0;
  box-shadow:0 16px 44px rgba(28,28,28,.06);
}
.image-block img,
.story-media img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}
.image-block,
.hero-media,
.page-hero-media,
.story-media,
.parent-image-stack,
.contact-map-frame,
.condition-image-placeholder,
.myopia-brand-placeholder{
  border:1px solid rgba(231,228,223,.9);
}
.detska-optika-section-image{object-position:center top}
.story-media{min-height:auto;grid-column:auto}
.story-copy{
  max-width:35rem;
  padding-top:4px;
}
.story-copy p{margin-top:16px}
.story-copy .btn{margin-top:24px}
.story-copy h2{max-width:13ch}
.story-section + .process-preview{padding-top:84px}
.homepage-story{
  gap:52px;
  align-items:center;
}
.homepage-story .story-copy{
  max-width:34rem;
  padding-top:0;
}
.homepage-story .story-copy h2{
  max-width:12ch;
}
.homepage-story .story-copy p{
  max-width:33rem;
}
.homepage-story .story-media{
  border-radius:36px;
  aspect-ratio:4/3.2;
}
.homepage-story .story-media img{
  object-position:center 24%;
}

.process-preview .container{
  display:grid;
  place-items:center;
}
.process-preview-copy{
  width:min(100%,36rem);
  text-align:center;
}
.process-preview-copy h2{
  max-width:none;
  margin-inline:auto;
}
.process-preview-copy p{
  max-width:32rem;
  margin:0 auto;
}
.process-preview-copy .btn{
  margin-top:22px;
}
.homepage-process{
  padding-top:62px;
  padding-bottom:56px;
}
.homepage-process .process-preview-copy{
  width:min(100%,42rem);
  padding:32px 36px 34px;
  border:1px solid rgba(231,228,223,.9);
  border-radius:var(--radius-panel);
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(241,238,232,.34));
  box-shadow:0 18px 48px rgba(28,28,28,.045);
}
.homepage-process .process-preview-copy p{
  max-width:30rem;
}
.homepage-process .process-preview-copy .btn{
  min-width:168px;
}

.steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:44px;
  border-top:none;
  padding-top:0;
}
.steps > div{
  position:relative;
  display:block;
  min-height:292px;
  padding:34px;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:var(--surface-soft);
  box-shadow:var(--shadow-soft);
  overflow:hidden;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.steps > div:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(241,238,232,.86),transparent 50%,rgba(203,185,163,.10));
  pointer-events:none;
}
.steps > div:hover{
  transform:var(--lift-sm);
  box-shadow:0 18px 44px rgba(28,28,28,.08);
  border-color:rgba(203,185,163,.55);
  background:var(--surface-strong);
}
.steps h3,
.steps p,
.steps span{position:relative}
.steps h3{
  font-size:var(--card-title);
  line-height:1.16;
  margin-bottom:13px;
}
.steps p{max-width:32rem}
.visual-rhythm .text-column{
  padding-top:44px;
}
.homepage-card h3{
  margin-top:2px;
}

.final-cta{padding:60px 0 92px}
.cta-panel{
  padding:54px 44px;
  border-radius:var(--radius-panel);
  background:linear-gradient(135deg,var(--graphite),#2a2a2a 62%,#5b5148);
  color:#fff;
  text-align:center;
  box-shadow:0 20px 56px rgba(28,28,28,.10);
}
.cta-panel h2{
  color:#fff;
  max-width:13ch;
  margin:0 auto 18px;
  font-size:clamp(30px,3.2vw,42px);
  line-height:1.1;
}
.cta-panel .eyebrow,.cta-panel p{color:rgba(255,255,255,.74)}
.cta-panel p{
  max-width:34rem;
  margin:0 auto 22px;
}
.cta-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.cta-button{
  min-height:46px;
  padding:12px 22px;
  font-size:13px;
}
.cta-button-secondary{
  color:rgba(255,255,255,.92)!important;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:none;
}
.cta-button-secondary:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.34);
  color:#fff!important;
}

.page-hero{padding:74px 0 40px}
.page-hero-shell{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(340px,.88fr);
  gap:50px;
  align-items:center;
}
.subpage-split-hero{
  padding:64px 0 34px;
}
.subpage-split-hero .page-hero-shell,
.subpage-split-hero .parent-hero-layout{
  gap:62px;
  align-items:center;
}
.subpage-split-hero .page-hero-copy,
.subpage-split-hero .parent-hero-layout > div:first-child{
  max-width:36rem;
}
.subpage-split-hero .page-hero-copy h1,
.subpage-split-hero .parent-hero-layout h1{
  max-width:12ch;
  margin-bottom:20px;
}
.subpage-split-hero .lead{
  max-width:35rem;
  line-height:1.68;
}
.subpage-split-hero .page-hero-media,
.subpage-split-hero .parent-image-stack{
  min-height:440px;
}
.subpage-split-hero .page-hero-media img,
.subpage-split-hero .parent-image-stack img{
  object-position:center 26%;
}
.parent-hero.subpage-split-hero .parent-image-stack{
  min-height:388px;
}
.parent-hero.subpage-split-hero .parent-image-stack img{
  aspect-ratio:16 / 10;
}
.vysetrenie-hero-section.subpage-split-hero .page-hero-media{
  min-height:388px;
}
.vysetrenie-hero-section.subpage-split-hero .page-hero-media img{
  aspect-ratio:16 / 10;
}
.page-hero-copy{
  position:relative;
  z-index:2;
  max-width:560px;
  margin-right:0;
  padding:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
}
.page-hero-copy h1{
  font-size:var(--page-title);
  line-height:1.1;
  max-width:13ch;
  margin-bottom:20px;
}
.page-hero-copy .lead{max-width:34rem;line-height:1.68}
.legal-hero-intro .page-hero-shell{
  grid-template-columns:minmax(0,1fr);
  justify-items:center;
  gap:24px;
}
.legal-hero-intro .page-hero-copy{
  max-width:52rem;
  text-align:center;
}
.legal-hero-intro .page-hero-copy h1{
  max-width:none;
}
.legal-hero-intro .page-hero-copy .lead{
  max-width:44rem;
  margin-inline:auto;
}
.legal-hero-intro .eyebrow{
  justify-content:center;
}
.hero-intro-steps{
  display:grid;
  gap:14px;
}
.hero-intro-steps p{
  margin:0;
  color:inherit;
}
.hero-intro-steps strong{
  color:var(--graphite);
  font-weight:600;
}
.hero-intro-steps ol{
  margin:0;
  padding-left:1.35em;
  display:grid;
  gap:8px;
}
.hero-intro-steps li{
  color:inherit;
  line-height:1.68;
}
.page-hero-media{
  min-height:408px;
  aspect-ratio:16/10;
}
.page-hero-media img{aspect-ratio:auto;object-position:center 24%}
.about-hero-cta-group{
  display:flex;
  justify-content:flex-start;
  align-items:stretch;
  gap:14px;
  flex-wrap:wrap;
  margin-top:96px;
}
.about-hero-cta{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  min-height:74px;
  min-width:214px;
  padding:14px 20px;
  border:1px solid rgba(184,162,138,.42);
  border-radius:var(--radius-card);
  background:linear-gradient(135deg,rgba(241,238,232,.84),rgba(255,255,255,.96));
  box-shadow:var(--shadow-soft);
  text-decoration:none;
  text-align:left;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.about-hero-cta:hover,
.about-hero-cta:focus-visible{
  transform:translateY(-3px) scale(1.01);
  box-shadow:0 22px 42px rgba(28,28,28,.1);
  border-color:rgba(184,162,138,.62);
  background:#fff;
}
.about-hero-cta-title{
  color:var(--graphite);
  font-size:16px;
  font-weight:700;
  line-height:1.3;
}
.about-hero-cta-meta{
  margin-top:6px;
  color:var(--muted-soft);
  font-size:12px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
}
.onas-collage{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:8px;
  min-height:420px;
  aspect-ratio:1 / 1;
  background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(241,238,232,.2));
}
.onas-collage-item{
  position:relative;
  overflow:hidden;
  aspect-ratio:1 / 1;
  border-radius:calc(var(--radius-image) - 12px);
  background:rgba(241,238,232,.48);
}
.onas-collage-item:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(241,238,232,.04),rgba(203,185,163,.1));
  pointer-events:none;
}
.onas-collage-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:brightness(.995) saturate(.84) contrast(.97) sepia(.03);
  transform-origin:center;
  will-change:transform;
}

.onas-collage-item-1 img{object-position:center 50%}
.onas-collage-item-2 img{object-position:center 52%}
.onas-collage-item-3 img{object-position:center 50%}
.onas-collage-item-4 img{object-position:center 50%}
.about-toggle-row{
  display:flex;
  justify-content:center;
  padding-top:34px;
  margin-top:18px;
  border-top:1px solid rgba(203,185,163,.26);
}
.about-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  min-width:186px;
  padding:14px 30px;
  border:1px solid rgba(184,162,138,.46);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(241,238,232,.84),rgba(255,255,255,.96));
  box-shadow:var(--shadow-soft);
  color:var(--graphite);
  font:inherit;
  font-size:16px;
  font-weight:700;
  line-height:1.2;
  cursor:pointer;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}
.about-toggle:hover{
  transform:translateY(-3px);
  background:#fff;
  border-color:rgba(184,162,138,.62);
  box-shadow:0 22px 42px rgba(28,28,28,.1);
}
.about-story-section{
  padding-top:28px;
  padding-bottom:52px;
}
.about-simple-copy{
  display:grid;
  gap:16px;
  max-width:52rem;
}
.about-simple-copy p{
  margin:0;
  font-size:17px;
  line-height:1.78;
  color:var(--muted);
}
.about-simple-lead{
  font-size:17px;
  line-height:1.78;
  color:var(--muted);
}
@media (prefers-reduced-motion:no-preference){
  .about-story-section .about-simple-copy p{
    opacity:0;
    clip-path:inset(0 100% 0 0);
    transform:translateY(8px);
    will-change:opacity,clip-path,transform;
  }
  .about-story-section.is-visible .about-simple-copy p{
    animation:aboutTextReveal .88s steps(24,end) forwards;
    animation-delay:var(--about-delay, 0ms);
  }
}
@keyframes aboutTextReveal{
  from{
    opacity:0;
    clip-path:inset(0 100% 0 0);
    transform:translateY(8px);
  }
  to{
    opacity:1;
    clip-path:inset(0 0 0 0);
    transform:translateY(0);
  }
}
.page-hero-intro{
  padding:66px 0 8px;
}
.subpage-centered-intro{
  padding:68px 0 14px;
}
.subpage-centered-intro .page-hero-copy{
  max-width:780px;
  margin:0 auto;
  text-align:center;
}
.subpage-centered-intro .eyebrow{
  justify-content:center;
}
.subpage-centered-intro .page-hero-copy h1{
  max-width:14ch;
  margin-inline:auto;
  margin-bottom:24px;
}
.subpage-centered-intro .page-hero-copy .lead{
  max-width:42rem;
  margin:0 auto;
}
.page-hero-intro .page-hero-shell{
  display:block;
}
.page-hero-intro .page-hero-copy{
  max-width:720px;
  margin:0 auto;
  text-align:center;
}
.page-hero-intro .eyebrow{
  justify-content:center;
}
.page-hero-intro .intro-note{
  max-width:30rem;
  margin:0 auto;
  text-align:center;
  font-size:16px;
  line-height:1.75;
  font-weight:400;
  color:var(--muted-soft);
}
.oci-vady-intro{
  padding:82px 0 18px;
}
.oci-vady-intro .page-hero-copy{
  max-width:760px;
  margin:0 auto;
  text-align:center;
}
.oci-vady-intro .eyebrow{
  justify-content:center;
}
.oci-vady-intro .page-hero-copy h1{
  max-width:15ch;
  margin-inline:auto;
  margin-bottom:26px;
}
.oci-vady-intro .page-hero-copy .lead{
  max-width:38rem;
  margin:0 auto;
  text-align:center;
}
.cennik-intro{
  padding:58px 0 8px;
}
.cennik-intro .page-hero-shell{
  display:block;
}
.cennik-intro .page-hero-copy{
  max-width:720px;
  margin:0 auto;
  text-align:center;
}
.cennik-intro .eyebrow{
  justify-content:center;
}
.cennik-intro .page-hero-copy h1{
  max-width:10ch;
  margin-inline:auto;
  margin-bottom:22px;
}
.cennik-intro .page-hero-copy .lead{
  max-width:34rem;
  margin:0 auto;
  text-align:center;
}
.tupozrakost-intro{
  padding:66px 0 20px;
}
.tupozrakost-intro .page-hero-copy{
  max-width:860px;
  margin:0 auto;
  text-align:center;
}
.tupozrakost-intro .page-hero-copy h1{
  max-width:14ch;
  margin-inline:auto;
}
.tupozrakost-intro .page-hero-copy .lead{
  max-width:44rem;
  margin:0 auto;
}
.detail-page-intro{
  padding:66px 0 20px;
}
.detail-page-intro .page-hero-copy{
  max-width:860px;
  margin:0 auto;
  text-align:center;
}
.detail-page-intro .page-hero-copy h1{
  max-width:14ch;
  margin-inline:auto;
}
.detail-page-intro .page-hero-copy .lead{
  max-width:44rem;
  margin:0 auto;
}
.amblyopia-overview{
  align-items:start;
  gap:48px;
}
.condition-overview{
  align-items:start;
  gap:48px;
}
.condition-overview,
.detail-overview{
  gap:52px;
}
.condition-overview .image-block,
.detail-overview .image-block,
.amblyopia-overview .image-block{
  min-height:420px;
  align-self:start;
}
.condition-overview .text-column,
.detail-overview .text-column{
  max-width:39rem;
  gap:14px;
}
.editorial-accordion{
  border:1px solid rgba(231,228,223,.9);
  border-radius:var(--radius-card);
  background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(248,248,246,.72));
  box-shadow:0 14px 36px rgba(28,28,28,.035);
  overflow:hidden;
}
.accordion-stack{
  display:grid;
  gap:16px;
}
.editorial-accordion-summary{
  display:grid;
  gap:8px;
  list-style:none;
  cursor:pointer;
  margin:0;
  padding:24px 34px 22px;
  position:relative;
  transition:background-color var(--motion-fast) var(--ease-premium);
}
.editorial-accordion-summary::-webkit-details-marker{display:none}
.editorial-accordion-summary:after{
  content:"+";
  position:absolute;
  top:50%;
  right:34px;
  transform:translateY(-50%);
  font-family:"Inter",system-ui,sans-serif;
  font-size:26px;
  line-height:1;
  font-weight:300;
  color:var(--sage-deep);
  transition:transform var(--motion-base) var(--ease-premium),color var(--motion-base) var(--ease-premium);
}
.editorial-accordion[open] .editorial-accordion-summary:after{
  content:"−";
  transform:translateY(-50%);
  color:var(--graphite);
}
.editorial-accordion-summary:hover{
  background:rgba(241,238,232,.62);
}
.editorial-accordion-label{
  color:var(--sage-deep);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  line-height:1.2;
}
.editorial-accordion-title{
  max-width:calc(100% - 64px);
  font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(24px,2.2vw,30px);
  line-height:1.18;
  font-weight:600;
  color:var(--graphite);
}
.editorial-accordion-body{
  padding:8px 34px 34px;
  border-top:1px solid rgba(231,228,223,.82);
}
.editorial-accordion-body .editorial-cards{
  margin-top:26px;
}
.editorial-accordion-body .editorial-card p{
  max-width:none;
}
.single-accordion-card{
  grid-template-columns:1fr;
  width:100%;
}
.single-accordion-card .editorial-card{
  min-height:auto;
  padding:28px 32px;
  width:100%;
  max-width:none;
  display:block;
  background:var(--surface-soft);
}
.single-accordion-card .editorial-card > *{
  width:100%;
  max-width:none !important;
}
.single-accordion-card .editorial-card h3{
  margin-bottom:12px;
}
.single-accordion-card .editorial-card p{
  max-width:none !important;
  width:100%;
}
.single-accordion-card .editorial-card .plusoptix-outro{
  margin-top:38px;
  color:#1c1c1c;
  font-weight:500;
}
.single-accordion-card .editorial-card > *:last-child{
  margin-bottom:0;
}
.editorial-accordion-body .section-copy{
  max-width:48rem;
}
.editorial-accordion-body .section-copy p:first-child{
  margin-top:22px;
}
.editorial-accordion-body .condition-symptom-list,
.editorial-accordion-body .condition-treatment-list{
  margin-top:30px;
}
.editorial-accordion-body .condition-treatment-list + .soft-note,
.editorial-accordion-body .condition-symptom-list + .soft-note{
  margin-top:30px;
}
.amblyopia-flow{
  width:min(90%,1180px);
  max-width:1180px;
  margin-inline:auto;
}
.detail-flow{
  width:min(90%,1180px);
  max-width:1180px;
  margin-inline:auto;
}
.amblyopia-image{
  min-height:420px;
}
.amblyopia-image img{
  width:100%;
  height:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}
.condition-image-placeholder{
  display:grid;
  place-items:center;
  min-height:420px;
  border:1px dashed rgba(203,185,163,.72);
  background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(241,238,232,.94));
  color:var(--muted-soft);
  text-align:center;
}
.condition-image-placeholder span{
  max-width:16rem;
  padding:0 24px;
  font-size:15px;
  line-height:1.6;
}
.myopia-image-placeholder{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(241,238,232,.88));
}
.myopia-brand-placeholder{
  min-height:320px;
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(244,240,234,.92));
}
.section-copy{
  max-width:860px;
}
.section-heading-row.single-column-heading{
  margin-bottom:34px;
}
.amblyopia-flow > .section-copy{
  max-width:860px;
}
.detail-flow > .section-copy{
  max-width:860px;
}
.section-copy h2{
  max-width:18ch;
  margin-bottom:22px;
}
.detail-flow .section-copy,
.pricing-sheet,
.pricing-note-box,
.contact-cards,
.checklist-layout,
.signal-list{
  max-width:920px;
}
.section-copy p + p{
  margin-top:14px;
}
.single-column-heading{
  display:block;
  margin-bottom:30px;
}
.single-column-heading .section-copy{
  margin:0;
}
.amblyopia-symptom-cards{
  grid-template-columns:repeat(2,minmax(0,320px));
  justify-content:start;
  gap:18px;
}
.amblyopia-symptom-card{
  min-height:unset;
  padding:24px 24px;
  text-align:center;
}
.amblyopia-symptom-card p{
  max-width:none;
  margin:0 auto;
  line-height:1.68;
}
.amblyopia-symptom-card-last{
  grid-column:1 / -1;
  width:min(320px,100%);
  justify-self:center;
}
.amblyopia-treatment{
  display:grid;
  gap:16px;
}
.amblyopia-treatment-card{
  min-height:unset;
  padding:24px 26px;
}
.amblyopia-treatment-card h3{
  margin-bottom:8px;
}
.amblyopia-treatment-card p{
  max-width:40rem;
}
.condition-symptom-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 22px;
}
.condition-symptom-item,
.condition-treatment-item{
  display:flex;
  align-items:center;
  min-height:86px;
  padding:22px 26px;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:linear-gradient(135deg,rgba(241,238,232,.86),transparent 50%,rgba(203,185,163,.10)), var(--surface-soft);
  box-shadow:var(--shadow-soft);
  color:#1c1c1c;
  font-weight:500;
  line-height:1.65;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.condition-symptom-item,
.condition-symptom-item *,
.condition-treatment-item,
.condition-treatment-item *{
  color:#1c1c1c !important;
  opacity:1 !important;
}
.condition-symptom-item{
  min-height:94px;
}
.condition-symptom-item:hover,
.condition-treatment-item:hover{
  transform:var(--lift-xs);
  box-shadow:0 16px 34px rgba(28,28,28,.07);
  border-color:rgba(203,185,163,.52);
  background:var(--surface-strong);
}
.condition-treatment-list{
  display:grid;
  gap:16px;
}
.myopia-feature-stack{
  display:grid;
  gap:22px;
  margin-top:24px;
}
.myopia-feature{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:28px;
  align-items:center;
  padding:30px;
  border:1px solid var(--border);
  border-radius:32px;
  background:rgba(255,255,255,.78);
}
.myopia-feature-alt{
  grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);
}
.myopia-feature-copy{
  min-width:0;
  max-width:40rem;
}
.myopia-feature > .image-block{
  min-width:0;
  width:100%;
  min-height:340px;
  align-self:stretch;
}
.myopia-feature > .image-block img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.myopia-feature-alt > .image-block img{
  object-position:center;
}
.myopia-feature-copy h3{
  font-size:clamp(24px,2.2vw,30px);
  line-height:1.14;
  margin-bottom:16px;
}
.myopia-feature-copy p{
  max-width:none;
}
.myopia-feature-copy p + p{
  margin-top:14px;
}
.myopia-mini-list{
  display:grid;
  gap:10px;
  margin:18px 0 6px;
}
.myopia-mini-list span{
  display:block;
  padding:16px 18px;
  border:1px solid var(--border);
  border-radius:20px;
  background:rgba(248,248,246,.92);
  line-height:1.6;
  transition:transform var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.myopia-mini-list span:hover{
  transform:var(--lift-xs);
  border-color:rgba(203,185,163,.44);
  background:rgba(255,255,255,.94);
}
.soft-note{
  margin-top:28px;
}
.soft-note p{
  max-width:42rem;
  margin:0;
}
.category-showcase{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.category-tile{
  display:block;
  min-height:380px;
  border-radius:var(--radius-image);
  box-shadow:0 14px 40px rgba(28,28,28,.06);
  text-decoration:none;
  color:inherit;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium);
}
.category-tile:hover{transform:translateY(-4px);box-shadow:0 18px 46px rgba(28,28,28,.08)}
.category-tile h2{
  font-size:clamp(29px,2.9vw,38px);
  line-height:1.08;
  margin-bottom:14px;
}
.category-tile em{
  display:inline-flex;
  margin-top:26px;
  color:rgba(28,28,28,.78);
  font-style:normal;
  font-weight:700;
}
.image-category{
  position:relative;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  padding:0;
  isolation:isolate;
}
.image-category img{
  position:absolute;
  inset:0;
  z-index:-2;
  width:100%;
  height:100%;
  object-fit:cover;
}
.category-content{
  width:100%;
  padding:34px;
}
.refined-category .category-content{
  background:linear-gradient(180deg, rgba(248,248,246,.18) 0%, rgba(248,248,246,.82) 46%, rgba(248,248,246,.96) 100%);
}
.image-category .category-content,
.image-category .category-content p,
.image-category .category-content em,
.image-category .category-content span,
.image-category .category-content h2{color:var(--graphite)}
.image-category .category-content p{max-width:30rem;color:rgba(28,28,28,.72)}
.refined-category img{filter:saturate(.8) brightness(.86)}
.refined-category:hover img{transform:scale(1.015);filter:saturate(.82) brightness(.84)}

.signal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.signal-list p{
  padding:22px;
  border:1px solid var(--border);
  border-radius:24px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 24px rgba(28,28,28,.03);
  line-height:1.62;
  transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background-color var(--motion-fast) var(--ease-premium);
}
.signal-list p:hover{
  transform:var(--lift-xs);
  box-shadow:0 16px 34px rgba(28,28,28,.06);
  border-color:rgba(203,185,163,.48);
  background:rgba(255,255,255,.92);
}
.signals-section{
  overflow:hidden;
}
.signals-shell{
  width:min(100%,1360px);
  margin:0 auto;
  padding-inline:clamp(20px,4vw,40px);
}
.signals-orbit{
  position:relative;
  width:100%;
  max-width:1180px;
  min-height:clamp(490px,65vh,708px);
  margin:0 auto;
  --orbit-radius:300px;
}
.signals-headline{
  position:absolute;
  top:50%;
  left:50%;
  width:min(100%,14ch);
  margin:0;
  text-align:center;
  line-height:1.08;
  transform:translate(-50%, -50%);
  z-index:2;
  pointer-events:none;
}
.signals-items{
  position:absolute;
  inset:0;
}
.signals-item{
  position:absolute;
  top:50%;
  left:50%;
  width:clamp(145px,13vw,195px);
  min-height:90px;
  margin:0;
  padding:18px 20px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#1c1c1c;
  border:1px solid var(--border);
  border-radius:24px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 24px rgba(28,28,28,.03);
  z-index:1;
  opacity:1;
  filter:none;
  transform:translate(calc(-50% + var(--x, 0px)), calc(-50% + var(--y, 0px))) scale(1);
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    border-color .24s ease,
    background-color .24s ease;
}
.signals-item:hover{
  transform:translate(calc(-50% + var(--x, 0px)), calc(-50% + var(--y, 0px))) scale(1.03);
  box-shadow:0 18px 34px rgba(28,28,28,.08);
  border-color:rgba(203,185,163,.48);
  background:rgba(255,255,255,.94);
}
@media (prefers-reduced-motion:no-preference){
  .signals-orbit.is-primed .signals-item{
    opacity:0;
    filter:blur(10px);
    transform:translate(-50%, -50%) scale(.75);
    transition:
      transform .86s cubic-bezier(.22, .61, .36, 1),
      opacity .78s cubic-bezier(.22, .61, .36, 1),
      filter .78s cubic-bezier(.22, .61, .36, 1),
      box-shadow .24s ease,
      border-color .24s ease,
      background-color .24s ease;
    transition-delay:var(--delay, 0ms);
  }
  .signals-orbit.is-visible .signals-item{
    opacity:1;
    filter:none;
    transform:translate(calc(-50% + var(--x, 0px)), calc(-50% + var(--y, 0px))) scale(1);
  }
}
@media (prefers-reduced-motion:reduce){
  .signals-item{
    transition:none;
  }
}
.checklist-layout{display:grid;grid-template-columns:.84fr 1.16fr;gap:64px;align-items:start}
.checklist-layout > div{
  max-width:24rem;
}
ul{list-style:none;display:grid;gap:14px}
li{position:relative;padding-left:30px;color:var(--muted);font-size:17px;line-height:1.78}
li:before{content:"";position:absolute;left:0;top:.75em;width:8px;height:8px;border-radius:50%;background:var(--sage-deep)}
.reassurance{background:rgba(255,255,255,.72)}
.reassurance .narrow{
  max-width:860px;
  text-align:center;
  margin-inline:auto;
}
.reassurance h2{
  max-width:18ch;
  margin-inline:auto;
  text-align:center;
  line-height:1.12;
}
.reassurance p{
  max-width:40rem;
  margin:18px auto 0;
  text-align:center;
}

.parent-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(360px,.88fr);
  gap:48px;
  align-items:center;
}
.parent-hero-layout > div:first-child{
  position:relative;
  z-index:2;
  max-width:590px;
  margin-right:0;
  padding:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
}
.parent-hero .eyebrow{margin-bottom:20px}
.parent-hero-layout > div:first-child h1{
  max-width:12ch;
  margin-bottom:30px;
}
.parent-hero .lead{
  max-width:34rem;
  margin-top:0;
}
.parent-hero .btn{
  margin-top:34px;
}
.parent-image-stack{
  min-height:420px;
  aspect-ratio:16/10;
}
.parent-image-stack img{aspect-ratio:auto}

.parent-hero + .editorial-section{
  padding-top:86px;
}
.parent-hero + .editorial-section h2{
  font-size:clamp(34px,3.25vw,44px);
  line-height:1.1;
  margin-bottom:0;
}
.signals-section{
  padding-top:74px;
  padding-bottom:58px;
}
.signals-section + .layered-image-section{
  padding-top:54px;
  padding-bottom:58px;
}
.signals-section + .layered-image-section .container{
  gap:42px;
}
.layered-image-section + .editorial-section{
  padding-top:54px;
  padding-bottom:58px;
}
.layered-image-section + .editorial-section .checklist-layout{
  gap:48px;
}
.editorial-section.reassurance{
  padding-top:54px;
  padding-bottom:58px;
}

footer{
  padding:72px 0;
  background:linear-gradient(180deg,#1c1c1c 0%, #23211f 100%);
  color:#fff;
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1.35fr) minmax(260px,.8fr);
  gap:42px;
  align-items:start;
}
footer h3{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(33px,2.1vw,42px);line-height:1.08;color:#fff;letter-spacing:0}
footer p{color:rgba(255,255,255,.7)}
footer a{color:rgba(255,255,255,.78);text-decoration:none}
.footer-brand{
  display:inline-flex;
  margin-bottom:18px;
}
.footer-brand img{
  height:clamp(30px,1.55vw,38px);
  filter:brightness(0) invert(1);
}
.footer-brand span{
  color:#fff;
  font-size:clamp(21px,1.08vw,26px);
  padding-left:clamp(10px,.68vw,14px);
}
.footer-brand span:before{
  background:linear-gradient(180deg,transparent,rgba(232,220,203,.74),transparent);
}
.footer-brand-block p + p{
  margin-top:10px;
}
.footer-socials{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
}
.social-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  color:rgba(255,255,255,.76);
  background:rgba(255,255,255,.02);
  transition:color var(--motion-fast) var(--ease-premium),border-color var(--motion-fast) var(--ease-premium),background var(--motion-fast) var(--ease-premium),transform var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}
.social-link svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.social-link:hover{
  color:#fff;
  border-color:rgba(232,220,203,.42);
  background:rgba(255,255,255,.06);
  transform:var(--lift-xs);
}
.footer-heading,
.footer-subtitle{
  color:#fff;
  font-size:clamp(12px,.58vw,14px);
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-heading{margin-bottom:18px}
.footer-subtitle{margin-bottom:14px}
.footer-menu-columns{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:30px;
}
.footer-menu-group{
  display:grid;
  gap:10px;
  align-content:start;
}
.footer-menu-group a{
  font-size:clamp(15px,.8vw,17px);
  line-height:1.55;
  transition:color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}
.footer-legal-inline{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 12px;
}
.footer-legal-settings{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  font:inherit;
  font-size:clamp(15px,.8vw,17px);
  line-height:1.55;
  color:rgba(255,255,255,.78);
  cursor:pointer;
  text-align:left;
  transition:color var(--motion-fast) var(--ease-premium),opacity var(--motion-fast) var(--ease-premium);
}
.footer-legal-settings:hover,
.footer-legal-settings:focus-visible{
  color:#fff;
  opacity:1;
}
.footer-menu-group a:hover,
.footer-brand-block a:hover{
  color:#fff;
  opacity:1;
}
.footer-cta-block{
  display:grid;
  gap:16px;
  align-content:start;
}
.footer-cta-block p{
  max-width:20rem;
}
.footer-cta{
  justify-self:start;
  min-height:46px;
  padding:12px 20px;
}
.footer-bottom{
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.1);
}
.footer-bottom p{
  margin:0;
  color:rgba(255,255,255,.56);
  font-size:13px;
  line-height:1.5;
  text-align:center;
}

.contact-cards{
  gap:20px;
}
.contact-card{
  min-height:148px;
}
.contact-map-section{
  padding-top:18px;
}
.pricing-note-section{
  padding-top:22px;
}

.oci-vady-intro + .editorial-section{
  padding-top:82px;
}
.oci-vady-grid{
  max-width:1180px;
  margin-inline:auto;
}
.oci-vady-grid .oci-vada-card{
  min-height:278px;
}

.contact-social-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:rgba(241,238,232,.9);
  color:var(--graphite);
  flex:0 0 auto;
}
.contact-social-icon svg{
  width:20px;
  height:20px;
  fill:currentColor;
}
.contact-social-copy{
  display:grid;
  gap:4px;
  min-width:0;
}
.contact-social-copy strong{
  font-size:16px;
  line-height:1.3;
  color:var(--graphite);
}
.contact-social-copy span{
  font-size:15px;
  line-height:1.45;
  color:var(--muted-soft);
  overflow-wrap:anywhere;
}

@media(max-width:1200px){
  .container{width:min(92%,1180px)}
  .site-header .container{width:min(95%,1380px)}
  .header-inner{gap:18px}
  .site-nav{gap:3px;max-width:calc(100% - 360px)}
  .site-nav a{font-size:13px;padding:8px 8px}
  .hero-layout{min-height:500px}
  .hero-copy{max-width:470px;margin-left:34px;padding:56px 0 62px}
  .hero-media{min-height:500px}
  .split-section{gap:54px}
  .section-heading-row{gap:24px}
  .editorial-cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-cards.two{grid-template-columns:1fr}
  .legal-prose{padding:34px 24px}
  .footer-legal-inline{gap:6px 10px}
  .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;max-width:980px}
  .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px}
  .contact-card-social{
    grid-column:1 / -1;
  }
  .contact-form-shell{grid-template-columns:1fr;gap:18px;padding:22px}
  .contact-form-intro{max-width:none}
  .signal-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .signals-orbit{
    max-width:1080px;
    min-height:578px;
  }
  .signals-item{
    width:clamp(140px,14vw,175px);
    min-height:84px;
  }
  .category-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-sheet{max-width:860px}
  .homepage-intro .split-section{gap:72px}
  .subpage-split-hero .page-hero-shell,
  .subpage-split-hero .parent-hero-layout{
    gap:48px;
  }
}

@media(max-width:1240px){
  .header-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:12px;
    padding:10px 0;
  }
  .site-nav{display:none}
  .lang-switcher{
    display:flex;
    justify-self:end;
    margin-left:0;
    padding:3px;
    gap:4px;
  }
  .lang-switcher .lang-link{
    min-width:38px;
    min-height:32px;
    padding:0 10px;
    font-size:11px;
  }
  .mobile-menu{display:block;position:relative;justify-self:end;width:auto}
  .brand{justify-content:flex-start;justify-self:start;max-width:100%;min-width:0}
  .brand img{height:45px}
  .brand span{font-size:22px}
  .mobile-lang-switcher{
    display:none;
  }
}

@media(max-width:640px){
  .header-inner{
    gap:10px;
  }
  .brand img{height:40px}
  .brand span{font-size:20px}
  .lang-switcher{
    padding:2px;
    gap:2px;
  }
  .lang-switcher .lang-link{
    min-width:34px;
    min-height:30px;
    padding:0 8px;
    font-size:10px;
  }
}

@media(max-width:992px){

  .hero-layout,
  .page-hero-shell,
  .parent-hero-layout,
  .story-overlay,
  .layered-image-section .container,
  .split-section,
  .image-text,
  .checklist-layout{
    grid-template-columns:1fr;
    gap:36px;
  }
  .hero-copy,
  .page-hero-copy,
  .parent-hero-layout > div:first-child{
    margin-right:0;
    max-width:none;
  }
  .hero-layout{
    display:grid;
    grid-template-columns:1fr;
    gap:28px;
    min-height:auto;
    overflow:visible;
  }
  .home-hero .hero-layout{
    display:block;
    min-height:clamp(520px,62vw,640px);
    overflow:hidden;
  }
  .hero-copy{
    padding:0;
    margin-left:0;
  }
  .home-hero .hero-copy{
    position:relative;
    z-index:2;
    max-width:min(100%,460px);
    top:auto;
    left:auto;
    padding:92px 28px 36px;
  }
  .hero-layout .hero-media{
    position:relative;
    inset:auto;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    border-radius:var(--radius-card);
    box-shadow:0 16px 40px rgba(28,28,28,.06);
  }
  .hero-layout .hero-media:before{display:none}
  .home-hero .hero-layout .hero-media{
    position:absolute;
    inset:-24px 0 0 0;
    min-height:calc(100% + 24px);
    border-radius:30px;
    box-shadow:0 18px 42px rgba(28,28,28,.08);
  }
  .home-hero .hero-layout .hero-media:before{
    display:block;
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg, rgba(248,248,246,.92) 0%, rgba(248,248,246,.84) 20%, rgba(248,248,246,.56) 40%, rgba(248,248,246,.18) 62%, rgba(248,248,246,.02) 82%);
    pointer-events:none;
  }
  .hero-media,
  .page-hero-media,
  .story-media,
  .parent-image-stack{min-height:auto}
  .page-hero-media,
  .story-media,
  .parent-image-stack{aspect-ratio:16/11}
  .hero-media img,
  .page-hero-media img,
  .story-media img,
  .parent-image-stack img{aspect-ratio:16/11}
  .home-hero .hero-media img{aspect-ratio:16/10}
  .home-hero .hero-layout .hero-media img{
    height:100%;
    aspect-ratio:auto;
    object-position:79% 32%;
  }
  .home-hero .eye-scan-beam{
    height:34px;
    width:4px;
  }
  .editorial-cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-cards.two{grid-template-columns:1fr}
  .signal-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:1fr}
  .visual-rhythm .text-column,
  .story-copy{padding-top:0}
  .compact-section{padding:68px 0}
  .story-section + .process-preview{padding-top:72px}
  .homepage-care .homepage-card:nth-child(2){transform:none}
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(1),
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(2),
  .homepage-care-grid.is-reveal-ready .homepage-card:nth-child(3){
    transform:translateY(-20px) scale(.96);
  }
  .homepage-care-grid.is-reveal-ready.is-revealed .homepage-card:nth-child(1),
  .homepage-care-grid.is-reveal-ready.is-revealed .homepage-card:nth-child(2),
  .homepage-care-grid.is-reveal-ready.is-revealed .homepage-card:nth-child(3){
    transform:translateY(0) scale(1);
  }
  .homepage-process .process-preview-copy{
    width:min(100%,38rem);
    padding:34px 32px 36px;
  }
  .subpage-split-hero{
    padding:52px 0 30px;
  }
  .subpage-split-hero .page-hero-shell,
  .subpage-split-hero .parent-hero-layout{
    gap:34px;
  }
  .subpage-split-hero .page-hero-copy,
  .subpage-split-hero .parent-hero-layout > div:first-child{
    max-width:none;
  }
  .subpage-split-hero .page-hero-media,
  .subpage-split-hero .parent-image-stack{
    min-height:auto;
  }
  .subpage-centered-intro{
    padding:52px 0 10px;
  }
  .condition-overview,
  .detail-overview{
    gap:32px;
  }
  .checklist-layout{
    gap:34px;
  }
  .checklist-layout > div{
    max-width:none;
  }
  .section-heading-row{display:grid}
  .mobile-menu summary{
    list-style:none;
    cursor:pointer;
    width:auto;
    min-width:96px;
    padding:10px 18px;
    border:1px solid var(--border);
    border-radius:999px;
    background:rgba(255,255,255,.78);
    color:var(--graphite);
    text-align:center;
    font-weight:700;
  }
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu-panel{
    position:absolute;
    top:calc(100% + 10px);
    left:auto;
    right:0;
    z-index:30;
    display:grid;
    gap:8px;
    padding:10px;
    border:1px solid var(--border);
    border-radius:24px;
    background:rgba(255,255,255,.92);
    box-shadow:var(--shadow-soft);
    backdrop-filter:blur(18px);
    width:min(360px,calc(100vw - 32px));
    max-height:min(72vh,560px);
    overflow:auto;
  }
  .mobile-menu-panel a{
    padding:12px 14px;
    border-radius:16px;
    color:var(--muted);
    text-decoration:none;
    text-align:center;
    font-weight:600;
  }
  .mobile-menu-panel a:hover{background:rgba(203,185,163,.24);color:var(--graphite)}
  .editorial-hero{min-height:auto;padding:52px 0 56px}
  .subpage-back-wrap{padding:16px 0 0}
  .subpage-back-stack{gap:6px}
  .home-hero.editorial-hero{padding:36px 0 48px}
  .homepage-intro{
    padding-top:76px;
    padding-bottom:78px;
  }
  .homepage-intro .split-section{
    gap:34px;
  }
  .homepage-trust-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .homepage-intro .split-section:before{
    top:-14px;
  }
  .homepage-intro .text-column{
    padding-top:0;
    max-width:none;
  }
  .homepage-care{
    padding-top:54px;
    padding-bottom:58px;
  }
  .homepage-care-heading{
    display:grid;
    grid-template-columns:1fr;
    align-items:start;
    gap:18px;
  }
  .homepage-care-heading .text-link{
    margin-left:0;
    justify-self:start;
  }
  .homepage-process{
    padding-top:74px;
    padding-bottom:60px;
  }
  .detail-flow .section-copy,
  .pricing-sheet,
  .pricing-note-box,
  .contact-cards,
  .checklist-layout,
  .signal-list{
    max-width:none;
  }
  .editorial-accordion-summary{
    padding:26px 28px;
  }
  .editorial-accordion-summary:after{
    right:28px;
  }
  .editorial-accordion-body{
    padding:0 28px 28px;
  }
  .accordion-stack{
    gap:16px;
  }
  .page-hero{padding:52px 0 30px}
  .editorial-section{padding:72px 0}
  .final-cta{padding:52px 0 80px}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid > *{min-width:0}
  .footer-menu-columns{grid-template-columns:1fr 1fr}
  .footer-bottom{margin-top:28px}
  .pricing-row{grid-template-columns:minmax(0,1fr) auto}
  .pricing-note-box{max-width:860px;padding:30px 28px}
}

@media(max-width:768px){
  .signals-shell{
    padding-inline:18px;
  }
  .signals-orbit{
    min-height:auto;
    max-width:680px;
    display:grid;
    gap:28px;
  }
  .signals-headline{
    position:relative;
    top:auto;
    left:auto;
    width:min(100%,16ch);
    margin:0 auto;
    transform:none;
  }
  .signals-items{
    position:relative;
    inset:auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .signals-item{
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    min-height:auto;
    padding:20px;
    transform:none !important;
    opacity:1 !important;
    filter:none !important;
    text-align:left;
    justify-content:flex-start;
  }
}

@media(max-width:480px){
  .signals-items{
    grid-template-columns:1fr;
  }
}

@media(max-width:768px){
  .site-header{border-bottom-color:rgba(231,228,223,.72)}
  body.is-scrolled .site-header{backdrop-filter:blur(20px) saturate(132%)}
  .header-inner{padding:6px 0;gap:8px}
  body.is-scrolled .header-inner{padding:5px 0;gap:8px}
  .brand img{height:37px}
  body.is-scrolled .brand img{height:35px}
  .brand span{font-size:18px;padding-left:8px;min-height:18px}
  .brand span:before{height:15px}
  .mobile-menu summary{min-width:84px;padding:8px 14px;font-size:12px}
  :root{
    --section-space:74px;
    --section-space-compact:62px;
    --hero-title:clamp(34px,10vw,46px);
    --page-title:clamp(32px,8.5vw,40px);
    --section-title:clamp(28px,7vw,34px);
    --card-title:clamp(22px,5.8vw,26px);
    --body-copy:16px;
    --lead-copy:17px;
  }
  .container{width:min(92%,1180px)}
  .hero-copy,
  .page-hero-copy,
  .parent-hero-layout > div:first-child,
  .cta-panel{padding:0}
  .hero-layout{gap:22px}
  .home-hero .hero-layout{
    display:block;
    min-height:clamp(540px,76svh,680px);
    overflow:hidden;
  }
  .home-hero .hero-copy{
    position:relative;
    z-index:2;
    max-width:min(100%,360px);
    margin-left:0;
    top:auto;
    left:auto;
    padding:clamp(160px,27svh,220px) 24px 26px;
  }
  .home-hero .eyebrow{color:rgba(141,113,89,.94)}
  .hero-layout .hero-media{
    right:auto;
    left:auto;
    top:auto;
    bottom:auto;
  }
  .home-hero .hero-layout .hero-media{
    position:absolute;
    inset:-18px 0 0 0;
    min-height:calc(100% + 18px);
    border-radius:30px;
    box-shadow:0 18px 42px rgba(28,28,28,.08);
  }
  .home-hero .hero-layout .hero-media:before{
    display:block;
    background:linear-gradient(180deg, rgba(248,248,246,.08) 0%, rgba(248,248,246,.12) 16%, rgba(248,248,246,.24) 36%, rgba(248,248,246,.66) 62%, rgba(248,248,246,.93) 100%);
  }
  .home-hero .hero-media img{
    height:100%;
    aspect-ratio:auto;
    object-position:82% 28%;
    filter:brightness(.92) saturate(.76) contrast(.95);
  }
  .home-hero .eye-scan-beam{
    height:28px;
    width:3px;
  }
  .hero-copy h1,
  .page-hero-copy h1{margin-bottom:20px}
  .hero-actions{gap:12px;margin-top:26px}
  .hero-actions .btn{width:100%}
  .home-hero .hero-actions{margin-top:22px}
  .split-section,
  .image-text,
  .story-overlay,
  .layered-image-section .container,
  .checklist-layout,
  .parent-hero-layout{gap:28px}
  .text-column{gap:14px}
  .section-heading-row{margin-bottom:28px}
  .editorial-cards.three,
  .category-showcase,
  .signal-list{grid-template-columns:1fr}
  .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .editorial-card,
  .steps > div,
  .oci-vada-card{min-height:auto;padding:28px}
  .category-tile{min-height:320px}
  .category-content{padding:26px}
  .story-copy .btn,
  .btn,
  .cta-button{width:100%}
  .cta-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }
  .btn{text-align:center}
  .pricing-sheet{max-width:none}
  .pricing-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:18px 0;
  }
  .pricing-value{text-align:left}
  .pricing-row-cta{
    justify-self:start;
    min-height:38px;
    padding:9px 14px;
  }
  .pricing-note-section{padding-bottom:18px}
  .pricing-note-box{padding:28px 24px}
  .homepage-story .story-media{
    border-radius:30px;
  }
  .homepage-process .process-preview-copy{
    padding:30px 24px 32px;
    border-radius:28px;
  }
  .footer-menu-columns{grid-template-columns:1fr}
  .footer-bottom{
    margin-top:24px;
    padding-top:16px;
  }
  .footer-socials{gap:8px}
  .social-link{
    width:36px;
    height:36px;
  }
  .contact-social-icon{
    width:38px;
    height:38px;
  }
  .reassurance .narrow,
  .page-hero-copy,
  .page-hero-intro .page-hero-copy,
  .oci-vady-intro .page-hero-copy,
  .cennik-intro .page-hero-copy{max-width:none}
  .about-hero-cta-group{
    justify-content:stretch;
  }
  .about-hero-cta{
    flex:1 1 100%;
    min-width:0;
  }
  .page-hero-intro,
  .cennik-intro,
  .oci-vady-intro{padding-top:46px}
  .tupozrakost-intro{padding-top:46px}
  .detail-page-intro{padding-top:46px}
  .subpage-centered-intro{
    padding-top:46px;
  }
  .amblyopia-image{min-height:320px}
  .amblyopia-image{aspect-ratio:4/3}
  .amblyopia-overview,
  .condition-overview,
  .detail-overview{gap:32px}
  .onas-collage{
    gap:8px;
    padding:8px;
    aspect-ratio:1 / 1;
  }
  .amblyopia-symptom-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .amblyopia-symptom-card-last{width:100%}
  .condition-symptom-list{grid-template-columns:1fr}
  .myopia-feature,
  .myopia-feature-alt{grid-template-columns:1fr}
  .myopia-feature > .image-block{
    min-height:300px;
  }
  .myopia-brand-placeholder{min-height:280px}
  .cta-panel{
    padding:34px 26px;
    border-radius:28px;
  }
  .cta-panel h2{max-width:14ch}
}

@media(max-width:768px){
  .contact-hours-note{
    margin-bottom:24px;
    max-width:32rem;
  }
  .contact-hours-note .eyebrow{
    margin-bottom:8px;
  }
  .contact-hours-note p:last-child{
    font-size:16px;
    line-height:1.4;
  }
  .contact-cards{
    gap:14px;
  }
  .contact-card{
    min-height:auto;
    padding:22px 20px;
  }
  .contact-card p{
    max-width:none;
    font-size:15px;
    line-height:1.6;
    overflow-wrap:anywhere;
  }
  .contact-social-row{
    padding:11px 13px;
  }
  .contact-form-grid{grid-template-columns:1fr}
  .contact-form-shell{padding:20px 18px;gap:16px}
  .contact-form-actions{align-items:flex-start}
  .contact-form-status{flex-basis:100%}
  .cookie-consent{
    left:12px;
    right:12px;
    width:auto;
    bottom:12px;
  }
  .cookie-consent__panel{
    max-height:calc(100svh - 24px);
    overflow-y:auto;
    padding:16px;
    border-radius:24px;
  }
  .cookie-consent__copy h2{
    font-size:clamp(22px,5.6vw,26px);
    margin-bottom:8px;
  }
  .cookie-consent__copy p{
    font-size:13px;
    line-height:1.55;
  }
  .cookie-consent__eyebrow{
    margin-bottom:8px;
  }
  .cookie-consent__link{
    margin-top:8px;
    font-size:12px;
  }
  .cookie-consent__actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .cookie-consent__button{
    width:100%;
    min-height:44px;
    padding:12px 16px;
    font-size:14px;
    white-space:nowrap;
  }
  .cookie-consent__actions [data-cookie-action="accept"]{
    grid-column:1 / -1;
  }
  .cookie-consent__category-main{
    gap:12px;
  }
}

@media(max-width:480px){
  .container{width:min(94%,1180px)}
  .header-inner{gap:6px;padding:5px 0}
  body.is-scrolled .header-inner{padding:4px 0;gap:6px}
  .brand img{height:35px}
  body.is-scrolled .brand img{height:33px}
  .brand span{font-size:16px;padding-left:6px;min-height:16px}
  .brand span:before{height:14px}
  .mobile-menu summary{min-width:76px;padding:7px 12px;font-size:11px}
  .mobile-menu-panel{top:calc(100% + 8px);padding:8px;border-radius:20px;width:min(320px,calc(100vw - 20px))}
  .mobile-menu-panel a{padding:9px 11px;border-radius:14px;font-size:13px}
  .editorial-hero{padding:42px 0 48px}
  .subpage-back{font-size:13px}
  .home-hero.editorial-hero{padding:28px 0 42px}
  .homepage-intro{
    padding-top:62px;
    padding-bottom:64px;
  }
  .trust-chip{
    min-height:58px;
    padding:14px 18px;
    font-size:13px;
  }
  .homepage-care{
    padding-top:42px;
    padding-bottom:46px;
  }
  .homepage-care .section-heading-row{
    margin-bottom:28px;
  }
  .homepage-process{
    padding-top:62px;
    padding-bottom:52px;
  }
  .subpage-split-hero{
    padding:42px 0 24px;
  }
  .subpage-centered-intro{
    padding:42px 0 8px;
  }
  .about-story-section{
    padding-top:20px;
    padding-bottom:42px;
  }
  .about-toggle-row{
    padding-top:24px;
    margin-top:14px;
  }
  .about-simple-copy{
    gap:16px;
  }
  .about-simple-lead{
    font-size:18px;
  }
  .about-toggle{
    min-height:48px;
    min-width:172px;
    padding:13px 26px;
    font-size:15px;
  }
  .about-hero-cta-group{
    margin-top:68px;
    gap:12px;
  }
  .about-hero-cta{
    min-width:204px;
    min-height:72px;
    padding:14px 18px;
  }
  .about-hero-cta-title{
    font-size:15px;
  }
  .about-hero-cta-meta{
    margin-top:5px;
    font-size:11px;
  }
  .page-hero{padding:42px 0 24px}
  .editorial-section{padding:62px 0}
  .compact-section{padding:56px 0 60px}
  .final-cta{padding:42px 0 68px}
  .hero-layout{gap:18px}
  .contact-cards{grid-template-columns:1fr !important}
  .contact-hours-note{
    margin-bottom:20px;
  }
  .home-hero .hero-layout{
    min-height:clamp(500px,72svh,620px);
    gap:0;
  }
  .home-hero .hero-copy{
    max-width:min(100%,320px);
    padding:clamp(150px,26svh,200px) 20px 22px;
  }
  .home-hero .hero-layout .hero-media{border-radius:26px}
  .hero-copy h1,
  .page-hero-copy h1{margin-bottom:18px}
  .hero-actions{margin-top:22px}
  .contact-form-grid{grid-template-columns:1fr;gap:14px}
  .contact-form-shell{padding:18px 16px;border-radius:24px;gap:14px}
  .contact-form{gap:14px}
  .contact-field input,
  .contact-field textarea{padding:13px 14px;border-radius:16px}
  .contact-form-actions{align-items:flex-start}
  .contact-submit{width:100%}
  .contact-form-status{flex-basis:100%}
  .cookie-consent__summary,
  .cookie-consent__categories{
    gap:9px;
  }
  .cookie-consent__category{
    padding:12px 13px;
    border-radius:18px;
  }
  .cookie-consent__category-main{
    flex-direction:column;
    align-items:flex-start;
  }
  .cookie-consent__toggle-wrap{
    width:46px;
    height:27px;
  }
  .cookie-consent__actions{
    grid-template-columns:1fr;
  }
  .cookie-consent__actions [data-cookie-action="accept"]{
    grid-column:auto;
  }
  .cookie-consent__settings-actions{
    margin-top:12px;
  }
  .cookie-consent__settings-actions .cookie-consent__button{
    width:100%;
  }
  .editorial-card,
  .steps > div,
  .oci-vada-card,
  .signal-list p{padding:22px}
  .contact-card{
    align-items:flex-start;
    text-align:left;
    padding:18px 16px;
    border-radius:22px;
  }
  .contact-card h3{
    margin-bottom:8px;
    width:100%;
  }
  .contact-card p{
    width:100%;
    font-size:14px;
    line-height:1.55;
  }
  .contact-social-list{
    grid-template-columns:1fr;
    width:100%;
    gap:10px;
  }
  .contact-social-row{
    width:100%;
    justify-content:flex-start;
    padding:10px 12px;
    border-radius:16px;
    gap:10px;
  }
  .contact-social-copy{
    text-align:left;
  }
  .category-content{padding:22px}
  .category-tile{min-height:280px}
  .dropdown-content{max-width:min(86vw,320px)}
  .cta-panel{padding:28px 22px;border-radius:24px}
  .cta-button{min-height:44px}
  .pricing-row h3{font-size:22px}
  .pricing-value{font-size:17px}
  .pricing-row-cta{font-size:12px}
  .editorial-accordion-summary{
    padding:22px 22px 20px;
  }
  .editorial-accordion-summary:after{
    right:22px;
  }
  .editorial-accordion-title{
    max-width:calc(100% - 40px);
  }
  .editorial-accordion-body{
    padding:0 22px 22px;
  }
  .accordion-stack{
    gap:14px;
  }
  .amblyopia-image{min-height:260px}
  .amblyopia-image{aspect-ratio:4/3}
  .condition-image-placeholder{min-height:260px}
  .onas-collage{
    gap:6px;
    padding:6px;
  }
  .amblyopia-symptom-cards{grid-template-columns:1fr}
  .condition-symptom-item,
  .condition-treatment-item{padding:22px 20px}
  .amblyopia-symptom-card,
  .amblyopia-treatment-card{padding:22px 20px}
  .amblyopia-treatment-card{padding:22px 20px}
  .contact-map-frame{border-radius:24px}
  .contact-map-placeholder{
    min-height:380px;
    padding:28px 20px;
  }
  .contact-map-placeholder__actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }
  .contact-map-placeholder__actions .btn{
    width:100%;
    min-width:0;
  }
  .pricing-note-box{padding:24px 20px;border-radius:24px}
  .homepage-process .process-preview-copy{
    padding:28px 20px 30px;
    border-radius:24px;
  }
  .footer-cta{width:100%;justify-self:stretch}
  .footer-bottom p{font-size:12px}
  li{font-size:16px;line-height:1.7}
}
