/* Light professional visual system. Layout and service content are shared across all pages. */
:root{--ink:#244453;--navy:#244453;--paper:#f9f9f5;--muted:#5c7581;--line:#d8e2e2;--copper:#b63146;--copper-light:#c4495c;color-scheme:light}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}h1,h2,h3,.service-title{font-family:Arial,Helvetica,sans-serif;text-transform:none;font-weight:650;letter-spacing:-1.2px}h1,h2{line-height:1.13}h1 em,h2 em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-1px;color:var(--copper)}h2{font-size:clamp(34px,3.65vw,52px)}.section{padding-block:95px}.section-label,.eyebrow{color:#526d74;font-size:10px;letter-spacing:1.7px}.dot,.eyebrow>span{width:6px;height:6px}.header{height:100px;background:#fff;border-top:3px solid var(--copper);border-bottom:1px solid var(--line);box-shadow:0 3px 16px #294a5805}.header .brand-logo{width:70px;height:72px}.header .brand-name{font-size:12px;font-weight:750;color:#294651;letter-spacing:1.4px}.header .brand-name>span{color:#566a73;font-size:9px;letter-spacing:2.7px}.header nav{color:#375463;gap:23px;letter-spacing:.4px;font-weight:600}.header nav>a:not(.nav-cta):hover,.header nav>a[aria-current=page]{color:var(--copper)}.header .nav-cta{background:var(--copper);color:white;padding:16px 19px;font-weight:650;border-radius:3px;text-transform:none;letter-spacing:.1px}.header .nav-cta>span{color:white}.nav-group summary{font-weight:600;font-size:11px}.nav-group summary>span,.nav-group[open]>summary{color:var(--copper)}.nav-dropdown{background:white;border:1px solid var(--line);border-top:3px solid var(--copper);box-shadow:0 14px 40px #294a581c;border-radius:0 0 4px 4px}.nav-dropdown a{color:#405e6b;border-color:#e1e8e7;text-transform:none;font-size:12px;letter-spacing:0}.nav-dropdown a:hover,.nav-dropdown a[aria-current=page]{background:#eff4f4;color:var(--copper)}.menu-toggle span{background:#2a4855}.button{font-size:12px;font-weight:650;text-transform:none;letter-spacing:.1px;border-radius:3px;padding:18px 23px;min-height:56px}.button.copper{background:var(--copper);border-color:var(--copper);color:white}.button.copper:hover{background:#95273a}.button.dark{background:#294c60;color:white}.text-link{color:#365867;border-color:var(--copper);font-size:11px;text-transform:none;letter-spacing:.1px;font-weight:650;padding-bottom:11px}.text-link>span{color:var(--copper)}.text-link:hover{color:var(--copper)}.section-heading>p,.section-intro{color:#536c74}.capability-strip{background:#eaf0f1;border-bottom:1px solid #d8e3e4}.capability-strip .wrap{color:#3f606f;min-height:80px;font-weight:600;text-transform:none;letter-spacing:.2px}.capability-strip .plus{color:#a84a58}.about{gap:60px}.about h2{font-size:clamp(35px,3.8vw,54px)}.about-copy p{color:#516c76}.solutions,.scope-section{background:#eef3f3;border-color:#dee7e7}.solution-card{background:white;border-color:#d5e1e2;border-radius:5px;overflow:hidden;box-shadow:0 5px 20px #21495e05}.solution-card:hover{border-color:#b54e5f;box-shadow:0 10px 26px #21495e0e}.solution-image{background:#f3f5f4}.solution-image>span{background:#fffffff2;color:#526f7d;border-radius:2px;font-size:8px}.solution-copy{border-top:2px solid #bc5768;padding:27px 25px}.solution-num{color:#895b65;font-size:8px;letter-spacing:1.3px}.solution-copy h3{font-size:23px;font-weight:650;text-transform:none;letter-spacing:-.6px;color:#2d4d5c;line-height:1.25}.solution-copy p{color:#526c75}.solution-link{color:#3e6679;border-color:#dce5e7;text-transform:none;letter-spacing:.1px;font-size:11px}.work-split{gap:25px;padding:0 56px;max-width:1452px;margin:auto}.work-split>a{min-height:0;display:block;background:white;border:1px solid #d9e4e5;border-radius:5px;overflow:hidden}.work-split>a:after{display:none}.work-split img{position:relative;height:340px;filter:saturate(.8);object-fit:cover}.work-split>a>div{padding:35px}.work-split span{color:#8d5965;font-size:9px}.work-split h2{color:#2c4e60;font-size:42px;margin:16px 0}.work-split p{color:#506c75}.work-split strong{color:#375d70;border-color:var(--copper);font-weight:650;text-transform:none;letter-spacing:0;font-size:12px}.client-value{background:#fff;border-color:#e0e7e7}.client-value .section-intro{color:#516c74}.reason-grid article{background:#f0f5f5;border-top:3px solid #a95a69;border-radius:3px}.reason-grid span{color:#955564;font-weight:500}.reason-grid h3{color:#2d4e5e;font-weight:650;font-size:21px;text-transform:none;letter-spacing:-.5px}.reason-grid p{color:#516c74}.conversion-panel{background:#e9f1f4;border-left:3px solid #b65365;border-radius:0 5px 5px 0}.conversion-panel h3{color:#2f5367;text-transform:none;font-weight:650;letter-spacing:-.7px;line-height:1.3}.conversion-panel p{color:#4e6d79}.conversion-panel .section-label{color:#576a71}.deliverable-strip span{border-color:#bdced6;color:#476b7d;background:#f8fbfc;border-radius:3px}.fit-grid a{background:#fff;border-color:#d4e1e4;border-top:3px solid #bb6b79;border-radius:4px}.fit-grid h3{color:#315365;text-transform:none;font-weight:650;letter-spacing:-.5px}.fit-grid p{color:#506b74}.fit-grid strong{color:var(--copper);text-transform:none;letter-spacing:.1px}.service-overview>p{color:#506d78}.service-overview h2{font-size:clamp(33px,3.4vw,48px)}.scope-grid article{background:white;border-color:#d4e1e3;border-top:3px solid #b86877;border-radius:4px}.scope-grid article>span{color:#895965;font-weight:500}.scope-grid h3{color:#325466;font-size:22px;font-weight:650;text-transform:none;letter-spacing:-.5px}.scope-grid p{color:#516b74}.gallery{background:#f4f7f6;border-color:#dce6e4}.gallery-toolbar{border-color:#d5e1e2}.gallery-filters button{color:#506c78;border-color:#c9d9de;background:transparent;font-weight:500;text-transform:none;letter-spacing:0;font-size:11px;border-radius:3px}.gallery-filters button[aria-pressed=true]{background:#355f74;border-color:#355f74;color:white}.gallery-filters button:hover{border-color:#819eab}.gallery-count{color:#566a72}.gallery-card{background:white;border-color:#d9e3e4;border-radius:4px;overflow:hidden;box-shadow:0 4px 18px #21495e04}.gallery-card:hover{border-color:#ba6272}.gallery-open{background:#edf1ef}.gallery-card-caption{border-top:2px solid #bd7a87;padding:21px 23px}.gallery-card-caption>span{color:#855d6b;font-weight:600;letter-spacing:1px}.gallery-card-caption h3{color:#345565;font-size:19px;font-weight:650;letter-spacing:-.5px}.gallery.full-gallery .gallery-card-caption h3{font-size:17px}.gallery-view{background:#365e72;color:white;text-transform:none;font-weight:500;letter-spacing:.1px;border-radius:2px}.gallery-note{color:#596b73;border-color:#d3dfe2}.brief-checklist p,.gallery-related p{color:#506d77}.brief-checklist li{color:#4b6d7e;border-color:#d2dfe4}.brief-checklist li:before{color:var(--copper)}.brief-checklist h2,.gallery-related h2{font-size:clamp(33px,3.4vw,48px)}.project-cta{background:#e6eef2;border-block:1px solid #d2dfe5;padding-block:65px}.project-cta h2{color:#31546a;font-size:clamp(32px,3.3vw,46px);line-height:1.15}.project-cta .section-label{color:#566b74}.project-cta .dot{background:var(--copper)}.project-cta .dark{background:#355f74;border-color:#355f74;color:white}.project-cta .dark:hover{background:#274b60}.timeline article{border-color:#cfdee4}.timeline article>span{color:#975363;font-weight:500}.timeline h3{color:#365b6f;font-size:27px;font-weight:650;letter-spacing:-.6px;text-transform:none}.timeline p{color:#506d78}.timeline small{color:#8a5966}.faq-list details,.faq-list details:last-child{border-color:#cfdee3}.faq-list summary{font-size:18px;color:#35566a;font-weight:600}.faq-list summary>span{color:var(--copper)}.faq-list p{color:#506d77}.enquiry-copy>p:not(.section-label){color:#516d76}.enquiry-copy>p:nth-of-type(2){color:#4a6d7f}.enquiry h2{font-size:clamp(35px,3.7vw,52px)}.contact-links span,.office-address>span{color:#586a72}.contact-links strong{color:#355b70;font-size:20px;font-weight:600}.contact-links a:hover strong{color:var(--copper)}.office-address address{color:#526f7f}.office-address>a{color:var(--copper);border-color:var(--copper)}.brief-form{background:#fff;border-color:#d3e0e4;border-top:3px solid #b86778;box-shadow:0 8px 30px #2d4d6010;border-radius:4px}.brief-form h3{color:#31566b;font-size:25px;font-weight:650;text-transform:none;letter-spacing:-.6px}.form-description{color:#556a73}.brief-form label{color:#4b6b7c;text-transform:none;font-weight:600;letter-spacing:.1px}.brief-form input,.brief-form select,.brief-form textarea{background:#fbfcfc;color:#365867;border-color:#ccdae0;border-radius:3px}.brief-form input::placeholder,.brief-form textarea::placeholder{color:#5a6a72}.brief-form option{background:white;color:#365867}.brief-form .dark{background:#355f74;border-color:#355f74;color:white}.brief-form .dark:hover{background:#264b60}.privacy-note{color:#5c6a72}.brief-form #brief-result{border-color:#d1dfe4}#brief-result h4{color:#355b70;font-weight:600}#brief-preview{background:#eff4f5;color:#466b7d}.share-actions a{background:#4e7386;border-radius:3px}.share-actions a:first-child{background:#347659}.result-actions button{color:#4a6d7e}#brief-status{color:#546b74}.contact-help{border-color:#d2e0e5}.contact-help h3{color:#3e6174}.contact-help p{color:#556c74}.contact-presence,.contact-plants{border-color:#d1dfe4}.contact-presence>span,.contact-plants>span{color:#576a72}.contact-presence p,.contact-plants p{color:#4e7082}.contact-presence strong{color:var(--copper)}.presence-section{background:#edf3f0;border-color:#d7e4df}.presence-cities>span{background:white;border-color:#d2dfdc;color:#42675c;font-size:16px;font-weight:600;text-transform:none;letter-spacing:0;border-radius:3px}.presence-cities>span:before{background:#a26673;width:5px;height:5px}.presence-copy p{color:#536d69}.presence-band{background:#edf3f1;border-color:#d4e0dc;color:#406459}.presence-band strong{font-size:11px;color:#476b61}.presence-band div>span{color:#8e5864;font-size:10px}.presence-band p{color:#556d67}.presence-band a{color:#40695c;letter-spacing:.1px;text-transform:none;font-size:11px}.fabrication-plants{background:#edf2f5;border-color:#d5e0e5}.plant-grid article{background:white;border-color:#d1dfe6;border-top:3px solid #b97483;border-radius:4px}.plant-grid article>span{color:#7d606b;font-weight:500}.plant-grid h3{color:#345d74;font-size:37px;font-weight:600;text-transform:none;letter-spacing:-.8px}.plant-grid p,.plant-summary p{color:#546a74}.design-visual{border-color:#d7e2e5;border-top:3px solid #b86f7e;border-radius:4px;overflow:hidden}.design-visual>span{background:#edf3f6;color:#4c6d79}.design-feature h2{font-size:clamp(33px,3.4vw,48px)}.design-feature>div>p:not(.section-label){color:#516d76}.design-feature li{color:#4f6c78;border-color:#d2dfe5}.design-feature li:before{color:var(--copper)}.about-manifesto h2{font-size:clamp(35px,3.5vw,50px)}.about-narrative p{color:#506b75}.about-narrative p.about-lead{color:#36586b;font-size:22px;font-weight:500}.about-statement{background:#f5e9eb;border-color:#eed9de}.about-statement span{color:#815d69}.about-statement p{color:#4a626f;font-weight:500;line-height:1.25;font-size:clamp(30px,3.9vw,54px)}.about-statement strong{color:var(--copper);font-weight:600}.about-mission-grid article{background:#fff;border-color:#d5e0e5;border-top:3px solid #b97180;border-radius:4px}.about-mission-grid article>span{color:#885b68;font-weight:500}.about-mission-grid h3{color:#365c70;font-size:28px;font-weight:650;text-transform:none;letter-spacing:-.6px}.about-mission-grid p{color:#546b75}.about-capabilities>a{border-color:#d0dfe5}.about-capabilities>a>span{color:#845d68;font-weight:500}.about-capabilities h3{color:#3c6275;text-transform:none;font-weight:600;letter-spacing:-.4px}.about-capabilities p{color:#556c76}.about-capabilities>a>strong{color:#935667}.about-capabilities>a:hover h3{color:var(--copper)}.about-quality{background:#eef3f5;border-color:#d3e1e6}.about-quality h2{font-size:clamp(35px,3.5vw,50px)}.about-quality-grid>div>p:not(.section-label){color:#536c76}.about-principles article{border-color:#ccdde4}.about-principles h3{color:#3a6175;text-transform:none;font-weight:600}.about-principles p{color:#536c75}footer{background:#f0f3f3;color:#3c5e6c;border-top:1px solid #cddde0}.footer-column h3{color:#3f6272;font-weight:600}.footer-column a,.footer-company>a:not(.brand){color:#556a73}.footer-column a:hover,.footer-company>a:not(.brand):hover{color:var(--copper)}footer .brand-name{color:#35515e;font-size:10px}.footer-company p{color:#526c74}.footer-company address{color:#5a6b73}.footer-plants strong{color:#885c69}.footer-plants>span{color:#586b73}.footer-bottom{border-color:#d3dfe3;color:#5d6a70}.image-viewer{background:#fafcfb;color:#36596c;border:1px solid #d4e0e5;border-radius:5px;box-shadow:0 25px 100px #24445333}.image-viewer::backdrop{background:#1b354dcc}.viewer-header p{color:#885b6a}.viewer-header h2{color:#355b6e;font-weight:600}.viewer-header>button{background:#54788c;border-radius:3px}.viewer-image-wrap{background:#e9efef}.viewer-footer button{background:white;color:#4d6f81;border-color:#bfd0d9;border-radius:3px}.viewer-footer>a{color:#4d6b7a}.whatsapp-float{background:#3c7b61;color:white;border-color:#74a18b;border-radius:30px;box-shadow:0 4px 20px #24445321}.whatsapp-float:hover{background:#29694e}.skip{background:white;color:#365667}.breadcrumbs{color:#586b73}.breadcrumbs a{color:#526f80}.breadcrumbs a:hover{color:var(--copper)}
/* Content and photography carousel. */
.visual-carousel{display:grid;grid-template-columns:48% 52%;background:#f7f7f1;border-bottom:1px solid #dce5e4;position:relative;min-height:630px}.carousel-copy{padding:58px 48px 42px max(56px,calc((100vw - 1340px)/2));display:flex;flex-direction:column;justify-content:center;min-width:0}.carousel-copy .breadcrumbs{font-size:10px;line-height:1.8;gap:10px;margin-bottom:27px}.carousel-copy>.section-label{color:#576a70;font-size:9px;line-height:1.8;letter-spacing:1.5px;margin-bottom:24px}.visual-carousel h1{font-size:clamp(40px,3.8vw,58px);font-weight:600;line-height:1.12;letter-spacing:-2px;margin:0 0 23px;color:#2d4f61;overflow-wrap:break-word}.visual-carousel h1 em{color:#b04458;letter-spacing:-1.4px}.inner-carousel h1{font-size:clamp(36px,3.35vw,50px);line-height:1.14;letter-spacing:-1.7px}.carousel-intro{color:#546b73;font-size:15px;line-height:1.9;margin-bottom:27px;max-width:520px}.carousel-story{border-left:2px solid #c78e9a;padding:0 0 0 18px;max-width:540px;min-height:128px;margin-bottom:22px}.carousel-story h3{font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.3px;color:#466878;margin-bottom:9px}.carousel-story p{font-size:12px;color:#596a72;line-height:1.85;margin-bottom:8px}.carousel-story .text-link{font-size:11px;letter-spacing:0;padding:4px 0 7px;margin:0;border-bottom:1px solid #b96e7e;min-height:27px}.carousel-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:12px}.carousel-prev,.carousel-next{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #c7d7dc;background:#fff;color:#4c6f80;font-size:18px;border-radius:50%}.carousel-prev:hover,.carousel-next:hover{border-color:#92626f;background:#f7eff1}.carousel-dots{display:flex;align-items:center;gap:3px}.carousel-dot{padding:10px 6px;background:none}.carousel-dot>span{display:block;width:6px;height:6px;background:#b9cbd0;border-radius:50%;transition:width .2s}.carousel-dot[aria-pressed=true]>span{width:21px;border-radius:4px;background:#b05065}.carousel-play{padding:10px 5px;margin-left:5px;font-size:10px;letter-spacing:.2px;background:none;color:#556b73;min-width:66px}.carousel-art{position:relative;min-height:630px;overflow:hidden;background:#edf1ef}.carousel-picture{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}.carousel-picture.is-active{opacity:1;z-index:1}.carousel-picture img{width:100%;height:100%;object-fit:cover;object-position:center}.carousel-picture img[src$=".png"]{object-fit:contain;background:#f9fbfa}.carousel-image-caption{position:absolute;bottom:25px;left:25px;right:25px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;background:#fffffff0;border:1px solid #ffffffb3;border-radius:3px;box-shadow:0 4px 20px #24445310;color:#506c7a;font-size:10px;letter-spacing:1px;text-transform:uppercase}.home-carousel .carousel-art{min-height:700px}.home-carousel{min-height:700px}.home-carousel .carousel-copy{padding-block:65px 50px}.home-carousel h1{font-size:clamp(43px,3.9vw,61px)}.inner-carousel .carousel-story{min-height:116px}.inner-carousel .carousel-copy{padding-block:40px}.carousel-play:focus-visible,.carousel-dot:focus-visible,.carousel-prev:focus-visible,.carousel-next:focus-visible{outline:2px solid #b63146;outline-offset:3px}
@media(min-width:1700px){.carousel-copy{padding-right:65px}.visual-carousel h1{font-size:65px}.inner-carousel h1{font-size:54px}.home-carousel h1{font-size:69px}}
@media(max-width:1120px){.header nav{gap:17px}.header .brand-name{font-size:10px}.header .brand-name>span{font-size:8px;letter-spacing:2px}.carousel-copy{padding-left:36px;padding-right:32px}.visual-carousel h1,.home-carousel h1{font-size:47px}.inner-carousel h1{font-size:41px}.carousel-intro{font-size:14px}.carousel-story{min-height:155px}.inner-carousel .carousel-story{min-height:140px}.carousel-art,.visual-carousel{min-height:650px}.work-split{padding-inline:36px}.plant-grid h3{font-size:34px}}
@media(max-width:900px){.header .brand-name{font-size:9px}.header .brand-name>span{font-size:7px}.header .brand-logo{width:62px;height:64px}.visual-carousel{grid-template-columns:1fr 1fr;min-height:650px}.carousel-copy{padding:38px 28px 36px 36px}.visual-carousel h1,.home-carousel h1{font-size:39px;letter-spacing:-1.2px}.inner-carousel h1{font-size:35px}.carousel-copy>.section-label{font-size:8px;letter-spacing:1px}.carousel-intro{font-size:13px}.carousel-story h3{font-size:16px}.carousel-story p{font-size:11px}.carousel-controls{gap:6px}.carousel-play{margin-left:0}.carousel-prev,.carousel-next{width:32px;height:32px}.carousel-dot{padding:10px 5px}.carousel-art{min-height:650px}.home-carousel,.home-carousel .carousel-art{min-height:690px}.home-carousel .carousel-copy{padding-block:45px}.section{padding-block:80px}.work-split>a>div{padding:28px}.work-split h2{font-size:34px}.about h2{font-size:44px}.solution-copy h3{font-size:21px}.scope-grid h3{font-size:21px}.about-manifesto h2{font-size:40px}.design-feature h2{font-size:37px}.about-quality h2{font-size:40px}}
@media(max-width:700px){html{scroll-padding-top:110px}.header{height:90px;padding-inline:20px}.header .brand-name{font-size:10px}.header .brand-name>span{font-size:8px}.header .brand-logo{width:64px;height:66px}.header nav{top:87px;background:white;border-color:#d9e2e3;box-shadow:0 15px 25px #24445315}.header nav>a{color:#426374;border-color:#dbe5e7;font-size:12px!important}.header nav>a.nav-cta{color:white}.nav-group{border-color:#dbe5e7}.nav-group summary{font-size:12px;color:#426374}.nav-dropdown{background:#f0f5f5;box-shadow:none;border-color:#d8e3e5}.nav-dropdown a{color:#4e6c76;border-color:#d3e0e4}.visual-carousel{grid-template-columns:1fr;min-height:0}.carousel-copy{padding:34px 24px 30px}.visual-carousel h1,.home-carousel h1{font-size:43px;letter-spacing:-1.3px;line-height:1.12}.inner-carousel h1{font-size:37px;letter-spacing:-1px}.carousel-copy>.section-label{font-size:8px;letter-spacing:1.1px;margin-bottom:23px}.carousel-intro{font-size:14px;margin-bottom:22px;line-height:1.85}.carousel-story,.inner-carousel .carousel-story{min-height:0;margin-bottom:15px;padding-left:15px}.carousel-story h3{font-size:17px}.carousel-story p{font-size:12px;margin-bottom:5px;max-width:520px}.carousel-story .text-link{font-size:11px}.carousel-copy .breadcrumbs{margin-bottom:25px;font-size:9px}.carousel-controls{gap:10px;padding-top:10px}.carousel-prev,.carousel-next{width:35px;height:35px}.carousel-play{font-size:10px;margin-left:7px}.carousel-art,.home-carousel .carousel-art{min-height:0;height:350px}.home-carousel{min-height:0}.home-carousel .carousel-copy{padding-block:40px 30px}.carousel-image-caption{left:16px;right:16px;bottom:16px;padding:14px 16px;font-size:9px}.section{padding-block:65px}h2{font-size:35px;letter-spacing:-1px}.about h2,.about-manifesto h2{font-size:36px}.work-split{padding-inline:20px;gap:22px}.work-split img{height:290px}.work-split>a>div{padding:27px}.work-split h2{font-size:34px}.capability-strip .wrap{min-height:100px;font-size:10px}.capability-strip .wrap>span:not(.plus):before{color:#8e5766}.reason-grid h3{font-size:21px}.solution-copy h3{font-size:23px}.scope-grid h3{font-size:22px}.gallery-card-caption h3,.gallery.full-gallery .gallery-card-caption h3{font-size:18px}.project-cta h2{font-size:33px}.plant-grid h3{font-size:32px}.design-feature h2,.about-quality h2{font-size:36px}.about-statement p{font-size:32px}.about-mission-grid h3{font-size:26px}.about-principles h3{font-size:20px}.presence-cities>span{font-size:13px}.contact-links strong{font-size:19px}.brief-form h3{font-size:24px}.brief-form .button{font-size:11px}.footer-company{border-color:#d2dfe3}.footer-column:last-child{border-color:#d2dfe3}footer .brand-name{font-size:11px}.whatsapp-float{padding:11px 15px}.image-viewer{padding:16px}.viewer-header h2{font-size:18px}.viewer-footer button{font-size:10px}.about-capabilities h3{font-size:19px}.service-overview h2,.brief-checklist h2,.gallery-related h2{font-size:34px}.service-overview>p{font-size:15px}}
@media(max-width:370px){.visual-carousel h1,.home-carousel h1{font-size:37px}.inner-carousel h1{font-size:33px}.carousel-copy{padding-inline:20px}.header .brand-name{font-size:9px}.carousel-art,.home-carousel .carousel-art{height:310px}.carousel-controls{gap:6px}.carousel-play{margin-left:0}.section-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){.carousel-picture{transition:none}.carousel-dot>span{transition:none}}

/* Larger branding and readable navigation across all pages. */
:root{--site-header-height:136px}
html{scroll-padding-top:calc(var(--site-header-height) + 20px)}
.header{height:var(--site-header-height);padding-inline:clamp(24px,3vw,56px);gap:32px}
.header .brand{gap:16px}
.header .brand-logo{width:104px;height:107px}
.header .brand-name{font-size:20px;line-height:1.4;letter-spacing:1px}
.header .brand-name>span{font-size:13px;letter-spacing:2.7px;line-height:1.7}
.header nav{gap:22px;font-size:15px}
.header nav>a,.header .nav-group summary{font-size:15px;line-height:1.5;letter-spacing:.2px}
.header .nav-group summary{padding-block:22px}
.header .nav-dropdown{width:310px}
.header .nav-dropdown a{font-size:15px;padding:14px 13px}
.header nav>a.nav-cta{font-size:15px!important;padding:18px 20px;white-space:nowrap}
@media(max-width:1200px){
 :root{--site-header-height:120px}
 .header{gap:20px}
 .header .brand-logo{width:92px;height:95px}
 .header .brand-name{font-size:20px}
 .header .brand-name>span{font-size:13px}
 .header .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:48px;height:48px;padding:10px;flex-shrink:0;border:1px solid #d9e2e3;border-radius:4px;background:white}
 .header .menu-toggle span{width:26px;height:2px}
 .header nav{display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100svh - var(--site-header-height));overflow-y:auto;padding:12px 24px 24px;background:white;border-bottom:3px solid var(--copper);box-shadow:0 15px 25px #24445315}
 .header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .header nav>a,.header nav>a:not(.nav-cta){display:block;width:100%;font-size:17px!important;padding:18px 0;border-bottom:1px solid #dbe5e7}
 .header .nav-group{border-bottom:1px solid #dbe5e7}
 .header .nav-group summary{font-size:17px;padding:18px 0;justify-content:space-between}
 .header .nav-dropdown{position:static;width:100%;max-height:none;padding:4px 10px 12px;border:0;box-shadow:none;background:#f0f5f5}
 .header .nav-dropdown a{font-size:16px;padding:15px 12px}
 .header nav>a.nav-cta{margin-top:16px;padding:18px 20px;border:0;font-size:17px!important}
}
@media(max-width:700px){
 :root{--site-header-height:112px}
 .header{padding-inline:16px;gap:12px}
 .header .brand{gap:12px}
 .header .brand-logo{width:84px;height:87px}
 .header .brand-name{font-size:18px;letter-spacing:.5px}
 .header .brand-name>span{font-size:12px;letter-spacing:1.6px}
 .header .menu-toggle{width:44px;height:44px}
}
@media(max-width:370px){
 :root{--site-header-height:104px}
 .header .brand{gap:10px}
 .header .brand-logo{width:72px;height:75px}
 .header .brand-name{font-size:15px;letter-spacing:.3px}
 .header .brand-name>span{font-size:11px;letter-spacing:1px}
}

.header .brand-name>.brand-tagline{display:block;color:var(--copper);font-size:16px;line-height:1.5;font-weight:700;letter-spacing:.5px;text-transform:none;margin-top:4px}
@media(max-width:700px){.header .brand-name>.brand-tagline{font-size:14px;letter-spacing:.2px;margin-top:3px}}
@media(max-width:370px){.header .brand-name>.brand-tagline{font-size:12px;letter-spacing:0}}

/* Prominent service labels below the home-page banner. */
.capability-strip .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:0;min-height:112px;padding-block:20px;font-size:22px;font-weight:750;line-height:1.4;letter-spacing:0}
.capability-strip .wrap>.plus{display:none}
.capability-strip .wrap>span:not(.plus){display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 20px;border-left:1px solid #cbd9de;overflow-wrap:break-word}
.capability-strip .wrap>span:not(.plus):first-child{border-left:0}
.capability-strip .wrap>span:not(.plus):before{content:none}
.application-tabs{flex-wrap:wrap;gap:12px 26px}
.application-tabs button{font-size:16px;line-height:1.5;padding-block:16px}
@media(max-width:900px){
 .capability-strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr));font-size:21px;padding-block:12px;row-gap:8px}
 .capability-strip .wrap>span:not(.plus){padding:15px 16px}
 .capability-strip .wrap>span:not(.plus):nth-child(5){border-left:0}
}
@media(max-width:700px){
 .capability-strip .wrap{font-size:18px;line-height:1.45;padding-block:14px;row-gap:4px}
 .capability-strip .wrap>span:not(.plus){padding:12px 10px}
 .application-tabs button{font-size:15px}
}
@media(max-width:370px){.capability-strip .wrap{font-size:16px}.capability-strip .wrap>span:not(.plus){padding-inline:8px}}

/* Brand-red service labels and service navigation. */
.capability-strip .wrap>span:not(.plus),
.application-tabs button,
.application-tabs button[aria-selected=true],
.header .nav-group:first-of-type summary,
.header .nav-group:first-of-type .nav-dropdown a{color:var(--copper)}
.application-tabs button:hover,
.header .nav-group:first-of-type .nav-dropdown a:hover{color:#8d2339}

/* Steel-frame inspired home-page headline. */
.home-carousel .steel-headline{position:relative;color:#c91431;font-size:clamp(48px,4.6vw,74px);font-weight:800;line-height:1.04;letter-spacing:-2px;border-left:3px solid #c91431;padding:3px 0 22px 22px;margin-bottom:24px}
.steel-headline .steel-word{display:block}
.home-carousel .steel-headline:before{content:'';position:absolute;left:-7px;top:0;width:11px;height:11px;background:#c91431}
.home-carousel .steel-headline:after{content:'';position:absolute;left:22px;bottom:0;width:88px;height:5px;background:#c91431;box-shadow:100px 0 0 -1px #e8b7c0}
@media(max-width:1100px){.home-carousel .steel-headline{font-size:54px}}
@media(max-width:700px){.home-carousel .steel-headline{font-size:clamp(44px,11.5vw,62px);letter-spacing:-1.5px;padding-left:18px}.home-carousel .steel-headline:after{left:18px}}
