  :root{
    color-scheme: light;
    --paper:#F7FAFC;
    --paper-2:#EFF4F7;
    --ink:#16232B;
    --ink-soft:#3B4B54;
    --petroleo:#007C91;
    --petroleo-deep:#0B3A45;
    --petroleo-deep-2:#0F4E5C;
    --turquesa:#0F9E7C;
    --verde:#3F9444;
    --line:#D7E0E6;
    --line-soft:#E4E8EF;
    --white:#FFFFFF;
    --radius:16px;
    --radius-pill:999px;
    --cta-gradient:linear-gradient(120deg, var(--turquesa) 0%, var(--petroleo-deep) 78%);
    --cta-gradient-hover:linear-gradient(120deg, var(--turquesa) 0%, var(--petroleo) 78%);
    --maxw:1320px;
    --serif: "Source Serif 4", Georgia, serif;
    --sans: "IBM Plex Sans", -apple-system, Segoe UI, sans-serif;
    --mono: "IBM Plex Mono", monospace;
    /* Altura real do cabecalho sticky. app.js remede a cada resize;
       este valor e o fallback de antes do JS rodar. */
    --header-h:114px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:var(--sans);
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;}
  h1,h2,h3{font-family:var(--serif);font-weight:600;color:var(--ink);margin:0;letter-spacing:-0.01em;text-wrap:balance;}
  p{margin:0;}
  ul{margin:0;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding-inline:28px;}
  :focus-visible{outline:2px solid var(--petroleo);outline-offset:3px;}
  /* O cabecalho fica por cima do conteudo, entao a ancora precisa parar
     abaixo dele, com respiro. Sem isso o link corta o topo da secao. */
  section[id]{scroll-margin-top:calc(var(--header-h) + 28px);}
  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.001ms !important; transition-duration:0.001ms !important;}
    html{scroll-behavior:auto;}
  }

  .reveal{opacity:0;transform:translateY(18px);transition:opacity 0.8s cubic-bezier(0.22,1,0.36,1), transform 0.8s cubic-bezier(0.22,1,0.36,1);}
  .reveal.is-visible{opacity:1;transform:translateY(0);}
  .reveal-group.is-visible .reveal-item{opacity:1;transform:translateY(0);}
  .reveal-item{opacity:0;transform:translateY(14px);transition:opacity 0.7s cubic-bezier(0.22,1,0.36,1), transform 0.7s cubic-bezier(0.22,1,0.36,1);}
  @media (prefers-reduced-motion: reduce){
    .reveal, .reveal-item{opacity:1 !important;transform:none !important;}
  }

  /* ---------- COUNTDOWN ---------- */
  .countdown-banner{background:var(--petroleo-deep);color:var(--white);}
  .countdown-banner .wrap{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding-block:9px;font-size:0.82rem;}
  .cd-label{color:rgba(255,255,255,0.78);}
  .cd-timer{display:flex;align-items:baseline;gap:6px;font-family:var(--mono);font-weight:500;letter-spacing:0.01em;}
  .cd-unit{display:flex;align-items:baseline;gap:3px;}
  .cd-unit b{font-size:0.95rem;font-weight:600;}
  .cd-unit span{font-size:0.68rem;color:rgba(255,255,255,0.68);}
  .cd-sep{color:rgba(255,255,255,0.4);}

  /* ---------- MASTHEAD ---------- */
  .site-header{position:sticky;top:0;z-index:20;}
  .masthead{border-bottom:1px solid var(--line);background:rgba(247,250,252,0.92);backdrop-filter:blur(8px);}
  .masthead .wrap{display:flex;align-items:center;justify-content:space-between;padding-block:16px;gap:16px;}
  .brand{display:flex;align-items:center;flex:none;}
  /* 42px keeps the row height driven by the CTA button (44px), so the navbar height is unchanged */
  .brand-logo{height:42px;width:auto;max-width:none;flex:none;}
  .masthead-cta{font-family:var(--sans);font-weight:600;font-size:0.86rem;background:var(--cta-gradient);color:var(--white);padding:11px 20px;border-radius:var(--radius-pill);text-decoration:none;white-space:nowrap;transition:transform 0.15s ease;box-shadow:0 1px 2px rgba(11,58,69,0.18);}
  .masthead-cta:hover{transform:translateY(-1px);}

  /* ---------- BUTTONS / LABELS (shared) ---------- */
  .btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--white);color:var(--petroleo-deep);font-family:var(--sans);font-weight:600;font-size:1rem;padding:16px 30px;text-decoration:none;border-radius:var(--radius-pill);transition:transform 0.15s ease, box-shadow 0.2s ease;box-shadow:0 4px 14px rgba(0,0,0,0.2);}
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,0.26);}
  .btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--white);border:1px solid rgba(255,255,255,0.35);font-family:var(--sans);font-weight:600;font-size:0.92rem;padding:13px 24px;border-radius:var(--radius-pill);text-decoration:none;transition:background 0.2s ease;}
  .btn-ghost:hover{background:rgba(255,255,255,0.08);}
  .eyebrow{font-family:var(--sans);font-weight:600;letter-spacing:0.01em;font-size:0.76rem;color:var(--petroleo-deep);background:var(--paper-2);border:1px solid var(--line);display:inline-block;padding:6px 13px;border-radius:var(--radius-pill);}
  .eyebrow.on-dark{color:var(--white);background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.18);}
  .hl{background:linear-gradient(180deg, transparent 62%, #BFE8DC 62%);padding:0 1px;font-weight:600;color:var(--ink);}

  /* ---------- HERO ---------- */
  .hero{background:var(--petroleo-deep);position:relative;overflow:hidden;padding-top:52px;padding-bottom:0;}
  .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 80% 15%, rgba(15,158,124,0.25), transparent 70%);pointer-events:none;}
  .hero .wrap{position:relative;display:grid;grid-template-columns:0.82fr 1.18fr;gap:32px;min-height:480px;}
  .hero-copy{align-self:start;padding-top:8px;color:var(--white);}
  .hero-copy .eyebrow{margin-bottom:24px;}
  .hero-copy .eyebrow b{color:var(--white);}
  .hero h1{font-size:clamp(2rem, 1.35rem + 2.6vw, 3.1rem);line-height:1.1;color:var(--white);max-width:23ch;}
  .hero .lede{margin-top:22px;font-size:1.15rem;color:rgba(255,255,255,0.78);max-width:46ch;line-height:1.55;}
  .hero-cta-row{margin-top:34px;display:flex;flex-wrap:wrap;align-items:center;gap:18px;}
  .hero-note{font-size:0.9rem;color:rgba(255,255,255,0.65);}
  .hero-note .hl{color:var(--white);background:linear-gradient(180deg, transparent 62%, rgba(15,158,124,0.55) 62%);}
  .hero-photo{position:relative;display:flex;justify-content:center;align-self:end;}
  .hero-photo img{width:100%;max-width:1200px;object-fit:contain;object-position:bottom;position:relative;z-index:1;}
  .hero-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(to top, var(--petroleo-deep) 0%, rgba(11,58,69,0.82) 40%, rgba(11,58,69,0) 100%);pointer-events:none;z-index:2;}

  /* ---------- STAT BANNER ---------- */
  .stat-banner{background:var(--paper-2);border-bottom:1px solid var(--line);}
  .stat-banner .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-block:0;}
  .stat-item{padding:30px 24px;border-left:1px solid var(--line);text-align:center;}
  .stat-item:first-child{border-left:none;}
  .stat-item b{display:block;font-family:var(--serif);font-size:2.1rem;font-weight:700;color:var(--petroleo-deep);line-height:1;}
  .stat-item span{display:block;margin-top:8px;font-size:0.86rem;color:var(--ink-soft);line-height:1.35;}
  .stat-icon{height:2.1rem;display:flex!important;justify-content:center;align-items:center;}
  .stat-icon svg{width:2.7rem;height:2.7rem;}

  /* ---------- SECTION GENERIC ---------- */
  section{padding-block:80px;}
  .section-head{max-width:62ch;margin-bottom:44px;}
  .section-head.center{margin-inline:auto;text-align:center;}
  .section-head .eyebrow{margin-bottom:18px;}
  .section-head h2{font-size:clamp(1.6rem, 1.3rem + 1.2vw, 2.1rem);line-height:1.2;}
  .section-head p{margin-top:16px;color:var(--ink-soft);font-size:1.04rem;}

  .section-dark{background:var(--petroleo-deep);color:var(--white);}
  .section-dark h2, .section-dark h3{color:var(--white);}
  .section-dark .section-head p{color:rgba(255,255,255,0.7);}

  /* ---------- PRA QUEM ---------- */
  /* 3 por linha; com 8 cards a ultima linha tem 2 e eles centralizam em vez
     de deixar um vao a direita. Grid nao faz isso sozinho, por isso flex. */
  .audience-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;}
  .audience-item{flex:0 1 calc((100% - 28px) / 3);min-width:0;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;}
  .audience-item b{display:block;font-family:var(--serif);font-size:1.06rem;margin-bottom:6px;}
  .audience-item span{color:var(--ink-soft);font-size:0.9rem;}

  .qualify-split{display:grid;grid-template-columns:1.55fr 1fr;gap:20px;align-items:start;}
  .qualify-col li b{color:var(--ink);font-weight:600;}
  .audience-head{margin-top:56px;margin-bottom:22px;max-width:62ch;}
  .audience-head h3{font-size:1.3rem;line-height:1.3;}
  .audience-head p{margin-top:8px;color:var(--ink-soft);font-size:0.96rem;}
  .qualify-col{border-radius:var(--radius);padding:26px 26px;}
  .qualify-col.yes{background:#EAF7F1;border:1px solid #BFE3D3;}
  .qualify-col.no{background:var(--paper-2);border:1px solid var(--line);}
  .qualify-col h3{font-size:1.02rem;margin-bottom:14px;display:flex;align-items:center;gap:9px;}
  .qualify-col .mark{flex:none;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;}
  .qualify-col.yes .mark{background:var(--turquesa);color:var(--white);}
  .qualify-col.no .mark{background:var(--ink-soft);color:var(--white);}
  .qualify-col ul{list-style:disc;padding-left:20px;display:flex;flex-direction:column;gap:14px;}
  .qualify-col.yes li::marker{color:var(--turquesa);}
  .qualify-col.no li::marker{color:var(--ink-soft);}
  .qualify-col li{font-size:0.92rem;color:var(--ink-soft);line-height:1.45;padding-left:0;}

  /* ---------- MEDOS (objeção) ---------- */
  .fears-wrap{max-width:800px;margin:0 auto;text-align:center;}
  .fear-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;}
  .fear-pill{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.16);color:rgba(255,255,255,0.9);font-size:0.92rem;padding:11px 20px;border-radius:var(--radius-pill);}
  .fear-reframe{margin-top:40px;font-family:var(--serif);font-size:1.3rem;line-height:1.5;color:var(--white);max-width:51ch;margin-inline:auto;}
  .fear-reframe em{color:var(--turquesa);font-style:normal;}

  /* Flex, nao grid: o numero de cards muda com o tempo e um grid de N colunas
     com menos de N cards deixa um vao na direita, empurrando tudo para a
     esquerda. Com flex + center eles ficam centrados em qualquer quantidade. */
  .course-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:40px;}
  .course-fact{flex:0 1 calc((100% - 28px) / 3);min-width:0;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.16);border-radius:var(--radius);padding:28px 18px;display:flex;flex-direction:column;align-items:center;gap:10px;}
  .course-fact b{font-family:var(--serif);font-size:2.6rem;font-weight:700;line-height:1;color:var(--white);height:2.8rem;display:flex;align-items:center;}
  .course-fact i{height:2.8rem;display:flex;align-items:center;color:var(--turquesa);}
  .course-fact i svg{width:2.6rem;height:2.6rem;}
  .course-fact span{font-size:0.95rem;color:rgba(255,255,255,0.85);line-height:1.4;}
  @media (max-width:760px){.course-fact{flex-basis:calc((100% - 14px) / 2);}}

  /* ---------- CASOS ---------- */
  .cases{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
  .case{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;}
  .case-tag{font-family:var(--sans);font-weight:700;font-size:0.72rem;letter-spacing:0.02em;color:var(--white);background:var(--petroleo-deep);display:inline-block;padding:4px 10px;border-radius:var(--radius-pill);margin-bottom:14px;}
  .case-tag.gastro{background:#0C7A5F;}
  .case-tag.cardio{background:#2E7A33;}
  .case p.q{font-family:var(--serif);font-size:1.08rem;line-height:1.45;}
  .case p.a{margin-top:12px;font-size:0.92rem;color:var(--ink-soft);}

  /* ---------- BLOCOS ---------- */
  .blocos{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:20px;}
  .bloco{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px;display:flex;flex-direction:column;}
  .bloco.dark{background:var(--petroleo-deep);color:var(--white);border-color:var(--petroleo-deep);}
  .bloco.dark h3, .bloco.dark .bloco-num{color:var(--white);}
  .bloco.dark .bloco-intro{color:rgba(255,255,255,0.72);border-bottom-color:rgba(255,255,255,0.15);}
  .bloco.dark ul{color:rgba(255,255,255,0.82);}
  .bloco.dark .bloco-resp{color:var(--turquesa);border-top-color:rgba(255,255,255,0.15);}
  .bloco-num{font-family:var(--sans);font-weight:600;letter-spacing:0.02em;font-size:0.74rem;color:var(--ink-soft);margin-bottom:12px;}
  .bloco h3{font-size:1.28rem;line-height:1.25;margin-bottom:14px;}
  .bloco-intro{font-size:0.94rem;color:var(--ink-soft);line-height:1.5;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line-soft);}
  .bloco ul{padding-left:18px;font-size:0.9rem;color:var(--ink-soft);flex:1;}
  .bloco li{margin-bottom:9px;line-height:1.45;}
  .bloco-resp{margin-top:18px;padding-top:14px;border-top:1px solid var(--line-soft);font-size:0.82rem;color:var(--petroleo-deep);font-weight:600;}

  /* ---------- QUEM ENSINA (assimétrico) ---------- */
  .team-rows{display:flex;flex-direction:column;gap:0;}
  .team-row{display:grid;grid-template-columns:180px 1fr;gap:36px;align-items:center;padding-block:32px;border-bottom:1px solid var(--line);}
  .team-row:first-child{border-top:1px solid var(--line);}
  .team-photo-wrap{width:150px;height:150px;border-radius:50%;overflow:hidden;background:var(--paper-2);border:1px solid var(--line);flex:none;}
  .team-photo-wrap img{width:100%;height:100%;object-fit:cover;}
  .team-info h3{font-size:1.6rem;margin-bottom:6px;}
  /* A especialidade virou frase ("Gastroenterologista, com foco em doencas
     inflamatorias intestinais."), que nao cabe num pill. Vira linha de texto.
     Cor: petroleo-deep, nao petroleo — #007C91 sobre o paper-2 desta secao da
     4.47:1, logo abaixo do minimo AA de 4.5:1 para texto normal. */
  .team-info .especialidade{font-size:0.98rem;font-weight:600;color:var(--petroleo-deep);margin-bottom:4px;}
  .team-info .registro{font-size:0.8rem;color:var(--ink-soft);margin-bottom:10px;}
  .team-info .sub{font-size:0.88rem;color:var(--ink-soft);line-height:1.55;max-width:62ch;}
  .team-info .handle{display:inline-block;margin-top:10px;font-size:0.84rem;color:var(--petroleo-deep);font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.2s ease;}
  .team-info .handle:hover{border-bottom-color:var(--petroleo-deep);}
  .team-note{margin-top:30px;font-size:0.94rem;color:var(--ink-soft);max-width:68ch;}

  /* ---------- COMO FUNCIONA ---------- */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
  .step-num{font-family:var(--serif);font-size:2.3rem;color:var(--line);line-height:1;margin-bottom:10px;}
  .step h3{font-size:1.08rem;margin-bottom:8px;}
  .step p{font-size:0.92rem;color:var(--ink-soft);}
  .waitlist-cta{background:linear-gradient(120deg, var(--petroleo-deep) 0%, var(--petroleo-deep-2) 100%);border-radius:var(--radius);padding:40px 44px;display:flex;align-items:flex-start;justify-content:space-between;gap:28px 36px;flex-wrap:wrap;max-width:1080px;margin-inline:auto;}
  .waitlist-copy{display:flex;flex-direction:column;gap:14px;}
  .waitlist-copy p{color:rgba(255,255,255,0.82);font-size:1rem;line-height:1.6;}
  .waitlist-copy b{color:var(--white);font-weight:600;}

  /* Formulário da lista de espera.
     Campo com raio pequeno (5px) para ler como "funcional"; o botão de ação
     mantém o pill dos outros CTAs. São duas categorias de componente, então
     são dois raios — não um valor global aplicado em tudo. */
  .waitlist-copy{flex:1 1 300px;max-width:34ch;}
  .waitlist-form{flex:1 1 440px;display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;}
  .wf-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
  .wf-field.wide{grid-column:1 / -1;}
  .wf-field label{font-family:var(--sans);font-size:0.8rem;font-weight:600;color:rgba(255,255,255,0.82);}
  .wf-field label .opt{font-weight:400;color:rgba(255,255,255,0.52);}
  .waitlist-form input{font-family:var(--sans);font-size:0.95rem;color:var(--white);background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.22);border-radius:5px;padding:12px 13px;min-height:46px;width:100%;transition:border-color 0.2s ease, background 0.2s ease;}
  .waitlist-form input::placeholder{color:rgba(255,255,255,0.38);}
  .waitlist-form input:hover{background:rgba(255,255,255,0.12);}
  .waitlist-form input:focus{border-color:var(--turquesa);background:rgba(255,255,255,0.14);}
  .waitlist-form input:focus-visible{outline:2px solid var(--turquesa);outline-offset:2px;}
  .waitlist-form input[aria-invalid="true"]{border-color:#FFB4A8;}
  /* Honeypot: fora da tela, mas não display:none — bot que ignora CSS preenche. */
  .wf-honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
  .wf-foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;}
  .wf-foot .btn-primary{border:none;cursor:pointer;font-size:0.98rem;padding:15px 28px;}
  .wf-foot .btn-primary[disabled]{opacity:0.6;cursor:progress;transform:none;}
  .wf-legal{grid-column:1 / -1;font-family:var(--sans);font-size:0.78rem;line-height:1.5;color:rgba(255,255,255,0.58);max-width:48ch;}
  .wf-status{grid-column:1 / -1;font-family:var(--sans);font-size:0.9rem;line-height:1.5;margin:0;}
  .wf-status:empty{display:none;}
  .wf-status.erro{color:#FFC9BF;}
  /* Estado de confirmacao: ocupa a caixa inteira, centrado e com largura de
     leitura confortavel. O link usa branco + sublinhado em vez do turquesa,
     que sobre o petroleo da 3.65:1 e nao passa em AA. */
  .waitlist-done{display:flex;flex-direction:column;gap:14px;max-width:56ch;margin-inline:auto;text-align:center;}
  .waitlist-done:focus{outline:none;}
  .waitlist-done:focus-visible{outline:2px solid var(--turquesa);outline-offset:8px;}
  .waitlist-done h3{font-family:var(--serif);font-size:1.6rem;color:var(--white);}
  .waitlist-done p{font-family:var(--sans);font-size:1rem;line-height:1.6;color:rgba(255,255,255,0.86);}
  .waitlist-done b{color:var(--white);font-weight:600;}
  .waitlist-done a{color:var(--white);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.45);}
  .waitlist-done a:hover{border-bottom-color:var(--white);}

  /* ---------- FAQ ---------- */
  .faq{width:100%;}
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-item:first-child{border-top:1px solid var(--line);}
  .faq-q{width:100%;text-align:left;background:none;border:none;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;font-family:var(--serif);font-size:1.06rem;color:var(--ink);}
  .faq-q .icon{flex:none;width:20px;height:20px;position:relative;}
  .faq-q .icon::before,.faq-q .icon::after{content:"";position:absolute;background:var(--petroleo-deep);transition:transform 0.2s ease;}
  .faq-q .icon::before{left:0;top:9px;width:20px;height:2px;}
  .faq-q .icon::after{left:9px;top:0;width:2px;height:20px;}
  .faq-item[open] .faq-q .icon::after{transform:rotate(90deg);opacity:0;}
  .faq-a{padding:0 4px 24px;max-width:70ch;font-size:0.97rem;color:var(--ink-soft);}

  /* ---------- FOOTER ---------- */
  .compliance{background:var(--paper-2);font-size:0.85rem;color:var(--ink-soft);line-height:1.6;padding-block:28px;}
  .compliance strong{color:var(--ink);}
  footer{padding-block:36px;}
  footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
  .foot-brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:0.92rem;color:var(--petroleo-deep);}
  .foot-copy{font-size:0.82rem;color:var(--ink-soft);}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:920px){
    .wrap{padding-inline:22px;}
    .hero .wrap{grid-template-columns:1fr;min-height:auto;}
    .hero-copy{align-self:auto;padding-bottom:32px;}
    .hero-photo{margin-top:12px;}
    .hero-photo img{max-width:520px;}
    .stat-banner .wrap{grid-template-columns:repeat(2,1fr);}
    .stat-item:nth-child(3){border-left:none;}
    .stat-item:nth-child(2){border-left:1px solid var(--line);}
    .audience-item{flex-basis:calc((100% - 14px) / 2);}
    .qualify-split{grid-template-columns:1fr;}
    .cases{grid-template-columns:1fr;}
    .blocos{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
    .team-row{grid-template-columns:120px 1fr;}
    .team-photo-wrap{width:100px;height:100px;}
    .steps{grid-template-columns:1fr;gap:28px;}
    .waitlist-cta{flex-direction:column;align-items:stretch;}
    section{padding-block:56px;}
  }
  @media (max-width:600px){
    .wrap{padding-inline:18px;}
    .audience-item{flex-basis:100%;}
    .blocos{grid-template-columns:1fr;}
    .stat-banner .wrap{grid-template-columns:1fr 1fr;}
    .stat-item{padding:22px 14px;}
    .masthead-cta{padding:9px 14px;font-size:0.8rem;}
    /* CTA shrinks to ~38px here, so the logo follows to keep the navbar height unchanged */
    .brand-logo{height:34px;}
    .waitlist-cta{flex-direction:column;align-items:stretch;padding:30px 22px;}
    .waitlist-form{grid-template-columns:1fr;}
    .wf-foot .btn-primary{width:100%;justify-content:center;}
  }
