/* Hero layout override: copy first, product bundle immediately below. */
.hero {
  padding-bottom: 92px;
  background: radial-gradient(circle at 50% 65%, #e5ddc7 0, transparent 32%), var(--paper);
}

.hero-grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 42px;
}

.hero-copy {
  max-width: 760px;
  text-align: center;
}

.hero-copy .lead { margin-inline: auto; }
.hero-copy .hero-actions,
.hero-copy .quick-points { justify-content: center; }

.hero-art {
  width: min(560px, 82vw);
  height: auto;
  min-width: 0;
  margin: 0;
}

.materials-showcase {
  padding: 80px 0 92px;
  overflow: hidden;
  background: #e5dac8;
}

.materials-heading { text-align: center; }
.materials-heading .eyebrow { color: var(--rust); }
.materials-heading h2 { margin: 0; font: 700 clamp(40px, 5vw, 67px)/.95 var(--serif); letter-spacing: -.055em; }
.materials-heading > p:last-child { max-width: 510px; margin: 18px auto 42px; color: #52605a; font-size: 14px; }
.materials-viewport { width: 100%; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.materials-track { display: flex; width: max-content; animation: materials-scroll 90s linear infinite; }
.materials-set { display: flex; gap: 24px; padding-right: 24px; }
.materials-set img { width: 272px; aspect-ratio: .667; object-fit: cover; object-position: top; border-radius: 14px; border: 1px solid rgba(255,255,255,.7); box-shadow: 0 14px 30px rgba(24,37,34,.15); }
.materials-viewport:hover .materials-track { animation-play-state: paused; }
@keyframes materials-scroll { to { transform: translateX(-50%); } }

.outcomes { background: #f0eadf; }
.outcomes-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 90px; align-items: start; }
.outcomes .section-heading { display: block; margin: 0; }
.outcomes .section-heading h2 { font-size: clamp(42px, 4.4vw, 60px); }
.outcomes .section-heading > p { display: none; }
.outcomes-copy { border-top: 1px solid rgba(24,37,34,.24); padding-top: 22px; }
.outcomes-copy ul { list-style: none; padding: 0; margin: 25px 0 30px; }
.outcomes-copy li { padding: 14px 0 14px 28px; border-bottom: 1px solid rgba(24,37,34,.16); position: relative; font-size: 15px; }
.outcomes-copy li:before { content: '↗'; position: absolute; left: 0; color: var(--rust); font-weight: 800; }

.decision { background: var(--ink); color: #f8f3e8; }.decision-grid { display:grid; grid-template-columns:1fr .9fr; gap:90px; align-items:center; }.decision .eyebrow { color:#e5a786; }.decision h2 { font:700 clamp(43px,4.8vw,65px)/.94 var(--serif); letter-spacing:-.055em; margin:0; }.decision h2 em { color:#e5a786; }.decision-grid > div > p:last-child { max-width:490px; color:#c7d0c9; margin:25px 0 0; font-size:15px; }.decision-panel { padding:28px; border:1px solid rgba(246,242,233,.34); background:rgba(255,255,255,.05); }.decision-kicker { margin:0; color:var(--olive); font:10px var(--mono); letter-spacing:.12em; }.decision-panel ul { padding:0; margin:18px 0; list-style:none; }.decision-panel li { border-top:1px solid rgba(246,242,233,.19); padding:14px 0 14px 24px; position:relative; font-size:14px; }.decision-panel li:before { content:'→'; color:#e5a786; position:absolute; left:0; }.decision-note { color:#c7d0c9; font-size:12px; }.decision .button { margin-top:12px; }

.full-kit { background: var(--ink); color: #f7f1e5; }
.full-kit-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 70px; align-items: center; }
.full-kit-grid > img { width: 100%; border-radius: 18px; box-shadow: 0 25px 50px rgba(0,0,0,.28); }
.full-kit .eyebrow { color: #e5a786; }.full-kit h2,.bonuses h2 { font: 700 clamp(42px,4.5vw,60px)/.96 var(--serif); letter-spacing:-.05em; margin:0; }.full-kit h2 em,.bonuses h2 em { color: var(--rust); }
.full-kit-lead { font-size: 16px; color: #d3d9d1; }.full-kit ul { list-style:none; padding:0; margin:25px 0 0; border-top:1px solid #56635d; }.full-kit li { padding:10px 0; border-bottom:1px solid #56635d; font-size:13px; }.full-kit li:before { content:'✓'; color:var(--olive); margin-right:10px; }
.bonuses { background:#e5dac8; }.bonuses-heading { text-align:center; margin-bottom:48px; }.bonus-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }.bonus-grid article { display:flex; flex-direction:column; padding:18px; background:#f8f4eb; border:1px solid rgba(24,37,34,.13); }.bonus-grid img { width:100%; aspect-ratio:1; object-fit:cover; margin-bottom:22px; }.bonus-grid h3 { margin:3px 0 12px; font:600 27px/1.03 var(--serif); letter-spacing:-.04em; }.bonus-grid p:not(.eyebrow) { font-size:13px; margin:0 0 12px; color:#52605a; }.bonus-grid span { margin-top:auto; padding-top:15px; font:11px var(--mono); border-top:1px solid var(--line); }.bonus-grid b { margin-left:8px; color:var(--rust); }

.kit { background:#e5dac8; color:var(--ink); }.kit .eyebrow { color:var(--rust); }.kit h2 em { color:var(--rust); }.plans { max-width:920px; margin:58px auto 0; grid-template-columns:.8fr 1.2fr; gap:28px; align-items:center; }.plan { border-radius:24px; box-shadow:0 16px 34px rgba(24,37,34,.12); }.plan-basic { background:#fbf9f3; border:1px solid rgba(24,37,34,.08); }.plan-complete { background:#fbfdf9; color:var(--ink); border:2px solid #2ca75a; transform:translateY(-16px); box-shadow:0 24px 44px rgba(28,105,59,.2); }.plan-complete .plan-label { color:#168647; }.popular { top:-18px; right:50%; transform:translateX(50%); white-space:nowrap; color:#fff; background:#20aa59; border-radius:99px; padding:9px 17px; box-shadow:0 7px 16px rgba(18,129,66,.24); font-weight:700; }.plan-complete li:before { color:#1fa85a; }.plan-complete .button-light { background:#1fa85a; color:#fff; border-radius:99px; border:1px solid #1fa85a; padding:19px; font-size:12px; box-shadow:0 8px 15px rgba(21,129,65,.22); }.plan-basic .button-outline { border-radius:99px; }.plan-complete .price strong,.plan-basic .price strong { color:#1fa85a; }.plan-complete .price strong { font-size:52px; }.plan .price small:before { content:'De R$ 39,90 por'; display:block; color:#a14c38; text-decoration:line-through; font-size:9px; margin-bottom:4px; }.plan-basic .price small:before { content:'Acesso imediato por'; color:#68736e; text-decoration:none; }.plan-complete .price span { display:inline-block; width:max-content; padding:5px 10px; margin-top:4px; background:#dcefe2; border-radius:99px; color:#147640; }.offer-note { color:#52605a; }

.plan-basic .simple-cover{height:175px;background:url('assets/optimized/mockup-entregaveis-impressos-v4.webp') center/cover no-repeat}.plan-basic .simple-cover>*{visibility:hidden}.plan-complete .kit-covers{height:175px;background:url('assets/optimized/mockup-plano-completo.webp') center/cover no-repeat}.plan-complete .kit-covers div{visibility:hidden}.guarantee{background:var(--ink);color:#f8f3e8}.guarantee-grid{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:center}.guarantee h2,.access h2{font:700 clamp(42px,4.6vw,61px)/.95 var(--serif);letter-spacing:-.05em;margin:0}.guarantee h2 em,.access h2 em{color:var(--rust)}.guarantee p{max-width:520px;color:#ccd4cd;font-size:15px}.guarantee-stamp{width:250px;height:250px;border:2px solid var(--olive);border-radius:50%;margin:auto;display:grid;place-content:center;text-align:center;transform:rotate(-8deg)}.guarantee-stamp b{font:700 60px/.8 var(--serif);color:#e5a786}.guarantee-stamp span{font:700 16px/1.1 var(--mono);letter-spacing:.08em;margin:10px 0}.guarantee-stamp small{font-size:9px;color:#c9d1c8}.access{background:#e5dac8}.access-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:38px 0}.access-grid article{background:#f7f3ea;padding:21px;border-top:3px solid var(--rust)}.access-grid b{font:11px var(--mono);color:var(--rust)}.access-grid h3{font:600 24px/1 var(--serif);margin:21px 0 8px}.access-grid p{font-size:12px;margin:0;color:#59645f}@media(max-width:760px){.guarantee-grid,.access-grid{grid-template-columns:1fr}.guarantee-stamp{width:210px;height:210px}}

.hero-art img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 25px 24px rgba(29, 34, 25, .16));
}

@media (max-width: 760px) {
  .hero-art {
    width: min(390px, 90vw);
    height: auto;
    transform: none;
    margin: 0;
  }
  .materials-showcase { padding: 62px 0 70px; }
  .materials-set { gap: 14px; padding-right: 14px; }
  .materials-set img { width: 205px; border-radius: 10px; }
  .outcomes-grid { grid-template-columns: 1fr; gap: 30px; }
  .decision-grid { grid-template-columns:1fr; gap:35px; }
  .full-kit-grid,.bonus-grid { grid-template-columns:1fr; gap:30px; }
  .plans { grid-template-columns:1fr; }.plan-complete { transform:none; }.popular { right:22px; transform:none; }
}

/* Mobile-first refinements and uncropped product previews. */
.plan-basic .simple-cover,.plan-complete .kit-covers{background-size:contain;background-position:center;background-color:#f8f4eb;background-repeat:no-repeat}

/* Keep the product previews inside intentional frames at every viewport size. */
.materials-set img{
  flex:0 0 272px;
  width:272px;
  height:408px;
  aspect-ratio:auto;
  object-fit:contain;
  background:#f8f4eb;
}
.full-kit-grid>img{
  display:block;
  justify-self:center;
  width:min(100%,430px);
  height:auto;
  max-width:100%;
  object-fit:contain;
}
.bonus-grid img{
  display:block;
  width:min(100%,300px);
  height:auto;
  aspect-ratio:1/1;
  object-fit:contain;
  margin:0 auto 22px;
  background:#f8f4eb;
}
@media (max-width:760px){
  .hero{padding-top:24px;padding-bottom:44px}.hero h1{font-size:clamp(37px,11vw,50px)}.lead{font-size:15px}.hero-actions .button{width:100%}.hero-actions .text-link{margin-inline:auto}.hero-art{width:min(330px,88vw)}.materials-heading h2{font-size:40px}.materials-set img{flex-basis:180px;width:180px;height:270px}.section{padding:64px 0}.plans{gap:26px;margin-top:40px}.plan{padding:23px}.plan-complete{transform:none}.plan-basic .simple-cover,.plan-complete .kit-covers{height:220px;margin:18px 0}.plan h3{font-size:34px}.plan-complete .price strong{font-size:47px}.plan .button{width:100%;padding:18px 14px}.full-kit-grid>img{width:min(100%,330px);border-radius:12px}.bonus-grid img{width:min(100%,280px)}.bonus-grid article{padding:14px}.guarantee{padding-block:64px}.faq-grid{gap:35px}.modal-card{padding:30px 22px}.modal-card h2{font-size:38px}
}

/* Persistent mobile action: the offer remains one tap away after the first screen. */
.mobile-access-cta { display:none; }
.upgrade-modal { z-index:50; }

@media (max-width:760px){
  body { padding-bottom:76px; }
  .mobile-access-cta { position:fixed; z-index:40; left:12px; right:12px; bottom:12px; min-height:58px; padding:9px 14px 9px 17px; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#fff; background:var(--rust); border:1px solid rgba(255,255,255,.34); border-radius:10px; box-shadow:0 12px 30px rgba(24,37,34,.3); text-decoration:none; }
  .mobile-access-cta span { font:9px/1.2 var(--mono); letter-spacing:.08em; opacity:.84; text-transform:uppercase; }
  .mobile-access-cta b { font:700 11px/1.15 var(--mono); letter-spacing:.035em; text-align:right; }
  .mobile-access-cta i { margin-left:7px; font-style:normal; font-size:16px; }
  .mobile-access-cta:focus-visible { outline:3px solid #fff; outline-offset:3px; }
}

/* Shared type hierarchy and action treatment for every sales section. */
.eyebrow { font:500 10px/1.25 var(--mono); letter-spacing:.16em; }
.section h2,
.decision h2,
.full-kit h2,
.bonuses h2,
.guarantee h2,
.access h2 { font:700 clamp(40px,4.6vw,60px)/.98 var(--serif); letter-spacing:-.05em; }
.bonus-grid h3,
.access-grid h3 { font:600 25px/1.06 var(--serif); letter-spacing:-.04em; }
.button { min-height:52px; border-radius:0; font:700 11px/1.15 var(--mono); letter-spacing:.045em; }
.button-primary { box-shadow:0 8px 18px rgba(181,77,49,.18); }

/* Transparent one-time upgrade offer, tied to the Essential-plan choice. */
.upgrade-card { width:min(890px,100%); padding:0; overflow:hidden; background:#f8f4eb; }
.upgrade-layout { display:grid; grid-template-columns:.84fr 1.16fr; min-height:475px; }
.upgrade-visual { display:flex; flex-direction:column; justify-content:space-between; padding:34px 28px 26px; background:var(--ink); color:#f8f4eb; }
.upgrade-visual img { width:100%; max-width:335px; height:260px; margin:auto; object-fit:contain; }
.upgrade-price { padding-top:16px; border-top:1px solid rgba(248,244,235,.27); display:grid; grid-template-columns:auto 1fr; gap:3px 10px; align-items:baseline; }
.upgrade-price span { grid-column:1/-1; color:#d6dfd7; font:500 8px/1.3 var(--mono); letter-spacing:.1em; }
.upgrade-price s { color:#d6dfd7; font:10px var(--mono); }
.upgrade-price strong { color:#e5a786; font:700 30px/.95 var(--serif); letter-spacing:-.04em; }
.upgrade-content { padding:47px 42px 32px; }
.upgrade-content .eyebrow { margin-bottom:12px; }
.upgrade-card h2 { font:700 39px/.98 var(--serif); letter-spacing:-.05em; }
.upgrade-disclosure { margin:18px 0 15px; color:#43514b; font-size:14px; }
.upgrade-card ul { margin:0 0 14px; padding:13px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:12px; }
.upgrade-card li { padding:4px 0; }
.upgrade-value { margin:0 0 17px; color:var(--rust); font:700 11px/1.35 var(--mono); }
.upgrade-card .button { width:100%; margin:0; }
.upgrade-card .modal-decline { margin-top:14px; }
@media (max-width:760px){
  .section h2,.decision h2,.full-kit h2,.bonuses h2,.guarantee h2,.access h2 { font-size:clamp(38px,10.5vw,48px); }
  .upgrade-modal { align-items:end; padding:0; }
  .upgrade-card { width:100%; max-height:92dvh; overflow:auto; }
  .upgrade-layout { grid-template-columns:1fr; }
  .upgrade-visual { min-height:218px; padding:20px 22px 16px; }
  .upgrade-visual img { height:160px; }
  .upgrade-price { padding-top:10px; }
  .upgrade-price strong { font-size:26px; }
  .upgrade-content { padding:28px 22px 25px; }
  .upgrade-card h2 { font-size:34px; }
  .upgrade-disclosure { font-size:13px; }
  .upgrade-card ul { font-size:11px; }
}
