:root{
  color-scheme:dark;
  --bg:#08090b;--bg-elev:#101215;--panel:#121417;--text:#f4f3ef;--muted:#a6a7aa;--line:#2a2d31;
  --steel:#d7d8d9;--accent:#ef171f;--accent-2:#ff2b32;--shadow:0 22px 70px rgba(0,0,0,.34);
  --display:"Arial Narrow","Roboto Condensed","Segoe UI Condensed",Impact,sans-serif;
  --body:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --max:1500px;--header:86px;
}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#efeee9;--bg-elev:#f7f6f2;--panel:#fff;--text:#111214;--muted:#62656a;--line:#c9c9c5;
  --steel:#25272b;--shadow:0 20px 60px rgba(30,30,30,.11);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);line-height:1.55;overflow-x:hidden}body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{display:block;max-width:100%}.skip-link{position:fixed;left:1rem;top:-100px;z-index:9999;background:var(--accent);color:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}
::selection{background:var(--accent);color:#fff}.section-pad{width:min(var(--max),calc(100% - 48px));margin-inline:auto;padding:110px 0}.section-grid{width:min(var(--max),100%);margin-inline:auto}.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font:800 .76rem/1 var(--body);color:var(--accent);margin:0 0 20px}.eyebrow span{color:var(--muted);margin-right:12px}.section-head{display:grid;grid-template-columns:1fr minmax(280px,560px);gap:80px;align-items:end;margin-bottom:45px}.section-head h2,.company-copy h2,.project-intro h2,.contact-copy h2,.quote-panel h2,.map-head h2{font:900 clamp(2.3rem,5vw,5.8rem)/.9 var(--display);text-transform:uppercase;letter-spacing:-.045em;margin:0}.section-head>p,.project-intro>p{color:var(--muted);max-width:60ch;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:0 22px;border:1px solid var(--line);font:900 .82rem/1 var(--display);text-transform:uppercase;letter-spacing:.05em;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-2);border-color:var(--accent-2)}.btn-ghost{background:rgba(0,0,0,.22);border-color:rgba(255,255,255,.35);color:#fff}.text-link{font:800 .8rem var(--display);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--accent);padding-bottom:4px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:none}
.site-header{position:fixed;z-index:1000;top:0;left:0;right:0;height:var(--header);display:flex;align-items:center;gap:38px;padding:0 max(24px,calc((100vw - var(--max))/2));background:color-mix(in srgb,var(--bg) 88%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 74%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;margin-right:auto}.brand img{width:178px;height:auto}.desktop-nav{display:flex;align-items:center;gap:28px}.desktop-nav a{position:relative;font:800 .78rem var(--display);text-transform:uppercase;letter-spacing:.06em}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:2px;background:var(--accent);transition:right .25s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:10px}.theme-toggle,.menu-toggle{width:50px;height:48px;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:8px;font-size:1.05rem}.theme-toggle .moon{opacity:.42}.theme-toggle .sun{opacity:1}html[data-theme="light"] .theme-toggle .sun{opacity:.42}html[data-theme="light"] .theme-toggle .moon{opacity:1}.menu-toggle{display:none;position:relative}.menu-toggle span{position:absolute;width:22px;height:2px;background:currentColor;left:13px;top:19px;transition:.25s}.menu-toggle span+span{top:27px}.menu-toggle[aria-expanded="true"] span{top:23px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] span+span{transform:rotate(-45deg)}.mobile-menu{display:none}
.hero{position:relative;min-height:100svh;padding:calc(var(--header) + 80px) max(28px,calc((100vw - var(--max))/2)) 70px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.46fr);align-items:center;overflow:hidden;background:#08090b;color:#fff}.hero-visual{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,6,8,.98) 4%,rgba(5,6,8,.84) 34%,rgba(5,6,8,.35) 64%,rgba(5,6,8,.68) 100%),url('../img/hero-ai.webp');background-size:cover;background-position:70% center;filter:saturate(.88) contrast(1.08)}html[data-theme="light"] .hero-visual{background-image:linear-gradient(90deg,rgba(240,239,235,.98) 3%,rgba(240,239,235,.9) 37%,rgba(240,239,235,.28) 69%,rgba(240,239,235,.62) 100%),url('../img/hero-ai.webp');filter:saturate(.72) contrast(1.03);opacity:.92}html[data-theme="light"] .hero{background:#efeee9;color:#111214}.hero-noise{position:absolute;inset:0;opacity:.19;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(90deg,#000 0%,transparent 82%)}html[data-theme="light"] .hero-noise{opacity:.17;background-image:linear-gradient(rgba(0,0,0,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.08) 1px,transparent 1px)}.hero-content{position:relative;z-index:2;max-width:850px}.hero h1{font:900 clamp(3.5rem,7.8vw,8.6rem)/.78 var(--display);letter-spacing:-.055em;text-transform:uppercase;margin:0;max-width:10ch}.hero h1 strong{color:var(--accent);font-weight:900}.hero-materials{font:900 clamp(1rem,1.5vw,1.35rem) var(--display);text-transform:uppercase;letter-spacing:.1em;margin:34px 0}.hero-materials i{color:var(--accent);font-style:normal;margin:0 14px}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}.hero-rail{position:relative;z-index:2;align-self:center;border-left:1px solid rgba(255,255,255,.23);padding-left:34px}.hero-rail div{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.18)}.hero-rail b{display:block;font:900 1.45rem var(--display);text-transform:uppercase;letter-spacing:.04em}.hero-rail span{display:block;color:#c8c9cb;max-width:28ch;font-size:.9rem;margin-top:4px}html[data-theme="light"] .hero-rail{border-color:rgba(0,0,0,.25)}html[data-theme="light"] .hero-rail div{border-color:rgba(0,0,0,.2)}html[data-theme="light"] .hero-rail span{color:#3e4146}.scroll-cue{position:absolute;z-index:2;bottom:28px;left:50%;transform:translateX(-50%);font:700 .65rem var(--display);letter-spacing:.12em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:7px;opacity:.8}.scroll-cue span{width:16px;height:26px;border:1px solid currentColor;border-radius:16px;position:relative}.scroll-cue span:after{content:"";position:absolute;width:2px;height:5px;background:currentColor;left:6px;top:5px;animation:wheel 1.5s infinite}@keyframes wheel{0%{transform:translateY(0);opacity:1}100%{transform:translateY(9px);opacity:0}}
.company{display:grid;grid-template-columns:minmax(340px,.82fr) 1.18fr;background:var(--bg-elev);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.company-image{min-height:660px;position:relative;overflow:hidden}.company-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(1.06)}html[data-theme="light"] .company-image img{filter:saturate(.7) contrast(.98)}.ai-badge{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.78);color:#fff;padding:8px 10px;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.company-copy{padding:100px clamp(36px,7vw,120px);display:flex;flex-direction:column;justify-content:center}.company-copy>p:not(.kicker){color:var(--muted);font-size:1.05rem;max-width:68ch}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--line)}.principles article{padding:25px 22px 0 0;border-right:1px solid var(--line)}.principles article+article{padding-left:22px}.principles article:last-child{border-right:0}.principles span{font:900 2.2rem var(--display);color:var(--accent)}.principles h3{font:900 1.15rem var(--display);text-transform:uppercase;margin:8px 0}.principles p{font-size:.83rem;color:var(--muted);margin:0}
.services{border-bottom:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{position:relative;min-height:350px;background:#111;overflow:hidden;color:#fff}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s;filter:saturate(.65) contrast(1.08)}.service-card:hover img{transform:scale(1.045);filter:saturate(.92) contrast(1.05)}.service-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.84))}.service-index{position:absolute;top:18px;left:18px;font:900 .8rem var(--display);letter-spacing:.1em;color:#fff}.service-copy{position:absolute;left:20px;right:40px;bottom:20px}.service-copy h3{font:900 clamp(1.3rem,2vw,2rem)/1 var(--display);text-transform:uppercase;margin:0 0 8px}.service-copy p{font-size:.8rem;line-height:1.35;color:#d9d9d9;margin:0;max-width:35ch;opacity:0;transform:translateY(8px);transition:.25s}.service-card:hover .service-copy p{opacity:1;transform:none}.plus{position:absolute;right:18px;bottom:17px;color:var(--accent);font:300 2rem/1 var(--body)}.media-note{color:var(--muted);font-size:.73rem;margin:16px 0 0;text-align:right}
.projects{border-bottom:1px solid var(--line);overflow:hidden}.project-intro{padding-bottom:48px}.project-intro>p:last-child{margin-top:24px}.project-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(320px,1fr);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.project-card{margin:0;position:relative;min-height:520px;border-right:1px solid var(--line);scroll-snap-align:start;overflow:hidden}.project-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.78);transition:transform .5s}.project-card:hover img{transform:scale(1.025)}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.82))}.project-card figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;align-items:end;color:#fff;text-transform:uppercase}.project-card figcaption span{font:900 1.5rem var(--display)}.project-card figcaption small{font-size:.62rem;letter-spacing:.12em;color:#d7d7d7}
.process{border-bottom:1px solid var(--line)}.process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:var(--line);gap:1px}.process-list li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:20px;padding:32px 28px;background:var(--bg-elev);min-height:220px}.process-list li:after{content:"→";position:absolute;right:-12px;top:50%;z-index:3;transform:translateY(-50%);color:var(--accent);font-size:1.6rem}.process-list li:last-child:after{display:none}.process-list b{font:900 3.7rem/.9 var(--display);color:transparent;-webkit-text-stroke:1px var(--muted);opacity:.55}.process-list h3{font:900 1.25rem var(--display);text-transform:uppercase;margin:0 0 8px}.process-list p{font-size:.82rem;color:var(--muted);margin:0}
.contact-zone{display:grid;grid-template-columns:.65fr 1.1fr 1.1fr;border-bottom:1px solid var(--line);background:var(--bg-elev)}.contact-copy,.quote-panel,.map-panel{padding:80px clamp(24px,3.5vw,58px);border-right:1px solid var(--line)}.map-panel{border-right:0}.contact-copy h2 strong{color:var(--accent)}.contact-list{display:flex;flex-direction:column;gap:18px;margin-top:44px}.contact-list a,.contact-list address{font-style:normal;color:var(--muted);font-size:.9rem}.contact-list span{display:block;color:var(--text);font:900 .72rem var(--display);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.quote-panel h2{font-size:clamp(2.3rem,3.6vw,4.3rem);margin-bottom:30px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:block;margin-bottom:10px}.field>span{display:block;font:800 .69rem var(--display);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--bg);color:var(--text);padding:14px 15px;outline:none;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:135px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.upload-field{display:flex;align-items:center;min-height:80px;border:1px dashed var(--line);padding:16px;cursor:pointer;margin:8px 0 14px}.upload-field input{max-width:140px}.upload-field span{display:flex;flex-direction:column}.upload-field b{font:900 .8rem var(--display);text-transform:uppercase}.upload-field small{color:var(--muted);font-size:.7rem}.check-field{display:flex;align-items:start;gap:10px;font-size:.78rem;color:var(--muted);margin:12px 0}.check-field input{margin-top:3px;accent-color:var(--accent)}.check-field a{text-decoration:underline;color:var(--text)}.captcha-zone{margin:16px 0}.captcha-zone>small{display:block;color:var(--muted);font-size:.68rem;margin-top:7px}.simple-captcha{display:grid;grid-template-columns:1fr minmax(110px,150px);align-items:center;border:1px solid var(--line);background:var(--bg)}.simple-captcha strong{padding:14px 15px;font:900 .82rem var(--display);text-transform:uppercase;letter-spacing:.05em}.simple-captcha input{border:0!important;border-left:1px solid var(--line)!important;margin:0;box-shadow:none!important}@media(max-width:520px){.simple-captcha{grid-template-columns:1fr}.simple-captcha input{border-left:0!important;border-top:1px solid var(--line)!important}}.submit-btn{width:100%}.form-status{min-height:1.4em;font-size:.8rem;margin:12px 0 0}.form-status.success{color:#3ecf78}.form-status.error{color:#ff6d72}.hp-field{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.map-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.map-head h2{font-size:clamp(2.3rem,3.6vw,4.3rem)}#map{height:520px;border:1px solid var(--line);background:#d8d8d3;z-index:1}.leaflet-container{font-family:var(--body)}html[data-theme="dark"] .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) saturate(.62) brightness(.78) contrast(1.14)}.abd-marker{width:28px;height:28px;background:var(--accent);border:4px solid #fff;box-shadow:0 4px 20px rgba(0,0,0,.35);transform:rotate(45deg);border-radius:50% 50% 50% 0}.map-note{font-size:.7rem;color:var(--muted);margin:10px 0 0}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#111;color:#fff;border-radius:0}.leaflet-popup-content b{font-family:var(--display);text-transform:uppercase}.leaflet-control-zoom a{border-radius:0!important}.whatsapp{position:fixed;z-index:900;right:22px;bottom:22px;display:flex;align-items:center;gap:9px;background:#20c568;color:#fff;border-radius:999px;padding:12px 16px;box-shadow:0 14px 36px rgba(0,0,0,.28);font:800 .72rem var(--display);text-transform:uppercase;letter-spacing:.06em}.whatsapp svg{width:23px;height:23px;fill:currentColor}
.site-footer{width:min(var(--max),calc(100% - 48px));margin-inline:auto;min-height:180px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:40px}.footer-brand img{width:150px;height:auto}.site-footer p{font:800 .74rem var(--display);text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.site-footer>div{display:flex;gap:22px;font-size:.75rem;text-transform:uppercase}.site-footer small{grid-column:1/-1;border-top:1px solid var(--line);padding:18px 0;color:var(--muted);font-size:.68rem}
@media(max-width:1180px){.desktop-nav{display:none}.menu-toggle{display:block}.header-quote{display:none}.mobile-menu{position:fixed;display:flex;flex-direction:column;gap:0;top:var(--header);left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:18px 24px 26px;transform:translateY(-120%);opacity:0;pointer-events:none;transition:.28s}.mobile-menu.open{transform:none;opacity:1;pointer-events:auto}.mobile-menu>a:not(.btn){font:900 1.5rem var(--display);text-transform:uppercase;padding:14px 0;border-bottom:1px solid var(--line)}.mobile-menu .btn{margin-top:18px}.hero{grid-template-columns:1fr}.hero-content{max-width:780px}.hero-rail{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.process-list{grid-template-columns:repeat(2,1fr)}.process-list li:nth-child(2):after{display:none}.contact-zone{grid-template-columns:1fr 1fr}.contact-copy{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}.quote-panel{border-right:1px solid var(--line)}}
@media(max-width:760px){:root{--header:72px}.site-header{padding:0 16px}.brand img{width:132px}.theme-toggle,.menu-toggle{width:44px;height:42px}.section-pad{width:min(100% - 30px,var(--max));padding:76px 0}.section-head{grid-template-columns:1fr;gap:22px}.hero{padding:calc(var(--header) + 60px) 18px 70px;min-height:92svh}.hero-visual{background-position:62% center;background-image:linear-gradient(90deg,rgba(5,6,8,.94),rgba(5,6,8,.55)),url('../img/hero-ai.webp')}html[data-theme="light"] .hero-visual{background-image:linear-gradient(90deg,rgba(240,239,235,.96),rgba(240,239,235,.52)),url('../img/hero-ai.webp')}.hero h1{font-size:clamp(3.3rem,16vw,5.9rem);max-width:9ch}.hero-materials{margin:24px 0}.hero-cta{flex-direction:column;align-items:stretch;max-width:340px}.scroll-cue{display:none}.company{grid-template-columns:1fr}.company-image{min-height:420px}.company-copy{padding:65px 20px}.principles{grid-template-columns:1fr}.principles article,.principles article+article{padding:20px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:1fr}.service-card{min-height:310px}.service-copy p{opacity:1;transform:none}.media-note{text-align:left}.project-track{grid-auto-columns:84vw}.project-card{min-height:420px}.process-list{grid-template-columns:1fr}.process-list li:after{display:none}.contact-zone{grid-template-columns:1fr}.contact-copy,.quote-panel,.map-panel{grid-column:auto;border-right:0;border-bottom:1px solid var(--line);padding:65px 20px}.field-row{grid-template-columns:1fr}.map-head{align-items:start;flex-direction:column}.map-head .text-link{margin-top:2px}#map{height:420px}.whatsapp{right:14px;bottom:14px;padding:12px}.whatsapp span{display:none}.site-footer{grid-template-columns:1fr;gap:16px;padding:44px 0}.site-footer small{grid-column:auto}.site-footer>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-cue span:after{animation:none}.service-card img,.project-card img,.btn{transition:none}}

/* ===== Ajuste secção Empresa — tipografia mais equilibrada ===== */
.company{grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);align-items:stretch}
.company-image{min-height:560px}
.company-copy{padding:72px clamp(34px,5vw,84px);justify-content:center;min-width:0}
.company-copy h2{font-size:clamp(2.5rem,3.25vw,3.55rem);line-height:.96;letter-spacing:-.035em;max-width:13ch;text-wrap:balance}
.company-copy>p:not(.kicker){font-size:1rem;line-height:1.7;max-width:58ch;margin-top:24px}
.principles{margin-top:38px;gap:0}
.principles article{padding-top:22px}
.principles span{font-size:1.65rem}
.principles h3{font-size:1rem}
.principles p{font-size:.8rem;line-height:1.55}

@media(max-width:1180px){
  .company{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}
  .company-image{min-height:520px}
  .company-copy{padding:60px 38px}
  .company-copy h2{font-size:clamp(2.35rem,4vw,3rem);max-width:14ch}
  .principles{grid-template-columns:1fr;}
  .principles article,.principles article+article{padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}
  .principles article:last-child{border-bottom:0}
}

@media(max-width:760px){
  .company{grid-template-columns:1fr}
  .company-image{min-height:330px;max-height:430px}
  .company-copy{padding:52px 20px 58px}
  .company-copy h2{font-size:clamp(2.15rem,10vw,2.65rem);line-height:1;max-width:15ch}
  .company-copy>p:not(.kicker){font-size:.96rem;line-height:1.65;margin-top:20px}
  .principles{margin-top:30px}
  .principles span{font-size:1.4rem}
}
\n\n/* ===== Ajuste HERO 01 — escala e alinhamento ===== */
.hero{
  min-height:clamp(720px,100svh,980px);
  padding-top:calc(var(--header) + 54px);
  padding-bottom:64px;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.42fr);
  column-gap:clamp(36px,5vw,90px);
}
.hero-content{max-width:760px;min-width:0}
.hero .eyebrow{font-size:.72rem;line-height:1.2;margin-bottom:18px;letter-spacing:.16em}
.hero h1{
  font-size:clamp(3rem,5.35vw,5.65rem);
  line-height:.9;
  letter-spacing:-.045em;
  max-width:11.8ch;
  text-wrap:balance;
}
.hero h1 strong{display:inline;font-weight:900}
.hero-materials{font-size:clamp(.95rem,1.15vw,1.18rem);margin:28px 0 30px}
.hero-rail{padding-left:28px;max-width:330px}
.hero-rail div{padding:18px 0}
.hero-rail b{font-size:1.18rem}
.hero-rail span{font-size:.84rem;line-height:1.5}

@media(max-width:1180px){
  .hero{min-height:820px;padding-top:calc(var(--header) + 48px);padding-bottom:60px;align-items:center}
  .hero-content{max-width:700px}
  .hero h1{font-size:clamp(3rem,7vw,5.2rem);line-height:.91;max-width:11.5ch}
}

@media(max-width:760px){
  .hero{min-height:680px;padding:calc(var(--header) + 38px) 18px 54px;align-items:center}
  .hero .eyebrow{font-size:.66rem;margin-bottom:15px;letter-spacing:.13em}
  .hero h1{font-size:clamp(2.6rem,11.8vw,4rem);line-height:.94;letter-spacing:-.035em;max-width:11.5ch}
  .hero-materials{font-size:.9rem;line-height:1.35;margin:22px 0 24px}
  .hero-materials i{margin:0 8px}
  .hero-cta{max-width:310px}
}

@media(max-width:390px){
  .hero{min-height:640px}
  .hero h1{font-size:clamp(2.35rem,11.2vw,3.25rem);max-width:12ch}
}

/* ===== Ajuste CTA final / Contactos — tipografia compacta ===== */
.contact-zone{
  grid-template-columns:minmax(285px,.82fr) minmax(390px,1.12fr) minmax(390px,1.12fr);
}
.contact-copy{
  min-width:0;
  padding-top:72px;
  padding-bottom:72px;
}
.contact-copy .kicker{
  margin-bottom:16px;
}
.contact-copy h2{
  font-size:clamp(2.15rem,2.75vw,3.25rem);
  line-height:.96;
  letter-spacing:-.032em;
  max-width:14ch;
  text-wrap:balance;
}
.contact-copy h2 strong{
  font-weight:900;
}
.contact-list{
  margin-top:34px;
}

@media(max-width:1180px){
  .contact-zone{grid-template-columns:1fr 1fr}
  .contact-copy{grid-column:1/-1;padding:56px 38px}
  .contact-copy h2{font-size:clamp(2.1rem,4vw,2.8rem);max-width:19ch}
  .contact-list{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:16px 28px}
}

@media(max-width:760px){
  .contact-zone{grid-template-columns:1fr}
  .contact-copy{grid-column:auto;padding:48px 20px 52px}
  .contact-copy .kicker{margin-bottom:13px}
  .contact-copy h2{font-size:clamp(1.95rem,8.5vw,2.35rem);line-height:1;max-width:16ch;letter-spacing:-.025em}
  .contact-list{display:flex;grid-template-columns:none;margin-top:26px;gap:15px}
}

@media(max-width:390px){
  .contact-copy h2{font-size:1.9rem;max-width:15ch}
}

/* ===== Ajuste títulos Orçamento + Localização — escala equilibrada ===== */
.quote-panel .kicker,
.map-panel .kicker{
  margin-bottom:14px;
}

.quote-panel h2,
.map-head h2{
  font-size:clamp(2rem,2.45vw,3rem);
  line-height:.98;
  letter-spacing:-.03em;
  max-width:15ch;
  text-wrap:balance;
}

.quote-panel h2{
  margin-bottom:28px;
}

.map-head{
  align-items:center;
  gap:24px;
}

@media(max-width:1180px){
  .quote-panel h2,
  .map-head h2{
    font-size:clamp(2rem,3.35vw,2.65rem);
    max-width:18ch;
  }
}

@media(max-width:760px){
  .quote-panel .kicker,
  .map-panel .kicker{
    margin-bottom:12px;
  }

  .quote-panel h2,
  .map-head h2{
    font-size:clamp(1.9rem,8vw,2.3rem);
    line-height:1;
    letter-spacing:-.025em;
    max-width:16ch;
  }

  .quote-panel h2{
    margin-bottom:24px;
  }

  .map-head{
    gap:12px;
  }
}

@media(max-width:390px){
  .quote-panel h2,
  .map-head h2{
    font-size:1.85rem;
  }
}
