/* base styles */
/* ==========================================================================
   PRESELL - DARK + MARQUEE  |  Men Over 50 - Morning Ritual Angle
   Palette: Dark Brown #1a1410 + Copper #c47a3d
   Type: Cormorant Garamond (display) + Karla (body / utility)
   --------------------------------------------------------------------------
   INDEX
   01. Design tokens
   02. Reset & base
   03. Layout helpers
   04. Hero
   05. Video card + play button
   06. Buttons (CTA)
   07. Marquee frieze
   08. Content area - typography
   09. Bullet cards
   10. Micro-timeline
   11. "Did you know?" two-tone card
   12. Final CTA band
   13. Footer + disclaimers
   14. Modals
   15. Responsive
   16. Accessibility / reduced motion
   ========================================================================== */


/* 01. DESIGN TOKENS ======================================================= */
:root{
  /* Color */
  --ink:            #1a1410;   /* base dark  */
  --ink-2:          #241b14;   /* elevated dark */
  --ink-3:          #100c09;   /* deepest / footer */
  --copper:         #c47a3d;   /* accent */
  --copper-soft:    #e0a06a;   /* accent light */
  --copper-ghost:   rgba(196,122,61,.14);
  --paper:          #f7f3ec;   /* light content bg */
  --paper-2:        #efe7d9;   /* tonal band */
  --line:           #ddd2c1;   /* hairline on light */
  --line-dark:      rgba(224,160,106,.22);
  --text:           #2a231d;   /* body on light */
  --text-soft:      #6b5f54;   /* muted on light */
  --text-invert:    #f3ece2;   /* body on dark */
  --text-invert-soft:#b9a893;

  /* Type */
  --font-display: "Cormorant Garamond", "Iowan Old Style", Georgia, serif;
  --font-body:    "Karla", "Helvetica Neue", Arial, sans-serif;

  /* Rhythm - "confortavel": section padding 60px / gap 40px */
  --pad-section: 60px;
  --gap:         40px;
  --wrap:        1040px;
  --measure:     720px;

  /* Shape */
  --r-sm: 6px;
  --r-md: 12px;
  --r-lg: 18px;
  --shadow: 0 18px 44px rgba(26,20,16,.14);
  --shadow-hi: 0 24px 60px rgba(26,20,16,.26);
}


/* 02. RESET & BASE ======================================================== */
*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0;
  background:var(--paper);
  color:var(--text);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{ max-width:100%; display:block; height:auto; }

a{ color:inherit; }

p{ margin:0 0 1.1em; }

h1,h2,h3{ margin:0; font-weight:400; }


/* 03. LAYOUT HELPERS ====================================================== */
.wrap{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:22px;
}

.wrap--narrow{ max-width:var(--measure); }

.section{ padding-block:var(--pad-section); }

.eyebrow{
  font-family:var(--font-body);
  font-size:11px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--copper);
  margin:0 0 18px;
}

.rule-double{
  border:0;
  height:4px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:transparent;
  margin:0;
}


/* 04. HERO ================================================================ */
.hero{
  position:relative;
  background:var(--ink);
  color:var(--text-invert);
  padding-block:56px 52px;
  overflow:hidden;
  isolation:isolate;
}

/* Radial halo behind the headline (hero gradient treatment) */
.hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-30%;
  left:50%;
  transform:translateX(-50%);
  width:min(1100px,140%);
  aspect-ratio:1/1;
  background:radial-gradient(circle at 50% 42%,
              rgba(196,122,61,.30) 0%,
              rgba(196,122,61,.10) 34%,
              rgba(196,122,61,0) 62%);
  pointer-events:none;
}

.hero__inner{ text-align:center; }

.hero__title{
  font-family:var(--font-display);
  font-weight:300;
  font-size:clamp(34px,6.2vw,60px);
  line-height:1.06;
  letter-spacing:-.01em;
  max-width:16ch;
  margin-inline:auto;
  text-wrap:balance;
}

.hero__title em{
  font-style:italic;
  color:var(--copper-soft);
}

.hero__sub{
  margin:22px auto 0;
  max-width:60ch;
  color:var(--text-invert-soft);
  font-size:16.5px;
  line-height:1.72;
}

.hero__meta{
  margin-top:26px;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--text-invert-soft);
}


/* 05. VIDEO CARD + PLAY BUTTON =========================================== */
.video{
  position:relative;
  display:block;
  width:min(392px,100%);
  margin:34px auto 0;
  border-radius:var(--r-lg);
  overflow:hidden;
  background:var(--ink-2);
  box-shadow:var(--shadow-hi);
  border:1px solid var(--line-dark);
  transition:transform .35s cubic-bezier(.2,.7,.3,1), box-shadow .35s ease;
}

.video:hover,
.video:focus-visible{ transform:translateY(-4px); }

.video__img{
  width:100%;
  aspect-ratio:764/1024;
  object-fit:cover;
}

.video__veil{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,
              rgba(16,12,9,.10) 0%,
              rgba(16,12,9,0) 34%,
              rgba(16,12,9,.55) 100%);
  pointer-events:none;
}

/* Positioned over the upper third so the product stays visible */
.video__play{
  position:absolute;
  top:33%; left:50%;
  transform:translate(-50%,-50%);
  width:78px; height:78px;
  border-radius:50%;
  background:var(--copper);
  display:grid;
  place-items:center;
  box-shadow:0 10px 30px rgba(16,12,9,.45);
}

.video__play svg{
  width:24px; height:24px;
  margin-left:4px;
  fill:var(--ink);
}

/* Pulsing ring */
.video__play::after{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:50%;
  border:2px solid rgba(224,160,106,.7);
  animation:pulse 2.4s ease-out infinite;
}

@keyframes pulse{
  0%   { transform:scale(.86); opacity:.9; }
  70%  { transform:scale(1.28); opacity:0; }
  100% { transform:scale(1.28); opacity:0; }
}

.video__label{
  position:absolute;
  left:0; right:0; bottom:14px;
  text-align:center;
  font-size:10.5px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#f0e5d6;
}


/* 06. BUTTONS (CTA) ======================================================= */
.btn{
  display:inline-block;
  font-family:var(--font-body);
  font-size:14px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-decoration:none;
  padding:18px 40px;
  border-radius:999px;
  background:var(--copper);
  color:#150f0a;
  border:1px solid var(--copper);
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
  box-shadow:0 10px 26px rgba(196,122,61,.28);
}

.btn:hover,
.btn:focus-visible{
  background:var(--copper-soft);
  border-color:var(--copper-soft);
  transform:translateY(-2px);
}

.btn--ghost{
  background:transparent;
  color:var(--copper);
  box-shadow:none;
}

.btn--ghost:hover,
.btn--ghost:focus-visible{
  background:var(--copper-ghost);
  color:var(--copper);
}

.cta-block{ text-align:center; margin-top:34px; }

.cta-note{
  margin:14px 0 0;
  font-size:12.5px;
  color:var(--text-soft);
  letter-spacing:.02em;
}

.hero .cta-note{ color:var(--text-invert-soft); }


/* 07. MARQUEE FRIEZE ===================================================== */
.marquee{
  background:var(--ink-3);
  border-top:1px solid var(--line-dark);
  border-bottom:1px solid var(--line-dark);
  padding-block:16px;
  overflow:hidden;
  /* soft fade on both edges */
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);
}

.marquee__track{
  display:flex;
  width:max-content;
  animation:marquee 34s linear infinite;
}

.marquee__group{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}

.marquee__item{
  font-size:12px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--copper-soft);
  padding-inline:26px;
  white-space:nowrap;
}

.marquee__sep{
  color:rgba(224,160,106,.45);
  font-size:12px;
}

@keyframes marquee{
  from{ transform:translateX(0); }
  to  { transform:translateX(-50%); }
}


/* 08. CONTENT AREA - TYPOGRAPHY ========================================== */
.content{ background:var(--paper); }

.h2{
  font-family:var(--font-display);
  font-weight:400;
  font-size:clamp(28px,4.4vw,42px);
  line-height:1.14;
  letter-spacing:-.005em;
  max-width:20ch;
  text-wrap:balance;
}

.h2 em{ font-style:italic; color:var(--copper); }

.lede{
  margin-top:20px;
  max-width:64ch;
  font-size:17.5px;
  color:var(--text);
}

.lede--muted{ color:var(--text-soft); }


/* 09. BULLET CARDS (stacked, icon left) ================================== */
.cards{
  margin-top:var(--gap);
  display:flex;
  flex-direction:column;
  gap:14px;
}

.card{
  display:flex;
  gap:20px;
  align-items:flex-start;
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  padding:22px 24px;
  transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.card:hover{
  border-color:var(--copper);
  transform:translateX(4px);
  box-shadow:var(--shadow);
}

.card__icon{
  flex:0 0 auto;
  width:46px; height:46px;
  border-radius:50%;
  background:var(--copper-ghost);
  display:grid;
  place-items:center;
}

.card__icon svg{
  width:21px; height:21px;
  stroke:var(--copper);
  stroke-width:1.6;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.card__title{
  font-family:var(--font-display);
  font-size:23px;
  font-weight:600;
  line-height:1.24;
  margin:0 0 6px;
}

.card__text{
  margin:0;
  font-size:15.5px;
  color:var(--text-soft);
  line-height:1.62;
}


/* 10. MICRO-TIMELINE ===================================================== */
.timeline{
  margin-top:calc(var(--gap) + 6px);
  padding-top:34px;
  border-top:1px solid var(--line);
}

.timeline__head{
  font-family:var(--font-display);
  font-size:26px;
  margin-bottom:26px;
}

.timeline__list{
  list-style:none;
  margin:0;
  padding:0 0 0 34px;
  position:relative;
}

.timeline__list::before{
  content:"";
  position:absolute;
  left:9px; top:8px; bottom:8px;
  width:1px;
  background:linear-gradient(180deg,var(--copper),rgba(196,122,61,.16));
}

.timeline__item{
  position:relative;
  padding-bottom:26px;
}

.timeline__item:last-child{ padding-bottom:0; }

.timeline__item::before{
  content:"";
  position:absolute;
  left:-30px; top:9px;
  width:11px; height:11px;
  border-radius:50%;
  background:var(--paper);
  border:2px solid var(--copper);
}

.timeline__num{
  display:block;
  font-size:11px;
  font-weight:700;
  letter-spacing:.22em;
  color:var(--copper);
  margin-bottom:4px;
}

.timeline__title{
  font-family:var(--font-display);
  font-size:21px;
  font-weight:600;
  margin:0 0 4px;
}

.timeline__text{
  margin:0;
  font-size:15.5px;
  color:var(--text-soft);
}


/* 11. "DID YOU KNOW?" TWO-TONE CARD ====================================== */
.dyk{
  margin-top:calc(var(--gap) + 10px);
  border-radius:var(--r-lg);
  overflow:hidden;
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  box-shadow:var(--shadow);
}

.dyk__dark{
  background:var(--ink);
  color:var(--text-invert);
  padding:34px 30px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.dyk__kicker{
  font-family:var(--font-display);
  font-style:italic;
  font-size:31px;
  line-height:1.1;
  color:var(--copper-soft);
}

.dyk__stamp{
  margin-top:14px;
  font-size:10.5px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--text-invert-soft);
}

.dyk__light{
  background:var(--paper-2);
  padding:34px 32px;
  display:flex;
  align-items:center;
}

.dyk__light p{
  margin:0;
  font-size:16px;
  line-height:1.7;
  color:var(--text);
}


/* 12. FINAL CTA BAND ===================================================== */
.closing{
  background:var(--paper-2);
  border-top:1px solid var(--line);
  text-align:center;
}

.closing__title{
  font-family:var(--font-display);
  font-size:clamp(26px,4vw,38px);
  line-height:1.16;
  max-width:22ch;
  margin-inline:auto;
}

.closing__text{
  margin:18px auto 0;
  max-width:56ch;
  color:var(--text-soft);
  font-size:16px;
}


/* 13. FOOTER + DISCLAIMERS =============================================== */
.footer{
  background:var(--ink-3);
  color:var(--text-invert-soft);
  padding-block:52px 40px;
  font-size:13.5px;
  line-height:1.68;
}

.footer__nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px 28px;
  padding-bottom:30px;
  border-bottom:1px solid var(--line-dark);
}

.footer__link{
  background:none;
  border:0;
  padding:0;
  cursor:pointer;
  font-family:var(--font-body);
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--text-invert-soft);
  text-decoration:none;
  transition:color .2s ease;
}

.footer__link:hover,
.footer__link:focus-visible{ color:var(--copper-soft); }

.disclaimers{
  margin-top:30px;
  display:grid;
  gap:22px;
}

.disclaimer__label{
  display:block;
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--copper);
  margin-bottom:6px;
}

.disclaimer p{
  margin:0;
  font-size:13px;
  color:#9b8b78;
  line-height:1.65;
}

.footer__copy{
  margin-top:34px;
  padding-top:22px;
  border-top:1px solid var(--line-dark);
  text-align:center;
  font-size:12px;
  letter-spacing:.06em;
  color:#8a7b6a;
}

.footer__copy a{ color:#8a7b6a; text-decoration:none; }
.footer__copy a:hover{ color:var(--copper-soft); }


/* 14. MODALS ============================================================= */
.modal{
  position:fixed;
  inset:0;
  z-index:80;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(0,0,0,.7);
}

.modal.is-open{ display:flex; }

.modal__card{
  background:var(--paper);
  color:var(--text);
  width:min(680px,100%);
  max-height:80vh;
  border-radius:var(--r-md);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.45);
}

.modal__head{
  position:relative;
  padding:24px 58px 18px 28px;
  border-bottom:1px solid var(--line);
}

.modal__title{
  font-family:var(--font-display);
  font-size:26px;
  font-weight:600;
  margin:0;
}

.modal__close{
  position:absolute;
  top:16px; right:16px;
  width:36px; height:36px;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--text);
  font-size:19px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease, color .2s ease;
}

.modal__close:hover{ background:var(--ink); color:var(--paper); }

.modal__body{
  overflow-y:auto;
  padding:24px 28px 8px;
  font-size:14.5px;
  line-height:1.7;
  color:var(--text);
}

.modal__body h4{
  font-family:var(--font-body);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--copper);
  margin:22px 0 8px;
}

.modal__body h4:first-child{ margin-top:0; }

.modal__body p{ margin:0 0 12px; color:var(--text-soft); }

.modal__foot{
  padding:16px 28px 20px;
  border-top:1px solid var(--line);
  text-align:right;
  background:var(--paper-2);
}

.modal__foot .btn{ padding:13px 30px; font-size:12.5px; }

body.no-scroll{ overflow:hidden; }


/* 15. RESPONSIVE ========================================================= */
@media (max-width:820px){
  .dyk{ grid-template-columns:1fr; }
  .dyk__dark{ padding:30px 26px; }
  .dyk__light{ padding:28px 26px; }
}

@media (max-width:640px){
  :root{ --pad-section:44px; --gap:30px; }

  body{ font-size:16.5px; }

  .card{ padding:18px 18px; gap:15px; }
  .card__icon{ width:40px; height:40px; }
  .card__title{ font-size:20px; }

  .btn{ display:block; padding:17px 22px; font-size:13px; }
  .cta-block .btn{ width:100%; }

  .marquee__item{ padding-inline:18px; letter-spacing:.22em; }

  .footer__nav{ gap:12px 18px; }
  .modal__body{ padding:20px 20px 6px; }
  .modal__head{ padding:20px 54px 16px 20px; }
  .modal__foot{ padding:14px 20px 18px; }
}


/* 16. ACCESSIBILITY / REDUCED MOTION ===================================== */
:where(a,button,.video):focus-visible{
  outline:2px solid var(--copper-soft);
  outline-offset:3px;
  border-radius:var(--r-sm);
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
  .marquee__track{ transform:translateX(0); }
}
/* end base styles */
*{box-sizing:border-box;}body{margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;}:root{undefined:undefined;--ink:#101016;--shell:#181820;--slate:#24242e;--hairline:rgba(255, 255, 255, 0.12);--mint:#6dd3b0;--mint-deep:#1f6b56;--mint-wash:#e4f3ed;--paper:#f6f7f5;--paper-2:#ecefec;--on-dark:#c9cdd3;--on-dark-soft:#8d929a;--on-light:#1b1d22;--on-light-soft:#55595f;--display:"Fraunces", "Iowan Old Style", Georgia, serif;--body:"Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--pad-section:60px;--gap:40px;--shell-max:1080px;--read-max:720px;--radius:14px;--radius-sm:10px;--marquee-speed:42s;--ease:cubic-bezier(.22, .61, .36, 1);}*, *::before, *::after{box-sizing:border-box;}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}body{margin:0;background:var(--paper);color:var(--on-light);font-family:var(--body);font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased;}img{max-width:100%;display:block;border:0;}a{color:inherit;}.shell{width:100%;max-width:var(--shell-max);margin-inline:auto;padding-inline:22px;}.read{max-width:var(--read-max);margin-inline:auto;}.eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;}.h1{font-family:var(--display);font-weight:600;font-size:clamp(30px, 5.2vw, 50px);line-height:1.12;letter-spacing:-0.015em;margin:18px 0 0;text-wrap:balance;}.h2{font-family:var(--display);font-weight:600;font-size:clamp(25px, 3.6vw, 34px);line-height:1.2;letter-spacing:-0.01em;margin:0 0 14px;text-wrap:balance;}.h3{font-family:var(--body);font-weight:600;font-size:17px;line-height:1.35;margin:0 0 6px;}.lede{font-size:clamp(16px, 2vw, 18.5px);line-height:1.62;margin:16px 0 0;}.p{margin:0 0 16px;}.p:last-child{margin-bottom:0;}.hero{position:relative;background:radial-gradient(115% 90% at 88% -8%, #2c3a3a 0%, rgba(24,24,32,0) 62%),
    radial-gradient(70% 60% at 50% 42%, rgba(109,211,176,.10) 0%, rgba(24,24,32,0) 70%),
    var(--shell);color:var(--on-dark);padding:46px 0 54px;overflow:hidden;}.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg, transparent, var(--hairline), transparent);}.hero__eyebrow{color:var(--mint);display:flex;align-items:center;gap:10px;}.hero__eyebrow::before{content:"";width:22px;height:1px;background:var(--mint);opacity:.7;}.hero__title{color:#fff;}.hero__lede{color:var(--on-dark-soft);max-width:60ch;}.hero__grid{display:grid;gap:var(--gap);align-items:center;grid-template-columns:1fr;}.thumb{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--slate);border:1px solid var(--hairline);box-shadow:0 26px 60px -28px rgba(0,0,0,.9);transition:transform .4s var(--ease), border-color .4s var(--ease);}.thumb:hover{transform:translateY(-3px);border-color:rgba(109,211,176,.45);}.thumb img{width:100%;height:auto;}.thumb__veil{position:absolute;inset:0;background:linear-gradient(180deg, rgba(16,16,22,.06) 0%, rgba(16,16,22,.58) 100%);}.thumb__play{position:absolute;left:50%;top:50%;width:74px;height:74px;margin:-37px 0 0 -37px;border-radius:50%;background:var(--mint);display:grid;place-items:center;box-shadow:0 10px 30px -10px rgba(0,0,0,.7);}.thumb__play::before{content:"";width:0;height:0;margin-left:5px;border-left:20px solid var(--ink);border-top:12px solid transparent;border-bottom:12px solid transparent;}.thumb__play::after{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px solid var(--mint);opacity:.55;animation:halo 2.6s var(--ease) infinite;}.thumb__tag{position:absolute;left:14px;bottom:14px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(16,16,22,.62);border:1px solid var(--hairline);border-radius:999px;padding:6px 12px;backdrop-filter:blur(4px);}.marquee{background:var(--ink);border-block:1px solid var(--hairline);padding:15px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 12%, #000 88%, transparent 100%);mask-image:linear-gradient(90deg, transparent 0, #000 12%, #000 88%, transparent 100%);}.marquee__track{display:flex;width:max-content;animation:slide var(--marquee-speed) linear infinite;}.marquee__group{display:flex;flex:0 0 auto;align-items:center;}.marquee__item{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--mint);padding-inline:26px;white-space:nowrap;}.marquee__item::after{content:"·";margin-left:26px;color:var(--on-dark-soft);}.content{background:var(--paper);padding:var(--pad-section) 0 0;}.section{padding-bottom:var(--pad-section);}.section__eyebrow{color:var(--mint-deep);margin:0 0 12px;}.rule{height:1px;background:linear-gradient(90deg, var(--mint-deep) 0 56px, rgba(27,29,34,.14) 56px);margin:0 0 28px;}.cards{display:grid;gap:14px;margin:28px 0 0;padding:0;list-style:none;}.card{display:grid;grid-template-columns:46px 1fr;gap:16px;align-items:start;background:#fff;border:1px solid rgba(27,29,34,.09);border-radius:var(--radius-sm);padding:18px 20px;transition:border-color .3s var(--ease), transform .3s var(--ease);}.card:hover{border-color:rgba(31,107,86,.35);transform:translateX(3px);}.card__mark{width:46px;height:46px;border-radius:50%;background:var(--mint-wash);color:var(--mint-deep);display:grid;place-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.06em;}.card__text{color:var(--on-light-soft);font-size:15.5px;margin:0;}.notes{background:var(--paper-2);border-radius:var(--radius);padding:30px 26px;margin-top:var(--gap);}.notes__title{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint-deep);margin:0 0 22px;}.steps{list-style:none;margin:0;padding:0;position:relative;}.steps::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:rgba(27,29,34,.18);}.step{position:relative;padding:0 0 22px 34px;}.step:last-child{padding-bottom:0;}.step::before{content:"";position:absolute;left:2px;top:7px;width:11px;height:11px;border-radius:50%;background:var(--paper-2);border:2px solid var(--mint-deep);}.step__label{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-light-soft);display:block;margin-bottom:3px;}.step__text{margin:0;font-size:15.5px;color:var(--on-light);}.dyk{display:grid;grid-template-columns:1fr;border-radius:var(--radius);overflow:hidden;margin-top:var(--gap);border:1px solid rgba(27,29,34,.09);}.dyk__dark{background:var(--shell);color:var(--on-dark);padding:30px 26px;}.dyk__kicker{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint);margin:0 0 10px;}.dyk__head{font-family:var(--display);font-weight:600;font-size:23px;line-height:1.22;color:#fff;margin:0;}.dyk__light{background:#fff;padding:30px 26px;color:var(--on-light-soft);font-size:15.5px;}.btn{display:inline-flex;align-items:center;gap:12px;background:var(--mint);color:var(--ink);font-family:var(--body);font-weight:600;font-size:16px;letter-spacing:.01em;text-decoration:none;padding:17px 30px;border-radius:999px;transition:transform .25s var(--ease), box-shadow .25s var(--ease), background-color .25s var(--ease);box-shadow:0 12px 30px -14px rgba(109,211,176,.75);}.btn:hover{transform:translateY(-2px);background:#7fe0c0;box-shadow:0 18px 38px -16px rgba(109,211,176,.9);}.btn::after{content:"→";font-family:var(--mono);font-size:15px;}.btn--hero{margin-top:0;}.cta{text-align:center;padding:42px 26px;background:var(--shell);border-radius:var(--radius);margin-top:var(--gap);}.cta__head{font-family:var(--display);font-weight:600;font-size:clamp(22px, 3vw, 28px);line-height:1.22;color:#fff;margin:0 0 10px;}.cta__sub{color:var(--on-dark-soft);font-size:15.5px;margin:0 auto 24px;max-width:46ch;}.footer{background:var(--ink);color:var(--on-dark-soft);padding:48px 0 40px;font-size:13.5px;line-height:1.65;}.footer__nav{display:flex;flex-wrap:wrap;gap:10px 26px;padding-bottom:26px;border-bottom:1px solid var(--hairline);}.footer__link{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark);text-decoration:none;background:none;border:0;padding:0;cursor:pointer;transition:color .25s var(--ease);}.footer__link:hover{color:var(--mint);}.disc{padding-top:26px;display:grid;gap:18px;}.disc__block{max-width:78ch;}.disc__title{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);margin:0 0 5px;}.disc__text{margin:0;}.copyright{margin-top:28px;padding-top:20px;border-top:1px solid var(--hairline);font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;color:var(--on-dark-soft);}.copyright a{color:var(--on-dark);text-decoration:none;}.copyright a:hover{color:var(--mint);}.modal{position:fixed;inset:0;background:rgba(0, 0, 0, .7);display:none;align-items:center;justify-content:center;padding:20px;z-index:90;}.modal.is-open{display:flex;}.modal__card{background:var(--paper);color:var(--on-light);width:100%;max-width:720px;max-height:80vh;border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.8);}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid rgba(27,29,34,.1);}.modal__title{font-family:var(--display);font-weight:600;font-size:21px;margin:0;}.modal__x{background:none;border:0;font-size:24px;line-height:1;color:var(--on-light-soft);cursor:pointer;padding:4px 8px;border-radius:8px;}.modal__x:hover{background:rgba(27,29,34,.07);color:var(--on-light);}.modal__body{padding:22px 24px;overflow-y:auto;font-size:14.5px;line-height:1.68;color:var(--on-light-soft);}.modal__body h4{font-family:var(--body);font-weight:600;font-size:14.5px;color:var(--on-light);margin:20px 0 6px;}.modal__body h4:first-child{margin-top:0;}.modal__body p{margin:0 0 12px;}.modal__foot{padding:16px 24px;border-top:1px solid rgba(27,29,34,.1);text-align:right;}.modal__close{background:var(--shell);color:#fff;border:0;border-radius:999px;padding:11px 26px;font-family:var(--body);font-size:14px;font-weight:600;cursor:pointer;}.modal__close:hover{background:var(--slate);}body.is-locked{overflow:hidden;}:focus-visible{outline:2px solid var(--mint-deep);outline-offset:3px;border-radius:4px;}.hero :focus-visible, .footer :focus-visible, .cta :focus-visible{outline-color:var(--mint);}@keyframes halo{0%{transform:scale(.86);opacity:.6;}70%{transform:scale(1.18);opacity:0;}100%{transform:scale(1.18);opacity:0;}}@keyframes slide{from{transform:translate3d(0, 0, 0);}to{transform:translate3d(-50%, 0, 0);}}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}.marquee__track{transform:none;}}@media (min-width: 860px){:root{--pad-section:76px;}.hero{padding:64px 0 72px;}.hero__grid{grid-template-columns:1.02fr 1fr;gap:0 52px;align-items:center;}.hero__copy{grid-column:1;grid-row:1;align-self:end;}.hero .thumb{grid-column:2;grid-row:1 / span 2;align-self:center;}.hero__cta{grid-column:1;grid-row:2;align-self:start;}.hero__cta .btn--hero{margin-top:28px;}.cards{gap:16px;}.notes{padding:38px 40px;}.dyk{grid-template-columns:0.9fr 1.1fr;}.dyk__dark{padding:38px 34px;}.dyk__light{padding:38px 34px;}.cta{padding:56px 40px;}.disc{grid-template-columns:repeat(3, 1fr);gap:26px;}}@media (max-width: 480px){body{font-size:16px;}.thumb__play{width:62px;height:62px;margin:-31px 0 0 -31px;}.thumb__play::before{border-left-width:17px;border-top-width:10px;border-bottom-width:10px;}.btn{width:100%;justify-content:center;}.card{grid-template-columns:38px 1fr;gap:13px;padding:16px;}.card__mark{width:38px;height:38px;font-size:11px;}}
[data-delay-vturb] {
  display: none !important;
}
  