:root{--ink:#181c1b;--muted:#626661;--paper:#f5f4ef;--orange:#ed792f;--line:#dcded7;--font:'Manrope',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:102px}body.isler-site{margin:0;color:var(--ink);background:var(--paper);font:14px/1.7 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}::selection{background:var(--orange);color:#141818}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.icon{display:inline-block;vertical-align:middle;flex-shrink:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:99999;background:var(--orange);padding:12px 20px;color:var(--ink)}.skip-link:focus{top:10px}.utility-bar{background:#101413;color:#b6b9b5;font-size:10px;letter-spacing:1.2px}.utility-inner{display:flex;align-items:center;justify-content:space-between;height:37px}.utility-inner>span:first-child{display:flex;align-items:center;gap:9px}.utility-inner a{letter-spacing:.2px;font-size:11px}.utility-inner .icon{width:13px;height:13px;margin-left:10px}.status-dot{width:5px;height:5px;background:var(--orange);border-radius:50%;display:inline-block}.utility-time{margin-left:25px;color:#fff}.site-header{position:sticky;top:0;background:#1a1e1d;z-index:50;border-bottom:1px solid #ffffff12;color:#fff}.admin-bar .site-header{top:32px}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:62px;height:62px;object-fit:contain}.brand strong{display:block;font-family:var(--display);font-size:29px;line-height:1.1;font-weight:600;letter-spacing:1.2px}.brand small{display:block;color:#b4b7b3;font-size:8px;letter-spacing:2.8px;margin-top:7px}.main-nav{display:flex;gap:34px;align-items:center}.main-nav>a{font-size:12px;font-weight:600;position:relative;padding:12px 0;color:#d6d8d3}.main-nav>a:after{content:'';position:absolute;bottom:5px;left:0;right:100%;height:2px;background:var(--orange);transition:right .2s}.main-nav>a:hover:after,.main-nav>a.active:after{right:0}.header-cta{border:1px solid #ffffff40;display:flex;align-items:center;gap:24px;padding:13px 18px;font-size:12px;font-weight:600;transition:background .2s}.header-cta:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}.header-cta .icon{width:19px;height:19px;color:var(--orange)}.header-cta:hover .icon{color:var(--ink)}.main-nav .mobile-call,.menu-toggle{display:none}.hero{position:relative;min-height:670px;height:calc(100svh - 131px);max-height:870px;background:#202522;color:white;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.hero-image,.hero-shade,.hero-grid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center 52%}.hero-shade{background:linear-gradient(90deg,rgba(10,15,14,.93) 0%,rgba(10,15,14,.75) 35%,rgba(10,15,14,.13) 75%),linear-gradient(0deg,rgba(10,15,14,.85),transparent 30%)}.hero-grid{opacity:.2;background:linear-gradient(90deg,transparent calc(25% - 1px),#adb4a338 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),#adb4a338 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),#adb4a338 75%,transparent calc(75% + 1px))}.hero-content{position:relative;padding:45px 0 100px}.eyebrow{display:flex;align-items:center;gap:10px;color:#666b64;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:2px;margin-bottom:24px}.tiny-cross{color:var(--orange);font-size:23px;line-height:.7;font-weight:400}.eyebrow.light{color:#d9dcd5}.hero h1{font-family:var(--display);font-size:clamp(70px,7.6vw,112px);font-weight:600;line-height:1.02;letter-spacing:-1.5px}.hero h1 em{color:var(--orange);font-style:normal}.hero-content>p{max-width:470px;font-size:14px;line-height:1.9;margin-top:25px;color:#d0d2cc}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 23px;font-size:12px;font-weight:800;min-height:55px;transition:background .2s,transform .2s}.button .icon{width:20px;height:20px}.button:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:#151b16}.button-orange:hover{background:#ffa264}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;font-weight:600}.text-link:hover{color:var(--orange)}.text-link .icon{width:20px}.hero-foot{position:absolute;bottom:29px;left:0;right:0;display:flex;justify-content:space-between;align-items:end;line-height:1.9;font-size:9px;letter-spacing:1.5px;color:#b7bbb4}.hero-foot b{color:#eee;font-weight:500}.hero-foot>a{display:flex;align-items:center;gap:22px}.scroll-arrow{display:grid;place-items:center;width:34px;height:44px;border:1px solid #ffffff45;font-size:20px;color:var(--orange)}.hero-coordinate{text-align:right}.specialties{background:#202522;color:#eee;border-top:1px solid #ffffff16}.specialty-grid{display:grid;grid-template-columns:repeat(3,1fr)}.specialty-grid>a{display:flex;align-items:center;gap:26px;padding:25px 34px;border-right:1px solid #ffffff15;font-family:var(--display);font-size:25px;transition:background .2s}.specialty-grid>a:first-child{border-left:1px solid #ffffff15}.specialty-grid>a:hover{background:#2c322d}.specialty-no{font-family:var(--font);font-size:10px;letter-spacing:1px;color:var(--orange)}.specialty-grid .icon{margin-left:auto;color:#92998e}.section-pad{padding-block:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:45px}.section-heading h2,.craft-content h2,.contact h2{font-family:var(--display);font-size:62px;font-weight:600;line-height:1.05;letter-spacing:-.6px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{max-width:390px;font-size:13px;line-height:1.9;color:var(--muted);padding-bottom:4px}.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);align-items:start}.service-item{background:#f8f8f4;border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-self:stretch}.service-item summary{display:flex;align-items:center;gap:16px;padding:22px 20px;min-height:105px;cursor:pointer;list-style:none;transition:background .2s}.service-item summary::-webkit-details-marker{display:none}.service-item summary:hover{background:#eeeee6}.service-number{font-size:10px;font-weight:600;color:#898d84;align-self:flex-start;margin-top:3px}.service-item h3{font-size:13px;font-weight:700;line-height:1.65;flex:1}.service-plus{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;color:#797f74}.service-plus svg{width:16px;height:16px;transition:transform .2s}.service-item[open]{background:#eeeee6}.service-item[open] .service-plus{color:#a4490e}.service-item[open] .service-plus svg{transform:rotate(45deg)}.service-item>p{font-size:12px;line-height:1.9;color:#5b6158;padding:0 26px 25px 48px}.service-note{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:10px;color:#68705f;margin-top:22px}.service-note>span{display:flex;align-items:center;gap:9px}.service-note .icon{width:15px;height:15px}.service-note a{color:#2e3828;font-weight:700;display:flex;align-items:center;gap:12px}.craft-panel{display:grid;grid-template-columns:1fr 1fr;margin-top:62px;background:#232a25;color:#fff;min-height:382px}.craft-image{position:relative;overflow:hidden}.craft-image>img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;bottom:14px;left:20px;font-size:8px;letter-spacing:1.4px;color:#e6e8e1;background:#171c1b99;padding:3px 8px}.craft-content{padding:52px 54px;position:relative;overflow:hidden}.craft-content>.eyebrow{font-size:9px;letter-spacing:1.5px}.craft-content>h2{font-size:47px;max-width:330px;position:relative;z-index:1}.craft-content>p{max-width:360px;color:#bac1b5;line-height:1.9;font-size:12px;margin-top:21px;position:relative;z-index:1}.craft-content .text-link{margin-top:25px;position:relative;z-index:1}.craft-content .text-link .icon{color:var(--orange)}.craft-mark{position:absolute;right:-2px;bottom:-80px;font:600 310px/1 var(--display);color:#ffffff03;pointer-events:none}.references{padding-top:5px}.section-side{font-size:9px;letter-spacing:1.5px;text-align:right;line-height:2.3;color:#70776b}.section-side b{font-weight:600;color:#30382c}.reference-card{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);min-height:400px;background:#eeefe8}.reference-copy{padding:45px 48px}.project-label{font-size:9px;font-weight:700;letter-spacing:1.7px;display:inline-block;padding:5px 11px;border:1px solid #c9cfc1;color:#59654f}.reference-copy h3{font-family:var(--display);font-size:49px;font-weight:600;line-height:1.1;margin:25px 0 14px;max-width:300px}.project-location{display:flex;align-items:center;gap:8px;font-size:11px;color:#65705d}.project-location .icon{width:16px;height:16px}.reference-copy p{font-size:12px;line-height:1.9;color:#697060;max-width:360px;margin-top:20px}.button-outline{border:1px solid #c9cfc1;padding:12px 16px;min-height:45px;font-size:10px;margin-top:25px;gap:18px}.button-outline:hover{background:#e0e4d9}.reference-visual{position:relative;min-height:380px;overflow:hidden}.reference-visual>img{width:100%;height:100%;object-fit:cover;object-position:75% center}.reference-visual:after{position:absolute;inset:45% 0 0;content:'';background:linear-gradient(transparent,#131a19c9);pointer-events:none}.reference-visual figcaption{position:absolute;bottom:16px;left:20px;right:16px;color:#e5e8df;font-size:9px;z-index:1}.project-stamp{position:absolute;top:22px;right:22px;border:1px solid #ffffff60;display:flex;align-items:center;gap:25px;padding:8px 12px;color:#fff;font-size:9px;letter-spacing:1px;background:#111a1455}.project-stamp .icon{width:16px;height:16px}.contact{background:#1a201c;color:#f2f3ed;position:relative;overflow:hidden}.contact:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#ffffff03 calc(25% - 1px),#ffffff03 25%);pointer-events:none}.contact .container{position:relative}.contact-heading{display:flex;justify-content:space-between;align-items:center}.contact h2{font-size:76px;max-width:730px}.contact-orbit{width:98px;height:98px;border:1px solid #6b7860;border-radius:50%;display:grid;place-items:center;color:var(--orange);margin-right:25px;transition:background .2s,color .2s;flex-shrink:0}.contact-orbit:hover{background:var(--orange);color:#161c16}.contact-orbit .icon{width:42px;height:42px;stroke-width:1}.contact-description{color:#aeb8a7;font-size:12px;max-width:550px;margin-top:25px}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;margin-top:55px;border-top:1px solid #ffffff23;padding-top:34px}.contact-cell{padding:0 28px;border-right:1px solid #ffffff20;min-width:0}.contact-cell:first-child{padding-left:0}.contact-cell:last-child{border:0;padding-right:0}.contact-label{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1.5px;color:#adb8a4;margin-bottom:21px}.contact-label .icon{color:var(--orange);width:19px;height:19px}.contact-phone{font-family:var(--display);font-size:30px;line-height:1.5;display:block;width:fit-content;letter-spacing:1px}.contact-phone:hover,.contact-email:hover{color:var(--orange)}.contact-email{font-size:18px;font-weight:500;line-height:1.7;overflow-wrap:anywhere}.contact-hint{display:block;margin-top:12px;font-size:11px;color:#929e8b}.contact-cell address{font-style:normal;font-size:12px;line-height:1.9;color:#c2cbbc;max-width:350px}.contact-small{display:flex;align-items:center;gap:12px;font-size:10px;margin-top:20px;color:#d4dacd}.contact-small .icon{width:14px;height:14px;color:var(--orange)}.contact-small:hover{color:var(--orange)}.site-footer{background:#131814;color:#dce2d7;padding:38px 0 24px}.footer-main{display:flex;justify-content:space-between;align-items:center;padding-bottom:30px}.footer-main .brand strong{font-size:25px}.footer-main .brand small{font-size:9px;letter-spacing:.2px;text-transform:none;color:#a8b19f}.footer-main .brand img{width:55px;height:55px}.back-top{font-size:9px;letter-spacing:1.3px;display:flex;align-items:center;gap:16px}.back-top .icon{transform:rotate(-90deg);width:16px;height:16px;color:var(--orange)}.footer-bottom{border-top:1px solid #ffffff14;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#a2ad99;letter-spacing:.3px}.floating-contact{position:fixed;bottom:22px;right:25px;z-index:60;display:flex;align-items:center;gap:10px;background:#e9803b;color:#131b12;padding:13px;border:1px solid #f3ac7d;box-shadow:0 4px 20px #0002;transition:background .2s}.floating-contact span{font-size:11px;font-weight:700;max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .2s;margin-left:-10px}.floating-contact:hover span,.floating-contact:focus-visible span{max-width:150px;margin-left:0}.floating-contact:hover{background:#ffa264}
@media(min-width:1500px){.container{width:min(1360px,calc(100% - 140px))}.hero-content{padding-bottom:80px}.hero h1{font-size:118px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.header-inner{gap:20px}.main-nav{gap:22px}.header-cta{gap:13px;padding:12px;font-size:10px}.brand strong{font-size:25px}.brand img{width:54px;height:54px}.hero h1{font-size:88px}.section-heading{gap:40px}.section-heading h2{font-size:52px}.section-heading>p{max-width:320px}.craft-content{padding:40px 35px}.reference-copy{padding:35px}.contact h2{font-size:65px;max-width:650px}.contact-email{font-size:15px}.contact-cell{padding:0 20px}.specialty-grid>a{padding:23px 20px;gap:18px}.service-item summary{padding:18px 15px;gap:12px}.service-item h3{font-size:12px}}
@media(max-width:900px){html{scroll-padding-top:80px}.header-inner{height:80px}.header-cta{margin-left:auto}.menu-toggle{display:flex;width:44px;height:44px;background:none;border:1px solid #ffffff30;flex-direction:column;align-items:center;justify-content:center;gap:6px}.menu-toggle span{display:block;width:18px;height:1px;background:#fff;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#1b211b;border-top:1px solid #ffffff22;box-shadow:0 15px 20px #0003;padding:20px 32px;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav>a{font-size:15px;padding:16px 0;border-bottom:1px solid #ffffff15}.main-nav .mobile-call{display:flex;justify-content:space-between;align-items:center;color:var(--orange);border:0}.hero{min-height:630px;height:calc(100svh - 117px);max-height:800px}.hero h1{font-size:85px}.hero-shade{background:linear-gradient(90deg,#0a0f0ee8,#0a0f0e88 65%,#0a0f0e33),linear-gradient(0deg,#0a0f0ed9,transparent 35%)}.hero-coordinate{display:none}.section-pad{padding-block:75px}.section-heading{gap:25px;align-items:flex-start}.section-heading h2{font-size:49px;max-width:360px}.section-heading>p{max-width:280px;font-size:12px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-item summary{min-height:93px;padding:21px}.service-item h3{font-size:13px}.service-note{align-items:start}.service-note>span{max-width:300px}.service-note>a{max-width:210px}.craft-panel{min-height:370px}.craft-content{padding:35px 28px}.craft-content h2{font-size:42px}.craft-content>.eyebrow{font-size:8px}.references{padding-top:0}.reference-card{grid-template-columns:1fr 1fr}.reference-copy{padding:30px}.reference-copy h3{font-size:43px}.button-outline{gap:8px}.contact h2{font-size:60px;max-width:540px}.contact-orbit{width:76px;height:76px;margin-right:0}.contact-grid{grid-template-columns:1fr 1fr;row-gap:35px}.contact-cell:nth-child(2){border:0;padding-right:0}.contact-cell:last-child{grid-column:1/-1;border-top:1px solid #ffffff20;padding:28px 0 0}.contact-cell address{max-width:500px}.contact-phone{font-size:32px}.contact-email{font-size:18px}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.utility-inner{height:29px;font-size:8px;letter-spacing:.7px}.utility-inner>a{display:none}.utility-time{display:none}.utility-inner>span:last-child{font-size:7px}.header-inner{height:76px;gap:12px}.brand{gap:9px}.brand img{width:49px;height:49px}.brand strong{font-size:24px;letter-spacing:.8px}.brand small{font-size:7px;letter-spacing:2px;margin-top:5px}.header-cta{display:none}.menu-toggle{margin-left:auto;width:40px;height:40px}.main-nav{padding:15px 20px}.hero{min-height:620px;height:calc(100svh - 105px);max-height:780px;justify-content:flex-start}.hero-image{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#0a0f0ed9,#0a0f0e75),linear-gradient(0deg,#0a0f0ef5,transparent 50%)}.hero-content{padding:73px 0 110px}.hero .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:25px;gap:8px}.hero h1{font-size:clamp(57px,13.8vw,81px);line-height:1.05;letter-spacing:-.8px}.hero-content>p{font-size:12px;max-width:330px;margin-top:24px;line-height:1.9}.hero-actions{flex-wrap:wrap;gap:22px;margin-top:29px}.hero-actions .button{padding:15px 20px;font-size:11px;gap:30px;min-height:51px}.hero-actions .text-link{font-size:10px;gap:17px}.hero-foot{bottom:25px;font-size:7px;letter-spacing:1px}.hero-foot>a{gap:12px;max-width:145px;font-size:7px;text-align:right}.scroll-arrow{width:28px;height:35px;flex-shrink:0}.specialty-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.specialty-grid>a{padding:17px 13px;gap:8px;display:flex;flex-direction:column;align-items:flex-start;font-size:19px;line-height:1.15}.specialty-no{font-size:8px}.specialty-grid .icon{display:none}.section-pad{padding-block:60px}.section-heading{display:block;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:14px}.eyebrow{font-size:9px;letter-spacing:1.5px}.section-heading h2{font-size:44px;max-width:330px}.section-heading>p{max-width:100%;margin-top:21px;font-size:12px;line-height:1.9}.service-list{grid-template-columns:1fr}.service-item summary{min-height:76px;padding:20px 15px;gap:16px}.service-item h3{font-size:12px;line-height:1.6}.service-item>p{padding-left:45px}.service-number{font-size:9px}.service-note{display:block;margin-top:22px;font-size:10px}.service-note>span{max-width:100%;align-items:flex-start}.service-note>a{max-width:100%;margin-top:14px;padding-left:24px}.service-note .icon{flex-shrink:0}.craft-panel{display:flex;flex-direction:column;margin-top:37px}.craft-image{height:245px}.craft-content{padding:32px 27px 36px}.craft-content h2{font-size:43px;max-width:300px}.craft-content>p{font-size:12px}.craft-content>.eyebrow{font-size:8px;margin-bottom:22px}.references{padding-top:0}.section-side{display:none}.reference-card{grid-template-columns:1fr}.reference-copy{padding:29px 25px 33px}.reference-copy h3{font-size:43px;max-width:250px;margin-top:23px}.reference-copy p{font-size:12px}.reference-visual{min-height:260px;height:260px}.reference-visual figcaption{font-size:8px;left:15px;bottom:13px}.project-stamp{right:15px;top:15px;font-size:8px}.contact h2{font-size:52px;max-width:290px}.contact-heading{align-items:flex-end;gap:10px}.contact-orbit{width:49px;height:49px;margin-bottom:4px}.contact-orbit .icon{width:25px;height:25px}.contact .eyebrow{margin-bottom:22px}.contact-description{font-size:12px;max-width:330px}.contact-grid{grid-template-columns:1fr;margin-top:35px;padding-top:26px;row-gap:25px}.contact-cell,.contact-cell:first-child,.contact-cell:nth-child(2),.contact-cell:last-child{padding:0 0 25px;border:0;border-bottom:1px solid #ffffff20}.contact-cell:last-child{padding-bottom:0;border:0}.contact-label{margin-bottom:14px;font-size:9px}.contact-phone{font-size:31px}.contact-email{font-size:18px}.contact-cell address{max-width:310px}.contact-small{margin-top:14px}.site-footer{padding:28px 0 70px}.footer-main{gap:20px;padding-bottom:25px}.footer-main .brand img{width:43px;height:43px}.footer-main .brand strong{font-size:22px}.footer-main .brand small{font-size:7px;letter-spacing:0}.back-top{font-size:7px;gap:7px}.back-top .icon{width:13px;height:13px}.footer-bottom{display:block;font-size:7px;line-height:1.9;padding-top:20px}.footer-bottom>span{display:block;margin-bottom:5px}.floating-contact{bottom:16px;right:16px;padding:11px}.floating-contact svg{width:23px;height:23px}.floating-contact span{display:none}.admin-bar .site-header{top:46px}}
@media(max-width:380px){.brand strong{font-size:21px}.hero h1{font-size:52px}.hero .eyebrow{font-size:7px;letter-spacing:1px}.hero-content{padding-top:60px}.specialty-grid>a{font-size:17px;padding-inline:10px}.contact h2{font-size:45px}.contact-orbit{width:42px;height:42px}.footer-main .brand small{max-width:160px}.back-top{font-size:6px;gap:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Simplified layout with readable type and no decorative arrows. */
.hero{height:calc(100svh - 94px)}
.hero-content{padding:65px 0}
.main-nav>a,.header-cta,.button,.text-link{font-size:15px}
.hero-content>p{font-size:17px;max-width:540px}
.section-heading>p,.service-item h3,.service-item>p,.craft-content>p,.reference-copy p,.contact-description,.contact-cell address{font-size:16px}
.service-item summary{padding:24px;min-height:110px}
.service-item>p{padding:0 24px 25px}
.service-note{font-size:14px;line-height:1.8}
.service-note>span{max-width:55%}
.service-note>a{max-width:40%}
.project-location,.contact-label,.contact-small,.contact-hint,.footer-main .brand small,.footer-bottom{font-size:14px;letter-spacing:0}
.reference-copy h3{margin-top:0;font-size:54px;max-width:380px}
.reference-copy p{max-width:420px}
.reference-visual>img{object-position:center}
.reference-visual figcaption{font-size:14px;line-height:1.6;background:#141b16c9;padding:8px 12px;left:14px;right:14px;bottom:14px}
.image-note{font-size:14px;letter-spacing:0}
.contact-email{font-size:19px}
.contact h2{max-width:900px}
.footer-bottom{line-height:1.8;align-items:flex-start}
.footer-bottom>span:last-child{flex-shrink:0}
@media(max-width:1100px){.main-nav{gap:20px}.main-nav>a,.header-cta{font-size:14px}.header-inner{gap:16px}.contact-email{font-size:17px}.service-item summary{padding:20px}.service-item>p{padding-inline:20px}}
@media(max-width:900px){.hero{height:calc(100svh - 80px)}.main-nav>a{font-size:16px}.section-heading>p{max-width:330px}.reference-copy{padding:28px}.reference-copy h3{font-size:46px}.button-outline{font-size:14px;text-align:left}.contact h2{max-width:100%}.contact-email{font-size:19px}}
@media(max-width:600px){.hero{height:auto;min-height:620px;max-height:none;justify-content:center}.hero-content{padding:70px 0}.hero-content>p{font-size:16px;max-width:100%}.hero-actions{gap:24px}.hero-actions .button,.hero-actions .text-link{font-size:15px}.section-heading>p{max-width:100%;font-size:16px}.service-item summary{min-height:85px;padding:20px 18px}.service-item h3,.service-item>p{font-size:16px}.service-item>p{padding:0 18px 22px}.service-note>span,.service-note>a{max-width:100%}.service-note>a{padding-left:0}.craft-content>p,.reference-copy p,.contact-description,.contact-cell address{font-size:16px}.reference-copy h3{font-size:46px}.reference-visual{height:290px}.contact-label,.contact-small{font-size:14px}.contact h2{max-width:100%}.footer-main .brand small{font-size:14px;max-width:100%;line-height:1.6}.footer-bottom{font-size:14px}.site-footer{padding-bottom:30px}.specialty-grid>a{font-size:20px;padding:22px 13px}.footer-main .brand strong{font-size:25px}}
@media(max-width:380px){.hero h1{font-size:50px}.hero-actions .text-link{font-size:15px}.specialty-grid>a{font-size:18px;padding-inline:10px}.reference-copy{padding:25px 20px}.reference-copy h3{font-size:43px}.footer-main .brand small{max-width:230px}}

/* Service photographs, editable from the home page. */
.service-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:38px}
.service-photo-card{margin:0;min-width:0;background:#202522;color:#fff;overflow:hidden}
.service-photo-card .service-photo{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block}
.service-photo-card figcaption{padding:20px 24px;font-family:var(--display);font-size:30px;font-weight:600;line-height:1.25}
@media(max-width:900px){.service-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-photo-card figcaption{font-size:28px;padding:18px 20px}}
@media(max-width:600px){.service-gallery{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.service-photo-card figcaption{font-size:30px;padding:18px 22px}}

/* Content-only presentation: service names, imagery and contact details. */
.main-nav>a,.header-cta,.button,.text-link,.hero-actions .button,.hero-actions .text-link{font-size:17px}
.hero-actions{margin-top:40px}
.service-list>.service-item{padding:26px;display:flex;align-items:center;min-height:110px}
.service-list>.service-item h3{font-size:19px;line-height:1.6}
.reference-copy{display:flex;flex-direction:column;justify-content:center;gap:24px}
.reference-copy h3{margin:0}
.project-location{font-size:20px}
.contact-label,.contact-small,.contact-cell address,.reference-visual figcaption,.footer-main .brand small,.footer-bottom{font-size:16px}
.contact-cell address{line-height:1.8}
.contact-grid{margin-top:40px}
.footer-bottom{flex-wrap:wrap}
@media(max-width:1100px){.header-inner{gap:18px}.main-nav{gap:20px}.header-cta,.main-nav>a{font-size:16px}.brand strong{font-size:25px}.header-cta{padding:12px}}
@media(max-width:900px){.service-list>.service-item{padding:22px}.service-list>.service-item h3{font-size:18px}}
@media(max-width:600px){.hero{min-height:500px}.hero-content{padding:70px 0}.hero-actions{gap:28px}.hero-actions .button,.hero-actions .text-link{font-size:17px}.service-list>.service-item{min-height:84px;padding:21px}.service-list>.service-item h3{font-size:18px}.reference-copy{padding:32px 26px;gap:20px}.project-location{font-size:20px}.footer-main .brand small{font-size:16px;max-width:240px}.footer-bottom{font-size:16px}.contact-label,.contact-small,.contact-cell address,.reference-visual figcaption{font-size:16px}}

/* Three service groups, each with its own photograph and readable service list. */
.services .section-heading{margin-bottom:42px}
.services .section-heading:after{content:'';height:3px;width:100px;background:var(--orange);align-self:center}
.service-deck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.service-group{min-width:0;background:#fff;border:1px solid #dedfd8;box-shadow:0 12px 30px #17201706}
.service-group-cover{position:relative;min-height:270px;background:#202522;overflow:hidden;display:flex;align-items:flex-end}
.service-group-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 12%,#10181130 40%,#101811e8 100%);pointer-events:none}
.service-group-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.service-group:hover .service-group-image{transform:scale(1.035)}
.service-group-cover h3{position:relative;z-index:1;color:#fff;font-family:var(--display);font-size:46px;line-height:1.1;font-weight:600;padding:0 28px 28px;margin:0;max-width:100%}
.service-group-list{list-style:none;margin:0;padding:12px 28px 22px;border-top:4px solid var(--orange)}
.service-group-list li{font-size:19px;font-weight:600;line-height:1.55;padding:23px 0;border-bottom:1px solid #e4e6df;min-height:79px;display:flex;align-items:center}
.service-group-list li:last-child{border-bottom:0}
/* Original uploaded artwork; object-fit removes only the image's black outer bars. */
.header-inner{height:116px}
.brand img.original-logo{width:72px;height:96px;object-fit:cover;object-position:center}
.footer-main .brand img.original-logo{width:90px;height:120px}
.hero{height:calc(100svh - 116px)}
html{scroll-padding-top:130px}
@media(max-width:1100px){.service-deck{gap:18px}.service-group-cover{min-height:240px}.service-group-cover h3{font-size:39px;padding:0 22px 24px}.service-group-list{padding:10px 22px 18px}.service-group-list li{font-size:18px;min-height:90px}}
@media(max-width:900px){.service-deck{grid-template-columns:1fr;gap:28px}.service-group{display:grid;grid-template-columns:.85fr 1.15fr}.service-group-cover{min-height:380px}.service-group-list{border-top:0;border-left:4px solid var(--orange)}.service-group-list li{min-height:70px;padding:19px 0}.service-group-cover h3{font-size:43px}.header-inner{height:96px}.brand img.original-logo{width:60px;height:80px}.hero{height:calc(100svh - 96px)}html{scroll-padding-top:110px}}
@media(max-width:600px){.services .section-heading{display:flex;gap:20px;margin-bottom:30px}.services .section-heading:after{width:42px;flex-shrink:0}.service-group{display:block}.service-group-cover{min-height:250px}.service-group-cover h3{font-size:43px;padding:0 25px 25px}.service-group-list{border-left:0;border-top:4px solid var(--orange);padding:6px 24px 12px}.service-group-list li{font-size:19px;min-height:76px;padding:20px 0}.header-inner{height:88px}.brand img.original-logo{width:54px;height:72px}.footer-main .brand img.original-logo{width:72px;height:96px}.hero{height:auto}.footer-main .brand small{max-width:220px}html{scroll-padding-top:102px}}
@media(max-width:380px){.service-group-list{padding-inline:20px}.service-group-list li{font-size:18px}.service-group-cover h3{font-size:38px;padding-inline:20px}.service-group-cover{min-height:220px}.footer-main .brand small{max-width:180px}}

/* Reference footer layout: copyright left, linked agency mark right. */
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:30px;padding:28px 0 8px;border-top:1px solid #ffffff24}
.footer-copyright{font-size:16px;color:#b1baaa;line-height:1.8}
.footer-agency{display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:64px;min-height:44px}
.footer-agency img{display:block;width:54px;height:24px;object-fit:contain}
.footer-agency:hover{opacity:.8}
@media(max-width:600px){.footer-bottom{gap:20px;padding-top:24px}.footer-bottom>.footer-copyright{margin:0;max-width:calc(100% - 84px);font-size:16px}.footer-agency{min-width:54px}.footer-agency img{width:50px;height:auto}}

/* Compact original-brand lockup. The source artwork remains unchanged. */
.site-header .header-inner{height:100px;gap:24px}
.site-header .brand{gap:14px}
.brand img.original-logo{mix-blend-mode:lighten;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}
.site-header .brand img.original-logo{width:78px;height:88px;object-fit:cover;object-position:50% 52%}
.site-header .brand strong{font-size:30px;letter-spacing:.4px;line-height:1.1}
.hero{height:calc(100svh - 100px)}
html{scroll-padding-top:114px}
/* Large photography paired with a selected service group. */
.service-tabs[hidden],.service-panel[hidden]{display:none!important}
.service-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#e9ebe4;border:1px solid #d7dbd1;margin-bottom:24px}
.service-tab{border:0;border-right:1px solid #d0d5ca;background:transparent;padding:24px 20px;font-family:var(--display);font-size:30px;font-weight:600;line-height:1.2;text-align:center;transition:background .2s,color .2s}
.service-tab:last-child{border-right:0}
.service-tab[aria-selected=true]{background:var(--orange);color:#121914}
.service-tab:hover:not([aria-selected=true]){background:#dce1d5}
.service-tab:focus-visible{outline:3px solid #202a21;outline-offset:-6px}
.service-panels{display:grid;gap:28px}
.service-panel{display:grid;grid-template-columns:1.05fr 1fr;background:#1c2520;color:#f5f5ee;min-height:530px;border-bottom:4px solid var(--orange)}
.service-panel-photo{position:relative;min-width:0;overflow:hidden;background:#29332c}
.service-panel-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-panel-content{padding:44px 46px}
.service-panel-content h3{font:600 58px/1.05 var(--display);letter-spacing:-.3px;margin:0 0 25px}
.service-panel-list{list-style:none;margin:0;padding:0}
.service-panel-list li{padding:20px 0;border-bottom:1px solid #ffffff24;font-size:20px;font-weight:500;line-height:1.5}
.service-panel-list li:last-child{border-bottom:0;padding-bottom:0}
@media(max-width:1100px){.service-panel-content{padding:38px 32px}.service-panel-content h3{font-size:50px}.service-panel-list li{font-size:19px}.service-tab{font-size:27px}.site-header .header-inner{gap:18px}.site-header .brand strong{font-size:27px}}
@media(max-width:900px){.site-header .header-inner{height:90px}.site-header .brand img.original-logo{width:70px;height:78px}.service-panel{grid-template-columns:1fr;min-height:0}.service-panel-photo{height:340px}.service-panel-content{padding:36px}.service-panel-list{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.service-panel-list li{font-size:19px}.service-panel-list li:last-child{padding-bottom:20px}.hero{height:calc(100svh - 90px)}html{scroll-padding-top:104px}}
@media(max-width:600px){.site-header .header-inner{height:84px;gap:12px}.site-header .brand{gap:9px}.site-header .brand img.original-logo{width:65px;height:74px}.site-header .brand strong{font-size:27px;letter-spacing:.2px}.service-tabs{margin-bottom:18px}.service-tab{font-size:20px;padding:20px 7px;min-height:84px}.service-panel-photo{height:260px}.service-panel-content{padding:28px 25px 32px}.service-panel-content h3{font-size:45px;margin-bottom:14px}.service-panel-list{display:block}.service-panel-list li{font-size:19px;padding:19px 0}.service-panel-list li:last-child{padding-bottom:0}.hero{height:auto}.footer-agency{width:100px;min-width:100px}.footer-bottom>.footer-copyright{max-width:calc(100% - 120px)}html{scroll-padding-top:98px}}
@media(max-width:380px){.site-header .brand strong{font-size:23px}.site-header .brand img.original-logo{width:59px;height:70px}.service-tab{font-size:18px;padding-inline:5px}.service-panel-content{padding-inline:21px}.service-panel-content h3{font-size:41px}.service-panel-list li{font-size:18px}}

/* Transparent PNG brand artwork, without a duplicate wordmark. */
.site-header .header-inner{height:116px}
.site-header .brand{display:flex;align-items:center;flex-shrink:0}
.site-header .brand img.brand-logo{display:block;width:144px;height:108px;object-fit:contain;object-position:center;mix-blend-mode:normal;mask-image:none}
.footer-main .brand img.brand-logo{display:block;width:180px;height:135px;object-fit:contain;mix-blend-mode:normal;mask-image:none}
.hero{height:calc(100svh - 116px)}
html{scroll-padding-top:130px}
@media(max-width:900px){.site-header .header-inner{height:100px}.site-header .brand img.brand-logo{width:122px;height:92px}.hero{height:calc(100svh - 100px)}html{scroll-padding-top:114px}}
@media(max-width:600px){.site-header .header-inner{height:96px}.site-header .brand img.brand-logo{width:116px;height:87px}.footer-main .brand{align-items:center;gap:22px}.footer-main .brand img.brand-logo{width:136px;height:102px;flex-shrink:0}.footer-main .brand small{max-width:180px}.hero{height:auto}html{scroll-padding-top:110px}}
@media(max-width:380px){.footer-main .brand{flex-wrap:wrap}.footer-main .brand small{max-width:100%}}
@media(max-width:600px){.footer-main .brand{width:100%;max-width:100%;flex-shrink:1}.footer-main .brand>span{min-width:0;flex:1}.section-heading>div,.contact-heading>div{min-width:0;max-width:100%}.section-heading h2,.contact-heading h2{overflow-wrap:normal}}
@media(max-width:380px){.footer-main .brand>span{flex-basis:100%}.section-heading h2{font-size:44px}}

/* Service introductions and technical scope, editable in the home page fields. */
.service-panel{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);min-height:0}
.service-panel-photo{min-height:440px}
.service-panel-content{padding:44px;align-self:center;min-width:0}
.service-panel-content h3{font-size:46px;line-height:1.15;margin-bottom:24px}
.service-panel-intro{font-size:18px;line-height:1.85;color:#d5dbd6}
.service-panel-details{grid-column:1/-1;padding:40px 44px 44px;border-top:1px solid #ffffff24;min-width:0}
.service-scope-title{font-family:var(--display);font-size:30px;line-height:1.3;margin:0 0 12px;font-weight:600}
.service-panel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.service-panel-list li,.service-panel-list li:last-child{padding:24px 0;border-bottom:1px solid #ffffff24;min-width:0}
.service-panel-list h5{font-family:var(--font);font-size:20px;line-height:1.5;color:#fff;font-weight:600;margin:0 0 10px}
.service-panel-list p{font-size:18px;line-height:1.8;color:#d5dbd6;font-weight:400;margin:0}
.service-cta{margin-top:32px;max-width:100%;white-space:normal;text-align:center;justify-content:center;font-size:18px;line-height:1.5}
@media(max-width:1100px){.service-panel-content{padding:32px}.service-panel-content h3{font-size:40px}.service-panel-details{padding:32px}.service-panel-list{column-gap:32px}}
@media(max-width:900px){.service-panel{grid-template-columns:minmax(0,1fr)}.service-panel-photo{min-height:0;height:300px}.service-panel-content{padding:32px}.service-panel-details{grid-column:1;padding:32px}.service-panel-content h3{font-size:42px}}
@media(max-width:600px){.service-panel-photo{height:230px}.service-panel-content,.service-panel-details{padding:28px 24px}.service-panel-content h3{font-size:34px;line-height:1.2}.service-panel-intro,.service-panel-list p{font-size:18px;line-height:1.75}.service-panel-list{grid-template-columns:minmax(0,1fr)}.service-panel-list h5{font-size:20px}.service-scope-title{font-size:28px}.service-cta{width:100%;font-size:17px;padding:18px}}
@media(max-width:380px){.service-panel-content,.service-panel-details{padding:24px 20px}.service-panel-content h3{font-size:30px}.service-panel-list h5{font-size:19px}.service-panel-intro,.service-panel-list p{font-size:17px}}

/* Service overview cards with expandable technical specifications. */
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.service-tile{position:relative;isolation:isolate;overflow:hidden;min-width:0;background:#141a18;color:#fff;border-bottom:3px solid var(--orange)}
.service-tile-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.service-tile-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1);transition:transform 1.2s cubic-bezier(.2,.65,.3,1)}
.service-tile:before,.service-tile:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.service-tile:before{background:linear-gradient(180deg,rgba(12,18,16,.12) 0,rgba(12,18,16,.65) 150px,rgba(12,18,16,.91) 350px,rgba(12,18,16,.97) 100%)}
.service-tile:after{background:linear-gradient(180deg,rgba(237,112,29,.45),rgba(136,53,12,.56) 280px,rgba(37,22,15,.96) 100%);opacity:0;transition:opacity .65s ease}
.service-tile-body{position:relative;display:flex;flex-direction:column;height:100%;padding:190px 40px 40px;gap:32px}
.service-tile-intro h3{font:600 clamp(44px,4.2vw,64px)/1.05 var(--display);letter-spacing:-.5px;margin:0 0 22px;color:#fff}
.service-tile-heading{font:600 27px/1.35 var(--display);margin:0 0 20px;color:#fff}
.service-tile p{font-size:18px;line-height:1.8;color:#f1f3f1;font-weight:400;margin:0}
.service-tile-scope-title{font:600 27px/1.3 var(--display);margin:0 0 8px;color:#fff}
.service-tile-list{list-style:none;margin:0;padding:0}
.service-tile-list li{padding:22px 0;border-bottom:1px solid #ffffff30}
.service-tile-list h5{font:600 20px/1.5 var(--font);margin:0 0 9px;color:#fff}
.service-tile-cta{position:relative;align-self:flex-start;max-width:calc(100% - 6px);margin-top:auto;padding:12px 0;font-size:18px;font-weight:600;line-height:1.6;color:#fff;transform:translateX(0);transition:transform .35s ease}
.service-tile-cta:after{content:'';position:absolute;inset:auto 0 0;height:2px;background:var(--orange);box-shadow:0 0 0 transparent;transition:background .35s,box-shadow .35s}
.service-tile-wide{grid-column:1/-1}
.service-tile-wide .service-tile-body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px 64px;padding:64px 48px}
.service-tile-wide:before{background:linear-gradient(110deg,rgba(12,18,16,.83),rgba(12,18,16,.95))}
.service-tile-wide:after{background:linear-gradient(110deg,rgba(130,51,14,.86),rgba(37,22,15,.96))}
.service-tile-wide .service-tile-intro{grid-column:1;grid-row:1;align-self:start;padding-top:18px}
.service-tile-wide .service-tile-scope{grid-column:2;grid-row:1/3}
.service-tile-wide .service-tile-cta{grid-column:1;grid-row:2;align-self:end;justify-self:start;margin-top:0}
.service-tile:focus-within .service-tile-image{transform:scale(1.1)}
.service-tile:focus-within:after{opacity:1}
.service-tile:focus-within .service-tile-cta{transform:translateX(6px)}
.service-tile:focus-within .service-tile-cta:after{background:#ffb16e;box-shadow:0 0 14px #ff8c3b88}
@media(hover:hover) and (pointer:fine){.service-tile:hover .service-tile-image{transform:scale(1.1)}.service-tile:hover:after{opacity:1}.service-tile:hover .service-tile-cta{transform:translateX(6px)}.service-tile:hover .service-tile-cta:after{background:#ffb16e;box-shadow:0 0 14px #ff8c3b88}}
@media(max-width:1100px){.service-tile-body{padding-inline:30px}.service-tile-wide .service-tile-body{padding:48px 36px;column-gap:40px}}
@media(max-width:1024px){.service-grid{grid-template-columns:minmax(0,1fr);gap:28px}.service-tile-wide{grid-column:auto}.service-tile-body,.service-tile-wide .service-tile-body{display:flex;flex-direction:column;padding:190px 36px 36px;gap:30px}.service-tile-wide .service-tile-intro{padding-top:0}.service-tile-wide .service-tile-cta{align-self:flex-start;margin-top:auto}.service-tile-wide:before{background:linear-gradient(180deg,rgba(12,18,16,.12),rgba(12,18,16,.65) 150px,rgba(12,18,16,.91) 350px,rgba(12,18,16,.97))}.service-tile-wide:after{background:linear-gradient(180deg,rgba(237,112,29,.45),rgba(136,53,12,.56) 280px,rgba(37,22,15,.96))}.service-tile-intro h3{font-size:54px}}
@media(max-width:600px){.service-grid{gap:24px}.service-tile-body,.service-tile-wide .service-tile-body{padding:150px 24px 30px;gap:28px}.service-tile-intro h3{font-size:44px}.service-tile-heading,.service-tile-scope-title{font-size:26px}.service-tile-list h5{font-size:20px}.service-tile p,.service-tile-cta{font-size:18px;line-height:1.75}}
@media(max-width:380px){.service-tile-body,.service-tile-wide .service-tile-body{padding-inline:20px}.service-tile-intro h3{font-size:40px}.service-tile-heading,.service-tile-scope-title{font-size:25px}.service-tile p,.service-tile-cta{font-size:17px}}
@keyframes service-flow-in{from{transform:translateY(24px)}to{transform:translateY(0)}}
@supports(animation-timeline:view()){@media(max-width:1024px) and (prefers-reduced-motion:no-preference){.service-tile{animation:service-flow-in linear both;animation-timeline:view();animation-range:entry 0% entry 30%}}}
@media(prefers-reduced-motion:reduce){.service-tile,.service-tile-image,.service-tile:after,.service-tile-cta,.service-tile-cta:after{animation:none!important;transition:none!important;transform:none!important}}
/* Keep landscape project photos legible above long technical descriptions. */
.service-tile-image{height:min(100%,900px)}
.service-tile-wide .service-tile-image{height:100%}
@media(max-width:1024px){.service-tile-image,.service-tile-wide .service-tile-image{height:min(100%,780px)}}
@media(max-width:600px){.service-tile-image,.service-tile-wide .service-tile-image{height:min(100%,620px)}}
.service-tile-image{mask-image:linear-gradient(to bottom,#000 55%,transparent 100%)}
.service-tile-wide .service-tile-image{mask-image:none}
@media(max-width:1024px){.service-tile-wide .service-tile-image{mask-image:linear-gradient(to bottom,#000 55%,transparent 100%)}}

/* Compact overview: retain readable type, reveal full specifications on demand. */
.services.section-pad{padding-top:64px;padding-bottom:64px}
.service-grid{gap:22px;align-items:start}
.service-tile-body{height:auto;padding:64px 32px 28px;gap:20px}
.service-tile-intro h3{font-size:42px;margin-bottom:14px}
.service-tile-heading{font-size:24px;line-height:1.3;margin-bottom:14px}
.service-tile p{font-size:18px;line-height:1.65}
.service-tile:before{background:linear-gradient(180deg,rgba(12,18,16,.55),rgba(12,18,16,.86) 160px,rgba(12,18,16,.96) 100%)}
.service-tile-cta{font-size:17px;line-height:1.5;padding:8px 0;margin-top:0}
.service-tile-scope{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;min-width:0}
.service-tile-scope summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;font-size:18px;font-weight:600;line-height:1.5;padding:16px 0;color:#fff}
.service-tile-scope summary::-webkit-details-marker{display:none}
.service-tile-scope summary:after{content:'+';font-size:24px;font-weight:400;flex-shrink:0;line-height:1}
.service-tile-scope[open] summary:after{content:'−'}
.service-tile-scope .details-hide,.service-tile-scope[open] .details-show{display:none}
.service-tile-scope[open] .details-hide{display:inline}
.service-tile-scope summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.service-tile-list li{padding:16px 0}
.service-tile-list li:last-child{border-bottom:0}
.service-tile-list h5{font-size:19px;line-height:1.4;margin-bottom:8px}
.service-tile-wide .service-tile-body{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);padding:32px;gap:20px 44px}
.service-tile-wide .service-tile-intro{grid-column:1;grid-row:1/3;padding:0}
.service-tile-wide .service-tile-scope{grid-column:2;grid-row:1;align-self:start}
.service-tile-wide .service-tile-cta{grid-column:2;grid-row:2;align-self:start}
@media(max-width:1024px){.service-tile-body,.service-tile-wide .service-tile-body{display:flex;padding:44px 28px 28px;gap:20px}.service-tile-intro h3{font-size:40px}.service-tile-wide .service-tile-cta{margin-top:0}.service-tile-wide:before{background:linear-gradient(180deg,rgba(12,18,16,.55),rgba(12,18,16,.86) 160px,rgba(12,18,16,.96) 100%)}}
@media(max-width:600px){.services.section-pad{padding-top:44px;padding-bottom:44px}.services .section-heading{margin-bottom:24px}.service-grid{gap:20px}.service-tile-body,.service-tile-wide .service-tile-body{padding:32px 22px 24px;gap:18px}.service-tile-intro h3{font-size:36px;margin-bottom:12px}.service-tile-heading{font-size:23px;margin-bottom:12px}.service-tile p{font-size:17px;line-height:1.65}.service-tile-scope summary{font-size:17px;padding:14px 0}.service-tile-cta{font-size:17px}.service-tile-list h5{font-size:18px}}

/* Minimal service rows: quiet typography, sticky introduction, native details. */
.services-minimal{padding:80px 0;background:var(--paper);color:var(--ink)}
.services-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.65fr);gap:90px;align-items:start}
.services-aside{position:sticky;top:154px;min-width:0}
.services-aside h2{font:600 clamp(34px,3.3vw,48px)/1.15 var(--font);letter-spacing:-1.5px;margin:0 0 24px}
.services-aside p{font-size:18px;line-height:1.8;color:#575d59;margin:0 0 32px;max-width:330px}
.services-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border:1px solid #b8bdb7;padding:15px 20px;font-size:17px;font-weight:600;line-height:1.5;transition:background .2s,border-color .2s}
.services-contact .icon{width:20px;height:20px}
.services-contact:hover{background:#e9ebe5;border-color:#626962}
.service-rows{min-width:0;border-top:1px solid #cdd1cb}
.service-row{border-bottom:1px solid #cdd1cb;min-width:0}
.service-row>summary{list-style:none;display:grid;grid-template-columns:32px minmax(0,1fr) 28px;gap:22px;align-items:start;padding:32px 0;cursor:pointer}
.service-row>summary::-webkit-details-marker{display:none}
.service-row-icon{color:#626962;transition:color .2s;padding-top:2px}
.service-row-icon .icon{width:28px;height:28px;stroke-width:1.5}
.service-row-copy{display:block;min-width:0}
.service-row-title{display:block;font:600 25px/1.35 var(--font);letter-spacing:-.5px;color:#242a27}
.service-row-summary{display:block;font-size:18px;line-height:1.7;color:#626862;margin-top:12px;max-width:610px}
.service-row-toggle{position:relative;width:28px;height:28px;margin-top:3px}
.service-row-toggle:before,.service-row-toggle:after{content:'';position:absolute;background:#343b36;top:13px;left:5px;width:18px;height:2px}
.service-row-toggle:after{transform:rotate(90deg);transition:transform .25s}
.service-row[open] .service-row-toggle:after{transform:rotate(0)}
.service-row[open] .service-row-icon{color:var(--orange)}
.service-row>summary:focus-visible{outline:2px solid #454e47;outline-offset:5px}
@media(hover:hover){.service-row>summary:hover .service-row-icon{color:var(--orange)}}
.service-row-panel-inner{padding:0 50px 32px 54px}
.service-row-list{list-style:none;margin:0;padding:0}
.service-row-list li{padding:20px 0;border-top:1px solid #dce0d9}
.service-row-list h4{font:600 19px/1.5 var(--font);margin:0 0 8px;color:#242a27}
.service-row-list p{font-size:17px;line-height:1.8;color:#626862;margin:0}
.service-row-cta{display:inline-block;font-size:17px;font-weight:600;line-height:1.6;margin-top:10px;padding-bottom:5px;border-bottom:1px solid #68716a}
.service-row-cta:hover{border-color:#232b25}
@media(min-width:901px){.admin-bar .services-aside{top:186px}}
@media(max-width:1100px){.services-layout{gap:48px;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}.service-row-title{font-size:23px}}
@media(max-width:900px){.services-minimal{padding:56px 0}.services-layout{grid-template-columns:minmax(0,1fr);gap:40px}.services-aside{position:static}.services-aside h2{font-size:38px;margin-bottom:18px}.services-aside p{max-width:560px;margin-bottom:24px}}
@media(max-width:600px){.services-minimal{padding:44px 0}.services-layout{gap:32px}.services-aside h2{font-size:34px;letter-spacing:-1px}.services-aside p{font-size:17px;line-height:1.7}.service-row>summary{grid-template-columns:24px minmax(0,1fr) 22px;gap:12px;padding:26px 0}.service-row-icon .icon{width:23px;height:23px}.service-row-title{font-size:21px;line-height:1.4;letter-spacing:-.3px}.service-row-summary{font-size:17px;line-height:1.65;margin-top:10px}.service-row-toggle{width:22px;height:24px}.service-row-toggle:before,.service-row-toggle:after{width:16px;left:3px;top:11px}.service-row-panel-inner{padding:0 0 26px 36px}.service-row-list h4{font-size:18px}.service-row-list p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.service-row-icon,.service-row-toggle:after,.services-contact{transition:none}}

/* Small project images and restrained accents enrich the minimal service rows. */
.services-minimal{background:radial-gradient(ellipse at 5% 12%,#ed792f08,transparent 46%),var(--paper)}
.services-layout{gap:64px;grid-template-columns:minmax(0,.75fr) minmax(0,1.65fr)}
.services-aside:before{content:'';display:block;width:48px;height:4px;background:var(--orange);margin-bottom:22px}
.services-aside h2{font-weight:600;margin-bottom:22px}
.services-contact{background:#202824;color:#fff;border-color:#202824;border-radius:4px;padding:16px 20px;box-shadow:0 5px 12px #1b24130a}
.services-contact .icon{color:#f3a36a}
.services-contact:hover{background:#303d34;border-color:#303d34;color:#fff}
.service-rows{border-top-color:#cdd1cb}
.service-row{transition:background .25s,border-color .25s}
.service-row>summary{grid-template-columns:96px minmax(0,1fr) 40px;align-items:center;gap:24px;padding:27px 16px}
.service-row-media{position:relative;display:block;width:96px;height:104px;background:#e6e9e1;border-radius:5px;isolation:isolate}
.service-row-thumbnail{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px;filter:saturate(.65);transition:filter .3s}
.service-row-icon{position:absolute;bottom:-7px;right:-7px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--paper);border:1px solid #d8dcd4;border-radius:50%;padding:0;color:#535d55;transition:color .25s,background .25s,border-color .25s}
.service-row-icon .icon{width:18px;height:18px}
.service-row-title{font-size:24px;letter-spacing:-.6px}
.service-row-summary{font-size:17px;line-height:1.7;margin-top:10px}
.service-row-toggle{width:40px;height:40px;align-self:center;margin:0;border:1px solid #cdd3ca;border-radius:50%;background:#ffffff70;transition:background .25s,border-color .25s}
.service-row-toggle:before,.service-row-toggle:after{width:16px;height:2px;left:11px;top:18px}
.service-row[open]{background:#fff9;border-bottom-color:#bfc7ba}
.service-row[open] .service-row-icon{background:#fae5d6;border-color:#edc2a4;color:#9f4612}
.service-row[open] .service-row-thumbnail{filter:saturate(1)}
.service-row[open] .service-row-toggle{background:#202824;border-color:#202824}
.service-row[open] .service-row-toggle:before,.service-row[open] .service-row-toggle:after{background:#fff}
.service-row-panel-inner{padding:0 32px 30px 136px}
.service-row-list li{position:relative;padding:20px 0 20px 18px}
.service-row-list li:before{content:'';position:absolute;left:0;top:30px;width:5px;height:5px;border-radius:50%;background:#d28651}
.service-row-list h4{font-size:18px}
.service-row-list p{font-size:17px;line-height:1.75}
.service-row-cta{border-bottom-color:#b9bfb4;padding:9px 0;font-size:17px}
@media(hover:hover){.service-row:hover{background:#ffffff75}.service-row>summary:hover .service-row-thumbnail{filter:saturate(1)}.service-row>summary:hover .service-row-icon{background:#fae5d6;border-color:#edc2a4;color:#9f4612}.service-row>summary:hover .service-row-toggle{border-color:#dc9e70;background:#fbecdf}}
@media(max-width:1100px){.services-layout{gap:36px;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr)}.service-row>summary{grid-template-columns:80px minmax(0,1fr) 36px;gap:20px;padding-inline:12px}.service-row-media{width:80px;height:92px}.service-row-title{font-size:22px}.service-row-toggle{width:36px;height:36px}.service-row-toggle:before,.service-row-toggle:after{left:9px;top:16px}.service-row-panel-inner{padding-left:112px;padding-right:24px}}
@media(max-width:900px){.services-layout{grid-template-columns:minmax(0,1fr);gap:36px}.service-row>summary{grid-template-columns:96px minmax(0,1fr) 40px;gap:24px;padding:26px 16px}.service-row-media{width:96px;height:96px}.service-row-toggle{width:40px;height:40px}.service-row-toggle:before,.service-row-toggle:after{left:11px;top:18px}.service-row-panel-inner{padding-left:136px}.services-aside:before{margin-bottom:18px}}
@media(max-width:600px){.services-layout{gap:30px}.services-aside:before{width:36px;height:3px;margin-bottom:16px}.services-aside h2{margin-bottom:18px}.service-row>summary{grid-template-columns:64px minmax(0,1fr) 32px;gap:14px 16px;padding:22px 4px}.service-row-media{width:64px;height:64px;grid-column:1;grid-row:1}.service-row-icon{width:26px;height:26px;bottom:-5px;right:-5px}.service-row-icon .icon{width:15px;height:15px}.service-row-copy{display:contents}.service-row-title{grid-column:2;grid-row:1;font-size:20px;line-height:1.35;letter-spacing:-.4px}.service-row-summary{grid-column:1/-1;grid-row:2;font-size:17px;line-height:1.65;margin:0}.service-row-toggle{grid-column:3;grid-row:1;width:32px;height:32px}.service-row-toggle:before,.service-row-toggle:after{left:7px;top:14px}.service-row-panel-inner{padding:0 12px 24px}.service-row-list li{padding:18px 0 18px 16px}.service-row-list li:before{top:28px}.service-row-cta{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.service-row,.service-row-thumbnail,.service-row-icon,.service-row-toggle{transition:none}}

/* Project enquiry dialog. */
body.project-dialog-open{overflow:hidden}
.project-dialog{width:min(980px,calc(100% - 40px));max-width:980px;max-height:calc(100svh - 40px);padding:0;margin:auto;border:1px solid #ffffff35;border-radius:12px;background:#fafaf7;color:var(--ink);box-shadow:0 30px 100px #0006;overflow:auto;overscroll-behavior:contain}
.project-dialog::backdrop{background:#0c1415b8;backdrop-filter:blur(5px)}
.project-dialog[open]{animation:project-dialog-in .2s ease-out}
.project-dialog-layout{display:grid;grid-template-columns:310px minmax(0,1fr)}
.project-dialog-close{position:absolute;z-index:2;top:14px;right:14px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #d7dbd3;border-radius:50%;background:#fafaf7;color:#26302a;font:400 30px/1 var(--font);cursor:pointer}
.project-dialog-close:hover{background:#e9ece5}
.project-dialog-contact{display:flex;flex-direction:column;background:radial-gradient(ellipse at 0 0,#ed792f20,transparent 60%),#202824;color:#fff;padding:42px 28px}
.project-dialog-brand{font-size:17px;font-weight:700;letter-spacing:.5px;margin-bottom:34px}
.project-dialog-contact h2{font:600 30px/1.3 var(--font);letter-spacing:-.8px;margin:0 0 20px}
.project-dialog-contact h2:before{content:'';display:block;width:36px;height:3px;background:var(--orange);margin-bottom:20px}
.project-dialog-contact>p{font-size:17px;line-height:1.7;color:#d3d9d3;margin:0}
.project-contact-links{display:grid;gap:18px;margin-top:36px}
.project-contact-links a{display:flex;align-items:center;gap:12px;font-size:19px;line-height:1.5}
.project-contact-links .icon{width:20px;height:20px;color:#eca16d}
.project-contact-links .project-contact-email{font-size:16px;overflow-wrap:anywhere}
.project-whatsapp{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ffffff30;margin-top:auto;padding-top:24px;font-size:17px;line-height:1.5}
.project-whatsapp .icon{width:20px;height:20px;color:#eca16d}
.project-dialog-form{padding:38px 36px 30px;min-width:0}
.project-dialog-form>h2{font:600 30px/1.25 var(--font);letter-spacing:-.8px;padding-right:30px;margin:0 0 12px}
.project-dialog-form>h2:focus{outline:none}
.project-dialog-form>p{font-size:16px;line-height:1.65;color:#636a63;margin:0 0 24px}
.project-dialog .wpcf7 form{margin:0}
.project-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.project-fields label{display:flex;flex-direction:column;gap:7px;font-size:16px;font-weight:600;line-height:1.5;margin:0;min-width:0}
.project-fields .project-field-wide{grid-column:1/-1}
.project-fields .wpcf7-form-control-wrap{display:block;min-width:0}
.project-fields input,.project-fields select,.project-fields textarea{display:block;width:100%;max-width:100%;min-height:46px;border:1px solid #cbd1c7;border-radius:5px;background:#fff;color:#202824;padding:10px 12px;font:400 16px/1.5 var(--font);box-sizing:border-box;box-shadow:none}
.project-fields textarea{height:106px;min-height:90px;max-height:260px;resize:vertical}
.project-fields input::placeholder,.project-fields textarea::placeholder{color:#757d75;opacity:1}
.project-fields input:focus,.project-fields select:focus,.project-fields textarea:focus{outline:2px solid #c96c2c;outline-offset:1px;border-color:#c96c2c}
.project-fields [aria-invalid=true]{border-color:#ac352a}
.project-dialog .wpcf7-not-valid-tip{font-size:16px;line-height:1.5;font-weight:400;color:#ac352a;margin-top:6px}
.project-submit-row{position:relative;display:flex;align-items:center;margin-top:22px}
.project-submit-row input[type=submit]{width:100%;border:0;border-radius:5px;padding:14px 22px;background:var(--orange);color:#172019;font:700 17px/1.5 var(--font);cursor:pointer;white-space:normal;transition:background .2s}
.project-submit-row input[type=submit]:hover{background:#f38b45}
.project-submit-row .wpcf7-spinner{position:absolute;right:10px;margin:0;pointer-events:none}
.project-dialog form.submitting input[type=submit]{opacity:.7;cursor:wait}
.project-dialog .wpcf7 form .wpcf7-response-output{padding:12px 14px;margin:18px 0 0;border:1px solid #bec9b8;border-left-width:3px;border-radius:4px;font-size:16px;line-height:1.6}
.project-dialog .wpcf7 form.sent .wpcf7-response-output{background:#edf5e9;border-color:#608558}
.project-dialog .wpcf7 form.failed .wpcf7-response-output,.project-dialog .wpcf7 form.invalid .wpcf7-response-output{background:#fff3ed;border-color:#bd6d42}
@keyframes project-dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.project-dialog-layout{grid-template-columns:minmax(0,1fr)}.project-dialog-form{grid-row:1;padding:28px 24px}.project-dialog-contact{padding:24px;gap:0}.project-dialog-brand,.project-dialog-contact h2,.project-dialog-contact>p{display:none}.project-contact-links{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-contact-links .project-contact-email{grid-column:1/-1;font-size:17px}.project-contact-links a{font-size:17px}.project-whatsapp{margin-top:22px;padding-top:18px}.project-dialog-form>h2{font-size:28px}}
@media(max-width:480px){.project-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);border-radius:9px}.project-dialog-close{top:10px;right:10px;width:36px;height:36px}.project-dialog-form{padding:24px 18px}.project-dialog-form>h2{font-size:25px;padding-right:30px}.project-dialog-form>p{margin-bottom:20px}.project-fields{grid-template-columns:minmax(0,1fr);gap:14px}.project-dialog-contact{padding:22px 18px}.project-contact-links{grid-template-columns:minmax(0,1fr)}.project-contact-links a{font-size:18px}}
@media(prefers-reduced-motion:reduce){.project-dialog[open]{animation:none}.project-submit-row input[type=submit]{transition:none}}
/* Keep the close control reachable when the mobile form scrolls. */
.project-dialog-close{position:sticky;top:12px;right:auto;margin:12px 12px -52px auto}
@media(max-width:480px){.project-dialog-close{top:10px;margin:10px 10px -46px auto}}

/* Technical hero: direct scope of work and a drawing-led quote entry point. */
.technical-hero{background-color:#1a1a1a;color:#fff;padding:76px 0 84px;position:relative}
.technical-hero{background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:80px 80px}
.technical-hero-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:72px;align-items:center}
.technical-hero-copy :is(h1,h2){font:600 clamp(42px,4.1vw,60px)/1.13 var(--font);letter-spacing:-1.8px;margin:0;max-width:690px}
.technical-hero-copy :is(h1,h2)>span{display:block;font:600 17px/1.6 var(--font);letter-spacing:1px;text-transform:uppercase;color:#e2a376;margin-bottom:22px}
.technical-hero-copy>p{font-size:20px;line-height:1.75;color:#c7cbc7;margin:26px 0 32px;max-width:610px}
.technical-hero-services{display:inline-flex;align-items:center;gap:15px;font-size:17px;font-weight:600;line-height:1.5;padding:16px 20px;border:1px solid #ffffff40;border-radius:4px;color:#fff;transition:background .2s,border-color .2s}
.technical-hero-services:hover{background:#ffffff0b;border-color:#ffffff80}
.technical-hero-services .icon{width:21px;height:21px;color:#e8a170}
.technical-hero-services>span:last-child{margin-left:14px;font-size:22px}
.hero-quote{min-width:0;padding:30px;background:#f3f4f0;color:#252d27;border:1px solid #fff3;border-radius:8px;box-shadow:0 20px 55px #0002}
.hero-quote h2{display:flex;align-items:center;gap:12px;font:600 25px/1.3 var(--font);letter-spacing:-.5px;margin:0}
.hero-quote h2 .icon{width:26px;height:26px;color:#a55927}
.hero-quote>p{font-size:17px;line-height:1.65;color:#626a61;margin:14px 0 22px}
.hero-drop-zone{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center;padding:25px 14px;min-height:166px;border:1px dashed #aab4a4;border-radius:5px;background:#fff9;cursor:pointer;transition:background .2s,border-color .2s}
.hero-drop-zone>.icon{width:30px;height:30px;color:#64705f;margin-bottom:4px}
.hero-drop-zone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.hero-drop-zone:focus-within{outline:2px solid #a45522;outline-offset:3px}
.hero-drop-zone:hover,.hero-drop-zone.is-dragging{background:#fff;border-color:#b96e36}
.hero-upload-title{font-size:18px;font-weight:600;line-height:1.4}
.hero-upload-helper{font-size:16px;line-height:1.5;color:#666f63}
.hero-quote>.hero-file-types{font-size:16px;line-height:1.6;margin:12px 0 20px;color:#636b60}
.hero-file-selection{display:flex;align-items:center;gap:12px;justify-content:space-between;border:1px solid #bdc9b3;background:#e8efe2;border-radius:4px;padding:10px 12px;margin:0 0 18px;font-size:16px;line-height:1.5}
.hero-file-name{min-width:0;overflow-wrap:anywhere}
.hero-file-remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:0;color:#283b25;font-size:26px;cursor:pointer}
.hero-file-selection[hidden],.hero-file-error[hidden]{display:none}
.hero-quote>.hero-file-error{color:#9c3324;margin:0 0 16px;font-size:16px;line-height:1.5}
.hero-quote-action{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--orange);color:#1c231b;padding:16px 20px;border-radius:4px;font-size:18px;font-weight:700;line-height:1.5}
.hero-quote-action:hover{background:#f38943}
.hero-quote-action .icon{width:20px;height:20px}
.project-attachment-help{font-size:16px;line-height:1.5;color:#626b60;font-weight:400}
.project-fields input[type=file]{font-size:16px;padding:9px;background:#fff}
.project-fields input[type=file]::file-selector-button{border:0;border-radius:3px;background:#e8ece3;color:#283126;padding:7px 10px;margin-right:10px;font:600 16px var(--font);cursor:pointer}
.project-attachment-remove{align-self:flex-start;padding:4px 0;border:0;border-bottom:1px solid #828c7c;background:none;font-size:16px;color:#4a5544;cursor:pointer}
.project-attachment-remove[hidden]{display:none}
@media(max-width:1100px){.technical-hero-layout{gap:40px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.technical-hero-copy :is(h1,h2){font-size:46px}.hero-quote{padding:26px}.hero-quote h2{font-size:23px}.technical-hero-copy>p{font-size:18px}}
@media(max-width:900px){.technical-hero{padding:54px 0}.technical-hero-layout{grid-template-columns:minmax(0,1fr);gap:36px}.technical-hero-copy :is(h1,h2){max-width:720px;font-size:48px}.technical-hero-copy>p{max-width:650px}.hero-quote{max-width:640px;width:100%}}
@media(max-width:600px){.technical-hero{padding:38px 0 44px}.technical-hero-copy :is(h1,h2){font-size:36px;line-height:1.16;letter-spacing:-1px}.technical-hero-copy :is(h1,h2)>span{font-size:16px;letter-spacing:.6px;margin-bottom:16px}.technical-hero-copy>p{font-size:18px;margin:20px 0 24px;line-height:1.65}.technical-hero-services{padding:14px 16px;font-size:16px;gap:10px}.technical-hero-services>span:last-child{margin-left:8px}.hero-quote{padding:24px 20px}.hero-quote h2{font-size:23px}.hero-drop-zone{padding-inline:10px}.hero-quote-action{font-size:17px;padding:15px}.project-fields input[type=file]{font-size:16px}}
@media(max-width:380px){.technical-hero-copy :is(h1,h2){font-size:32px}.hero-quote{padding:22px 16px}.hero-quote h2{font-size:21px}.hero-upload-title{font-size:17px}}
@media(prefers-reduced-motion:reduce){.technical-hero-services,.hero-drop-zone{transition:none}}

/* Hero with a single content column. */
.technical-hero-layout{display:block}
.technical-hero-copy{max-width:980px}
.technical-hero-copy :is(h1,h2){max-width:980px}
.technical-hero-copy>p{max-width:780px}

/* Industrial banner: full-bleed machinery with a quiet reading surface. */
.industrial-banner{isolation:isolate;overflow:hidden;background:#171c1b;padding:76px 0 80px;min-height:620px;display:flex;align-items:center;border-bottom:3px solid var(--orange)}
.industrial-banner-image{position:absolute;inset:0;z-index:-3;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 52%}
.industrial-banner:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,21,21,.97) 0%,rgba(15,21,21,.88) 30%,rgba(15,21,21,.57) 52%,rgba(15,21,21,.12) 79%),linear-gradient(0deg,rgba(10,17,17,.65),transparent 38%)}
.industrial-banner:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(16,22,22,.24),transparent 30%)}
.industrial-banner .technical-hero-copy{max-width:720px}
.industrial-banner .technical-hero-copy :is(h1,h2){font:600 clamp(64px,6.1vw,88px)/1.02 var(--display);letter-spacing:-1px;max-width:700px;text-wrap:balance}
.industrial-banner .technical-hero-copy :is(h1,h2)>span{display:flex;align-items:center;gap:14px;font:600 17px/1.5 var(--font);letter-spacing:1.2px;color:#f4b382;margin-bottom:24px;text-wrap:wrap}
.industrial-banner .technical-hero-copy :is(h1,h2)>span:before{content:"";flex:0 0 32px;height:3px;background:var(--orange)}
.industrial-banner .technical-hero-copy>p{max-width:570px;color:#e1e4e1;font-size:19px;line-height:1.75;margin:26px 0 30px}
.industrial-banner .technical-hero-services{background:var(--orange);border:1px solid var(--orange);color:#171c1b;border-radius:2px;padding:16px 22px;font-size:17px;font-weight:700;box-shadow:0 8px 30px #0002;transition:background .2s,box-shadow .2s}
.industrial-banner .technical-hero-services .icon{color:currentColor}
.industrial-banner .technical-hero-services:hover{background:#ff9851;border-color:#ff9851;box-shadow:0 10px 35px #0004}
.industrial-banner .technical-hero-services:focus-visible{outline:2px solid white;outline-offset:5px}
@media(min-width:1700px){.industrial-banner{min-height:690px}.industrial-banner-image{object-position:center 55%}}
@media(max-width:1100px){.industrial-banner{min-height:580px;padding:64px 0}.industrial-banner .technical-hero-copy{max-width:620px}.industrial-banner .technical-hero-copy :is(h1,h2){font-size:72px}.industrial-banner-image{object-position:60% center}}
@media(max-width:767px){.industrial-banner{min-height:0;padding:54px 0 58px}.industrial-banner-image{object-position:65% center}.industrial-banner:before{background:linear-gradient(90deg,rgba(15,21,21,.94),rgba(15,21,21,.7) 65%,rgba(15,21,21,.45)),linear-gradient(0deg,rgba(10,17,17,.6),transparent)}.industrial-banner .technical-hero-copy{max-width:570px}.industrial-banner .technical-hero-copy :is(h1,h2){font-size:62px}.industrial-banner .technical-hero-copy :is(h1,h2)>span{font-size:16px;letter-spacing:.6px;gap:10px;margin-bottom:22px}.industrial-banner .technical-hero-copy :is(h1,h2)>span:before{flex-basis:22px}.industrial-banner .technical-hero-copy>p{font-size:18px;line-height:1.65;max-width:490px;margin:24px 0 28px}}
@media(max-width:480px){.industrial-banner{padding:42px 0 46px}.industrial-banner .technical-hero-copy :is(h1,h2){font-size:52px;line-height:1.06;letter-spacing:-.5px}.industrial-banner .technical-hero-copy :is(h1,h2)>span{font-size:16px;letter-spacing:0;max-width:320px}.industrial-banner .technical-hero-copy>p{font-size:17px;line-height:1.7}.industrial-banner .technical-hero-services{padding:14px 18px;font-size:16px;gap:10px}}
@media(max-width:360px){.industrial-banner .technical-hero-copy :is(h1,h2){font-size:45px}.industrial-banner .technical-hero-copy :is(h1,h2)>span:before{display:none}}
@media(prefers-reduced-motion:reduce){.industrial-banner .technical-hero-services{transition:none}}

/* Keep the plant buildings in view in the photographic banner. */
.industrial-banner-image{object-position:center 45%}
@media(max-width:1100px){.industrial-banner-image{object-position:58% center}}
@media(max-width:767px){.industrial-banner-image{object-position:54% center}}

/* Three photographic banners, one stable responsive stage. */
.hero-slider{position:relative;background:#171c1b;color:#fff;touch-action:pan-y pinch-zoom}
.hero-slider-track{display:grid}
.hero-slider .hero-slide{grid-area:1/1;min-width:0;padding-bottom:108px;transition:opacity .65s ease,visibility .65s;opacity:0;visibility:hidden;pointer-events:none}
.hero-slider .hero-slide:not(.is-active){display:none}
.hero-slider.is-enhanced .hero-slide{display:flex}
.hero-slider .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hero-slider-controls{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:22px;pointer-events:none}
.hero-slider-controls[hidden]{display:none}
.hero-slider-controls button{pointer-events:auto}
.hero-slider-dots{display:flex;gap:6px}
.hero-slider-dot{width:44px;height:44px;display:grid;place-items:center;border:0;padding:0;background:transparent}
.hero-slider-dot span{width:38px;height:18px;border:2px solid #fff;border-radius:999px;background:transparent;transition:background .25s;box-shadow:0 1px 3px #0003}
.hero-slider-dot[aria-current=true] span{background:#ffffff38}
.hero-slider-dot:hover span{background:#ffffff25}
.hero-slider-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:767px){.hero-slider .hero-slide{padding-bottom:100px}.hero-slider-controls{bottom:18px}}
@media(prefers-reduced-motion:reduce){.hero-slider .hero-slide,.hero-slider-dot span{transition:none}}

/* Centered pagination and mouse/touch dragging. */
.hero-slider-controls{justify-content:center;gap:0}
.hero-slider.is-enhanced{cursor:grab}
.hero-slider.is-dragging,.hero-slider.is-dragging a{cursor:grabbing}
.hero-slider.is-enhanced .hero-slide{user-select:none;-webkit-user-select:none}
.hero-slider .industrial-banner-image{pointer-events:none;-webkit-user-drag:none}
.hero-slider-dot[aria-current=true]:hover span{background:#ffffff50}
@media(max-width:767px){.hero-slide:nth-child(n+2) .industrial-banner-image{object-position:76% center}}
.project-captcha{margin-top:20px;min-height:78px}
@media (max-width:380px){.project-captcha .g-recaptcha{transform:scale(.88);transform-origin:0 0}}
.service-row-heading{font:700 21px/1.4 var(--font);color:#242a27;margin:0 0 10px}
.service-row-intro{font-size:17px;line-height:1.8;color:#575d59;margin:0 0 18px;max-width:760px}
@media(max-width:600px){.service-row-heading{font-size:19px}.service-row-intro{font-size:16px;line-height:1.7}}
.technical-hero-copy p a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.service-row-intro a{color:#b85f22;text-decoration:underline;text-underline-offset:3px}
.contact-form-block{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start;margin-top:55px;padding-top:34px;border-top:1px solid #ffffff23}
.contact-form-block--info-only{grid-template-columns:minmax(0,1fr)}
.contact-info{display:flex;flex-direction:column;min-width:0}
.contact-info-item{min-width:0;padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid #ffffff1a}
.contact-info-item:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.contact-info .contact-label{margin-bottom:14px}
.contact-info .contact-small{margin-top:12px}
.contact-info address{max-width:none;font-style:normal;font-size:15px;line-height:1.85;color:#c2cbbc}
.contact-form .wpcf7 form{margin:0}
.contact-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contact-form-fields label{display:flex;flex-direction:column;gap:7px;font-size:15px;font-weight:600;line-height:1.5;margin:0;min-width:0;color:#d4dacd}
.contact-form-fields .contact-form-wide{grid-column:1/-1}
.contact-form-fields .wpcf7-form-control-wrap{display:block;min-width:0}
.contact-form-fields input,.contact-form-fields textarea{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid #ffffff2e;border-radius:5px;background:#ffffff0a;color:#f2f3ed;padding:11px 13px;font:400 16px/1.5 var(--font);box-sizing:border-box;box-shadow:none;transition:border-color .2s,background .2s}
.contact-form-fields textarea{height:130px;min-height:100px;max-height:280px;resize:vertical}
.contact-form-fields input:focus,.contact-form-fields textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange);background:#ffffff12}
.contact-form-fields [aria-invalid=true]{border-color:#e07a5f}
.contact-form .wpcf7-not-valid-tip{font-size:14px;line-height:1.5;font-weight:400;color:#f0a58a;margin-top:6px}
.contact-form-captcha{margin-top:18px;min-height:78px}
.contact-form-submit{position:relative;display:flex;align-items:center;margin-top:18px}
.contact-form-submit input[type=submit]{border:0;border-radius:5px;padding:14px 30px;background:var(--orange);color:#172019;font:700 16px/1.5 var(--font);cursor:pointer;transition:background .2s}
.contact-form-submit input[type=submit]:hover{background:#f38b45}
.contact-form-submit .wpcf7-spinner{margin:0 0 0 12px}
.contact-form .wpcf7 form .wpcf7-response-output{padding:12px 14px;margin:18px 0 0;border:1px solid #ffffff33;border-left-width:3px;border-radius:4px;font-size:15px;line-height:1.6;color:#f2f3ed}
.contact-form .wpcf7 form.sent .wpcf7-response-output{border-color:#7fae72;background:#7fae7214}
.contact-form .wpcf7 form.failed .wpcf7-response-output,.contact-form .wpcf7 form.invalid .wpcf7-response-output,.contact-form .wpcf7 form.spam .wpcf7-response-output{border-color:var(--orange);background:#ed792f14}
@media(max-width:900px){.contact-form-block{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:600px){.contact-form-fields{grid-template-columns:minmax(0,1fr);gap:14px}.contact-form-submit input[type=submit]{width:100%}}
@media(max-width:380px){.contact-form-captcha .g-recaptcha{transform:scale(.88);transform-origin:0 0}}
.contact-info .contact-small .icon{width:18px;height:18px}
.site-footer .footer-main{justify-content:center;text-align:center}
.site-footer .footer-main .brand{flex-direction:column;gap:16px}
.site-footer .footer-main .brand small{display:block;font-family:var(--display);font-style:italic;font-weight:300;font-size:26px;line-height:1.3;letter-spacing:.6px;color:#c9d1c2;max-width:none}
@media(max-width:600px){.site-footer .footer-main .brand small{font-size:21px}}
.project-dialog-contact{padding:34px 28px 28px}
.project-dialog-logo{display:block;width:96px;height:auto;margin:0 0 26px}
.project-dialog-contact h2{margin-bottom:12px}
.project-dialog-contact>p{font-size:15px;line-height:1.7;color:#c9d1c2;margin:0}
.project-steps{list-style:none;margin:26px 0 28px;padding:0;display:grid;gap:14px}
.project-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;font-size:15px;line-height:1.55;color:#dfe5da}
.project-steps span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #ed792f80;border-radius:50%;font-size:13px;font-weight:700;color:#eca16d;line-height:1}
.project-dialog-contact .project-contact-links{margin-top:auto;padding:18px;border:1px solid #ffffff1f;border-radius:6px;background:#ffffff06;gap:12px}
.project-dialog-contact .project-contact-links a{font-size:16px}
.project-dialog-contact .project-contact-links a:hover{color:#eca16d}
.project-dialog-contact .project-contact-links .project-contact-email{font-size:15px}
.project-whatsapp{justify-content:flex-start;margin-top:18px;padding:12px 16px;border:1px solid #ed792f;border-top:1px solid #ed792f;border-radius:6px;font-size:16px;font-weight:600;transition:background .2s,color .2s}
.project-whatsapp:hover{background:var(--orange);color:#172019}
.project-whatsapp:hover .icon{color:#172019}
.project-whatsapp .project-whatsapp-arrow{margin-left:auto;width:16px;height:16px}
@media(max-width:900px){.project-dialog-logo,.project-steps{display:none}.project-dialog-contact .project-contact-links{margin-top:0}}
.project-fields select{appearance:none;-webkit-appearance:none;padding-right:46px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235c645d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer}
.isler-select{position:relative}
.project-fields .isler-select-native{position:absolute;left:0;bottom:0;width:100%;height:1px;min-height:0;padding:0;border:0;opacity:0;pointer-events:none}
.isler-select-button{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;border:1px solid #cbd1c7;border-radius:5px;background:#fff;color:#202824;padding:10px 16px 10px 12px;font:400 16px/1.5 var(--font);text-align:left;cursor:pointer;transition:border-color .2s}
.isler-select-button:hover{border-color:#a9b1a5}
.isler-select-button:focus-visible,.isler-select.is-open .isler-select-button{outline:2px solid #c96c2c;outline-offset:1px;border-color:#c96c2c}
.isler-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.isler-select.is-empty .isler-select-value{color:#757d75}
.isler-select-chevron{flex-shrink:0;color:#5c645d;transition:transform .2s}
.isler-select.is-open .isler-select-chevron{transform:rotate(180deg);color:#c96c2c}
.isler-select.is-invalid .isler-select-button{border-color:#ac352a}
.isler-select-list{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #d5dad1;border-radius:6px;box-shadow:0 14px 34px #1820192e;max-height:260px;overflow-y:auto}
.isler-select-list:focus{outline:none}
.isler-select-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:4px;font-size:16px;line-height:1.4;font-weight:500;color:#202824;cursor:pointer}
.isler-select-list li.is-active{background:#f6efe8}
.isler-select-list li[aria-selected=true]{color:#b85f22;font-weight:600}
.isler-select-list li[aria-selected=true]:after{content:'';width:16px;height:16px;flex-shrink:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c96c2c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") no-repeat center}
@media(prefers-reduced-motion:reduce){.isler-select-chevron{transition:none}}
@media(max-width:600px){.site-header .header-cta{display:flex;margin-left:auto;padding:9px 12px;font-size:14px;line-height:1.2;white-space:nowrap;border-color:#ed792f;color:#fff}}
@media(max-width:360px){.site-header .header-cta{padding:8px 9px;font-size:13px}.site-header .brand img.brand-logo{width:92px;height:69px}.site-header .menu-toggle{flex-shrink:0}}
.reference-copy .reference-description{font-size:16px;line-height:1.75;color:#5d655a;max-width:460px;margin:22px 0 0}
.reference-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:26px 0 0;max-width:480px}
.reference-facts div{min-width:0;padding:12px 0;border-top:1px solid #d6d9cf}
.reference-facts dt{font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#7a8274;margin:0 0 4px}
.reference-facts dd{margin:0;font-family:var(--display);font-size:24px;font-weight:600;line-height:1.2;color:#1d2420}
@media(max-width:600px){.reference-facts{gap:0 18px}.reference-facts dd{font-size:21px}.reference-copy .reference-description{font-size:15px}}
.reference-visual figcaption{right:auto;left:16px;bottom:16px;width:auto;max-width:calc(100% - 32px);padding:5px 10px;border-radius:3px;background:#131a19b8;font-size:12px;line-height:1.4;letter-spacing:.3px;color:#e5e8df}
