/*
Theme Name: Resfriando Climatização
Theme URI: https://resfriando.com.br/
Author: SEOluções
Author URI: https://seolucoes.com.br/
Description: Tema institucional do Resfriando Climatização — serviços de ar-condicionado em Volta Redonda. PHP puro, sem page builder, focado em velocidade. Integra SEOluções Site Core (leads/insights) e Page Manager (edição por JSON).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: resfriando-climatizacao
Tags: business, custom-menu, featured-images, threaded-comments

Copyright (c) 2026 SEOluções — https://seolucoes.com.br/
Software proprietário de uso interno da SEOluções. Todos os direitos reservados. Não licenciado para redistribuição ou revenda.
*/

:root {
  --ink: #17231f;
  --ink-deep: #0c1714;
  --ink-soft: #263a34;
  --cream: #f5f1e8;
  --paper: #fbfaf6;
  --stone: #d8d7cf;
  --stone-dark: #7f8984;
  --gold: #c99549;
  --gold-light: #e2bc78;
  --white: #ffffff;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-manrope), Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, summary, a { -webkit-tap-highlight-color: transparent; }
.shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.section { padding: 116px 0; }
.eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 20px; color: #687570; font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.eyebrow > span { width: 29px; height: 1px; background: var(--gold); }
.eyebrow.light { color: #d7dedb; }
.eyebrow.center { justify-content: center; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--font-sora), Arial, sans-serif; letter-spacing: -.04em; }
h2 { margin-bottom: 24px; font-size: clamp(36px, 4.3vw, 59px); line-height: 1.07; font-weight: 520; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-height: 57px; padding: 0 25px; border: 1px solid transparent; font-size: 13px; font-weight: 800; letter-spacing: .02em; transition: transform .25s ease, background .25s ease, border-color .25s ease; cursor: pointer; }
.button:hover { transform: translateY(-2px); }
.button span { font-size: 18px; }
.button-small { min-height: 46px; padding: 0 20px; gap: 18px; }
.button-dark { background: var(--ink); color: white; }
.button-gold { background: var(--gold); color: var(--ink-deep); }
.button-gold:hover { background: var(--gold-light); }
.button-outline-light { color: white; border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.03); }
.text-link { display: inline-flex; align-items: center; gap: 20px; border-bottom: 1px solid #9da7a2; padding-bottom: 7px; font-size: 13px; font-weight: 800; }
.text-link span:last-child { font-size: 17px; }
.light-link { color: white; border-color: rgba(255,255,255,.45); }

.utility-bar { background: var(--ink-deep); color: #b9c6c0; font-size: 10px; letter-spacing: .11em; text-transform: uppercase; }
.utility-inner { height: 34px; display: flex; align-items: center; justify-content: space-between; }
.utility-inner p { margin: 0; display: flex; align-items: center; gap: 9px; }
.utility-inner a { color: #dae0dd; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 4px rgba(201,149,73,.12); }
.site-header { position: absolute; z-index: 20; top: 0; width: 100%; }
.nav-bar { height: 86px; display: flex; align-items: center; justify-content: space-between; }
.nav-bar .brand { color: white; text-shadow: 0 1px 14px rgba(0,0,0,.22); }
.nav-bar .brand-mark { border-color: rgba(255,255,255,.55); }
.brand { display: flex; align-items: center; gap: 12px; color: var(--ink); font-family: var(--font-sora); font-size: 17px; font-weight: 750; letter-spacing: .12em; }
.brand > span:last-child { display: flex; flex-direction: column; }
.brand small { margin-top: 2px; font-family: var(--font-manrope); font-size: 6px; font-weight: 800; letter-spacing: .28em; }
.brand-mark { position: relative; width: 31px; height: 31px; display: block; border: 1px solid rgba(23,35,31,.5); border-radius: 50%; }
.brand-mark i { position: absolute; left: 7px; width: 16px; height: 1px; background: currentColor; transform-origin: center; }
.brand-mark i:nth-child(1) { top: 10px; transform: rotate(0deg); }
.brand-mark i:nth-child(2) { top: 15px; transform: rotate(120deg); }
.brand-mark i:nth-child(3) { top: 20px; transform: rotate(240deg); }
.nav-bar nav { display: flex; align-items: center; gap: 30px; margin-left: auto; margin-right: 30px; }
.nav-bar nav a { font-size: 12px; font-weight: 750; color: rgba(255,255,255,.9); text-shadow: 0 1px 14px rgba(0,0,0,.22); }
.nav-bar nav a:hover { color: var(--gold); }
.mobile-menu { display: none; position: relative; }
.mobile-menu summary { list-style: none; cursor: pointer; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.mobile-menu summary::-webkit-details-marker { display:none; }
.mobile-menu > div { position: absolute; top: 36px; right: 0; width: 220px; padding: 16px; display: grid; gap: 14px; background: white; box-shadow: 0 18px 40px rgba(0,0,0,.15); }

.hero { position: relative; min-height: 850px; height: 95vh; max-height: 980px; overflow: hidden; background: #d9ddd7; }
.hero-photo { position: absolute; inset: 0; }
.hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,20,17,.94) 0%, rgba(12,23,20,.82) 36%, rgba(12,23,20,.22) 65%, rgba(12,23,20,.08) 100%), linear-gradient(0deg, rgba(12,23,20,.35), transparent 45%); }
.hero-content { position: relative; height: 100%; padding-top: 170px; display: flex; align-items: center; justify-content: space-between; color: white; }
.hero-copy { width: min(680px, 65%); }
.hero h1 { max-width: 760px; margin-bottom: 28px; font-size: clamp(50px, 6.6vw, 91px); line-height: .99; font-weight: 460; }
.hero h1 em { display: block; color: var(--gold-light); font-style: normal; }
.hero-lead { max-width: 640px; margin-bottom: 33px; color: #dae3df; font-size: 17px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 31px; }
.whatsapp-dot { color: #80aa92; font-size: 12px !important; }
.hero-note { margin: 25px 0 0; color: #9bada6; font-size: 11px; letter-spacing: .06em; }
.hero-index { align-self: flex-end; margin-bottom: 115px; display: flex; align-items: flex-end; gap: 14px; color: rgba(255,255,255,.7); }
.hero-index > span { font-family: var(--font-sora); color: rgba(255,255,255,.17); font-size: 94px; font-weight: 800; line-height: .8; letter-spacing: -.1em; }
.hero-index small { padding-left: 14px; border-left: 1px solid rgba(255,255,255,.25); font-size: 8px; letter-spacing: .12em; line-height: 1.7; }
.scroll-cue { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 17px; min-width: 245px; height: 54px; padding: 0 22px; background: var(--paper); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.scroll-cue span { color: var(--gold); font-size: 18px; }

.journey { background: var(--paper); }
.section-heading { margin-bottom: 55px; }
.split-heading { display: grid; grid-template-columns: 1.2fr .7fr; gap: 80px; align-items: end; }
.split-heading > p { margin: 0 0 8px; color: #60706a; font-size: 15px; line-height: 1.75; }
.section-heading.centered { max-width: 790px; margin-left: auto; margin-right: auto; text-align: center; }
.section-heading.centered > p:last-child { max-width: 620px; margin-inline: auto; color: #65716c; line-height: 1.75; }
.journey-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.journey-card { min-height: 435px; padding: 36px 35px; border: 1px solid #d9dedb; background: #fff; display: flex; flex-direction: column; }
.journey-card + .journey-card { border-left: 0; }
.journey-card.active { border-top: 4px solid var(--gold); padding-top: 33px; }
.journey-card.dark-card { background: var(--ink); color: white; }
.card-number { align-self: flex-end; color: #a4aca8; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.line-icon { position: relative; width: 65px; height: 65px; margin: 22px 0 34px; }
.unit-icon i:first-child { position: absolute; inset: 11px 2px 18px; border: 1.5px solid var(--gold); border-radius: 4px; }
.unit-icon i:last-child { position: absolute; width: 44px; height: 1px; background: var(--gold); left: 11px; bottom: 23px; box-shadow: 9px 7px 0 -0.3px var(--gold); }
.clean-icon { border: 1.5px solid var(--gold); border-radius: 50%; }
.clean-icon i { position: absolute; width: 5px; height: 19px; left: 29px; top: 7px; background: var(--gold); border-radius: 5px; transform-origin: 3px 25px; }
.clean-icon i:nth-child(2) { transform: rotate(120deg); }
.clean-icon i:nth-child(3) { transform: rotate(240deg); }
.pulse-icon { border: 1.5px solid var(--gold); border-radius: 50%; }
.pulse-icon i { position:absolute; left: 10px; top: 31px; width: 43px; height: 1px; background: var(--gold); transform: rotate(-12deg); }
.journey-card h3 { margin-bottom: 18px; font-size: 25px; line-height: 1.18; font-weight: 570; }
.journey-card p { color: #637069; font-size: 13px; line-height: 1.75; }
.dark-card p { color: #b9c6c0; }
.journey-card a { margin-top: auto; padding-top: 25px; border-top: 1px solid #dfe3e1; display: flex; justify-content: space-between; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.dark-card a { border-color: #40534c; }
.journey-card a span { color: var(--gold); font-size: 17px; }

.services { background: #ecece7; }
.services-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #c9cecb; border-left: 1px solid #c9cecb; }
.service-card { min-height: 365px; padding: 29px 30px; border-right: 1px solid #c9cecb; border-bottom: 1px solid #c9cecb; transition: background .25s ease, transform .25s ease; }
.service-card:hover { background: var(--paper); transform: translateY(-3px); }
.service-top { display: flex; justify-content: space-between; color: #87928d; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.service-top span:last-child { color: var(--gold); font-size: 17px; }
.service-symbol { position: relative; width: 62px; height: 52px; margin: 37px 0 29px; }
.service-symbol i { position: absolute; display: block; border-color: var(--gold); }
.service-symbol i:first-child { inset: 5px 0 15px; border: 1.5px solid var(--gold); border-radius: 3px; }
.service-symbol i:nth-child(2) { width: 39px; left: 12px; bottom: 12px; border-top: 1px solid var(--gold); }
.service-symbol i:nth-child(3) { width: 14px; height: 14px; right: -5px; top: -4px; border: 1px solid var(--gold); border-radius: 50%; }
.symbol-03 i:first-child { inset: 0 7px 7px; border-radius: 50%; }
.symbol-04 i:first-child, .symbol-05 i:first-child, .symbol-06 i:first-child { inset: 0 5px; border-radius: 50%; }
.service-card h3 { max-width: 270px; margin-bottom: 15px; font-size: 20px; line-height: 1.25; font-weight: 620; }
.service-card p { min-height: 64px; color: #64716b; font-size: 13px; line-height: 1.65; }
.service-card > a { display: inline-flex; margin-top: 16px; padding-bottom: 6px; border-bottom: 1px solid #98a19d; font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }

.applications { padding: 0; background: var(--ink-deep); color: white; }
.application-grid { width: min(1440px, 100%); display: grid; grid-template-columns: .82fr 1.18fr; }
.application-copy { padding: 112px max(48px, calc((100vw - 1180px)/2)); padding-right: 80px; display: flex; flex-direction: column; justify-content: center; }
.application-copy h2 { font-size: clamp(39px, 4.2vw, 61px); }
.application-copy > p:not(.eyebrow) { color: #b7c4be; line-height: 1.8; margin-bottom: 34px; }
.application-copy .button { align-self: flex-start; }
.application-cards { display: grid; grid-template-columns: 1fr 1fr; }
.application-card { position: relative; min-height: 650px; overflow: hidden; padding: 35px; display: flex; flex-direction: column; justify-content: flex-end; }
.application-card.residence { background: #d9d1c4; color: var(--ink); }
.application-card.commercial { background: var(--ink-soft); border-left: 1px solid rgba(255,255,255,.12); }
.application-label { position: absolute; top: 35px; left: 35px; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.space-drawing { position: absolute; left: 0; right: 0; top: 85px; height: 340px; opacity: .72; }
.space-drawing i { position: absolute; display: block; border: 1px solid currentColor; }
.home-drawing i:nth-child(1) { width: 230px; height: 150px; left: 14%; bottom: 25px; border-width: 1px 1px 0; transform: skewY(-5deg); }
.home-drawing i:nth-child(2) { width: 94px; height: 42px; left: 45%; top: 40px; border-radius: 4px; }
.home-drawing i:nth-child(3) { width: 150px; height: 72px; left: 22%; bottom: 25px; }
.home-drawing i:nth-child(4) { width: 34px; height: 100px; right: 15%; bottom: 25px; border-radius: 30px 30px 0 0; }
.building-drawing i:nth-child(1) { width: 190px; height: 245px; left: 22%; bottom: 0; }
.building-drawing i:nth-child(2) { width: 45px; height: 28px; left: 45%; top: 45px; border-radius: 3px; }
.building-drawing i:nth-child(3) { width: 125px; height: 1px; left: 30%; bottom: 150px; box-shadow: 0 42px 0 currentColor, 0 84px 0 currentColor; }
.building-drawing i:nth-child(4) { width: 1px; height: 210px; left: 50%; bottom: 0; }
.application-card h3 { margin-bottom: 13px; font-size: 27px; line-height: 1.2; }
.application-card p { min-height: 68px; color: inherit; opacity: .78; font-size: 13px; line-height: 1.7; }
.application-card a { display: flex; justify-content: space-between; padding-top: 18px; border-top: 1px solid currentColor; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }

.technical { background: var(--paper); }
.technical-heading h2 { max-width: 690px; font-size: clamp(38px, 4vw, 55px); }
.technical-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #cfd4d1; }
.technical-grid article { padding: 33px 25px 37px 0; border-right: 1px solid #cfd4d1; }
.technical-grid article + article { padding-left: 25px; }
.technical-grid article:last-child { border-right: 0; }
.technical-grid span { color: var(--gold); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.technical-grid h3 { margin: 55px 0 15px; font-size: 20px; }
.technical-grid p { color: #65736c; font-size: 12px; line-height: 1.7; }
.process-note { margin-top: 55px; padding: 28px 30px; display: grid; grid-template-columns: 120px 1fr auto; align-items: center; gap: 30px; background: #e8e7e0; }
.process-note p { margin: 0; color: #53615b; font-size: 13px; line-height: 1.7; }
.process-note strong { color: var(--ink); }
.process-line { position: relative; height: 42px; }
.process-line:before { content:""; position:absolute; top: 20px; left: 0; right: 0; height: 1px; background: #aeb7b2; }
.process-line i { position:absolute; top: 16px; width: 9px; height: 9px; border-radius: 50%; background: var(--gold); }
.process-line i:nth-child(1){left:0}.process-line i:nth-child(2){left:33%}.process-line i:nth-child(3){left:66%}.process-line i:nth-child(4){right:0}

.symptoms { background: #e8e8e2; }
.symptoms-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 110px; }
.symptoms-sticky { align-self: start; position: sticky; top: 40px; }
.symptoms-sticky > p:not(.eyebrow) { color: #617069; line-height: 1.8; }
.symptoms-sticky .button { margin-top: 17px; }
.symptom-list article { display: grid; grid-template-columns: 52px 1fr; gap: 25px; padding: 32px 0; border-top: 1px solid #c3c9c5; }
.symptom-list article:last-child { border-bottom: 1px solid #c3c9c5; }
.symptom-list > article > span { color: var(--gold); font-size: 10px; font-weight: 800; }
.symptom-list h3 { margin-bottom: 9px; font-size: 22px; }
.symptom-list p { margin: 0; color: #637069; font-size: 13px; line-height: 1.7; }

.local-section { position: relative; overflow: hidden; background: var(--ink-soft); color: white; }
.local-map { position:absolute; inset:0; opacity:.1; font-family: var(--font-sora); font-weight: 800; }
.local-map span { position:absolute; font-size: 330px; line-height:1; }
.local-map span:first-child { left: 3%; top: -70px; }.local-map span:nth-child(2){left:25%;bottom:-110px}
.local-map i { position:absolute; border:1px solid white; border-radius:50%; width:420px;height:420px;right:4%;top:-90px; }
.local-map i:nth-of-type(2){width:260px;height:260px;right:10%;top:0}.local-map i:nth-of-type(3){width:80px;height:80px;right:16.5%;top:90px;background:var(--gold)}
.local-content { position:relative; display:grid; grid-template-columns:1fr .8fr; gap:110px; align-items:end; }
.local-content h2 { margin:0; max-width:650px; }
.local-content > div:last-child > p { color:#c6d0cb; line-height:1.8; margin-bottom:28px; }

.company { background: var(--paper); }
.company-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.company-visual { position:relative; min-height:620px; background:#d7d9d1; padding:35px; overflow:hidden; }
.company-placeholder { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background: linear-gradient(145deg,#d8d6cd,#aeb8b2); }
.company-placeholder:before, .company-placeholder:after { content:""; position:absolute; border:1px solid rgba(23,35,31,.22); border-radius:50%; }
.company-placeholder:before { width:420px;height:420px; }.company-placeholder:after{width:280px;height:280px}
.company-placeholder span { z-index:1; color:rgba(23,35,31,.42); font-family:var(--font-sora); font-size:64px; font-weight:700; line-height:.88; letter-spacing:-.07em; }
.company-badge { position:absolute; right:0; bottom:0; width:180px; height:155px; padding:25px; display:flex; flex-direction:column; justify-content:center; background:var(--gold); }
.company-badge strong { font-family:var(--font-sora); font-size:36px; }.company-badge small{font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.07em}
.company-copy h2 { font-size:clamp(38px,4vw,56px); }
.company-lead { color:var(--ink); font-size:17px!important; line-height:1.75!important; }
.company-copy > p:not(.eyebrow) { color:#617069; font-size:14px; line-height:1.8; }
.company-facts { margin:30px 0; border-top:1px solid #d3d7d4; }
.company-facts div { display:grid; grid-template-columns:40px 1fr; gap:15px; padding:15px 0; border-bottom:1px solid #d3d7d4; }
.company-facts span { color:var(--gold); font-size:9px; font-weight:800; }.company-facts p{margin:0;font-size:12px;font-weight:700}

.proof { background:var(--ink-deep); color:white; }
.proof-head { display:grid;grid-template-columns:1fr .55fr;gap:100px;align-items:end;margin-bottom:50px}
.proof-head h2{margin:0}.proof-head>p{color:#b6c2bc;line-height:1.8;margin:0}
.proof-grid { display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:20px; }
.proof-work { min-height:330px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,#33463f,#172820);border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}
.proof-work:before{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:50%;top:32%;transform:translate(-50%,-50%)}
.proof-work span{position:absolute;top:26px;left:26px;color:var(--gold);font-size:10px;font-weight:800}.proof-work p{font-family:var(--font-sora);font-size:18px;margin-bottom:7px}.proof-work small{color:#9eaea6;font-size:10px}
.proof blockquote { margin:0;min-height:330px;padding:34px;background:var(--cream);color:var(--ink);display:flex;flex-direction:column; }
.quote-mark { color:var(--gold);font-family:Georgia,serif;font-size:65px;line-height:.7}.proof blockquote>p{font-family:var(--font-sora);font-size:18px;line-height:1.6;letter-spacing:-.02em}.proof footer{margin-top:auto;display:flex;flex-direction:column}.proof footer small{margin-top:3px;color:#748079;font-size:9px;text-transform:uppercase;letter-spacing:.08em}

.faq { background:var(--paper); }
.faq-grid { display:grid;grid-template-columns:.65fr 1.35fr;gap:100px; }
.faq-intro { align-self:start;position:sticky;top:40px}.faq-intro h2{font-size:clamp(38px,4vw,54px)}.faq-intro>p:not(.eyebrow){color:#68746e;line-height:1.8}.faq-intro .text-link{margin-top:15px}
.faq-list { border-top:1px solid #cbd1cd; }
.faq-list details { border-bottom:1px solid #cbd1cd; }
.faq-list summary { list-style:none;display:grid;grid-template-columns:42px 1fr 30px;gap:15px;align-items:center;padding:24px 0;cursor:pointer;font-family:var(--font-sora);font-size:16px;font-weight:600;letter-spacing:-.025em; }
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--gold);font-family:var(--font-manrope);font-size:9px;letter-spacing:.08em}.faq-list summary i{font-style:normal;text-align:right;color:var(--gold);font-size:20px;transition:transform .2s}.faq-list details[open] summary i{transform:rotate(45deg)}
.faq-list details>p { padding:0 45px 25px 57px;color:#617069;font-size:13px;line-height:1.8; }

.contact { background:var(--ink);color:white; }
.contact-grid { display:grid;grid-template-columns:1fr .82fr;gap:100px;align-items:start}.contact-copy h2{font-size:clamp(43px,5vw,68px)}.contact-copy>p:not(.eyebrow){max-width:620px;color:#bdc9c3;line-height:1.8}.contact-lines{margin-top:55px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #43564f}.contact-lines div{padding:22px 20px 0 0;display:flex;flex-direction:column}.contact-lines span{color:#91a39b;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.contact-lines strong{margin-top:7px;font-size:14px}
.contact-form{padding:35px;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;gap:19px}.form-top{display:flex;justify-content:space-between;margin-bottom:3px;padding-bottom:18px;border-bottom:1px solid #d4d8d5;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.form-top small{color:var(--gold)}
.contact-form label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #bbc4bf;background:transparent;padding:8px 0 12px;color:var(--ink);outline:none;border-radius:0;text-transform:none;letter-spacing:0}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form .button{width:100%;margin-top:5px}.contact-form>p{margin:0;color:#77837d;font-size:9px;line-height:1.6;text-transform:none;letter-spacing:0}

.footer{background:#08110f;color:#a6b4ad;padding:60px 0 28px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding-bottom:45px;border-bottom:1px solid #293a34}.brand-light{color:white}.footer-top>p{margin:0;font-size:11px;line-height:1.7}.back-top{justify-self:end;color:white;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.footer-bottom{padding-top:24px;display:flex;justify-content:space-between;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.footer-bottom div{display:flex;gap:22px}.mobile-whatsapp{display:none}

@media (max-width: 1000px) {
  .nav-bar nav { display:none; }.nav-bar>.button{display:none}.mobile-menu{display:block}
  .hero { min-height:760px; }.hero-copy{width:78%}.hero-index{display:none}
  .split-heading,.technical-heading,.company-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:45px}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .application-grid{grid-template-columns:1fr}.application-copy{padding:90px max(48px,calc((100vw - 880px)/2));}.application-card{min-height:570px}
  .symptoms-layout{gap:60px}.proof-grid{grid-template-columns:1fr 1fr}.proof blockquote{grid-column:1/-1}.faq-intro{position:static}.contact-grid{grid-template-columns:1fr 1fr;gap:45px}.company-visual{min-height:520px}
}

@media (max-width: 720px) {
  .shell{width:min(100% - 34px, 620px)}.section{padding:78px 0}.utility-inner{justify-content:center}.utility-inner>a{display:none}.nav-bar{height:70px}.brand{font-size:14px}.brand-mark{width:27px;height:27px}.brand-mark i{left:6px;width:14px}.brand-mark i:nth-child(1){top:8px}.brand-mark i:nth-child(2){top:13px}.brand-mark i:nth-child(3){top:18px}
  h2{font-size:36px}.hero{height:auto;min-height:740px}.hero-photo img{object-position:62% top}.hero-shade{background:linear-gradient(90deg,rgba(9,20,17,.94),rgba(9,20,17,.6)),linear-gradient(0deg,rgba(9,20,17,.45),transparent)}.hero-content{padding-top:155px;padding-bottom:95px;align-items:center}.hero-copy{width:100%}.hero h1{font-size:49px}.hero-lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-note{line-height:1.5}.scroll-cue{display:none}
  .split-heading{display:block}.split-heading>p{margin-top:25px}.journey-grid{grid-template-columns:1fr}.journey-card{min-height:370px}.journey-card+.journey-card{border-left:1px solid #d9dedb;border-top:0}.journey-card.active+.journey-card{border-top:0}.services-grid{grid-template-columns:1fr}.service-card{min-height:330px}.section-heading.centered{text-align:left}.eyebrow.center{justify-content:flex-start}
  .application-cards{grid-template-columns:1fr}.application-card{min-height:520px}.application-copy{padding:78px 17px}.application-copy h2{font-size:39px}
  .technical-grid{grid-template-columns:1fr 1fr}.technical-grid article:nth-child(2){border-right:0}.technical-grid article:nth-child(3){padding-left:0;border-top:1px solid #cfd4d1}.technical-grid article:nth-child(4){border-top:1px solid #cfd4d1;border-right:0}.technical-grid h3{margin-top:30px}.process-note{grid-template-columns:1fr;padding:25px}.process-line{width:100%}
  .symptoms-layout{grid-template-columns:1fr;gap:35px}.symptoms-sticky{position:static}.local-content{grid-template-columns:1fr;gap:35px}.local-map span{font-size:230px}.company-grid{gap:45px}.company-visual{min-height:450px}.company-placeholder span{font-size:48px}.company-copy h2{font-size:38px}
  .proof-head{grid-template-columns:1fr;gap:25px}.proof-grid{grid-template-columns:1fr}.proof blockquote{grid-column:auto}.proof-work{min-height:270px}.faq-grid{gap:45px}.faq-list summary{font-size:14px}.faq-list details>p{padding-left:0}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-copy h2{font-size:42px}.contact-lines{grid-template-columns:1fr}.contact-form{padding:25px 20px}
  .footer{padding-bottom:90px}.footer-top{grid-template-columns:1fr;gap:25px}.back-top{justify-self:start}.footer-bottom{flex-direction:column;gap:20px}.footer-bottom div{flex-wrap:wrap}.mobile-whatsapp{position:fixed;z-index:50;bottom:12px;left:12px;right:12px;height:55px;display:flex;align-items:center;justify-content:center;gap:25px;background:var(--gold);color:var(--ink-deep);font-size:12px;font-weight:800;box-shadow:0 10px 35px rgba(0,0,0,.25)}
}

@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}*{transition:none!important} }

/* Página de serviço: instalação de ar-condicionado */
.installation-hero .service-hero-photo img { object-position: center center; }
.installation-situations { margin-top: 68px; }

.installation-systems { background: #e8e9e4; }
.installation-system-grid {
  display: grid;
  grid-template-columns: 1fr 1fr .82fr;
  align-items: stretch;
}
.installation-system-grid article {
  min-height: 455px;
  padding: 35px;
  display: flex;
  flex-direction: column;
  border: 1px solid #c9d0cc;
  background: #f8f6f0;
}
.installation-system-grid article + article { border-left: 0; }
.installation-system-grid article.featured { padding-top: 32px; border-top: 4px solid var(--gold); }
.installation-system-grid article.dark-card { background: var(--ink); color: white; }
.installation-system-grid > article > span {
  color: #89938e;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
}
.installation-system-grid h3 {
  margin-bottom: 17px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 570;
}
.installation-system-grid p {
  color: #637069;
  font-size: 13px;
  line-height: 1.75;
}
.installation-system-grid .dark-card p { color: #bdc8c3; }
.installation-system-grid a {
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid #d0d5d2;
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.installation-system-grid .dark-card a { border-color: #40534c; }
.installation-system-grid a span { color: var(--gold); font-size: 16px; }
.installation-system-note { background: #d9d9d1!important; }
.installation-system-note h3 { margin-top: 88px; }
.installation-system-note small {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid #bcc4bf;
  color: #66736d;
  font-size: 10px;
  line-height: 1.6;
}
.installation-system-note .eyebrow { margin-top: 28px; }
.installation-system-note .eyebrow > span { display: block; }
.installation-system-card .choice-icon { width: 67px; height: 67px; margin: 31px 0; }
.installation-system-card .unit-icon i:first-child {
  position: absolute;
  inset: 12px 1px 20px;
  border: 1.5px solid var(--gold);
  border-radius: 4px;
}
.installation-system-card .unit-icon i:last-child {
  position: absolute;
  width: 47px;
  height: 1px;
  left: 10px;
  bottom: 25px;
  background: var(--gold);
  box-shadow: 10px 7px 0 -.3px var(--gold);
}
.installation-cassette-icon {
  position: relative;
  width: 67px;
  height: 67px;
  margin: 31px 0;
  border: 1.5px solid var(--gold);
  transform: rotate(45deg) scale(.74);
}
.installation-cassette-icon::before {
  content: "";
  position: absolute;
  inset: 15px;
  border: 1px solid var(--gold);
}
.installation-cassette-icon i {
  position: absolute;
  width: 16px;
  height: 1px;
  background: var(--gold);
}
.installation-cassette-icon i:nth-child(1) { top: 8px; left: 25px; }
.installation-cassette-icon i:nth-child(2) { right: 8px; top: 32px; transform: rotate(90deg); }
.installation-cassette-icon i:nth-child(3) { bottom: 8px; left: 25px; }
.installation-cassette-icon i:nth-child(4) { left: 8px; top: 32px; transform: rotate(90deg); }

.installation-technical-image img { object-position: 50% center; }
.installation-process-cta {
  margin-top: 42px;
  padding: 28px 31px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  background: #e3e2da;
  border-left: 3px solid var(--gold);
}
.installation-process-cta p { margin: 0; color: #58655f; font-size: 13px; line-height: 1.7; }
.installation-process-cta strong { color: var(--ink); }
.installation-process-cta .text-link { flex: 0 0 auto; }

.installation-budget { background: var(--paper); }
.installation-budget-heading { max-width: 820px!important; }
.installation-budget-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid #cbd1cd;
  border-left: 1px solid #cbd1cd;
}
.installation-budget-grid article {
  min-height: 310px;
  padding: 29px 27px;
  border-right: 1px solid #cbd1cd;
  border-bottom: 1px solid #cbd1cd;
  background: #f6f4ee;
}
.installation-budget-grid span { color: var(--gold); font-size: 9px; font-weight: 800; }
.installation-budget-grid h3 { margin: 78px 0 15px; font-size: 20px; line-height: 1.25; }
.installation-budget-grid p { color: #637069; font-size: 12px; line-height: 1.75; }
.installation-client-image img { object-position: center; }

.installation-related { background: #ecece7; }
.related-service-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.related-service-grid article {
  min-height: 360px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  border: 1px solid #cbd1cd;
  background: #f8f6f0;
}
.related-service-grid article + article { border-left: 0; }
.related-service-grid article.dark-card { background: var(--ink); color: white; }
.related-service-grid > article > span { color: var(--gold); font-size: 9px; font-weight: 800; }
.related-service-grid h3 { margin: 63px 0 16px; font-size: 23px; line-height: 1.2; }
.related-service-grid p { color: #637069; font-size: 13px; line-height: 1.75; }
.related-service-grid .dark-card p { color: #bdc8c3; }
.related-service-grid a {
  margin-top: auto;
  padding-top: 21px;
  border-top: 1px solid #d0d5d2;
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.related-service-grid .dark-card a { border-color: #40534c; }
.related-service-grid a span { color: var(--gold); font-size: 16px; }

@media (max-width: 1000px) {
  .installation-system-grid { grid-template-columns: 1fr 1fr; }
  .installation-system-note { grid-column: 1 / -1; min-height: 300px!important; }
  .installation-system-note h3 { margin-top: 38px; }
  .installation-system-note small { margin-top: 24px; }
  .installation-budget-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .installation-hero .service-hero-photo img { object-position: 66% center; }
  .installation-system-grid,
  .installation-budget-grid,
  .related-service-grid { grid-template-columns: 1fr; }
  .installation-system-grid article + article,
  .related-service-grid article + article { border-left: 1px solid #cbd1cd; border-top: 0; }
  .installation-system-grid article { min-height: 405px; padding: 29px 25px; }
  .installation-system-note { grid-column: auto; min-height: 340px!important; }
  .installation-system-note h3 { margin-top: 35px; }
  .installation-process-cta { align-items: flex-start; flex-direction: column; gap: 22px; padding: 25px 23px; }
  .installation-budget-grid article { min-height: 260px; }
  .installation-budget-grid h3 { margin-top: 52px; }
  .related-service-grid article { min-height: 330px; }
}

/* Página de serviço: limpeza e higienização */
.service-header .nav-bar .button-dark { background: rgba(12,23,20,.88); border-color: rgba(255,255,255,.18); }
.service-hero { position: relative; min-height: 790px; height: 91vh; max-height: 920px; overflow: hidden; background: var(--ink-deep); color: white; }
.service-hero-photo { position: absolute; inset: 0; }
.service-hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.service-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(7,17,14,.95) 0%,rgba(8,19,16,.82) 42%,rgba(8,19,16,.2) 70%,rgba(8,19,16,.08) 100%),linear-gradient(0deg,rgba(7,17,14,.45),transparent 48%); }
.service-hero-content { position: relative; height: 100%; padding-top: 152px; padding-bottom: 58px; display: flex; flex-direction: column; justify-content: space-between; }
.service-breadcrumb { margin: 0; display: flex; gap: 10px; color: #bdc9c3; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.service-breadcrumb a:hover { color: var(--gold-light); }
.service-breadcrumb span { color: var(--gold); }
.service-hero-copy { max-width: 840px; }
.service-hero-copy h1 { margin: 0 0 26px; font-size: clamp(48px,6.1vw,82px); line-height: 1.01; font-weight: 470; }
.service-hero-copy h1 em { display: block; color: var(--gold-light); font-style: normal; }
.service-hero-copy > p:not(.eyebrow) { max-width: 700px; margin-bottom: 30px; color: #d4ded9; font-size: 16px; line-height: 1.75; }
.service-hero-facts { width: 100%; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.26); }
.service-hero-facts div { padding: 19px 30px 0 0; display: flex; gap: 16px; align-items: flex-start; }
.service-hero-facts span { color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .09em; }
.service-hero-facts strong { color: #e5ebe8; font-size: 10px; line-height: 1.5; letter-spacing: .07em; text-transform: uppercase; }

.service-intro { background: var(--paper); }
.service-intro-grid { display: grid; grid-template-columns: 1fr .88fr; gap: 115px; align-items: end; }
.service-intro-title h2 { margin: 0; max-width: 700px; }
.service-intro-copy p { color: #617069; font-size: 14px; line-height: 1.85; }
.large-copy { color: var(--ink)!important; font-family: var(--font-sora); font-size: 19px!important; line-height: 1.65!important; letter-spacing: -.025em; }
.signal-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #cfd4d1; }
.signal-grid article { min-height: 225px; padding: 28px 25px 0 0; border-right: 1px solid #cfd4d1; }
.signal-grid article + article { padding-left: 25px; }
.signal-grid article:last-child { border-right: 0; }
.signal-grid span { color: var(--gold); font-size: 9px; font-weight: 800; }
.signal-grid h3 { margin: 55px 0 12px; font-size: 19px; }
.signal-grid p { color: #66736d; font-size: 12px; line-height: 1.7; }

.clean-depth { padding: 0; background: var(--ink-deep); color: white; }
.clean-depth-grid { width: min(1440px,100%); display: grid; grid-template-columns: 1.05fr .95fr; }
.editorial-image { position: relative; margin: 0; overflow: hidden; background: #cad0cc; }
.editorial-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.image-tall { min-height: 780px; }
.image-tall img { object-position: 57% center; }
.editorial-image figcaption { position: absolute; left: 0; bottom: 0; min-width: 310px; padding: 17px 24px; display: flex; gap: 16px; align-items: center; background: var(--paper); color: var(--ink); font-size: 9px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.editorial-image figcaption span { color: var(--gold); }
.clean-depth-copy { padding: 105px max(48px,calc((100vw - 1180px)/2)); padding-left: 82px; display: flex; flex-direction: column; justify-content: center; }
.clean-depth-copy h2 { font-size: clamp(39px,4.2vw,59px); }
.light-copy { color: white!important; }
.clean-depth-copy > p:not(.eyebrow) { color: #bac7c1; font-size: 14px; line-height: 1.8; }
.scope-list { margin-top: 23px; border-top: 1px solid #405149; }
.scope-list div { padding: 17px 0; display: grid; grid-template-columns: 34px 1fr; gap: 10px; border-bottom: 1px solid #405149; }
.scope-list span { color: var(--gold-light); font-size: 9px; font-weight: 800; }
.scope-list p { margin: 0; color: #b8c4be; font-size: 12px; line-height: 1.65; }
.scope-list strong { color: white; }

.service-process { background: var(--cream); }
.service-step-grid { display: grid; grid-template-columns: repeat(4,1fr); border-left: 1px solid #c9cfcb; border-top: 1px solid #c9cfcb; }
.service-step-grid article { min-height: 310px; padding: 31px 27px; border-right: 1px solid #c9cfcb; border-bottom: 1px solid #c9cfcb; background: rgba(255,255,255,.28); }
.service-step-grid span { color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.service-step-grid h3 { margin: 88px 0 16px; font-size: 20px; line-height: 1.25; }
.service-step-grid p { color: #637069; font-size: 12px; line-height: 1.75; }

.service-choice { background: #e8e9e4; }
.choice-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.choice-grid article { min-height: 435px; padding: 34px; display: flex; flex-direction: column; border: 1px solid #cbd1cd; background: #f6f5ef; }
.choice-grid article + article { border-left: 0; }
.choice-grid article.featured { border-top: 4px solid var(--gold); padding-top: 31px; }
.choice-grid article.dark-card { background: var(--ink); color: white; }
.choice-grid > article > span { color: #89938e; font-size: 9px; font-weight: 800; }
.choice-icon { position: relative; width: 63px; height: 63px; margin: 32px 0; color: var(--gold); }
.choice-grid h3 { margin-bottom: 16px; font-size: 24px; line-height: 1.2; }
.choice-grid p { color: #637069; font-size: 13px; line-height: 1.75; }
.choice-grid .dark-card p { color: #bdc8c3; }
.choice-grid a { margin-top: auto; padding-top: 22px; border-top: 1px solid #d0d5d2; display: flex; justify-content: space-between; font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.choice-grid .dark-card a { border-color: #40534c; }
.choice-grid a span { color: var(--gold); font-size: 16px; }

.service-context { background: var(--paper); }
.context-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 95px; align-items: center; }
.context-copy h2 { font-size: clamp(38px,4vw,56px); }
.context-copy > p:not(.eyebrow) { color: #637069; font-size: 14px; line-height: 1.8; }
.context-facts { margin: 31px 0; border-top: 1px solid #d1d6d3; }
.context-facts div { padding: 15px 0; display: grid; grid-template-columns: 35px 1fr; border-bottom: 1px solid #d1d6d3; }
.context-facts span { color: var(--gold); font-size: 9px; font-weight: 800; }
.context-facts p { margin: 0; font-size: 12px; font-weight: 700; }
.image-client { min-height: 650px; }
.image-client img { object-position: center; }
.service-local { padding-top: 95px; padding-bottom: 95px; }

@media (max-width: 1000px) {
  .service-hero { min-height: 760px; }
  .service-intro-grid,.clean-depth-grid,.context-grid { grid-template-columns: 1fr; }
  .service-intro-grid { gap: 35px; }
  .signal-grid,.service-step-grid { grid-template-columns: repeat(2,1fr); }
  .clean-depth-grid { width: 100%; }
  .image-tall { min-height: 600px; }
  .clean-depth-copy { padding: 90px 48px; }
  .context-grid { gap: 55px; }
  .image-client { min-height: 570px; }
}

@media (max-width: 720px) {
  .service-hero { height: auto; min-height: 785px; }
  .service-hero-photo img { object-position: 74% top; }
  .service-hero-shade { background: linear-gradient(90deg,rgba(7,17,14,.95),rgba(7,17,14,.62)),linear-gradient(0deg,rgba(7,17,14,.5),transparent); }
  .service-hero-content { min-height: 785px; padding-top: 130px; padding-bottom: 35px; }
  .service-hero-copy h1 { font-size: 44px; }
  .service-hero-copy > p:not(.eyebrow) { font-size: 14px; }
  .service-breadcrumb { margin-bottom: 48px; }
  .service-hero-facts { margin-top: 48px; grid-template-columns: 1fr; }
  .service-hero-facts div { padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .service-intro-grid { gap: 28px; }
  .signal-grid,.service-step-grid,.choice-grid { grid-template-columns: 1fr; }
  .signal-grid article { min-height: 190px; padding: 25px 0; border-right: 0; border-bottom: 1px solid #cfd4d1; }
  .signal-grid article + article { padding-left: 0; }
  .signal-grid h3 { margin-top: 30px; }
  .image-tall { min-height: 515px; }
  .clean-depth-copy { padding: 78px 17px; }
  .clean-depth-copy h2 { font-size: 38px; }
  .editorial-image figcaption { min-width: 0; right: 0; font-size: 8px; }
  .service-step-grid article { min-height: 260px; }
  .service-step-grid h3 { margin-top: 55px; }
  .choice-grid article { min-height: 385px; }
  .choice-grid article + article { border-left: 1px solid #cbd1cd; border-top: 0; }
  .image-client { min-height: 470px; }
  .image-client img { object-position: 58% center; }
}
