:root{--shell:min(1180px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body-font),sans-serif;overflow-x:hidden}main{display:flex;flex-direction:column}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
.ig-shell{width:var(--shell);margin-inline:auto}
.ig-progress-top-bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--progress);z-index:1100}
.ig-eyebrow,.ig-kicker{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.ig-section{padding:var(--section-space) 0}
.ig-section h2{font-family:var(--heading-font),serif;font-weight:600;line-height:1.12;letter-spacing:-.01em}
.ig-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:calc(var(--radius) * 1px + 30px);padding:15px 26px;font-size:14px;font-weight:700;text-decoration:none;transition:.2s;cursor:pointer;border:1px solid transparent}
.ig-btn--primary{background:var(--gold);color:var(--deep)}
.ig-btn--primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(201,162,75,.35)}
.ig-btn--dark{background:var(--deep);color:var(--white)}
.ig-btn--dark:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,33,61,.28)}
.ig-btn--ghost{background:transparent;color:var(--hero-text);border-color:rgba(255,255,255,.35)}
.ig-btn--ghost:hover{border-color:var(--gold);color:var(--gold)}

/* header */
.ig-header{position:sticky;top:0;z-index:1000;background:var(--header-bg);border-bottom:1px solid var(--line);transition:.2s}
.ig-header.scrolled{box-shadow:0 8px 24px rgba(20,33,61,.06)}
.ig-nav-wrap{height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}
.ig-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--header-text);min-width:max-content}
.ig-brand img{width:auto;height:40px;max-width:170px;object-fit:contain;border-radius:10px}
.ig-brand span{display:grid;line-height:1.15}
.ig-brand strong{font-family:var(--heading-font),serif;font-size:17px;font-weight:600}
.ig-brand small{font-size:10px;color:var(--muted);margin-top:2px;letter-spacing:.03em}
.ig-nav{display:flex;justify-content:center;gap:26px}
.ig-nav a{position:relative;color:var(--header-text);text-decoration:none;font-size:13px;font-weight:600}
.ig-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--gold);transition:right .25s ease}
.ig-nav a:hover:after{right:0}
.ig-menu-toggle{display:none}
.ig-btn--nav{background:var(--header-cta-bg);color:var(--header-cta-text);padding:11px 20px;font-size:13px;border-radius:999px}

/* hero */
.ig-hero{position:relative;padding:64px 0 60px;overflow:hidden;background:var(--hero-bg)}
.ig-hero-glow{position:absolute;inset:0;opacity:.6;background:radial-gradient(52% 46% at 78% 14%,rgba(201,162,75,.16) 0%,transparent 70%),radial-gradient(38% 42% at 8% 88%,rgba(79,143,122,.14) 0%,transparent 72%)}
.ig-hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.ig-hero-copy h1{font-family:var(--heading-font),serif;font-weight:600;font-size:clamp(34px,4vw,52px);line-height:1.1;color:var(--hero-title);margin:18px 0 20px;letter-spacing:-.01em}
.ig-lead{font-size:16px;line-height:1.7;color:var(--hero-text);max-width:520px}
.ig-hero-actions{display:flex;align-items:center;gap:22px;margin:30px 0;flex-wrap:wrap}
.ig-proof-row{display:flex;gap:0;margin-top:34px;max-width:520px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px}
.ig-proof-row div{flex:1;display:grid;gap:2px}
.ig-proof-row strong{font-family:var(--heading-font),serif;font-size:26px;font-weight:600;color:var(--gold)}
.ig-proof-row span{font-size:11px;color:var(--hero-text);font-weight:600;opacity:.8}
.ig-hero-media{position:relative}
.ig-hero-frame{position:relative;border-radius:calc(var(--radius) * 1px + 10px);overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 40px 80px rgba(0,0,0,.35);aspect-ratio:4/5}
.ig-hero-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:16px 18px;background:linear-gradient(180deg,rgba(20,33,61,0) 0%,rgba(20,33,61,.9) 70%)}
.ig-hero-bar svg{width:17px;height:17px;flex-shrink:0;color:var(--hero-bar)}
.ig-hero-bar small{color:#fff;font-size:11px;font-weight:600;opacity:.92;letter-spacing:.02em}
.ig-hero-badge{position:absolute;z-index:4;display:flex;gap:10px;align-items:center;background:var(--paper);border-radius:16px;padding:12px 16px;box-shadow:0 18px 36px rgba(20,33,61,.22)}
.ig-hero-badge b{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(201,162,75,.18);color:var(--gold);font-size:16px}
.ig-hero-badge span{display:grid;font-size:12px;font-weight:700;color:var(--ink)}
.ig-hero-badge small{font-weight:500;color:var(--muted);margin-top:2px;font-size:10px}
.ig-hero-badge--a{left:-18px;top:34px}
.ig-hero-badge--b{right:-14px;bottom:120px}

/* marquee */
.ig-marquee{overflow:hidden;background:var(--marquee-bg)}
.ig-marquee-track{display:flex;width:max-content;animation:ig-marquee 26s linear infinite}
.ig-marquee-group{display:flex;align-items:center;gap:22px;padding:13px 12px;white-space:nowrap;font-size:13px;font-weight:700;letter-spacing:.03em;color:var(--marquee-text)}
.ig-marquee-group i{font-style:normal;opacity:.55}
@keyframes ig-marquee{to{transform:translateX(-50%)}}

/* pacotes — cards com foto + filtro por categoria */
.ig-section-heading{max-width:760px;margin-bottom:48px}
.ig-section-heading h2{font-size:clamp(26px,3vw,40px);margin:14px 0 0}
.ig-section-heading--center{text-align:center;margin-inline:auto}
.ig-section-heading p{margin-top:10px;color:var(--muted);font-weight:500}
.ig-section-heading--light .ig-eyebrow{color:var(--roteiros-accent)}
.ig-section-heading--light h2,.ig-section-heading--light p{color:var(--roteiros-text)}

/* destaque de página inteira: quando só há 1 imóvel cadastrado */


/* roteiros — bento escuro de destinos (portfólio nativo do template) */
.ig-roteiros{background:var(--roteiros-bg)}
.ig-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:220px;gap:14px}
.ig-shot{position:relative;grid-column:span 1;border-radius:calc(var(--radius) * 1px);overflow:hidden;background:var(--deep-2)}
.ig-shot--wide{grid-column:span 2}
.ig-shot--full{grid-column:1/-1}
.ig-roteiros-cta{margin-top:30px;text-align:center}
.ig-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.ig-shot:hover img{transform:scale(1.05)}
.ig-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,33,61,0) 42%,rgba(20,33,61,.82) 100%)}
.ig-shot-tag{position:absolute;top:14px;left:14px;z-index:2;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 12px;border-radius:999px;backdrop-filter:blur(4px)}
.ig-shot-info{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;display:grid;gap:2px}
.ig-shot-info strong{font-family:var(--heading-font),serif;font-weight:600;font-size:19px;color:var(--roteiros-text)}
.ig-shot-info small{font-size:11.5px;font-weight:600;color:var(--roteiros-muted)}

/* metodologia — timeline vertical alternada */
.ig-metodologia{background:var(--metodologia-bg)}
.ig-timeline{position:relative;display:grid;gap:8px}
.ig-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--line);transform:translateX(-1px)}
.ig-timeline-row{position:relative;display:grid;grid-template-columns:1fr 60px 1fr;gap:0;align-items:center;padding:24px 0}
.ig-timeline-node{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--metodologia-accent);color:var(--deep);font-family:var(--heading-font),serif;font-weight:600;font-size:15px;margin-inline:auto}
.ig-timeline-card{background:var(--paper);border-radius:calc(var(--radius) * 1px);padding:24px;border:1px solid var(--line)}
.ig-timeline-node{grid-column:2;grid-row:1}
.ig-timeline-card{grid-row:1}
.ig-timeline-row:nth-child(odd) .ig-timeline-card{grid-column:1}
.ig-timeline-row:nth-child(even) .ig-timeline-card{grid-column:3}
.ig-timeline-card h3{font-family:var(--heading-font),serif;font-weight:600;font-size:17px;margin:0 0 8px}
.ig-timeline-card p{margin:0;font-size:13.5px;line-height:1.6;color:var(--muted);font-weight:500}

/* resultados — contadores animados */
.ig-resultados{background:var(--resultados-bg);color:var(--resultados-text)}
.ig-resultados .ig-eyebrow{color:var(--resultados-accent)}
.ig-resultados h2{color:#fff}
.ig-resultados .ig-section-heading p{color:rgba(255,255,255,.7)}
.ig-resultados-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.ig-stat{text-align:center;padding:26px 12px;border-radius:calc(var(--radius) * 1px);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.ig-stat b{display:block;font-family:var(--heading-font),serif;font-size:clamp(32px,4vw,44px);font-weight:600;color:var(--resultados-accent)}
.ig-stat span{display:block;margin-top:8px;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.75)}

/* sobre */
.ig-sobre{background:var(--about-bg)}
.ig-about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.ig-about-media{border-radius:calc(var(--radius) * 1px + 10px);overflow:hidden;aspect-ratio:4/5;border:1px solid var(--line)}
.ig-about-copy h2{font-family:var(--heading-font),serif;font-weight:600;font-size:clamp(26px,3vw,38px);margin:14px 0 6px}
.ig-about-subtitle{font-weight:700;color:var(--gold);font-size:13.5px}
.ig-about-copy p{color:var(--muted);line-height:1.75;font-size:15px}
.ig-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.ig-badges span{border:1px solid var(--line);background:var(--about-card-bg);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}

/* diferenciais */
.ig-ministerios{background:var(--ministerios-bg)}
.ig-diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ig-diff-card{transition:.25s;background:var(--ministerios-card-bg);border-radius:calc(var(--radius) * 1px);padding:26px;border:1px solid var(--line)}
.ig-diff-card span{font-family:var(--heading-font),serif;font-weight:600;font-size:17px;color:var(--gold)}
.ig-diff-card h3{font-family:var(--heading-font),serif;font-weight:600;font-size:16px;margin:14px 0 8px}
.ig-diff-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:0}

/* depoimentos — carrossel scroll-snap */
.ig-depoimentos{background:var(--depoimentos-bg);color:var(--depoimentos-text)}
.ig-depoimentos .ig-eyebrow{color:var(--depoimentos-accent)}
.ig-depoimentos h2{color:var(--depoimentos-text)}
.ig-testi-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-top:36px;scrollbar-width:none}
.ig-testi-track::-webkit-scrollbar{display:none}
.ig-testi-card{scroll-snap-align:start;flex:0 0 min(380px,88%);background:var(--paper);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px);padding:26px}
.ig-testi-quote{margin:0 0 20px;font-size:14.5px;line-height:1.7;color:var(--ink)}
.ig-testi-quote:before{content:"“";color:var(--depoimentos-accent);font-weight:700}
.ig-testi-quote:after{content:"”"}
.ig-testi-person{display:flex;align-items:center;gap:12px}
.ig-testi-avatar{width:40px;height:40px;border-radius:50%;background:var(--depoimentos-accent);color:var(--deep);display:grid;place-items:center;font-weight:700;font-size:14px;flex-shrink:0}
.ig-testi-person b{display:block;font-size:13.5px}
.ig-testi-person small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}

/* faq */
.ig-faq{background:var(--faq-bg)}
.ig-faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}
.ig-faq-grid>div>p{color:var(--muted);line-height:1.7}
.ig-accordion details{background:var(--faq-card-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px);margin-bottom:12px}
.ig-accordion summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-weight:700;font-size:14px}
.ig-accordion summary::-webkit-details-marker{display:none}
.ig-accordion summary b{font-size:18px;font-weight:400;color:var(--gold);transition:.2s}
.ig-accordion details[open] summary b{transform:rotate(45deg)}
.ig-accordion details p{margin:0;padding:0 20px 18px;color:var(--muted);line-height:1.6;font-size:14px}

/* atendimento */
.ig-location{background:var(--location-bg)}
.ig-location-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;align-items:stretch}
.ig-location-intro{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:22px;background:var(--deep);color:var(--white);border-radius:calc(var(--radius) * 1.5px);padding:clamp(30px,4vw,52px)}
.ig-location-intro:before{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--gold) 38%,transparent),transparent 70%);pointer-events:none}
.ig-location-intro h2{position:relative;margin:0;color:var(--white);font-size:clamp(28px,3.2vw,42px);line-height:1.1}
.ig-location-intro .ig-btn{position:relative;margin-top:auto}
.ig-quote{position:relative;margin:0;padding-left:20px;border-left:3px solid var(--gold)}
.ig-quote p{margin:0;font-family:var(--heading-font),serif;font-size:clamp(18px,1.9vw,23px);line-height:1.45;font-weight:500;color:var(--white)}
.ig-quote cite{display:block;margin-top:10px;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gold)}
.ig-location-hours{position:relative;display:inline-flex;align-items:center;gap:10px;margin:0;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-size:13px;font-weight:600;color:var(--hero-text)}
.ig-location-hours svg{width:18px;height:18px;flex-shrink:0;color:var(--gold)}
.ig-location-cards{display:grid;grid-template-rows:1fr 1fr;gap:20px}
.ig-location-card{display:flex;align-items:flex-start;gap:20px;background:var(--location-panel-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1.5px);padding:clamp(24px,3vw,34px);text-decoration:none;color:var(--ink);box-shadow:0 14px 34px rgba(20,33,61,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ig-location-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--gold) 55%,var(--line));box-shadow:0 22px 44px rgba(20,33,61,.1)}
.ig-location-icon{display:grid;place-items:center;flex-shrink:0;width:54px;height:54px;border-radius:16px;background:color-mix(in srgb,var(--gold) 14%,transparent);color:var(--gold)}
.ig-location-icon svg{width:26px;height:26px}
.ig-location-body{display:grid;gap:6px;min-width:0}
.ig-location-body small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.ig-location-body strong{font-family:var(--heading-font),serif;font-size:clamp(19px,1.8vw,23px);font-weight:600;line-height:1.2}
.ig-location-body span{color:var(--muted);font-size:14px;line-height:1.6}
.ig-location-body em{margin-top:8px;font-style:normal;font-size:13px;font-weight:700;color:var(--deep-2)}
.ig-location-body em b{display:inline-block;color:var(--gold);transition:transform .25s ease}
.ig-location-card:hover em b{transform:translate(3px,-3px)}
.ig-booking-embed{max-width:760px;margin:36px auto 0;background:var(--location-panel-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px);padding:20px}
.ig-booking-embed-head strong{display:block;font-family:var(--heading-font),serif;font-weight:600;font-size:17px}
.ig-booking-embed-head small{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:600}

/* final cta */
.ig-final-cta{background:var(--final-cta-bg);color:var(--final-cta-text);padding:70px 0}
.ig-final-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.ig-final-cta h2{font-family:var(--heading-font),serif;font-weight:600;font-size:clamp(26px,3vw,40px);margin:12px 0 10px;max-width:600px}
.ig-final-cta p{max-width:520px;line-height:1.6;font-size:14px;font-weight:500}
.ig-final-action{display:grid;gap:10px;text-align:center}
.ig-final-action small{font-size:12px;opacity:.8;font-weight:600}

/* footer */
.ig-footer{background:var(--footer-bg);color:var(--footer-text);padding:56px 0 20px}
.ig-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:44px}
.ig-brand--footer{color:var(--footer-text)}
.ig-footer-grid>div{display:grid;align-content:start;gap:10px}
.ig-footer-grid>div small{font-weight:700;color:var(--footer-muted);text-transform:uppercase;font-size:10px}
.ig-footer-grid>div a,.ig-footer-grid>div p{color:var(--footer-text);text-decoration:none;margin:0;font-size:13px;font-weight:500}
.ig-footer-instagram{display:inline-flex;align-items:center;gap:7px;color:var(--gold)!important;font-weight:700!important}
.ig-footer-instagram svg{flex-shrink:0}
.ig-footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:18px;font-size:11px;color:var(--footer-muted);font-weight:500}

/* whatsapp + reveal */
.ig-whatsapp{position:fixed;right:26px;bottom:26px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--whatsapp-bg);color:var(--whatsapp-icon);z-index:900;box-shadow:0 16px 34px rgba(20,33,61,.28);transition:.2s}
.ig-whatsapp:hover{transform:translateY(-3px) scale(1.03)}
.ig-whatsapp svg{width:27px;fill:currentColor}
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
[data-reveal].is-visible{opacity:1;transform:none}
.no-animations [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
.no-animations .ig-marquee-track{animation:none!important}
.studio-preview-badge{position:fixed;top:8px;left:50%;transform:translateX(-50%);z-index:1400;background:#111;color:#fff;border-radius:999px;padding:9px 16px;font:700 11px/1 var(--body-font),sans-serif}
.studio-preview-badge a{color:#ffd08a;text-decoration:none}

@media(max-width:1050px){
.ig-nav{display:none}
/* Marca encolhe no celular: com min-width:max-content, logo larga + nome
   longo passavam da largura da tela e empurravam o botão do menu pra fora. */
.ig-nav-wrap{grid-template-columns:minmax(0,1fr) auto;gap:12px}
.ig-brand{min-width:0}
.ig-brand img{max-width:120px;flex-shrink:0}
.ig-brand span{min-width:0}
.ig-brand strong,.ig-brand small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ig-brand--footer{min-width:max-content}
.ig-brand--footer strong,.ig-brand--footer small{white-space:normal}
.ig-menu-toggle{display:flex;flex-direction:column;gap:6px;width:40px;height:40px;flex-shrink:0;border:0;background:transparent;justify-content:center;align-items:center;justify-self:end;cursor:pointer}
.ig-menu-toggle span{width:20px;height:2px;background:var(--header-text);border-radius:2px}
.ig-btn--nav{display:none}
.ig-nav.is-open{display:grid;justify-content:stretch;position:absolute;left:20px;right:20px;top:calc(100% + 8px);background:var(--header-bg);padding:20px;gap:14px;border-radius:16px;border:1px solid var(--line);box-shadow:0 20px 40px rgba(20,33,61,.14)}
.ig-nav.is-open a{color:var(--header-text);font-size:14px}
.ig-nav.is-open a:after{display:none}
.ig-hero-grid,.ig-about-grid,.ig-faq-grid{grid-template-columns:1fr}
.ig-hero-media{order:-1}
.ig-diff-grid{grid-template-columns:1fr 1fr}
.ig-resultados-grid{grid-template-columns:1fr 1fr}
.ig-bento{grid-template-columns:1fr 1fr;grid-auto-rows:200px}
.ig-shot,.ig-shot--wide{grid-column:span 1}
.ig-shot:first-child,.ig-shot:last-child:nth-child(even){grid-column:span 2}
.ig-timeline:before{left:22px}
.ig-timeline-row{grid-template-columns:44px 1fr}
.ig-timeline-node{margin-inline:0;grid-column:1}
.ig-timeline-row:nth-child(odd) .ig-timeline-card,.ig-timeline-row:nth-child(even) .ig-timeline-card{grid-column:2}
.ig-location-layout{grid-template-columns:1fr}
.ig-location-cards{grid-template-rows:none}
.ig-location-card{gap:16px}
.ig-location-icon{width:46px;height:46px;border-radius:14px}
.ig-footer-grid{grid-template-columns:1.4fr 1fr 1fr}
.ig-footer-grid>div:last-child{display:none}
}
@media(max-width:720px){
:root{--shell:min(100% - 28px,1180px)}
.ig-nav-wrap{height:68px}
.ig-hero{padding:20px 0 30px}
.ig-hero-actions{flex-direction:column;align-items:flex-start;gap:16px}
.ig-proof-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ig-section{padding:64px 0}
.ig-diff-grid{grid-template-columns:1fr}
.ig-resultados-grid{grid-template-columns:1fr 1fr}
.ig-about-media{aspect-ratio:1/1}
.ig-final-grid{grid-template-columns:1fr}
.ig-final-action{justify-self:start;text-align:left}
.ig-footer-grid{grid-template-columns:1fr 1fr}
.ig-footer-bottom{flex-direction:column;gap:8px}
.ig-whatsapp{width:52px;height:52px;right:16px;bottom:16px}
.ig-whatsapp svg{width:26px}
.ig-testi-card{flex-basis:92%}
.ig-bento{grid-auto-rows:170px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}}

/* ============================================================
   Layout imersivo (design.layout = "immersive"): hero em tela cheia,
   header "pílula" de vidro, menu off-canvas e CTA com brilho.
   Tudo escopado em .ig-header--immersive / .ig-hero--immersive /
   .ig-oc* / body.ig-immersive — o layout clássico não é afetado.
   ============================================================ */
.ig-btn--shine{position:relative;overflow:hidden;isolation:isolate}
.ig-btn--shine:before{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;z-index:1;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:ig-shine 4.5s ease-in-out infinite}
@keyframes ig-shine{0%,55%{left:-60%}100%{left:130%}}
.ig-arrow{display:inline-block;transition:transform .25s}
.ig-btn:hover .ig-arrow{transform:translateX(5px)}
.ig-btn--primary.ig-btn--shine{animation:ig-halo 3.2s ease-out infinite}
@keyframes ig-halo{0%{box-shadow:0 0 0 0 rgba(201,162,75,.45)}70%,100%{box-shadow:0 0 0 16px rgba(201,162,75,0)}}

/* header pílula de vidro */
.ig-header--immersive{position:fixed;top:16px;left:0;right:0;background:transparent;border:0;box-shadow:none;transition:top .35s ease}
.ig-header--immersive.scrolled{top:8px;box-shadow:none}
.ig-header--solid{position:sticky;top:12px;margin-top:12px}
.ig-header--solid.scrolled{top:8px}
.ig-pill{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px;padding:0 12px 0 22px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(20,33,61,.42);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 18px 50px rgba(0,0,0,.22);transition:background .35s,height .35s}
.ig-header--immersive.scrolled .ig-pill,.ig-header--solid .ig-pill{background:rgba(20,33,61,.78);height:62px}
.ig-header--immersive .ig-brand,.ig-header--immersive .ig-brand small{color:#fff}
.ig-header--immersive .ig-brand small{opacity:.7}
.ig-pill-actions{display:flex;align-items:center;gap:10px}
.ig-header--immersive .ig-btn--nav{background:var(--gold);color:var(--deep);display:inline-flex}
.ig-oc-toggle{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:5px;width:46px;height:46px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);cursor:pointer;padding:0 14px;transition:background .2s}
.ig-oc-toggle:hover{background:rgba(255,255,255,.18)}
.ig-oc-toggle span{display:block;height:2px;border-radius:2px;background:#fff;width:100%;transition:width .25s}
.ig-oc-toggle span:nth-child(2){width:70%}
.ig-oc-toggle:hover span:nth-child(2){width:100%}

/* overlay + painel off-canvas */
.ig-oc-overlay{position:fixed;inset:0;z-index:1190;background:rgba(8,14,30,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
.ig-oc{position:fixed;top:12px;right:12px;bottom:12px;z-index:1200;width:min(440px,calc(100% - 24px));display:flex;flex-direction:column;padding:26px 30px 28px;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:calc(var(--radius) * 1px + 12px);background:linear-gradient(160deg,rgba(31,50,96,.82),rgba(8,26,35,.9));-webkit-backdrop-filter:blur(26px) saturate(1.4);backdrop-filter:blur(26px) saturate(1.4);box-shadow:0 30px 80px rgba(0,0,0,.45);transform:translateX(calc(100% + 24px));visibility:hidden;transition:transform .55s cubic-bezier(.2,.8,.2,1),visibility .55s;overflow-y:auto}
body.ig-oc-open{overflow:hidden}
body.ig-oc-open .ig-oc-overlay{opacity:1;visibility:visible}
body.ig-oc-open .ig-oc{transform:none;visibility:visible}
.ig-oc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
.ig-oc-label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.ig-oc-close{position:relative;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);cursor:pointer;transition:transform .35s,background .2s}
.ig-oc-close:hover{transform:rotate(90deg);background:rgba(255,255,255,.18)}
.ig-oc-close span{position:absolute;left:12px;right:12px;top:50%;height:2px;background:#fff;border-radius:2px;transform:rotate(45deg)}
.ig-oc-close span:last-child{transform:rotate(-45deg)}
.ig-oc-nav{display:grid;gap:2px}
.ig-oc-nav a{display:grid;grid-template-columns:34px 1fr auto;align-items:baseline;gap:10px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1);font-family:var(--heading-font),serif;font-size:clamp(24px,3vw,30px);font-weight:500;line-height:1.1;color:#fff;opacity:0;transform:translateX(26px);transition:color .2s,padding .25s}
.ig-oc-nav a em{font-family:var(--body-font),sans-serif;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--gold)}
.ig-oc-nav a i{font-style:normal;font-size:20px;opacity:0;transform:translateX(-8px);transition:.25s;color:var(--gold)}
.ig-oc-nav a:hover{color:var(--gold);padding-left:6px}
.ig-oc-nav a:hover i{opacity:1;transform:none}
body.ig-oc-open .ig-oc-nav a{opacity:1;transform:none;transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1),color .2s,padding .25s;transition-delay:calc(.18s + var(--i) * 60ms),calc(.18s + var(--i) * 60ms),0s,0s}
.ig-oc-foot{margin-top:auto;padding-top:28px;display:grid;gap:18px}
.ig-oc-cta{width:100%}
.ig-oc-contacts{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13px}
.ig-oc-contacts a{color:rgba(255,255,255,.78);transition:color .2s}
.ig-oc-contacts a:hover{color:var(--gold)}
.ig-oc-reg{font-size:11px;color:rgba(255,255,255,.5);letter-spacing:.03em}

/* hero em tela cheia */
.ig-hero--immersive{display:flex;align-items:flex-end;min-height:max(680px,100vh);min-height:max(680px,100svh);padding:150px 0 70px;background:var(--hero-bg)}
.ig-hero-bg,.ig-hero-bg picture,.ig-hero-shade,.ig-hero-grain{position:absolute;inset:0}
.ig-hero-bg{overflow:hidden}
.ig-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;transform-origin:center;animation:ig-kenburns 24s ease-in-out infinite alternate}
@keyframes ig-kenburns{from{transform:scale(1)}to{transform:scale(1.09)}}
.ig-hero-shade{background:linear-gradient(180deg,rgba(12,22,44,.5) 0%,rgba(12,22,44,.12) 28%,rgba(12,22,44,.5) 62%,rgba(8,16,34,.94) 100%),linear-gradient(90deg,rgba(12,22,44,.55) 0%,transparent 62%)}
.ig-hero-grain{opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.ig-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:end}
.ig-hero--immersive .ig-hero-copy h1{font-size:clamp(40px,5.6vw,76px);line-height:1.04;max-width:14ch}
.ig-hero--immersive .ig-lead{font-size:17px;color:rgba(255,255,255,.86)}
.ig-hero--immersive .ig-hero-actions{margin-bottom:0}
.ig-hero-glass{display:grid;gap:18px;padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:calc(var(--radius) * 1px + 6px);background:rgba(20,33,61,.38);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3)}
.ig-glass-badges{display:grid;gap:10px}
.ig-glass-badge{display:flex;align-items:center;gap:12px;color:#fff}
.ig-glass-badge b{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:rgba(201,162,75,.2);color:var(--gold);font-size:16px}
.ig-glass-badge span{display:grid;font-size:13px;font-weight:700}
.ig-glass-badge small{font-weight:500;font-size:11px;opacity:.75;margin-top:2px}
.ig-hero-glass .ig-proof-row{margin-top:0;max-width:none}
.ig-scroll-cue{position:absolute;left:50%;bottom:22px;z-index:2;width:24px;height:38px;margin-left:-12px;border:1.5px solid rgba(255,255,255,.55);border-radius:14px}
.ig-scroll-cue span{position:absolute;left:50%;top:7px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:ig-cue 1.8s ease-in-out infinite}
@keyframes ig-cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* entrada escalonada dos cards (só no layout imersivo) */
@keyframes ig-rise{from{opacity:0;transform:translateY(28px)}}
body.ig-immersive [data-reveal].is-visible :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row){animation:ig-rise .75s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:calc(var(--n,0) * 80ms)}
body.ig-immersive :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row):nth-child(2){--n:1}
body.ig-immersive :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row):nth-child(3){--n:2}
body.ig-immersive :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row):nth-child(4){--n:3}
body.ig-immersive :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row):nth-child(5){--n:4}
body.ig-immersive :is(.ig-pkg-card,.ig-shot,.ig-diff-card,.ig-stat,.ig-timeline-row):nth-child(6){--n:5}

@media(max-width:1050px){
.ig-hero-inner{grid-template-columns:1fr;gap:28px}
.ig-hero-glass{max-width:520px}
}
@media(max-width:720px){
.ig-header--immersive{top:10px}
.ig-pill{height:60px;padding:0 8px 0 16px}
.ig-header--immersive .ig-btn--nav{display:none}
.ig-brand small{display:none}
.ig-hero--immersive{padding:max(360px,50svh) 0 54px}
.ig-hero-bg img{object-position:center top}
.ig-hero--immersive .ig-hero-copy h1{font-size:clamp(36px,10.5vw,48px)}
.ig-hero--immersive .ig-hero-actions{flex-direction:column;align-items:stretch}
.ig-hero--immersive .ig-hero-actions .ig-btn{width:100%}
.ig-hero-glass .ig-proof-row{grid-template-columns:repeat(3,1fr)}
.ig-scroll-cue{display:none}
.ig-oc{top:8px;right:8px;bottom:8px;width:calc(100% - 16px);padding:22px 22px 24px}
}
@media(prefers-reduced-motion:reduce){
.ig-btn--shine:before,.ig-hero-bg img,.ig-scroll-cue span,.ig-btn--primary.ig-btn--shine{animation:none!important}
.ig-oc-nav a{opacity:1;transform:none}
}
.no-animations .ig-btn--shine:before,.no-animations .ig-hero-bg img,.no-animations .ig-btn--primary.ig-btn--shine,.no-animations .ig-scroll-cue span{animation:none!important}


/* ====== Igreja: seções próprias ====== */

/* informativo da obra */
.ig-informativo{background:var(--informativo-bg)}
.ig-obra{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:stretch}
.ig-obra-media{position:relative;border-radius:calc(var(--radius) * 1px + 10px);overflow:hidden;min-height:420px;background:var(--deep)}
.ig-obra-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ig-obra-badge{position:absolute;left:16px;top:16px;background:var(--informativo-accent);color:var(--deep);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;border-radius:999px}
.ig-obra-body h2{font-size:clamp(28px,3.4vw,42px);margin:14px 0 14px;line-height:1.12}
.ig-obra-text{margin:0 0 24px;color:var(--muted);line-height:1.75;font-size:15px}
.ig-progress{background:var(--informativo-card-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px);padding:20px 22px;margin-bottom:22px}
.ig-progress-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;font-size:13px;font-weight:700}
.ig-progress-top b{font-family:var(--heading-font),serif;font-size:30px;font-weight:600;color:var(--informativo-progress)}
.ig-progress-bar{height:12px;border-radius:999px;background:var(--line);overflow:hidden}
.ig-progress-bar i{display:block;height:100%;border-radius:999px;background:var(--informativo-progress);transition:width 1s ease}
.ig-progress small{display:block;margin-top:10px;color:var(--muted);font-size:11.5px;font-weight:600}
.ig-stages{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.ig-stage{display:flex;gap:12px;align-items:flex-start;background:var(--informativo-card-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px);padding:14px 16px}
.ig-stage-dot{flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;border:2px solid var(--line);color:var(--muted);background:var(--paper)}
.ig-stage--done .ig-stage-dot{background:var(--informativo-progress);border-color:var(--informativo-progress);color:#fff}
.ig-stage--doing .ig-stage-dot{border-color:var(--informativo-accent);color:var(--informativo-accent)}
.ig-stage b{display:block;font-size:13.5px}
.ig-stage small{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.5}
.ig-stage em{font-style:normal;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--informativo-accent)}
.ig-contribute{border:1px dashed color-mix(in srgb,var(--informativo-accent) 70%,var(--line));border-radius:calc(var(--radius) * 1px);padding:20px 22px}
.ig-contribute h3{font-family:var(--heading-font),serif;font-size:19px;margin:0 0 6px}
.ig-contribute p{margin:0 0 14px;color:var(--muted);font-size:13.5px;line-height:1.65}
.ig-pix{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px;font-size:12.5px;font-weight:700}
.ig-pix code{background:var(--informativo-card-bg);border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:13px;word-break:break-all}
.ig-obra-note{margin:14px 0 0;font-size:11px;color:var(--muted);font-weight:600}
.ig-obra-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* cultos */
.ig-cultos{background:var(--cultos-bg)}
.ig-culto-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ig-culto{background:var(--cultos-card-bg);border:1px solid var(--line);border-radius:calc(var(--radius) * 1px + 4px);padding:26px 22px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;transition:.25s}
.ig-culto:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--cultos-accent)}
.ig-culto:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(20,33,61,.1)}
.ig-culto-day{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--cultos-accent)}
.ig-culto-time{font-family:var(--heading-font),serif;font-size:36px;font-weight:600;line-height:1}
.ig-culto h3{font-family:var(--heading-font),serif;font-size:18px;font-weight:600;margin:6px 0 0}
.ig-culto p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.6;flex:1}
.ig-culto-tag{align-self:flex-start;margin-top:8px;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:700;color:var(--muted)}

/* liderança */
.ig-lideranca{background:var(--lideranca-bg);color:var(--lideranca-text)}
.ig-lideranca .ig-eyebrow{color:var(--lideranca-accent)}
.ig-lideranca h2{color:var(--lideranca-text)}
.ig-lideranca .ig-section-heading p{color:var(--lideranca-muted)}
.ig-leaders{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;max-width:900px;margin-inline:auto}
.ig-leader{text-align:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:calc(var(--radius) * 1px + 6px);padding:30px 24px}
.ig-leader-photo{width:128px;height:128px;border-radius:50%;margin:0 auto 18px;overflow:hidden;border:3px solid var(--lideranca-accent);display:grid;place-items:center;background:var(--deep-2);font-family:var(--heading-font),serif;font-size:42px;font-weight:600;color:var(--lideranca-accent)}
.ig-leader-photo img{width:100%;height:100%;object-fit:cover}
.ig-leader h3{font-family:var(--heading-font),serif;font-size:21px;font-weight:600;margin:0}
.ig-leader-role{display:block;margin:6px 0 12px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--lideranca-accent)}
.ig-leader p{margin:0;color:var(--lideranca-muted);font-size:13.5px;line-height:1.65}

/* área de membros */
.ig-membros{background:var(--membros-bg);color:var(--membros-text);padding:var(--section-space) 0}
.ig-membros-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.ig-membros .ig-eyebrow{color:var(--membros-accent);opacity:.8}
.ig-membros h2{font-family:var(--heading-font),serif;font-weight:600;font-size:clamp(26px,3vw,40px);margin:12px 0 12px;line-height:1.12}
.ig-membros p{margin:0;line-height:1.7;font-size:15px;max-width:540px}
.ig-membros-list{list-style:none;margin:0;padding:24px;display:grid;gap:14px;background:rgba(255,255,255,.28);border:1px solid rgba(20,33,61,.15);border-radius:calc(var(--radius) * 1px + 4px)}
.ig-membros-list li{display:flex;gap:12px;align-items:center;font-weight:700;font-size:14px}
.ig-membros-list li:before{content:"✓";flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--membros-accent);color:var(--membros-bg);font-size:13px}
.ig-membros-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.ig-membros .ig-btn--dark{background:var(--membros-accent);color:var(--membros-bg)}
.ig-membros .ig-btn--outline{border-color:var(--membros-accent);color:var(--membros-accent);background:transparent}

@media(max-width:1050px){
.ig-obra,.ig-membros-grid{grid-template-columns:1fr;gap:28px}
.ig-obra-media{min-height:300px}
.ig-culto-grid{grid-template-columns:1fr 1fr}
.ig-diff-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
.ig-stages,.ig-culto-grid,.ig-diff-grid{grid-template-columns:1fr}
.ig-leader-photo{width:110px;height:110px}
}

/* Seção Adoração (louvor): foto + texto lado a lado; empilha no celular. */
.ig-adoracao{background:var(--adoracao-bg)}
.ig-adoracao-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ig-adoracao-media{margin:0;position:relative}
.ig-adoracao-media img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius,14px)}
.ig-adoracao-media figcaption{margin-top:12px;font-size:.9rem;color:var(--muted);text-align:center}
.ig-adoracao-copy h2{margin:10px 0 14px}
.ig-adoracao-copy>p{color:var(--muted);line-height:1.7}
.ig-adoracao-list{list-style:none;padding:0;margin:26px 0 30px;display:grid;gap:14px}
.ig-adoracao-list li{background:var(--adoracao-card-bg);border-left:3px solid var(--adoracao-accent);border-radius:10px;padding:16px 18px;display:grid;gap:4px}
.ig-adoracao-list strong{color:var(--ink)}
.ig-adoracao-list span{color:var(--muted);font-size:.95rem;line-height:1.6}
@media(max-width:820px){
.ig-adoracao-grid{grid-template-columns:1fr;gap:32px}
.ig-adoracao-media img{aspect-ratio:4/3}
}
.ig-btn--outline{background:transparent;border-color:currentColor}
.ig-btn--outline:hover{transform:translateY(-2px)}
