:root{--navy:#03080c;--navy-2:#0a1822;--ink:#101b22;--steel:#5c6b75;--mist:#edf3f6;--line:#d7e0e5;--white:#fff;--orange:#0b4a6f;--orange-dark:#062f49;--condensed:"Barlow Condensed",Impact,sans-serif;--sans:"Inter",Arial,sans-serif;--shadow:0 18px 48px rgba(2,14,22,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:min(1180px,calc(100% - 48px));margin:0 auto}.skip-link{position:fixed;left:12px;top:-80px;background:#fff;color:#111;padding:10px 16px;z-index:999}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.topbar{background:var(--navy);color:#dce6ed;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.topbar-inner{display:flex;align-items:center;min-height:38px;gap:16px}.topbar-inner a{margin-left:auto;color:#fff;font-weight:700}.topbar-divider{height:13px;width:1px;background:#50606d}.site-header{height:82px;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(7,23,37,.08);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:12px}.brand-mark{position:relative;display:block;width:35px;height:44px;border:3px solid var(--navy);transform:skew(-9deg);overflow:hidden}.brand-mark:before,.brand-mark:after,.brand-mark i{content:"";position:absolute;display:block;background:var(--orange);transform:skew(9deg) rotate(-51deg)}.brand-mark:before{width:7px;height:25px;left:14px;top:-2px}.brand-mark:after{width:7px;height:28px;left:13px;top:18px}.brand-mark i{width:18px;height:7px;left:7px;top:18px}.brand-copy{display:flex;flex-direction:column;line-height:.8}.brand-copy strong{font:800 1.72rem/1 var(--condensed);letter-spacing:.08em}.brand-copy small{font:700 .69rem/1 var(--sans);letter-spacing:.33em;color:var(--orange);margin:5px 0 0 2px}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{font-size:.88rem;font-weight:600;color:#243744}.site-header nav a:not(.nav-cta):hover{color:var(--orange)}.nav-cta{background:var(--orange);color:#fff!important;padding:13px 19px;box-shadow:0 6px 18px rgba(239,116,35,.2)}.nav-cta:hover,.button-primary:hover{background:var(--orange-dark)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:25px;height:2px;background:var(--navy);margin:5px}
.hero{min-height:680px;position:relative;display:grid;align-items:center;overflow:hidden;background:#0c1d2b;color:#fff}.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-bg{background:url("assets/project-hero.webp") center center/cover no-repeat}.hero-overlay{background:linear-gradient(90deg,rgba(4,16,25,.97) 0%,rgba(4,16,25,.88) 38%,rgba(4,16,25,.42) 72%,rgba(4,16,25,.18) 100%)}.hero:after{content:"";position:absolute;right:-100px;bottom:-290px;width:520px;height:520px;border:1px solid rgba(255,255,255,.16);transform:rotate(45deg)}.hero-content{position:relative;z-index:2;padding:80px 0;max-width:1180px}.eyebrow{margin:0 0 14px;color:var(--orange);text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:800}.eyebrow.light{color:#ff9858}.hero h1,.section h2,.trust-section h2,.estimate h2{font-family:var(--condensed);text-transform:uppercase;letter-spacing:-.015em}.hero h1{font-size:clamp(3.5rem,6.4vw,6rem);line-height:.91;margin:0;max-width:760px}.hero h1 span{color:#ff8b43}.hero-copy{max-width:650px;color:#d5e0e6;font-size:1.05rem;line-height:1.75;margin:28px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:52px;padding:0 24px;border:0;font-weight:800;font-size:.87rem;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:.2s}.button-primary{color:#fff;background:var(--orange)}.button-ghost{color:#fff;border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.04)}.button-ghost:hover{background:#fff;color:var(--navy)}.hero-proof{display:flex;gap:0;margin-top:46px;color:#ebf0f3;font-size:.77rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.hero-proof span{padding:0 20px;border-right:1px solid rgba(255,255,255,.25)}.hero-proof span:first-child{padding-left:0}.hero-proof span:last-child{border:0}
.values{background:var(--orange);color:#fff}.values-row{min-height:62px;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800}.values-row i{width:5px;height:5px;background:#fff;transform:rotate(45deg);opacity:.7}.section{padding:108px 0}.section-heading{margin-bottom:46px}.split-heading,.project-heading{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:80px}.section h2,.trust-section h2,.estimate h2{font-size:clamp(2.7rem,4.5vw,4.35rem);line-height:.98;margin:0;color:var(--navy)}.section-heading>p{color:var(--steel);margin:0 0 4px;max-width:510px}.services{background:#f7f9fa}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{position:relative;background:#fff;padding:36px 32px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:340px;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);z-index:2}.service-number{position:absolute;right:24px;top:22px;color:#adb8be;font:600 .8rem var(--sans)}.service-icon{display:grid;place-items:center;width:46px;height:46px;color:#fff;background:var(--navy);font:700 1.1rem var(--condensed);margin-bottom:30px}.service-card h3{font:700 1.62rem/1.05 var(--condensed);text-transform:uppercase;color:var(--navy);margin:0 0 16px}.service-card p{color:var(--steel);font-size:.91rem;line-height:1.7;margin:0 0 24px}.service-card a,.text-link{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--orange)}.service-card a span,.text-link span{margin-left:9px}
.trust-section{background:var(--navy);color:#fff;padding:105px 0;position:relative;overflow:hidden}.trust-section:after{content:"SUJO";position:absolute;right:-25px;bottom:-75px;font:800 18rem/1 var(--condensed);color:rgba(255,255,255,.025);letter-spacing:.03em}.trust-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;position:relative;z-index:2}.trust-section h2{color:#fff;max-width:620px}.trust-copy>p:not(.eyebrow){color:#bac9d2;max-width:590px;margin:27px 0 30px}.trust-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.17);border-left:1px solid rgba(255,255,255,.17)}.trust-grid div{display:flex;flex-direction:column;padding:28px 26px;border-right:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17)}.trust-grid strong{font:700 1.8rem/1 var(--condensed);text-transform:uppercase;color:#fff}.trust-grid span{color:#91a5b1;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-top:7px}
.projects{background:#fff}.project-heading p:last-child{color:var(--steel)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project-card{background:#fff;border:1px solid var(--line);overflow:hidden}.project-art{height:220px;position:relative;overflow:hidden;display:grid;place-items:center;background:var(--navy)}.project-art:before,.project-art:after,.project-art i{content:"";position:absolute}.project-art:before{width:260px;height:260px;border:1px solid rgba(255,255,255,.14);transform:rotate(45deg)}.project-art:after{inset:18px;border:1px solid rgba(255,255,255,.08)}.project-art i{width:120%;height:2px;background:var(--orange);transform:rotate(-28deg);opacity:.75}.project-art span{font:800 4.2rem/1 var(--condensed);color:#fff;letter-spacing:.03em;z-index:2}.project-two .project-art{background:#12334a}.project-three .project-art{background:#1d2932}.project-four .project-art{background:#0d2735}.project-five .project-art{background:#172d3c}.project-six .project-art{background:#253642}.project-info{padding:22px 24px}.project-info small{color:var(--orange);text-transform:uppercase;letter-spacing:.11em;font-size:.68rem;font-weight:800}.project-info h3{font:700 1.55rem/1.1 var(--condensed);text-transform:uppercase;margin:6px 0 0;color:var(--navy)}
.estimate{background:linear-gradient(110deg,#0b2334 0%,#0b2334 33%,#eff3f5 33%,#eff3f5 100%);padding:105px 0}.estimate-layout{display:grid;grid-template-columns:.64fr 1.36fr;gap:80px}.estimate-intro{color:#fff;padding-right:10px}.estimate h2{color:#fff}.estimate-intro>p:not(.eyebrow){color:#b9c7cf;margin:25px 0 38px}.contact-direct{border-top:1px solid rgba(255,255,255,.18);padding-top:26px;display:flex;flex-direction:column}.contact-direct span{text-transform:uppercase;color:#8097a4;letter-spacing:.1em;font-size:.7rem;font-weight:700;margin-bottom:7px}.contact-direct a{color:#fff;font-weight:700;margin:3px 0}.estimate-form{background:#fff;padding:36px;box-shadow:var(--shadow)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.estimate-form label{display:flex;flex-direction:column;color:#354650;text-transform:uppercase;letter-spacing:.07em;font-size:.69rem;font-weight:800;margin-bottom:18px}.estimate-form input,.estimate-form select,.estimate-form textarea{width:100%;border:1px solid #cfd8dd;background:#fff;color:var(--ink);padding:13px 14px;margin-top:7px;border-radius:0;outline:none;text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:400}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(239,116,35,.1)}.file-label>span:first-child{display:inline}.file-label input{position:absolute;opacity:0;pointer-events:none}.file-control{margin-top:7px;border:1px dashed #aebbc2;padding:13px 14px;color:var(--orange);text-transform:none;letter-spacing:0;font-size:.85rem}.file-control b{font-weight:400;color:#83939c;margin-left:10px}.form-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}.form-footer p{color:#7d8c94;font-size:.72rem;margin:0;max-width:260px}.form-status{font-size:.85rem;color:#325c3a;margin:12px 0 0}
footer{background:#05121c;color:#fff;padding:72px 0 22px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px;padding-bottom:55px}.brand-light .brand-mark{border-color:#fff}.brand-light .brand-copy strong{color:#fff}.footer-brand p{color:#8fa3af;font-size:.82rem;line-height:1.75;margin:23px 0 0}.footer-col{display:flex;flex-direction:column;gap:9px}.footer-col h3{font:700 1.1rem var(--condensed);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px;color:#ff8d47}.footer-col a{color:#b5c3cb;font-size:.84rem}.footer-col a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;color:#647985;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em}
@media(max-width:980px){.site-header nav{gap:17px}.site-header nav a{font-size:.8rem}.service-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.trust-layout{gap:45px}.estimate{background:linear-gradient(110deg,#0b2334 0%,#0b2334 38%,#eff3f5 38%)}.estimate-layout{grid-template-columns:.75fr 1.25fr;gap:42px}}
@media(max-width:760px){.shell{width:min(100% - 32px,1180px)}.topbar-inner span{display:none}.topbar-inner a{margin:0 auto}.site-header{height:70px}.menu-toggle{display:block}.site-header nav{position:absolute;top:70px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 16px 18px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.site-header nav.open{display:flex}.site-header nav a{padding:12px 10px;font-size:.9rem}.nav-cta{text-align:center;margin-top:8px}.hero{min-height:660px}.hero-bg{background-position:62% center}.hero-overlay{background:linear-gradient(90deg,rgba(4,16,25,.96),rgba(4,16,25,.73))}.hero-content{padding:70px 0}.hero h1{font-size:3.45rem}.hero-copy{font-size:.95rem}.hero-proof{flex-direction:column;gap:8px}.hero-proof span{padding:0;border:0}.values-row{justify-content:center;gap:12px;flex-wrap:wrap;padding:14px 0}.values-row i:nth-of-type(even){display:none}.section{padding:78px 0}.split-heading,.project-heading,.trust-layout,.estimate-layout{grid-template-columns:1fr;gap:30px}.section h2,.trust-section h2,.estimate h2{font-size:2.85rem}.service-grid,.project-grid{grid-template-columns:1fr}.service-card{min-height:0}.trust-section{padding:78px 0}.trust-grid{margin-top:12px}.estimate{padding:78px 0;background:linear-gradient(180deg,#0b2334 0,#0b2334 35%,#eff3f5 35%)}.estimate-intro{padding-bottom:35px}.estimate-form{padding:25px 20px}.field-row{grid-template-columns:1fr;gap:0}.form-footer{align-items:flex-start;flex-direction:column;gap:18px}.form-footer .button{width:100%}.footer-main{grid-template-columns:1fr;gap:36px}.footer-bottom{flex-direction:column;gap:8px}.project-art{height:190px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Sujo Electric brand system */
.topbar{background:#000;border-bottom:1px solid rgba(57,166,221,.22)}
.topbar-divider{background:#3f5461}
.site-header{background:rgba(0,0,0,.96);border-bottom-color:rgba(57,166,221,.24)}
.brand{gap:14px}
.brand-logo{display:block;width:188px;height:auto;mix-blend-mode:screen}
.brand-label{color:#8da2ae;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em;padding-left:14px;border-left:1px solid #2c3f49;line-height:1.4}
.site-header nav a{color:#dbe6ec}
.nav-cta{color:#00101a!important;box-shadow:0 6px 18px rgba(57,166,221,.25)}
.menu-toggle span:not(.sr-only){background:#fff}
.eyebrow.light{color:#6cc7f4}
.hero h1 span{color:#66c4f4}
.button-primary{color:#00111b}
.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{box-shadow:0 0 0 3px rgba(57,166,221,.12)}
footer{background:#000}
.footer-logo{width:224px}
.footer-col h3{color:#61c1f0}

@media(max-width:760px){
  .brand-logo{width:145px}
  .brand-label{display:none}
  .site-header nav{background:#02070a;border-bottom-color:rgba(57,166,221,.24)}
}

/* Contrast-safe estimate section and customer links */
.estimate{background:linear-gradient(90deg,#082537 0%,#082537 42%,#eff3f5 42%,#eff3f5 100%)}
.estimate-intro{position:relative;z-index:1}
.estimate-intro h2,.estimate-intro>p,.contact-direct a{color:#fff}
.estimate-intro>p:not(.eyebrow){color:#c9d7df}
.contact-direct span{color:#8facbc}
.nav-cta,.button-primary{color:#fff!important}
.connect-strip{background:#fff;padding:82px 0 72px;border-top:1px solid var(--line)}
.connect-layout{display:grid;gap:40px}
.review-callout{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;padding-bottom:40px;border-bottom:1px solid var(--line)}
.review-callout h2{font:700 clamp(2.35rem,4vw,3.8rem)/.98 var(--condensed);text-transform:uppercase;color:var(--navy);margin:0 0 12px}
.review-callout p:not(.eyebrow){max-width:680px;margin:0;color:var(--steel)}
.review-button{flex:0 0 auto;background:#09283a;color:#fff;min-width:235px}
.review-button:hover{background:var(--orange)}
.social-row{display:flex;align-items:center;justify-content:space-between;gap:30px}
.social-row>span{font:700 1.05rem var(--condensed);text-transform:uppercase;letter-spacing:.08em;color:var(--navy)}
.social-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.social-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border:1px solid #bfd0da;color:#15374a;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;transition:.2s}
.social-links a:hover{background:#09283a;border-color:#09283a;color:#fff;transform:translateY(-2px)}

@media(max-width:760px){
  .estimate{background:#082537}
  .estimate-form{margin-top:4px}
  .connect-strip{padding:64px 0 58px}
  .review-callout,.social-row{align-items:flex-start;flex-direction:column;gap:24px}
  .review-button{width:100%}
  .social-links{justify-content:flex-start;width:100%}
  .social-links a{flex:1 1 calc(50% - 10px)}
}

/* Compact social icons */
.social-links{gap:9px}
.social-links a{position:relative;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;flex:0 0 42px;border-color:#9fb8c6;color:#0b4a6f}
.social-links img{display:block;width:20px;height:20px;transition:.18s}
.social-links a:hover img,.social-links a:focus-visible img{filter:brightness(0) invert(1)}
.social-links a:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);background:#061f30;color:#fff;padding:5px 8px;font-size:.62rem;line-height:1;letter-spacing:.04em;white-space:nowrap;opacity:0;pointer-events:none;transition:.18s}
.social-links a:hover:after,.social-links a:focus-visible:after{opacity:1;transform:translate(-50%,0)}

/* Purposeful motion: strong entrance, quiet movement, no visual clutter */
@keyframes hero-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-drift{from{transform:scale(1.015)}to{transform:scale(1.055)}}
.hero-bg{animation:hero-drift 12s ease-out both}
.hero-content>.eyebrow,.hero-content>h1,.hero-copy,.hero-actions,.hero-proof{opacity:0;animation:hero-rise .72s cubic-bezier(.22,1,.36,1) forwards}
.hero-content>h1{animation-delay:.1s}.hero-copy{animation-delay:.2s}.hero-actions{animation-delay:.3s}.hero-proof{animation-delay:.42s}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.service-card,.project-card,.trust-grid div{will-change:transform}
.project-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#a9c3d1}
.project-art span,.project-art i{transition:transform .45s cubic-bezier(.22,1,.36,1)}
.project-card:hover .project-art span{transform:scale(1.06)}
.project-card:hover .project-art i{transform:rotate(-28deg) translateX(18px)}
.button span,.service-card a span,.text-link span{display:inline-block;transition:transform .2s ease}
.button:hover span,.service-card a:hover span,.text-link:hover span{transform:translateX(4px)}
.values-row span{transition:transform .2s ease}
.values-row span:hover{transform:translateY(-2px)}

@media(max-width:760px){
  .social-links a{flex:0 0 42px}
}

@media(prefers-reduced-motion:reduce){
  .hero-bg,.hero-content>.eyebrow,.hero-content>h1,.hero-copy,.hero-actions,.hero-proof{animation:none!important;opacity:1;transform:none}
  .reveal{opacity:1;transform:none}
}

/* Authentic Sujo Electric project photography */
.project-art{height:240px;display:block;background:var(--navy)}
.project-art:before,.project-art:after{content:"";position:absolute;pointer-events:none}
.project-art:before{inset:0;width:auto;height:auto;border:0;background:linear-gradient(180deg,rgba(3,8,12,.02),rgba(3,8,12,.24));transform:none;z-index:1}
.project-art:after{inset:14px;border:1px solid rgba(255,255,255,.3);z-index:2}
.project-art img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04);transition:transform .5s cubic-bezier(.22,1,.36,1),filter .3s ease}
.project-one .project-art img{object-position:center 48%}
.project-two .project-art img{object-position:center 42%}
.project-three .project-art img{object-position:center}
.project-four .project-art img{object-position:center 44%}
.project-five .project-art img{object-position:72% center}
.project-six .project-art img{object-position:center}
.project-card:hover .project-art img{transform:scale(1.045);filter:saturate(1) contrast(1.04)}
.project-five .project-art img{transform:translateY(14px) scale(1.12)}
.project-five:hover .project-art img{transform:translateY(14px) scale(1.16)}
.project-seven{grid-column:span 3}
.project-seven .project-art{height:340px}
.project-seven .project-art img{object-position:center 42%}

.capability-band{margin-top:24px;padding:30px 32px;background:var(--navy);color:#fff;display:grid;grid-template-columns:260px 1fr;gap:38px;align-items:center}
.capability-title{display:flex;flex-direction:column}
.capability-title span{color:#6cc7f4;font-size:.7rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:7px}
.capability-title strong{font:700 1.55rem/1.08 var(--condensed);text-transform:uppercase}
.capability-band ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px 20px}
.capability-band li{position:relative;padding-left:14px;color:#c7d4dc;font-size:.78rem;font-weight:600}
.capability-band li:before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;background:#3da6dd;transform:rotate(45deg)}

@media(max-width:980px){
  .project-seven{grid-column:span 2}
  .capability-band{grid-template-columns:1fr}
}

@media(max-width:760px){
  .hero-bg{background-position:60% center}
  .project-art{height:220px}
  .project-seven{grid-column:span 1}
  .project-seven .project-art{height:220px}
  .capability-band{padding:26px 22px;gap:22px}
  .capability-band ul{grid-template-columns:1fr 1fr}
}

/* Multi-page experience */
@keyframes page-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes page-exit{to{opacity:0;transform:translateY(6px)}}
.inner-page main{animation:page-enter .38s ease-out both}
body.page-leaving main{animation:page-exit .16s ease-in both}
.site-header nav a[aria-current="page"]:not(.nav-cta){color:#66c4f4;position:relative}
.site-header nav a[aria-current="page"]:not(.nav-cta):after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:#3da6dd}
.site-header nav .nav-cta[aria-current="page"]{background:var(--orange-dark);box-shadow:inset 0 0 0 1px #4eb1e4}
.button-dark{background:#09283a;color:#fff}.button-dark:hover{background:var(--orange)}
.section-action{display:flex;justify-content:center;margin-top:38px}

.home-cta{background:#071b28;color:#fff;padding:82px 0;position:relative;overflow:hidden}
.home-cta:after{content:"";position:absolute;right:-90px;top:-150px;width:360px;height:360px;border:1px solid rgba(255,255,255,.1);transform:rotate(45deg)}
.home-cta-inner{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:60px}
.home-cta h2{font:700 clamp(2.7rem,4.5vw,4.2rem)/.96 var(--condensed);text-transform:uppercase;margin:0;color:#fff;max-width:760px}
.home-cta p:not(.eyebrow){color:#b8c8d1;margin:18px 0 0;max-width:650px}
.home-cta-actions{display:flex;flex-direction:column;align-items:center;gap:14px;flex:0 0 auto}
.home-cta-actions>a:not(.button){color:#bcd0dc;font-size:.82rem;font-weight:700}

.page-hero{min-height:440px;position:relative;display:grid;align-items:end;overflow:hidden;background:#071722;color:#fff}
.page-hero:before,.page-hero:after{content:"";position:absolute;inset:0}
.page-hero:before{background-size:cover;background-position:center;filter:saturate(.8)}
.page-hero:after{background:linear-gradient(90deg,rgba(2,9,14,.97) 0%,rgba(2,9,14,.86) 48%,rgba(2,9,14,.3) 100%)}
.page-hero-services:before{background-image:url("assets/project-panel-conduit.webp");background-position:78% 51%}
.page-hero-projects:before{background-image:url("assets/project-perimeter-lighting.webp");background-position:center 42%}
.page-hero-about:before{background-image:url("assets/project-hero.webp");background-position:center}
.page-hero-estimate:before{background-image:url("assets/project-service-upgrade.webp");background-position:78% 50%}
.page-hero-contact:before{background-image:url("assets/project-commercial-lighting.webp");background-position:center}
.page-hero-inner{position:relative;z-index:1;padding:88px 0 72px}
.page-hero h1{font:800 clamp(3.4rem,6vw,5.7rem)/.91 var(--condensed);text-transform:uppercase;letter-spacing:-.015em;margin:0;max-width:850px}
.page-hero-inner>p:last-child{color:#d2dee4;font-size:1.02rem;max-width:680px;margin:24px 0 0}

.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.detail-card{position:relative;border:1px solid var(--line);background:#fff;padding:34px 34px 30px;min-height:330px}
.detail-card>span,.expectation-grid article>span{color:#3da6dd;font-size:.72rem;font-weight:800;letter-spacing:.12em}
.detail-card h3,.expectation-grid h3,.contact-panel h3{font:700 1.8rem/1.05 var(--condensed);text-transform:uppercase;color:var(--navy);margin:14px 0 14px}
.detail-card p{color:var(--steel);font-size:.9rem;margin:0 0 18px}
.detail-card ul,.contact-panel ul{list-style:none;margin:0;padding:0}
.detail-card li,.contact-panel li{position:relative;padding:6px 0 6px 16px;color:#40535f;font-size:.82rem;border-top:1px solid #e6ecef}
.detail-card li:before,.contact-panel li:before{content:"";position:absolute;left:0;top:1.05em;width:5px;height:5px;background:#3da6dd;transform:rotate(45deg)}
.capability-section{background:#071b28;color:#fff;padding:100px 0}
.capability-section h2{font:700 clamp(2.7rem,4.5vw,4.35rem)/.98 var(--condensed);text-transform:uppercase;color:#fff;margin:0}
.capability-section .section-heading>p{color:#b8c8d1}
.capability-chip-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.capability-chip-grid span{padding:20px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);color:#d2dde3;font-size:.77rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}

.project-page{background:#f7f9fa}
.portfolio-grid .project-art{height:250px}
.portfolio-grid .project-card:nth-child(1) img{object-position:center 48%}
.portfolio-grid .project-card:nth-child(2) img{object-position:center 44%}
.portfolio-grid .project-card:nth-child(4) img{object-position:center 42%}
.portfolio-grid .project-card:nth-child(8) img{object-position:center 58%}
.portfolio-grid .project-card:nth-child(10) img{object-position:center 48%}
.portfolio-ev .project-art img{object-position:72% center;transform:translateY(14px) scale(1.12)}
.portfolio-ev:hover .project-art img{transform:translateY(14px) scale(1.16)}
.portfolio-feature{grid-column:span 2}
.portfolio-feature .project-art img{object-position:center 42%}

.about-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:78px;align-items:center}
.about-photo{height:590px;overflow:hidden;position:relative}
.about-photo:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.45)}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:58% center}
.owner-photo{margin:0;background:#071b28}
.owner-photo img{object-position:center 28%;filter:saturate(.94) contrast(1.02)}
.owner-photo figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:30px;display:flex;flex-direction:column;padding:17px 20px;background:rgba(3,8,12,.88);border-left:3px solid #3da6dd;color:#fff;backdrop-filter:blur(8px)}
.owner-photo figcaption strong{font:700 1.45rem/1.05 var(--condensed);text-transform:uppercase;letter-spacing:.02em}
.owner-photo figcaption span{margin-top:5px;color:#b9cfda;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.about-copy h2,.contact-page h2{font:700 clamp(2.8rem,4.3vw,4.25rem)/.98 var(--condensed);text-transform:uppercase;color:var(--navy);margin:0}
.about-copy>p:not(.eyebrow){color:var(--steel);margin:23px 0}
.about-copy .button{margin-top:10px}
.expectation-section{background:#f7f9fa}
.expectation-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.expectation-grid article{background:#fff;padding:30px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.expectation-grid p{font-size:.85rem;color:var(--steel);margin:0}

.estimate-page{background:linear-gradient(90deg,#082537 0%,#082537 38%,#eff3f5 38%,#eff3f5 100%)}
.contact-page-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:start}
.contact-lead{max-width:670px;color:var(--steel)}
.contact-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px}
.contact-card{min-height:150px;border:1px solid var(--line);padding:25px;display:flex;flex-direction:column;position:relative;background:#fff;transition:.2s}
a.contact-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#a9c3d1}
.contact-card span{color:#5d7380;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}
.contact-card strong{font:700 1.45rem/1.15 var(--condensed);text-transform:uppercase;color:var(--navy);margin-top:12px}
.contact-card small{color:#71818a;margin-top:6px}
.contact-card i{position:absolute;right:20px;bottom:15px;color:#3da6dd;font-style:normal;font-weight:800}
.contact-panel{background:#071b28;color:#fff;padding:38px}
.contact-panel h3{color:#fff;font-size:2rem}
.contact-panel li{color:#c0d0d8;border-top-color:rgba(255,255,255,.12);font-size:.86rem}
.contact-panel .button{margin-top:28px;width:100%}

@media(max-width:980px){
  .capability-chip-grid,.expectation-grid{grid-template-columns:repeat(2,1fr)}
  .about-layout,.contact-page-layout{grid-template-columns:1fr;gap:42px}
  .about-photo{height:480px}
}

@media(max-width:760px){
  .site-header nav a[aria-current="page"]:not(.nav-cta):after{display:none}
  .page-hero{min-height:390px}
  .page-hero-inner{padding:70px 0 58px}
  .page-hero h1{font-size:3.35rem}
  .service-detail-grid,.contact-card-grid{grid-template-columns:1fr}
  .detail-card{min-height:0;padding:28px 24px}
  .capability-chip-grid{grid-template-columns:1fr 1fr}
  .home-cta{padding:68px 0}
  .home-cta-inner{align-items:flex-start;flex-direction:column;gap:32px}
  .home-cta-actions{align-items:stretch;width:100%}
  .home-cta-actions .button{width:100%}
  .portfolio-feature{grid-column:span 1}
  .portfolio-grid .project-art{height:220px}
  .about-photo{height:360px}
  .expectation-grid{grid-template-columns:1fr}
  .estimate-page{background:#082537}
  .contact-panel{padding:30px 24px}
}

@media(prefers-reduced-motion:reduce){
  .inner-page main,body.page-leaving main{animation:none}
}

/* Improved readability on light surfaces */
:root{--ink:#0b151b;--steel:#3f515b;--line:#c5d1d7}
body{background:#f1f4f6}
.projects,.connect-strip,.about-story,.contact-page{background:#f1f4f6}
.services,.expectation-section,.project-page{background:#edf2f4}
.service-card,.project-card,.detail-card,.expectation-grid article,.contact-card,.estimate-form{background:#fbfcfd}
.form-footer p{color:#586a74}
.file-control b{color:#60727c}
.photo-email-note{min-height:75px;margin-bottom:18px;padding:12px 14px;border:1px dashed #aebbc2;background:#f7fafb}
.photo-email-note span{display:block;color:#354650;font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.photo-email-note p{margin:5px 0 0;color:#526773;font-size:.82rem;line-height:1.45}
/* Mobile overflow fix */
/* Mobile / small-screen layout fix */
@media (max-width: 980px) {

  .trust-layout,
  .split-heading,
  .project-heading,
  .estimate-layout,
  .about-layout,
  .contact-page-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .trust-layout {
    gap: 36px;
  }

  .home-cta-inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .shell {
    width: calc(100% - 24px);
    max-width: 100%;
  }

  .trust-layout > *,
  .split-heading > *,
  .project-heading > *,
  .estimate-layout > *,
  .about-layout > *,
  .contact-page-layout > *,
  .service-grid > *,
  .service-detail-grid > *,
  .project-grid > *,
  .contact-card-grid > * {
    min-width: 0;
  }

  .trust-grid,
  .capability-band ul,
  .capability-chip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-grid,
  .service-detail-grid,
  .project-grid,
  .expectation-grid,
  .contact-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero h1,
  .page-hero h1,
  .section h2,
  .trust-section h2,
  .estimate h2 {
    overflow-wrap: break-word;
  }

  .contact-card strong,
  .contact-direct a,
  .footer-col a,
  .home-cta-actions a {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  img,
  svg {
    max-width: 100%;
    height: auto;
  }

  .button {
    max-width: 100%;
    white-space: normal;
    text-align: center;
  }

  .social-links a::after {
    display: none;
  }
}