/* ZEH0_001_SITE_INSTITUCIONAL, secoes.css. Manifesto, servicos da Home, equipe, antes e depois, espaco e noivas. Carregar na ordem das paginas. */
/* Manifesto */
.mani .g{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(34px,6vw,96px);align-items:center}
.mani .foto{aspect-ratio:4/5;position:relative}
.mani .foto2{position:absolute;width:46%;aspect-ratio:3/4;right:-8%;bottom:-9%;border:8px solid var(--preto);z-index:4}
.nums{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px;border-top:1px solid rgba(201,169,106,.22);padding-top:30px}
.nums b{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,4.4vw,3.6rem);display:block;line-height:1}
.nums small{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--apagado)}
.clara .nums{border-top-color:rgba(26,23,20,.18)} .clara .nums small{color:#3f3a33}
.mani.clara .foto2{border-color:var(--creme)}

/* Servicos */
.serv{background:var(--carvao)}
.serv .g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);margin-top:54px;align-items:start}
.lista button{display:flex;width:100%;align-items:baseline;gap:22px;padding:19px 0;border-bottom:1px solid rgba(201,169,106,.16);text-align:left;font-family:var(--serif);font-size:clamp(1.5rem,2.9vw,2.4rem);color:#7f786c;transition:color .45s,padding .45s var(--ease)}
.lista button small{font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;color:var(--ouro-escuro)}
.lista button::after{content:"→";margin-left:auto;font-family:var(--sans);font-size:1rem;opacity:0;transform:translateX(-14px);transition:.45s var(--ease);color:var(--ouro)}
.lista button.on,.lista button:hover{color:var(--ouro-claro);padding-left:14px}
.lista button.on::after{opacity:1;transform:none}
.painel{position:sticky;top:110px}
.painel .img{aspect-ratio:4/5;position:relative}
.painel .img img{position:absolute;inset:0;opacity:0;transform:scale(1.12);transition:opacity .9s,transform 1.6s var(--ease)}
.painel .img img.on{opacity:1;transform:none}
.painel .img::after{content:"";position:absolute;inset:14px;border:1px solid rgba(236,220,180,.4);pointer-events:none}
.painel p{margin-top:20px;color:var(--apagado);min-height:3.2em}

/* Equipe */
.equipe .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:54px;perspective:1400px}
.card{position:relative;aspect-ratio:3/4.2;transform-style:preserve-3d;transition:transform .5s var(--ease)}
.card img{filter:grayscale(.85) contrast(1.05);transition:filter .8s,transform 1.2s var(--ease);object-position:50% 12%}
.card.auto{transition:none}
.card.auto img{filter:none;transform:scale(1.06)}
.card.auto .brilho{opacity:1}
.card:hover img{filter:none;transform:scale(1.06)}
.card::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 45%,rgba(10,9,8,.94))}
.card .brilho{position:absolute;inset:0;z-index:2;background:radial-gradient(circle at var(--mx,50%) var(--my,0%),rgba(236,220,180,.28),transparent 45%);opacity:0;transition:opacity .4s}
.card:hover .brilho{opacity:1}
.card .info{position:absolute;left:22px;right:22px;bottom:22px;z-index:3;transform:translateZ(40px)}
.card h3{font-family:var(--serif);font-weight:400;font-size:1.9rem;color:var(--ouro-claro);line-height:1.1}
.card p{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#cfc7b8;margin-top:8px}

/* Antes e depois */
.ad .g{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:center}
.comp{position:relative;aspect-ratio:4/3;--p:50%;user-select:none;touch-action:pan-y}
.comp img{position:absolute;inset:0}
.comp .antes{filter:grayscale(1) brightness(.7) contrast(.9);clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.comp .risca{position:absolute;top:0;bottom:0;left:var(--p);width:1px;background:var(--ouro-claro);box-shadow:0 0 18px var(--ouro)}
.comp .risca::after{content:"‹ ›";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:var(--ouro);color:#17130c;display:grid;place-items:center;font-size:1.1rem;letter-spacing:.1em}
.comp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.comp .tag{position:absolute;bottom:16px;font-size:.64rem;letter-spacing:.3em;text-transform:uppercase;background:rgba(10,9,8,.6);padding:6px 12px;backdrop-filter:blur(6px)}
.comp .tag.a{left:16px}.comp .tag.d{right:16px;color:var(--ouro-claro)}

/* Espaco (galeria horizontal) */
.espaco{background:var(--carvao);overflow:hidden}
.trilho{display:flex;gap:22px;margin-top:54px;padding:0 max(20px,calc((100vw - 1240px)/2));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}
.trilho::-webkit-scrollbar{display:none}
.trilho figure{flex:0 0 min(74vw,460px);aspect-ratio:3/4;scroll-snap-align:center;position:relative}
.trilho figure:nth-child(even){margin-top:60px}
.trilho img{transition:transform 1.4s var(--ease)}
.trilho figure:hover img{transform:scale(1.07)}
.trilho figcaption{position:absolute;left:18px;bottom:16px;font-family:var(--serif);font-style:italic;font-size:1.4rem;text-shadow:0 2px 20px #000}

/* Noivas (clara) */
.noiva .g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:center}
.noiva .arco{aspect-ratio:3/4;border-radius:999px 999px 0 0;overflow:hidden}
.noiva .arco img{height:120%;will-change:transform}
.noiva ul{list-style:none;margin:30px 0 38px}
.noiva li{padding:15px 0;border-bottom:1px solid rgba(26,23,20,.14);display:flex;gap:18px;font-family:var(--serif);font-size:1.4rem}
.noiva li small{font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;color:var(--ouro-velho);padding-top:.7em}

