/* Continuous dark theme. Source logos and photographs remain original assets. */
:root{--black:#0a0a0a;--paper:#f2f0eb;--ink:#f2f0eb;--gold:#eca435;--muted:#bdb6aa;--line:#37332c;--dark-surface:#111112;--dark-border:#34312b;color-scheme:dark}
body{background:var(--black);color:var(--paper)}
.header{background:var(--black);color:var(--paper)}
.header .desktop-nav a:hover,.footer nav a:hover,.specialties a:hover{color:var(--gold)}
.header .button{background:var(--gold);color:var(--black);border-color:var(--gold)}
.header .button:hover{background:#f4b64e;color:var(--black)}
.header .button svg,.header .button:hover svg{color:inherit}
.header .menu-toggle{color:var(--paper)}
.header .mobile-nav{background:var(--black);color:var(--paper)}
.header .mobile-nav a{border-color:var(--dark-border)}
.header .mobile-nav span{color:var(--gold)}
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:640px;overflow:hidden;background:var(--black);color:var(--paper)}
.hero-inner{position:static;display:flex;align-items:center;min-height:640px;padding-top:72px;padding-bottom:72px}
.hero-copy{position:relative;z-index:1;width:100%;max-width:850px;padding:0}
.hero h1{font-size:clamp(48px,5.2vw,80px);line-height:1.06;letter-spacing:-3px}
.hero p{font-size:24px;line-height:1.55;max-width:680px;color:#cdc7bd;margin-top:27px;letter-spacing:-.4px}
.hero-actions{margin-top:40px;gap:44px}
.hero .text-link,.hero .text-link svg{color:var(--paper)}
.hero-media{position:absolute;inset:0;z-index:auto;width:100%;height:100%;margin:0;clip-path:none;background:transparent;pointer-events:none}
.hero-media .hero-image{z-index:-2;object-position:center 60%;transform:none;transform-origin:center;opacity:1}
.hero:after{content:'';display:block;position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,10,10,.85),rgba(10,10,10,.35) 48%,rgba(10,10,10,.04) 80%),linear-gradient(0deg,#0a0a0a,transparent 25%)}
.hero-media .hero-caption{left:auto;right:var(--gutter);bottom:20px;z-index:2;font-size:10px;color:#e6e1d9}
.specialties{background:var(--black);color:var(--paper)}
.specialties-inner:before{background:var(--dark-border)}
.specialties a+a{border-color:var(--dark-border)}
.specialties svg{color:var(--gold)}
.about{background:var(--dark-surface);color:var(--paper)}
.about-copy{border-color:#775527}
.about-copy p+p{color:#bdb6ab}
.solutions{background:var(--black)}
.artists{background:#141311;border-color:#2b2823;border-bottom:1px solid #2b2823}
.portfolio{background:#121212}
.municipalities{background:var(--black);color:var(--paper)}
.municipalities .section-label{color:#bdb6aa}
.municipalities-heading>p{color:#bdb6aa}
.municipalities-grid{background:transparent;border-color:var(--dark-border)}
.municipality{background:transparent;border-color:var(--dark-border)}
.municipality figcaption,.municipality--dark figcaption{color:#cbc5ba}
.municipality img{filter:grayscale(1) invert(1)}
.municipality--dark{background:transparent}
.municipality--dark img{filter:none}
.contact{background:var(--dark-surface);color:var(--paper);border-top:1px solid #5f4928}
.contact-content{border-color:#514332}
.contact .button-black{background:var(--gold);color:var(--black)}
.contact .button-black:hover{background:#f4b64e}
.contact-content>p{color:#d2cbc0}
.contact-tip,.whatsapp-placeholder>small{color:#bdb6aa}
.contact a:focus-visible{outline-color:var(--gold)}
.footer{background:var(--black);color:var(--paper)}
.footer .social-link span{color:var(--gold)}
.footer-bottom{color:#aaa397}
.footer-bottom:before{background:var(--dark-border)}
@media(min-width:1600px){.hero,.hero-inner{min-height:680px}}
@media(max-width:1200px){.hero,.hero-inner{min-height:600px}.hero p{font-size:21px;max-width:590px}.hero h1{letter-spacing:-2.4px}.hero .hero-actions{margin-top:34px}}
@media(max-width:850px){.hero,.hero-inner{min-height:610px}.hero h1{font-size:58px;letter-spacing:-2px}.hero-copy{max-width:650px}.hero p{font-size:20px;max-width:530px}.hero-media .hero-image{object-position:66% center}.hero:after{background:linear-gradient(90deg,rgba(10,10,10,.88),rgba(10,10,10,.35)),linear-gradient(0deg,#0a0a0a,transparent 28%)}}
@media(max-width:600px){.hero,.hero-inner{min-height:620px}.hero-inner{padding-top:48px;padding-bottom:100px}.hero h1{font-size:clamp(28px,9.1vw,42px);line-height:1.1;letter-spacing:-1.1px}.hero p{font-size:18px;line-height:1.65;margin-top:24px;max-width:360px;letter-spacing:-.2px}.hero .hero-actions{margin-top:30px;gap:22px}.hero-media .hero-image{object-position:65% center}.hero-media .hero-caption{bottom:16px;font-size:8px}.specialties a+a{border-top-color:var(--dark-border)}}

/* Company biography: deeper contrast and display type, with original copy and structure. */
.biography{background:#080808;color:var(--paper);border-top:1px solid #24211c;border-bottom:1px solid #24211c}
.biography-inner{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:7%;align-items:start}
.biography .section-label{color:var(--gold);font-size:12px;font-weight:750;letter-spacing:.16em;line-height:1.5;margin-bottom:22px}
.biography .section-label>span{width:28px;height:2px}
.biography h2{font:400 clamp(54px,5.5vw,80px)/1.02 var(--display);letter-spacing:.005em;text-transform:uppercase}
.biography h2 em{display:block;max-width:10ch;margin-top:8px}
.biography-location{font-size:12px;line-height:1.7;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:26px}
.biography-copy{min-width:0;padding-top:2px}
.biography-copy p{font-size:17px;line-height:1.85;color:#c7c1b7}
.biography-copy .biography-lead{font-size:22px;line-height:1.55;font-weight:550;color:var(--paper)}
.biography-copy p+p{margin-top:24px}
.biography-links{display:flex;flex-wrap:wrap;gap:14px 32px;margin-top:30px;padding-top:22px;border-top:1px solid #383025}
.biography-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;color:var(--gold);font-size:14px;font-weight:750}
.biography-links a:hover{text-decoration:underline;text-underline-offset:5px}
.biography-links a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.biography-links span{font-size:24px;font-weight:400;line-height:1}
@media(max-width:1000px){.biography-inner{gap:6%}.biography h2{font-size:clamp(48px,5.5vw,60px)}.biography-copy .biography-lead{font-size:20px}.biography-copy p{font-size:16px}}
@media(max-width:850px){.biography-inner{grid-template-columns:1fr;gap:36px}.biography h2{font-size:clamp(52px,7vw,64px)}.biography-location{margin-top:22px}.biography-copy{max-width:730px;padding-top:0}}
@media(max-width:600px){.biography-inner{gap:30px}.biography .section-label{font-size:10px;margin-bottom:20px}.biography h2{font-size:clamp(38px,11vw,54px);line-height:1.03}.biography h2 em{margin-top:6px}.biography-location{font-size:10px;letter-spacing:.1em;margin-top:20px}.biography-copy .biography-lead{font-size:19px;line-height:1.65}.biography-copy p{font-size:15px;line-height:1.8}.biography-copy p+p{margin-top:20px}.biography-links{margin-top:26px;padding-top:20px;gap:8px 24px}.biography-links a{font-size:13px}}
