/* ============================================================
   8.8 — A Nova Era do Digital
   Tokens exportados do Paper (file: Logical orchard)
   ============================================================ */

:root{
  /* color */
  --color-ink:#161616;
  --color-ink-deep:#0D0D0D;
  --color-surface-dark:#232323;
  --color-border-dark:#2E2E2E;
  --color-paper:#F1F2F1;
  --color-paper-pure:#FFFFFF;
  --color-border:#E2E2E0;
  --color-text:#101010;
  --color-text-muted:#5D5D5D;
  --color-on-dark:#FFFFFF;
  --color-on-dark-muted:#A3A3A1;
  --color-mute:#9D9D9D;
  --color-accent:#C2703F;
  --color-accent-hot:#D98450;
  --color-accent-deep:#8F4E28;

  /* type */
  --font-display:"Geist",system-ui,-apple-system,sans-serif;
  --font-mono:"Geist Mono",ui-monospace,SFMono-Regular,monospace;
  --font-poppins:"Poppins",var(--font-display);

  --text-xs:12px; --text-sm:14px; --text-base:16px; --text-lg:18px;
  --text-xl:20px; --text-2xl:24px; --text-3xl:32px; --text-4xl:48px;
  --text-5xl:64px; --text-6xl:80px; --text-display:96px;

  --tracking-display:-0.042em; --tracking-h2:-0.03em; --tracking-h3:-0.015em;
  --tracking-body:-0.011em; --tracking-label:0.08em;

  --leading-h4:38px; --leading-label:21px; --leading-body:26px; --leading-body-lg:29px;

  /* layout */
  --gutter:88px;
  --content:1264px;
  --wide-inset:24px;
  --radius-12:12px; --radius-32:32px; --radius-88:88px; --radius-pill:999px;

  /* rhythm */
  --section-gap:160px;

  /* copper gradient used on the countdown MIN pill */
  --copper-grad:linear-gradient(120deg,#D98450 0%,#C2703F 48%,#8F4E28 100%);
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth}

/* Barra de rolagem alinhada à identidade visual. */
html{
  scrollbar-width:thin;
  scrollbar-color:var(--color-accent) #E5E6E4;
}
html::-webkit-scrollbar{width:8px}
html::-webkit-scrollbar-track{background:#E5E6E4}
html::-webkit-scrollbar-thumb{
  min-height:48px;
  border:2px solid #E5E6E4;
  border-radius:var(--radius-pill);
  background:var(--color-accent);
}
html::-webkit-scrollbar-thumb:hover{background:var(--color-accent-deep)}

body{
  margin:0;
  background:var(--color-paper);
  color:var(--color-text);
  font-family:var(--font-display);
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

img,svg{display:block;max-width:100%}
h1,h2,h3,p,figure,blockquote,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none}

.container{
  width:100%;
  max-width:calc(var(--content) + var(--gutter)*2);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.container--wide{
  max-width:calc(1392px + var(--wide-inset)*2);
  padding-inline:var(--wide-inset);
}

.section{padding-block:0;margin-top:var(--section-gap)}

/* ============================================================
   Botões
   ============================================================ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  height:60px;border:0;border-radius:var(--radius-12);cursor:pointer;
  font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;
  letter-spacing:.04em;
  transition:transform .28s cubic-bezier(.2,.7,.3,1),box-shadow .28s,background-color .2s;
}
.btn--primary{background:var(--color-accent);color:#fff;width:100%}
.btn--inline{width:325px;max-width:100%}
.btn__arrow{width:18px;height:18px;flex-shrink:0;transition:transform .3s cubic-bezier(.2,.7,.3,1)}
.btn--primary:hover{background:var(--color-accent-hot);transform:translateY(-2px);box-shadow:0 12px 30px -12px rgba(194,112,63,.75)}
.btn--primary:hover .btn__arrow{transform:translateX(5px)}
.btn--primary:active{transform:translateY(0)}
.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}

.cta-wrap{display:flex;justify-content:center;margin-top:88px}

/* ============================================================
   HERO
   ============================================================ */
.hero{padding-top:var(--wide-inset)}

.hero__card{
  position:relative;
  max-width:1392px;
  margin-inline:auto;
  border-radius:var(--radius-32);
  overflow:hidden;
  background:#000;
  isolation:isolate;
}

.hero__bg{
  position:absolute;inset:-4% -2%;
  background:url("assets/hero-bg.png") 50%/cover no-repeat;
  will-change:transform;
}
.hero__scrim{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.93) 42%,rgba(0,0,0,.76) 66%,rgba(0,0,0,.30) 86%,rgba(0,0,0,0) 100%);
}

.hero__content{
  position:relative;
  padding:139px 80px 0;
  max-width:1160px;
}

.badge{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--color-paper-pure);border-radius:var(--radius-pill);
  padding:9px 18px 9px 14px;
}
.badge__dot{width:14px;height:14px;border-radius:4px;background:var(--color-accent);flex-shrink:0}
.badge span:last-child{
  font-family:var(--font-poppins);font-size:13px;font-weight:500;
  letter-spacing:var(--tracking-label);line-height:18px;text-transform:uppercase;color:var(--color-text);
}

.hero__title{
  margin-top:48px;
  font-family:var(--font-poppins);font-weight:400;
  font-size:55px;line-height:60px;letter-spacing:-.035em;
  color:var(--color-on-dark);
}
.hero__title .line{display:block}
.hero__title .accent{color:var(--color-accent)}

.hero__quals{
  display:flex;gap:48px;margin-top:40px;flex-wrap:wrap;
}
.hero__quals li{display:flex;align-items:flex-start;gap:12px;max-width:346px}
.hero__quals svg{width:20px;height:20px;flex-shrink:0;margin-top:1px}
.hero__quals span{font-size:var(--text-base);line-height:22px;letter-spacing:var(--tracking-body);color:var(--color-on-dark)}
.hero__quals .is-muted span{color:var(--color-on-dark-muted)}

.hero__meta{
  position:relative;
  display:flex;flex-wrap:wrap;gap:0;
  padding:64px 80px 56px;
}
.hero__meta span{
  width:308px;flex-shrink:0;
  font-family:var(--font-mono);font-size:var(--text-lg);
  letter-spacing:-.03em;line-height:29px;text-transform:uppercase;color:var(--color-mute);
}

/* --- formulário --- */
.signup{margin-top:48px;display:flex;flex-direction:column;gap:22px;max-width:820px}
.signup__row{display:flex;gap:20px}
.signup__row .field{flex:1 1 0;min-width:0}

.field{position:relative}
.field input{
  width:100%;height:76px;
  background:transparent;border:1px solid #424242;border-radius:var(--radius-12);
  padding:0 20px;
  font-family:var(--font-display);font-size:var(--text-lg);
  letter-spacing:var(--tracking-body);line-height:24px;color:var(--color-on-dark);
  transition:border-color .22s,box-shadow .22s;
}
.field input::placeholder{color:#828282}
.field input:hover{border-color:#5c5c5c}
.field input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(194,112,63,.18)}
.field label{
  position:absolute;top:-9px;left:18px;
  background:var(--color-ink);padding-inline:8px;
  font-size:13px;line-height:18px;color:var(--color-mute);
  transition:color .22s;
  pointer-events:none;
}
.field input:focus + label{color:var(--color-accent-hot)}
.field input:user-invalid{border-color:#a3452b}

.signup__note{
  display:flex;align-items:center;gap:8px;justify-content:center;
  font-size:var(--text-sm);line-height:var(--leading-label);
  letter-spacing:var(--tracking-body);color:var(--color-on-dark-muted);
}
.signup__note svg{width:14px;height:14px;flex-shrink:0}

/* estado de sucesso */
.signup.is-sent .btn--primary{background:#2f7d52}
.signup.is-sent .btn--primary:hover{background:#2f7d52;transform:none;box-shadow:none}

/* ============================================================
   MARQUEE — carrossel infinito
   ============================================================ */
.marquee{
  position:relative;
  height:108px;margin-top:84px;
  border-top:1px solid var(--color-border);
  border-bottom:1px solid var(--color-border);
  overflow:hidden;
}
.marquee__viewport{height:100%;overflow:hidden}
.marquee__track{
  display:flex;align-items:center;height:100%;width:max-content;
  will-change:transform;
  animation:marquee var(--mq-duration,40s) linear infinite;
}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__group{display:flex;align-items:center;gap:44px;padding-right:44px;flex-shrink:0}

@keyframes marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

.mq-item{
  display:inline-flex;align-items:center;gap:12px;white-space:nowrap;
  font-family:var(--font-mono);font-size:var(--text-base);
  letter-spacing:var(--tracking-label);line-height:22px;
  text-transform:uppercase;color:var(--color-text);
}
.mq-item b{font-weight:600;color:var(--color-accent)}
.mq-dot--accent{width:9px;height:9px;border-radius:999px;background:var(--color-accent);flex-shrink:0}
.mq-sep{width:5px;height:5px;border-radius:999px;background:#C4C4C1;flex-shrink:0}

.marquee__pin{
  position:absolute;left:0;top:0;z-index:2;
  display:flex;align-items:center;gap:14px;
  width:400px;height:100%;
  padding-left:80px;padding-right:40px;
  background:var(--color-paper);
}
.marquee__pin svg{width:22px;height:22px;flex-shrink:0;animation:spin 14s linear infinite}
.marquee__pin span{
  font-family:var(--font-mono);font-size:var(--text-xs);
  letter-spacing:var(--tracking-label);line-height:17px;
  text-transform:uppercase;color:var(--color-text-muted);
}
@keyframes spin{to{transform:rotate(360deg)}}

/* ============================================================
   FATOS
   ============================================================ */
.fatos{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.fato{display:flex;flex-direction:column;gap:28px}
.fato__icon{width:40px;height:40px}
.fato__body{display:flex;flex-direction:column;gap:20px}
.fato__rule{height:1px;background:#C9C9C6;display:block}
.fato h3{
  font-size:var(--text-2xl);font-weight:500;
  letter-spacing:-.05em;line-height:31px;color:var(--color-text);
}

/* ============================================================
   COUNTDOWN
   ============================================================ */
.countdown{display:flex;align-items:flex-start;justify-content:center;gap:16px;flex-wrap:wrap}
.countdown__label{
  font-size:var(--text-4xl);font-weight:500;
  letter-spacing:var(--tracking-h2);line-height:52px;color:var(--color-text);
}
.countdown__boxes{display:flex;gap:24px;justify-content:center}

.cd-unit{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  width:186px;height:97px;border-radius:var(--radius-pill);flex-shrink:0;
}
.cd-num{
  font-size:var(--text-4xl);font-weight:500;line-height:48px;
  letter-spacing:var(--tracking-display);
  font-variant-numeric:tabular-nums;
}
.cd-cap{
  font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;
  letter-spacing:var(--tracking-label);line-height:20px;text-transform:uppercase;
}
.cd-unit--light{background:#fff}
.cd-unit--light .cd-num{color:var(--color-text)}
.cd-unit--light .cd-cap{color:var(--color-text-muted)}
.cd-unit--copper{background:var(--copper-grad)}
.cd-unit--copper .cd-num{color:#FBEEE3}
.cd-unit--copper .cd-cap{color:#F0D6BF}
.cd-unit--dark{background:var(--color-ink)}
.cd-unit--dark .cd-num{color:var(--color-on-dark)}
.cd-unit--dark .cd-cap{color:var(--color-mute)}

/* pulso a cada tique dos segundos */
.cd-num.is-tick{animation:tick .5s cubic-bezier(.2,.7,.3,1)}
@keyframes tick{
  0%{transform:translateY(-24%);opacity:0;filter:blur(3px)}
  60%{filter:blur(0)}
  100%{transform:translateY(0);opacity:1}
}

/* ============================================================
   DOR
   ============================================================ */
.dor__top{display:flex;gap:80px;justify-content:space-between;align-items:flex-start}
.dor__title{
  flex:0 0 600px;max-width:600px;
  font-size:52px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px;
}
.dor__copy{flex:0 1 640px;display:flex;flex-direction:column;gap:22px;padding-top:6px}
.dor__copy p{font-size:var(--text-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body);color:var(--color-text-muted)}
.dor__copy .lead{font-weight:500;color:var(--color-text)}

.dor__list{margin-top:160px;border-top:1px solid var(--color-border)}
.dor__item{
  display:flex;align-items:center;gap:0;
  min-height:108px;padding-block:24px;
  border-bottom:1px solid var(--color-border);
  transition:background-color .3s,padding-left .3s cubic-bezier(.2,.7,.3,1);
}
.dor__item:hover{background:rgba(0,0,0,.025);padding-left:12px}
.dor__num{
  width:90px;flex-shrink:0;
  font-family:var(--font-mono);font-size:var(--text-base);
  letter-spacing:var(--tracking-label);line-height:22px;color:var(--color-mute);
  transition:color .3s;
}
.dor__item:hover .dor__num{color:var(--color-accent)}
.dor__item p{
  flex:1 1 0;
  font-size:var(--text-3xl);letter-spacing:var(--tracking-h3);line-height:var(--leading-h4);
}
.dor__x{width:24px;height:24px;flex-shrink:0;margin-left:30px;transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.dor__item:hover .dor__x{transform:rotate(90deg)}

/* ============================================================
   BENTO
   ============================================================ */
.bento{display:flex;flex-direction:column;gap:12px}
.bento__split{display:flex;gap:12px}
.bento__stack{display:flex;flex-direction:column;gap:12px;flex:0 0 622px;min-width:0}

.bento__panorama,.bento__portrait,.bento__macro,.bento__exploded{
  position:relative;overflow:hidden;background:var(--color-ink-deep);
}
.bento__panorama{aspect-ratio:1344/375}
.bento__portrait{flex:1 1 710px;min-width:0;aspect-ratio:710/787}
.bento__macro{aspect-ratio:622/540}
.bento__copper{background:var(--color-accent-hot);aspect-ratio:622/238;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:64px}
.bento__exploded{aspect-ratio:1344/390}

.bento__img{
  position:absolute;inset:0;
  background-size:cover;background-position:50%;
  transition:transform 1.1s cubic-bezier(.2,.7,.3,1);
}
.bento__panorama:hover .bento__img,
.bento__portrait:hover .bento__img,
.bento__macro:hover .bento__img,
.bento__exploded:hover .bento__img{transform:scale(1.045)}

.bento__panorama .bento__copy{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;
  padding:72px 92px;
  background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.76) 38%,rgba(0,0,0,.05) 66%,rgba(0,0,0,0) 100%);
}
.bento__portrait .bento__copy{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;
  padding:78px 72px;
}
.bento__macro .bento__copy{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;
  padding:64px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 25%,rgba(0,0,0,.93) 76%,rgba(0,0,0,.99) 100%);
}

.bento__h1{font-size:68px;line-height:70px;letter-spacing:-.04em;font-weight:500;color:var(--color-on-dark);max-width:615px}
.bento__h2{font-size:47px;line-height:51px;letter-spacing:-.03em;font-weight:500;color:var(--color-on-dark);max-width:421px}
.bento__h3{font-size:52px;line-height:54px;letter-spacing:-.035em;font-weight:500;color:var(--color-on-dark);max-width:516px}
.bento__h4{font-size:41px;line-height:45px;letter-spacing:-.03em;font-weight:500;color:var(--color-ink-deep)}
.bento__h5{font-size:67px;line-height:65px;letter-spacing:-.03em;font-weight:500;color:#fff}

.bento__quote{
  max-width:532px;padding:14px 20px;
  background:rgba(35,35,35,.76);border-left:3px solid var(--color-accent-hot);
  font-size:29px;line-height:30px;letter-spacing:var(--tracking-body);color:var(--color-on-dark);
}
.bento__sub{
  font-size:var(--text-3xl);line-height:38px;letter-spacing:var(--tracking-h3);
  color:var(--color-on-dark-muted);max-width:560px;
}
.bento__macro .bento__sub{font-size:26px;line-height:32px;max-width:501px;margin-top:12px}

.bento__kicker{
  font-family:var(--font-mono);font-size:13px;font-weight:700;
  letter-spacing:.1em;line-height:18px;color:var(--color-ink-deep);
}
.bento__kicker--deep{color:var(--color-accent-deep)}

.bento__exploded-inner{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;
  padding:82px 90px;
}
.bento__exploded-left{display:flex;flex-direction:column;gap:22px;flex-shrink:0}
.bento__bar{display:block;width:150px;height:8px;background:var(--color-accent-hot)}
.bento__exploded-right{
  max-width:411px;
  font-size:var(--text-2xl);line-height:34px;letter-spacing:var(--tracking-h3);color:var(--color-on-dark);
}

/* ============================================================
   O QUE VOU ABRIR
   ============================================================ */
.heading{
  font-size:52px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px;
  color:var(--color-text);
}
.heading--tight{max-width:440px}

.abrir__grid{
  display:grid;grid-template-columns:1fr 1fr;gap:82px;
  margin-top:88px;
}
.abrir__item{
  display:flex;flex-direction:column;gap:26px;
  border-top:1px solid var(--color-border);padding-top:36px;
}
.abrir__check{width:22px;height:22px;flex-shrink:0;transition:transform .4s cubic-bezier(.2,.7,.3,1)}
.abrir__item:hover .abrir__check{transform:scale(1.18) rotate(-6deg)}
.abrir__item h3{font-size:var(--text-3xl);font-weight:500;letter-spacing:var(--tracking-h3);line-height:42px}
.abrir__item p{font-size:var(--text-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body);color:var(--color-text-muted);margin-top:-10px}

/* ============================================================
   MENTOR
   ============================================================ */
.section--mentor{display:flex;flex-direction:column;align-items:center}
.mentor__eyebrow{
  font-size:45px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px;
  color:var(--color-text);margin-bottom:10px;
}
.mentor{
  position:relative;width:100%;max-width:1440px;
  border-radius:var(--radius-88);overflow:hidden;background:var(--color-ink);
  isolation:isolate;
}
.mentor__photo{
  position:absolute;left:0;top:0;width:100%;
  aspect-ratio:1440/754;
  background-size:cover;background-position:50% 22%;
  will-change:transform;
}
.mentor__scrim{
  position:absolute;left:0;width:100%;
  top:calc(1440 / 1440 * 0px + 50%);
  height:0;
}
.mentor::after{
  content:none;
}
.mentor__inner{
  position:absolute;z-index:2;
  display:flex;gap:60px;
  padding:0;
}
.mentor__curve{
  position:absolute;z-index:3;display:block;overflow:visible;
  pointer-events:none;
}
.mentor__curve--compact{display:none}
.mentor__col{flex:1 1 0;min-width:0;display:flex;flex-direction:column}
.mentor__col h2{
  font-size:52px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px;
  color:var(--color-on-dark);
}
.mentor__p{
  font-size:var(--text-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body);
  color:var(--color-on-dark-muted);
}
.mentor__col h2 + .mentor__p{margin-top:36px}
.mentor__p + .mentor__p{margin-top:22px}
.mentor__pull{
  margin-top:26px;max-width:486px;
  font-size:var(--text-2xl);font-weight:500;letter-spacing:var(--tracking-h3);line-height:34px;
  color:var(--color-on-dark);
}
.mentor__pull + .mentor__p{margin-top:26px}
.mentor__quote{
  border-left:2px solid var(--color-accent);padding-left:28px;
  font-size:var(--text-2xl);letter-spacing:var(--tracking-h3);line-height:34px;
  color:var(--color-on-dark);
}
.mentor__proofs{margin-top:48px}
.mentor__proofs li{
  display:flex;align-items:flex-start;gap:16px;
  border-top:1px solid var(--color-border-dark);padding-block:22px;
}
.mentor__proofs svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}
.mentor__proofs span{font-size:var(--text-base);line-height:24px;letter-spacing:var(--tracking-body);color:var(--color-on-dark)}

/* ============================================================
   DEPOIMENTOS
   ============================================================ */
.depo__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:41px;margin-top:88px}
.depo{
  display:flex;flex-direction:column;gap:28px;
  padding:32px;background:var(--color-paper-pure);border:1px solid var(--color-border);
  border-radius:var(--radius-12);
  transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s;
}
.depo:hover{transform:translateY(-6px);box-shadow:0 22px 44px -28px rgba(0,0,0,.35)}
.depo__stars{font-size:var(--text-2xl);line-height:24px;color:var(--color-accent);letter-spacing:.06em}
.depo blockquote{
  font-size:var(--text-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body);
  color:var(--color-text);flex:1 1 auto;
}
.depo figcaption{
  display:flex;align-items:center;gap:12px;
  border-top:1px solid var(--color-border);padding-top:22px;
  font-size:var(--text-base);line-height:22px;color:var(--color-text);
}
.depo__mark{width:8px;height:8px;background:var(--color-accent);flex-shrink:0;display:block}

/* ============================================================
   FAQ
   ============================================================ */
.faq__row{display:flex;gap:80px;justify-content:space-between;align-items:flex-start}
.faq__row .heading{flex:0 0 440px}
.faq__accordion{
  flex:0 0 744px;width:744px;
  display:flex;flex-direction:column;align-items:flex-start;gap:16px;
}
.faq__item{
  width:100%;overflow:hidden;
  border:0;border-radius:var(--radius-pill);background:var(--color-paper-pure);
  transition:border-radius .3s cubic-bezier(.2,.7,.3,1),padding .3s cubic-bezier(.2,.7,.3,1);
}
.faq__q{
  width:100%;height:78px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:0 36px 0 44px;cursor:pointer;
  background:none;border:0;text-align:left;color:inherit;
  font-family:var(--font-display);
  font-size:var(--text-xl);font-weight:500;letter-spacing:var(--tracking-h3);line-height:28px;
  transition:color .22s;
}
.faq__q:hover{color:var(--color-accent)}
.faq__q:focus-visible{outline:2px solid var(--color-accent);outline-offset:-4px;border-radius:inherit}
.faq__icon{width:18px;height:18px;flex-shrink:0;color:var(--color-text);transition:transform .3s cubic-bezier(.2,.7,.3,1),color .2s}
.faq__icon-v{transition:opacity .25s}
.faq__item.is-open{
  padding:32px 36px 32px 44px;border-radius:var(--radius-32);
}
.faq__item.is-open .faq__q{height:28px;padding:0}
.faq__item.is-open .faq__icon{color:var(--color-accent);transform:rotate(180deg)}
.faq__item.is-open .faq__icon-v{opacity:0}

/* fechado por padrão; .is-open revela. max-height evita depender
   de medição em JS e mantém a transição em CSS puro. */
.faq__answer{
  width:100%;overflow:hidden;
  max-height:0;opacity:0;
  transition:max-height .38s cubic-bezier(.2,.7,.3,1),opacity .28s ease;
}
.faq__item.is-open .faq__answer{max-height:520px;opacity:1}
.faq__answer p{
  width:100%;max-width:none;padding-top:16px;
  font-size:var(--text-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body);
  color:var(--color-text-muted);
}

/* ============================================================
   HANDSHAKE
   ============================================================ */
.handshake{
  margin-top:var(--section-gap);
  height:clamp(240px,34vw,651px);
  overflow:hidden;position:relative;z-index:4;
}
.handshake__img{
  position:absolute;z-index:1;inset:-8% 0;
  background-size:cover;background-position:50% 26%;
  will-change:transform;
}

/* ============================================================
   REGISTRO
   ============================================================ */
.registro{display:flex;gap:96px;justify-content:space-between;align-items:flex-start}
.registro__left{flex:0 1 600px}
.registro__fatos{margin-top:44px;display:flex;flex-direction:column;gap:24px}
.registro__fatos li{display:flex;align-items:center;gap:16px}
.registro__fatos svg{width:22px;height:22px;flex-shrink:0}
.registro__fatos span{font-size:var(--text-lg);line-height:var(--leading-body);letter-spacing:var(--tracking-body);color:var(--color-text)}

.signup--registro{flex:0 1 600px;margin-top:0}
/* form em fundo claro */
.signup--registro .field input{border-color:#CFCFCC;color:var(--color-text)}
.signup--registro .field input:hover{border-color:#a9a9a5}
.signup--registro .field label{background:var(--color-paper);color:var(--color-text-muted)}
.signup--registro .field input:focus + label{color:var(--color-accent)}
.signup--registro .signup__note{color:var(--color-text-muted)}

/* ============================================================
   CLOSING (8.8 + countdown + CTA)
   ============================================================ */
.section--closing{display:flex;flex-direction:column;align-items:center}
.closing__eight{display:flex;align-items:flex-end;justify-content:center;gap:2px;margin-bottom:56px}
.eight{
  display:block;width:50px;height:88px;
  background:url("assets/eight.png") 50%/cover no-repeat;
  transform:rotate(180deg);
}
.eight__dot{
  font-size:52px;line-height:52px;font-weight:500;color:var(--color-accent-hot);
  transform:translateY(-6px);
}
.section--closing .countdown{margin-bottom:0}
.section--closing .cta-wrap{margin-top:56px}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{margin-top:var(--section-gap);padding:0 var(--wide-inset) var(--wide-inset)}
.footer__inner{
  position:relative;overflow:hidden;
  max-width:1392px;margin-inline:auto;
  border-radius:var(--radius-32);background:var(--color-ink-deep);
  padding:96px 64px 56px;
  isolation:isolate;
}
.footer__texture{
  position:absolute;inset:-20% -10%;
  background:url("assets/footer-codex.png") 50%/cover no-repeat;
  mix-blend-mode:hard-light;opacity:.9;
}
.footer__glow{
  position:absolute;left:-5%;right:-5%;top:-9%;height:120%;
  background:url("assets/footer-gradient.jpg") 0 58%/cover no-repeat;
  opacity:.47;
}
.footer__content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.footer__boxes{margin-bottom:88px}
.footer__wordmark{
  font-size:clamp(48px,9.6vw,136px);line-height:.95;letter-spacing:-.03em;
  text-transform:uppercase;color:var(--color-on-dark);text-align:center;
  white-space:nowrap;
}
.footer__rule{display:block;width:100%;height:1px;background:rgba(255,255,255,.16);margin-top:88px}
.footer__row{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;
  margin-top:22px;
  font-size:var(--text-base);line-height:22px;color:var(--color-on-dark-muted);
}
.footer__nav{display:flex;align-items:center;gap:16px}
.footer__row > span,.footer__nav{white-space:nowrap}
.footer__nav a{transition:color .2s}
.footer__nav a:hover{color:var(--color-accent-hot)}
.footer__sep{width:1px;height:18px;background:rgba(255,255,255,.24);display:block}

/* ============================================================
   ANIMAÇÕES DE ENTRADA
   ============================================================ */
/* O estado inicial escondido só existe quando o JS está vivo
   (classe .js no <html>). Sem JS — ou se o script quebrar — a
   página aparece inteira em vez de ficar em branco. */
.js [data-anim]{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1);
  transition-delay:calc(var(--d,0) * 90ms);
}
.js [data-anim="line"]{transform:translateY(100%)}
.hero__title .line{overflow:hidden}
.js [data-anim].is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-anim]{opacity:1!important;transform:none!important;transition:none!important}
  .marquee__track{animation:none}
  .marquee__pin svg{animation:none}
  .cd-num.is-tick{animation:none}
  .hero__bg,.mentor__photo,.handshake__img{transform:none!important}
  *{transition-duration:.01ms!important}
}

/* ============================================================
   RESPONSIVO
   ============================================================ */

/* --- 1440 e abaixo: reduz calhas --- */
@media (max-width:1439px){
  :root{--gutter:64px;--section-gap:132px}
  .hero__content{padding:112px 64px 0}
  .hero__title{font-size:clamp(38px,3.9vw,55px);line-height:1.09}
  .hero__meta{padding:56px 64px 48px}
  .hero__meta span{width:25%;min-width:220px}
  .bento__h1{font-size:clamp(40px,4.8vw,68px);line-height:1.03}
  .bento__h2{font-size:clamp(30px,3.3vw,47px);line-height:1.08}
  .bento__h3{font-size:clamp(30px,3.7vw,52px);line-height:1.04}
  .bento__h4{font-size:clamp(26px,2.9vw,41px);line-height:1.1}
  .bento__h5{font-size:clamp(36px,4.7vw,67px);line-height:.97}
  .bento__sub{font-size:clamp(18px,2.2vw,32px);line-height:1.2}
  .bento__quote{font-size:clamp(19px,2vw,29px);line-height:1.05}
  .mentor__inner{padding-inline:64px}
  .footer__inner{padding:80px 48px 48px}
}

/* --- tablet grande --- */
@media (max-width:1180px){
  .dor__top{flex-direction:column;gap:40px}
  .dor__title{flex:none;max-width:none;font-size:clamp(34px,4.6vw,52px);line-height:1.1}
  .dor__copy{flex:none;max-width:none}
  .dor__list{margin-top:88px}
  .dor__item p{font-size:clamp(20px,2.5vw,32px);line-height:1.24}
  .abrir__grid{gap:56px}
  .depo__cards{gap:24px}
  .faq__row{flex-direction:column;gap:48px}
  .faq__accordion{flex:none;max-width:none}
  .registro{gap:56px}
  .heading{font-size:clamp(32px,4.4vw,52px);line-height:1.1}
  .countdown__label{font-size:clamp(28px,3.6vw,48px);line-height:1.1}
  .mentor__col h2{font-size:clamp(32px,4.4vw,52px);line-height:1.1}
}

/* --- tablet (768) --- */
@media (max-width:900px){
  :root{--gutter:40px;--wide-inset:16px;--section-gap:104px}

  .hero__card{border-radius:24px}
  .hero__content{padding:72px 40px 0;max-width:none}
  .hero__title{font-size:clamp(30px,5.1vw,42px)}
  .hero__quals{gap:20px;flex-direction:column}
  .hero__quals li{max-width:none}
  .signup{max-width:none}
  .hero__meta{padding:48px 40px 40px;gap:8px 24px}
  .hero__meta span{width:calc(50% - 12px);min-width:0;font-size:var(--text-base);line-height:24px}

  .marquee{margin-top:56px;height:88px}
  .marquee__pin{
    position:static;width:auto;height:auto;
    padding:14px 40px 0;background:transparent;
  }
  .marquee{height:auto;display:flex;flex-direction:column;padding-bottom:0}
  .marquee__viewport{height:72px;flex:none}

  .fatos{grid-template-columns:1fr 1fr;gap:32px}

  .countdown{flex-direction:column;align-items:center;gap:24px}
  .countdown__label{text-align:center}
  .countdown__boxes{gap:12px;width:100%}
  .cd-unit{width:auto;flex:1 1 0;height:84px}

  .bento__split{flex-direction:column}
  .bento__stack{flex:none}
  .bento__portrait{flex:none;aspect-ratio:16/13}
  .bento__macro{aspect-ratio:16/11}
  .bento__copper{aspect-ratio:auto;padding:40px}
  .bento__panorama{aspect-ratio:4/3}
  .bento__exploded{aspect-ratio:4/3}
  .bento__panorama .bento__copy{padding:40px;background:linear-gradient(180deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.75) 100%)}
  .bento__portrait .bento__copy{padding:40px}
  .bento__macro .bento__copy{padding:40px}
  .bento__exploded-inner{flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:24px;padding:40px;background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.85) 70%)}
  .bento__exploded-right{max-width:none}

  .abrir__grid{grid-template-columns:1fr;gap:44px;margin-top:56px}
  .abrir__item h3{font-size:clamp(22px,3.4vw,32px);line-height:1.3}

  .mentor{border-radius:32px}
  .mentor__inner{flex-direction:column;gap:44px;padding-inline:40px;padding-bottom:64px}
  .mentor__eyebrow{font-size:clamp(28px,5vw,45px);line-height:1.2}

  .depo__cards{grid-template-columns:1fr;gap:20px;margin-top:56px}

  .registro{flex-direction:column;gap:44px}
  .registro__left,.signup--registro{flex:none;width:100%}

  .cta-wrap{margin-top:56px}
  .btn--inline{width:100%}

  .footer{padding-inline:16px}
  .footer__inner{padding:64px 32px 40px;border-radius:24px}
  .footer__boxes{margin-bottom:56px;width:100%}
  .footer__rule{margin-top:56px}
  .footer__row{flex-direction:column;align-items:flex-start;gap:14px;font-size:var(--text-sm)}
}

/* --- mobile (390) --- */
@media (max-width:560px){
  :root{--gutter:24px;--wide-inset:12px;--section-gap:80px}

  .hero__content{padding:48px 24px 0}
  .hero__title{font-size:26px;line-height:31px}
  .hero__title{margin-top:32px}
  .signup{gap:18px;margin-top:36px}
  .signup__row{flex-direction:column;gap:18px}
  .field input{height:64px;font-size:var(--text-base)}
  .btn{height:56px;font-size:var(--text-base)}
  .signup__note{font-size:var(--text-xs);text-align:left}

  .hero__meta{padding:36px 24px 32px;gap:6px}
  .hero__meta span{width:100%;font-size:var(--text-sm);line-height:22px}

  .marquee__pin{padding:12px 24px 0}
  .marquee__pin span{font-size:11px;line-height:15px}
  .marquee__viewport{height:60px}
  .mq-item{font-size:var(--text-sm)}
  .marquee__group{gap:28px;padding-right:28px}

  .fatos{grid-template-columns:1fr;gap:28px}
  .fato h3{font-size:var(--text-xl);line-height:26px}

  .countdown__boxes{gap:8px}
  .cd-unit{height:72px;border-radius:20px}
  .cd-num{font-size:30px;line-height:32px}
  .cd-cap{font-size:11px;line-height:16px}

  .dor__item{gap:0;flex-wrap:wrap;padding-block:20px;min-height:0}
  .dor__num{width:64px}
  .dor__item p{font-size:19px;line-height:26px;flex:1 1 60%}
  .dor__x{margin-left:12px;width:18px;height:18px}
  .dor__item:hover{padding-left:0}

  .bento__panorama,.bento__exploded{aspect-ratio:3/4}
  .bento__portrait{aspect-ratio:3/4}
  .bento__macro{aspect-ratio:1/1}
  .bento__panorama .bento__copy,
  .bento__portrait .bento__copy,
  .bento__macro .bento__copy,
  .bento__exploded-inner{padding:24px}
  .bento__copper{padding:28px 24px;gap:12px}
  .bento__quote{font-size:17px;line-height:22px;padding:10px 14px}
  .bento__sub{font-size:16px;line-height:23px}
  .bento__macro .bento__sub{font-size:16px;line-height:23px}
  .bento__bar{width:96px;height:6px}

  .depo{padding:24px}
  .depo blockquote{font-size:var(--text-base);line-height:25px}

  .faq__item summary{font-size:17px;line-height:24px;padding-block:20px;gap:16px}
  .faq__answer p{font-size:var(--text-base);line-height:25px}

  .mentor__inner{padding-inline:24px;padding-bottom:48px}
  .mentor__pull{font-size:var(--text-xl);line-height:28px}
  .mentor__quote{font-size:var(--text-xl);line-height:28px;padding-left:20px}
  .mentor__proofs{margin-top:32px}

  .registro__fatos{margin-top:32px;gap:18px}
  .registro__fatos span{font-size:var(--text-base)}

  .closing__eight{margin-bottom:36px}
  .eight{width:34px;height:60px}
  .eight__dot{font-size:34px;line-height:34px}

  .footer__inner{padding:48px 24px 32px}
  .footer__wordmark{white-space:normal;font-size:clamp(30px,10vw,48px);line-height:1.02}
  .footer__boxes{margin-bottom:44px}
  .footer__rule{margin-top:44px}
}

/* ============================================================
   PARIDADE COM O PAPER
   Geometria final das pranchas 1905 / 1440 / 768 / 390.
   As regras ficam no fim para preservar as animações e os estados.
   ============================================================ */

.countdown--hero{
  position:absolute;z-index:5;left:50%;top:19px;transform:translateX(-50%);
  width:1101px;flex-wrap:nowrap;white-space:nowrap;
}
.countdown--hero .countdown__label{width:459px;flex-shrink:0}
.countdown--hero .countdown__boxes{width:626px;flex-shrink:0}

.cd-unit--arrow{background:#E4E4E1;color:#A2A29E}
.cd-unit--arrow svg{width:32px;height:16px}
.cd-unit--arrow:hover{color:var(--color-accent);background:#fff}

.registro__heading{display:flex;flex-direction:column;gap:28px;color:var(--color-on-dark)}
.registro__heading span{font-size:52px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px}
.registro__heading strong{font-size:113px;font-weight:500;letter-spacing:var(--tracking-h2);line-height:58px;white-space:nowrap}

.section--registro .container--wide{height:100%;padding:0}
.section--registro .registro{
  position:relative;height:100%;padding:64px;border-radius:32px;overflow:hidden;background:var(--color-ink);
}
.section--registro .registro__left{color:var(--color-on-dark)}
.section--registro .registro__left{height:382px}
.section--registro .registro__heading{height:170px;flex-shrink:0}
.section--registro .registro__fatos span{color:var(--color-on-dark)}
.section--registro .signup--registro .field input{border-color:#424242;color:var(--color-on-dark)}
.section--registro .signup--registro .field input:hover{border-color:#5c5c5c}
.section--registro .signup--registro .field label{background:var(--color-ink);color:var(--color-mute)}
.section--registro .signup--registro .signup__note{color:var(--color-on-dark-muted)}
.registro__curve{
  position:absolute;z-index:3;left:50%;display:none;overflow:visible;
  transform:translateX(-50%);pointer-events:none;
}
.mentor__eyebrow{position:relative;z-index:4}

@media (min-width:901px){
  .hero{height:1374px;padding-top:0;position:relative;overflow:hidden}
  .hero__card{height:1150px;margin-top:84px}
  .hero__bg{inset:auto;width:1812px;height:1101px;left:-22px;top:20px;background-position:50%}
  .hero__scrim{left:-405px;right:auto;width:1642px;height:1150px;background:linear-gradient(90deg,#161616 0%,rgba(22,22,22,.95) 42%,rgba(22,22,22,.78) 66%,rgba(22,22,22,.32) 86%,rgba(22,22,22,0) 100%)}
  .hero__content{position:absolute;left:80px;top:139px;width:1000px;height:812px;max-width:none;padding:0}
  .hero__meta{position:absolute;left:80px;right:80px;bottom:56px;padding:0}
  .marquee{position:absolute;left:0;right:0;top:1266px;height:108px;margin:0}

  .section--fatos{height:124px;margin-top:130px}
  .section--countdown{height:330px;margin-top:120px}
  .section--countdown .countdown{height:270px;flex-direction:column;align-items:flex-start;align-content:flex-start;gap:0;flex-wrap:nowrap}
  .section--countdown .countdown__boxes{width:100%;padding-top:48px}
  .section--dor{height:760px;margin-top:160px;overflow:hidden}
  .dor__list{margin-top:72px}

  .section--bento{height:1606px;margin-top:160px;overflow:hidden}
  .section--bento .container--wide{max-width:1392px;height:1606px;padding:24px;overflow:hidden}
  .bento__panorama{height:375px;aspect-ratio:auto;flex:none}
  .bento__split{height:787px;flex:none}
  .bento__portrait{height:787px;aspect-ratio:auto}
  .bento__stack{height:787px}
  .bento__macro{height:537px;aspect-ratio:auto}
  .bento__copper{height:238px;aspect-ratio:auto;flex:none}
  .bento__exploded{height:390px;aspect-ratio:auto;flex:none}

  .section--abrir{height:920px;margin-top:160px;overflow:visible}
  .section--abrir .container{height:100%;position:relative}
  .section--abrir .cta-wrap{position:absolute;left:0;right:0;bottom:0;margin:0}

  .section--mentor{height:1257px;margin-top:140px;position:relative}
  .mentor__eyebrow{height:58px;margin:0 0 -48px}
  .mentor{height:1247px;flex:none}
  .mentor__photo{height:754px;aspect-ratio:auto}
  .mentor__inner{left:64px;right:64px;top:754px;width:auto}
  .mentor__curve--desktop{
    display:block;width:841px;height:187px;left:calc(50% + 841px);top:97px;
    translate:-50% 0;rotate:180deg;transform-origin:0 0;
  }

  .section--depo{height:740px;margin-top:123px}
  .section--depo .container{height:100%;position:relative}
  .section--depo .cta-wrap{position:absolute;left:0;right:0;bottom:0;margin:0}
  .section--faq{height:440px;margin-top:160px}

  .handshake{height:651px;margin-top:0;z-index:4}
  .handshake__img{inset:0;background-position:50% 26.23%}

  .section--registro{height:558px;margin-top:-79px;position:relative;z-index:2}
  .section--registro .container--wide{max-width:1392px}
  .section--registro .registro{gap:64px}
  .registro__curve--desktop{display:block;width:646px;height:121px;top:465px}
  .registro__left{flex:0 0 600px}
  .registro__fatos{margin-top:48px;gap:20px}
  .signup--registro{flex:0 0 600px}

  .section--closing{height:623px;margin-top:-93px;position:relative;z-index:3}
  .section--closing .container{height:100%;position:relative}
  .closing__eight{position:absolute;left:0;right:0;top:0;margin:0}
  .section--closing .countdown{position:absolute;left:0;right:0;top:163px;height:330px;flex-direction:column;align-items:center;justify-content:center;align-content:flex-start;gap:0;flex-wrap:nowrap}
  .section--closing .countdown__boxes{width:100%;padding-top:48px}
  .section--closing .cta-wrap{position:absolute;left:0;right:0;top:563px;margin:0}

  .footer{height:996px;margin-top:56px;padding:0 24px 61px}
  .footer__inner{height:935px;max-width:1392px;padding:0}
  .footer__content{position:static}
  .footer__texture{inset:auto;width:1662px;height:2117px;left:-120px;top:-535px}
  .footer__glow{left:-72px;right:auto;top:-97px;width:1599px;height:1130px}
  .footer__boxes{position:absolute;right:38px;top:50px;width:626px;margin:0;gap:24px}
  .footer__wordmark{position:absolute;left:50%;top:667px;bottom:auto;translate:-50% 0;width:max-content;font-size:136px;line-height:100px}
  .footer__rule{position:absolute;left:96px;right:32px;top:801px;bottom:auto;width:auto;margin:0}
  .footer__row{position:absolute;left:96px;right:32px;top:845px;bottom:auto;width:auto;margin:0}
}

@media (min-width:1600px){
  :root{--gutter:112px;--content:1681px;--wide-inset:32px}
  .hero{height:1254px}
  .hero__card{max-width:1841px;height:1030px}
  .hero__bg{width:1688px;height:1026px;left:355px;top:-75px}
  .hero__scrim{width:1841px;height:1030px}
  .hero__content{top:110px}
  .hero__title{margin-top:42px;font-size:50px;line-height:54px}
  .hero__quals{margin-top:32px}
  .signup--hero{margin-top:38px}
  .hero__meta{bottom:40px}
  .hero__meta span{width:420px}
  .marquee{top:1146px}
  .section--bento{height:2142px}
  .section--bento .container--wide{max-width:1841px;height:2142px}
  .bento__panorama{height:500px}
  .bento__split{height:1050px}
  .bento__portrait{height:1050px;flex-basis:950px}
  .bento__stack{height:1050px;flex-basis:831px}
  .bento__macro{height:730px}
  .bento__copper{height:308px}
  .bento__exploded{height:520px}
  .section--abrir,.section--faq{margin-top:160px}
  .section--depo{margin-top:170px}
  .faq__row .heading{flex-basis:560px;max-width:none}
  .faq__accordion{flex-basis:1000px;width:1000px}
  .section--mentor{height:1210px}
  .mentor{max-width:1905px;height:1200px}
  .mentor__photo{height:754px}
  .mentor__inner{left:96px;right:96px;top:754px;width:auto}
  .mentor__curve--desktop{width:1113px;left:calc(50% + 1113px);top:105px}
  .handshake{height:755px;margin-top:0}
  .section--registro{margin-top:-84px}
  .section--registro .container--wide,.footer__inner{max-width:1841px}
  .section--registro .registro{padding:96px;gap:89px}
  .section--registro .registro__left{flex-basis:740px;width:740px}
  .section--registro .signup--registro{flex-basis:820px;width:820px}
  .footer{padding-inline:32px}
  .footer__texture{left:114px;top:-521px}
  .footer__glow{left:-37px;top:-21px;width:1903px;height:984px}
  .footer__boxes{right:31px;top:38px}
  .footer__wordmark{top:606px;font-size:182px;line-height:152px}
  .footer__rule{left:96px;right:96px;top:801px}
  .footer__row{left:96px;right:96px;top:845px}
}

@media (min-width:561px) and (max-width:900px){
  :root{--gutter:40px;--wide-inset:16px;--section-gap:96px}
  .hero{height:1486px;padding:0;position:relative;overflow:hidden}
  .countdown--hero{top:20px;width:726px;flex-direction:row;gap:16px}
  .countdown--hero .countdown__label{width:268px;font-size:32px;line-height:34px;white-space:nowrap}
  .countdown--hero .countdown__boxes{width:440px;gap:24px}
  .countdown--hero .cd-unit{width:117px;height:67px}
  .countdown--hero .cd-num{font-size:32px;line-height:32px}
  .countdown--hero .cd-cap{font-size:10px;line-height:12px}

  .hero__card{width:calc(100% - 32px);height:1220px;margin:107px 16px 0;border-radius:32px}
  .hero__bg{inset:auto;left:0;top:630px;width:759px;height:590px;background-position:86.505%}
  .hero__scrim{left:-405px;right:auto;top:0;width:736px;height:1150px}
  .hero__content{position:absolute;left:40px;top:0;width:656px;height:812px;padding:0;align-items:center;justify-content:center}
  .hero__title{width:656px;margin-top:48px;text-align:center;font-size:40px;line-height:42px}
  .hero__quals{width:656px;margin-top:40px;flex-direction:row;gap:48px;flex-wrap:nowrap}
  .hero__quals li{max-width:none;flex:1}
  .signup--hero{width:656px;margin-top:48px}
  .hero__meta{position:absolute;left:40px;right:40px;bottom:45px;padding:0;justify-content:center;gap:16px}
  .hero__meta span{width:320px;font-size:16px;line-height:29px;text-align:center}
  .marquee{position:absolute;left:0;right:0;top:1359px;height:108px;margin:0;display:block}
  .marquee__pin{position:absolute;width:400px;height:106px;padding:0 40px;background:var(--color-paper)}
  .marquee__viewport{height:108px}

  .section--fatos{height:260px;margin-top:77px}
  .fatos{grid-template-columns:1fr 1fr;gap:20px}
  .fato{height:112px;gap:18px}
  .fato__body{gap:14px}

  .section--countdown{height:195px;margin-top:107px}
  .section--countdown .countdown,.section--closing .countdown{height:195px;flex-direction:column;gap:24px}
  .countdown__label{font-size:32px;line-height:34px;text-align:center}
  .countdown__boxes{gap:12px}
  .cd-unit{width:117px;height:67px}
  .cd-num{font-size:32px;line-height:32px}
  .cd-cap{font-size:10px;line-height:12px}

  .section--dor{height:786px;margin-top:93px;overflow:hidden}
  .dor__top{gap:40px}
  .dor__list{margin-top:74px}
  .dor__item{height:96px;min-height:96px}

  .section--bento{height:1800px;margin-top:96px;overflow:hidden}
  .section--bento .container--wide{width:736px;height:1800px;padding:16px;overflow:hidden}
  .bento__panorama{height:340px;aspect-ratio:auto;flex:none}
  .bento__split{height:1020px;flex-direction:column;flex:none}
  .bento__portrait{height:500px;aspect-ratio:auto;flex:none}
  .bento__stack{height:508px;flex:none}
  .bento__macro{height:326px;aspect-ratio:auto;flex:none}
  .bento__copper{height:170px;aspect-ratio:auto;flex:none}
  .bento__exploded{height:360px;aspect-ratio:auto;flex:none}

  .section--abrir{height:1476px;margin-top:96px;overflow:hidden}
  .section--abrir .container{height:100%;position:relative}
  .abrir__grid{grid-template-columns:1fr;margin-top:64px;gap:44px}
  .section--abrir .cta-wrap{position:absolute;left:40px;right:40px;bottom:0;margin:0}

  .section--mentor{height:1339px;margin-top:96px;position:relative}
  .mentor__eyebrow{position:absolute;top:-10px;left:0;right:0;margin:0;text-align:center}
  .mentor{width:768px;height:1339px;border-radius:88px}
  .mentor__photo{height:420px;aspect-ratio:auto}
  .mentor__inner{left:64px;right:auto;top:450px;width:688px;padding:0;gap:48px}
  .mentor__curve--desktop{display:none}
  .mentor__curve--compact{
    display:block;width:536px;height:122px;left:calc(50% + 536px);top:68px;
    translate:-50% 0;rotate:180deg;transform-origin:0 0;
  }

  .section--depo{height:1329px;margin-top:96px;overflow:hidden}
  .section--depo .container{height:100%;position:relative}
  .depo__cards{grid-template-columns:1fr;margin-top:56px;gap:20px}
  .depo{min-height:300px}
  .section--depo .cta-wrap{position:absolute;left:40px;right:40px;bottom:0;margin:0}
  .section--faq{height:559px;margin-top:96px;overflow:hidden}
  .faq__row{width:688px;gap:48px}
  .faq__row .heading{width:688px;max-width:none;flex:none;font-size:40px;line-height:46px}
  .faq__accordion{width:688px;max-width:none;flex:none}

  .handshake{height:480px;margin-top:0;z-index:4}
  .handshake__img{inset:0;background-position:50% 29.425%}

  .section--registro{height:760px;margin-top:-78px;position:relative;z-index:2}
  .section--registro .container--wide{width:736px}
  .section--registro .registro{padding:48px 40px;gap:40px}
  .registro__curve--tablet{display:block;width:552px;height:110.229px;top:675px}
  .section--registro .registro__left{position:absolute;left:40px;top:48px;width:656px;height:382px;flex:none}
  .registro__heading{gap:12px}
  .registro__heading span{font-size:40px;line-height:46px}
  .registro__heading strong{font-size:113px;line-height:58px}
  .registro__fatos{margin-top:32px;gap:12px}
  .signup--registro{position:absolute;left:40px;top:360px;width:656px;height:299px;margin-top:0;white-space:nowrap;flex:none}

  .section--closing{height:288px;margin-top:-85px;position:relative;z-index:3}
  .section--closing .container{height:100%;position:relative}
  .closing__eight{position:absolute;top:0;left:0;right:0;margin:0}
  .section--closing .countdown{position:absolute;top:147px;left:0;right:0}
  .section--closing .cta-wrap{position:absolute;top:378px;left:0;right:0;margin:0}

  .footer{height:966px;margin-top:181px;padding:0 16px 31px}
  .footer__inner{height:935px;padding:0}
  .footer__content{position:static}
  .footer__texture{inset:auto;width:1382px;height:1760px;left:-337px;top:-274px}
  .footer__glow{left:-14px;right:auto;top:-49px;width:781px;height:1044px}
  .footer__boxes{position:absolute;left:55px;top:72px;width:626px;margin:0;gap:24px}
  .footer__wordmark{position:absolute;left:50%;top:702px;bottom:auto;translate:-50% 0;width:max-content;font-size:72px;line-height:56px;white-space:nowrap}
  .footer__rule{position:absolute;left:50%;right:auto;top:801px;bottom:auto;width:688px;translate:-50% 0;margin:0}
  .footer__row{position:absolute;left:50%;right:auto;top:834px;bottom:auto;width:417px;margin:0;transform:translateX(-50%);flex-direction:column;align-items:center;gap:24px;font-size:var(--text-base);line-height:22px}
}

@media (max-width:560px){
  :root{--gutter:20px;--wide-inset:12px;--section-gap:0}
  .hero{height:1476px;padding:0;position:relative;overflow:hidden}
  .countdown--hero{top:25px;width:350px;flex-direction:column;gap:5px}
  .countdown--hero .countdown__label{width:173px;font-size:18px;line-height:24px;flex-shrink:0}
  .countdown--hero .countdown__boxes{width:326px;gap:24px}
  .countdown--hero .cd-unit{width:76px;height:42px}

  .hero__card{width:366px;height:1163px;margin:81px auto 0;border-radius:32px}
  .hero__bg{inset:auto;left:-91px;top:714px;width:563px;height:436px;background-position:86.505%}
  .hero__scrim{left:-405px;right:auto;top:0;width:366px;height:1150px}
  .hero__content{position:absolute;left:20px;top:28px;width:326px;height:699px;padding:0;align-items:center;justify-content:center}
  .badge{height:31px;padding:9px 18px 9px 14px}
  .badge span:last-child{font-size:9px;line-height:18px}
  .hero__title{width:342px;margin-top:28px;text-align:center;font-size:22px;line-height:24px}
  .hero__title .line:nth-child(-n+3){font-size:24px}
  .hero__quals{width:326px;margin-top:11px;gap:10px;flex-direction:row;flex-wrap:nowrap}
  .hero__quals li{max-width:none;gap:3px;flex:1}
  .hero__quals svg{width:11px;height:11px;margin-top:5px}
  .hero__quals span{font-size:8px;line-height:22px;white-space:nowrap}
  .signup--hero{width:326px;margin-top:28px;gap:22px}
  .signup--hero .field input{height:76px}
  .signup--hero .signup__note{font-size:8px;line-height:21px;white-space:nowrap}
  .signup__row{gap:20px}
  .hero__meta{position:absolute;left:10px;right:10px;top:1116px;padding:0;justify-content:center;gap:12px 2px}
  .hero__meta span{width:auto;font-size:8px;line-height:17px;text-align:center;padding-inline:5px}
  .marquee{position:absolute;left:0;right:0;top:1292px;height:154px;margin:0;display:block}
  .marquee__pin{position:absolute;left:0;top:72px;width:390px;height:80px;padding:12px 20px;background:var(--color-paper)}
  .marquee__viewport{height:72px}

  .section--fatos{height:154px;margin-top:54px;overflow:hidden}
  .fatos{grid-template-columns:1fr 1fr;gap:14px}
  .fato{height:70px;display:flex;flex-direction:row;gap:8px;align-items:flex-start}
  .fato__icon{width:16px;height:16px;flex:none}
  .fato__body{gap:8px;flex:1}
  .fato h3{font-size:12px;line-height:16px;letter-spacing:-.03em}

  .section--countdown{height:71px;margin-top:45px}
  .section--countdown .countdown,.section--closing .countdown{height:71px;flex-direction:column;gap:5px;flex-wrap:nowrap}
  .countdown__label{font-size:18px;line-height:24px}
  .countdown__boxes{gap:8px;width:auto}
  .cd-unit{width:76px;height:42px;gap:4px}
  .cd-num{font-size:16px;line-height:16px;height:22px;display:flex;align-items:center}
  .cd-cap{font-size:8px;line-height:8px}

  .section--dor{height:841px;margin-top:45px;overflow:hidden}
  .dor__top{gap:40px}
  .dor__title{font-size:28px;line-height:34px;letter-spacing:var(--tracking-h2)}
  .dor__copy{gap:18px;padding:0 15px 0 0}
  .dor__copy p{font-size:14px;line-height:18px}
  .dor__list{margin-top:39px}
  .dor__item{height:112px;min-height:112px;padding:20px 0;flex-wrap:nowrap}
  .dor__num{width:61px;font-size:14px}
  .dor__item p{font-size:14px;line-height:14px;flex:0 0 238px}
  .dor__x{width:24px;height:24px;margin-left:auto}

  .section--bento{height:1374px;margin-top:0;overflow:hidden}
  .section--bento .container--wide{width:calc(100% - 24px);height:1374px;padding:8px;overflow:hidden}
  .bento{width:100%}
  .bento__panorama{height:220px;aspect-ratio:auto;flex:none}
  .bento__split{height:814px;flex-direction:column;flex:none}
  .bento__portrait{height:400px;aspect-ratio:auto;flex:none}
  .bento__stack{height:402px;flex:none}
  .bento__macro{height:260px;aspect-ratio:auto;flex:none}
  .bento__copper{height:130px;aspect-ratio:auto;flex:none;padding:20px 24px}
  .bento__exploded{height:260px;aspect-ratio:auto;flex:none}
  .bento__panorama .bento__copy,.bento__portrait .bento__copy,.bento__macro .bento__copy{padding:24px}
  .bento__h1{font-size:32px;line-height:34px}
  .bento__h2{font-size:27px;line-height:30px}
  .bento__h3{font-size:29px;line-height:31px}
  .bento__h4{font-size:18px;line-height:23px}
  .bento__h5{font-size:34px;line-height:34px}
  .bento__sub,.bento__macro .bento__sub{font-size:14px;line-height:18px}
  .bento__quote{font-size:16px;line-height:21px}
  .bento__exploded-inner{width:486px;padding:24px;justify-content:flex-start}
  .bento__exploded-right{font-size:14px;line-height:20px}

  .section--abrir{height:1114px;margin-top:0;overflow:hidden}
  .section--abrir .container{height:100%;position:relative}
  .heading{font-size:28px;line-height:34px}
  .abrir__grid{display:flex;flex-direction:column;margin-top:48px;gap:0}
  .abrir__item{height:auto;min-height:207px;padding-top:28px;gap:22px}
  .abrir__item:nth-child(1){min-height:225px}
  .abrir__item:nth-child(2){min-height:243px}
  .abrir__item:nth-child(4){min-height:163px}
  .abrir__item h3{font-size:20px;line-height:28px}
  .abrir__item p{font-size:16px;line-height:25px}
  .section--abrir .cta-wrap{position:absolute;left:0;right:0;bottom:0;margin:0}

  .section--mentor{height:1069px;margin-top:0;position:relative}
  .mentor__eyebrow{display:none}
  .mentor{width:390px;height:1069px;border-radius:44px}
  .mentor__photo{left:-8px;width:406px;height:214px;aspect-ratio:auto;background-position:50% 22%}
  .mentor::after{top:100px;height:140px}
  .mentor__inner{left:20px;right:auto;top:240px;width:350px;height:auto;padding:0;gap:48px}
  .mentor__curve--desktop{display:none}
  .mentor__curve--compact{display:none}
  .mentor__col h2{font-size:28px;line-height:34px}
  .mentor__p{font-size:16px;line-height:16px}
  .mentor__col h2 + .mentor__p{margin-top:36px}
  .mentor__pull{font-size:16px;line-height:16px;margin-top:26px}
  .mentor__pull + .mentor__p{margin-top:26px}
  .mentor__quote{font-size:24px;line-height:34px}
  .mentor__proofs{margin-top:48px}
  .mentor__proofs span{font-size:14px;line-height:14px}

  .section--depo{height:1573px;margin-top:57px;overflow:hidden}
  .section--depo .container{height:100%;position:relative}
  .depo__cards{display:flex;flex-direction:column;margin-top:48px;gap:18px}
  .depo{height:424px;min-height:424px;padding:40px;gap:28px}
  .depo:nth-child(2){height:453px;min-height:453px}
  .depo blockquote{font-size:18px;line-height:29px}
  .section--depo .cta-wrap{position:absolute;left:0;right:0;bottom:0;margin:0}

  .section--faq{height:593px;margin-top:56px;overflow:hidden}
  .faq__row{width:350px;gap:48px}
  .faq__row .heading{width:350px;max-width:none;flex:none;text-align:center;font-size:28px;line-height:34px}
  .faq__accordion{width:350px;max-width:none;flex:none}
  .faq__q{height:78px;min-height:0;padding:0 36px 0 44px;font-size:18px;line-height:18px}
  .faq__item.is-open .faq__q{height:28px;padding:0;font-size:20px;line-height:28px}
  .faq__answer p{padding:16px 0 0;font-size:18px;line-height:18px}

  .handshake{height:236px;margin-top:0;z-index:4}
  .handshake__img{inset:0;width:600px;left:50%;transform:translateX(-50%)!important;background-position:50% 29.425%}

  .section--registro{height:828px;margin-top:-40px;position:relative;z-index:2}
  .section--registro .container--wide{width:366px}
  .section--registro .registro{display:block;padding:0;border-radius:32px}
  .registro__curve--mobile{display:block;width:320px;height:60px;top:784px}
  .section--registro .registro__left{position:absolute;left:20px;top:48px;width:326px}
  .section--registro .registro__left{height:276px}
  .section--registro .registro__heading{height:100px}
  .registro__heading{gap:6px}
  .registro__heading span{font-size:28px;line-height:34px}
  .registro__heading strong{font-size:61px;line-height:60px}
  .registro__fatos{margin-top:48px;gap:8px}
  .registro__fatos li{gap:16px}
  .registro__fatos span{font-size:16px;line-height:26px}
  .signup--registro{position:absolute;left:20px;top:360px;width:326px;gap:22px}
  .signup--registro{margin-top:0}
  .signup--registro .field input{height:76px}
  .signup--registro .btn{height:60px}
  .signup--registro .signup__note{font-size:8px;line-height:14px;white-space:nowrap}

  .section--closing{height:263px;margin-top:-30px;position:relative;z-index:3}
  .section--closing .container{height:100%;position:relative}
  .closing__eight{position:absolute;left:0;right:0;top:0;margin:0}
  .section--closing .cta-wrap{position:absolute;left:0;right:0;top:92px;margin:0}
  .section--closing .countdown{position:absolute;left:0;right:0;top:192px}

  .footer{height:650px;margin-top:52px;padding:0 12px 30px}
  .footer__inner{width:366px;height:620px;padding:0;border-radius:32px}
  .footer__content{position:static}
  .footer__texture{inset:auto;width:886px;height:1129px;left:-256px;top:-150px}
  .footer__glow{left:-89px;right:auto;top:7px;width:509px;height:643px}
  .footer__boxes{position:absolute;left:21px;top:26px;width:320px;margin:0;gap:10px}
  .footer__boxes .cd-unit{width:100px;height:62px}
  .footer__boxes .cd-num{font-size:24px;line-height:28px;height:24px}
  .footer__boxes .cd-cap{font-size:10px;line-height:14px}
  .footer__wordmark{position:absolute;left:50%;top:473px;width:max-content;translate:-50% 0;font-size:37px;line-height:30px;white-space:nowrap}
  .footer__rule{position:absolute;left:22px;top:522px;width:328px;margin:0}
  .footer__row{position:absolute;left:50%;top:542px;width:260px;margin:0;transform:translateX(-50%);align-items:center;gap:13px;font-size:8px;line-height:17px}
  .footer__nav{gap:24px}
  .btn--inline{width:325px}
}

/* Em monitores Full HD, replica a densidade visual do navegador a 75%. */
@media (min-width:1800px) and (max-width:2200px){
  body{zoom:.75}
  .hero__card{max-width:2050px}
  .hero__content{left:130px}
  .hero__meta{left:130px}
  .handshake{height:960px}
  .handshake__img{background-position:50% 50%}
}

/* ============================================================
   INTERVALOS FLUIDOS
   As pranchas do Paper continuam sendo os pontos de referência,
   mas os tamanhos intermediários não herdam mais larguras rígidas.
   ============================================================ */

html,body{max-width:100%;overflow-x:clip}

/* Entre o desktop 1440 e o Full HD, mantém a densidade do layout
   de 1440. Evita o salto para a geometria de 1905 já em 1600px. */
@media (min-width:1600px) and (max-width:1799px){
  :root{--gutter:88px;--content:1264px;--wide-inset:24px}
  .hero{height:1374px}
  .hero__card{max-width:1392px;height:1150px}
  .hero__bg{width:1812px;height:1101px;left:-22px;top:20px}
  .hero__scrim{width:1642px;height:1150px}
  .hero__content{top:139px}
  .hero__title{margin-top:48px;font-size:55px;line-height:60px}
  .hero__quals{margin-top:40px}
  .signup--hero{margin-top:48px}
  .hero__meta{bottom:56px}
  .hero__meta span{width:308px}
  .marquee{top:1266px}

  .section--bento{height:1606px}
  .section--bento .container--wide{max-width:1392px;height:1606px}
  .bento__panorama{height:375px}
  .bento__split{height:787px}
  .bento__portrait{height:787px;flex-basis:710px}
  .bento__stack{height:787px;flex-basis:622px}
  .bento__macro{height:537px}
  .bento__copper{height:238px}
  .bento__exploded{height:390px}

  .faq__row .heading{flex-basis:440px;max-width:440px}
  .faq__accordion{flex-basis:744px;width:744px}
  .section--mentor{height:1257px}
  .mentor{max-width:1440px;height:1247px}
  .mentor__inner{left:64px;right:64px}
  .mentor__curve--desktop{width:841px;left:calc(50% + 841px);top:97px}
  .handshake{height:651px}

  .section--registro{margin-top:-79px}
  .section--registro .container--wide,.footer__inner{max-width:1392px}
  .section--registro .registro{padding:64px;gap:64px}
  .section--registro .registro__left{flex-basis:600px;width:auto}
  .section--registro .signup--registro{flex-basis:600px;width:auto}

  .footer{padding-inline:24px}
  .footer__texture{left:-120px;top:-535px}
  .footer__glow{left:-72px;top:-97px;width:1599px;height:1130px}
  .footer__boxes{right:38px;top:50px}
  .footer__wordmark{top:667px;font-size:136px;line-height:100px}
  .footer__rule{left:96px;right:32px;top:801px}
  .footer__row{left:96px;right:32px;top:845px}
}

/* Desktop compacto e notebooks: colunas e conteúdo encolhem de
   forma contínua entre 1440 e o breakpoint de tablet. */
@media (min-width:901px) and (max-width:1439px){
  :root{
    --fluid-gutter:clamp(40px,6.1vw,88px);
    --gutter:var(--fluid-gutter);
  }
  .container{max-width:none;padding-inline:var(--fluid-gutter)}
  .hero__card{width:calc(100% - 48px)}
  .hero__content{
    left:clamp(48px,5.56vw,80px);
    width:min(69.45vw,1000px);
  }
  .hero__title{font-size:clamp(36px,3.82vw,55px);line-height:1.09}
  .signup--hero{width:100%;max-width:820px}
  .hero__meta{left:clamp(48px,5.56vw,80px);right:clamp(48px,5.56vw,80px)}
  .hero__meta span{width:25%;min-width:0;font-size:clamp(13px,1.25vw,18px)}

  .section--bento .container--wide{width:calc(100% - 48px);max-width:none}
  .bento__stack{flex-basis:46.28%}
  .bento__portrait{flex-basis:auto}

  .section--registro .container--wide{width:calc(100% - 48px);max-width:none}
  .section--registro .registro{
    padding:clamp(40px,4.45vw,64px);
    gap:clamp(36px,4.45vw,64px);
  }
  .section--registro .registro__left,
  .section--registro .signup--registro{flex:1 1 0;width:auto;min-width:0}
  .registro__heading span{font-size:clamp(38px,3.62vw,52px);line-height:1.1}
  .registro__heading strong{font-size:clamp(70px,7.85vw,113px);line-height:.7}
  .registro__fatos span{font-size:clamp(14px,1.25vw,18px)}

  .footer__inner{width:calc(100% - 48px);max-width:none}
}

/* No trecho em que o conteúdo passa de duas para uma coluna,
   as seções deixam de depender de alturas fixas para não colidir. */
@media (min-width:901px) and (max-width:1180px){
  .section--dor,
  .section--abrir,
  .section--depo,
  .section--faq{height:auto;min-height:440px;overflow:visible}
  .section--abrir .container,
  .section--depo .container{height:auto}
  .section--abrir .cta-wrap,
  .section--depo .cta-wrap{position:static;margin-top:64px}
  .section--depo{padding-bottom:24px}
  .depo__cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .depo:last-child{grid-column:1/-1}
  .faq__row{width:100%;flex-direction:column}
  .faq__row .heading{width:100%;max-width:560px;flex:none}
  .faq__accordion{width:100%;flex:none}
}

@media (min-width:901px) and (max-width:1050px){
  .section--mentor{height:auto;min-height:1257px;overflow:visible}
  .mentor{height:auto;min-height:1247px}
  .mentor__inner{
    position:relative;left:auto;right:auto;top:auto;width:auto;
    margin:754px clamp(48px,6.1vw,64px) 0;padding-bottom:64px;
  }
}

/* Tablet: medidas máximas iguais às do Paper em 768px, mas sem
   transbordar em 600, 640, 800 ou 900px. */
@media (min-width:561px) and (max-width:900px){
  .countdown--hero{width:calc(100% - 40px);max-width:726px}
  .countdown--hero .countdown__label{width:36.91%}
  .countdown--hero .countdown__boxes{width:auto;flex:1 1 0;min-width:0}
  .countdown--hero .cd-unit{width:auto;flex:1 1 0}

  .hero__content{left:clamp(24px,5.2vw,40px);right:clamp(24px,5.2vw,40px);width:auto}
  .hero__title,.hero__quals,.signup--hero{width:100%}
  .hero__title{font-size:clamp(32px,5.2vw,40px)}
  .hero__quals{gap:clamp(20px,6.25vw,48px)}
  .hero__bg{width:clamp(563px,98.83vw,759px);left:50%;transform:translateX(-50%)!important}
  .hero__scrim{left:0;width:100%}
  .hero__meta{left:clamp(24px,5.2vw,40px);right:clamp(24px,5.2vw,40px)}
  .hero__meta span{width:calc(50% - 8px)}

  .section--bento .container--wide,
  .section--registro .container--wide,
  .footer__inner{width:calc(100% - 32px);max-width:736px}
  .faq__row,.faq__row .heading,.faq__accordion{width:100%}

  .mentor{width:100%;max-width:768px}
  .mentor__inner{left:clamp(40px,8.33vw,64px);right:clamp(40px,8.33vw,64px);width:auto}

  .section--registro .registro__left,
  .signup--registro{left:40px;right:40px;width:auto}

  .footer__boxes{left:clamp(32px,7.16vw,55px);right:clamp(32px,7.16vw,55px);width:auto}
  .footer__wordmark{font-size:clamp(52px,9.38vw,72px)}
  .footer__rule{left:40px;right:40px;width:auto;translate:0 0}
  .footer__row{width:min(417px,calc(100% - 80px))}
}

/* Tablets estreitos usam fluxo normal nas áreas longas. */
@media (min-width:561px) and (max-width:719px){
  .section--abrir,.section--mentor,.section--depo,.section--faq,.section--registro{
    height:auto;overflow:visible;
  }
  .section--abrir .container,.section--depo .container{height:auto}
  .section--abrir .cta-wrap,.section--depo .cta-wrap{position:static;margin-top:56px}
  .section--abrir,.section--depo{padding-bottom:24px}

  .mentor{height:auto;min-height:1339px}
  .mentor__photo{height:clamp(320px,54.69vw,420px)}
  .mentor__inner{
    position:relative;left:auto;right:auto;top:auto;width:auto;
    margin:clamp(350px,58.6vw,450px) 40px 0;padding-bottom:64px;
  }

  .section--registro .registro{height:auto;display:flex;padding:48px 40px 64px}
  .section--registro .registro__left,.signup--registro{
    position:static;width:100%;height:auto;white-space:normal;
  }
  .section--registro .registro__heading{height:auto}
  .registro__curve--tablet{top:auto;bottom:-25px}

  .section--closing{height:auto;min-height:360px;margin-top:0;padding-block:48px}
  .section--closing .container{height:auto;display:flex;flex-direction:column;align-items:center;gap:36px}
  .closing__eight,.section--closing .countdown,.section--closing .cta-wrap{
    position:static;margin:0;width:100%;
  }
}

/* Mobile fluido: preserva a composição de 390px e ocupa corretamente
   320, 360, 375, 414, 430, 480 e 560px. */
@media (max-width:560px){
  :root{--gutter:clamp(16px,5.13vw,20px)}
  .container{padding-inline:var(--gutter)}

  .countdown--hero{width:calc(100% - 40px);max-width:350px}
  .countdown--hero .countdown__boxes{width:100%;gap:clamp(8px,6.15vw,24px)}
  .countdown--hero .cd-unit{width:auto;flex:1 1 0;min-width:0}

  .hero__card{width:calc(100% - 24px);max-width:536px}
  .hero__content{left:20px;right:20px;width:auto}
  .hero__title,.hero__quals,.signup--hero{width:100%;max-width:none}
  .hero__title{font-size:clamp(20px,5.64vw,24px)}
  .hero__title .line:nth-child(-n+3){font-size:clamp(22px,6.15vw,26px)}
  .hero__quals span{white-space:normal;line-height:12px}
  .hero__bg{left:50%;width:145%;transform:translateX(-50%)!important}
  .hero__scrim{
    left:0;width:100%;
    background:linear-gradient(
      180deg,
      #161616 0%,
      #161616 52%,
      rgba(22,22,22,.82) 61%,
      rgba(22,22,22,.20) 71%,
      rgba(22,22,22,0) 80%
    );
  }
  .hero__meta{left:10px;right:10px}
  .marquee__pin{top:0;width:100%}
  .marquee__viewport{position:absolute;left:0;right:0;top:80px;height:72px}

  .section--bento .container--wide,
  .section--registro .container--wide,
  .footer__inner{width:calc(100% - 24px);max-width:536px}
  .bento__exploded-inner{width:100%}
  .dor__item p{flex:1 1 0;min-width:0}

  .section--abrir,.section--mentor,.section--depo,.section--faq,.section--registro{
    height:auto;overflow:visible;
  }
  .section--abrir,.section--depo{min-height:0;padding-bottom:56px}
  .section--abrir .container,.section--depo .container{height:auto}
  .section--abrir .cta-wrap,.section--depo .cta-wrap{position:static;margin-top:48px}
  .abrir__item,
  .abrir__item:nth-child(1),
  .abrir__item:nth-child(2),
  .abrir__item:nth-child(4){
    min-height:0;
    padding:34px 0 38px;
    gap:20px;
  }
  .abrir__item h3{line-height:30px}
  .abrir__item p{margin-top:0;line-height:27px;padding-bottom:4px}

  .mentor{width:100%;height:auto;min-height:1069px}
  .mentor__photo{width:calc(100% + 16px)}
  .mentor__inner{
    position:relative;left:auto;right:auto;top:auto;width:auto;
    margin:240px 20px 0;padding:0 0 48px;
  }

  .faq__row,.faq__row .heading,.faq__accordion{width:100%}
  .faq__q{padding-inline:clamp(22px,8vw,44px)}

  .handshake{height:clamp(200px,60.51vw,300px)}
  .handshake__img{
    left:0;right:0;width:auto;transform:none!important;
    background-size:cover;background-position:50% 50%;background-repeat:no-repeat;
  }

  .section--registro{min-height:0;margin-top:-40px}
  .section--registro .registro{
    display:flex;flex-direction:column;height:auto;
    padding:48px 20px 64px;gap:36px;
  }
  .section--registro .registro__left,.signup--registro{
    position:static;width:100%;height:auto;white-space:normal;
  }
  .section--registro .registro__heading{height:auto}
  .registro__curve--mobile{top:auto;bottom:-18px;width:min(320px,88%)}

  .section--closing{height:auto;min-height:284px;margin-top:0;padding:8px 0 44px}
  .section--closing .container{height:auto;display:flex;flex-direction:column;align-items:center;gap:32px}
  .closing__eight,.section--closing .countdown,.section--closing .cta-wrap{
    position:static;margin:0;width:100%;
  }
  .section--closing .cta-wrap{order:1}
  .section--closing .countdown{order:2}

  .footer{height:auto;min-height:650px}
  .footer__inner{height:620px}
  .footer__boxes{left:20px;right:20px;width:auto}
  .footer__boxes .cd-unit{width:auto;flex:1 1 0;min-width:0}
  .footer__wordmark{font-size:clamp(30px,9.49vw,48px)}
  .footer__rule{left:22px;right:22px;width:auto}
  .footer__row{width:min(300px,calc(100% - 44px))}
  .btn--inline{width:min(325px,100%)}
}

/* Transição da foto do mentor para o fundo da seção. */
.mentor__photo::after{
  content:"";
  position:absolute;z-index:1;left:0;right:0;bottom:-1px;
  height:220px;pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(22,22,22,0) 0%,
    rgba(22,22,22,.18) 34%,
    rgba(22,22,22,.72) 72%,
    var(--color-ink) 100%
  );
}

@media (max-width:900px){
  .mentor__photo::after{height:140px}
}

@media (max-width:560px){
  .mentor__photo::after{height:88px}
}

@media (min-width:901px){
  .closing__eight{top:24px}
}

/* Contadores internos — proporções das pranchas Desktop 1440/1905. */
@media (min-width:901px) and (max-width:1799px){
  .section--countdown .countdown__boxes,
  .section--closing .countdown__boxes{gap:24px}

  .section--countdown .cd-unit,
  .section--closing .cd-unit{
    width:calc((100% - 72px)/4);
    height:170px;
    flex:0 0 calc((100% - 72px)/4);
    gap:10px;
  }
  .section--countdown .cd-num,
  .section--closing .cd-num{height:auto;font-size:64px;line-height:64px}
  .section--countdown .cd-cap,
  .section--closing .cd-cap{font-size:14px;line-height:20px}
  .section--countdown .cd-unit--arrow svg,
  .section--closing .cd-unit--arrow svg{width:104px;height:48px}
}

@media (min-width:1800px){
  .section--countdown .countdown{height:310px}
  .section--countdown .countdown__boxes,
  .section--closing .countdown__boxes{gap:24px}

  .section--countdown .cd-unit,
  .section--closing .cd-unit{
    width:402px;
    height:210px;
    flex:0 0 402px;
    gap:10px;
  }
  .section--countdown .cd-num,
  .section--closing .cd-num{height:auto;font-size:80px;line-height:84px}
  .section--countdown .cd-cap,
  .section--closing .cd-cap{font-size:14px;line-height:20px}
  .section--countdown .cd-unit--arrow svg,
  .section--closing .cd-unit--arrow svg{width:104px;height:48px}
}
