/* Linguagem da marca Z-One (kit v2 / monograma Z1) aplicada da seção de serviços ao rodapé:
   Azul Profundo, Branco Quente, Azul Editorial, rótulos em IBM Plex Mono e a faixa diagonal do Z. */
@font-face{font-family:"IBM Plex Mono";src:url("assets/IBMPlexMono.ttf") format("truetype");font-weight:400;font-display:swap}
:root{--deep:#051c2d;--deep-2:#0a2638;--end:#030c13;--paper:#fefcf5;--editorial:#426c85;--steel:#526f86;--soft:#c3cfd8;--quiet:#8ea3b3;--hair:#fefcf51c;--hair-2:#fefcf538;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --stripes:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 420'%3E%3Cpath d='M180 266L1000 48V110L180 328Z' fill='%23426c85'/%3E%3Cpath d='M420 372L1000 218V258L420 412Z' fill='%23fefcf5'/%3E%3C/svg%3E")}
body{background:var(--deep)}
.eyebrow,.featured-label{font-family:var(--mono);font-weight:400;letter-spacing:.14em}
.services,.company{background:var(--deep);color:var(--paper)}
.services .eyebrow,.company .eyebrow,.site-footer .eyebrow{color:#9fbdd0;font-size:11px;opacity:1}
.services :focus-visible,.company :focus-visible,.site-footer :focus-visible,.mobile-nav :focus-visible,dialog :focus-visible{outline-color:#9fbdd0}

/* Serviços: índice editorial das cinco linhas reais */
.services{position:relative;overflow:hidden}
.services:before{content:"";position:absolute;top:58px;right:var(--gutter);width:min(400px,38vw);aspect-ratio:1000/420;background:var(--stripes) no-repeat center/contain;pointer-events:none}
.services-heading{display:block;padding-top:110px;padding-bottom:50px}
.services-heading h2{font-size:clamp(42px,5vw,78px);line-height:.98;letter-spacing:-.06em;max-width:900px}
.services-lead{margin-top:26px;max-width:520px;font-size:17px;line-height:1.6;color:var(--soft)}
.service-index{padding:0 var(--gutter) 100px}
.service-row{border-top:1px solid var(--hair);transition:background .3s}
.service-row:last-child{border-bottom:1px solid var(--hair)}
.service-row summary{display:grid;grid-template-columns:70px minmax(0,1fr) minmax(0,1.05fr) 44px;align-items:center;gap:24px;padding:34px 0;list-style:none;cursor:pointer}
.service-row summary::-webkit-details-marker{display:none}
.row-num{font-family:var(--mono);font-size:12px;color:#9fbdd0}
.service-row h3{position:relative;font-size:clamp(28px,3.2vw,50px);line-height:1;letter-spacing:-.05em;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.service-row h3:before{content:"";position:absolute;left:-58px;top:50%;width:44px;height:7px;background:var(--editorial);transform:translateY(-50%) rotate(-14.9deg) scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.service-row summary:hover h3,.service-row[open] h3{transform:translateX(58px)}
.service-row summary:hover h3:before,.service-row[open] h3:before{transform:translateY(-50%) rotate(-14.9deg) scaleX(1)}
.row-items{font-size:14px;line-height:1.6;color:var(--quiet)}
.row-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--hair-2);border-radius:50%;font-size:22px;font-weight:300;transition:transform .3s,background .3s,border-color .3s}
.service-row summary:hover .row-toggle{background:#fefcf514}
.service-row[open] .row-toggle{transform:rotate(45deg);border-color:var(--paper)}
.service-row[open]{background:linear-gradient(90deg,transparent,#0a263888 20%,#0a263888 80%,transparent)}
.service-row .service-description{display:grid;grid-template-columns:70px minmax(0,1fr) minmax(0,1.05fr) 44px;column-gap:24px;padding:0 0 40px;font-size:15px;line-height:1.7;color:var(--soft)}
.service-row .service-description>*{grid-column:2/4}
.service-row .service-description>p:first-child{grid-column:2;font-size:17px;color:var(--paper);max-width:440px}
.service-row .service-description>ul{grid-column:3;grid-row:1/span 2;margin:0;padding:0;list-style:none}
.service-row .service-description li{padding:9px 0 9px 22px;border-bottom:1px solid var(--hair);position:relative}
.service-row .service-description li:before{content:"";position:absolute;left:0;top:19px;width:11px;height:2px;background:var(--editorial);transform:rotate(-14.9deg)}
.row-note{grid-column:2;font-family:var(--mono);font-size:11px;line-height:1.7;color:var(--quiet);margin-top:16px;max-width:400px}
.row-actions{grid-column:2/4;display:flex;flex-wrap:wrap;align-items:center;gap:18px 34px;margin-top:30px}
.row-actions .text-link{color:var(--paper);font-size:13px;font-weight:600}
.row-film{font-family:var(--mono);font-size:12px;color:#9fbdd0;padding:8px 0;transition:color .2s}
.row-film:hover{color:var(--paper)}

/* Empresa: ficha técnica no lugar de etapas genéricas */
.company{border-top:1px solid var(--hair);padding-top:110px;padding-bottom:110px}
.company h2{font-size:clamp(42px,5vw,78px);line-height:.98;letter-spacing:-.06em}
.company-copy>p{color:var(--soft);font-size:17px}
.spec-sheet{margin:40px 0 0;border-top:1px solid var(--hair-2)}
.spec-sheet>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--hair)}
.spec-sheet dt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9fbdd0;padding-top:3px}
.spec-sheet dd{margin:0;font-size:15px;line-height:1.55;color:var(--paper)}

/* Rodapé: cena final com o Rastro da marca */
.site-footer{background:var(--end);color:var(--paper);border-top:1px solid var(--hair);padding:40px var(--gutter) 28px;text-align:center}
.end-card{width:min(780px,100%);margin:0 auto;aspect-ratio:16/9}
.end-rastro{width:100%;height:100%;object-fit:cover;-webkit-mask-image:radial-gradient(closest-side,#000 62%,transparent 100%);mask-image:radial-gradient(closest-side,#000 62%,transparent 100%)}
.footer-top{display:flex;flex-direction:column;align-items:center;gap:0;padding:0 0 70px;margin-top:-10px}
.footer-top .eyebrow{margin-bottom:22px}
.footer-top h2{font-size:clamp(34px,3.8vw,56px);letter-spacing:-.055em}
.footer-top h2:after{content:"";display:block;width:120px;height:3px;background:var(--editorial);margin:34px auto 34px}
.footer-top .text-link{background:var(--paper);color:var(--deep);border:0;border-radius:4px;padding:17px 26px;font-size:13px;font-weight:600;transition:background .2s}
.footer-top .text-link:hover{background:#d7e5ee}
.footer-bottom{border-top:1px solid var(--hair);color:var(--quiet);text-align:left}
.footer-bottom>p{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* Menu móvel e briefing na mesma paleta */
.mobile-nav{background:var(--deep);color:var(--paper);box-shadow:-20px 0 100px #00000080}
.mobile-nav>a{border-bottom-color:var(--hair)}
dialog{background:var(--deep);color:var(--paper);border:1px solid var(--hair);border-radius:6px}
.dialog-intro,.privacy-note{color:var(--quiet)}
form label>span,#form-status{color:#9fbdd0}
input,select,textarea{color:var(--paper);border-color:var(--hair-2);border-radius:4px;background:#fefcf508}
select option{background:var(--deep);color:var(--paper)}
input:focus,select:focus,textarea:focus{outline-color:#9fbdd0}
.download-button{background:var(--paper);color:var(--deep);border-radius:4px;font-weight:600}
#film-dialog{background:var(--end)}

@media(max-width:1000px){
 .service-row summary{grid-template-columns:50px minmax(0,1fr) 44px}
 .row-items{grid-column:2;grid-row:2;margin-top:-10px}
 .row-toggle{grid-column:3;grid-row:1}
 .service-row .service-description{grid-template-columns:50px minmax(0,1fr)}
 .service-row .service-description>*,.service-row .service-description>p:first-child,.service-row .service-description>ul,.row-note,.row-actions{grid-column:2;grid-row:auto}
 .service-row .service-description>ul{margin-top:18px}
}
@media(max-width:700px){
 .services:before{top:34px;width:150px}
 .services-heading{padding-top:90px;padding-bottom:34px}.services-heading h2,.company h2{font-size:clamp(36px,10vw,46px)}.services-lead,.company-copy>p{font-size:15px}
 .service-index{padding-bottom:60px}
 .service-row summary{grid-template-columns:34px minmax(0,1fr) 38px;gap:14px;padding:24px 0}
 .row-toggle{width:38px;height:38px}
 .service-row h3{font-size:27px}
 .service-row summary:hover h3,.service-row[open] h3{transform:none}
 .service-row h3:before{display:none}
 .service-row .service-description{grid-template-columns:34px minmax(0,1fr);column-gap:14px;font-size:14px}
 .service-row .service-description>p:first-child{font-size:15px}
 .company{padding-top:70px;padding-bottom:70px}
 .spec-sheet>div{grid-template-columns:1fr;gap:6px}
 .footer-top{padding-bottom:50px}.footer-top h2{font-size:32px}
}
