:root{
  --green:#1b1714;
  --green-soft:#f1e8d6;
  --gold:#b98a3e;
  --gold-dark:#8a6422;
  --paper:#f8f5ef;
  --sand:#f0eadf;
  --ink:#1b1714;
  --muted:#6a6158;
  --line:#e4dccb;
  --err:#b3261e;
  --radius:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 'Figtree',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:400}
h1,h2,h3{font-family:'Bricolage Grotesque','Figtree',sans-serif}
h1,h2{font-weight:800;letter-spacing:-.025em;line-height:1.1}
h3{font-weight:700;line-height:1.3}
p{margin:0}
.wrap{width:min(1120px,100% - 40px);margin-inline:auto}
.narrow{max-width:760px}
.center{text-align:center;margin-top:36px}
.hidden{display:none!important}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* topo */
.top{position:sticky;top:0;z-index:30;background:rgba(248,245,239,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.top-in{height:84px;display:flex;align-items:center;gap:22px}
.logos{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.logos img{height:auto;display:block}
.logo-ck{width:98px}
.logo-we{width:96px}
.logos i{font-style:normal;color:var(--gold)}
.top nav{display:none;gap:22px}
.top nav a{text-decoration:none;font-size:14px;color:var(--muted)}
.top nav a:hover{color:var(--green)}
.lang{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}
.lang button{border:0;background:transparent;padding:7px 12px;font:700 12px 'Figtree',sans-serif;color:var(--muted);cursor:pointer}
.lang button[aria-pressed=true]{background:var(--green);color:#fff}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border:0;border-radius:8px;background:var(--green);color:#fff;font:600 15px 'Figtree',sans-serif;text-decoration:none;cursor:pointer;text-align:center;transition:background .2s}
.btn:hover{background:#0d0b0a}
.btn:disabled{opacity:.6;cursor:wait}
.btn-block{width:100%}
.btn-ghost{background:transparent;color:var(--green);border:1.5px solid var(--green)}
.btn-ghost:hover{background:var(--green);color:#fff}
.btn-light{background:#fff;color:var(--green)}
.btn-light:hover{background:var(--sand)}
.link{color:var(--green);font-weight:700;text-decoration:none;font-size:14px}
.link:hover{text-decoration:underline}
.text-btn{border:0;background:none;padding:0;color:var(--green);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}

/* hero */
.hero{position:relative;isolation:isolate;padding:72px 0 80px;color:#fff;background:#14100d url('assets/sanlorenzo-torre.webp') center/cover no-repeat}
.hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(14,11,9,.95) 0%,rgba(14,11,9,.84) 48%,rgba(14,11,9,.55) 100%)}
.hero-grid{display:grid;gap:32px}
.tag{display:block;margin-bottom:16px;color:#d9ae5c;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.hero h1{font-size:clamp(34px,6vw,60px);line-height:1.08;color:#fff;max-width:780px}
.hero h1 em{color:#d9ae5c;font-style:normal}
.lead{margin-top:18px;font-size:18px;color:rgba(255,255,255,.86);max-width:540px}
.ticks{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:11px}
.ticks li{position:relative;padding-left:30px;font-size:16px;color:rgba(255,255,255,.92)}
.ticks li::before{content:'';position:absolute;left:0;top:7px;width:14px;height:8px;border-left:2px solid #d9ae5c;border-bottom:2px solid #d9ae5c;transform:rotate(-45deg)}
.hero-brands{display:flex;align-items:center;gap:18px;margin-top:34px;padding-top:26px;border-top:1px solid rgba(255,255,255,.18)}
.hero-brands img{height:auto;display:block}
.hero-brands .b-ck{width:96px}.hero-brands .b-we{width:104px}
.hero-brands i{font-style:normal;color:#d9ae5c;font-size:20px}

/* faixa de números */
.stats{background:var(--green);color:#fff}
.stats-in{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px;padding-block:26px}
.stats-in div{display:grid;gap:2px;padding-left:16px;border-left:2px solid #d9ae5c}
.stats-in b{font:800 34px/1 'Bricolage Grotesque','Figtree',sans-serif;color:#fff}
.stats-in span{font-size:13px;color:rgba(255,255,255,.75)}

/* formulário */
.form-card{color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px 22px;box-shadow:0 20px 40px -28px rgba(27,23,20,.35)}

.form-sub{margin:6px 0 18px;color:var(--muted);font-size:14px}
form{display:grid;gap:16px}
.field{border:0;padding:0;margin:0;min-width:0;display:grid;gap:6px}
label,legend{font-size:13px;font-weight:700;padding:0}
label em,summary em{font-style:normal;color:var(--muted);font-weight:400;font-size:12px}
input[type=text],input[type=tel],input[type=email],select{width:100%;height:50px;padding:0 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:400 16px 'Figtree',sans-serif}
input:focus,select:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(27,23,20,.14)}
.bad{border-color:var(--err)!important}
.ferr{color:var(--err);font-size:13px;font-weight:500;min-height:0}
.ferr:empty{display:none}
.form-err{padding:10px 12px;border-radius:10px;background:#fdecea}
.note{font-size:12px;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font:500 14px 'Figtree',sans-serif;color:var(--ink);cursor:pointer}
.chip svg{border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.chip:hover{border-color:var(--green)}
.chip.on{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green)}
#f-origin{margin-top:8px}
.phone-line{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px}
.more{border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.more>summary{cursor:pointer;list-style:none;padding:13px 14px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}
.more>summary::-webkit-details-marker{display:none}
.more>summary::after{content:'+';margin-left:auto;color:var(--gold);font-size:20px;line-height:1}
.more[open]>summary::after{content:'–'}
.more-body{display:grid;gap:14px;padding:0 14px 16px}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;font-weight:500;font-size:14px;cursor:pointer}
.pill:has(input:checked){border-color:var(--green);background:var(--green-soft)}
.pill input,.check input{accent-color:var(--green)}
.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;color:#3b4843;line-height:1.5;cursor:pointer}
.check input{width:18px;height:18px;margin:2px 0 0;flex:none}
.mkt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mkt-grid>div{display:grid;gap:8px;align-content:start;font-size:14px}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.fine{font-size:12px;color:var(--muted);text-align:center}

/* sucesso */
#thanks{display:grid;gap:14px;text-align:center;justify-items:center}
#thanks[hidden],#form-area[hidden]{display:none}
#thanks p{color:var(--muted);font-size:15px}
.ok{width:56px;height:56px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:26px}
.proto{width:100%;padding:16px;border:1.5px dashed var(--gold);border-radius:12px;background:var(--paper);display:grid;gap:4px}
.proto small{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.proto b{font:700 24px/1.2 'Figtree',sans-serif;letter-spacing:.06em;color:var(--green)}
.next{width:100%;display:grid;gap:10px;margin-top:6px}
.test-flag{color:var(--err);font-weight:700}

/* seções */
.section{padding:64px 0}
.soft{background:var(--sand)}
.head{margin-bottom:32px}
.kicker{margin-bottom:8px;color:var(--gold-dark);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.head h2,.duo h2,.visit h2{font-size:clamp(32px,5vw,46px)}
.head-note{color:var(--muted);font-size:14px;max-width:380px}
.cards3{display:grid;gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.num{display:grid;place-items:center;width:36px;height:36px;margin-bottom:16px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;font-size:15px}
.card h3{font-size:18px;margin-bottom:8px}
.card p{color:var(--muted);font-size:15px}
.steps{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;gap:16px}
.steps li{counter-increment:s;display:grid;gap:4px;padding:0 0 0 52px;position:relative}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--green);display:grid;place-items:center;font-weight:700;color:var(--green)}
.steps b{font-size:17px}
.steps span{color:var(--muted);font-size:15px}

/* imóveis */
.props{display:grid;gap:18px}
.prop{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.prop-img{position:relative;aspect-ratio:4/3;background:var(--sand)}
.prop-img img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:12px;top:12px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.93);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.prop-body{padding:18px 20px 20px;display:grid;gap:6px;align-content:start}
.prop-place{font-size:12px;color:var(--gold-dark);font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.prop h3{font-size:19px}
.prop-meta{font-size:14px;color:var(--muted)}
.prop .link{margin-top:6px}
.prop-open{background:var(--green-soft);border-style:dashed;justify-content:center}
.prop-open .prop-body{padding:28px 24px}

.feat{display:grid;gap:22px;margin-bottom:36px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:20px}
.feat-media{display:grid;gap:8px;align-content:start}
.feat-media img{width:100%;object-fit:cover;border-radius:12px;background:var(--sand)}
.feat-main{aspect-ratio:4/3}
.feat-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.feat-thumbs img{aspect-ratio:4/3;border-radius:8px}
.feat-body{display:grid;gap:12px;align-content:center;padding:6px 8px 10px}
.feat-body h3{font:800 clamp(26px,3.6vw,34px)/1.15 'Bricolage Grotesque','Figtree',sans-serif}
.feat-p{color:var(--muted);font-size:16px}
.facts{list-style:none;margin:4px 0 8px;padding:0;display:grid;gap:8px}
.facts li{position:relative;padding-left:26px;font-size:15px}
.facts li::before{content:'';position:absolute;left:0;top:7px;width:12px;height:7px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.feat-body .btn{justify-self:start}
.partner-box{padding:26px;border-radius:var(--radius);background:var(--green-soft);display:grid;gap:18px;align-items:center}
.partner-box h3{font-size:19px;margin-bottom:4px}
.partner-box p{color:var(--muted);font-size:15px}
.duo{display:grid;gap:24px;align-items:center}
.duo-p{margin:12px 0 14px;color:var(--muted);max-width:480px}
.tiles{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tiles li{padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);font-weight:700;color:var(--green)}
.visit{display:grid;gap:24px;align-items:center}
.visit-btns{display:grid;gap:10px}

details:not(.more){border-bottom:1px solid var(--line);padding:18px 0}
details:not(.more)>summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:16px}
details:not(.more)>summary::-webkit-details-marker{display:none}
details:not(.more)>summary::after{content:'+';color:var(--gold);font-size:22px;line-height:1}
details[open]:not(.more)>summary::after{content:'–'}
details:not(.more) p{margin-top:10px;color:var(--muted);font-size:15px}

.final{color:#fff;padding:80px 0;text-align:center}
.final h2{font-size:clamp(34px,6vw,52px);max-width:720px;margin:0 auto}
.final p{margin:14px 0 26px;color:rgba(255,255,255,.78)}

footer{padding:32px 0 96px;border-top:1px solid var(--line);font-size:14px}
.foot{display:grid;gap:8px}
footer .fine{text-align:left}

.sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(248,245,239,.96);border-top:1px solid var(--line);transition:transform .25s}
.sticky.hide{transform:translateY(110%)}

dialog{width:min(560px,calc(100% - 32px));border:0;border-radius:18px;padding:28px 24px;color:var(--ink)}
dialog::backdrop{background:rgba(10,24,20,.55)}
dialog form{display:grid;gap:12px;position:relative}
dialog h2{font-size:28px}
dialog p{font-size:14px;color:#3b4843}
dialog .x{position:absolute;right:-6px;top:-10px;width:36px;height:36px;border:0;border-radius:50%;background:var(--sand);font-size:22px;cursor:pointer}

@media (min-width:760px){
  .top nav{display:flex}
  .hero{padding:64px 0 80px}
  .hero-grid{grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
  .hero-copy{padding-top:12px}
  .form-card{padding:32px}
  .cards3{grid-template-columns:repeat(3,1fr)}
  .feat{grid-template-columns:1.1fr .9fr;gap:36px;padding:20px;align-items:center}
  .feat.rev .feat-media{order:2}
  .partner-box{grid-template-columns:1fr auto;padding:30px 34px}
  .steps{grid-template-columns:repeat(3,1fr);gap:32px}
  .head.split{display:flex;justify-content:space-between;align-items:end;gap:40px}
  .duo{grid-template-columns:1.1fr .9fr}
  .visit{grid-template-columns:1fr auto}
  .sticky{display:none}
  footer{padding-bottom:40px}
}
@media (max-width:420px){
  .phone-line{grid-template-columns:1fr}
  .mkt-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.logo-block{width:170px;height:auto;margin-bottom:14px}
.final{position:relative;isolation:isolate;background:#14100d url('assets/breeze-piscina.webp') center/cover no-repeat}
.final::before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(14,11,9,.86)}
.final-logos{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:26px}
.final-logos img{height:auto;width:110px}
.final-logos i{font-style:normal;color:#d9ae5c;font-size:22px}
.foot-logos{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.foot-logos img{height:auto}
.foot-logos i{font-style:normal;color:var(--gold)}
.foot-logos span{color:var(--muted)}
@media (min-width:760px){
  .hero{padding:72px 0 88px}
  .stats-in{grid-template-columns:repeat(4,1fr);gap:24px}
  .logo-ck{width:112px}.logo-we{width:112px}
}

/* v2 */
.top{background:#fff;backdrop-filter:none}
.lang{border-radius:8px}.lang button{font-weight:600}
.hero-grid{display:block}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:30px}
.hero-link{color:#fff;font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:4px}
.hero::before{background:linear-gradient(90deg,rgba(14,11,9,.92) 0%,rgba(14,11,9,.72) 55%,rgba(14,11,9,.45) 100%)}
.stats-in b{font-weight:800}
.pill,.chip,.check,.more,input[type=text],input[type=tel],input[type=email],select{border-radius:8px}
.form-sec{background:var(--sand)}
.narrow-form{max-width:700px}
.center-head{text-align:center;margin-bottom:28px}
.center-head .head-note{margin:10px auto 0;max-width:460px}
.form-card{border-radius:14px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 12px 32px -16px rgba(0,0,0,.18)}
.feat{border-radius:14px}.feat-media img{border-radius:8px}
.card{border-radius:12px}
.kicker{letter-spacing:.1em}

/* cuchillo */
.ck-intro{display:grid;gap:22px;margin-bottom:32px}
.ck-text{display:grid;gap:14px;color:var(--muted);align-content:start}
.ck-points{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px;color:var(--ink)}
.ck-points li{position:relative;padding-left:26px;font-size:15px}
.ck-points li::before{content:'';position:absolute;left:0;top:7px;width:12px;height:7px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.ck-gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ck-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
.ig{margin-top:40px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:22px}
.ig-profile{display:grid;grid-template-columns:auto 1fr;gap:14px 16px;align-items:center}
.ig-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.ig-id{display:grid;gap:2px}.ig-id>b{font-size:17px}.ig-id>span{font-size:14px;color:var(--muted)}
.ig-stats{display:flex;gap:18px;margin-top:6px;font-size:14px}.ig-stats i{font-style:normal;color:var(--muted)}
.btn-ig{grid-column:1/-1;background:#fff;color:var(--ink);border:1.5px solid var(--ink);min-height:44px}
.btn-ig:hover{background:var(--ink);color:#fff}
.ig-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
.ig-grid a{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:8px;background:var(--sand)}
.ig-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.ig-grid a:hover img{transform:scale(1.04)}
.ig-grid .ig-more{display:grid;place-items:center;background:var(--green);color:#fff;font-weight:600;text-align:center;padding:16px;text-decoration:none}

/* rodapé */
footer{padding:0;border:0;background:#120f0d;color:rgba(255,255,255,.78);font-size:14px}
.foot-top{padding:56px 0 40px}
.foot-grid{display:grid;gap:34px}
footer h3{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d9ae5c;margin-bottom:14px;font-family:'Figtree',sans-serif;font-weight:600}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
footer a{color:#fff;text-decoration:none}footer a:hover{text-decoration:underline}
footer p{line-height:1.7}footer p+p{margin-top:10px}
.foot-brand p{max-width:360px;margin-top:16px}
.foot-social{display:flex;gap:16px;flex-wrap:wrap}
.foot-logos{display:flex;align-items:center;gap:14px}
.foot-logos i{color:#d9ae5c}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0 96px;font-size:12px;color:rgba(255,255,255,.55)}
.foot-legal{display:grid;gap:8px}
.foot-bottom .text-btn{color:#fff;font-size:12px}
@media (min-width:760px){
  .ck-intro{grid-template-columns:1fr 1fr;gap:56px;align-items:start}
  .ck-gallery{grid-template-columns:repeat(4,1fr)}
  .ig-profile{grid-template-columns:auto 1fr auto}
  .btn-ig{grid-column:auto}
  .ig-grid{grid-template-columns:repeat(4,1fr)}
  .foot-grid{grid-template-columns:1.4fr .8fr 1fr 1fr}
  .foot-legal{grid-template-columns:1fr auto;gap:40px}
  .foot-bottom{padding-bottom:24px}
  .hero{padding:104px 0 112px}
}

/* form v3 */
.narrow-form{max-width:1020px}
.form-shell{display:grid;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px -30px rgba(0,0,0,.35);background:#fff}
.form-panel{background:#1b1714;color:#fff;padding:32px 26px;display:flex;flex-direction:column;gap:14px}
.form-panel .kicker{color:#d9ae5c;margin:0}
.form-panel h2{font-size:clamp(28px,3.4vw,36px);color:#fff}
.fp-sub{color:rgba(255,255,255,.78);font-size:15px}
.fp-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:12px}
.fp-list li{position:relative;padding-left:28px;font-size:15px}
.fp-list li::before{content:'';position:absolute;left:0;top:6px;width:13px;height:7px;border-left:2px solid #d9ae5c;border-bottom:2px solid #d9ae5c;transform:rotate(-45deg)}
.fp-logos{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:22px;border-top:1px solid rgba(255,255,255,.16)}
.fp-logos img{height:auto}.fp-logos i{font-style:normal;color:#d9ae5c}
.form-shell .form-card{border:0;border-radius:0;box-shadow:none;padding:28px 24px}
@media (min-width:860px){
  .form-shell{grid-template-columns:.8fr 1.2fr}
  .form-panel{padding:44px 36px}
  .form-shell .form-card{padding:40px 40px}
}

/* header transparente */
.top{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom:1px solid transparent;transition:background .25s,backdrop-filter .25s,border-color .25s}
.top nav a{color:rgba(255,255,255,.88)}
.top nav a:hover{color:#fff}
.top .logos i{color:#d9ae5c}
.top .lang{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35)}
.top .lang button{color:#fff}
.top .lang button[aria-pressed=true]{background:#fff;color:var(--green)}
.logos .logo-we{display:none}.logos .logo-we-l{display:block;width:96px;height:auto}
.top.scrolled{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:var(--line);box-shadow:0 2px 14px rgba(0,0,0,.06)}
.top.scrolled nav a{color:#25302c}
.top.scrolled .logos i{color:var(--gold)}
.top.scrolled .lang{background:#fff;border-color:var(--line)}
.top.scrolled .lang button{color:var(--muted)}
.top.scrolled .lang button[aria-pressed=true]{background:var(--green);color:#fff}
.top.scrolled .logos .logo-we{display:block;width:96px;height:auto}
.top.scrolled .logos .logo-we-l{display:none}
html{scroll-padding-top:84px}
.hero{padding-top:150px}
.ig-wrap{display:grid;gap:20px}
.ig-wrap .ig{margin:0}
.ig-grid{grid-template-columns:repeat(3,1fr)}
@media (min-width:860px){.ig-wrap{grid-template-columns:1fr 1fr}.ig-profile{grid-template-columns:auto 1fr}.btn-ig{grid-column:1/-1}}

/* como funciona v2 */
.steps{gap:14px;counter-reset:s;position:relative}
.steps li{display:flex;flex-direction:column;gap:8px;padding:26px 24px 24px;background:#fff;border:1px solid var(--line);border-radius:14px;position:relative;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.steps li::before{position:static;width:44px;height:44px;margin-bottom:10px;border:0;border-radius:12px;background:var(--green);color:#d9ae5c;font:800 20px 'Bricolage Grotesque','Figtree',sans-serif;display:grid;place-items:center}
.steps li b{font:800 19px/1.25 'Bricolage Grotesque','Figtree',sans-serif;color:var(--ink)}
.steps li span{font-size:15px;color:var(--muted);line-height:1.55}
@media (min-width:760px){
  .steps{grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
  .steps li:not(:last-child)::after{content:'';position:absolute;top:48px;left:calc(100% + 2px);width:16px;height:2px;background:var(--gold)}
}
#como .center,.soft .center{margin-top:32px}
.soft .center-head{margin-bottom:40px}

/* v3 ofertas */
.cards4{display:grid;gap:16px}
@media (min-width:760px){.cards4{grid-template-columns:repeat(4,1fr)}}
@media (min-width:760px) and (max-width:1000px){.cards4{grid-template-columns:1fr 1fr}}
.cards4 .card h3{font-size:17px}
.offer{display:grid;gap:2px;padding:12px 14px;border-left:3px solid var(--gold);background:#f5ecd9;border-radius:0 8px 8px 0;font-size:14px;color:var(--ink)}
.offer b{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark)}
.hero-brands{flex-wrap:wrap}
.hb-label{width:100%;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.65)}
.stats-in b{font-size:26px}

/* visite */
.visit-grid{display:grid;gap:20px}
.visit-map{position:relative;min-height:340px;border-radius:14px;overflow:hidden;background:var(--sand);border:1px solid var(--line)}
.visit-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:1}
.map-fallback{position:absolute;inset:0;display:grid;place-items:center;color:var(--green);font-weight:700}
.visit-info{display:grid;gap:16px;align-content:start}
.addr{padding:24px;background:#1b1714;color:#fff;border-radius:14px;display:grid;gap:10px}
.addr h3{font:800 22px 'Bricolage Grotesque','Figtree',sans-serif}
.addr p{color:rgba(255,255,255,.85)}
.addr .btn{background:#fff;color:var(--green);justify-self:start;margin-top:6px}
.v-partners{display:grid;gap:12px}
.v-card{padding:20px;background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;gap:10px;justify-items:start}
.v-card img{height:40px;width:auto;object-fit:contain}
.v-card p{font-size:14px;color:var(--muted)}
.v-note{text-align:left}
@media (min-width:860px){.visit-grid{grid-template-columns:1.1fr .9fr}.visit-map{min-height:100%}.v-partners{grid-template-columns:1fr 1fr}}

.visit-map{display:block;text-decoration:none}
.visit-map img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.visit-map:hover img{transform:scale(1.03)}
.map-pin{position:absolute;left:16px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:10px;background:#fff;color:var(--green);font-weight:700;font-size:15px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.map-pin svg{color:#c0392b}

.visit-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ===== v4: paleta carvão + ouro (cores das logos) e efeitos ===== */
:root{--gold-bright:#e0b867;--gold-mid:#c9a050;--ink-warm:#1b1714}
.btn{background:linear-gradient(180deg,#d9ae5c,#b98a3e);color:#1b1714;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.btn:hover{background:linear-gradient(180deg,#e3ba68,#c4954a);transform:translateY(-1px);box-shadow:0 8px 20px -8px rgba(185,138,62,.7)}
.btn::after{content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .6s}
.btn:hover::after{left:130%}
.btn-ghost{background:transparent;color:var(--ink-warm);border:1.5px solid var(--ink-warm)}
.btn-ghost:hover{background:var(--ink-warm);color:#fff;transform:none;box-shadow:none}
.btn-ghost::after,.btn-ig::after{display:none}
.btn-light{background:#fff;color:#1b1714}
.btn-ig{background:#fff;color:#1b1714;border:1.5px solid #1b1714}
.btn-ig:hover{background:#1b1714;color:#fff}
.addr .btn,.visit-map .map-pin{background:#fff}
.addr .btn{background:linear-gradient(180deg,#d9ae5c,#b98a3e);color:#1b1714}
.form-panel{background:linear-gradient(160deg,#241e19 0%,#14100d 100%)}
.addr{background:linear-gradient(160deg,#241e19 0%,#14100d 100%)}
.num{background:#1b1714;color:#d9ae5c}
.steps li::before{background:#1b1714;color:#d9ae5c}
.lang button[aria-pressed=true],.top.scrolled .lang button[aria-pressed=true]{background:#1b1714;color:#fff}
.top .lang button[aria-pressed=true]{background:#fff;color:#1b1714}
input:focus,select:focus{border-color:#b98a3e;box-shadow:0 0 0 3px rgba(185,138,62,.25)}
.chip.on{border-color:#b98a3e;background:#f5ecd9;box-shadow:inset 0 0 0 1px #b98a3e}
.pill:has(input:checked){border-color:#b98a3e;background:#f5ecd9}
.pill input,.check input{accent-color:#b98a3e}
.link,.text-btn,.map-fallback{color:#7a561b}
.map-pin{color:#1b1714}
.ig-grid .ig-more{background:#1b1714}
.foot-bottom .text-btn{color:#fff}
:focus-visible{outline-color:#b98a3e}

/* progresso de rolagem no cabeçalho */
.top::after{content:'';position:absolute;left:0;bottom:-1px;height:2px;width:calc(var(--p,0)*100%);background:linear-gradient(90deg,#b98a3e,#e0b867)}

/* hero: entrada orquestrada + zoom lento no fundo */
.hero{overflow:hidden}
.hero::after{content:'';position:absolute;inset:0;z-index:-2;background:inherit;background-size:cover;animation:slowzoom 24s ease-out both}
@keyframes slowzoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.js .hero-copy>*{opacity:0;transform:translateY(18px);animation:rise .8s cubic-bezier(.2,.7,.2,1) forwards}
.js .hero-copy>*:nth-child(1){animation-delay:.05s}.js .hero-copy>*:nth-child(2){animation-delay:.15s}.js .hero-copy>*:nth-child(3){animation-delay:.28s}.js .hero-copy>*:nth-child(4){animation-delay:.4s}.js .hero-copy>*:nth-child(5){animation-delay:.5s}.js .hero-copy>*:nth-child(6){animation-delay:.6s}
@keyframes rise{to{opacity:1;transform:none}}
.hero h1 em{background:linear-gradient(90deg,#d9ae5c,#f0d38a,#d9ae5c);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gleam 6s linear infinite}
@keyframes gleam{to{background-position:-200% 0}}

/* faixa de parceiros em movimento */
.marquee{background:#14100d;color:#d9ae5c;overflow:hidden;border-block:1px solid rgba(217,174,92,.25)}
.mq-track{display:flex;width:max-content;animation:mq 38s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-track span{display:inline-flex;align-items:center;gap:14px;padding:16px 28px;font:700 15px 'Bricolage Grotesque','Figtree',sans-serif;letter-spacing:.02em;white-space:nowrap}
.mq-track span::after{content:'';width:7px;height:7px;transform:rotate(45deg);background:#d9ae5c;opacity:.7}
@keyframes mq{to{transform:translateX(-50%)}}

/* cupom de oferta */
.offer{position:relative;background:#faf3e2;border:1.5px dashed #b98a3e;border-left:1.5px dashed #b98a3e;border-radius:10px;padding:14px 16px 14px 20px}
.offer::before,.offer::after{content:'';position:absolute;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:#fff;border:1.5px dashed #b98a3e}
.offer::before{left:-8px;clip-path:inset(0 0 0 50%)}
.offer::after{right:-8px;clip-path:inset(0 50% 0 0)}
.ck-text .offer::before,.ck-text .offer::after{background:#f8f5ef}
.offer b{color:#8a6422}

/* galeria dos empreendimentos: miniaturas trocam a foto principal */
.feat-main{transition:opacity .25s}
.feat-thumbs img{cursor:pointer;opacity:.75;transition:opacity .2s,transform .2s,outline-color .2s;outline:2px solid transparent;outline-offset:-2px}
.feat-thumbs img:hover,.feat-thumbs img.on{opacity:1;outline-color:#b98a3e}
.feat-media{overflow:hidden}
.feat-main{transition:transform .6s}
.feat-media:hover .feat-main{transform:scale(1.015)}

/* revelar cartões dos motivos (uma vez) */
.js .cards4 .card{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.js .cards4.in .card{opacity:1;transform:none}
.js .cards4.in .card:nth-child(2){transition-delay:.08s}.js .cards4.in .card:nth-child(3){transition-delay:.16s}.js .cards4.in .card:nth-child(4){transition-delay:.24s}
.card{transition:border-color .2s,box-shadow .2s}
.cards4 .card:hover{border-color:#b98a3e;box-shadow:0 14px 30px -18px rgba(185,138,62,.55)}

@media (prefers-reduced-motion:reduce){
  .hero::after,.mq-track,.hero h1 em{animation:none}
  .js .hero-copy>*,.js .cards4 .card{opacity:1;transform:none;animation:none;transition:none}
}

/* ===== v5: menos efeito, mais feito à mão ===== */
body{font-family:'Figtree',system-ui,sans-serif}
h1,h2,h3{font-family:'Bricolage Grotesque','Figtree',sans-serif;letter-spacing:-.02em}
h1,h2{font-weight:700;line-height:1.08}
/* sem eyebrows em caixa-alta */
.kicker,.tag{text-transform:none;letter-spacing:0;font-size:16px;font-weight:600;color:var(--gold-dark)}
.hero .tag{color:#e3bd6c;font-size:16px;letter-spacing:0}
.offer b{text-transform:none;letter-spacing:0;font-size:13px}
/* sem gimmicks */
.hero::after{display:none}
.js .hero-copy>*{opacity:1;transform:none;animation:none}
.hero h1 em{background:none;-webkit-background-clip:initial;background-clip:initial;color:#e3bd6c;animation:none;font-style:normal}
.btn::after{display:none}
.btn{background:#d1a24e;color:#1b1714;border-radius:6px;transition:background .15s;font-weight:700}
.btn:hover{background:#e0b35f;transform:none;box-shadow:none}
.btn-ghost,.btn-ig{background:transparent}
.btn-ghost:hover,.btn-ig:hover{background:#1b1714}
.addr .btn{background:#d1a24e}
.top::after{display:none}
/* cantos menos "padrão" */
.card,.feat,.v-card,.ig,.form-shell,.addr,.visit-map,.steps li{border-radius:6px}
.feat-media img,.ck-gallery img,.ig-grid a{border-radius:3px}
.offer{border-radius:4px}
.form-card{border-radius:0}
.input,input[type=text],input[type=tel],input[type=email],select{border-radius:4px}
.chip,.pill,.more{border-radius:4px}
.lang,.lang button{border-radius:4px}
.lang{overflow:hidden}
/* motivos: lista editorial, não cartões iguais */
.reasons{display:grid;gap:36px}
.reasons-head h2{font-size:clamp(30px,4.2vw,46px);max-width:14ch}
.reasons-head p{margin-top:14px;color:var(--muted);max-width:34ch;font-size:17px}
.reasons-list{list-style:none;margin:0;padding:0}
.reasons-list li{padding:22px 0;border-top:1px solid #cfc3aa;display:grid;gap:6px}
.reasons-list li:last-child{border-bottom:1px solid #cfc3aa}
.reasons-list h3{font-size:clamp(20px,2.4vw,26px);font-weight:700}
.reasons-list p{color:var(--muted);font-size:16px;max-width:52ch}
@media (min-width:900px){
  .reasons{grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
  .reasons-head{position:sticky;top:110px}
  .reasons-list li{grid-template-columns:1fr 1.1fr;gap:28px;align-items:baseline}
}
/* passos: numerais grandes, sem caixa */
.steps li{background:transparent;border:0;border-top:2px solid #1b1714;border-radius:0;box-shadow:none;padding:18px 4px 0 0}
.steps li::before{width:auto;height:auto;background:none;border-radius:0;color:#b98a3e;font:700 54px/1 'Bricolage Grotesque',sans-serif;margin:0 0 6px;display:block}
.steps li::after{display:none!important}
.steps li b{font-size:20px}
/* recado manuscrito */
.hand{font:600 26px/1.2 'Caveat',cursive;color:#e3bd6c;transform:rotate(-1.5deg);margin-top:8px;max-width:22ch}
.form-panel{background:#1b1714}
.addr{background:#1b1714}
.reasons-head h2,.how h2{font-weight:700}

/* topo: baía de Porto Belo */
.hero{background:#14100d url('assets/porto-belo-baia.webp') center 62%/cover no-repeat}
.hero::before{background:linear-gradient(90deg,rgba(14,11,9,.9) 0%,rgba(14,11,9,.74) 45%,rgba(14,11,9,.38) 100%)}
.foot-credit{font-size:11px;color:rgba(255,255,255,.45);margin-top:6px}
.foot-credit a{color:rgba(255,255,255,.7);text-decoration:underline}

/* Aviso de privacidade: fundo claro e texto escuro (corrige texto escuro sobre fundo escuro) */
dialog#privacy-dialog{background:#fff;color:#1b1714;box-shadow:0 24px 60px rgba(0,0,0,.35)}
dialog#privacy-dialog h2{color:#1b1714}
dialog#privacy-dialog p{color:#3a3430;font-size:15px;line-height:1.6}
dialog#privacy-dialog p.fine{color:#6f655d;font-size:13px}
dialog#privacy-dialog .x{background:#efe8dc;color:#1b1714}
dialog#privacy-dialog::backdrop{background:rgba(20,16,13,.6)}

/* ===== v6: formulário, ofertas, cookies, fluidez no celular ===== */
.test-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 18px;padding:10px 12px;border:1.5px dashed #b98a3e;border-radius:6px;background:#faf3e2}
.test-bar[hidden]{display:none}
.btn-test{min-height:44px;padding:0 16px;border:0;border-radius:6px;background:#1b1714;color:#fff;font:700 14px 'Figtree',sans-serif;cursor:pointer}
.btn-test:hover{background:#3a3028}
.test-bar small{font-size:12.5px;color:#7a5a1e;flex:1 1 180px}
.offers-box{padding:16px 14px;border:1.5px solid #cdbb94;border-radius:6px;background:#faf6ee}
.offers-box legend{padding:0 6px;margin-left:-6px;font:700 17px 'Bricolage Grotesque',sans-serif;color:#1b1714}
.offers-box .mkt-grid{margin-top:4px;gap:14px}
.offers-box .mkt-grid>div{gap:8px}
.offers-box .mkt-grid>div>b{font-size:15px}
.offers-box .pill{min-height:44px;width:100%}
.note.warn{color:#7a4a00;background:#fff3d6;padding:8px 10px;border-radius:4px;font-size:13px}
.note.warn[hidden]{display:none}
.field.bad-box{outline:2px solid var(--err)}
input.bad,select.bad{border-color:var(--err)}
input[aria-invalid=true]{border-color:var(--err)}

/* ---------- fluidez e responsividade ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden;overflow-wrap:break-word}
a,button,summary,label,.chip,.pill{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.hero{min-height:min(100vh,860px);min-height:min(100svh,860px);display:flex;align-items:center}
.hero>.wrap{width:min(1120px,100% - 40px)}
.hero h1{font-size:clamp(32px,8.4vw,60px);overflow-wrap:break-word}
.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:0 24px}
input[type=text],input[type=tel],input[type=email],select{font-size:16px;min-height:50px}
/* seções abaixo da dobra só renderizam quando chegam perto */
#beneficios,#imoveis,#cuchillo,#redes,#visite,#duvidas,footer{content-visibility:auto;contain-intrinsic-size:auto 760px}
/* imagens: nunca estouram, e sem custo de efeito em toque */
img{height:auto}
.feat-media img,.ck-gallery img,.ig-grid img,.prop-img img,.visit-map img{height:auto}
.feat-media img.feat-main{width:100%}
@media (hover:none){
  .feat-media:hover .feat-main,.ig-grid a:hover img,.visit-map:hover img{transform:none}
  .cards4 .card:hover{box-shadow:none}
}
/* cabeçalho enxuto no celular */
@media (max-width:859px){
  .top-in{gap:10px}
  .hero{padding:112px 0 56px;align-items:flex-start}
  .hero-cta .btn{width:100%}
  .hero-link{min-height:44px;display:inline-flex;align-items:center}
  .form-shell{border-radius:6px}
  .form-panel{padding:26px 20px}
  .form-shell .form-card{padding:24px 18px}
  .mkt-grid{grid-template-columns:1fr 1fr}
  .section{padding:48px 0}
}
@media (max-width:560px){
  .wrap{width:calc(100% - 32px)}
  .mkt-grid{grid-template-columns:1fr}
  .phone-line{grid-template-columns:minmax(0,118px) minmax(0,1fr)}
  .phone-line select{padding:0 8px;font-size:15px}
  .chips{gap:6px}.chip{padding:0 12px}
  .test-bar .btn-test{width:100%}
  .sticky{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
}
@media (max-width:360px){
  .hero h1{font-size:30px}
  .logos img.logo-ck{width:96px}.logos img.logo-we,.logos img.logo-we-l{width:84px}
  .lang button{min-width:34px;padding:0 6px}
}
/* celulares: foto de fundo leve */
@media (max-width:760px){
  .hero{background-image:url('assets/porto-belo-baia-m.webp');background-position:62% center}
  .hero::before{background:linear-gradient(180deg,rgba(14,11,9,.82) 0%,rgba(14,11,9,.7) 100%)}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.offers-box legend{float:left;width:100%;padding:0;margin:0 0 8px}
.offers-box legend+*{clear:both}
@media (max-width:560px){.phone-line{grid-template-columns:minmax(0,140px) minmax(0,1fr)}.phone-line select{font-size:14px}}

/* ===== Como funciona: linha do tempo, sem réguas ===== */
.steps{display:grid;grid-template-columns:1fr;gap:0;max-width:560px;margin:0 auto}
.steps li{position:relative;display:block;padding:0 0 30px 72px;min-height:56px;border:0;border-radius:0;background:none;box-shadow:none}
.steps li:last-child{padding-bottom:6px}
.steps li::before{position:absolute;left:0;top:0;display:grid;place-items:center;width:52px;height:52px;margin:0;border-radius:50%;background:#1b1714;color:#e3bd6c;font:700 22px/1 'Bricolage Grotesque','Figtree',sans-serif}
.steps li:not(:last-child)::after{display:block!important;content:'';position:absolute;left:25px;top:62px;bottom:8px;width:2px;background:repeating-linear-gradient(to bottom,#b98a3e 0 5px,transparent 5px 11px)}
.steps li b{display:block;padding-top:3px;font-size:20px;line-height:1.25}
.steps li span{display:block;margin-top:4px;font-size:15.5px;color:var(--muted)}
@media (min-width:860px){
  .steps{grid-template-columns:repeat(3,1fr);gap:36px;max-width:1000px}
  .steps li{padding:70px 0 0 0;min-height:0}
  .steps li:last-child{padding-bottom:0}
  .steps li:not(:last-child)::after{left:64px;right:-24px;top:25px;bottom:auto;width:auto;height:2px;background:repeating-linear-gradient(to right,#b98a3e 0 5px,transparent 5px 11px)}
}
.steps+.center{margin-top:44px}.soft .center-head{margin-bottom:44px}

/* ===== v7: formulário refinado ===== */
.form-shell .form-card form{display:grid;gap:22px}
input[type=text],input[type=tel],input[type=email],select{background:#fbf9f4;border:1.5px solid #ddd2bd;border-radius:6px;height:52px}
input[type=text]:hover,input[type=tel]:hover,input[type=email]:hover,select:hover{border-color:#c4b393}
input:focus,select:focus{background:#fff;border-color:#b98a3e;box-shadow:0 0 0 4px rgba(185,138,62,.18)}
label,legend{font-size:14px;color:#1b1714}
/* bandeiras em grade, alinhadas */
.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.chip{justify-content:flex-start;min-height:48px;padding:0 12px;background:#fbf9f4;border-color:#ddd2bd;white-space:nowrap}
#chip-other{justify-content:center}
.chip.on{background:#1b1714;border-color:#1b1714;color:#fff;box-shadow:none}
@media (max-width:420px){.chips{grid-template-columns:repeat(2,1fr)}}
/* botões liga/desliga */
.tg{position:relative;display:inline-flex;cursor:pointer;font-weight:600;margin:0}
.tg input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.tg span{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border:1.5px solid #ddd2bd;border-radius:6px;background:#fbf9f4;color:#3a3430;font-size:14.5px;transition:background .15s,border-color .15s,color .15s;user-select:none}
.tg span::before{content:'';width:18px;height:18px;border-radius:50%;border:1.5px solid #b5a98f;background:#fff;flex:none;transition:all .15s}
.tg:hover span{border-color:#b98a3e}
.tg input:checked+span{background:#1b1714;border-color:#1b1714;color:#fff}
.tg input:checked+span::before{border-color:#d1a24e;background:#d1a24e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.3l2.4 2.4 4.8-5' fill='none' stroke='%231b1714' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.tg input:focus-visible+span{outline:3px solid #b98a3e;outline-offset:2px}
.checks{gap:8px}
/* caixa de ofertas: uma linha por parceiro */
.offers-box{padding:18px 16px;border:1.5px solid #e2d5b8;background:#fbf6ea;border-radius:8px}
.offers-box legend{font:700 18px 'Bricolage Grotesque',sans-serif}
.p-rows{display:grid;gap:10px;margin-top:6px}
.p-row{display:grid;gap:10px;padding:12px;background:#fff;border:1px solid #eadfc8;border-radius:6px}
.p-name{display:flex;align-items:center;gap:12px}
.p-name img{width:56px;height:auto;max-height:34px;object-fit:contain;flex:none}
.p-name b{font-size:15px}
.p-ch{display:flex;flex-wrap:wrap;gap:8px}
.p-ch .tg{flex:1 1 130px}.p-ch .tg span{width:100%;justify-content:flex-start}
@media (min-width:560px){.p-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.p-ch .tg{flex:0 0 auto}}
/* caixa de seleção do aviso */
.check input{appearance:none;-webkit-appearance:none;width:24px;height:24px;margin:1px 0 0;border:1.5px solid #8f8372;border-radius:5px;background:#fff;flex:none;cursor:pointer;transition:background .15s,border-color .15s}
.check input:checked{border-color:#b98a3e;background:#d1a24e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.3l2.4 2.4 4.8-5' fill='none' stroke='%231b1714' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.check input:focus-visible{outline:3px solid #b98a3e;outline-offset:2px}
.check{font-size:14px;align-items:flex-start;gap:12px}
/* detalhes opcionais */
.more{background:#fbf9f4;border-color:#ddd2bd}
/* botão de enviar */
#submit{min-height:56px;font-size:17px;border-radius:6px;box-shadow:0 10px 24px -12px rgba(185,138,62,.8)}
#submit:hover{background:#e0b35f}
/* barra de teste: discreta */
.test-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 16px;padding:0;border:0;background:none}
.test-bar small{flex:1;font-size:12.5px;color:#7a5a1e}
.btn-test{min-height:40px;padding:0 14px;border:1.5px dashed #b98a3e;border-radius:6px;background:#fbf6ea;color:#7a561b;font:700 13px 'Figtree',sans-serif}
.btn-test:hover{background:#1b1714;color:#fff;border-style:solid;border-color:#1b1714}
/* painel escuro: bilhete do protocolo */
.fp-ticket{position:relative;margin:8px 0 2px;padding:16px 18px;border:1.5px dashed rgba(209,162,78,.7);border-radius:6px;background:rgba(255,255,255,.04);display:grid;gap:4px;max-width:340px}
.fp-ticket::before,.fp-ticket::after{content:'';position:absolute;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;background:#1b1714;border:1.5px dashed rgba(209,162,78,.7)}
.fp-ticket::before{left:-9px;clip-path:inset(0 0 0 50%)}.fp-ticket::after{right:-9px;clip-path:inset(0 50% 0 0)}
.fp-ticket small{font-size:13px;color:#d1a24e;font-weight:600}
.fp-ticket b{font:800 clamp(17px,2.2vw,22px)/1.2 'Bricolage Grotesque',sans-serif;letter-spacing:.04em;color:#fff;white-space:nowrap}
.fp-ticket i{font-style:normal;color:rgba(255,255,255,.45)}
.fp-ticket span{font-size:13px;color:rgba(255,255,255,.7)}
.fp-logos{margin-top:auto}
.form-shell{overflow:clip}
.fp-in{display:flex;flex-direction:column;gap:14px;height:100%}
@media (min-width:860px){
  .fp-in{position:sticky;top:104px;height:auto;min-height:0}
  .fp-logos{margin-top:18px}
}

/* ===== v8: ofertas como cartões marcáveis ===== */
.o-list{display:grid;gap:10px;margin-top:6px}
.o-opt{position:relative;display:block;cursor:pointer;margin:0}
.o-opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.o-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1.5px solid #e2d5b8;border-radius:8px;transition:border-color .15s,background .15s,box-shadow .15s}
.o-card img{width:54px;height:auto;max-height:36px;object-fit:contain;flex:none}
.o-txt{display:grid;gap:2px;min-width:0;flex:1}
.o-txt b{font-size:16px;line-height:1.25;color:#1b1714}
.o-txt small{font-size:13.5px;color:#6a6158;line-height:1.35}
.o-tick{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid #b5a98f;background:#fff;transition:all .15s}
.o-opt:hover .o-card{border-color:#b98a3e}
.o-opt input:checked+.o-card{border-color:#1b1714;background:#1b1714;box-shadow:0 10px 24px -14px rgba(0,0,0,.6)}
.o-opt input:checked+.o-card .o-txt b{color:#fff}
.o-opt input:checked+.o-card .o-txt small{color:rgba(255,255,255,.75)}
.o-opt input:checked+.o-card .o-tick{border-color:#d1a24e;background:#d1a24e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.3l2.4 2.4 4.8-5' fill='none' stroke='%231b1714' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.o-opt input:focus-visible+.o-card{outline:3px solid #b98a3e;outline-offset:2px}
.phone-line{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.o-txt small{font-weight:400}.o-txt b{font-weight:700}

/* painel do formulário: sem sticky, logos ancoradas no rodapé */
.form-shell{overflow:hidden}
.form-panel{display:flex}
.fp-in,.fp-in{position:static!important;top:auto!important;flex:1;display:flex;flex-direction:column;gap:14px;height:auto}
.fp-logos{margin-top:auto!important;padding-top:20px}
.fp-ticket{display:none}
@media (max-width:859px){.fp-logos{margin-top:8px!important}}

/* painel e formulário viram dois cartões separados: sem vazio preto */
.form-shell{overflow:visible!important;background:none!important;box-shadow:none!important;border-radius:0!important;gap:16px;align-items:start}
.form-panel{display:block!important;border-radius:8px;position:static;align-self:start;box-shadow:0 18px 40px -26px rgba(0,0,0,.5)}
.form-shell .form-card{border-radius:8px!important;border:1px solid var(--line)!important;background:#fff;box-shadow:0 18px 40px -28px rgba(27,23,20,.35)!important}
.fp-in{display:flex!important;flex-direction:column;gap:14px;height:auto!important}
.fp-logos{margin-top:12px!important;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
@media (min-width:860px){
  .form-shell{gap:24px}
  .form-panel{position:sticky;top:104px;padding:38px 32px}
}

/* ===== seção do cadastro: coluna única, centralizada ===== */
.form-sec{background:var(--sand)}
.form-wrap{max-width:680px}
.form-head{margin-bottom:18px}
.form-head h2{font-size:clamp(30px,5vw,44px);color:#1b1714;max-width:16ch;margin-inline:auto}
.form-head .head-note{max-width:44ch;margin:12px auto 0;font-size:17px;color:var(--muted)}
.form-ticks{list-style:none;margin:0 auto 26px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;font-size:14.5px;color:#3a3430}
.form-ticks li{position:relative;padding-left:24px}
.form-ticks li::before{content:'';position:absolute;left:0;top:.28em;width:16px;height:16px;border-radius:50%;background:#1b1714 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.3l2.2 2.2 4.6-4.8' fill='none' stroke='%23e3bd6c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.form-wrap .form-card{padding:30px 26px;border-radius:10px!important;box-shadow:0 24px 50px -30px rgba(27,23,20,.45)!important}
.form-hand{margin:26px auto 0;text-align:center;color:#7a561b;transform:rotate(-1deg);max-width:30ch}
@media (min-width:700px){.form-wrap .form-card{padding:40px 44px}}
@media (max-width:420px){.form-ticks{justify-content:flex-start;padding-left:4px}.form-wrap .form-card{padding:22px 16px}}
.form-wrap{max-width:780px}.form-wrap .form-card{max-width:680px;margin-inline:auto}.form-ticks{gap:8px 20px;font-size:14px}

/* ===== cadastro: texto de convencimento à esquerda, formulário à direita ===== */
.form-sec{background:var(--sand);padding:72px 0}
.form-split{display:grid;gap:40px;max-width:1120px}
.why .kicker{margin-bottom:10px}
.why h2{font-size:clamp(32px,4.6vw,52px);max-width:15ch;color:#1b1714}
.why-lead{margin-top:16px;font-size:18px;color:#4a423b;max-width:40ch}
.why-list{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:22px}
.why-list li{position:relative;padding-left:44px}
.why-list li::before{content:'';position:absolute;left:0;top:2px;width:28px;height:28px;border-radius:50%;background:#1b1714 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.3l2.2 2.2 4.6-4.8' fill='none' stroke='%23e3bd6c' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.why-list h3{font-size:19px;line-height:1.25;color:#1b1714}
.why-list p{margin-top:4px;font-size:15.5px;color:var(--muted);max-width:46ch}
.why-partners{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:30px;padding:14px 16px;background:rgba(255,255,255,.6);border-radius:8px;font-size:14px;color:#4a423b}
.why-partners span{font-weight:700;color:#1b1714}
.why-partners img{height:auto;width:auto;max-height:34px;max-width:96px}
.why-partners em{font-style:normal;color:#7a5a1e}
.why-hand{margin:26px 0 0;color:#7a561b;transform:rotate(-1deg);max-width:26ch;text-align:left}
.fc-head{margin-bottom:20px}
.fc-head h3{font:700 26px/1.15 'Bricolage Grotesque',sans-serif;color:#1b1714}
.fc-head p{margin-top:6px;font-size:15px;color:var(--muted)}
.form-split .form-card{max-width:none;margin:0;padding:28px 22px;border-radius:10px!important;box-shadow:0 24px 50px -30px rgba(27,23,20,.45)!important}
@media (min-width:700px){.form-split .form-card{padding:36px 36px}}
@media (min-width:980px){
  .form-split{grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:72px;align-items:start}
  .why{position:sticky;top:112px}
}

/* ===== limpeza: menos elementos ===== */
.why-list{gap:18px;margin-top:28px}
.why-list li{padding-left:42px;min-height:28px;display:flex;align-items:center}
.why-list h3{font-size:20px;font-weight:600}
.why h2{font-size:clamp(32px,4.4vw,50px)}
.why-lead{font-size:18px}
.fc-head{margin-bottom:18px}
.o-txt small{font-size:13px}
.o-card{padding:14px 16px}
#phone-note:empty{display:none}
.test-bar{justify-content:center;margin:16px 0 0}
.test-bar small{display:none}
.btn-test{min-height:36px;padding:0 12px;font-size:12.5px;background:transparent;border-color:#cdbb94;color:#7a5a1e}
.offers-box{padding:16px}
.offers-box legend{font-size:17px}
.why-list h3{font-family:'Figtree',system-ui,sans-serif;font-weight:400;font-size:19px;letter-spacing:0;color:#2a2420}

/* confirmação do número */
dialog.cf{width:min(440px,calc(100% - 28px));border:0;border-radius:12px;padding:0;background:#fff;color:#1b1714;box-shadow:0 30px 80px rgba(0,0,0,.5)}
dialog.cf::backdrop{background:rgba(20,16,13,.62)}
.cf-in{padding:28px 24px 22px;text-align:center;display:grid;gap:8px;justify-items:center}
.cf-in h2{font:700 24px/1.15 'Bricolage Grotesque',sans-serif}
.cf-num{margin-top:10px;padding:16px 14px;width:100%;background:#faf6ee;border:2px dashed #b98a3e;border-radius:8px;font:800 clamp(24px,7vw,32px)/1.1 'Bricolage Grotesque',sans-serif;letter-spacing:.02em;white-space:nowrap}
.cf-country{font-size:14px;color:#6a6158}
.cf-p{margin-top:6px;font-size:16px;color:#3a3430}
.cf-btns{display:grid;gap:8px;width:100%;margin-top:14px}
.cf-btns .btn{width:100%}
.cf-fix{min-height:50px;border:2px solid #1b1714;border-radius:6px;background:#fff;color:#1b1714;font:700 16px 'Figtree',sans-serif;cursor:pointer}
.cf-fix:hover{background:#1b1714;color:#fff}

/* confirmação inline do número */
.pc{margin-top:10px;padding:14px;background:#faf6ee;border:1.5px solid #d6b36a;border-radius:8px;animation:pcin .25s ease}
@keyframes pcin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.pc-q{font-size:16px;color:#2a2420}.pc-q strong{display:block;margin-top:4px;font:800 24px/1.1 'Bricolage Grotesque',sans-serif;letter-spacing:.02em}
.pc-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.pc-btns button{min-height:48px;border-radius:6px;font:700 15px 'Figtree',sans-serif;cursor:pointer;border:2px solid #1b1714}
.pc-yes{background:#d4a24c;color:#1b1714}.pc-no{background:#fff;color:#1b1714}
.pc-no:hover{background:#1b1714;color:#fff}
.pc-ok{margin-top:8px;display:flex;gap:8px;align-items:center;font-size:15px;font-weight:600;color:#2f6b3c}
.pc-ok i{width:18px;height:18px;border-radius:50%;background:#2f6b3c;flex:none;position:relative}
.pc-ok i:after{content:"";position:absolute;left:6px;top:3px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
@media(max-width:380px){.pc-btns{grid-template-columns:1fr}}
.pc[hidden],.pc-ok[hidden]{display:none!important}
