
:root{
  --bg:#03180f;
  --bg2:#061f14;
  --green:#0b2e1c;
  --gold:#d8a83f;
  --gold2:#f5d178;
  --cream:#f5ead2;
  --muted:#cdbf9d;
  --border:rgba(216,168,63,.55);
  --shadow:0 30px 90px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  background: radial-gradient(circle at 80% 10%, rgba(216,168,63,.13), transparent 35%),
              radial-gradient(circle at 20% 20%, rgba(22,95,55,.35), transparent 35%),
              linear-gradient(180deg,#020b07 0%, var(--bg) 40%, #010805 100%);
  color:var(--cream);
  line-height:1.55;
}
.texture{
  position:fixed; inset:0; pointer-events:none; opacity:.18; z-index:0;
  background-image: radial-gradient(rgba(255,255,255,.18) 1px, transparent 1px);
  background-size: 3px 3px;
  mix-blend-mode: soft-light;
}
body:before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(216,168,63,.2) 1px, transparent 1px) 40px 40px/ calc(100% - 80px) calc(100% - 80px) no-repeat,
    linear-gradient(rgba(216,168,63,.2) 1px, transparent 1px) 40px 40px/ calc(100% - 80px) calc(100% - 80px) no-repeat;
  opacity:.45;
}
a{color:inherit;text-decoration:none}
.section, header, footer{position:relative; z-index:1}
.topbar{
  max-width:1180px; margin:0 auto; padding:22px 22px; display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.brand img{width:190px; max-height:72px; object-fit:contain; display:block}
nav{display:flex; gap:26px; align-items:center}
nav a{font-size:.86rem; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; font-weight:700}
nav a:hover{color:var(--gold2)}
.btn{
  display:inline-flex; align-items:center; justify-content:center; text-align:center;
  padding:16px 28px; border-radius:10px; border:1px solid rgba(255,230,154,.6);
  background:linear-gradient(180deg,#ffe08c 0%,#dba942 48%,#b77b1f 100%);
  color:#151006; font-weight:900; text-transform:uppercase; letter-spacing:.03em;
  box-shadow:0 15px 35px rgba(216,168,63,.25), inset 0 1px 0 rgba(255,255,255,.45);
  transition:.2s ease;
}
.btn:hover{transform:translateY(-2px); filter:brightness(1.08)}
.btn-small{padding:12px 18px; font-size:.86rem; white-space:nowrap}
.section{max-width:1180px; margin:0 auto; padding:72px 22px}
.hero{display:grid; grid-template-columns:1fr 1.05fr; gap:40px; align-items:center; padding-top:54px}
.eyebrow{color:var(--gold2); text-transform:uppercase; letter-spacing:.18em; font-weight:800; font-size:.78rem; margin:0 0 12px}
h1,h2,h3{font-family:Cinzel,serif; margin:0; line-height:1.08}
h1{font-size:clamp(2.8rem,6vw,6.2rem); letter-spacing:.02em; text-transform:uppercase}
h1 span{display:block; color:var(--gold); text-shadow:0 5px 25px rgba(216,168,63,.25)}
h2{font-size:clamp(2rem,4vw,3.7rem); color:var(--gold2); text-transform:uppercase}
h3{color:var(--gold2); font-size:1.16rem}
.lead{font-size:1.18rem; color:#f7edd7; max-width:620px}
.price-card{
  margin-top:30px; width:min(430px,100%); padding:24px; border:1px solid var(--border); border-radius:16px;
  background:linear-gradient(180deg,rgba(4,28,17,.92),rgba(3,14,9,.9)); box-shadow:var(--shadow);
}
.price-card p{margin:0; color:var(--cream); text-align:center}
.price-card strong{display:block; font-family:Cinzel,serif; color:var(--gold2); font-size:4.2rem; line-height:1; text-align:center; margin:6px 0 18px}
.secure{display:block;text-align:center;color:var(--muted);font-size:.88rem;margin-top:12px}
.hero-visual{position:relative; min-height:620px}
.glow{position:absolute; inset:5% 0 auto auto; width:70%; height:55%; background:radial-gradient(circle,rgba(216,168,63,.25),transparent 64%); filter:blur(16px)}
.book{position:absolute; left:0; top:0; width:58%; max-width:520px; filter:drop-shadow(0 30px 35px rgba(0,0,0,.5)); z-index:2}
.apostle{position:absolute; right:-5%; bottom:0; width:63%; max-height:650px; object-fit:contain; filter:drop-shadow(0 25px 35px rgba(0,0,0,.55)); z-index:3}
.center{text-align:center; max-width:880px; margin:0 auto}
.center p{color:#e8dec5; font-size:1.08rem}
.pillars{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px}
.pillars article,.grid article,.faq article{
  border:1px solid var(--border); background:rgba(3,24,15,.72); border-radius:16px; padding:24px;
  box-shadow:0 20px 55px rgba(0,0,0,.22);
}
.pillars span{display:block; color:var(--gold2); font-size:2rem; margin-bottom:10px}
.pillars strong{font-family:Cinzel,serif; color:var(--gold2); font-size:1.25rem}
.grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px}
.icon{width:54px;height:54px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-size:1.6rem;margin-bottom:16px;background:rgba(216,168,63,.08)}
.grid p,.faq p,.about p,.offer p{color:#e6dcc2}
.offer-box{
  display:grid; grid-template-columns:1.2fr .5fr .7fr; gap:28px; align-items:center;
  padding:34px; border:1px solid var(--border); border-radius:20px; background:
  radial-gradient(circle at 0 0,rgba(216,168,63,.14),transparent 40%),
  rgba(3,24,15,.9); box-shadow:var(--shadow)
}
.offer-price span{display:block;color:var(--muted);text-align:center}
.offer-price strong{display:block;font-family:Cinzel,serif;font-size:4rem;color:var(--gold2);text-align:center;line-height:1}
.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:38px;align-items:center}
.about-photo{position:relative; min-height:350px}
.about-photo img{width:100%;max-height:410px;object-fit:contain;filter:drop-shadow(0 25px 35px rgba(0,0,0,.55))}
.map-bridge{padding-top:20px}
.map-bridge .center{border:1px solid var(--border);border-radius:18px;padding:36px;background:linear-gradient(180deg,rgba(9,48,29,.7),rgba(2,16,10,.78))}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:34px}
.final-cta{
  display:grid;grid-template-columns:1.2fr .7fr;gap:28px;align-items:center;
  border:1px solid var(--border);border-radius:22px;background:rgba(4,28,17,.86);padding:42px;margin-bottom:40px
}
.final-cta h2{font-size:clamp(1.7rem,3.8vw,3.2rem)}
footer{text-align:center;max-width:1180px;margin:0 auto;padding:40px 22px 60px;color:var(--muted)}
footer img{width:170px}
footer small{display:block;margin-top:8px;color:#93876f}
@media (max-width: 920px){
  nav{display:none}
  .topbar{padding:16px}
  .brand img{width:145px}
  .hero{grid-template-columns:1fr; padding-top:24px}
  .hero-visual{min-height:520px}
  .book{left:2%;width:55%}
  .apostle{right:0;width:58%}
  .pillars,.grid,.faq-grid,.offer-box,.about,.final-cta{grid-template-columns:1fr}
  h1{font-size:3rem}
  .offer-price strong,.price-card strong{font-size:3.2rem}
}
@media (max-width: 540px){
  body:before{background:none}
  .section{padding:52px 16px}
  .hero-visual{min-height:420px}
  .book{width:62%;left:-4%}
  .apostle{width:66%;right:-10%}
  .btn{width:100%;padding:15px 18px}
  h1{font-size:2.42rem}
  h2{font-size:1.8rem}
  .price-card{padding:18px}
  .pillars article,.grid article,.faq article{padding:18px}
}


/* Ajuste para a imagem do livro não aparecer com fundo quadrado */
.hero-visual .book{
  border-radius: 18px;
  mix-blend-mode: normal;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 62%, rgba(0,0,0,.92) 70%, rgba(0,0,0,.4) 84%, transparent 100%);
  mask-image: radial-gradient(ellipse at center, #000 62%, rgba(0,0,0,.92) 70%, rgba(0,0,0,.4) 84%, transparent 100%);
}

.hero-visual:before{
  content:"";
  position:absolute;
  left:-8%;
  top:-6%;
  width:72%;
  height:78%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(7,45,27,.9) 0%, rgba(7,45,27,.35) 45%, transparent 73%);
  filter:blur(12px);
  z-index:1;
}

.delivery{padding-top:20px}
.delivery-box{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:26px;
  align-items:center;
  border:1px solid var(--border);
  border-radius:22px;
  padding:34px;
  background:linear-gradient(180deg,rgba(9,48,29,.82),rgba(2,16,10,.86));
  box-shadow:var(--shadow);
}
.delivery-icon{
  width:72px;
  height:72px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid var(--gold2);
  color:#151006;
  background:linear-gradient(180deg,#ffe08c 0%,#dba942 60%,#b77b1f 100%);
  font-weight:900;
  font-size:2rem;
}
.delivery h2{font-size:clamp(1.8rem,3.8vw,3.2rem)}
.delivery p{color:#e6dcc2;margin-bottom:0}

@media (max-width: 720px){
  .delivery-box{grid-template-columns:1fr;text-align:center}
  .delivery-icon{margin:0 auto}
}
