/* Generated from the ordered source stylesheets. */

/* fonts.css */
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./assets/fonts/lato-400.woff2") format("woff2");
}

picture.responsive-media {
  display: contents;
}

@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./assets/fonts/lato-700.woff2") format("woff2");
}

@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("./assets/fonts/lato-900.woff2") format("woff2");
}

@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("./assets/fonts/lato-400-italic.woff2") format("woff2");
}

@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("./assets/fonts/lato-700-italic.woff2") format("woff2");
}

/* styles.css */
:root{--blue:#2451dc;--indigo:#2224d9;--green:#18b85c;--ink:#13213b;--muted:#66758a;--soft:#eef9ff;--line:#e4ebf9;--orange:#ff6b00;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45;background:#fff}main{overflow:hidden}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);line-height:.98;letter-spacing:-.045em}h1{font-size:50px;color:var(--blue);max-width:575px;margin-bottom:22px}h2{font-size:37px;margin-bottom:14px}h3{font-family:var(--serif);font-size:17px;line-height:1.15;margin-bottom:8px}p{color:var(--muted)}a{text-decoration:none}.section{padding:90px max(30px,calc((100vw - 1120px)/2))}.section-shell{padding-left:max(30px,calc((100vw - 1120px)/2));padding-right:max(30px,calc((100vw - 1120px)/2))}.hero{min-height:530px;display:flex;align-items:center;gap:55px;padding-top:65px;padding-bottom:65px}.hero-copy{width:51%;position:relative;z-index:2}.hero-copy p{font-size:15px;line-height:1.65;max-width:510px;margin-bottom:22px}.hero-copy small{display:block;color:#5f6b7c;font-weight:600;margin-top:15px}.eyebrow{display:inline-block;color:#5279f3;font-weight:700;font-size:10px;letter-spacing:.15em;margin-bottom:15px}.pill{letter-spacing:0;background:#e4f4ff;border-radius:99px;padding:6px 12px;color:#3773d8}.button{display:block;border-radius:99px;width:max-content;padding:14px 24px;color:#fff;font-size:11px;font-weight:700;box-shadow:0 7px 15px #1448ce26;transition:.2s}.button:hover{transform:translateY(-2px);filter:brightness(1.05)}.button-green{background:var(--green)}.button-blue{background:var(--blue);margin:36px auto 0}.button-outline{color:var(--blue);border:2px solid #4a70ff;background:#fff;margin:30px auto 0;padding:10px 23px}.hero-visual{height:355px;flex:1;position:relative;min-width:440px;background:radial-gradient(circle at 58% 50%,#edf8ff 0 22%,transparent 53%)}.product-can{width:110px;height:138px;border:3px solid #fff;border-top:12px solid #ffc928;border-radius:5px 5px 12px 12px;background:linear-gradient(110deg,#f9ffff,#e3f9ff 55%,#fff);box-shadow:10px 15px 20px #2150a62b;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#244356;font-size:17px;font-weight:800;line-height:.7;text-align:center;position:relative}.product-can:after{content:'✣';position:absolute;font-size:31px;color:#44ca68;opacity:.45;bottom:11px;left:9px}.product-can b{position:relative;z-index:1}.product-can i{color:#2b65db;font-style:normal}.product-can span{color:#62b835;font-size:11px;position:relative;z-index:1}.product-can em{font-size:5px;font-style:normal;color:#777;margin-top:6px;z-index:1}.product-can.large{position:absolute;width:180px;height:220px;right:85px;top:48px;font-size:26px;border-top-width:22px;border-radius:8px 8px 18px 18px;transform:rotate(2deg)}.product-can.large span{font-size:16px}.product-can.large em{font-size:8px}.fruit{position:absolute;font-size:88px;line-height:1;filter:drop-shadow(6px 8px 5px #273d6d33)}.fruit-orange{right:240px;top:155px;color:#ff9a0c}.fruit-yellow{right:300px;top:190px;color:#e8db1c}.fruit-red{right:50px;top:185px;color:#e02e36}.leafs{position:absolute;right:104px;bottom:46px;letter-spacing:-18px;font-size:47px;color:#39a853;filter:drop-shadow(2px 3px 3px #0003)}.seal{position:absolute;right:245px;top:10px;width:92px;height:92px;border:6px double #a3701e;border-radius:50%;background:#e3a32d;color:#44351e;z-index:2;text-align:center;font-size:10px;font-weight:bold;line-height:.9;padding-top:10px;transform:rotate(-8deg)}.seal strong{font-size:34px}.ticker{height:30px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-around;white-space:nowrap;font-size:8px;font-weight:700;letter-spacing:.04em;overflow:hidden}.soft{background:linear-gradient(115deg,#f1fbff,#f8fcff)}.section-heading{text-align:center;margin:0 auto 42px}.section-heading.narrow{max-width:750px}.section-heading p{max-width:680px;margin:0 auto 9px}.intro{padding-top:70px}.intro .section-heading h2{max-width:680px;margin-left:auto;margin-right:auto}.cards{display:grid;gap:16px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 22px #1b45aa12;padding:20px}.card p{font-size:11px;margin:0}.issues{margin-top:45px}.issues .card{height:165px}.icon{height:39px;width:39px;background:linear-gradient(145deg,#e4efff,#f8f3ff);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:15px;font-size:18px}.impact{display:grid;grid-template-columns:1fr 1fr;align-items:center;margin-top:50px;padding:32px 35px}.impact .eyebrow{margin:0 0 8px}.impact h3{font-size:24px;max-width:360px}.bars{display:grid;gap:15px}.bars>div{display:grid;gap:5px}.bars span{font-weight:700;font-size:11px}.bars b{color:var(--blue);float:right;font-size:13px}.bars i{height:8px;display:block;border-radius:12px;background:linear-gradient(90deg,var(--blue) var(--level),#f6e7ce var(--level))}.journey{padding-top:65px;padding-bottom:72px}.timeline{width:min(670px,100%);margin:auto}.step{display:flex;align-items:center;gap:16px;padding:15px 20px;border-radius:16px}.step span{background:linear-gradient(135deg,#2369df,#cbd6ff);color:#fff;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-weight:700;font-size:17px;box-shadow:0 5px 11px #1a55c35c}.step h3{margin:0 0 2px}.timeline>i{display:block;text-align:center;color:#7ca4ff;font-style:normal;font-size:20px;margin:5px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:55px}.comparison .card{min-height:190px;padding:22px}.comparison h3{font-size:18px}.comparison ul,.plan ul{list-style:none;padding:0;margin:12px 0}.comparison li{font-size:12px;color:var(--muted);margin:6px 0}.comparison li:before{content:'×';color:#9aa9ba;margin-right:10px}.comparison .highlighted{border-color:#8ea9ff;box-shadow:0 8px 20px #2c56c825;position:relative}.highlighted>b{position:absolute;background:var(--blue);color:#fff;border-radius:10px 10px 0 10px;right:8px;top:8px;padding:4px 9px;font-size:7px}.highlighted li:before{content:'⊙';color:#18ba5d}.comparison small{color:#7f8797;font-size:8px}.made-for{padding-top:75px}.made-for h2 span{color:var(--blue)}.image-cards{margin-top:38px}.image-cards .card{padding:0;overflow:hidden;text-align:center}.image-cards h3{font-family:var(--sans);font-size:11px;padding:12px;margin:0}.photo-placeholder{height:210px;display:grid;place-items:center;color:white;font-size:12px;font-weight:700;text-shadow:0 2px 4px #0008}.mother .photo-placeholder{background:linear-gradient(135deg,#4c373245,#dac7a5),linear-gradient(45deg,#78685c,#ecdec3)}.child .photo-placeholder{background:linear-gradient(135deg,#9d411e66,#f2bc86),linear-gradient(45deg,#95633e,#ffc66b)}.doctors .photo-placeholder{background:linear-gradient(135deg,#208eaa6e,#e8edf2),linear-gradient(45deg,#60879c,#d5e9f1)}.slanted{transform:skewY(-.65deg);height:38px;margin-top:-6px}.nutrients{padding-top:95px}.nutrient-grid{gap:14px}.nutrient{min-height:174px;position:relative}.nutrient>strong{color:#3970ed;font-size:19px;display:block;line-height:1}.nutrient>small{display:block;color:#748397;font-size:8px;font-weight:700;margin:4px 0 14px}.nutrient>i{position:absolute;right:19px;top:21px;font-style:normal;font-size:19px}.nutrient h3{font-size:14px}.nutrient p{font-size:10px}.footnote{display:block;text-align:center;color:#748397;font-size:9px;margin-top:7px}.benefits{padding-top:60px}.benefits .section-heading{margin-bottom:38px}.benefits-grid{gap:15px}.feature{padding:0;overflow:hidden}.feature-art{height:235px;display:grid;place-items:center;border-bottom:2px solid #f4dc15;color:white;font-family:var(--serif);font-size:26px;letter-spacing:.04em;text-align:center;text-shadow:0 2px 8px #18243c99}.mom .feature-art{background:linear-gradient(135deg,#d49f715c,#9f73524d),linear-gradient(45deg,#785b43,#e6ba82)}.glass .feature-art{background:radial-gradient(ellipse at center,#62d2b6 0 16%,#a0e8db 17% 26%,#e9eee7 27% 50%,#f8e6a5 51% 70%,#fff 71%);color:#238d76}.girl .feature-art{background:linear-gradient(135deg,#be78494d,#efb27e),linear-gradient(45deg,#593d32,#e8ba8e)}.salad .feature-art{background:radial-gradient(circle,#f76743 0 8%,transparent 9%),repeating-radial-gradient(#49a740 0 9%,#e4c08d 10% 16%);font-size:18px}.zero .feature-art{background:radial-gradient(circle at center,#fff 0 35%,#6b9e34 36% 48%,#d5c9b0 49% 59%,#fff 60%);color:#312b29;font-size:55px}.zero .feature-art small{font-family:var(--sans);font-size:17px;line-height:.9}.anvisa .feature-art{background:#fff;color:#00a95c;text-shadow:none;font-size:86px;line-height:.42}.anvisa .feature-art small{color:#37338b;font-family:var(--sans);font-size:31px;letter-spacing:.22em}.feature h3{color:#2254de;margin:17px 16px 8px;font-size:15px}.feature p{margin:0 16px 17px;font-size:10px}.testimonials{background:#2628d9;color:#fff;padding:70px max(10px,calc((100vw - 1160px)/2))}.light h2,.light p{color:#fff}.light{margin-bottom:32px}.video-row{display:flex;align-items:center;gap:17px;justify-content:center}.video-card{height:285px;flex:1;max-width:184px;border:5px solid #ff7932;border-radius:16px;background:linear-gradient(145deg,#fff,#f2f2f2 12%,#2b344c 13%,#181d2c 78%,#e9eaeb 79%);color:#fff;box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 9px #5cd6e0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:27px 12px 9px;text-align:center}.video-card span{background:#fff;color:#2d5bcd;font-size:8px;font-weight:700;padding:5px;border-radius:6px}.video-card b{font-size:11px;line-height:1.2;max-width:90px}.video-card i{font-size:8px;align-self:stretch;background:#15191d;padding:5px;font-style:normal;text-align:left}.carousel-arrow{background:#fff;border:0;color:#3d61d9;border-radius:50%;font-size:31px;width:28px;height:28px;display:grid;place-items:center;padding:0;cursor:pointer}.offers{padding-top:88px}.warm{background:linear-gradient(90deg,#e4f7ff,#ffe7be);padding:6px 13px}.offer-perks{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;color:#4c765d;font-size:10px;font-weight:600;margin:18px auto}.countdown{width:235px;margin:0 auto 22px;background:#fff;border:1px solid #eef1f8;border-radius:14px;text-align:center;padding:9px;box-shadow:0 6px 20px #2e60b710}.countdown small{font-size:7px;color:#7f91a4;display:block;letter-spacing:.12em}.countdown strong{display:block;font-size:27px;letter-spacing:.16em;font-weight:500;margin:2px 0}.countdown label{font-size:6px;color:#718092;letter-spacing:.05em;display:block}.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:end}.plan{position:relative;border:1px solid var(--line);border-radius:18px;padding:19px 14px 15px;text-align:center;box-shadow:0 8px 23px #2851aa1c;min-height:430px;display:flex;flex-direction:column;align-items:center;background:#fff}.plan.featured{background:var(--blue);color:#fff;border:2px solid #ff7400;min-height:464px;padding-top:25px}.plan-tag{background:#e0f3ff;color:#4375dd;border-radius:10px;padding:4px 11px;font-size:7px;font-weight:700;position:absolute;top:-8px;white-space:nowrap}.featured .plan-tag{color:#d7edff;background:#2963e5}.popular{position:absolute;top:-13px;background:#ff7400;padding:4px 27px;border-radius:11px;color:white;font-size:8px}.product-stack{height:106px;width:100%;display:flex;justify-content:center;align-items:flex-end;position:relative;background:#edf8ff;border-radius:13px;margin-bottom:10px}.product-stack .product-can{transform:scale(.47);margin:-36px}.product-stack.three .product-can{margin:-47px}.product-stack.six .product-can{margin:-46px}.product-stack.twelve .product-can{margin:-48px}.featured .product-stack{background:#2961e4}.plan h3{font-size:18px;color:var(--blue);margin:2px 0}.plan p{font-size:10px;margin:0}.plan ul{align-self:flex-start;text-align:left;margin:10px 0 9px}.plan li{font-size:9px;color:#5b816a;margin:4px 0}.plan li:before{content:'◉';color:#1cc063;margin-right:5px}.plan del{font-size:8px;color:#8591a4}.plan em{font-size:7px;color:#20a75d;background:#e5f7e8;font-style:normal;margin:2px}.plan>strong{font-size:29px;color:var(--blue);line-height:1.15;margin:5px 0 0}.plan>small{font-size:7px;color:#6c7f94}.buy{background:var(--orange);color:#fff;padding:11px 10px;font-size:10px;font-weight:700;border-radius:11px;width:100%;margin-top:14px;box-shadow:0 5px 10px #e55e183d}.plan>label{font-size:6px;color:#8390a1;margin:10px 0 4px}.processor{font-family:var(--sans);font-size:15px;color:#3b295b}.featured h3,.featured p,.featured del,.featured>small,.featured>label,.featured .processor{color:#fff}.featured em{background:#1f8f56;color:#e8fff1}.featured>strong{color:#fff}.guarantees{width:min(720px,100%);margin:30px auto 0;display:flex;justify-content:space-around;padding:17px}.guarantees span{color:#5c84d9;font-size:19px;display:grid;grid-template-columns:24px 1fr;grid-template-rows:1fr 1fr}.guarantees b{font-family:var(--sans);font-size:10px;color:#48576b}.guarantees small{font-size:8px;color:#929dab}.faq{padding-top:78px}.faq-list{max-width:620px;margin:0 auto}.faq details{border-bottom:1px solid #dae6ef}.faq summary{font-family:var(--serif);font-weight:700;font-size:13px;padding:14px 0;cursor:pointer;list-style:none;position:relative}.faq summary:after{content:'⌄';position:absolute;right:0;color:#74849a}.faq details p{font-size:11px;padding-bottom:10px}.cta-box{max-width:620px;background:var(--blue);color:#fff;padding:28px 35px;border-radius:18px;text-align:center;margin:40px auto 0;box-shadow:0 13px 21px #1748c536}.cta-box h3{font-size:22px}.cta-box p{color:#fff;font-size:11px;margin-bottom:17px}.cta-box .button{font-size:9px;margin:auto;padding:12px 25px}.references{padding-top:65px;padding-bottom:50px}.references>div{max-width:670px;margin:auto}.references h2{font-size:25px;margin-bottom:8px}.references p{font-size:9px;margin:0 0 10px}.references .eyebrow{margin-bottom:5px}footer{background:var(--blue);color:#fff;padding:38px max(30px,calc((100vw - 1120px)/2)) 13px;font-size:9px}footer p{color:#e3edff;font-size:9px;margin:8px 0}footer a{display:block;color:#fff;margin:7px 0}.footer-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:80px;border-bottom:1px solid #4070ec;padding-bottom:30px}.footer-grid h3{font-family:var(--sans);font-size:12px;margin:6px 0}.footer-grid b{font-size:10px}.footer-grid+small{display:block;text-align:center;margin-top:13px;font-size:8px}.whatsapp{position:fixed;right:24px;bottom:22px;width:48px;height:48px;border-radius:50%;background:#1cca68;border:3px solid #d5ffe7;color:#fff;display:grid;place-items:center;font-size:24px;box-shadow:0 4px 14px #0003;z-index:8}
@media(max-width:800px){body{font-size:13px}h1{font-size:38px}h2{font-size:31px}.hero{padding-top:45px;flex-direction:column;text-align:center;gap:8px}.hero-copy{width:100%}.hero-copy p{margin-left:auto;margin-right:auto}.hero-copy .button{margin-left:auto;margin-right:auto}.hero-visual{width:100%;min-width:0;height:290px;transform:scale(.88);transform-origin:top}.ticker{justify-content:flex-start;gap:50px}.ticker span{padding-left:25px}.cards.four{grid-template-columns:repeat(2,1fr)}.plans{grid-template-columns:repeat(2,1fr);gap:24px 12px}.footer-grid{gap:35px}.video-card{max-width:155px;height:255px}.video-row{gap:9px}.video-card:nth-of-type(5){display:none}}
@media(max-width:540px){.section{padding:62px 18px}.section-shell{padding-left:18px;padding-right:18px}h1{font-size:33px}h2{font-size:28px}.hero{min-height:auto}.hero-visual{height:245px;transform:scale(.69);width:145%;margin-left:-22%;margin-top:-17px;margin-bottom:-55px}.impact,.comparison{grid-template-columns:1fr}.impact{gap:22px;padding:25px}.cards.three{grid-template-columns:1fr}.cards.four{grid-template-columns:1fr}.issues .card{height:auto}.section-heading{margin-bottom:27px}.image-cards .photo-placeholder{height:185px}.nutrient-grid{grid-template-columns:1fr}.nutrient{min-height:152px}.benefits-grid{grid-template-columns:1fr}.feature-art{height:220px}.testimonials{padding-top:58px;padding-bottom:58px}.video-row{overflow:hidden;justify-content:flex-start}.video-card{min-width:135px;height:224px}.carousel-arrow{display:none}.plans{grid-template-columns:1fr;max-width:300px;margin:auto}.plan.featured{min-height:430px}.offer-perks{gap:8px 11px}.guarantees{display:block}.guarantees span{width:180px;margin:10px auto}.footer-grid{grid-template-columns:1fr;gap:20px}.footer-grid>div{padding-bottom:4px}.ticker{font-size:7px}.comparison{margin-top:35px}.references{padding-top:50px}.whatsapp{right:14px;bottom:14px}.cta-box{padding:25px 19px}.cta-box h3{font-size:20px}}

/* hero.css */
.hero-visual {
  height: 355px;
  position: relative;
  isolation: isolate;
}

.hero-product-image {
  display: block;
  position: absolute;
  inset: -7.5%;
  width: 115%;
  height: 115%;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: multiply;
  opacity: 0.97;
  filter: drop-shadow(11px 16px 18px rgb(29 67 133 / 18%));
}

@media (max-width: 800px) {
  .hero-visual {
    width: 100%;
    min-width: 0;
    height: 290px;
    transform: scale(.88);
    transform-origin: top;
  }
  .hero-product-image { object-position: center; }
}

@media (max-width: 540px) {
  .hero-copy .eyebrow.pill {
    display: none;
  }

  .hero-visual {
    height: 245px;
    width: 145%;
    margin: -17px 0 -55px -22%;
    transform: scale(.69);
  }
  .hero-product-image { object-position: center; }
}

/* responsive.css */
/* Responsive flow and overflow safeguards */
img,
video {
  max-width: 100%;
}

.card,
.plan,
.impact > *,
.comparison > *,
.footer-grid > * {
  min-width: 0;
}

.card h3,
.card p,
.plan,
.faq summary,
footer p {
  overflow-wrap: break-word;
  word-break: normal;
}

.button {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

@media (max-width: 1024px) {
  .section,
  .section-shell {
    padding-left: clamp(22px, 5vw, 52px);
    padding-right: clamp(22px, 5vw, 52px);
  }

  .hero {
    min-height: auto;
    flex-direction: column;
    align-items: center;
    gap: 0;
    padding-top: clamp(42px, 7vw, 68px);
    padding-bottom: clamp(48px, 7vw, 70px);
    text-align: center;
  }

  .hero-copy {
    display: contents;
  }

  .hero-copy .eyebrow {
    order: 1;
  }

  .hero-copy h1 {
    order: 2;
    width: min(100%, 720px);
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
  }

  .hero-copy p {
    order: 3;
    width: min(100%, 650px);
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-visual {
    order: 4;
    flex: none;
    width: min(100%, 680px);
    min-width: 0;
    height: clamp(275px, 42vw, 380px);
    margin: 18px auto 24px;
    transform: none;
    overflow: hidden;
  }

  .hero-product-image {
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .hero-copy .button {
    order: 5;
    width: min(100%, 390px);
    margin: 0 auto;
  }

  .hero-copy small {
    order: 6;
    width: 100%;
    margin: 14px auto 0;
  }

  .cards.four,
  .plans {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cards.three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .plans {
    gap: 28px 18px;
    align-items: stretch;
  }

  .plan,
  .plan.featured {
    min-height: 0;
    height: 100%;
  }

  .video-row {
    justify-content: flex-start;
    overflow-x: auto;
    padding: 4px 22px 18px;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
  }

  .video-card,
  .video-card:nth-of-type(5) {
    display: flex;
    flex: 0 0 min(31vw, 210px);
    max-width: 210px;
    min-width: 170px;
    scroll-snap-align: center;
  }
}

@media (max-width: 700px) {
  h1 {
    font-size: clamp(31px, 8.8vw, 40px);
    line-height: 1.02;
  }

  h2 {
    font-size: clamp(27px, 7.5vw, 33px);
    line-height: 1.04;
    text-wrap: balance;
  }

  .hero {
    padding-top: 34px;
    padding-bottom: 46px;
  }

  .hero-copy p {
    font-size: 14px;
    line-height: 1.58;
    margin-bottom: 8px;
  }

  .hero-visual {
    width: 100%;
    height: clamp(235px, 72vw, 310px);
    margin: 14px auto 20px;
  }

  .hero-product-image {
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .cards.three,
  .cards.four,
  .plans,
  .impact,
  .comparison,
  .footer-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .issues .card,
  .plan,
  .plan.featured {
    height: auto;
  }

  .impact,
  .comparison {
    gap: 18px;
  }

  .plans {
    width: min(100%, 360px);
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }

  .offer-perks,
  .guarantees {
    align-items: stretch;
  }

  .guarantees {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .guarantees span {
    width: min(100%, 230px);
    margin: 0 auto;
  }

  .video-row {
    margin-left: -18px;
    margin-right: -18px;
    padding-left: 26px;
    padding-right: 26px;
  }

  .video-card,
  .video-card:nth-of-type(5) {
    flex-basis: min(72vw, 220px);
    min-width: min(72vw, 220px);
    height: 300px;
  }

  .carousel-arrow {
    display: none;
  }
}

@media (max-width: 380px) {
  .section,
  .section-shell {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hero-copy .button {
    padding-left: 16px;
    padding-right: 16px;
    font-size: 10px;
  }

  .card,
  .impact,
  .comparison .card {
    padding-left: 17px;
    padding-right: 17px;
  }
}

/* image-cards.css */
.image-cards {
  gap: clamp(16px, 2vw, 24px);
}

.image-cards .photo {
  position: relative;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgb(209 222 245 / 80%);
  border-radius: 22px;
  background: linear-gradient(180deg, #ffffff 0%, #fdfefe 100%);
  box-shadow:
    0 18px 45px rgb(26 62 128 / 11%),
    0 3px 10px rgb(26 62 128 / 6%);
  transition: transform .28s ease, box-shadow .28s ease;
}

.image-cards .photo:hover {
  transform: translateY(-5px);
  box-shadow:
    0 24px 55px rgb(26 62 128 / 16%),
    0 5px 14px rgb(26 62 128 / 8%);
}

.photo-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eaf3f8;
}

.photo-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, transparent 64%, rgb(8 28 61 / 11%) 100%),
    linear-gradient(135deg, rgb(255 255 255 / 7%), transparent 42%);
}

.photo-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.012);
  filter: saturate(.96) contrast(1.025) brightness(1.015);
  transition: transform .45s ease, filter .45s ease;
}

.image-cards .photo:hover .photo-media img {
  transform: scale(1.045);
  filter: saturate(1) contrast(1.035) brightness(1.02);
}

.image-cards .mother .photo-media img {
  object-position: center 52%;
}

.image-cards .child .photo-media::before {
  content: "";
  position: absolute;
  inset: -14px;
  background: url("./assets/optimized/crianca-neuro-mix-800.webp") center / cover no-repeat;
  filter: blur(12px) saturate(.82) brightness(.88);
  opacity: .48;
  transform: scale(1.04);
}

.image-cards .child .photo-media img {
  position: relative;
  z-index: 1;
  object-fit: contain;
  object-position: center;
  transform: none;
}

.image-cards .child .photo-media::after {
  z-index: 2;
}

.image-cards .child:hover .photo-media img {
  transform: none;
}

.image-cards .doctors .photo-media img {
  object-position: center 48%;
}

.image-cards .photo h3 {
  display: grid;
  place-items: center;
  min-height: 62px;
  margin: 0;
  padding: 15px 18px 16px;
  color: #14213b;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
}

@media (max-width: 1024px) and (min-width: 701px) {
  .image-cards .photo:last-child {
    grid-column: 1 / -1;
    width: min(100%, calc(50% - 12px));
    justify-self: center;
  }
}

@media (max-width: 700px) {
  .image-cards {
    width: min(100%, 430px);
    margin-left: auto;
    margin-right: auto;
  }

  .image-cards .photo:hover {
    transform: none;
  }

  .photo-media {
    aspect-ratio: 4 / 3;
  }

  .image-cards .photo h3 {
    min-height: 58px;
    padding: 14px 16px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .image-cards .photo,
  .photo-media img {
    transition: none;
  }
}

/* footer.css */
.footer-brand {
  display: grid;
  place-items: center;
  width: 104px;
  aspect-ratio: 1;
  margin-bottom: 16px;
  padding: 8px;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 30%);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 12px 30px rgb(4 24 94 / 24%);
}

.footer-brand img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

footer .footer-whatsapp-link {
  display: inline;
  margin: 0;
  color: inherit;
}

@media (max-width: 700px) {
  .footer-brand {
    width: 92px;
    margin-bottom: 14px;
  }
}

/* animations.css */
.impact .bars i {
  position: relative;
  overflow: hidden;
  background: #f6e7ce;
}

.impact .bars i::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--level);
  border-radius: inherit;
  background: linear-gradient(90deg, #2451dc 0%, #3565ec 72%, #5279f3 100%);
  box-shadow: 0 0 16px rgb(36 81 220 / 18%);
  transform: scaleX(1);
  transform-origin: left center;
  transition: transform 1.05s cubic-bezier(.22, 1, .36, 1);
  transition-delay: var(--bar-delay, 0ms);
}

.impact .bars > div:nth-child(1) { --bar-delay: 40ms; }
.impact .bars > div:nth-child(2) { --bar-delay: 130ms; }
.impact .bars > div:nth-child(3) { --bar-delay: 220ms; }
.impact .bars > div:nth-child(4) { --bar-delay: 310ms; }

.impact .bars b {
  min-width: 38px;
  text-align: right;
  font-variant-numeric: tabular-nums;
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity .45s ease var(--bar-delay, 0ms),
    transform .45s ease var(--bar-delay, 0ms);
}

.impact.is-animation-ready .bars i::after {
  transform: scaleX(0);
}

.impact.is-animation-ready .bars b {
  opacity: 0;
  transform: translateY(5px);
}

.impact.is-animated .bars i::after {
  transform: scaleX(1);
}

.impact.is-animated .bars b {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .impact .bars i::after {
    transform: scaleX(1);
    transition: none;
  }

  .impact .bars b {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* video-carousel.css */
.video-carousel {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 40px;
  align-items: center;
  gap: 14px;
  width: min(100%, 1120px);
  margin: 0 auto;
}

.video-track {
  display: flex;
  gap: 18px;
  min-width: 0;
  padding: 9px 6px 24px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.video-track::-webkit-scrollbar {
  display: none;
}

.video-track .video-card,
.video-track .video-card:nth-of-type(5) {
  position: relative;
  display: block;
  flex: 0 0 clamp(190px, 21.5vw, 235px);
  max-width: 235px;
  min-width: 190px;
  height: auto;
  aspect-ratio: 9 / 16;
  padding: 7px;
  overflow: hidden;
  border: 4px solid #ff7932;
  border-radius: 21px;
  background: #fff;
  box-shadow:
    0 0 0 3px #fff,
    0 0 0 6px #55d4e3,
    0 16px 36px rgb(8 11 83 / 30%);
  scroll-snap-align: start;
  transition: transform .28s ease, box-shadow .28s ease;
}

.video-track .video-card:hover {
  transform: translateY(-5px);
  box-shadow:
    0 0 0 3px #fff,
    0 0 0 6px #55d4e3,
    0 22px 44px rgb(8 11 83 / 38%);
}

.video-track .video-card video {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  background: #111a31;
  object-fit: cover;
}

.video-carousel .carousel-arrow {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0 0 3px;
  border: 1px solid rgb(255 255 255 / 72%);
  border-radius: 50%;
  background: #fff;
  color: #315bdc;
  box-shadow: 0 9px 24px rgb(7 10 82 / 24%);
  font-family: Arial, sans-serif;
  font-size: 29px;
  line-height: 1;
  cursor: pointer;
  transition: transform .2s ease, opacity .2s ease, box-shadow .2s ease;
}

.video-carousel .carousel-arrow:hover:not(:disabled) {
  transform: scale(1.08);
  box-shadow: 0 12px 28px rgb(7 10 82 / 32%);
}

.video-carousel .carousel-arrow:disabled {
  opacity: .36;
  cursor: default;
  box-shadow: none;
}

@media (max-width: 900px) {
  .video-track .video-card,
  .video-track .video-card:nth-of-type(5) {
    flex-basis: clamp(185px, 30vw, 220px);
  }
}

@media (max-width: 700px) {
  .video-carousel {
    display: block;
    width: calc(100% + 20px);
    margin-left: -10px;
  }

  .video-track {
    gap: 17px;
    padding: 9px 24px 25px;
    scroll-padding-inline: 24px;
  }

  .video-track .video-card,
  .video-track .video-card:nth-of-type(5) {
    flex: 0 0 min(72vw, 230px);
    min-width: min(72vw, 230px);
    max-width: 230px;
    height: auto;
  }

  .video-track .video-card:hover {
    transform: none;
  }

  .video-carousel .carousel-arrow {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .video-track {
    scroll-behavior: auto;
  }

  .video-track .video-card,
  .video-carousel .carousel-arrow {
    transition: none;
  }
}

/* pricing.css */
.offers {
  background:
    radial-gradient(circle at 50% 6%, rgb(224 242 255 / 72%), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f8fcff 100%);
}

.pricing-heading {
  max-width: 780px;
  margin-bottom: 30px;
}

.pricing-heading .eyebrow {
  margin-bottom: 9px;
}

.pricing-heading h2 {
  color: var(--blue);
  font-size: clamp(32px, 4vw, 48px);
  text-wrap: balance;
}

.pricing-comparator {
  width: min(100%, 1120px);
  margin: 0 auto;
}

.pricing-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: min(100%, 930px);
  min-height: 62px;
  margin: 0 auto 42px;
  padding: 4px;
  overflow: visible;
  border: 1px solid #d5e4f6;
  border-radius: 17px;
  background: rgb(255 255 255 / 94%);
  box-shadow: 0 9px 25px rgb(26 73 149 / 10%);
}

.pricing-tab {
  position: relative;
  min-width: 0;
  border: 0;
  border-radius: 13px;
  background: transparent;
  color: #172541;
  cursor: pointer;
  font: 700 13px/1 var(--sans);
  letter-spacing: .02em;
  text-transform: uppercase;
  transition:
    color .22s ease,
    background-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}

.pricing-tab:hover:not(.is-active) {
  background: #f1f7ff;
  color: var(--blue);
}

.pricing-tab.is-active {
  background: linear-gradient(135deg, #2451dc, #285ee8);
  color: #fff;
  box-shadow: 0 7px 16px rgb(36 81 220 / 28%);
}

.pricing-tab small {
  position: absolute;
  top: -23px;
  left: 50%;
  min-width: 126px;
  padding: 7px 13px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: var(--orange);
  box-shadow: 0 7px 15px rgb(255 107 0 / 22%);
  color: #fff;
  font-size: 8px;
  line-height: 1;
  white-space: nowrap;
}

.pricing-tab:focus-visible,
.pricing-option:focus-visible,
.pricing-buy:focus-visible,
.pricing-panel:focus-visible {
  outline: 3px solid rgb(27 184 92 / 55%);
  outline-offset: 3px;
}

.pricing-panel[hidden],
.pricing-option[hidden] {
  display: none;
}

.pricing-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  min-height: 455px;
  overflow: hidden;
  border: 1px solid #8eb7ef;
  border-radius: 25px;
  background: #fff;
  box-shadow: 0 18px 48px rgb(23 70 143 / 12%);
}

.pricing-panel.is-entering {
  animation: pricing-panel-in .34s cubic-bezier(.2, .72, .35, 1) both;
}

.pricing-panel-media {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 455px;
  padding: clamp(30px, 5vw, 58px);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 50%, #fff 0%, #f5fbff 54%, #e8f5ff 100%);
  isolation: isolate;
}

.pricing-panel-media::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(40vw, 480px);
  height: min(12vw, 145px);
  border-radius: 50%;
  background: rgb(130 188 243 / 14%);
  filter: blur(2px);
  transform: translateY(128px);
}

.pricing-panel-media img {
  display: block;
  width: 100%;
  height: 330px;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: multiply;
  filter: drop-shadow(0 18px 18px rgb(22 58 107 / 17%));
}

.pricing-panel-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: clamp(34px, 4vw, 56px);
  text-align: center;
}

.pricing-offer-tag {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin-bottom: 13px;
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--blue);
  box-shadow: 0 6px 13px rgb(36 81 220 / 19%);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.pricing-panel-content h3 {
  margin: 0;
  color: var(--blue);
  font-size: clamp(32px, 3.3vw, 45px);
  line-height: 1.02;
  text-wrap: balance;
}

.pricing-duration {
  margin: 7px 0 13px;
  color: #62718a;
  font-size: 19px;
  font-weight: 600;
}

.pricing-benefits {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 22px;
  width: 100%;
  margin: 0 0 15px;
  padding: 0 0 16px;
  border-bottom: 1px solid #d9e5f3;
  list-style: none;
}

.pricing-benefits li {
  color: #4f795f;
  font-size: 12px;
  font-weight: 600;
}

.pricing-benefits li::before {
  content: "⊙";
  margin-right: 6px;
  color: var(--green);
}

.pricing-value {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
}

.pricing-value del {
  color: #8794a8;
  font-size: 10px;
}

.pricing-value em {
  margin-top: 4px;
  padding: 4px 11px;
  border-radius: 999px;
  background: #e5f8eb;
  color: #13914b;
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
}

.pricing-value strong {
  margin-top: 7px;
  color: var(--blue);
  font-size: clamp(38px, 4.2vw, 54px);
  line-height: 1;
  letter-spacing: -.04em;
  white-space: nowrap;
}

.pricing-value .pricing-installments {
  color: inherit;
  font-size: .55em;
  font-weight: inherit;
  letter-spacing: 0;
  vertical-align: .16em;
}

.pricing-value small {
  margin-top: 6px;
  color: #6f7f94;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
}

.pricing-buy {
  display: block;
  width: 100%;
  margin-top: 20px;
  padding: 16px 20px;
  border-radius: 14px;
  background: linear-gradient(135deg, #ff6b00, #ff7e18);
  box-shadow: 0 10px 22px rgb(229 94 24 / 25%);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
  text-transform: uppercase;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    filter .2s ease;
}

.pricing-buy:hover {
  transform: translateY(-2px);
  box-shadow: 0 13px 25px rgb(229 94 24 / 32%);
  filter: brightness(1.03);
}

.pricing-payment {
  margin-top: 12px;
  color: #7d8ba0;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.pricing-payment img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.pricing-payment b {
  margin-left: 3px;
  color: #3b295b;
  font-size: 19px;
  text-transform: lowercase;
}

.pricing-alternatives {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
}

.pricing-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-width: 0;
  min-height: 128px;
  padding: 18px;
  border: 1px solid #d7e5f5;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 9px 24px rgb(31 70 137 / 8%);
  color: var(--ink);
  cursor: pointer;
  font-family: var(--sans);
  text-align: left;
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}

.pricing-option:hover {
  transform: translateY(-3px);
  border-color: #8eb7ef;
  box-shadow: 0 13px 29px rgb(31 70 137 / 14%);
}

.pricing-option-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #e9f5ff;
  color: var(--blue);
  font-size: 21px;
}

.pricing-option > span:nth-child(2) {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.pricing-option small {
  margin-bottom: 4px;
  color: #3372dd;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.pricing-option b {
  overflow-wrap: normal;
  color: #1b2943;
  font-size: 11px;
  line-height: 1.2;
}

.pricing-option strong {
  margin-top: 7px;
  color: var(--blue);
  font-size: 20px;
  line-height: 1;
  white-space: nowrap;
}

.pricing-option-saving {
  align-self: flex-start;
  margin-top: 8px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #e7f8ec;
  color: #138d49;
  font-size: 7px;
  font-weight: 800;
  line-height: 1.15;
  text-transform: uppercase;
}

.pricing-option-best {
  border-color: rgb(24 184 92 / 42%);
  background: linear-gradient(145deg, #fff 55%, #f1fff6 100%);
}

.pricing-option-best .pricing-option-saving {
  background: var(--green);
  color: #fff;
}

.pricing-option em {
  color: #718198;
  font-size: 8px;
  font-style: normal;
  font-weight: 700;
  text-align: right;
  text-transform: uppercase;
  white-space: nowrap;
}

.pricing-option em span {
  margin-left: 5px;
  color: var(--blue);
  font-size: 14px;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes pricing-panel-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 900px) {
  .pricing-panel {
    grid-template-columns: minmax(0, .92fr) minmax(330px, 1.08fr);
  }

  .pricing-panel-media {
    padding: 28px;
  }

  .pricing-panel-media img {
    height: 285px;
  }

  .pricing-panel-content {
    padding: 34px 28px;
  }

  .pricing-option {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .pricing-option em {
    grid-column: 2;
    text-align: left;
  }
}

@media (max-width: 700px) {
  .pricing-heading {
    margin-bottom: 24px;
  }

  .pricing-tabs {
    display: flex;
    width: 100%;
    margin-bottom: 30px;
    min-height: 78px;
    padding: 18px 4px 4px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-padding-inline: 4px;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  /* No mobile, os quatro kits ficam visíveis em uma sequência fixa para
     facilitar a comparação e a escolha sem depender de abas. */
  .pricing-comparator.is-mobile-stack .pricing-tabs {
    display: none;
  }

  .pricing-comparator.is-mobile-stack .pricing-panels {
    display: grid;
    gap: 18px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: 0;
    border-color: rgb(24 184 92 / 72%);
    border-radius: 20px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel[hidden] {
    display: grid;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media {
    min-height: 250px;
    padding: 20px 12px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media img {
    height: 220px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-content {
    padding: 22px 16px 24px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-content h3 {
    font-size: clamp(25px, 6vw, 34px);
  }

  .pricing-comparator.is-mobile-stack .pricing-duration {
    font-size: 12px;
  }

  .pricing-comparator.is-mobile-stack .pricing-benefits {
    gap: 6px;
  }

  .pricing-comparator.is-mobile-stack .pricing-buy {
    margin-top: 16px;
    padding: 13px 10px;
    font-size: 10px;
  }

  .pricing-tabs::-webkit-scrollbar {
    display: none;
  }

  .pricing-tab {
    flex: 0 0 118px;
    min-height: 52px;
    scroll-snap-align: center;
  }

  .pricing-tab small {
    top: -16px;
    z-index: 2;
    min-width: 104px;
    padding: 5px 9px;
    font-size: 7px;
  }

  .pricing-panel {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    border-radius: 21px;
  }

  .pricing-panel-media {
    min-height: 250px;
    padding: 24px 20px 12px;
  }

  .pricing-panel-media::before {
    width: 82vw;
    height: 95px;
    transform: translateY(76px);
  }

  .pricing-panel-media img {
    width: 100%;
    height: 225px;
  }

  .pricing-panel-content {
    padding: 25px 22px 29px;
  }

  .pricing-panel-content h3 {
    font-size: clamp(29px, 9vw, 38px);
  }

  .pricing-duration {
    font-size: 13px;
  }

  .pricing-benefits {
    gap: 7px 16px;
  }

  .pricing-value strong {
    font-size: clamp(39px, 13vw, 50px);
  }

  .pricing-buy {
    padding-inline: 14px;
    font-size: 11px;
  }

  .pricing-alternatives {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .pricing-option {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 112px;
    padding: 15px 16px;
  }

  .pricing-option em {
    grid-column: auto;
    text-align: right;
  }
}

@media (max-width: 430px) {
  .pricing-comparator.is-mobile-stack .pricing-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media {
    min-height: 205px;
    padding: 18px 18px 8px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media img {
    height: 190px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-content {
    padding: 22px 20px 25px;
  }
}

@media (max-width: 390px) {
  .pricing-tab {
    flex-basis: 108px;
    font-size: 11px;
  }

  .pricing-tabs {
    min-height: 82px;
    padding-top: 20px;
  }

  .pricing-panel-content {
    padding-inline: 17px;
  }

  .pricing-benefits {
    flex-direction: column;
    gap: 5px;
  }

  .pricing-option {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .pricing-option-icon {
    width: 42px;
    height: 42px;
  }

  .pricing-option em {
    grid-column: 2;
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pricing-panel.is-entering {
    animation: none;
  }

  .pricing-tab,
  .pricing-option,
  .pricing-buy {
    scroll-behavior: auto;
    transition: none;
  }

  .pricing-option:hover,
  .pricing-buy:hover {
    transform: none;
  }
}

/* expert.css */
.expert {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 16%, rgb(66 121 240 / 11%), transparent 31%),
    radial-gradient(circle at 92% 82%, rgb(24 184 92 / 9%), transparent 28%),
    linear-gradient(180deg, #f8fbff 0%, #eef7ff 100%);
}

.expert::before,
.expert::after {
  position: absolute;
  width: 230px;
  height: 230px;
  border: 1px solid rgb(42 88 213 / 10%);
  border-radius: 50%;
  content: "";
}

.expert::before {
  top: 72px;
  left: -150px;
}

.expert::after {
  right: -145px;
  bottom: 120px;
}

.expert-shell {
  position: relative;
  z-index: 1;
  width: min(1060px, 100%);
  margin: 0 auto;
}

.expert-heading {
  max-width: 680px;
  margin: 0 auto 34px;
  text-align: center;
}

.expert-heading h2 {
  margin: 10px 0 0;
  color: var(--ink);
}

.expert-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--blue);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
}

.expert-eyebrow::before,
.expert-eyebrow::after {
  width: 28px;
  height: 1px;
  background: #8bacff;
  content: "";
}

.expert-portrait {
  position: relative;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgb(39 81 181 / 14%);
  border-radius: 30px;
  background: #dce8f5;
  box-shadow: 0 24px 60px rgb(22 58 132 / 18%);
}

.expert-portrait img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.expert-portrait::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 34%;
  background: linear-gradient(180deg, transparent, rgb(8 29 71 / 82%));
  content: "";
  pointer-events: none;
}

.expert-portrait figcaption {
  position: absolute;
  right: 34px;
  bottom: 28px;
  left: 34px;
  z-index: 1;
  display: flex;
  flex-direction: column;
  color: #fff;
}

.expert-portrait figcaption strong {
  font-family: var(--serif);
  font-size: 25px;
  line-height: 1.1;
}

.expert-portrait figcaption span {
  margin-top: 6px;
  color: #dbe8ff;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .03em;
}

.expert-letter {
  position: relative;
  width: min(900px, calc(100% - 54px));
  margin: 28px auto 0;
  padding: 54px 66px 48px;
  overflow: hidden;
  border: 1px solid rgb(54 99 205 / 15%);
  border-radius: 28px;
  background: rgb(255 255 255 / 94%);
  box-shadow: 0 22px 55px rgb(23 64 147 / 12%);
}

.expert-letter::after {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--blue), #5f86f4 55%, var(--green));
  content: "";
}

.expert-quote {
  position: absolute;
  top: 22px;
  right: 42px;
  color: rgb(39 81 220 / 9%);
  font-family: Georgia, serif;
  font-size: 112px;
  line-height: 1;
}

.expert-letter h2 {
  position: relative;
  margin-bottom: 25px;
  color: var(--blue);
  font-size: 34px;
}

.expert-letter p {
  position: relative;
  margin-bottom: 18px;
  color: #52657d;
  font-size: 14px;
  line-height: 1.8;
}

.expert-letter .expert-invitation {
  margin: 27px 0 21px;
  padding: 17px 20px;
  border-left: 4px solid var(--green);
  border-radius: 0 14px 14px 0;
  background: #eefbf4;
  color: #183d2a;
  font-size: 19px;
  font-weight: 700;
}

.expert-signature {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(430px, 100%);
  max-width: 100%;
  margin: 35px 0 0 auto;
  color: #25389f;
}

.expert-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(430px, 100%);
  margin: 22px 0 0 auto;
  min-height: 48px;
  padding: 13px 26px;
  text-decoration: none;
}

.expert-signature strong {
  color: #25389f;
  font-size: clamp(24px, 2.4vw, 32px);
  font-style: italic;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.15;
}

.expert-signature-art {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 2px 2px rgb(25 45 130 / 8%));
}

.expert-signature small {
  margin-top: 7px;
  color: #73829a;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: none;
}

@media (max-width: 700px) {
  .expert-heading {
    margin-bottom: 25px;
  }

  .expert-portrait {
    border-radius: 22px;
  }

  .expert-portrait figcaption {
    right: 20px;
    bottom: 18px;
    left: 20px;
  }

  .expert-portrait figcaption strong {
    font-size: 19px;
  }

  .expert-portrait figcaption span {
    max-width: 260px;
    font-size: 9px;
  }

  .expert-letter {
    width: 100%;
    margin-top: 18px;
    padding: 40px 24px 34px;
    border-radius: 22px;
  }

  .expert-letter h2 {
    padding-right: 30px;
    font-size: 28px;
  }

  .expert-letter p {
    font-size: 13px;
    line-height: 1.72;
  }

  .expert-quote {
    top: 18px;
    right: 18px;
    font-size: 82px;
  }

  .expert-signature {
    width: min(330px, 100%);
    margin-top: 30px;
  }

  .expert-cta {
    width: 100%;
    margin-top: 2px;
    padding-inline: 18px;
  }

}

@media (max-width: 430px) {
  .expert-portrait figcaption span {
    display: none;
  }

  .expert-letter .expert-invitation {
    padding: 15px 16px;
    font-size: 13px;
  }
}

/* polish.css */
/* Final visual polish: rounded hero artwork and comfortable mobile typography. */
.hero-visual {
  overflow: hidden;
  border: 1px solid rgb(36 81 220 / 10%);
  border-radius: clamp(26px, 3vw, 40px);
  background:
    radial-gradient(circle at 60% 45%, rgb(225 246 255 / 88%), transparent 55%),
    linear-gradient(145deg, #fff 0%, #f8fcff 100%);
  box-shadow:
    0 22px 55px rgb(27 64 126 / 13%),
    inset 0 1px 0 rgb(255 255 255 / 92%);
}

/* Floating WhatsApp contact: revealed after meaningful scroll progress. */
.whatsapp-float {
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 20;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  color: #fff;
  text-decoration: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(12px) scale(.94);
  transition: opacity .24s ease, transform .24s ease, visibility .24s ease;
}

.whatsapp-float.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.whatsapp-float img {
  display: block;
  width: 60px;
  height: 60px;
  object-fit: contain;
  filter: drop-shadow(0 6px 14px rgba(17, 87, 47, .28));
}

.whatsapp-float__label {
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  padding: 0;
  border-radius: 999px;
  background: #18b85c;
  font-size: 13px;
  font-weight: 700;
  transition: max-width .2s ease, padding .2s ease;
}

.whatsapp-float:hover .whatsapp-float__label,
.whatsapp-float:focus-visible .whatsapp-float__label {
  max-width: 190px;
  padding: 10px 14px;
}

.whatsapp-float:focus-visible {
  outline: 3px solid #b8ffd0;
  outline-offset: 4px;
  border-radius: 999px;
}

@media (max-width: 700px) {
  .whatsapp-float {
    right: max(12px, env(safe-area-inset-right));
    bottom: max(12px, env(safe-area-inset-bottom));
  }

  .whatsapp-float img {
    width: 56px;
    height: 56px;
  }

  .whatsapp-float__label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .whatsapp-float,
  .whatsapp-float.is-visible,
  .whatsapp-float__label {
    transition: none;
  }
}

.hero-product-image {
  border-radius: inherit;
}

@media (max-width: 700px) {
  body {
    font-size: 19px;
    line-height: 1.6;
  }

  h1 {
    font-size: clamp(30px, 8.5vw, 38px);
    line-height: 1.06;
    letter-spacing: -.035em;
  }

  h2 {
    font-size: clamp(27px, 7.4vw, 32px);
    line-height: 1.1;
    letter-spacing: -.035em;
  }

  h3 {
    font-size: 18px;
    line-height: 1.28;
  }

  p {
    line-height: 1.65;
  }

  .eyebrow,
  .expert-eyebrow {
    font-size: 11px;
  }

  .hero {
    padding-top: 36px;
    padding-bottom: 50px;
  }

  .hero-copy .eyebrow {
    margin-bottom: 15px;
    font-size: 12px;
    line-height: 1.35;
    letter-spacing: .08em;
  }

  .hero-copy p {
    font-size: 19px;
    line-height: 1.68;
  }

  .hero-copy small {
    font-size: 13px;
    line-height: 1.5;
  }

  .hero-visual {
    border-radius: 25px;
    box-shadow:
      0 16px 38px rgb(27 64 126 / 14%),
      inset 0 1px 0 rgb(255 255 255 / 92%);
  }

  .button,
  .pricing-buy {
    min-height: 48px;
    font-size: 13px;
    line-height: 1.3;
  }

  .pricing-buy {
    width: 100%;
    font-size: 15px;
    padding-inline: 12px;
  }

  .pricing-comparator.is-mobile-stack .pricing-buy {
    width: 100%;
    min-height: 52px;
    padding: 13px 10px;
    font-size: 16px;
    line-height: 1.2;
    white-space: normal;
    text-wrap: balance;
  }

  .button {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .section-heading p {
    font-size: 14px;
    line-height: 1.65;
  }

  .card p,
  .step p {
    font-size: 14px;
    line-height: 1.6;
  }

  .image-cards .photo h3 {
    min-height: 0;
    font-size: 14px;
    line-height: 1.45;
  }

  .nutrient > small {
    font-size: 11px;
  }

  .nutrient h3 {
    font-size: 19px;
  }

  .nutrient p,
  .feature p {
    font-size: 14px;
    line-height: 1.58;
  }

  .feature h3 {
    font-size: 17px;
  }

  .footnote,
  .comparison small {
    font-size: 12px;
    line-height: 1.55;
  }

  .comparison li {
    font-size: 14px;
    line-height: 1.5;
  }

  .bars span {
    font-size: 14px;
  }

  .bars b {
    font-size: 14px;
  }

  .faq summary {
    padding: 17px 28px 17px 0;
    font-size: 19px;
    line-height: 1.4;
  }

  .faq details p {
    padding-bottom: 16px;
    font-size: 14px;
    line-height: 1.68;
  }

  .cta-box p {
    font-size: 14px;
    line-height: 1.6;
  }

  .references p {
    font-size: 12px;
    line-height: 1.65;
  }

  .pricing-tab {
    font-size: 13px;
  }

  .pricing-tabs {
    min-height: 78px;
    padding: 21px 4px 4px;
  }

  .pricing-tab small {
    top: -13px;
    z-index: 2;
    font-size: 8px;
  }

  .pricing-offer-tag {
    font-size: 11px;
  }

  .pricing-duration {
    font-size: 14px;
  }

  .pricing-benefits li {
    font-size: 14px;
  }

  .pricing-value del,
  .pricing-value small {
    font-size: 12px;
  }

  .pricing-value em {
    font-size: 11px;
  }

  .pricing-payment {
    font-size: 11px;
  }

  .pricing-payment img {
    width: calc(100% + 10px);
    max-width: none;
    margin-inline: -5px;
  }

  .pricing-option small {
    font-size: 11px;
  }

  .pricing-option b {
    font-size: 13px;
    line-height: 1.35;
  }

  .pricing-option-saving {
    font-size: 9px;
  }

  .pricing-option em {
    font-size: 10px;
  }

  .pricing-option {
    min-height: 98px;
    padding: 12px 14px;
    height: auto;
  }

  .pricing-option-icon {
    width: 34px;
    height: 34px;
  }

  .cta-box .button {
    min-height: 48px;
    font-size: 12px;
  }

  .expert-portrait figcaption strong {
    font-size: 21px;
  }

  .expert-portrait figcaption span {
    font-size: 12px;
    line-height: 1.45;
  }

  .expert-letter h2 {
    font-size: 29px;
    line-height: 1.12;
  }

  .expert-letter p,
  .expert-letter .expert-invitation {
    font-size: 14px;
    line-height: 1.72;
  }

  .expert-signature small {
    font-size: 10px;
    line-height: 1.5;
  }

  footer,
  footer p,
  footer a {
    font-size: 13px;
    line-height: 1.6;
  }

  .footer-grid h3 {
    font-size: 14px;
  }

  .footer-grid b {
    font-size: 13px;
  }

  .footer-grid + small {
    font-size: 11px;
  }
}

@media (max-width: 380px) {
  body {
    font-size: 19px;
  }

  h1 {
    font-size: clamp(29px, 9vw, 34px);
  }

  h2 {
    font-size: clamp(25px, 8vw, 30px);
  }

  .hero-visual {
    border-radius: 21px;
  }

  .hero-copy .button {
    font-size: 12px;
  }
}

/* Nome do nutriente acima da quantidade em todos os cards. */
body .nutrient > small {
  margin: 0 0 5px;
  line-height: 1.2;
}

body .nutrient > strong {
  margin: 0 0 14px;
}

/* conversion.css */
/* Conversion green is intentionally shared by every primary action. */
:root { --conversion-green: #12b95b; --conversion-green-dark: #0b9949; }

.button-green,
.button-blue,
.pricing-buy,
.buy,
.cta-box .button,
.expert-invitation .button {
  background: var(--conversion-green);
}

.pricing-panel-featured,
.pricing-panel:not([hidden]) {
  border: 2px solid var(--conversion-green) !important;
  box-shadow:
    0 0 0 3px rgb(18 185 91 / 9%),
    0 18px 42px rgb(18 135 74 / 16%);
}

.pricing-panel-featured:focus-visible,
.pricing-panel:not([hidden]):focus-visible {
  outline: 3px solid rgb(18 185 91 / 34%);
  outline-offset: 4px;
}

.button-green:hover,
.button-blue:hover,
.pricing-buy:hover,
.buy:hover,
.cta-box .button:hover,
.expert-invitation .button:hover {
  background: var(--conversion-green-dark);
}

.pricing-subtitle {
  margin: -2px auto 28px;
  color: var(--muted);
  font-size: 19px;
  line-height: 1.5;
}

.daily-countdown {
  width: min(100%, 330px);
  margin: -8px auto 28px;
  padding: 12px 18px 11px;
  border: 1px solid rgb(18 185 91 / 20%);
  border-radius: 16px;
  background: linear-gradient(135deg, #f4fff8, #fff);
  box-shadow: 0 8px 22px rgb(18 125 70 / 8%);
  text-align: center;
}

.daily-countdown-label,
.daily-countdown small {
  display: block;
  color: #5e7b6c;
  font-size: 10px;
  letter-spacing: .04em;
}

.daily-countdown strong {
  display: block;
  margin: 2px 0;
  color: var(--conversion-green-dark);
  font-size: 24px;
  font-variant-numeric: tabular-nums;
  letter-spacing: .12em;
}

.daily-countdown small { color: #81938a; font-size: 9px; }

@media (max-width: 700px) {
  .pricing-subtitle { margin-bottom: 24px; font-size: 19px; }
}

/* typography.css */
:root {
  --serif: 'Lato', Arial, sans-serif;
  --sans: 'Lato', Arial, sans-serif;
}

html,
body,
button,
input,
select,
textarea,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
span,
small,
strong,
b,
label,
summary,
li {
  font-family: 'Lato', Arial, sans-serif;
}

h1,
h2 {
  font-weight: 800;
  letter-spacing: -.035em;
}

h3 { font-weight: 700; }

/* Readable explanatory copy without overtaking its headings. */
body { font-size: 19px; }
p,
li,
small,
label,
.hero-copy small,
.section-heading p,
.card p,
.plan p,
.plan li,
.pricing-duration,
.pricing-benefits li,
.pricing-payment,
.pricing-option small,
.pricing-option-saving,
.faq details p,
.references p,
footer,
footer p,
footer a {
  font-size: 13px;
}

.hero-copy p,
.cognitive-heading p,
.landscape-copy > p,
.development-step p,
.comparison-card li,
.expert-letter p,
.expert-letter .expert-invitation,
.cta-box p {
  font-size: 19px;
}

body .nutrient p,
body .feature p,
body .image-cards h3,
body .comparison small,
body .footnote,
body .bars span,
body .pricing-benefits li,
body .pricing-duration,
body .pricing-payment,
body .plan p,
body .plan li {
  font-size: 13px;
}

body .nutrient > small,
body .pricing-option small,
body .pricing-option-saving,
body .pricing-payment {
  font-size: 12px;
}

.card,
.plan,
.pricing-panel,
.pricing-option,
.comparison-card,
.faq details,
.expert-letter,
footer {
  min-width: 0;
}

p,
li,
small,
label,
summary,
.pricing-duration,
.pricing-payment,
.pricing-benefits,
.pricing-option,
footer {
  overflow-wrap: break-word;
  word-break: normal;
}

@media (max-width: 700px) {
  body { font-size: 19px; }

  p,
  .section-heading p,
  .hero-copy p,
  .card p,
  .step p,
  .cognitive-card p,
  .landscape-copy > p,
  .development-step p,
  .comparison-card li,
  .nutrient p,
  .feature p,
  .faq details p,
  .cta-box p,
  .expert-letter p,
  .expert-letter .expert-invitation {
    font-size: 19px;
    line-height: 1.68;
  }

  .hero-copy p { font-size: 19px; }

  body .nutrient p,
  body .feature p,
  body .comparison small,
  body .footnote,
  body .bars span,
  body .pricing-benefits li,
  body .pricing-duration,
  body .pricing-payment,
  body .plan p,
  body .plan li {
    font-size: 19px;
  }

  .eyebrow,
  .expert-eyebrow,
  .comparison-kicker,
  .development-step small {
    font-size: 12px;
    line-height: 1.4;
  }

  .factor-item strong,
  .pricing-tab,
  .pricing-option b,
  .hero-copy small,
  footer,
  footer p,
  footer a {
    font-size: 14px;
  }

  .nutrient > small,
  .pricing-offer-tag,
  .pricing-option small,
  .pricing-payment,
  .references p,
  .footnote,
  .comparison small {
    font-size: 12px;
  }

  .pricing-benefits li,
  .comparison li { font-size: 19px; }

  .button,
  .pricing-buy,
  .cta-box .button {
    min-height: 48px;
    font-size: 13px;
    line-height: 1.35;
  }

  .card,
  .cognitive-card,
  .development-step > div,
  .comparison-card,
  .pricing-option {
    height: auto;
  }
}

@media (max-width: 380px) {
  body { font-size: 19px; }
  .hero-copy .button { font-size: 13px; }
}

/* Text that previously resolved to 15px or 16px in earlier stylesheets. */
.hero-copy p,
.feature h3,
.processor,
.product-can.large span,
.pricing-subtitle,
.cognitive-heading p,
.nutrient-orbit strong,
.expert-letter .expert-invitation {
  font-size: 19px;
}

/* Let enlarged copy grow without clipping or collisions. */
.card,
.step,
.comparison .card,
.cognitive-card,
.development-step,
.comparison-card,
.nutrient,
.feature,
.plan,
.pricing-panel,
.pricing-option,
.faq details,
.cta-box,
.expert-letter,
footer {
  height: auto;
  min-height: 0;
}

.card,
.comparison-card,
.pricing-panel,
.pricing-option,
.cta-box,
.expert-letter {
  padding-block: max(22px, 1.6em);
}

p,
li,
summary,
.pricing-subtitle,
.expert-letter .expert-invitation {
  line-height: 1.6;
}

/* Unified readable copy scale requested for every viewport. */
body,
p,
li,
small,
label,
summary,
button,
.button,
.hero-copy p,
.hero-copy small,
.section-heading p,
.card p,
.step p,
.cognitive-heading p,
.cognitive-card p,
.landscape-copy > p,
.development-step p,
.comparison-card li,
.comparison small,
.nutrient p,
.nutrient > small,
.feature p,
.footnote,
.bars span,
.faq details p,
.faq summary,
.cta-box p,
.references p,
.expert-letter p,
.expert-letter .expert-invitation,
.expert-signature small,
.pricing-subtitle,
.pricing-tab,
.pricing-tab small,
.pricing-offer-tag,
.pricing-duration,
.pricing-benefits li,
.pricing-value del,
.pricing-value small,
.pricing-value em,
.pricing-payment,
.pricing-option small,
.pricing-option b,
.pricing-option-saving,
.pricing-option em,
.pricing-buy,
.buy,
.daily-countdown-label,
.daily-countdown small,
footer,
footer p,
footer a,
.footer-grid b,
.footer-grid + small {
  font-size: 19px;
}

.pricing-tab small {
  font-size: 12px;
  line-height: 1.1;
}

body .pricing-benefits li,
body .pricing-duration,
body .pricing-payment,
body .pricing-option small,
body .pricing-option-saving,
body .plan p,
body .plan li {
  font-size: 19px;
}

.button,
.pricing-buy,
.buy,
.cta-box .button,
.expert-invitation .button {
  min-height: 54px;
  height: auto;
  padding: 14px 22px;
  font-size: 19px;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: break-word;
  text-align: center;
}

body .hero-copy .button {
  font-size: 19px;
}

.faq summary,
.pricing-tab,
.pricing-option,
.comparison-card li,
.expert-letter p {
  overflow-wrap: break-word;
  word-break: normal;
}

h3,
.nutrient h3,
.feature h3,
.image-cards h3 {
  font-size: 21px;
}

/* activity-notifications.css */
.activity-notifications {
  position: fixed;
  right: clamp(16px, 3vw, 36px);
  bottom: max(18px, env(safe-area-inset-bottom));
  width: min(360px, calc(100vw - 32px));
  z-index: 40;
  pointer-events: none;
}

.activity-notification {
  display: grid;
  grid-template-columns: 38px 1fr auto;
  align-items: start;
  gap: 12px;
  padding: 15px 14px;
  color: #17284a;
  background: rgba(255, 255, 255, .97);
  border: 1px solid rgba(44, 91, 220, .18);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(23, 54, 120, .18);
  pointer-events: auto;
  opacity: 0;
  transform: translateY(16px) scale(.98);
  transition: opacity .28s ease, transform .28s ease;
}

.activity-notification.is-visible { opacity: 1; transform: translateY(0) scale(1); }
.activity-notification__icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: #fff; background: linear-gradient(145deg, #2d5be4, #19b86a); font-size: 18px; }
.activity-notification__eyebrow { display: block; margin-bottom: 3px; color: #4a6fd7; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.activity-notification__text { margin: 0; font-size: 14px; line-height: 1.35; }
.activity-notification__close { width: 28px; height: 28px; padding: 0; color: #60749b; background: transparent; border: 0; border-radius: 8px; font-size: 20px; line-height: 1; cursor: pointer; }
.activity-notification__close:hover, .activity-notification__close:focus-visible { color: #183fba; background: #eef4ff; outline: 2px solid #2d5be4; outline-offset: 2px; }

@media (max-width: 520px) {
  .activity-notifications { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); }
  .activity-notification { grid-template-columns: 34px 1fr auto; gap: 10px; padding: 13px 12px; border-radius: 14px; }
  .activity-notification__icon { width: 34px; height: 34px; font-size: 16px; }
  .activity-notification__text { font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .activity-notification { transition: none; }
}

/* redesign.css */
/* Final mobile-first visual system: hierarchy, rhythm and conversion clarity. */
:root {
  --surface: #ffffff;
  --surface-soft: #f5f9ff;
  --surface-blue: #edf6ff;
  --ink-deep: #102244;
  --ink-soft: #63738d;
  --brand-blue: #2856dc;
  --brand-green: #12b95b;
  --border-soft: rgb(38 83 186 / 13%);
  --shadow-card: 0 14px 34px rgb(26 66 145 / 10%);
  --shadow-hover: 0 20px 42px rgb(26 66 145 / 17%);
}

html { scroll-padding-top: 18px; }
body { background: #fff; color: var(--ink-deep); }
main { overflow: clip; }
.section, .section-shell { padding-left: 16px; padding-right: 16px; }
.section { padding-top: 58px; padding-bottom: 58px; }
.section-heading { margin-bottom: 30px; }
.section-heading h2, .cognitive-heading h2 { text-wrap: balance; }
.section-heading p, .cognitive-heading p { max-width: 680px; margin-left: auto; margin-right: auto; }

.hero {
  min-height: 0;
  padding-top: 34px;
  padding-bottom: 38px;
  gap: 0;
  background: radial-gradient(circle at 85% 18%, rgb(43 103 232 / 10%), transparent 36%), linear-gradient(180deg, #f8fcff 0%, #fff 82%);
}
.hero-copy { width: 100%; }
.hero-copy h1 { max-width: 620px; margin-left: auto; margin-right: auto; text-wrap: balance; }
.hero-copy p { max-width: 580px; margin-left: auto; margin-right: auto; }
.hero-visual { order: 4; width: min(100%, 520px); min-width: 0; height: clamp(245px, 70vw, 350px); margin: 12px auto 18px; border-radius: 26px; background: radial-gradient(circle at center, #eef8ff 0 30%, transparent 68%); }
.hero-product-image { border-radius: 26px; filter: drop-shadow(0 18px 18px rgb(24 62 139 / 14%)); }
.hero-copy .button { width: min(100%, 390px); min-height: 50px; margin-left: auto; margin-right: auto; box-shadow: 0 12px 24px rgb(18 185 91 / 24%); }

.cognitive-section, .cognitive-journey, .offers, .faq, .expert, .references { position: relative; }
.cognitive-section::before, .nutrients::before, .offers::before, .expert::before { opacity: .6; }
.cards { gap: 14px; }
.card, .nutrient, .feature, .plan, .pricing-option, .pricing-panel, .expert-letter, .faq-list details {
  border-color: var(--border-soft);
  box-shadow: var(--shadow-card);
}
.card, .nutrient, .feature, .pricing-option, .plan, .pricing-panel, .expert-letter { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.card:hover, .nutrient:hover, .feature:hover, .pricing-option:hover, .plan:hover, .expert-letter:hover { transform: translateY(-3px); box-shadow: var(--shadow-hover); }
.issues .card { height: auto; min-height: 150px; }
.icon { margin-bottom: 12px; box-shadow: 0 8px 16px rgb(39 86 196 / 10%); }

.impact { margin-top: 30px; border-radius: 24px; background: linear-gradient(135deg, #fff 0%, #f2f8ff 100%); box-shadow: var(--shadow-card); }
.bars i { height: 9px; box-shadow: inset 0 1px 2px rgb(15 47 121 / 12%); }
.step { border: 1px solid var(--border-soft); background: #fff; box-shadow: 0 10px 24px rgb(26 66 145 / 8%); }
.step:hover { transform: translateY(-2px); box-shadow: var(--shadow-hover); }
.comparison .card { min-height: 220px; }
.comparison .highlighted { border-color: rgb(18 185 91 / 55%); box-shadow: 0 16px 32px rgb(18 145 76 / 14%); }

.made-for, .nutrients, .faq, .references { background: var(--surface-soft); }
.image-cards .card { box-shadow: var(--shadow-card); }
.image-cards .photo-placeholder { filter: saturate(.92); }
.benefits-grid { gap: 14px; }
.feature-art { transition: transform .35s ease, filter .35s ease; }
.feature:hover .feature-art { transform: scale(1.025); filter: saturate(1.08); }

.testimonials { padding-top: 58px; padding-bottom: 58px; background: linear-gradient(145deg, #2025c9, #3239ee 62%, #2426c7); }
.video-card { transition: transform .25s ease, box-shadow .25s ease; }
.video-card:hover { transform: translateY(-5px); box-shadow: 0 18px 28px rgb(8 12 99 / 30%); }

.offers { background: linear-gradient(180deg, #f8fcff 0%, #eef7ff 100%); }
.offers .section-heading { margin-bottom: 22px; }
.daily-countdown { margin-top: 0; box-shadow: 0 12px 28px rgb(18 125 70 / 12%); }
.plans { gap: 14px; }
.plan { overflow: visible; }
.plan.featured { border-color: var(--brand-green); box-shadow: 0 0 0 4px rgb(18 185 91 / 10%), 0 22px 40px rgb(18 135 74 / 18%); }
.buy, .pricing-buy, .button-green { transition: transform .2s ease, filter .2s ease, box-shadow .2s ease; }
.buy:hover, .pricing-buy:hover, .button-green:hover { transform: translateY(-2px); box-shadow: 0 12px 22px rgb(18 185 91 / 25%); }

.faq-list { border-top: 1px solid var(--border-soft); }
.faq-list details { border-bottom-color: var(--border-soft); box-shadow: none; }
.faq summary { padding: 17px 30px 17px 0; }
.cta-box { box-shadow: 0 18px 34px rgb(23 72 197 / 24%); }
.expert { background: linear-gradient(180deg, #f7fbff 0%, #edf7ff 100%); }
.expert-portrait { box-shadow: 0 22px 50px rgb(22 58 132 / 16%); }
.expert-letter { background: rgb(255 255 255 / 97%); }
.references { border-top: 1px solid var(--border-soft); }
footer { padding-top: 42px; }

@media (min-width: 701px) {
  .section, .section-shell { padding-left: max(30px, calc((100vw - 1120px) / 2)); padding-right: max(30px, calc((100vw - 1120px) / 2)); }
  .section { padding-top: 82px; padding-bottom: 82px; }
  .hero { min-height: 620px; padding-top: 74px; padding-bottom: 74px; }
  .hero-copy { width: 50%; text-align: left; }
  .hero-copy p { margin-left: 0; margin-right: 0; }
  .hero-copy .button { margin-left: 0; }
  .hero-visual { order: initial; height: 390px; margin: 0; }
  .issues .card { min-height: 175px; }
  .plans { gap: 18px; }
}

@media (max-width: 380px) {
  .section { padding-top: 48px; padding-bottom: 48px; }
  .hero { padding-top: 28px; padding-bottom: 32px; }
  .hero-visual { height: 230px; margin-bottom: 12px; }
  .card, .nutrient, .feature { padding-left: 15px; padding-right: 15px; }
  .plans { max-width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Compact payment-methods artwork replaces the processor label in every offer card. */
.pricing-payment {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  margin-top: 12px;
  overflow: hidden;
}
.pricing-payment img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 42px;
  object-fit: contain;
  opacity: .78;
}

/* Compact the offer card while keeping the product and CTA breathing room. */
.pricing-panel { min-height: 410px; }
.pricing-panel-media { min-height: 410px; padding: clamp(22px, 3vw, 38px); }
.pricing-panel-media img { height: 285px; }
.pricing-panel-content { padding: clamp(26px, 3vw, 40px); }
@media (max-width: 700px) {
  .pricing-payment { min-height: 28px; margin-top: 9px; }
  .pricing-payment img { width: 100%; max-height: 34px; }
  .pricing-panel { min-height: 0; }
  .pricing-panel-media { min-height: 230px; padding: 18px; }
  .pricing-panel-media img { height: 220px; }
  .pricing-panel-content { padding: 24px 20px 28px; }
}

@media (max-width: 800px) {
  .hero {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .hero-copy {
    display: contents;
  }

  .hero-copy .eyebrow { order: 0; }
  .hero-copy h1 { order: 1; }
  .hero-copy p { order: 2; }
  .hero-visual { order: 3; }
  .hero-copy .button { order: 4; }
  .hero-proof { order: 5; }
}

/* Hero sem moldura: a imagem permanece livre e sempre inteira. */
.hero-visual {
  overflow: visible;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.hero-product-image {
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 0;
  object-fit: contain;
  object-position: center;
}

/* Pricing: produto ampliado, sem halo azul ou recorte. */
.pricing-panel-media {
  overflow: visible;
  background: #fff;
}

.pricing-panel-media::before {
  display: none;
}

.pricing-panel-media img {
  width: 100%;
  height: 390px;
  max-width: 100%;
  object-fit: contain;
  mix-blend-mode: normal;
  filter: drop-shadow(0 14px 16px rgb(22 58 107 / 12%));
}

/* Reserva espaço para o selo do comparativo, evitando sobreposição do kicker. */
.comparison-support {
  padding-top: 78px;
}

@media (max-width: 900px) {
  .comparison-support {
    padding-top: 92px;
  }
}

@media (max-width: 800px) {
  .pricing-panel-media img {
    height: 300px;
  }
}

@media (max-width: 430px) {
  .pricing-panel-media {
    min-height: 290px;
  }

  .pricing-panel-media img {
    width: 120%;
    max-width: none;
    height: 300px;
  }
}

@media (min-width: 431px) and (max-width: 800px) {
  .pricing-panel-media {
    min-height: 320px;
  }

  .pricing-panel-media img {
    width: 118%;
    max-width: none;
    height: 340px;
  }
}

.hero-proof {
  width: min(100%, 370px);
  padding: 9px 14px 10px;
  border: 1px solid rgb(36 81 220 / 10%);
  border-radius: 18px;
  background: linear-gradient(135deg, rgb(255 255 255 / 92%), rgb(239 249 255 / 88%));
  box-shadow: 0 10px 24px rgb(32 76 146 / 10%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  margin-top: 12px;
  color: #607086;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.hero-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.hero-copy .button {
  order: 2;
}

.hero-proof {
  order: 3;
}

.hero-proof img {
  display: block;
  width: min(100%, 330px);
  height: auto;
  max-height: 82px;
  object-fit: contain;
}

@media (max-width: 700px) {
  .hero-copy {
    align-items: center;
  }

  .hero-copy .button,
  .hero-proof {
    margin-left: auto;
    margin-right: auto;
  }

  .hero-visual {
    width: min(100%, 560px);
    height: clamp(280px, 82vw, 420px);
    margin: 10px auto 14px;
    transform: none;
  }

  .hero-product-image {
    width: 100%;
    height: 100%;
  }
}

/* Ordem final mobile/tablet: headline, subheadline, pote, CTA e prova social. */
@media (max-width: 800px) {
  .hero-copy { display: contents; }
  .hero-copy .eyebrow { order: 0; }
  .hero-copy h1 { order: 1; }
  .hero-copy p { order: 2; }
  .hero-visual { order: 3; }
  .hero-copy .button { order: 4; }
  .hero-proof { order: 5; }
}

/* child-development-benefits.css */
.pricing-panel-media-link {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  border-radius: inherit;
}

.pricing-panel-media-link:focus-visible {
  outline: 3px solid #13bd63;
  outline-offset: 4px;
}

.pricing-highlights {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 12px;
  color: #fff;
  font-size: clamp(13px, 1.2vw, 16px);
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
}

.pricing-highlights > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.pricing-highlights > span::before {
  content: '✓';
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 20px;
  border-radius: 50%;
  background: #12bd62;
  color: #fff;
  font-size: 13px;
  box-shadow: 0 4px 12px rgb(18 189 98 / 28%);
}

@media (max-width: 540px) {
  .pricing-highlights {
    gap: 7px 10px;
    font-size: 13px;
  }
}

.child-support {
  position: relative;
  padding: clamp(72px, 8vw, 112px) max(22px, calc((100vw - 1160px) / 2));
  overflow: hidden;
  background:
    radial-gradient(circle at 7% 10%, rgba(255, 220, 103, .2), transparent 24%),
    radial-gradient(circle at 94% 88%, rgba(87, 210, 192, .16), transparent 26%),
    linear-gradient(180deg, #fff 0%, #f8fcff 100%);
}

.child-support::before,
.child-support::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  filter: blur(1px);
}

.child-support::before {
  width: 180px;
  height: 180px;
  top: 35px;
  left: -105px;
  background: rgba(68, 126, 241, .08);
}

.child-support::after {
  width: 140px;
  height: 140px;
  right: -70px;
  bottom: 70px;
  background: rgba(255, 191, 70, .13);
}

.child-support__shell {
  width: min(1160px, 100%);
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.child-support__heading {
  max-width: 850px;
  margin: 0 auto clamp(38px, 5vw, 58px);
  text-align: center;
}

.child-support__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  margin-bottom: 18px;
  padding: 7px 14px;
  border: 1px solid rgba(36, 81, 220, .14);
  border-radius: 999px;
  background: rgba(235, 245, 255, .86);
  color: #2451dc;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  line-height: 1.25;
}

.child-support__heading h2 {
  max-width: 780px;
  margin: 0 auto 22px;
  color: #13213b;
  font-size: clamp(34px, 4.25vw, 54px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -.04em;
  text-wrap: balance;
}

.child-support__heading p {
  max-width: 830px;
  margin: 0 auto;
  color: #607089;
  font-size: clamp(17px, 1.55vw, 19px);
  line-height: 1.68;
  text-wrap: pretty;
}

.child-support__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.child-support__card {
  --card-accent: #4c73ec;
  --card-soft: #edf3ff;
  min-width: 0;
  min-height: 250px;
  padding: 28px 26px 26px;
  border: 1px solid rgba(112, 142, 201, .18);
  border-radius: 24px;
  background: rgba(255, 255, 255, .93);
  box-shadow: 0 18px 45px rgba(44, 75, 138, .09);
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
  animation: child-support-enter .65s cubic-bezier(.22, 1, .36, 1) both;
}

.child-support__card:nth-child(2) { animation-delay: .05s; }
.child-support__card:nth-child(3) { animation-delay: .1s; }
.child-support__card:nth-child(4) { animation-delay: .15s; }
.child-support__card:nth-child(5) { animation-delay: .2s; }
.child-support__card:nth-child(6) { animation-delay: .25s; }

.child-support__card--sleep { --card-accent: #735ad9; --card-soft: #f1edff; }
.child-support__card--energy { --card-accent: #e99a17; --card-soft: #fff6dc; }
.child-support__card--immunity { --card-accent: #1ea86c; --card-soft: #e7f8ef; }
.child-support__card--growth { --card-accent: #2b9b90; --card-soft: #e6f8f6; }
.child-support__card--complete { --card-accent: #e86979; --card-soft: #fff0f3; }

.child-support__card:hover {
  transform: translateY(-6px);
  border-color: color-mix(in srgb, var(--card-accent) 32%, transparent);
  box-shadow: 0 24px 55px rgba(44, 75, 138, .15);
}

.child-support__icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  margin-bottom: 23px;
  border: 1px solid color-mix(in srgb, var(--card-accent) 14%, transparent);
  border-radius: 17px;
  background: var(--card-soft);
  color: var(--card-accent);
  font-size: 25px;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
}

.child-support__card h3 {
  margin: 0 0 12px;
  color: #172641;
  font-size: 21px;
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -.02em;
  text-wrap: balance;
}

.child-support__card p {
  margin: 0;
  color: #64748b;
  font-size: 16px;
  line-height: 1.58;
  overflow-wrap: break-word;
}

.child-support__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 38px;
}

.child-support__button {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 24px;
  border: 2px solid #14b85e;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
}

.child-support__button--primary {
  background: #14b85e;
  color: #fff;
  box-shadow: 0 12px 25px rgba(20, 184, 94, .23);
}

.child-support__button--secondary {
  background: #fff;
  color: #0e9550;
}

.child-support__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 30px rgba(20, 184, 94, .2);
}

.child-support__button:focus-visible {
  outline: 3px solid rgba(36, 81, 220, .35);
  outline-offset: 3px;
}

.child-support__notice {
  max-width: 850px;
  margin: 25px auto 0;
  color: #7b879a;
  font-size: 12px;
  line-height: 1.55;
  text-align: center;
}

@keyframes child-support-enter {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 920px) {
  .child-support__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .child-support__card { min-height: 238px; }
}

@media (max-width: 620px) {
  .child-support {
    padding: 64px 16px;
  }

  .child-support__heading {
    margin-bottom: 34px;
  }

  .child-support__eyebrow {
    max-width: 100%;
    padding: 8px 12px;
    font-size: 11px;
    letter-spacing: .1em;
  }

  .child-support__heading h2 {
    font-size: clamp(31px, 9.3vw, 40px);
    line-height: 1.08;
  }

  .child-support__heading p {
    font-size: 17px;
    line-height: 1.62;
  }

  .child-support__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .child-support__card {
    min-height: 0;
    padding: 23px 21px;
    border-radius: 21px;
  }

  .child-support__icon {
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    border-radius: 15px;
    font-size: 23px;
  }

  .child-support__card h3 { font-size: 20px; }
  .child-support__card p { font-size: 16px; }

  .child-support__actions {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 30px;
  }

  .child-support__button {
    width: 100%;
    min-height: 54px;
    padding-inline: 18px;
    font-size: 16px;
  }

  .child-support__notice {
    margin-top: 22px;
    padding-inline: 6px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .child-support__card,
  .child-support__button {
    animation: none;
    transition: none;
  }
}

/* benefit-ticker.css */
.benefit-ticker {
  position: relative;
  display: block;
  width: 100%;
  height: 46px;
  overflow: hidden;
  background: linear-gradient(90deg, #1f49cf 0%, #2e5ae2 48%, #1f49cf 100%);
  color: #fff;
  box-shadow: 0 8px 24px rgba(28, 70, 190, 0.18);
}

.benefit-ticker::before,
.benefit-ticker::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: clamp(20px, 5vw, 80px);
  pointer-events: none;
}

.benefit-ticker::before {
  left: 0;
  background: linear-gradient(90deg, #1f49cf, transparent);
}

.benefit-ticker::after {
  right: 0;
  background: linear-gradient(270deg, #1f49cf, transparent);
}

.benefit-ticker__track {
  display: flex;
  align-items: center;
  width: max-content;
  min-height: 100%;
  animation: benefit-ticker-flow 36s linear infinite;
  will-change: transform;
}

.benefit-ticker__group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: clamp(42px, 5vw, 86px);
  padding-right: clamp(42px, 5vw, 86px);
}

.benefit-ticker__group span {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  white-space: nowrap;
  font-family: "Lato", Arial, sans-serif;
  font-size: clamp(12px, 1vw, 15px);
  font-weight: 800;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.benefit-ticker:hover .benefit-ticker__track {
  animation-play-state: paused;
}

@keyframes benefit-ticker-flow {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

@media (max-width: 700px) {
  .benefit-ticker,
  .benefit-ticker__group span {
    min-height: 42px;
    height: 42px;
  }

  .benefit-ticker__group {
    gap: 34px;
    padding-right: 34px;
  }

  .benefit-ticker__group span {
    font-size: 12px;
    letter-spacing: 0.04em;
  }

  .benefit-ticker__track {
    animation-duration: 30s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .benefit-ticker__track {
    animation: none;
  }
}

/* nutrients-intro.css */
.nutrients-intro {
  width: min(100%, 1120px);
  margin: 0 auto clamp(36px, 5vw, 58px);
  overflow: hidden;
  border: 1px solid rgb(36 81 220 / 10%);
  border-radius: clamp(22px, 3vw, 36px);
  background: #f8bac7;
  box-shadow: 0 22px 52px rgb(39 76 151 / 14%);
}

.nutrients-intro img {
  display: block;
  width: 100%;
  height: auto;
}

.nutrients-summary {
  width: min(100%, 820px);
  margin: 18px auto 0;
  color: #62728b;
  font-size: clamp(17px, 1.55vw, 20px);
  font-weight: 500;
  line-height: 1.6;
  text-wrap: balance;
}

@media (max-width: 540px) {
  .nutrients-intro {
    margin-bottom: 32px;
    border-radius: 18px;
    box-shadow: 0 14px 32px rgb(39 76 151 / 13%);
  }

  .nutrients-summary {
    margin-top: 14px;
    font-size: 17px;
    line-height: 1.55;
  }
}

/* nutrient-card-order.css */
/* Hierarquia visual dos cards: nome em destaque e quantidade como apoio. */
body .nutrient > small {
  display: block;
  margin: 0 0 4px;
  color: #3970ed;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.015em;
}

body .nutrient > strong {
  display: block;
  margin: 0 0 14px;
  color: #748397;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.035em;
}

@media (max-width: 540px) {
  body .nutrient > small {
    font-size: 19px;
  }

  body .nutrient > strong {
    font-size: 12px;
  }
}

/* pricing-card-premium.css */
/* Pricing vertical inspirado em cards de oferta, com a identidade Neuro Mix®. */
.pricing-panels {
  display: flex;
  justify-content: center;
  width: 100%;
}

.pricing-panel {
  display: flex;
  flex-direction: column;
  width: min(100%, 440px);
  min-height: 0;
  overflow: hidden;
  border: 2px solid var(--green);
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 22px 52px rgb(20 55 128 / 22%);
}

.pricing-panel-featured {
  border-color: #12c463;
  box-shadow:
    0 24px 58px rgb(20 55 128 / 24%),
    0 0 0 5px rgb(18 196 99 / 9%);
}

.pricing-panel-media {
  position: relative;
  min-height: 305px;
  margin: 0;
  padding: 24px 26px 16px;
  background: #fff;
}

.pricing-panel-media::before {
  display: none;
}

.pricing-panel-media img {
  width: 100%;
  height: 265px;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: normal;
  filter: none;
}

.pricing-panel-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 0 26px 25px;
  background: linear-gradient(160deg, #2858df 0%, #1e45bd 58%, #173684 100%);
  color: #fff;
  text-align: center;
}

.pricing-duration {
  order: -2;
  width: calc(100% + 52px);
  margin: 0 -26px 20px;
  padding: 12px 18px;
  background: linear-gradient(90deg, #ff5e00, #ff7b16, #ff5e00);
  box-shadow: 0 8px 18px rgb(15 42 108 / 20%);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .085em;
  line-height: 1.25;
  text-transform: uppercase;
}

.pricing-panel-content h3 {
  order: 0;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(31px, 3.6vw, 43px);
  line-height: 1.06;
}

.pricing-value {
  order: 2;
  width: 100%;
  padding: 23px 18px 21px;
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: 24px;
  background:
    radial-gradient(circle at 82% 12%, rgb(71 111 224 / 35%), transparent 34%),
    linear-gradient(155deg, #183778 0%, #10285f 100%);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 8%),
    0 15px 30px rgb(9 30 78 / 30%);
}

.pricing-value del {
  color: #c4d2f2;
  font-size: clamp(16px, 1.4vw, 18px);
  line-height: 1.35;
}

.pricing-value strong {
  margin-top: 12px;
  color: #fff;
  font-size: clamp(43px, 5vw, 59px);
  text-shadow: 0 3px 16px rgb(5 21 61 / 26%);
}

.pricing-value small {
  margin-top: 9px;
  color: #eef4ff;
  font-size: clamp(17px, 1.5vw, 20px);
  font-weight: 700;
  line-height: 1.35;
  text-transform: none;
}

.pricing-buy {
  order: 3;
  margin-top: 19px;
  padding: 17px 20px;
  border: 1px solid rgb(255 255 255 / 30%);
  border-radius: 16px;
  background: linear-gradient(180deg, #18cc65 0%, #0cae4f 100%);
  box-shadow:
    inset 0 -4px 0 rgb(0 103 43 / 25%),
    0 12px 24px rgb(3 83 38 / 28%);
  color: #fff;
  font-size: 15px;
  letter-spacing: .015em;
}

.pricing-buy::before {
  content: "🛒";
  margin-right: 8px;
  font-size: 1.05em;
}

.pricing-payment {
  order: 5;
  width: 100%;
  margin-top: 14px;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.pricing-payment img {
  display: block;
  width: 100%;
  max-width: none;
  max-height: none;
  height: auto;
}

@media (max-width: 900px) {
  .pricing-panel {
    width: min(100%, 420px);
  }
}

@media (max-width: 700px) {
  .pricing-comparator.is-mobile-stack .pricing-panels {
    display: grid;
    justify-items: center;
    gap: 24px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel,
  .pricing-comparator.is-mobile-stack .pricing-panel[hidden] {
    display: flex;
    grid-template-columns: none;
    width: min(100%, 390px);
    border-radius: 27px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media {
    min-height: 245px;
    padding: 18px 18px 10px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-media img {
    width: 100%;
    height: 225px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-content {
    padding: 0 20px 22px;
  }

  .pricing-comparator.is-mobile-stack .pricing-duration {
    width: calc(100% + 40px);
    margin-inline: -20px;
    padding: 11px 14px;
    font-size: 13px;
  }

  .pricing-comparator.is-mobile-stack .pricing-panel-content h3 {
    margin-bottom: 16px;
    font-size: clamp(28px, 8vw, 36px);
  }

  .pricing-comparator.is-mobile-stack .pricing-value {
    padding: 20px 13px 19px;
    border-radius: 21px;
  }

  .pricing-comparator.is-mobile-stack .pricing-value strong {
    font-size: clamp(39px, 12vw, 52px);
  }

  .pricing-comparator.is-mobile-stack .pricing-buy {
    margin-top: 17px;
    padding: 16px 12px;
    font-size: 14px;
  }

}

@media (max-width: 380px) {
  .pricing-comparator.is-mobile-stack .pricing-panel-content {
    padding-inline: 16px;
  }

  .pricing-comparator.is-mobile-stack .pricing-duration {
    width: calc(100% + 32px);
    margin-inline: -16px;
  }

  .pricing-comparator.is-mobile-stack .pricing-value strong {
    font-size: clamp(36px, 11.5vw, 45px);
  }

  .pricing-comparator.is-mobile-stack .pricing-buy {
    font-size: 13px;
  }
}

/* Os arquivos dos kits já possuem respiro branco interno. A imagem ocupa toda
   a largura do card para que os potes ganhem escala sem cortes. */
.pricing-panel-media,
.pricing-comparator.is-mobile-stack .pricing-panel-media {
  min-height: 0;
  padding: 0;
}

.pricing-panel-media img,
.pricing-comparator.is-mobile-stack .pricing-panel-media img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  object-fit: contain;
}

/* guarantee-challenge.css */
.guarantee-challenge {
  position: relative;
  overflow: hidden;
  padding: clamp(64px, 8vw, 104px) max(20px, calc((100vw - 1180px) / 2));
  background:
    radial-gradient(circle at 14% 48%, rgba(255, 213, 105, 0.3), transparent 31%),
    linear-gradient(135deg, #f4f9ff 0%, #fffdf8 54%, #fff7e5 100%);
}

.guarantee-challenge::before,
.guarantee-challenge::after {
  position: absolute;
  width: 280px;
  height: 280px;
  border: 1px solid rgba(43, 84, 225, 0.09);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.guarantee-challenge::before {
  top: -190px;
  right: -70px;
}

.guarantee-challenge::after {
  bottom: -220px;
  left: 5%;
}

.guarantee-challenge__shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(36px, 6vw, 82px);
  padding: clamp(32px, 5vw, 64px);
  border: 1px solid rgba(38, 81, 219, 0.12);
  border-radius: clamp(26px, 3vw, 38px);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 24px 70px rgba(25, 58, 122, 0.11);
  backdrop-filter: blur(12px);
}

.guarantee-challenge__visual {
  display: grid;
  place-items: center;
  min-width: 0;
}

.guarantee-challenge__visual img {
  display: block;
  width: min(100%, 430px);
  height: auto;
  filter: drop-shadow(0 20px 22px rgba(104, 69, 0, 0.22));
}

.guarantee-challenge__content {
  min-width: 0;
}

.guarantee-challenge__eyebrow {
  display: inline-flex;
  margin-bottom: 15px;
  padding: 8px 13px;
  border: 1px solid rgba(174, 121, 10, 0.19);
  border-radius: 999px;
  background: #fff6d9;
  color: #85600d;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.guarantee-challenge h2 {
  max-width: 720px;
  margin: 0 0 20px;
  color: #11254a;
  font-size: clamp(34px, 4.2vw, 58px);
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 1.02;
}

.guarantee-challenge__content > p {
  max-width: 720px;
  margin: 0 0 13px;
  color: #5f6f87;
  font-size: clamp(18px, 1.5vw, 21px);
  line-height: 1.58;
}

.guarantee-challenge__content > p strong {
  color: #183563;
  font-weight: 900;
}

.guarantee-challenge__benefits {
  display: grid;
  gap: 10px;
  margin: 24px 0 28px;
  padding: 0;
  list-style: none;
}

.guarantee-challenge__benefits li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #223759;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
}

.guarantee-challenge__benefits li span {
  display: grid;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 50%;
  background: #e6f8ed;
  color: #0ca957;
  font-size: 15px;
  font-weight: 900;
}

.guarantee-challenge__cta {
  width: min(100%, 430px);
  min-height: 56px;
  margin-bottom: 14px;
  font-size: 18px;
  text-transform: none;
}

.guarantee-challenge__content > small {
  display: block;
  max-width: 620px;
  color: #7a879a;
  font-size: 14px;
  line-height: 1.5;
}

@media (hover: hover) {
  .guarantee-challenge__shell {
    transition: transform 260ms ease, box-shadow 260ms ease;
  }

  .guarantee-challenge__shell:hover {
    transform: translateY(-4px);
    box-shadow: 0 30px 80px rgba(25, 58, 122, 0.15);
  }
}

@media (max-width: 760px) {
  .guarantee-challenge {
    padding: 56px 16px;
  }

  .guarantee-challenge__shell {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 28px 20px 30px;
    text-align: center;
  }

  .guarantee-challenge__visual img {
    width: min(78vw, 320px);
  }

  .guarantee-challenge__eyebrow {
    margin-bottom: 12px;
    font-size: 12px;
  }

  .guarantee-challenge h2 {
    margin-bottom: 18px;
    font-size: clamp(31px, 9vw, 43px);
  }

  .guarantee-challenge__content > p {
    font-size: 18px;
    line-height: 1.52;
  }

  .guarantee-challenge__benefits {
    display: inline-grid;
    justify-items: start;
    margin: 22px auto 26px;
    text-align: left;
  }

  .guarantee-challenge__benefits li {
    font-size: 16px;
  }

  .guarantee-challenge__cta {
    width: 100%;
    font-size: 17px;
  }

  .guarantee-challenge__content > small {
    margin-inline: auto;
    font-size: 13px;
  }
}

@media (max-width: 360px) {
  .guarantee-challenge {
    padding-inline: 12px;
  }

  .guarantee-challenge__shell {
    padding-inline: 16px;
  }

  .guarantee-challenge__visual img {
    width: min(84vw, 292px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .guarantee-challenge__shell {
    transition: none;
  }
}
