/* Página de vendas do Zatti Hub: blocos claros alternando com o tema escuro do site. */
body.dark-theme .band-light{background:var(--cream);color:var(--ink);}
body.dark-theme .band-light h2,body.dark-theme .band-light h3{color:var(--navy);}
body.dark-theme .band-light p{color:var(--ink);}
body.dark-theme .band-light .microcopy,body.dark-theme .band-light .form-note{color:var(--ink-soft);}
body.dark-theme .band-light .faq{border-top-color:var(--hairline);}
body.dark-theme .band-light details{border-bottom-color:var(--hairline);}
body.dark-theme .band-light summary{color:var(--navy);}
body.dark-theme .band-light details p{color:var(--ink-soft);}

.feature-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:36px;}
@media(min-width:760px){.feature-grid{grid-template-columns:repeat(2,1fr);}.feature-main{grid-column:1 / -1;}}
.feature{border:1px solid var(--hairline);border-radius:var(--radius-md);padding:22px 24px;background:#fff;}
.feature h3{font-size:21px;}
.feature p{font-size:15.5px;margin:8px 0 0;color:var(--ink-soft) !important;}
.feature-main{border-color:var(--amber);border-left:4px solid var(--amber);}
.feature-main h3{font-size:25px;}

.video-box{position:relative;padding-top:56.25%;border-radius:var(--radius-md);overflow:hidden;background:#000;}
.video-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

.offer-box{max-width:520px;margin:0 auto;background:#fff;border:1px solid var(--amber);border-radius:var(--radius-md);padding:36px 32px;box-shadow:0 24px 48px -28px #0D1F2D66;text-align:center;}
.offer-price{font-family:var(--serif);font-size:58px;line-height:1;color:var(--navy);margin-top:6px;}
.offer-price .x{font-family:var(--sans);font-size:17px;color:var(--ink-soft);vertical-align:middle;}
.offer-sub{margin:10px auto 0;font-weight:700;color:var(--amber) !important;}
.offer-list{list-style:none;margin:24px 0;padding:0;text-align:left;}
.offer-list li{padding:9px 0 9px 26px;border-top:1px solid var(--hairline);font-size:15px;position:relative;}
.offer-list li::before{content:"✓";position:absolute;left:2px;color:var(--amber);font-weight:700;}
.btn-block{width:100%;justify-content:center;}

.lead-modal{border:0;border-radius:var(--radius-md);padding:32px 26px 26px;width:min(440px,calc(100vw - 32px));background:var(--cream);color:var(--ink);}
.lead-modal::backdrop{background:#0D1F2Dcc;}
.lead-modal h3,body.dark-theme .lead-modal h3{font-size:24px;color:var(--navy);margin-bottom:6px;}
.lead-modal .checkout-form{display:grid;gap:12px;margin-top:14px;}
.lead-modal .field{display:grid;gap:6px;}
.lead-modal label{font-size:13px;font-weight:600;color:var(--ink-soft);}
.lead-modal input,.lead-modal select{font-family:var(--sans);font-size:16px;padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-sm);width:100%;background:#fff;color:var(--ink);}
.lead-modal .form-note{color:var(--ink-soft);}
.modal-close{position:absolute;top:10px;right:12px;background:none;border:0;font-size:28px;line-height:1;cursor:pointer;color:var(--navy);}
.lead-modal .form-success{display:block;}

@media(max-width:520px){.band{padding:64px 0;}.wrap{padding:0 16px;}.offer-box{padding:28px 20px;}.offer-price{font-size:46px;}}

/* Identidade digital Zatti aplicada à página do Zatti Hub, sobre o azul institucional (sem preto). */
body.pagina-hub,body.pagina-livro{background:#0D1F2D;}
body.pagina-hub nav,body.pagina-livro nav{background:#0D1F2Df2;}
.wordmark-hub img{height:44px;width:auto;}
body.pagina-hub .band:not(.band-light),body.pagina-livro .band:not(.band-light){background:radial-gradient(ellipse 70% 60% at 78% 28%,#315A7366,transparent 70%),linear-gradient(135deg,#0D1F2D 0%,#12304A 55%,#1A3A52 100%);}
.hero-hub{padding-top:56px;overflow:hidden;}
.hero .wrap.hub-hero-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media(min-width:900px){.hero .wrap.hub-hero-grid{grid-template-columns:1.25fr .75fr;}}
.hero-hub .h1-page{margin-top:18px;}
.offer-logo{height:64px;width:auto;margin:0 auto 6px;}
.closing-hub .closing-logo{width:min(380px,80vw);height:auto;margin:0 auto 18px;}

/* Símbolo M.E.G.A. em 3D (mega-3d.js), a partir do símbolo oficial da identidade digital V2.1:
   mesma geometria (viewBox 160 160 880 880), arcos em âmbar metálico com brilho, nós em marfim metálico
   (azul metálico sobre fundo claro). Nós: E topo, G direita, A base, M esquerda. */
.m3-defs{position:absolute;width:0;height:0;overflow:hidden;}
.mega3d-stage{position:absolute;inset:0;perspective:1000px;pointer-events:none;}
.mega3d{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform;}
.m3-halo{position:absolute;inset:4%;border-radius:50%;background:radial-gradient(circle,#C9882A26 0%,#12336B30 40%,transparent 70%);filter:blur(14px);}
.m3-ring{position:absolute;inset:0;transform:translateZ(var(--z));opacity:var(--o);}
.m3-ring svg{width:100%;height:100%;overflow:visible;display:block;}
.m3-ring path{fill:none;stroke:url(#m3-ambar-metal);stroke-width:calc(6px * var(--swk,1));stroke-linecap:round;}
.m3-ring:not(.m3-front) path{stroke:#8a5a1f;}
.m3-front svg{filter:url(#m3-glow);}
.m3-front path{stroke-width:calc(7px * var(--swk,1));}
.m3-node{position:absolute;width:10.45%;aspect-ratio:1;margin:-5.225% 0 0 -5.225%;transform-style:preserve-3d;}
.m3-e{left:50%;top:11.36%;}.m3-g{left:88.64%;top:50%;}.m3-a{left:50%;top:88.64%;}.m3-m{left:11.36%;top:50%;}
.m3-sphere{display:block;width:100%;height:100%;border-radius:50%;transform:rotateY(var(--bry,0deg)) rotateX(var(--brx,0deg));
  background:radial-gradient(circle at 32% 25%,#FFFFFF 0%,#F5F0E8 38%,#AAB6BE 72%,#5E6D76 100%);
  box-shadow:0 0 0 1px #FFFFFFcc inset,0 8px 16px -6px #00000099,0 0 16px #F5F0E833;transition:background .4s ease,box-shadow .4s ease;}
.mega3d-stage.on-light .m3-sphere{background:radial-gradient(circle at 30% 22%,#4C7189 0%,#1A3A52 38%,#0D1F2D 76%,#050B11 100%);box-shadow:0 0 0 1px #4C718966 inset,0 8px 16px -6px #0D1F2D80;}
.mega3d-stage.on-light .m3-halo{background:radial-gradient(circle,#C9882A1f 0%,transparent 65%);}
.m3-orbits{position:absolute;inset:-14%;transform-style:preserve-3d;}
.m3-orbit{position:absolute;inset:0;border-radius:50%;border:1px solid #F5F0E826;}
.m3-orbit.o1{transform:rotateX(74deg) rotateZ(0deg);border-color:#C9882A55;}
.m3-orbit.o2{inset:7%;transform:rotateY(70deg) rotateX(20deg);}
.mega3d-stage.on-light .m3-orbit{border-color:#0D1F2D22;}
.mega3d-stage.on-light .m3-orbit.o1{border-color:#C9882A66;}
@media(prefers-reduced-motion:no-preference){
  .m3-orbit.o1{animation:m3orbita 24s linear infinite;}
  .m3-orbit.o2{animation:m3orbita2 36s linear infinite;}
}
@keyframes m3orbita{to{transform:rotateX(74deg) rotateZ(360deg);}}
@keyframes m3orbita2{to{transform:rotateY(70deg) rotateX(380deg);}}
.mega3d-stage.is-hidden{opacity:0;}
/* Celular do topo: o símbolo 3D começa encaixado no logo e sai voando ao rolar (desktop). */
.phone-wrap{display:flex;justify-content:center;position:relative;}
.phone-wrap::before{content:"";position:absolute;inset:10% 5%;background:radial-gradient(circle,#C9882A40,transparent 65%);filter:blur(30px);}
.phone{position:relative;width:min(260px,62vw);aspect-ratio:9/19.5;border-radius:38px;padding:10px;background:linear-gradient(160deg,#5b7184,#2a4257 45%,#40586c);box-shadow:0 40px 80px -34px #06121bcc,0 0 0 1px #F5F0E833 inset,0 0 28px #C9882A33;}
.phone-screen{width:100%;height:100%;border-radius:30px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 80% 50% at 50% 45%,#315A7380,transparent 70%),linear-gradient(160deg,#1A3A52,#0D1F2D);}
.logo-slot{position:relative;width:82%;}
.logo-slot img{width:100%;height:auto;display:block;}
/* Lugar exato do símbolo dentro do logo oficial (centro 522,450 no viewBox 300 130 1030 620). */
.m3-anchor{position:absolute;left:9%;top:30.74%;width:25.13%;aspect-ratio:1;}
.m3-anchor .mega3d-stage{position:absolute;inset:0;}
.m3-target{position:fixed;visibility:hidden;pointer-events:none;aspect-ratio:1;
  /* Celular: lateral direita, grande, metade fora da tela e translúcido atrás da leitura. */
  top:50%;right:-24vw;width:66vw;margin-top:-33vw;--m3-op:.38;}
@media(min-width:900px){.m3-target{right:24px;width:220px;margin-top:-110px;--m3-op:1;}}
@media(min-width:1200px){.m3-target{right:max(24px,calc(50vw - 600px));width:clamp(240px,calc(50vw - 300px),360px);margin-top:-180px;}}
.mega3d-stage.is-flying{position:fixed;left:0;top:0;right:auto;bottom:auto;width:360px;height:360px;z-index:6;transform-origin:0 0;}
/* O texto dos blocos passa por cima do símbolo; o fundo dos blocos fica por baixo dele. */
body.pagina-hub .band:not(.hero-hub) > .wrap{position:relative;z-index:7;}
@media(min-width:900px) and (max-width:1199px){
  body.pagina-hub .band:not(.hero-hub) .wrap{max-width:calc(100vw - 300px);margin-left:28px;}
  .closing-hub .wrap{margin-left:auto !important;}
}
@media(min-width:1200px){
  body.pagina-hub .band:not(.hero-hub) .wrap{max-width:780px;margin-left:max(28px,calc(50vw - 560px));}
  .hero .wrap.hub-hero-grid{grid-template-columns:1.25fr .75fr;}
  .closing-hub .wrap{margin-left:auto !important;}
}
@media(prefers-reduced-motion:reduce){.mega3d{transform:rotateX(-8deg) rotateY(-20deg);}}

/* Botão flutuante do WhatsApp */
.wpp-float{position:fixed;right:18px;bottom:18px;z-index:30;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;background:#25D366;color:#fff;border-radius:50%;box-shadow:0 12px 28px -10px #0D1F2Dcc;transition:transform .15s ease;}
.wpp-float:hover{transform:translateY(-2px);}
.wpp-float svg{width:32px;height:32px;}

/* Página do livro: livro em 3D feito com a capa nova (livro.js inclina com a rolagem). */
.book3d-wrap{display:flex;justify-content:center;perspective:1400px;position:relative;padding:20px 0;}
.book3d-wrap::before{content:"";position:absolute;inset:12% 8%;background:radial-gradient(circle,#C9882A3a,transparent 65%);filter:blur(34px);}
.book3d{--w:min(300px,62vw);--d:calc(var(--w) * .1);position:relative;width:var(--w);aspect-ratio:700/992;transform-style:preserve-3d;transform:rotateY(-28deg) rotateX(6deg);will-change:transform;}
.book-front,.book-back,.book-pages,.book-spine{position:absolute;backface-visibility:hidden;}
.book-front{inset:0;transform:translateZ(calc(var(--d) / 2));border-radius:2px 6px 6px 2px;overflow:hidden;box-shadow:inset 6px 0 10px -6px #00000080;}
.book-front img{width:100%;height:100%;object-fit:cover;display:block;}
.book-back{inset:0;transform:rotateY(180deg) translateZ(calc(var(--d) / 2));background:linear-gradient(160deg,#1A3A52,#0D1F2D);border-radius:6px 2px 2px 6px;box-shadow:0 40px 70px -30px #06121b;}
.book-spine{top:0;bottom:0;left:0;width:var(--d);transform-origin:left center;transform:rotateY(-90deg) translateX(calc(var(--d) / -2));background:linear-gradient(90deg,#0b1a26,#1A3A52 45%,#0d1f2d);display:flex;align-items:center;justify-content:center;}
.book-spine span{writing-mode:vertical-rl;font-family:var(--serif);font-size:calc(var(--w) * .052);letter-spacing:.06em;color:#F5F0E8;white-space:nowrap;}
.book-spine b{color:#C9882A;font-weight:600;}
.book-pages{top:1.5%;bottom:1.5%;right:0;width:var(--d);transform-origin:right center;transform:rotateY(90deg) translateX(calc(var(--d) / 2));background:repeating-linear-gradient(90deg,#f5f0e8 0 2px,#ddd3c3 2px 3px);}
.chapter-list{margin:28px 0 0;padding:0;list-style:none;counter-reset:none;}
.chapter-list li{padding:14px 0;border-top:1px solid var(--hairline-dark);color:var(--cream-dim);font-size:16px;}
.chapter-list li b{color:var(--cream);}
.author-box{display:flex;gap:24px;align-items:flex-start;margin-top:8px;}
.author-box img{width:112px;height:112px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--amber);}
@media(max-width:600px){.author-box{flex-direction:column;}}

/* Home e consultoria: o símbolo 3D começa grande no topo (.m3-hero-slot). */
.m3-hero-slot{position:relative;width:min(380px,78vw);aspect-ratio:1;margin:0 auto;}
.m3-hero-slot .m3-anchor{left:0;top:0;width:100%;}
/* Home (m3-fundo): o símbolo vira marca d'água atrás do conteúdo, sem mexer no layout dos cards. */
body.pagina-hub.m3-fundo .band:not(.hero-hub) .wrap{max-width:var(--maxw);margin-left:auto;margin-right:auto;}
body.m3-fundo .m3-target{top:50%;right:-10vw;width:48vw;margin-top:-24vw;--m3-op:.28;}
@media(max-width:899px){body.m3-fundo .m3-target{right:-24vw;width:66vw;margin-top:-33vw;--m3-op:.38;}}
/* Fundo claro: textos da home e da consultoria que eram pensados para fundo escuro. */
body.dark-theme .band-light .product-card p{color:var(--cream-dim);}
body.dark-theme .band-light .survey label,body.dark-theme .band-light .lead-form label{color:var(--navy);}
body.dark-theme .band-light .survey .hint,body.dark-theme .band-light .form-note{color:var(--ink-soft);}
body.dark-theme .band-light .survey .options label{color:var(--ink);border-color:var(--hairline);}
body.dark-theme .band-light .author-row h2{color:var(--navy);}
body.dark-theme .band-light .ledger-row h3{color:var(--navy);}
body.dark-theme .band-light .ledger-row p{color:var(--ink-soft);}
body.dark-theme .band-light .ledger,body.dark-theme .band-light .ledger-row{border-color:var(--hairline);}
body.dark-theme .band-light .product-card h3{color:var(--cream);}

/* Founder-led: Vinícius na frente, com a prova de quantos restaurantes acompanha. */
.founder-chip{display:flex;align-items:center;gap:14px;margin-top:26px;max-width:520px;}
.founder-chip img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--amber);flex-shrink:0;}
.founder-chip b{display:block;color:var(--cream);font-size:15px;}
.founder-chip span{display:block;color:var(--cream-dim);font-size:13.5px;line-height:1.45;}
.founder-row{display:flex;gap:20px;align-items:center;margin-top:28px;padding-top:24px;border-top:1px solid var(--hairline-dark);}
.founder-row img{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid var(--amber);flex-shrink:0;}
.founder-row p{margin:0;font-family:var(--serif);font-size:20px;line-height:1.4;color:var(--cream);}
.founder-prova{font-size:14px;font-weight:700;color:var(--amber) !important;margin-top:8px;}
@media(max-width:600px){.founder-row{flex-direction:column;align-items:flex-start;}}
