
      /* Accessibility: Skip to Main Content */
      .skip-link {
        position: absolute;
        top: -100px;
        left: 1rem;
        background-color: #0e9586;
        color: #ffffff !important;
        padding: 0.75rem 1.25rem;
        border-radius: 0.5rem;
        font-weight: 700;
        z-index: 99999;
        text-decoration: none;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
        transition: top 0.2s ease-in-out;
      }
      .skip-link:focus {
        top: 1rem;
        outline: 3px solid #0e9586;
        outline-offset: 2px;
      }

      /* Accessibility: Focus Indicators */
      :focus-visible {
        outline: 2px solid #0e9586 !important;
        outline-offset: 2px !important;
      }

      /* Performance: GPU-Accelerated Marquee Tracks */
      .marquee-gpu {
        will-change: transform;
        transform: translate3d(0, 0, 0);
        backface-visibility: hidden;
      }

      /* Performance: Content Visibility for Below-the-Fold Sections */
      .content-auto {
        content-visibility: visible;
      }

      /* Accessibility: Prefers Reduced Motion */
      @media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
          transition-duration: 0.01ms !important;
          scroll-behavior: auto !important;
        }
      }

      /* Hero Headline Responsive & Beautiful */
      .hero-title-responsive {
        font-size: clamp(1.5rem, 4.8vw, 2.55rem) !important;
        line-height: 1.22 !important;
        font-weight: 800 !important;
        color: #111111 !important;
        margin-bottom: 1.25rem !important;
        text-wrap: balance !important;
        letter-spacing: -0.02em !important;
      }
      .hero-badge-highlight {
        display: inline-block !important;
        background: linear-gradient(135deg, #0e9586 0%, #158074 100%) !important;
        color: #ffffff !important;
        border-radius: 10px !important;
        padding: 0.12em 0.55em !important;
        margin-top: 0.25em !important;
        box-shadow: 0 4px 12px rgba(14, 147, 132, 0.25) !important;
        letter-spacing: -0.01em !important;
      }

      /* Testimonials Square Cards */
      .depoimento-quadrado {
        width: 290px !important;
        min-width: 290px !important;
        max-width: 290px !important;
        height: 290px !important;
        min-height: 290px !important;
        max-height: 290px !important;
        background-color: #ffffff !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 20px !important;
        padding: 22px !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        text-align: left !important;
        box-sizing: border-box !important;
        flex-shrink: 0 !important;
      }
      .depoimento-quadrado .estrelas {
        display: flex !important;
        gap: 3px !important;
        color: #f59e0b !important;
        margin-bottom: 10px !important;
      }
      .depoimento-quadrado .texto {
        font-size: 13px !important;
        line-height: 1.5 !important;
        color: #374151 !important;
        margin: 0 !important;
        font-weight: 400 !important;
      }
      .depoimento-quadrado .divisoria {
        border-top: 1px solid #f0f0f0 !important;
        margin: 12px 0 10px 0 !important;
      }
      .depoimento-quadrado .autor-box {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
      }
      .depoimento-quadrado .autor-avatar {
        width: 44px !important;
        height: 44px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        flex-shrink: 0 !important;
      }
      .depoimento-quadrado .autor-nome {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #111827 !important;
        margin: 0 !important;
        line-height: 1.2 !important;
      }
      .depoimento-quadrado .autor-cargo {
        font-size: 11.5px !important;
        color: #6b7280 !important;
        display: block !important;
        margin-top: 2px !important;
      }
    
      .guarantee-badge { width: 190px; height: 190px; margin: 0 auto 2rem; border: 4px solid #0e9586; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #158074; background: #ecfdfb; box-shadow: 0 0 0 8px #22b14c14; }
      .guarantee-badge > span { font-size: 64px; font-weight: 800; line-height: 1; }
      .guarantee-badge > strong { font-size: 20px; letter-spacing: .12em; }
      .guarantee-badge > small { font-size: 9px; font-weight: 700; margin-top: 8px; }
      .hero-badge-highlight { max-width: 100%; }

      /* Organized collection overview and visual learning sections */
      .learning-section { padding: 80px 24px; color: #111; }
      .learning-overview { background: #f9fbfb; border-block: 1px solid #e9f0ef; }
      .learning-benefits { background: #fff; }
      .learning-container { max-width: 1040px; margin: 0 auto; }
      .learning-heading { max-width: 800px; margin: 0 auto 36px; text-align: center; }
      .learning-eyebrow { display: inline-block; margin-bottom: 14px; color: #158074; font-size: 11px; font-weight: 800; letter-spacing: .14em; line-height: 1.5; }
      .learning-heading h2 { margin: 0; font-size: clamp(27px, 3.5vw, 42px); font-weight: 800; line-height: 1.17; letter-spacing: -.025em; text-wrap: balance; }
      .learning-heading h2 span { display: block; margin-top: 4px; color: #158074; }
      .learning-grid { display: grid; gap: 20px; align-items: stretch; }
      .learning-overview .learning-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
      .learning-benefits .learning-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .learning-card { min-width: 0; padding: 28px; border: 1px solid #dfe9e8; border-radius: 20px; background: #fff; box-shadow: 0 4px 16px #182d1905; }
      .learning-step { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 20px; border-radius: 11px; color: #158074; background: #eaf7f6; font-size: 13px; font-weight: 800; }
      .learning-card h3 { margin: 0 0 12px; font-size: 19px; font-weight: 750; line-height: 1.35; letter-spacing: -.015em; text-wrap: balance; }
      .learning-card p { margin: 0; color: #4b5563; font-size: 15px; line-height: 1.75; }
      .learning-card strong { color: #152341; font-weight: 650; }
      .learning-benefits .learning-card:last-child { background: #eff9f8; border-color: #cce8e5; }
      .learning-benefits .learning-card:last-child .learning-step { background: #158074; color: #fff; }
      .currency-note { margin: 16px auto 0; text-align: center; color: #626b65; font-size: 12px; line-height: 1.6; }
      @media (max-width: 760px) {
        .learning-section { padding: 56px 20px; }
        .learning-heading { margin-bottom: 28px; }
        .learning-overview .learning-grid, .learning-benefits .learning-grid { grid-template-columns: 1fr; gap: 16px; }
        .learning-card { padding: 24px; }
        .learning-step { margin-bottom: 16px; }
      }


      .learner-section { padding: 72px 0; background: #f9fbfb; border-block: 1px solid #e9f0ef; overflow: hidden; }
      .learner-section .learning-heading { padding: 0 24px; }
      .learner-disclosure { max-width: 620px; margin: 18px auto 0; font-size: 14px; line-height: 1.7; color: #626b65; }
      .learner-gallery { overflow: hidden; padding: 8px 0 16px; }
      .learner-track { display: flex; width: max-content; animation: rt-marquee-left 48s linear infinite; }
      .learner-group { display: flex; gap: 20px; padding-right: 20px; flex-shrink: 0; }
      .learner-gallery:hover .learner-track, .learner-gallery:focus-within .learner-track { animation-play-state: paused; }
      .learner-card { margin: 0; }
      .learner-card .texto { font-size: 13px !important; line-height: 1.65 !important; }
      .learner-avatar { display: block; flex-shrink: 0; width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background: #eaf7f6; border: 2px solid #e3eeed; }
      @media (max-width: 760px) { .learner-section { padding: 52px 0; } }
      @media (prefers-reduced-motion: reduce) { .learner-gallery { overflow-x: auto; } .learner-track { animation: none; } .learner-group[aria-hidden="true"] { display: none; } }


      /* Facial anatomy update */
      .facial-hero-subtitle { font-size: clamp(1.15rem, 3vw, 1.7rem); font-weight: 700; line-height: 1.35; color: #222; margin: 0 auto 1rem; }
      .facial-hero-mockup { animation: facial-mockup-pulse 3.4s ease-in-out infinite; transform-origin: center; }
      @keyframes facial-mockup-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.035); } }
      .facial-section { padding: 64px 20px; background: #faf9f7; }
      .facial-section:nth-of-type(even) { background: #fff; }
      .facial-container { max-width: 1024px; margin: 0 auto; }
      .facial-container > h2 { text-align: center; font-size: clamp(1.7rem, 4vw, 2.8rem); font-weight: 800; line-height: 1.13; margin-bottom: 22px; color: #111; text-wrap: balance; }
      .facial-intro { max-width: 800px; margin: 0 auto 32px; text-align: center; color: #4b5563; font-size: 1rem; line-height: 1.75; }
      .facial-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
      .facial-topic { display: flex; gap: 16px; padding: 24px; background: white; border: 1px solid #e8e8e4; border-radius: 18px; }
      .facial-topic-number { flex: 0 0 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: #0e9586; color: white; font-weight: 700; font-size: 13px; }
      .facial-topic h3 { font-size: 17px; font-weight: 750; line-height: 1.35; margin-bottom: 9px; color: #111; }
      .facial-topic p { color: #4b5563; font-size: 14px; line-height: 1.7; }
      .facial-faq-container { max-width: 780px; }
      .facial-faq { margin-top: 14px; padding: 20px; border: 1px solid #e2e1dc; border-radius: 14px; background: #fff; }
      .facial-faq summary { cursor: pointer; font-weight: 700; color: #111; }
      .facial-faq p { margin-top: 14px; font-size: 14px; line-height: 1.75; color: #4b5563; }
      @media (max-width: 640px) { .facial-grid { grid-template-columns: 1fr; } .facial-section { padding: 44px 16px; } .facial-topic { padding: 20px; gap: 12px; } }
      @media (prefers-reduced-motion: reduce) { .facial-hero-mockup { animation: none; } }


      .atlas-carousel-section { padding: 48px 0; overflow: hidden; background: #f7f7f3; }
      .atlas-carousel-heading { max-width: 1024px; margin: 0 auto 28px; padding: 0 20px; text-align: center; }
      .atlas-carousel-heading h2 { font-size: clamp(1.65rem, 4vw, 2.7rem); font-weight: 800; line-height: 1.15; color: #111; text-wrap: balance; }
      .atlas-carousel-window { overflow: hidden; padding: 10px 0 20px; }
      .atlas-carousel-track { display: flex; width: max-content; animation: atlas-infinite-scroll 95s linear infinite; }
      .atlas-carousel-reverse { animation-direction: reverse; animation-duration: 105s; }
      .atlas-carousel-group { display: flex; flex: 0 0 auto; gap: 20px; padding-right: 20px; }
      .atlas-carousel-group img { flex: 0 0 auto; width: clamp(290px, 82vw, 420px); height: auto; object-fit: contain; background: white; border: 1px solid #e2e1dc; border-radius: 12px; box-shadow: 0 6px 18px #12231912; }
      @keyframes atlas-infinite-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
      @media (max-width: 640px) { .atlas-carousel-section { padding: 36px 0; } .atlas-carousel-group { gap: 14px; padding-right: 14px; } }
      @media (prefers-reduced-motion: reduce) { .atlas-carousel-track { animation: none; } .atlas-carousel-window { overflow-x: auto; } .atlas-carousel-group[aria-hidden="true"] { display: none; } }


      /* Distinct atlas overview */
      .atlas-overview { padding: 78px 24px; background: radial-gradient(ellipse at top left, #244f4a 0, #0d1528 55%, #090f1b 100%); color: #f4f8f8; }
      .atlas-overview-inner { max-width: 1080px; margin: auto; display: grid; grid-template-columns: 1fr 1.1fr; gap: 64px; align-items: center; }
      .atlas-overview-eyebrow { color: #9ed5cf; font-size: 11px; font-weight: 700; letter-spacing: .18em; }
      .atlas-overview-copy h2 { margin: 20px 0; font-size: clamp(2rem, 3.8vw, 3.2rem); font-weight: 750; line-height: 1.12; letter-spacing: -.035em; }
      .atlas-overview-copy h2 em { display: block; color: #a6e1da; font-style: normal; }
      .atlas-overview-copy > p { color: #c0cecc; line-height: 1.8; font-size: 15px; max-width: 420px; }
      .atlas-overview-stats { display: flex; gap: 44px; margin: 30px 0 22px; }
      .atlas-overview-stats > div { display: flex; flex-direction: column; gap: 4px; }
      .atlas-overview-stats strong { color: #fff; font-size: 44px; font-weight: 750; line-height: 1; letter-spacing: -.04em; }
      .atlas-overview-stats span, .atlas-overview-note { color: #aec2c0; font-size: 12px; }
      .atlas-overview-note { display: block; border-top: 1px solid #ffffff20; padding-top: 18px; }
      .atlas-overview-steps { display: grid; gap: 16px; }
      .atlas-overview-steps article { display: flex; gap: 18px; padding: 24px; border: 1px solid #86b89936; background: #ffffff06; border-radius: 16px; }
      .atlas-overview-number { flex: 0 0 34px; color: #91cbc4; font-size: 14px; padding-top: 3px; font-weight: 650; }
      .atlas-overview-steps h3 { color: #f6f8f8; font-size: 18px; font-weight: 700; margin-bottom: 8px; line-height: 1.3; }
      .atlas-overview-steps p { color: #bfcecc; font-size: 14px; line-height: 1.75; }
      #atlas-topics-carousel { background: #edf4f3; border-block: 1px solid #dfe8e7; }
      #atlas-topics-carousel .atlas-carousel-track { animation-duration: 170s; }
      .atlas-carousel-heading > p { font-size: 15px; color: #647068; margin-top: 14px; }
      /* Simple white quotation cards */
      .perspectives { padding: 58px 0; background: #f9fbfb; overflow: hidden; border-block: 1px solid #e9f0ef; }
      .perspectives-heading { max-width: 760px; margin: 0 auto 28px; padding: 0 24px; text-align: center; }
      .perspectives-heading h2 { color: #0f182d; font-size: clamp(1.8rem, 3.5vw, 2.5rem); font-weight: 800; line-height: 1.2; margin-bottom: 12px; }
      .perspectives-heading p { font-size: 12px; color: #626b65; line-height: 1.65; }
      .perspectives-window { overflow: hidden; padding: 8px 0 18px; }
      .perspectives-track { display: flex; width: max-content; animation: perspectives-scroll 75s linear infinite; }
      .perspectives-group { display: flex; flex: 0 0 auto; gap: 20px; padding-right: 20px; }
      .perspective-card { display: flex; flex-direction: column; justify-content: space-between; flex: 0 0 290px; width: 290px; min-height: 290px; padding: 23px 22px 20px; margin: 0; border: 1px solid #e3e7eb; border-radius: 21px; background: #fff; box-shadow: 0 3px 12px #15291f06; box-sizing: border-box; }
      .perspective-card blockquote { margin: 0 0 24px; color: #475367; font-size: 13px; line-height: 1.65; font-weight: 400; }
      .perspective-card figcaption { display: flex; align-items: center; gap: 12px; padding-top: 12px; border-top: 1px solid #edf0f2; color: #202938; font-size: 13px; font-weight: 700; }
      .perspective-avatar { position: relative; width: 46px; height: 46px; flex: 0 0 46px; border-radius: 50%; overflow: hidden; border: 2px solid #e4ebea; background: #eef3f2; }
      .perspective-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
      .perspective-avatar-maya img { width: 300%; height: auto; max-width: none; transform: translate(-8%, -2%); }
      .perspective-avatar-aisha img { width: 300%; height: auto; max-width: none; transform: translate(-62%, -6%); }
      @keyframes perspectives-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
      @media (max-width: 1000px) { .atlas-overview-inner { gap: 32px; } }
      @media (max-width: 700px) { .atlas-overview { padding: 48px 20px; } .atlas-overview-inner { grid-template-columns: 1fr; gap: 30px; } .atlas-overview-steps article { padding: 20px 16px; gap: 10px; } .atlas-overview-copy > p { max-width: none; } }
      @media (max-width: 600px) { .perspectives { padding: 42px 0; } .perspective-card { width: 280px; flex-basis: 280px; } .perspectives-group { gap: 16px; padding-right: 16px; } }
      @media (prefers-reduced-motion: reduce) { .perspectives-track { animation: none; } .perspectives-window { overflow-x: auto; } .perspectives-group[aria-hidden="true"] { display: none; } }


      #atlas-access-carousel { padding: 16px 0 28px; background: #fff; }
      #atlas-access-carousel .atlas-carousel-track { animation-duration: 100s; }

/* ---- */
h1{text-wrap:balance;line-height:1.18}h1 .atelier-headline-emphasis{font-weight:800;color:var(--primary,var(--color-primary,inherit))}
/* ---- */
.atelier-hero-actions{display:flex;flex-direction:column;align-items:center;gap:14px;margin:18px auto 26px;width:100%;max-width:520px}.atelier-hero-buy{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:22px;width:100%;padding:20px 22px;border-radius:16px;background:#0e9586;color:#fff!important;text-decoration:none!important;font-weight:800;font-size:clamp(15px,3.8vw,18px);line-height:1.4;text-align:center;text-transform:uppercase;box-shadow:0 5px 23px #22b14c66}.atelier-hero-buy:hover{background:#0b7266}.atelier-hero-content{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #cbd5e1;border-radius:12px;padding:14px 22px;background:#fff;color:#26394a!important;text-decoration:none!important;font-size:15px;font-weight:700;box-shadow:0 2px 4px #0000000d}.atelier-hero-actions a:focus-visible{outline:3px solid #173b70;outline-offset:4px}#atlas-carousel-title-1{scroll-margin-top:24px}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
/* ---- */
h1.hero-title-responsive .hero-badge-highlight,
h1.hero-title-responsive .atelier-headline-emphasis {
  display: inline !important;
  background: none !important;
  color: var(--primary, #2A9D8F) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  font-weight: 800 !important;
  text-decoration-line: underline;
  text-decoration-thickness: 0.12em;
  text-underline-offset: 0.16em;
  text-decoration-skip-ink: none;
}
/* Vitrine dupla (padrão educandovisual): duas faixas de páginas reais em sentidos opostos, repetida ao longo da página */
.vitrine-dupla { padding: 3.5rem 0; background: linear-gradient(180deg, #ffffff 0%, #f6f8f8 100%); overflow: hidden; }
.vitrine-dupla.alt { background: linear-gradient(180deg, #f6f8f8 0%, #ffffff 100%); }
.vitrine-dupla-cab { text-align: center; padding: 0 1.25rem; margin-bottom: 2rem; }
.vitrine-dupla-selo { display: inline-block; background: #eaf7f6; color: #158074; padding: .45rem 1.2rem; border-radius: 2rem; font-size: .8rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; margin-bottom: 1rem; }
.vitrine-dupla-cab h2 { font-size: clamp(1.45rem, 4vw, 2.2rem); font-weight: 800; line-height: 1.2; color: #111; text-wrap: balance; max-width: 760px; margin: 0 auto; }
.vitrine-dupla-cab p { font-size: 15px; color: #647068; margin-top: .8rem; }
.vitrine-dupla .atlas-carousel-window { padding: 6px 0 14px; }
.vitrine-dupla .atlas-carousel-group img { width: clamp(250px, 66vw, 340px); }
.vitrine-dupla .linha-2 .atlas-carousel-track { animation-direction: reverse; animation-duration: 110s; }
.vitrine-dupla .linha-1 .atlas-carousel-track { animation-duration: 100s; }
.vitrine-dupla .atlas-carousel-window:hover .atlas-carousel-track { animation-play-state: paused; }
.vitrine-dupla-rodape { text-align: center; margin-top: 1.6rem; padding: 0 1.25rem; font-size: 15px; color: #4b5563; }
.vitrine-dupla-rodape b { color: #111; }

/* avaliações (opcional: só aparece com "depoimentos" no conteudo.json) */
.depo{background:#faf9f7;padding:64px 16px}.depo-in{max-width:1100px;margin:0 auto;text-align:center}
.depo h2{font-weight:800;text-transform:uppercase;color:#111;font-size:1.6rem;line-height:1.1;margin:12px 0 8px}
.depo-nota{color:#6b7280;font-size:.85rem;margin:0 auto 28px;max-width:560px}
.depo-grade{display:grid;gap:16px;grid-template-columns:1fr;text-align:left}
@media(min-width:768px){.depo h2{font-size:2.3rem}.depo-grade{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.depo-grade{grid-template-columns:repeat(3,1fr)}}
.depo-card{background:#fff;border:1px solid #e8e8e4;border-radius:16px;padding:22px;margin:0;display:flex;flex-direction:column;gap:16px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.depo-card blockquote{margin:0;color:#1f2937;font-size:.98rem;line-height:1.6}
.depo-card figcaption{display:flex;align-items:center;gap:12px;margin-top:auto}
.depo-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#0e9586;color:#fff;font-weight:800;font-size:.9rem;flex:none}
.depo-card b{display:block;color:#111;font-size:.92rem}.depo-card small{color:#6b7280;font-size:.8rem}
.depo-foto{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;border:2px solid #fff;box-shadow:0 0 0 2px #0e9586}
.depo-nota{background:#fff;border:1px solid #e8e8e4;border-radius:999px;display:inline-block;padding:6px 14px}
@media(min-width:1024px){.depo-grade{display:flex;flex-wrap:wrap;justify-content:center}.depo-card{width:calc((100% - 32px)/3)}}
.depo-nota{border-radius:12px}
.depo-card small{font-size:.875rem}

/* avaliações em faixa horizontal infinita */
.depo-janela{overflow:hidden;margin:0 -16px;padding:6px 0 10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.depo-trilho{display:flex;width:max-content;animation:depo-rolar 55s linear infinite}
.depo-janela:hover .depo-trilho,.depo-janela:focus-within .depo-trilho{animation-play-state:paused}
.depo-grupo{display:flex;gap:16px;padding-right:16px}
.depo-trilho .depo-card{width:300px;flex:none;text-align:left;gap:14px}
.depo-trilho .depo-card figcaption{margin-top:0}
.depo-trilho .depo-card blockquote{font-size:.95rem}
@keyframes depo-rolar{to{transform:translateX(-50%)}}
@media(min-width:768px){.depo-trilho .depo-card{width:340px}}
@media(prefers-reduced-motion:reduce){.depo-trilho{animation:none}.depo-janela{overflow-x:auto}}
