@font-face{font-family:"Muller";src:url("fonts/muller_light.otf") format("opentype");font-weight:300;font-display:swap}
@font-face{font-family:"Muller";src:url("fonts/muller_regular.otf") format("opentype");font-weight:400;font-display:swap}
@font-face{font-family:"Muller";src:url("fonts/muller_medium.otf") format("opentype");font-weight:500;font-display:swap}
@font-face{font-family:"Muller";src:url("fonts/muller_bold.otf") format("opentype");font-weight:700;font-display:swap}
@font-face{font-family:"Gotham";src:url("fonts/gotham-light.otf") format("opentype");font-weight:300;font-display:swap}
@font-face{font-family:"Gotham";src:url("fonts/gotham-medium.otf") format("opentype");font-weight:500;font-display:swap}
@font-face{font-family:"Gotham";src:url("fonts/gotham-bold.otf") format("opentype");font-weight:700;font-display:swap}

:root{--black:#0b0b0b;--ink:#1d1d1d;--grey:#6b6b6b;--line:#dedede;--soft:#f4f4f2;--white:#fff;--max:1280px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{font-family:"Gotham",system-ui,sans-serif;font-weight:300;color:var(--ink);background:var(--white);line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,.eyebrow,.btn,.chip,.tab{font-family:"Muller","Gotham",sans-serif}
h1{font-weight:700;font-size:clamp(1.9rem,4.4vw,3.3rem);line-height:1.08;letter-spacing:-.01em}
h2{font-weight:700;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.15;text-transform:uppercase;letter-spacing:.01em}
h3{font-weight:500;font-size:1.05rem;text-transform:uppercase;letter-spacing:.06em}
p+p{margin-top:1em}
strong{font-weight:500;color:var(--black)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
section{padding:112px 0}
.eyebrow{display:block;font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--grey);margin-bottom:14px}
.lead{font-size:1.08rem;color:#444;max-width:62ch;margin-top:18px}
.muted{color:var(--grey);font-size:.85rem}

/* header */
header.top{position:fixed;inset:0 0 auto 0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;gap:28px;height:68px}
header.top .logo img{height:34px;width:auto}
header.top nav{display:flex;gap:26px;margin-left:auto}
header.top nav a{text-decoration:none;font-family:"Muller";font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
header.top nav a:hover{opacity:.6}
.menu-btn{display:none;margin-left:auto;background:none;border:0;padding:8px;cursor:pointer}
.menu-btn span{display:block;width:22px;height:2px;background:var(--black);margin:5px 0}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1.5px solid var(--black);background:var(--black);color:var(--white);cursor:pointer;transition:.2s}
.btn:hover{background:#333;border-color:#333}
.btn.ghost{background:transparent;color:var(--black)}
.btn.ghost:hover{background:var(--black);color:var(--white)}
.btn.light{background:var(--white);color:var(--black);border-color:var(--white)}
.btn svg{width:18px;height:18px;fill:currentColor}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* hero */
.hero{padding:120px 0 0}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero .zen-logo{width:150px;margin-bottom:26px}
.hero-img{position:relative}
.hero-img img{width:100%;aspect-ratio:4/5;object-fit:cover}
.caption{font-size:.72rem;color:var(--grey);margin-top:8px;letter-spacing:.04em}
.highlights{display:grid;grid-template-columns:repeat(4,1fr);background:var(--black);color:var(--white);margin-top:64px}
.highlights div{padding:28px 26px;border-right:1px solid #2c2c2c}
.highlights div:last-child{border-right:0}
.highlights b{display:block;font-family:"Muller";font-weight:700;font-size:1.02rem;letter-spacing:.06em;text-transform:uppercase}
.highlights span{font-size:.82rem;color:#bdbdbd}

/* projeto */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.persp-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}
.persp-pair img{aspect-ratio:4/3;object-fit:cover;width:100%}
.ficha{border:1px solid var(--line);padding:30px}
.ficha h3{margin-bottom:16px}
.ficha dl{display:grid;grid-template-columns:auto 1fr;gap:10px 20px;font-size:.9rem}
.ficha dt{color:var(--grey)}
.ficha dd{font-weight:400;color:var(--black)}
.link{display:inline-block;margin-top:20px;font-family:"Muller";font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;border-bottom:1.5px solid;padding-bottom:3px;text-decoration:none;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer}

/* plantas */
#plantas{background:var(--soft)}
.tabs{display:flex;gap:0;margin-top:34px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.tab{background:none;border:0;padding:14px 22px;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--grey);border-bottom:2px solid transparent;margin-bottom:-1px}
.tab[aria-selected="true"]{color:var(--black);border-color:var(--black)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.chip{border:1.5px solid var(--black);background:transparent;padding:10px 16px;font-size:.78rem;font-weight:500;letter-spacing:.06em;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--black);color:var(--white)}
.chips.sub .chip{border-color:#b9b9b9;font-size:.74rem}
.chips.sub .chip[aria-pressed="true"]{border-color:var(--black)}
.planta-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;background:var(--white);padding:36px;align-items:center}
.planta-card h3{font-size:1.4rem;letter-spacing:.02em;text-transform:none;font-weight:700}
.planta-card ul{list-style:none;margin:18px 0;font-size:.9rem}
.planta-card li{padding:9px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px}
.planta-card li span:first-child{color:var(--grey)}
.planta-img{cursor:zoom-in;background:#fff}
.planta-img img{width:100%;max-height:560px;object-fit:contain}
.sob-consulta{padding:60px 20px;text-align:center;border:1px dashed #bbb;color:var(--grey)}
.disclaimer{font-size:.74rem;color:var(--grey);margin-top:18px;max-width:90ch}

/* diferenciais */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px}
.grid3 div{background:var(--white);padding:30px}
.grid3 h3{font-size:.9rem;margin-bottom:8px}
.grid3 p{font-size:.88rem;color:#555}

/* galeria */
.gal-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:14px;margin-top:22px}
.gallery figure{cursor:zoom-in}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:opacity .2s}
.gallery figure:hover img{opacity:.85}
.gallery figcaption{font-size:.74rem;color:var(--grey);margin-top:7px;letter-spacing:.03em}
.gallery figure.wide{grid-column:span 2}
.gallery figure.wide img{aspect-ratio:8/3}

/* lazer */
#lazer{background:var(--black);color:var(--white)}
#lazer .eyebrow{color:#9a9a9a}
#lazer strong{color:var(--white)}
.lazer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:44px}
.lazer-grid h3{border-bottom:1px solid #333;padding-bottom:12px;margin-bottom:14px}
.lazer-grid ul{list-style:none;font-size:.92rem;color:#cfcfcf}
.lazer-grid li{padding:7px 0}
.lazer-grid li small{display:block;color:#8d8d8d;font-size:.78rem}
.implant{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:50px}
.implant figure{background:#fff;padding:10px;cursor:zoom-in}
.implant figcaption{color:#9a9a9a;font-size:.74rem;margin-top:8px}

/* localizacao */
.map{width:100%;height:420px;border:0;filter:grayscale(1)}
.loc-list{list-style:none;margin-top:20px}
.loc-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:.92rem}

/* faq */
#faq{background:var(--soft)}
details{border-bottom:1px solid #d6d6d6;padding:22px 0}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-family:"Muller";font-weight:500;font-size:1.02rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{margin-top:12px;font-size:.93rem;color:#444;max-width:80ch}

/* cta final */
.cta-final{background:var(--black);color:var(--white);text-align:center}
.cta-final h2{color:var(--white)}
.cta-final p{color:#bdbdbd}
footer{padding:44px 0 110px;border-top:1px solid var(--line)}
.logos{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.logos img{height:38px;width:auto}
.legal{font-size:.7rem;color:#888;margin-top:28px;line-height:1.55}
.legal a{color:#555}

/* barra fixa mobile */
.mbar{display:none}

/* lightbox */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}
.lb.open{display:flex}
.lb img{max-width:100%;max-height:88vh;background:#fff}
.lb button{position:absolute;top:14px;right:18px;background:none;border:0;color:#fff;font-size:2.4rem;cursor:pointer;line-height:1}
.lb p{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#ccc;font-size:.8rem}

/* cookie */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:520px;background:var(--white);border:1px solid var(--line);padding:16px 18px;font-size:.8rem;z-index:60;display:none;box-shadow:0 8px 30px rgba(0,0,0,.08)}
.cookie.show{display:block}
.cookie button{margin-top:10px;padding:10px 16px}

@media (max-width:960px){
  header.top nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;padding:20px 24px;gap:18px;border-bottom:1px solid var(--line)}
  header.top nav.open{display:flex}
  header.top .btn{display:none}
  .menu-btn{display:block}
  .hero-grid,.split,.planta-card,.implant{grid-template-columns:1fr}
  .hero-img img{aspect-ratio:4/4.4}
  .highlights{grid-template-columns:1fr 1fr}
  .highlights div:nth-child(2){border-right:0}
  .highlights div:nth-child(-n+2){border-bottom:1px solid #2c2c2c}
  .grid3,.lazer-grid{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr 1fr}
  .gallery figure.wide{grid-column:span 2}
  section{padding:64px 0}
  .planta-card{padding:22px}
  .mbar{display:block;position:fixed;left:0;right:0;bottom:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:55}
  .mbar .btn{width:100%}
  .cookie{bottom:84px}
}

/* ===== ajustes padrão The One / sem cortes ===== */
.hero-img img{aspect-ratio:auto;width:auto;max-width:100%;max-height:82vh;margin:0 auto;object-fit:contain}
.persp-pair img{aspect-ratio:auto;height:auto}
.towers{display:flex;gap:24px;justify-content:center;align-items:flex-end;margin-top:36px}
.towers figure{cursor:zoom-in}
.towers img{height:min(78vh,760px);width:auto;max-width:100%}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px;margin-top:28px;align-items:start}
.pgrid figure{cursor:zoom-in;min-width:0}
.pgrid img{width:100%;height:auto}
figcaption b{display:block;font-family:"Muller";font-weight:700;font-size:1rem;margin-top:12px;color:var(--black)}
figcaption span{display:block;font-size:.74rem;color:var(--grey);margin-top:2px}
#lazer{background:var(--white);color:var(--black)}
#lazer h2,#lazer h3,#lazer strong{color:var(--black)}
.lz-group{margin-top:56px;border-top:2px solid var(--black);padding-top:20px}
.lz-group h3{font-size:1.4rem;text-transform:none;letter-spacing:0;font-weight:700}
.lz-group>p{margin-top:8px;color:var(--grey);font-size:.92rem}
#lazer .implant{margin-top:56px}
#lazer .implant figcaption{color:var(--grey)}
#localizacao{background:var(--soft)}
.h-case{text-transform:none;letter-spacing:0;font-size:clamp(1.9rem,4vw,3.2rem);line-height:1.1}
.loc-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:40px 0}
.loc-cols ul{list-style:none;margin-top:14px}
.loc-cols li,.loc-cols p{font-weight:500;font-size:.95rem;margin-top:12px}
.loc-cols h3.eyebrow{font-size:.72rem}
#localizacao .map{height:520px}
.cta-final{padding:96px 0}
.cta-final .wrap{display:flex;flex-direction:column;align-items:center}
.cta-final h2{font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.08;font-weight:700}
.cta-final .cta-name{margin-top:26px;font-family:"Gotham";font-weight:700;font-size:1.15rem;color:#fff}
.cta-final .cta-role{margin-top:8px;color:#bdbdbd;font-weight:500}
.cta-final .cta-neg{margin-top:34px;font-family:"Gotham";font-weight:700;text-transform:uppercase;font-size:clamp(1.1rem,2vw,1.5rem);color:#fff}
.cta-final .btn{margin-top:32px}
footer{background:var(--soft);border-top:0;padding:48px 0 48px}
footer .logos{flex-wrap:nowrap}
footer .lg-menoita{height:56px}
footer .lg-cyrela{height:36px}
footer .lg-zen{height:64px}
@media (max-width:960px){
  .hero-img img{max-height:70vh}
  .towers{gap:12px}
  .towers figure{flex:1}
  .towers img{height:auto;width:100%}
  .pgrid{grid-template-columns:1fr}
  .loc-cols{grid-template-columns:1fr;gap:24px}
  #localizacao .map{height:400px}
  footer{padding:32px 0 110px}
  footer .lg-menoita{height:32px}
  footer .lg-cyrela{height:20px}
  footer .lg-zen{height:36px}
}

/* ===== logos no padrão The One ===== */
header.top .wrap{height:80px}
header.top .logo img{height:56px}
html{scroll-padding-top:80px}
footer{padding:48px 0}
footer .logos{flex-wrap:nowrap;gap:24px}
footer .logos img{width:auto}
footer .lg-menoita{height:56px}
footer .lg-cyrela{height:36px}
footer .lg-zen{height:84px}
@media (max-width:960px){
  header.top .wrap{height:72px}
  header.top .logo img{height:40px}
  header.top nav{top:72px}
  html{scroll-padding-top:72px}
  footer{padding:32px 0 110px}
  footer .lg-menoita{height:32px}
  footer .lg-cyrela{height:20px}
  footer .lg-zen{height:46px}
}

/* ===== botões, menu e rodapé idênticos ao The One ===== */
.btn{font-family:"Gotham",sans-serif;font-size:.75rem;font-weight:500;letter-spacing:0;padding:14px 24px;border-width:1px}
.btn svg{width:16px;height:16px;fill:currentColor;flex:none}
header.top nav{margin:0 auto;gap:32px}
header.top nav a{font-family:"Gotham",sans-serif;font-size:.72rem;letter-spacing:0;font-weight:500;color:var(--grey)}
header.top nav a:hover{color:var(--black);opacity:1}
footer{padding:48px 0}
footer .logos{align-items:center;justify-content:space-between}
footer .lg-zen{height:56px}
@media (max-width:960px){
  footer{padding:32px 0 96px}
  footer .lg-zen{height:32px}
}
footer .lg-zen{height:70px}
@media (max-width:960px){footer .lg-zen{height:38px}}
.p-feat h4{font-family:"Gotham";font-size:.72rem;font-weight:500;text-transform:uppercase;color:var(--grey);margin:6px 0 10px}
.p-feat ul{list-style:none;columns:2;column-gap:20px;margin:0 0 22px}
.p-feat li{font-size:.84rem;padding:4px 0 4px 14px;position:relative;break-inside:avoid;border:0!important;display:block!important}
.p-feat li::before{content:"·";position:absolute;left:2px;font-weight:700}
@media (max-width:960px){.p-feat ul{columns:1}}

/* ===== tipografia, primeira tela e plantas no padrão The One ===== */
body{font-weight:500;color:#000}
h1,h2{text-transform:none;letter-spacing:0;font-weight:700}
h1{font-size:clamp(2.25rem,4.6vw,3.75rem);line-height:1.05}
h2{font-size:clamp(1.875rem,3.6vw,3rem);line-height:1.12}
.eyebrow{letter-spacing:0;font-family:"Gotham",sans-serif;font-size:.72rem;font-weight:500;margin-bottom:12px}
.lead{color:#737373;font-size:1.05rem;line-height:1.7}
strong{font-weight:700}
.hero{padding:128px 0 80px}
.hero-grid{grid-template-columns:1.1fr 1fr;gap:40px}
.hero h1{margin-top:8px;max-width:42rem}
.hero-img{text-align:center}
.hero-img img{width:auto;max-width:100%;max-height:min(62vh,720px);aspect-ratio:auto;object-fit:contain;margin:0 auto}
.hero-img .caption{text-align:center}
.hl-band{padding:0;background:var(--black)}
.hl-band .highlights{margin-top:0}
.hl-band .highlights b{font-family:"Gotham";font-size:.88rem;letter-spacing:0}
.sec-cta{margin-top:48px}
#plantas{background:var(--white)}
.pl-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:40px;margin-top:48px;align-items:start}
.pl-grid>*{min-width:0}
.pl-group{margin-bottom:32px}
.pl-group .chips{margin:0;gap:8px}
#plantas .chip{font-family:"Gotham";font-size:.875rem;font-weight:500;letter-spacing:0;padding:10px 16px;border:1px solid var(--line);background:#fff;color:#000}
#plantas .chip:hover{border-color:#000}
#plantas .chip[aria-pressed="true"]{background:#000;color:#fff;border-color:#000}
.pl-detail{border-top:1px solid var(--line);padding-top:24px}
.pl-detail h3{font-family:"Gotham";font-size:1.875rem;font-weight:700;text-transform:none;letter-spacing:0}
.pl-sub{font-size:.875rem;color:#737373;margin-top:4px}
.pl-detail ul#p-dados{list-style:none;margin:24px 0 0;border-top:1px solid var(--line);font-size:.875rem}
.pl-detail ul#p-dados li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.pl-detail ul#p-dados li span:first-child{color:#737373}
.pl-detail ul#p-dados li span:last-child{text-align:right}
.pl-more{margin-top:24px;border:0;padding:0}
.pl-more summary{font-size:.875rem;font-weight:500;font-family:"Gotham"}
.pl-more summary::after{content:"⌄";font-size:1rem}
.pl-more .p-feat{margin-top:14px}
.pl-detail .btn{margin-top:32px}
#p-visual .planta-img{border:1px solid var(--line);background:#fff;cursor:zoom-in;margin:0}
#p-visual .planta-img img{width:100%;height:auto;max-height:none}
.pl-zoom{display:block;border-top:1px solid var(--line);padding:12px;text-align:center;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#737373}
.pl-zoom::before{content:"⊕ "}
#plantas .disclaimer{margin-top:12px;font-size:.75rem;color:#737373;line-height:1.6}
@media (max-width:960px){
  .hero{padding:100px 0 48px}
  .hero-grid,.pl-grid{grid-template-columns:1fr}
  section{padding:80px 0}
}
.broker{display:flex;gap:28px;align-items:center;text-align:left;border:1px solid #2c2c2c;padding:28px 32px;margin-top:36px;max-width:640px}
.broker>img{height:64px;width:auto;filter:invert(1) grayscale(1) brightness(1.6)}
.broker .cta-name{margin-top:0}
.broker ul{list-style:none;margin-top:12px;font-size:.88rem;color:#d4d4d4}
.broker li{padding:3px 0 3px 16px;position:relative}
.broker li::before{content:"✓";position:absolute;left:0;color:#fff;font-size:.8rem}
@media (max-width:960px){.broker{flex-direction:column;align-items:flex-start;padding:22px}.broker>img{height:44px}}
header.top .logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.creci-top{font-family:"Gotham";font-size:.68rem;font-weight:700;color:#000;border-left:1px solid var(--line);padding-left:12px;white-space:nowrap}
.creci-w{color:#fff}
.creci-foot{text-align:center;font-size:.78rem;color:#4a4a4a;margin-top:28px;line-height:1.6}
.creci-foot strong{color:#000}
@media (max-width:960px){.creci-top{font-size:.6rem;padding-left:8px}}
.cta-final .cta-creci{margin-top:4px;font-family:"Gotham";font-size:.72rem;font-weight:500;color:#8a8a8a;letter-spacing:0}
.map,#localizacao .map{filter:none}
.reg{font-size:.55em;vertical-align:super;margin-left:1px;font-weight:500}
.towers{justify-content:flex-start}
/* simetria: todos os blocos na mesma largura do conteúdo (1240 px) */
.towers{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.towers figure{flex:none;margin:0}
.towers figure>img{display:block;width:100%;height:min(78vh,760px);object-fit:contain;background:var(--soft)}
.hero-grid,.split,.pl-grid,.loc-cols,.lazer-grid,.grid3,.pgrid,.persp-pair,.implant,.highlights{width:100%}
#faq details,#faq .legal{max-width:none}
@media (max-width:960px){.towers figure>img{height:auto;max-height:70vh}}
.pgrid figure:last-child:nth-child(odd){grid-column:1/-1}
html{scroll-padding-top:120px}
section[id]{scroll-margin-top:0}
@media (max-width:960px){html{scroll-padding-top:96px}}
.towers figure>img{background:none}
.cta-final h2{text-transform:uppercase;letter-spacing:0;font-size:clamp(1.875rem,3.6vw,3rem);line-height:1.1}
/* Padrão MENOITA: imagens sempre encostadas nas bordas do conteúdo (sem sobras laterais) */
.hero-img{text-align:right}
.hero-img img{display:block;width:auto;max-width:100%;height:auto;max-height:min(86vh,860px);margin:0 0 0 auto;object-fit:contain}
.hero-img .caption{text-align:right}
.towers{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end}
.towers figure>img,.towers img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:none}
@media (max-width:960px){
  .hero-img img{margin:0 auto;max-height:70vh}
  .hero-img,.hero-img .caption{text-align:center}
  .towers{gap:12px}
}
/* Padrão MENOITA: respiro fixo entre seções e torres do mesmo tamanho */
section{padding:56px 0}
.hero{padding:120px 0 64px}
.hl-band{padding:0}
.cta-final{padding:80px 0}
.lead{margin-top:16px}
.sec-cta{margin-top:40px}
.towers{margin-top:32px;align-items:start}
.lz-group{margin-top:48px}
.towers figure>img,.towers img{aspect-ratio:3/5;object-fit:cover;object-position:center}
@media (max-width:960px){
  section{padding:40px 0}
  .hero{padding:96px 0 40px}
  .cta-final{padding:56px 0}
  .sec-cta{margin-top:32px}
  .lz-group{margin-top:36px}
}
/* Padrão MENOITA: todas as fotos da galeria e do lazer no mesmo formato (3:2); a foto ímpar no fim ocupa a linha inteira em 21:9 */
.pgrid{align-items:start}
.pgrid figure>img,.pgrid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.pgrid figure:last-child:nth-child(odd)>img{aspect-ratio:21/9}
@media (max-width:960px){.pgrid figure:last-child:nth-child(odd)>img{aspect-ratio:3/2}}
/* Padrão MENOITA: todo par/grade de imagens nivelado (mesma altura, mesmo espaçamento) */
.persp-pair{gap:24px;margin-top:32px;align-items:start}
.persp-pair img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.implant{gap:24px;margin-top:32px;align-items:stretch}
.implant img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
/* Padrão MENOITA: largura igual ao The One (conteúdo até 1280 px, 20 px de margem lateral) */
.wrap{width:100%;max-width:1280px;padding:0 20px;margin:0 auto}
/* The One: perspectivas panorâmicas (proporção 2:1, faixa inteira 3:1) */
.pgrid figure>img,.pgrid img{aspect-ratio:2/1}
.pgrid figure:last-child:nth-child(odd)>img{aspect-ratio:3/1}
.pgrid.wide{grid-template-columns:1fr}
.pgrid.wide figure>img,.pgrid.wide img,.pgrid.wide figure:last-child:nth-child(odd)>img{aspect-ratio:auto;object-fit:contain}
.persp-pair img{aspect-ratio:2/1}
@media (max-width:960px){.pgrid figure:last-child:nth-child(odd)>img{aspect-ratio:2/1}}
footer .lg-capri{height:30px}
@media (max-width:960px){footer .lg-capri{height:18px}}
/* Padrão MENOITA: textos alinhados às bordas do conteúdo (sem recuo na 1ª e na última coluna) */
.grid3{gap:0;background:none;border:0;border-top:1px solid var(--line)}
.grid3>div{background:none;padding:30px 28px;border-bottom:1px solid var(--line)}
.grid3>div:not(:nth-child(3n+1)){border-left:1px solid var(--line)}
.grid3>div:nth-child(3n+1){padding-left:0}
.grid3>div:nth-child(3n){padding-right:0}
@media (min-width:961px){.highlights div:first-child{padding-left:0}.highlights div:last-child{padding-right:0}}
@media (max-width:960px){
  .grid3>div{padding:24px 0;border-left:0!important}
  .highlights div:nth-child(odd){padding-left:0}
  .highlights div:nth-child(even){padding-right:0}
}
/* La Galerie: fachadas lado a lado do mesmo tamanho, torre inteira */
.pgrid.fach figure>img,.pgrid.fach img{aspect-ratio:4/5;object-fit:cover;object-position:center}
@media (max-width:960px){.pgrid.fach{grid-template-columns:1fr 1fr;gap:16px}}
footer .lg-galerie{height:36px}
@media (max-width:960px){footer .lg-galerie{height:20px}}
/* La Galerie: esquema das torres (clique abre a planta) */
.esq{margin:32px 0 48px}
.esq-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.esq-tip{font-size:13px;color:#777}
.esq-towers{display:grid;grid-template-columns:1fr 2fr;gap:24px;align-items:end}
.esq-t{display:flex;flex-direction:column;gap:6px}
.esq-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.esq-name{margin:0 0 6px;display:flex;flex-direction:column;gap:2px}
.esq-name b{font-family:'Muller',sans-serif;font-size:18px;color:#111}
.esq-name span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#777}
.esq-u{display:flex;flex-direction:column;justify-content:center;gap:4px;text-align:left;border:0;border-radius:0;padding:12px 16px;cursor:pointer;font:inherit;width:100%;transition:box-shadow .15s,filter .15s}
.esq-u b{font-family:'Muller',sans-serif;font-size:20px;line-height:1.1}
.esq-u span{font-size:13px;line-height:1.35}
.esq-u.dk{background:#111;color:#fff}.esq-u.dk span{color:#cfcfcf}
.esq-u.lt{background:#ececec;color:#111}.esq-u.lt span{color:#555}
.esq-u.md{background:#6b6b6b;color:#fff}.esq-u.md span{color:#e6e6e6}
.esq-u:hover{filter:brightness(.93)}
.esq-u[aria-pressed=true]{box-shadow:inset 0 0 0 3px #b9b9b9}
.esq-u.lt[aria-pressed=true]{box-shadow:inset 0 0 0 3px #111}
.h-dx{min-height:76px}.h-tp{min-height:260px}.h-cs{min-height:76px}
.esq-t1 .h-tp{min-height:342px}
.esq-base{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;margin-top:6px;padding:14px 16px;background:#f4f4f4;color:#111;text-decoration:none}
.esq-base b{font-family:'Muller',sans-serif;font-size:16px}
.esq-base span{font-size:13px;color:#555}
.esq-ground{background:#e2e2e2}
.esq .disclaimer{margin-top:12px}
@media (max-width:960px){
 .esq-towers{grid-template-columns:1fr 2fr;gap:8px}
 .esq-row{gap:4px}.esq-t{gap:4px}
 .esq-u{padding:10px 8px}
 .esq-u b{font-size:14px}.esq-u span{font-size:11px}
 .esq-name b{font-size:15px}.esq-name span{font-size:10px}
 .h-dx,.h-cs{min-height:64px}.h-tp{min-height:190px}.esq-t1 .h-tp{min-height:258px}
}
.esq-towers{align-items:stretch}
.esq-t1 .h-tp{flex:1;min-height:0}
.esq-name .sh{display:none}
@media (max-width:960px){
 .esq-name .ln{display:none}.esq-name .sh{display:inline}
 .esq-u{padding:10px 7px}.esq-u b{font-size:13px}.esq-u span{font-size:10.5px}
 .esq-t1 .h-tp{min-height:0}
}
/* La Galerie: o esquema é o seletor de torre e metragem */
.pl-hide{display:none}
.esq-u i{font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
@media (max-width:960px){
 .esq-u{padding:10px 8px;gap:3px}
 .esq-u b{font-size:17px}.esq-u span{font-size:12px}.esq-u i{font-size:10px}
 .h-dx,.h-cs{min-height:88px}.h-tp{min-height:180px}
}
.pl-grid{scroll-margin-top:96px}
.lz-group{scroll-margin-top:96px}
.esq-sol{display:flex;gap:14px;align-items:flex-start;margin-top:6px;padding:14px 16px;border:1px solid #e2e2e2;color:#111}
.esq-sol svg{flex:none;margin-top:1px}
.esq-sol p{margin:0;display:flex;flex-direction:column;gap:4px}
.esq-sol b{font-family:'Muller',sans-serif;font-size:16px}
.esq-sol span{font-size:13px;color:#555;line-height:1.5}
.esq-sol strong{color:#111}
.esq-sol{align-items:center;gap:24px}
.esq-sol .sol-map{width:240px;height:auto;flex:none;font-family:'Gotham',sans-serif}
.esq-sol .sol-note{font-size:12px;color:#888}
@media (max-width:960px){.esq-sol{flex-direction:column;align-items:flex-start;gap:12px}.esq-sol .sol-map{width:100%;max-width:300px}}
.sol-guia{margin-top:6px;padding:14px 16px;background:#f4f4f4}
.sol-guia-t{margin:0 0 10px;font-family:'Muller',sans-serif;font-size:16px;color:#111}
.sol-guia ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sol-guia li{display:flex;flex-direction:column;gap:4px}
.sol-guia li b{font-size:13px;color:#111}
.sol-guia li span{font-size:13px;color:#555;line-height:1.45}
@media (max-width:960px){.sol-guia ul{grid-template-columns:1fr 1fr;gap:12px}}
.sol-guia-r{margin:0 0 14px;font-size:14px;color:#333;line-height:1.5}.sol-guia-r strong{color:#111}
details.sol-guia>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;margin:0}
details.sol-guia>summary::-webkit-details-marker{display:none}
details.sol-guia>summary::after{content:'+';font-size:20px;line-height:1;color:#111}
details.sol-guia[open]>summary::after{content:'–'}
details.sol-guia[open]>summary{margin-bottom:12px}
.sol-wrap{margin-top:48px}
details.sol-guia>summary:focus{outline:none}
details.sol-guia>summary:focus-visible{outline:2px solid #111;outline-offset:4px}
.sol-wrap>.esq-base:first-child{margin-top:0}
details.sol-box{margin-top:6px;border:1px solid #e2e2e2}
details.sol-box>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-family:'Muller',sans-serif;font-size:16px;color:#111}
details.sol-box>summary::-webkit-details-marker{display:none}
details.sol-box>summary::after{content:'+';font-size:20px;line-height:1}
details.sol-box[open]>summary::after{content:'–'}
details.sol-box>summary:focus{outline:none}
details.sol-box>summary:focus-visible{outline:2px solid #111;outline-offset:-2px}
details.sol-box .esq-sol{margin:0;border:0;border-top:1px solid #e2e2e2}
details.sol-box .sol-guia{margin:0}
details.sol-box{padding:0!important}details.sol-box>summary{margin:0!important;padding:14px 16px!important;min-height:0}

.esq-sol .sol-img{flex:none;width:560px;margin:0;cursor:zoom-in}
.esq-sol .sol-img img{display:block;width:100%;height:auto}
.esq-sol .sol-img figcaption{margin-top:6px}
@media (max-width:960px){.esq-sol .sol-img{width:100%}}
/* Epic: linhas de fotos niveladas, sem corte (mesma altura, bordas do conteúdo) */
.prow{display:flex;gap:24px;margin-top:24px;align-items:flex-start}
.prow figure{min-width:0;margin:0;cursor:zoom-in}
.prow img{display:block;width:100%;height:auto}
@media (max-width:640px){.prow{flex-direction:column;gap:20px;margin-top:20px}.prow figure{flex:none!important;width:100%}}
footer .lg-epic{height:60px}
@media (max-width:960px){footer .lg-epic{height:34px}}
/* Setinha para baixo em todos os blocos que abrem (gira ao abrir) */
details>summary::after{content:""!important;flex:none;align-self:center;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 4px 0 12px;font-size:0;line-height:0;transition:transform .2s}
details[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
/* The Palace: duas torres na mesma página */
.pal-duo{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.pal-duo .ficha .link{display:inline-block;margin-top:18px}
.pal-sub{font-family:'Muller',sans-serif;font-size:26px;font-weight:700;margin:48px 0 0;padding-top:0}
.sol-box .esq-sol+.esq-sol{margin-top:28px}
@media (max-width:860px){.pal-duo{grid-template-columns:1fr}.pal-sub{font-size:22px;margin-top:40px}}
/* dois mapas, um por torre */
.map-duo{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.map-duo figure{margin:0}
.map-duo figcaption{font-size:14px;color:#555;margin:0 0 12px}
.map-duo figcaption b{color:#000}
#localizacao .map-duo .map{height:440px}
@media(max-width:760px){.map-duo{grid-template-columns:1fr;gap:32px}#localizacao .map-duo .map{height:360px}}
/* faixa de destaques: cada informação numa linha inteira, sem quebrar no meio */
.hl-band .highlights span i{display:block;font-style:normal}

/* rodapé com Lavvi */
footer .lg-lavvi{height:30px}
@media(max-width:760px){footer .lg-lavvi{height:16px}}
footer .lg-epic{height:60px}
@media(max-width:760px){
  footer .logos{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;row-gap:24px}
  footer .lg-menoita{height:32px}footer .lg-lavvi{height:16px;justify-self:end}
  footer .lg-cyrela{height:20px}footer .lg-epic{height:40px;justify-self:end}
}
