/* ── FEEL PONTAL · SHARED STYLESHEET ── */
:root {
  --sand: #F2EBE0; --sand-dark: #E8DDD0;
  --teal: #1B4F5C; --teal-light: #2A6A7B; --teal-deep: #0F2E38;
  --bronze: #B8722A; --bronze-light: #D08840;
  --cream: #FAF7F3; --dark: #111918; --mid: #4A5E5C; --text: #2C3530; --white: #FFF;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'DM Sans',sans-serif; color:var(--text); background:var(--cream); overflow-x:hidden; }

/* NAV */
.navbar { position:fixed; top:0; left:0; right:0; z-index:1000; display:flex; align-items:center; justify-content:space-between; padding:0 2rem; height:68px; background:rgba(15,46,56,.96); backdrop-filter:blur(12px); border-bottom:1px solid rgba(184,114,42,.2); transition:all .3s; }
.nav-brand { display:flex; align-items:center; gap:.9rem; text-decoration:none; }
.nav-logo { font-family:'Cormorant Garamond',serif; font-size:1.8rem; font-weight:300; letter-spacing:.15em; color:var(--white); line-height:1; }
.nav-logo span { color:var(--bronze-light); }
.nav-sub { font-size:.6rem; letter-spacing:.3em; color:rgba(255,255,255,.45); text-transform:uppercase; display:block; }
.nav-divider { width:1px; height:28px; background:rgba(255,255,255,.15); }
.nav-back { color:rgba(255,255,255,.6); font-size:.75rem; text-decoration:none; letter-spacing:.08em; transition:color .2s; }
.nav-back:hover { color:var(--bronze-light); }
.nav-cta { display:flex; align-items:center; gap:.5rem; background:#25D366; color:white; text-decoration:none; padding:.5rem 1.1rem; border-radius:3px; font-size:.78rem; font-weight:600; transition:all .2s; }
.nav-cta:hover { background:#1DA851; }
.nav-cta svg { width:15px; height:15px; }

/* HERO SAT */
.hero-sat { padding-top:68px; min-height:52vh; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; }
.hero-sat-bg { position:absolute; inset:0; background:linear-gradient(175deg,var(--teal-deep) 0%,#1a3a28 60%,var(--teal-deep) 100%); }
.hero-sat-overlay { position:absolute; inset:0; background:linear-gradient(to bottom,rgba(15,46,56,.1) 0%,rgba(15,46,56,.75) 100%); }
.hero-sat-content { position:relative; z-index:2; padding:4rem 5vw 4.5rem; max-width:820px; }
.hero-breadcrumb { font-size:.67rem; letter-spacing:.3em; text-transform:uppercase; color:rgba(255,255,255,.45); margin-bottom:1rem; }
.hero-breadcrumb a { color:var(--bronze-light); text-decoration:none; }
.hero-breadcrumb a:hover { text-decoration:underline; }
.hero-sat-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2.6rem,6vw,5rem); font-weight:300; line-height:.95; color:var(--white); margin-bottom:1.2rem; }
.hero-sat-title em { color:var(--bronze-light); font-style:italic; }
.hero-sat-sub { font-size:1rem; color:rgba(255,255,255,.7); line-height:1.65; max-width:520px; }

/* SECTIONS */
section { padding:80px 5vw; }
.section-label { font-size:.68rem; letter-spacing:.4em; text-transform:uppercase; color:var(--bronze); margin-bottom:.8rem; font-weight:500; }
.section-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:400; line-height:1.1; color:var(--teal-deep); margin-bottom:1.4rem; }
.section-title em { font-style:italic; color:var(--bronze); }
.section-body { font-size:.95rem; line-height:1.78; color:var(--mid); max-width:600px; }

/* CARDS */
.cards-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1.5px; margin-top:2.5rem; }
.card { background:white; padding:2rem 1.8rem; border:1.5px solid var(--sand-dark); transition:all .3s; }
.card:hover { border-color:var(--bronze); transform:translateY(-3px); box-shadow:0 10px 28px rgba(15,46,56,.1); }
.card-icon { font-size:1.8rem; margin-bottom:.9rem; }
.card-title { font-weight:700; font-size:.92rem; color:var(--teal-deep); margin-bottom:.4rem; }
.card-body { font-size:.82rem; color:var(--mid); line-height:1.6; }

/* FAQ */
.faq-list { display:flex; flex-direction:column; gap:0; margin-top:2.5rem; border-top:1.5px solid var(--sand-dark); }
.faq-item { border-bottom:1.5px solid var(--sand-dark); }
.faq-q { display:flex; justify-content:space-between; align-items:center; padding:1.2rem 0; cursor:pointer; gap:1rem; }
.faq-q-text { font-size:.92rem; font-weight:600; color:var(--teal-deep); line-height:1.4; }
.faq-icon { width:24px; height:24px; border:1.5px solid var(--bronze); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--bronze); font-size:1rem; transition:transform .3s; }
.faq-item.open .faq-icon { transform:rotate(45deg); }
.faq-a { display:none; padding:0 0 1.2rem; font-size:.85rem; color:var(--mid); line-height:1.7; max-width:700px; }
.faq-item.open .faq-a { display:block; }

/* BADGE */
.badge { display:inline-block; background:var(--sand); color:var(--bronze); font-size:.63rem; letter-spacing:.22em; text-transform:uppercase; padding:.28rem .65rem; border-radius:2px; font-weight:600; margin-bottom:1rem; }
.badge-teal { background:rgba(27,79,92,.08); color:var(--teal); }

/* HIGHLIGHT BOX */
.highlight-box { background:var(--teal-deep); color:white; padding:2.5rem 2.5rem; border-radius:4px; }
.highlight-box .section-title { color:white; }
.highlight-box .section-label { color:var(--bronze-light); }
.highlight-box p { color:rgba(255,255,255,.7); font-size:.9rem; line-height:1.75; }

/* STAT ROW */
.stat-row { display:flex; flex-wrap:wrap; gap:1.5px; margin:2.5rem 0; }
.stat-box { flex:1; min-width:140px; background:white; padding:2rem 1.5rem; border:1.5px solid var(--sand-dark); text-align:center; }
.stat-box-num { font-family:'Cormorant Garamond',serif; font-size:3rem; font-weight:300; color:var(--teal-deep); line-height:1; }
.stat-box-num sup { font-size:1.4rem; color:var(--bronze); }
.stat-box-label { font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:var(--mid); margin-top:.4rem; }

/* LANÇAMENTO CARD */
.lanc-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:1.5px; margin-top:2.5rem; }
.lanc-card-big { background:white; border:1.5px solid var(--sand-dark); overflow:hidden; transition:all .3s; text-decoration:none; color:inherit; display:block; }
.lanc-card-big:hover { border-color:var(--bronze); transform:translateY(-4px); box-shadow:0 12px 30px rgba(15,46,56,.12); }
.lanc-card-img { height:190px; display:flex; align-items:center; justify-content:center; font-size:2.5rem; color:rgba(255,255,255,.4); }
.gc1 { background:linear-gradient(135deg,#1B4F5C,#2A6A7B); }
.gc2 { background:linear-gradient(135deg,#B8722A,#8B5320); }
.gc3 { background:linear-gradient(135deg,#2A4A3E,#1B4F5C); }
.gc4 { background:linear-gradient(135deg,#4A5E5C,#2C3530); }
.gc5 { background:linear-gradient(135deg,#5C4A1B,#B8722A); }
.gc6 { background:linear-gradient(135deg,#1C4A58,#0F2E38); }
.lanc-card-body { padding:1.5rem; }
.lanc-tag { font-size:.62rem; letter-spacing:.22em; text-transform:uppercase; color:var(--bronze); font-weight:600; margin-bottom:.4rem; }
.lanc-name { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:400; color:var(--teal-deep); margin-bottom:.4rem; }
.lanc-desc { font-size:.8rem; color:var(--mid); line-height:1.55; margin-bottom:1rem; }
.lanc-meta { display:flex; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.lanc-meta-item strong { color:var(--teal-deep); font-size:.82rem; display:block; }
.lanc-meta-item span { font-size:.72rem; color:var(--mid); }
.lanc-cta { font-size:.75rem; color:var(--bronze); font-weight:600; letter-spacing:.05em; text-transform:uppercase; }

/* TWO-COL */
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }
.two-col-reverse { direction:rtl; }
.two-col-reverse > * { direction:ltr; }
.visual-block { border-radius:4px; overflow:hidden; position:relative; min-height:360px; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:1rem; }

/* STEP */
.steps { display:flex; flex-direction:column; gap:0; margin-top:2rem; }
.step { display:flex; gap:1.5rem; padding:1.5rem 0; border-bottom:1px solid var(--sand-dark); }
.step-num { font-family:'Cormorant Garamond',serif; font-size:2.8rem; font-weight:300; color:var(--bronze); line-height:1; flex-shrink:0; width:40px; text-align:center; }
.step-content { }
.step-title { font-weight:700; color:var(--teal-deep); margin-bottom:.3rem; font-size:.9rem; }
.step-desc { font-size:.83rem; color:var(--mid); line-height:1.65; }

/* ADVANTAGE */
.adv-list { display:flex; flex-direction:column; gap:1rem; margin-top:2rem; }
.adv-item { display:flex; gap:1rem; padding:1.2rem 1.5rem; background:white; border:1.5px solid var(--sand-dark); border-left:3px solid var(--bronze); }
.adv-icon { font-size:1.4rem; flex-shrink:0; }
.adv-title { font-weight:600; color:var(--teal-deep); font-size:.88rem; margin-bottom:.2rem; }
.adv-desc { font-size:.8rem; color:var(--mid); line-height:1.55; }

/* CTA SECTION */
.cta-section { background:var(--bronze); padding:60px 5vw; text-align:center; }
.cta-section h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,4vw,3rem); font-weight:300; color:white; margin-bottom:.8rem; }
.cta-section p { color:rgba(255,255,255,.8); font-size:.92rem; margin-bottom:2rem; }
.cta-btns { display:flex; justify-content:center; flex-wrap:wrap; gap:1rem; }
.btn-white { background:white; color:var(--bronze); padding:.85rem 2rem; font-weight:700; font-size:.85rem; text-decoration:none; border-radius:3px; letter-spacing:.06em; text-transform:uppercase; transition:all .2s; }
.btn-white:hover { background:var(--cream); }
.btn-outline-white { background:transparent; color:white; padding:.85rem 2rem; font-weight:600; font-size:.85rem; text-decoration:none; border-radius:3px; border:2px solid rgba(255,255,255,.5); letter-spacing:.06em; text-transform:uppercase; transition:all .2s; }
.btn-outline-white:hover { border-color:white; background:rgba(255,255,255,.1); }

/* FOOTER */
footer { background:var(--dark); padding:40px 5vw 28px; }
.footer-inner { display:flex; flex-wrap:wrap; justify-content:space-between; gap:2rem; padding-bottom:2rem; border-bottom:1px solid rgba(255,255,255,.07); margin-bottom:1.5rem; }
.footer-logo-text { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:300; color:white; letter-spacing:.15em; margin-bottom:.6rem; }
.footer-logo-text span { color:var(--bronze-light); }
.footer-desc { font-size:.75rem; color:rgba(255,255,255,.35); max-width:260px; line-height:1.65; }
.footer-links-col a { display:block; color:rgba(255,255,255,.45); text-decoration:none; font-size:.78rem; padding:.3rem 0; transition:color .2s; }
.footer-links-col a:hover { color:var(--bronze-light); }
.footer-col-title { font-size:.62rem; letter-spacing:.3em; text-transform:uppercase; color:var(--bronze); font-weight:600; margin-bottom:.9rem; }
.footer-legal { font-size:.65rem; color:rgba(255,255,255,.22); line-height:1.7; }
.footer-disclaimer { background:rgba(184,114,42,.1); border:1px solid rgba(184,114,42,.2); border-radius:3px; padding:.9rem 1.1rem; margin-bottom:1.5rem; font-size:.68rem; color:rgba(255,255,255,.45); line-height:1.65; }
.footer-disclaimer strong { color:var(--bronze-light); }

/* FLOAT WPP */
.wpp-float { position:fixed; bottom:1.8rem; right:1.8rem; z-index:999; background:#25D366; color:white; width:54px; height:54px; border-radius:50%; display:flex; align-items:center; justify-content:center; text-decoration:none; box-shadow:0 4px 18px rgba(37,211,102,.4); animation:wppPulse 3s ease-in-out infinite; }
.wpp-float:hover { transform:scale(1.1); }
@keyframes wppPulse { 0%,100%{box-shadow:0 4px 18px rgba(37,211,102,.35)}50%{box-shadow:0 4px 30px rgba(37,211,102,.6)} }
.wpp-float svg { width:26px; height:26px; }

/* REVEAL */
.reveal { opacity:0; transform:translateY(24px); transition:opacity .65s ease,transform .65s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }

/* RESPONSIVE */
@media(max-width:900px) { .two-col,.two-col-reverse { grid-template-columns:1fr; gap:2rem; } }
@media(max-width:600px) { section{padding:55px 4vw;} .navbar{padding:0 1rem;} .nav-back,.nav-divider{display:none;} }
