:root{--red:#ed2124;--button-red:#cc191c;--ink:#0a0a0a;--paper:#f6f5f2;--muted:#606060;--line:#d7d6d3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;background:var(--ink);font-family:Montserrat,Arial,sans-serif;color:var(--ink);line-height:1.65;font-size:15px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.05em}h2{font-size:clamp(34px,4vw,58px);font-weight:700;margin-bottom:0}h3{font-size:24px;font-weight:600}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #1579db;outline-offset:5px}img{max-width:100%;display:block}::selection{background:var(--red);color:#fff}.container{width:88%;max-width:1380px;margin-inline:auto}.section{padding-block:104px}.red{color:var(--red)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.16em;margin-bottom:24px;line-height:1.5}.dark-label{color:#565656}.small-note{font-size:11px;color:#666}.skip{position:fixed;left:20px;top:-100px;padding:16px;background:#fff;color:#000;z-index:100}.skip:focus{top:12px}.header{height:112px;background:#fff;color:var(--ink);display:flex;align-items:center;gap:44px;padding:0 6%;border-bottom:1px solid #e5e5e5;position:relative;z-index:10}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:164px;height:auto;object-fit:contain}.header nav{display:flex;align-items:center;gap:30px;margin-left:auto}.header nav a{font-size:11px;font-weight:500;padding-block:12px;position:relative}.header nav a:after{content:"";position:absolute;bottom:5px;left:0;width:0;height:2px;background:var(--red);transition:width .2s}.header nav a:hover:after{width:100%}.header-cta{display:flex;align-items:center;gap:30px;font-size:12px;border-bottom:1px solid var(--red);padding:10px 0}.header-cta span{color:var(--red);font-size:20px}.menu-toggle{display:none}.hero{color:#fff;min-height:650px;height:calc(100svh - 94px);max-height:920px;position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-image{object-position:center}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.42) 56%,rgba(0,0,0,.12)),linear-gradient(0deg,rgba(0,0,0,.8),transparent 55%)}.hero-main{padding-top:30px;padding-bottom:90px}.hero .eyebrow{display:flex;align-items:center;gap:15px;letter-spacing:.17em}.red-line{height:2px;width:28px;background:var(--red);display:inline-block}.hero h1{font-size:clamp(62px,7.8vw,122px);letter-spacing:-.065em;line-height:.99;font-weight:800;margin-bottom:38px}.hero h1 span{color:var(--red)}.hero-bottom{display:flex;gap:58px;align-items:center}.hero-bottom p{font-size:15px;color:#ddd;margin:0;line-height:1.8}.button{border-radius:12px;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--button-red);color:#fff;border:0;padding:17px 24px;min-height:56px;font-size:12px;font-weight:600;transition:background .2s}.button>span{font-size:22px;line-height:1}.button:hover{background:#a91316}.hero-foot{display:flex;align-items:center;gap:32px;position:absolute;bottom:0;left:6%;right:6%;padding:21px 0;border-top:1px solid #ffffff3d;font-size:9px;letter-spacing:.1em}.hero-foot>a{margin-left:auto;display:flex;gap:25px;align-items:center;letter-spacing:0;font-size:11px}.hero-foot>a>span{font-size:19px}.hero-location{border-left:1px solid #ffffff50;padding-left:25px}.discipline-strip{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 9%;color:#b9b9b9;background:#111;border-bottom:1px solid #2c2c2c;font-size:10px;letter-spacing:.19em}.discipline-strip i{display:block;width:4px;height:4px;background:var(--red)}main{background:var(--paper)}.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:20px}.section-top p{margin-bottom:0}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:13%;align-items:end;margin-bottom:52px}.section-heading>p{font-size:14px;color:#606060;margin:0;max-width:430px}.installation-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.installation-image{aspect-ratio:3/2;position:relative;background:#f1ede4;overflow:hidden}.installation-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.installation-card:hover .installation-image img{transform:scale(1.025)}.image-tag{position:absolute;top:20px;left:20px;background:var(--paper);padding:6px 11px;letter-spacing:.09em;font-size:8px;font-weight:600}.image-caption{color:#555;background:var(--paper);padding:4px 8px;position:absolute;bottom:12px;right:16px;font-size:9px;z-index:1}.installation-heading{display:flex;gap:14px;align-items:center;margin:26px 0 14px}.installation-heading .number{font-size:10px;color:var(--button-red);align-self:start;padding-top:6px}.installation-heading h3{font-size:24px;margin:0}.installation-heading>span:last-child{margin-left:auto;font-size:27px}.installation-card>p{font-size:13px;color:#626262;max-width:520px;line-height:1.8}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0}.tags span{border:1px solid #d5d5d2;padding:4px 9px;font-size:9px;color:#666}.installation-card details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.installation-card summary{padding:16px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:600}.installation-card summary span{font-size:20px;font-weight:400}.details-body{font-size:13px;color:#b4b4b4;line-height:1.85;padding:0 0 24px}.installation-card .details-body{color:#606060}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--button-red);padding:8px 0;font-size:12px;font-weight:600}.details-body .text-link{display:table;margin-top:12px;color:var(--ink)}details[open] summary>span:last-child,details[open] summary>b{transform:rotate(45deg)}.solutions{background:#111;color:#fff}.solutions-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.solutions-intro>p:not(.eyebrow){font-size:13px;max-width:380px;color:#aaa;margin-top:26px}.solutions-intro .eyebrow{color:#aaa}.solutions-intro .light{margin-top:6px}.solution-list details{border-bottom:1px solid #3e3e3e}.solution-list details:first-child{border-top:1px solid #3e3e3e}.solution-list summary{padding:24px 0;display:flex;gap:24px;align-items:center}.solution-list summary>span{font-size:10px;color:#aaa}.solution-list h3{font-size:21px;margin:0;letter-spacing:-.035em}.solution-list summary b{font-size:23px;font-weight:400;color:var(--red);margin-left:auto}.solution-list .details-body{padding-left:39px;padding-right:30px}.solution-meta{font-size:8px;letter-spacing:.13em;color:#ddd;margin:22px 0 0}.system-diagram{width:290px;height:180px;position:relative;margin-top:42px;background:linear-gradient(#353535,#353535) center / 1px 70% no-repeat,linear-gradient(90deg,#353535,#353535) center / 70% 1px no-repeat}.system-diagram:after{content:"";position:absolute;width:130px;height:130px;top:25px;left:80px;border:1px solid #343434;border-radius:50%}.diagram-center{position:absolute;left:95px;top:59px;z-index:1;width:100px;padding:10px 8px;background:#111}.diagram-center img{width:100%;height:auto;mix-blend-mode:screen}.diagram-node{position:absolute;background:#111;border:1px solid #555;color:#bdbdbd;font-size:7px;letter-spacing:.1em;padding:4px 8px;z-index:2}.dn1{left:122px;top:0}.dn2{right:0;top:78px}.dn3{left:0;top:78px}.dn4{left:110px;bottom:0}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:0}.filter-bar button{font-size:11px;border:1px solid transparent;background:transparent;color:#555;padding:9px 18px;min-height:42px}.filter-bar button:hover{background:#e8e7e4}.filter-bar button[aria-pressed=true]{background:var(--ink);color:#fff}.filter-bar button span{margin-left:15px;font-size:9px;color:#aaa}.brand-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:32px 28px;background:transparent;border:0;padding:35px 0 20px}.brand-tile{background:transparent;padding:18px 14px;min-height:112px;display:flex;align-items:center;justify-content:center;position:relative;transition:opacity .2s}.brand-tile.dark-logo img{filter:brightness(0)}.brand-tile img.blend-logo{mix-blend-mode:multiply}.brand-tile img{width:100%;max-width:160px;height:60px;object-fit:contain}.brand-tile:hover{opacity:.65}.brand-tile[hidden]{display:none}.disclosure{font-size:10px;color:#676767;line-height:1.7;margin:22px 0 0;max-width:1000px}.disclosure>a{text-decoration:underline;text-underline-offset:3px;margin-left:5px}.clients-section{padding:72px 0;background:#e9e8e5}.clients-heading{display:flex;align-items:end;justify-content:space-between;gap:25px}.clients-heading h2{font-size:40px}.clients-heading p{font-size:12px;color:#666;margin:0}.client-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px;margin:48px 0 30px;align-items:center}.client-logos>div{display:flex;justify-content:center;align-items:center;height:100px}.client-logos img{object-fit:contain;width:160px;height:65px}.client-logos>div:first-child img{height:90px;width:135px}.client-logos>div:nth-child(2) img{width:140px}.client-logos>div:nth-child(3) img{width:125px}.client-logos>div:nth-child(4) img{width:160px}.client-logos .vu-client img{width:108px;height:61px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-grid article{border-top:1px solid #bdbdbb}.process-grid article>span{font-size:11px;color:#ad1619;display:flex;justify-content:space-between;padding:20px 0 35px}.process-grid article>span>b{font-size:19px;font-weight:400;color:#777}.process-grid h3{font-size:22px}.process-grid p{font-size:12px;color:#666;line-height:1.8}.contact-section{background:var(--red);color:#0a0a0a}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:12%}.contact-grid h2{font-size:clamp(45px,4.2vw,65px);font-weight:700}.contact-grid h2 span{color:#fff}.contact-grid>div>p:not(.eyebrow){font-size:14px;margin-top:28px}.contact-direct{display:flex;flex-direction:column;align-items:start;gap:8px;margin-top:42px}.contact-direct a{font-size:15px;font-weight:600}.contact-direct a:first-child{border-bottom:1px solid #701013;padding-bottom:7px;margin-bottom:4px}.contact-direct>span{font-size:11px;margin-top:15px}form label{display:block;font-size:10px;font-weight:600;letter-spacing:.02em;margin-bottom:20px}form label>span{font-size:9px;font-weight:400}input,textarea,select{display:block;width:100%;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #6a1516;color:#090909;border-radius:0;outline-offset:3px;font-size:13px;line-height:1.6}input::placeholder,textarea::placeholder{color:#3c0b0c;opacity:1}input:focus,textarea:focus,select:focus{border-bottom-color:#000}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-note{font-size:10px;color:#270809;line-height:1.7;margin:24px 0}.form-note a{text-decoration:underline;text-underline-offset:3px}.dark-button{background:var(--ink);color:white;min-width:270px}.dark-button:hover{background:#252525}#form-result{background:#fff;padding:20px;margin-top:20px;font-size:12px}#form-result>p{margin-bottom:8px}#copy-inquiry{border:1px solid #ccc;background:#fff;padding:7px 12px;margin-left:15px;font-size:11px}.footer{width:100%;max-width:none;background:#fff;color:var(--ink);padding:50px max(6%,calc((100% - 1380px)/2)) 28px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:35px}.footer-main p{font-size:13px;margin:0;color:#606060}.back-top{font-size:10px;display:flex;gap:25px;align-items:center}.back-top span{font-size:20px;color:var(--red)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;margin-top:30px;font-size:9px;color:#606060}.footer-bottom p{margin-bottom:0}.footer-bottom nav{display:flex;gap:22px;flex-wrap:wrap}.footer-bottom a:hover,.footer-fine a:hover{color:var(--red)}.footer-fine{font-size:9px;color:#606060;margin:22px 0 0;max-width:1000px}.footer-fine a{text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.legal-main{padding:85px 0 100px;background:var(--paper)}.legal-intro{max-width:850px}.legal-intro h1{font-size:clamp(42px,6vw,78px);margin-bottom:25px}.legal-intro>p:not(.eyebrow){color:#616161;font-size:15px}.policy-nav{display:flex;gap:20px;flex-wrap:wrap;padding:25px 0;border-block:1px solid #ccc;margin:38px 0;font-size:12px}.policy-nav [aria-current]{color:#b1181b;text-decoration:underline;text-underline-offset:6px}.legal-body{max-width:850px}.legal-body h2{font-size:25px;margin-top:40px;margin-bottom:16px}.legal-body p,.legal-body li{font-size:14px;line-height:1.85;color:#4a4a4a}.legal-body a{text-decoration:underline;text-underline-offset:3px}.legal-body .legal-contact{border-left:3px solid var(--red);padding:15px 25px;margin:25px 0;background:#eee}.legal-body address{font-style:normal}.legal-body ul{padding-left:20px}
@media(min-width:1600px){.hero-foot{left:calc((100% - 1380px)/2);right:calc((100% - 1380px)/2)}}
@media(max-width:1150px){.header{gap:28px}.header nav{gap:20px}.brand img{width:150px}.hero-location{display:none}.section{padding-block:80px}.section-heading{gap:7%}.installation-heading h3{font-size:21px}.brand-tile{padding:16px 10px;min-height:104px}.contact-grid{gap:6%}.contact-grid h2{font-size:48px}}
@media(max-width:1000px){.client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.header nav{gap:17px}.header nav a{font-size:10px}.header-cta{display:none}.hero{min-height:600px;height:730px}.hero h1{font-size:8.6vw}.hero-bottom{gap:40px}.section-heading h2{font-size:40px}.installation-heading h3{font-size:19px}.installation-heading{gap:10px}.installation-grid{gap:25px}.solutions-layout{gap:7%}.solution-list h3{font-size:18px}.solution-list summary{gap:12px}.solution-list .details-body{padding-left:25px}.brand-grid{grid-template-columns:repeat(4,1fr)}.contact-grid{grid-template-columns:1fr;gap:50px}.contact-direct{margin-top:25px}.contact-grid h2{font-size:54px}.footer-main p{font-size:11px}.footer-bottom{flex-direction:column}.clients-heading h2{font-size:34px}}
@media(max-width:620px){html{scroll-padding-top:76px}.container{width:88%}.header{height:88px;gap:12px;padding:0 6%}.header .brand img{width:124px;height:auto}.menu-toggle{display:flex;align-items:center;gap:12px;margin-left:auto;border:1px solid #bbb;background:transparent;color:var(--ink);font-size:10px;padding:9px 11px;min-height:44px}.menu-toggle span{font-size:16px}.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:24px 6%;border-bottom:1px solid #ddd;flex-direction:column;gap:8px;align-items:stretch}.header nav.open{display:flex}.header nav a{font-size:15px;padding:12px 0}.hero{height:660px;min-height:620px;max-height:none}.hero-main{padding-top:20px;padding-bottom:75px}.hero .eyebrow{font-size:8px;letter-spacing:.12em;gap:10px;margin-bottom:25px}.red-line{width:18px;flex-shrink:0}.hero h1{font-size:11.8vw;line-height:1.02;margin-bottom:25px}.hero-bottom{display:block}.hero-bottom p{font-size:13px;max-width:290px}.hero-bottom .button{margin-top:28px}.hero-image{object-position:63%}.hero-shade{background:linear-gradient(90deg,#000b,#0006),linear-gradient(0deg,#000c,transparent)}.hero-foot{font-size:7px;padding-block:19px;gap:12px}.hero-foot>a{font-size:9px;gap:14px}.discipline-strip{padding:21px 6%;font-size:7px;letter-spacing:.1em;gap:7px}.discipline-strip i{width:3px;height:3px}.section{padding-block:64px}.section-top{margin-bottom:25px}.eyebrow{font-size:9px}.small-note{display:none}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.section-heading h2{font-size:36px}.section-heading p{font-size:13px}.installation-grid{grid-template-columns:1fr;gap:40px}.installation-heading h3{font-size:23px}.installation-card>p{font-size:13px}.installation-heading{margin-top:22px}.solutions-layout{grid-template-columns:1fr;gap:38px}.solutions-intro h2{font-size:39px}.solutions-intro>p:not(.eyebrow){max-width:none}.system-diagram{display:none}.solution-list h3{font-size:21px}.solution-list summary{padding:22px 0;gap:20px}.solution-list .details-body{padding-left:33px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:25px}.filter-bar{gap:2px;padding-bottom:15px}.filter-bar button{padding:8px 12px;font-size:10px;min-height:40px}.filter-bar button span{margin-left:6px}.brand-tile{min-height:94px}.brand-tile img{max-width:135px;height:54px}.disclosure{font-size:10px}.clients-section{padding:55px 0}.clients-heading{display:block}.clients-heading h2{font-size:34px}.clients-heading p{margin-top:16px}.client-logos{grid-template-columns:1fr 1fr;gap:25px;margin:32px 0}.client-logos>div{height:85px}.process-grid{grid-template-columns:1fr 1fr;gap:25px}.process-grid h3{font-size:21px}.process-grid article>span{padding-bottom:23px}.process-grid p{font-size:12px}.contact-grid h2{font-size:43px}.contact-grid{gap:38px}.contact-direct a{font-size:14px}.form-row{gap:15px}input,textarea,select{font-size:16px}.form-note{font-size:11px}.dark-button{width:100%}.contact-section .eyebrow{font-size:8px}.footer{padding-top:36px}.footer-main{flex-wrap:wrap;gap:20px}.footer-main>p{width:100%;order:3}.footer-main .back-top{margin-left:auto;font-size:9px;gap:10px}.footer-bottom{font-size:10px}.footer-bottom nav{gap:13px 20px}.footer-fine{font-size:9px}.legal-main{padding:60px 0}.legal-intro h1{font-size:46px}.policy-nav{gap:15px;font-size:11px}.legal-body p,.legal-body li{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.client-logos>div:first-child{flex-direction:column;gap:4px}.ferrari-name{font-size:10px;letter-spacing:.12em;font-weight:600}.client-logos>div:first-child img{height:72px}
@media(max-width:620px){.desktop-break{display:none}.hero-bottom p{max-width:320px}}



/* Always-visible language selection; labels and navigation fit both languages. */
.header{gap:24px}.header #navigation{gap:24px}.language-switcher{display:flex;align-items:center;gap:0;flex-shrink:0;font-size:10px;font-weight:600;letter-spacing:.04em}.language-switcher>span{color:#aaa}.language-choice{display:flex;align-items:center;justify-content:center;min-width:36px;min-height:44px;position:relative}.language-choice[aria-current="page"]{color:#b1181b}.language-choice[aria-current="page"]:after{content:"";position:absolute;bottom:7px;width:18px;height:2px;background:var(--red)}.language-choice:hover{color:var(--red)}
@media(max-width:1100px){.header{gap:18px}.header #navigation{gap:18px}.header-cta{gap:15px}}
@media(max-width:1050px){.header #navigation{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:#fff;padding:24px 6%;border-bottom:1px solid #ddd;flex-direction:column;gap:8px;align-items:stretch}.header #navigation.open{display:flex}.header #navigation a{font-size:15px;padding:12px 0}.header-cta{display:none}.header .language-switcher{margin-left:auto}.menu-toggle{display:flex;align-items:center;gap:8px;margin-left:0;border:1px solid #bbb;background:transparent;color:var(--ink);font-size:10px;padding:9px 11px;min-height:44px}.menu-toggle span{font-size:16px}}
@media(max-width:620px){.header{gap:12px}.header .menu-toggle{margin-left:0}.installation-heading h3{font-size:21px}.hero h1[translate="no"]{overflow-wrap:normal}.hero-foot>span{max-width:42%}#copy-inquiry{margin:12px 0 0;display:block}html[lang="es"] .discipline-strip{letter-spacing:.03em;font-size:6.5px}}
@media(max-width:400px){.header{gap:10px}.header .brand img{width:108px}.menu-toggle{padding-inline:9px}}

/* Sector specializations */
.specializations{background:#eeede9}.specialization-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 36px}.specialization-card{border-top:1px solid #bdbcb8;padding-top:22px;display:flex;flex-direction:column;align-items:flex-start}.specialization-number{font-size:10px;letter-spacing:.08em;color:var(--button-red);margin-bottom:23px}.specialization-card h3{font-size:24px;letter-spacing:-.035em;line-height:1.22;min-height:2.44em;margin:0 0 16px;max-width:330px}.specialization-card>p{font-size:13px;line-height:1.8;color:#555;margin-bottom:18px}.specialization-card .specialization-examples{font-size:10px;line-height:1.9;color:#626262;margin-top:auto;margin-bottom:0}.specialization-contact{margin-top:38px}
@media(max-width:1050px){.specialization-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 30px}}
@media(max-width:620px){.specialization-grid{grid-template-columns:1fr;gap:32px}.specialization-number{margin-bottom:15px}.specialization-card h3{font-size:23px;min-height:0;max-width:none}.specialization-card>p{margin-bottom:12px}.specialization-card .specialization-examples{font-size:11px}.specialization-contact{margin-top:30px}}

.solution-list .details-body .software-link{color:#fff;margin-top:18px;font-size:11px}

.brand-tile img.claypaky-classic{width:140px;height:70px;object-fit:cover}

/* User-supplied project imagery, treated as quiet decorative backgrounds. */
.specialization-grid{gap:24px}
.specialization-card{position:relative;isolation:isolate;overflow:hidden;background:#161616;border-top:2px solid var(--red);padding:30px 28px;min-height:390px;color:#fff}
.specialization-card .specialization-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;filter:grayscale(.3) saturate(.85) contrast(1.05);opacity:.95;z-index:0}
.specialization-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.24),rgba(8,8,8,.46) 50%,rgba(8,8,8,.76));z-index:1;pointer-events:none}
.specialization-card>:not(.specialization-background){position:relative;z-index:2}
.specialization-card .specialization-number{color:#ddd;letter-spacing:.12em;margin-bottom:30px}
.specialization-card h3{color:#fff}
.specialization-card>p{color:#ececec}
.specialization-card .specialization-examples{color:#d0d0d0;border-top:1px solid #ffffff30;padding-top:16px}
.specialization-card:nth-child(2) .specialization-background{object-position:56% 55%}
.specialization-card:nth-child(3) .specialization-background{object-position:50% 65%}
.specialization-card:nth-child(4) .specialization-background{object-position:50% 38%}
.specialization-card:nth-child(5) .specialization-background{object-position:55% 45%}
@media(max-width:620px){.specialization-grid{gap:20px}.specialization-card{min-height:350px;padding:28px 24px}.specialization-card .specialization-number{margin-bottom:24px}}

/* Service discovery and readable, bilingual service detail pages. */
.company-summary{background:#fff;padding:52px 0;border-bottom:1px solid var(--line)}.company-summary>.container{display:grid;grid-template-columns:2fr 1fr;gap:60px;align-items:center}.company-summary h2{font-size:30px;max-width:650px;margin-bottom:15px}.company-summary p{font-size:14px;line-height:1.9;max-width:800px;margin:0;color:#555}.company-summary-links{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.company-summary-links .text-link{margin:0}.home-service-links{color:white;padding:0 0 70px}.home-service-links h2{font-size:22px;margin-bottom:25px}.service-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}.service-link{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid #777;font-size:13px;font-weight:500;line-height:1.7}.service-link span{color:var(--red);font-size:22px;flex-shrink:0}.service-link:hover{color:var(--red)}.footer-services{display:flex;gap:32px;flex-wrap:wrap;padding-top:25px}.footer-services .text-link{margin:0;font-size:11px}.service-main{background:var(--paper)}.service-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;padding:36px 0 70px;background:#111}.service-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.45}.service-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080808f2,#080808c9 55%,#08080850)}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:10px;color:#ccc;margin:0 0 44px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.breadcrumbs>span[aria-current]{color:#fff}.service-hero .eyebrow{color:#ddd;margin-bottom:20px}.service-hero h1{font-size:clamp(38px,5.2vw,76px);line-height:1.04;max-width:1000px;margin-bottom:26px;font-weight:800}.service-lead{max-width:820px;font-size:16px;line-height:1.9;color:#e0e0e0;margin-bottom:28px}.service-intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start;margin-bottom:65px}.service-intro h2{font-size:clamp(30px,3.2vw,48px);max-width:590px}.service-intro>p{font-size:15px;line-height:1.95;color:#555;margin:0}.service-subtitle{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:30px}.service-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.service-scope-grid article{border-top:2px solid var(--red);padding-top:20px}.service-number{color:var(--button-red);font-size:11px;letter-spacing:.1em;display:block;margin-bottom:25px}.service-scope-grid h3{font-size:24px;margin:0 0 15px}.service-scope-grid p{font-size:13px;line-height:1.95;color:#555;margin:0}.service-planning{padding:65px 0;background:#e8e7e2}.service-planning .service-intro{margin-bottom:0}.service-planning h2{font-size:34px}.service-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;align-items:start}.service-faq h2{font-size:36px}.service-faq details{border-top:1px solid #aaa;padding:22px 0}.service-faq details:last-child{border-bottom:1px solid #aaa}.service-faq summary{cursor:pointer;list-style:none;display:flex;gap:20px;justify-content:space-between;font-size:15px;font-weight:600;line-height:1.7}.service-faq summary::-webkit-details-marker{display:none}.service-faq summary span{color:var(--button-red);font-size:22px}.service-faq details p{font-size:14px;line-height:1.9;color:#555;margin:18px 30px 0 0}.service-related{padding-bottom:80px}.service-related h2{font-size:26px;margin-bottom:15px}.service-related .service-link{border-color:#c6c5c1}.service-contact{background:var(--red);padding:70px 0;color:var(--ink)}.service-contact-inner{display:grid;grid-template-columns:1.35fr 1fr;gap:9%;align-items:center}.service-contact h2{font-size:38px;margin-bottom:22px;max-width:620px}.service-contact p{font-size:14px;line-height:1.8;max-width:650px}.service-contact .service-coverage{font-size:11px;margin-bottom:0}.service-email{display:block;font-size:13px;margin-top:22px;text-decoration:underline;overflow-wrap:anywhere}.service-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 56px}.service-catalog article{border-top:1px solid #aaa;padding-top:22px}.service-catalog h3{font-size:28px;line-height:1.2;max-width:550px;margin-bottom:18px}.catalog-link{display:flex;align-items:start;justify-content:space-between;gap:25px}.catalog-link span{color:var(--red)}.catalog-link:hover{color:var(--button-red)}.service-catalog p{font-size:14px;line-height:1.85;max-width:560px;color:#555}.service-section-title{font-size:40px;max-width:800px;margin-bottom:50px}.service-main .process-grid h3{font-size:24px}.service-main .process-grid p{font-size:13px}.about-client-summary{border-top:1px solid #aaa;margin-top:65px;padding-top:40px}.about-client-summary h2{font-size:32px;margin-bottom:25px}.about-client-summary p{font-size:14px;max-width:850px;line-height:1.9;color:#555}.about-client-summary .text-link{display:inline-flex;margin-right:35px}
@media(max-width:1050px){.service-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-hero h1{max-width:800px}.service-intro{gap:6%}.service-contact-inner{gap:6%}.service-contact .dark-button{min-width:0}.company-summary>.container{gap:35px}.service-scope-grid{gap:24px}}
@media(max-width:620px){.company-summary{padding:36px 0}.company-summary>.container{grid-template-columns:1fr;gap:22px}.company-summary h2{font-size:26px}.company-summary p{font-size:13px}.company-summary-links{gap:12px}.service-link-grid{grid-template-columns:1fr}.home-service-links{padding-bottom:45px}.service-hero{padding:25px 0 48px}.breadcrumbs{font-size:9px;gap:7px;margin-bottom:30px}.service-hero .eyebrow{font-size:8px;letter-spacing:.09em}.service-hero h1{font-size:39px;overflow-wrap:break-word}.service-lead{font-size:14px;line-height:1.85}.service-hero .button{font-size:11px;gap:15px}.service-intro,.service-faq,.service-contact-inner{grid-template-columns:1fr;gap:24px}.service-intro{margin-bottom:40px}.service-intro h2{font-size:31px}.service-intro>p{font-size:14px}.service-scope-grid{grid-template-columns:1fr;gap:32px}.service-number{margin-bottom:18px}.service-scope-grid h3{font-size:23px}.service-planning{padding:45px 0}.service-planning h2{font-size:30px}.service-faq h2{font-size:31px}.service-faq summary{font-size:14px}.service-faq details p{font-size:13px}.service-related{padding-bottom:50px}.service-contact{padding:45px 0}.service-contact h2{font-size:32px}.service-catalog{grid-template-columns:1fr;gap:25px}.service-catalog h3{font-size:26px}.service-section-title{font-size:31px}.service-main .process-grid{gap:30px}.footer-services{gap:25px}.about-client-summary .text-link{font-size:11px;margin-top:15px}.about-client-summary{margin-top:40px}}

/* Original equipment concepts used as quiet, readable section backgrounds. */
.home-service-links{background:linear-gradient(90deg,rgba(7,9,14,.48),rgba(7,9,14,.32)),url('/assets/av-control-concept.webp') center 54%/cover no-repeat #0a0c12;width:100%;max-width:none;margin:0;padding:70px max(6%,calc((100% - 1380px)/2)) 80px}
.home-service-links h2{font-size:clamp(26px,3vw,40px);margin-bottom:30px;max-width:650px}
.home-service-links .service-link{border-color:#ffffff50;color:#f6f6f6}
.home-service-links .service-link:hover{color:#fff;border-color:var(--red)}
.contact-section{background:linear-gradient(90deg,rgba(7,9,16,.30),rgba(7,9,16,.62) 64%),url('/assets/stage-lighting-concept.webp') center/cover no-repeat #090b10;color:#fff}
.contact-grid h2 span{color:var(--red)}
.contact-grid>div>p:not(.eyebrow){color:#e4e4e4}
.contact-direct a:first-child{border-color:var(--red)}
.contact-section input,.contact-section textarea,.contact-section select{color:#fff;border-color:#ffffff65}
.contact-section input::placeholder,.contact-section textarea::placeholder{color:#c7c8ce}
.contact-section input:focus,.contact-section textarea:focus,.contact-section select:focus{border-color:#fff}
.contact-section select option{background:#111;color:#fff}
.contact-section .form-note{color:#d2d3d9}
.contact-section .dark-button{background:var(--button-red)}
.contact-section .dark-button:hover{background:#a91316}
.contact-section #form-result{color:var(--ink)}
@media(max-width:620px){.home-service-links{padding-top:48px;padding-bottom:54px;background-position:58% center}.home-service-links h2{font-size:28px}.contact-section{background-position:36% center}}

/* Scroll effects are progressive; no content is hidden by CSS. */
.scroll-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left center;pointer-events:none;z-index:100;will-change:transform}
.hero{overflow:hidden}
@media(prefers-reduced-motion:reduce){.scroll-progress{display:none}.hero-image,.service-hero-image{transform:none!important}}
@media print{.scroll-progress{display:none}.hero-image,.service-hero-image{transform:none!important}}

/* Light image overlays retain contrast behind foreground copy. */
.home-service-links h2,.home-service-links .service-link,.contact-grid>div{ text-shadow:0 2px 10px #0009 }
