/* TE2: offline system fonts, charcoal, steel and hazard amber. */
:root{--ink:#15181c;--steel:#2b3139;--amber:#e0a526;--paper:#f5f3ee;--muted:#565e67;--line:#d9d7d0}
*{box-sizing:border-box}html{scroll-padding-top:140px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.18;text-wrap:balance}h1{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.035em}h2{font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.025em}h3{font-size:1.25rem}p{margin-bottom:1.4rem}a:focus-visible,summary:focus-visible{outline:3px solid var(--amber);outline-offset:5px}a:hover{text-decoration-thickness:2px}.wrap{max-width:1180px;margin:auto;padding:0 32px}.section{padding-top:72px;padding-bottom:72px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 23px;text-decoration:none;font-size:.92rem;font-weight:750;line-height:1.4;border:1px solid transparent}.amber{background:var(--amber);color:var(--ink)}.amber:hover{background:#f0bb47}.outline{border-color:#77808b;color:var(--paper)}.outline:hover{border-color:var(--amber)}.text-link{font-weight:700;text-underline-offset:5px}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;background:var(--amber);padding:12px}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:10;background:var(--ink);color:var(--paper);border-bottom:1px solid #393d43}.header-inner{display:flex;align-items:center;gap:28px;min-height:94px}.brand{flex-shrink:0}.brand img{width:165px;height:auto}.desktop-nav{margin-left:auto;display:flex;gap:26px}.desktop-nav a{padding:12px 0;text-decoration:none;font-size:.9rem;font-weight:650}.desktop-nav a[aria-current],.desktop-nav a:hover{color:var(--amber)}.header-phone{white-space:nowrap}.mobile-menu{display:none}
.hero{background:var(--steel);color:var(--paper);border-bottom:4px solid var(--amber)}.home-hero{background:#1b1d21;text-align:center;padding:34px 0 48px}.hero-mark{width:min(680px,92%);height:auto;object-fit:contain;margin:0 auto 26px}.home-hero h1{max-width:850px;margin:0 auto 28px;font-size:clamp(1.9rem,3.6vw,3rem)}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.interior-hero{padding:40px 0 52px}.interior-hero h1{max-width:900px;margin:16px 0 0}.breadcrumb{color:var(--amber);font-size:.85rem;text-underline-offset:4px}
.prose{overflow-wrap:anywhere}.prose p{max-width:76ch}.prose h2,.prose h3{margin-top:32px}.prose ul{padding-left:25px;margin:20px 0 30px}.prose li{padding:5px 0 5px 8px}.prose li::marker{color:#8a5a00}.intro{max-width:970px}.services-section{background:#e9e7e0;border-block:1px solid var(--line)}.section-heading{max-width:820px;margin-bottom:36px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.service-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);text-decoration:none;min-width:0;border-bottom:3px solid var(--amber)}.service-card:hover{border-color:#996909;background:#fff}.card-photo{width:100%;aspect-ratio:1.5;object-fit:cover}.card-body{padding:24px;display:flex;flex-direction:column;flex:1;min-height:160px}.card-body h3{margin:0 0 24px;overflow-wrap:anywhere}.card-action{display:flex;justify-content:space-between;gap:10px;margin-top:auto;font-size:.8rem;font-weight:700;color:var(--muted)}.about-teaser,.about-layout{display:grid;grid-template-columns:1fr 1.7fr;gap:64px;align-items:start}.about-teaser .job-photo{width:100%;aspect-ratio:1;object-fit:cover}.about-teaser h2{margin-top:0}.about-layout{grid-template-columns:1.7fr 1fr}.about-layout>.job-photo{width:100%;object-fit:cover}.service-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:64px}.prose>.job-photo{float:right;width:217px;margin:0 0 28px 32px}.prose:after{content:"";display:block;clear:both}.other-services{background:#e9e7e0;padding:28px;border-top:3px solid var(--amber)}.other-services h2{font-size:1.25rem}.other-services ul{list-style:none;padding:0;margin:0 0 24px}.other-services li{border-bottom:1px solid #c9c7c0}.other-services a:not(.button){display:block;padding:12px 0;font-size:.9rem;text-decoration:none}.other-services a:hover{text-decoration:underline}.other-services .button{width:100%}
.contact-band{background:var(--steel);color:var(--paper);padding:48px 0}.band-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.contact-band h2{margin-bottom:14px}.contact-band p{margin-bottom:0}.band-actions{display:flex;gap:24px;align-items:center}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px}.contact-panel{padding:36px;border-top:4px solid var(--amber);background:#e9e7e0;overflow-wrap:anywhere}.phone{font-weight:750;text-underline-offset:5px}.contact-panel .phone{font-size:clamp(1.6rem,3vw,2.4rem)}.contact-panel p{margin:20px 0 0}.site-footer{background:var(--ink);color:var(--paper);padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:48px}.site-footer nav{display:flex;flex-direction:column;align-items:start;gap:8px}.site-footer nav a{font-size:.9rem;text-decoration:none}.site-footer nav a:hover{color:var(--amber)}.footer-contact{overflow-wrap:anywhere}.footer-contact p{font-size:.9rem;margin:8px 0}.footer-contact .phone{color:var(--amber)}.copyright{border-top:1px solid #393d43;margin-top:32px;padding-top:20px;font-size:.8rem;color:#b4bac2}
@media(max-width:1000px){.header-inner{gap:20px}.desktop-nav{gap:18px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-layout{gap:32px;grid-template-columns:minmax(0,1fr) 250px}.about-teaser,.about-layout,.contact-layout{gap:32px}.band-grid{grid-template-columns:1fr}.band-actions{justify-content:start}}
@media(max-width:800px){.wrap{padding-left:24px;padding-right:24px}.header-inner{flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:14px;min-height:80px}.brand img{width:140px}.desktop-nav{display:none}.header-phone{margin-left:auto;padding:10px 14px;font-size:.8rem;min-height:44px}.mobile-menu{display:block;width:100%}.mobile-menu summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:650;border-top:1px solid #393d43}.mobile-menu summary::-webkit-details-marker{display:none}.menu-icon{color:var(--amber);font-size:1.2rem}.mobile-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 0}.mobile-menu nav a{padding:10px;text-decoration:none;background:var(--steel);font-size:.9rem}.mobile-menu nav a[aria-current]{color:var(--amber)}.service-layout,.about-layout,.contact-layout{grid-template-columns:1fr}.about-layout>.job-photo{max-width:360px}.footer-grid{gap:28px;grid-template-columns:1fr 1fr}.footer-contact{grid-column:1/-1}.section{padding-top:48px;padding-bottom:48px}}
@media(max-width:520px){body{font-size:16px}.wrap{padding-left:20px;padding-right:20px}.header-inner{gap:8px}.brand img{width:122px}.header-phone{padding:10px 12px}.home-hero{padding:26px 0 36px}.hero-mark{margin-bottom:24px}.cards,.about-teaser,.footer-grid{grid-template-columns:1fr}.card-photo{aspect-ratio:1.8}.card-body{min-height:130px}.about-teaser{gap:28px}.about-teaser .job-photo{max-width:280px}.prose>.job-photo{float:none;width:100%;max-width:280px;margin:0 0 28px}.band-actions{flex-wrap:wrap;gap:20px}.interior-hero{padding:28px 0 36px}.contact-panel{padding:24px}.footer-contact{grid-column:auto}.footer-grid{gap:32px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto;animation:none;transition:none}}

.safety-section{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start}.safety-section h2{text-transform:uppercase;border-left:3px solid var(--red);padding-left:24px}.safety-section p{color:#c4c8ca}@media(max-width:700px){.safety-section{grid-template-columns:1fr;gap:24px}}
/* Adapted from ChatGPT's corrected TE2 ZIP, keeping the controlling copy/hero/CSP contract. */
:root{--red:#e8392c;--ember:#ff792d;--panel:#1d2022;--dark-line:#34383a}
body{background:var(--ink);color:var(--paper)}
h1,h2,h3{font-weight:800;letter-spacing:-.025em}h2{font-size:clamp(1.8rem,3.5vw,3rem)}
.home-hero h1{text-transform:uppercase;font-size:clamp(2rem,4vw,3.5rem);max-width:960px}
.interior-hero{background:var(--ink);padding-top:56px;padding-bottom:64px;border-bottom-color:var(--red)}
.interior-hero h1{text-transform:uppercase;font-size:clamp(2.2rem,5vw,4.5rem)}
.intro{max-width:1180px;background:var(--ink);color:#c4c8ca}.intro p{max-width:85ch;margin-left:auto;margin-right:auto}
.services-section{background:var(--ink);border-block-color:var(--dark-line)}
.section-heading{max-width:850px;border-left:3px solid var(--red);padding-left:24px}.section-heading h2{text-transform:uppercase}.section-heading p{color:#c4c8ca}
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.service-card{background:var(--panel);border:1px solid var(--dark-line);border-bottom:3px solid var(--red);color:var(--paper)}
.service-card:hover{background:#252a2d;border-color:var(--red)}
.card-photo{aspect-ratio:1.5}.card-body{padding:30px;min-height:190px}.card-body h3{font-size:1.5rem}.card-action{color:#c4c8ca;font-size:.875rem}.card-action span{color:var(--ember)}
.about-teaser{background:var(--paper);color:var(--ink);max-width:none;padding-left:max(32px,calc((100% - 1116px)/2));padding-right:max(32px,calc((100% - 1116px)/2));grid-template-columns:1fr 1.2fr;gap:64px;align-items:center}
.about-teaser .job-photo{aspect-ratio:1.15}.about-teaser h2{text-transform:uppercase}.about-teaser .text-link{color:var(--ink);text-decoration-color:var(--red)}
.about-layout{color:#c4c8ca}.about-layout h2,.prose h3{color:var(--paper)}
.other-services{background:var(--panel);border-top-color:var(--red);align-self:start}.other-services li{border-color:var(--dark-line)}.other-services a:not(.button){color:#c4c8ca}
.prose li::marker{color:var(--ember)}
.contact-band{background:var(--amber);color:var(--ink)}.contact-band .button{background:var(--ink);color:var(--paper)}.contact-band .button:hover{background:var(--steel)}.contact-band .text-link{color:var(--ink)}
.contact-panel{background:var(--panel);border-top-color:var(--red);color:var(--paper)}.contact-panel .phone{color:var(--amber)}
.site-footer{border-top:1px solid var(--dark-line)}.footer-grid{align-items:start}.site-footer .brand img{height:auto;object-fit:contain}.copyright{border-color:var(--dark-line)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.about-teaser{gap:40px;padding-left:32px;padding-right:32px}}
@media(max-width:800px){.about-teaser{padding-left:24px;padding-right:24px}.card-body{padding:24px}}
@media(max-width:520px){.cards,.about-teaser{grid-template-columns:1fr}.about-teaser{padding-left:20px;padding-right:20px;gap:28px}.card-body{min-height:150px}.about-teaser .job-photo{max-width:none}.interior-hero{padding-top:32px;padding-bottom:40px}}

/* Alternating warm and cool coloured logo accents scroll in the left column. */
main,.site-footer{position:relative;isolation:isolate;overflow:clip}
.brand-watermarks{position:absolute;inset:80px auto 0 16px;width:calc(33% - 16px);display:flex;flex-direction:column;gap:clamp(120px,12vw,200px);overflow:hidden;pointer-events:none;z-index:1;opacity:.075}.brand-watermarks img{display:block;width:100%;height:auto;flex:none;object-fit:contain}.brand-watermarks .cool{filter:hue-rotate(175deg) saturate(.65)}
main>*>*,.site-footer>*{position:relative;z-index:2}
@media(max-width:520px){.brand-watermarks{left:8px;top:56px;width:calc(33% - 8px);gap:120px}}
/* Warm metallic accents around the original header artwork. */
.site-header .brand{position:relative;padding:8px 10px;background:radial-gradient(ellipse at center,rgba(224,165,38,.09),transparent 72%)}
.site-header .brand::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(var(--amber),var(--amber)) left top/16px 1px no-repeat,linear-gradient(var(--amber),var(--amber)) left top/1px 10px no-repeat,linear-gradient(var(--amber),var(--amber)) right bottom/16px 1px no-repeat,linear-gradient(var(--amber),var(--amber)) right bottom/1px 10px no-repeat;opacity:.65}
.site-header .brand::after{content:"";position:absolute;left:20%;right:20%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.45;pointer-events:none}
.site-header .brand img{filter:drop-shadow(0 1px 1px #000) drop-shadow(0 0 5px rgba(224,165,38,.2))}
@media(max-width:520px){.site-header .brand{padding:6px}.site-header .brand img{width:110px}}
@media print{.brand-watermarks{display:none}}

/* Preview intro: consumed fuses, bright moving sparks, billowing blast. */
html.intro-active{overflow:hidden}
.te2-intro[hidden]{display:none!important}
.te2-intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#000;color:var(--paper);transition:opacity .55s ease;isolation:isolate}
.intro-stage{width:min(850px,88vw);position:relative;z-index:2;filter:drop-shadow(0 0 24px rgba(255,102,20,.15))}
.intro-logo{display:block;width:100%;height:auto}
.intro-fuses{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.fuse-guide{fill:none;stroke:none}
.fuse-wire{fill:none;stroke:#8b6751;stroke-width:5;stroke-linecap:butt}
.intro-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
.te2-intro.burst .intro-stage{opacity:0;transition:opacity .08s ease}
.intro-caption{position:absolute;left:16px;right:16px;bottom:70px;text-align:center;letter-spacing:.24em;font-size:.7rem;opacity:.6;z-index:4}
.intro-skip{position:absolute;right:24px;bottom:24px;z-index:5;background:rgba(16,19,23,.65);color:var(--paper);border:1px solid #62686e;padding:10px 18px;font:inherit;cursor:pointer}
.te2-intro.leaving{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.te2-intro{display:none!important}}
@media print{.te2-intro{display:none!important}}

.landing-page{background:#000;min-height:100svh;margin:0}
.landing-page .intro-skip{opacity:0;transition:opacity .15s}
.landing-page .intro-skip:focus-visible{opacity:1;outline:2px solid var(--amber);outline-offset:4px}

/* Character-only silhouette and flame typography; body copy keeps a solid fill. */
.site-footer>.brand-watermarks{position:absolute;z-index:1}
.brand-watermarks{opacity:.085}.brand-watermarks .cool,.brand-watermarks .warm{filter:none}
.footer-brand-row{display:flex;justify-content:center;padding-bottom:32px}
.footer-wordmark{display:block;width:min(520px,85%)}.footer-wordmark img{width:100%;height:auto}
.site-footer .footer-grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px}.site-footer .footer-contact{grid-column:auto}
.copyright{text-align:center}
:root{--flame-glow:0 1px 1px #2a1005,0 -1px 4px rgba(255,196,86,.55),0 -4px 9px rgba(255,112,26,.3),0 -8px 16px rgba(232,57,44,.18)}
h1,h2,h3{ text-shadow:var(--flame-glow)}
.desktop-nav a,.mobile-menu summary,.mobile-menu nav a,.site-footer nav a,.text-link,.breadcrumb,.phone{ text-shadow:var(--flame-glow)}
.desktop-nav a:hover,.desktop-nav a:focus-visible,.mobile-menu nav a:hover,.site-footer nav a:hover{color:#ffe1a3;text-shadow:0 0 3px #fff0bb,0 -3px 7px #ff9d34,0 -7px 13px rgba(247,80,18,.8)}
p,li{ text-shadow:0 0 7px rgba(255,143,62,.13)}
.about-teaser h2,.contact-band h2{ text-shadow:0 1px 0 rgba(255,244,210,.55),0 -2px 6px rgba(210,65,8,.22)}
.about-teaser p,.contact-band p,.contact-band .text-link{ text-shadow:0 0 6px rgba(154,48,8,.12)}
@media(max-width:700px){.site-footer .footer-grid{grid-template-columns:1fr;text-align:center;gap:28px}.site-footer nav{align-items:center}.footer-brand-row{padding-bottom:24px}.footer-wordmark{width:min(440px,100%)}}
@media print{h1,h2,h3,p,li,a,summary{ text-shadow:none!important}}

/* Centred watermark follows the document; footer contacts leave room to grow. */
.brand-watermarks{left:50%;width:75%;transform:translateX(-50%);gap:clamp(160px,18vw,280px)}
.site-footer .footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.site-footer .footer-contact{text-align:left;max-width:100%}
.contact-row{display:flex;align-items:flex-start;gap:12px}.contact-row>span,.contact-row>a{min-width:0;overflow-wrap:anywhere}
.contact-icon{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:3px;color:var(--amber)}
.footer-bottom{margin-top:32px}.site-footer .footer-bottom nav{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:clamp(10px,2.5vw,32px);flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--dark-line)}
.site-footer .footer-bottom nav a{display:inline-flex;align-items:center;min-height:44px}.footer-bottom .copyright{border:0;margin-top:8px;padding-top:8px}
.media-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.media-card{min-width:0;padding:24px;background:rgba(29,32,34,.92);border:1px solid var(--dark-line);border-top:3px solid var(--red)}
.media-card h3{margin-bottom:20px}.youtube-stage,.te2-media-player{display:block;width:100%;min-height:200px;aspect-ratio:16/9;background:#08090a;border:0}.te2-media-player{object-fit:contain}
.youtube-stage{position:relative}.youtube-placeholder{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:16px;text-align:center;padding:20px}.youtube-placeholder svg{width:64px;height:44px}.youtube-placeholder p{margin:0;color:#b4bac2}
.youtube-player{display:block;border:0;width:100%;height:100%;min-height:200px;position:absolute;inset:0}.youtube-placeholder[hidden],.te2-media-player[hidden],.youtube-player[hidden],.youtube-channel[hidden],.te2-audio-player[hidden]{display:none}
.youtube-channel{display:inline-block;margin-top:16px}.media-caption{margin:14px 0 0;color:#b4bac2;font-size:.9rem}.te2-audio-player{width:100%;margin:40px 0}
@media(max-width:800px){.media-grid{grid-template-columns:1fr}}
@media(max-width:700px){.site-footer .footer-grid{grid-template-columns:minmax(0,1fr)}.footer-space{display:none}}
@media(max-width:520px){.brand-watermarks{left:50%;width:75%;top:56px;gap:160px}.media-card{padding:18px}.site-footer .footer-bottom nav{gap:10px}.site-footer .footer-bottom nav a{font-size:.85rem}}

/* Project-led home feature: survey-grid detail, metallic type and clear service routes. */
.project-focus{border-block:1px solid var(--dark-line);background:linear-gradient(110deg,rgba(17,20,23,.96),rgba(29,32,34,.88)),repeating-linear-gradient(0deg,transparent 0 47px,#4b5157 48px),repeating-linear-gradient(90deg,transparent 0 47px,#4b5157 48px)}
.project-focus .eyebrow{font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin-bottom:24px}
.project-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}.project-heading h2{font-size:clamp(2rem,4.4vw,3.8rem);max-width:780px;margin:0}.project-heading h2 span{color:#bac3cb;text-shadow:0 1px 1px #000,0 -1px 0 #f3f5f6}.project-heading .button{flex-shrink:0}
.project-streams{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #474c50}.project-streams article{padding:36px 36px 36px 0}.project-streams article+article{padding-left:36px;border-left:1px solid #474c50}.stream-number{display:block;color:var(--amber);font-size:.75rem;letter-spacing:.12em;font-weight:750;margin-bottom:20px}.project-streams h3{font-size:clamp(1.7rem,2.6vw,2.4rem);margin-bottom:18px}.project-streams p{max-width:46ch;color:#c4c8ca}.project-streams .text-link{font-size:.9rem}
.project-statements{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-statements li{padding:0 0 0 18px;border-left:2px solid var(--ember)}.project-statements strong{display:block;font-size:1.05rem;color:#ffe1b2;margin-bottom:8px}.project-statements span{display:block;color:#b9c1c7;font-size:.9rem;line-height:1.65}
@media(max-width:1000px){.project-heading{flex-direction:column;align-items:flex-start}}
@media(max-width:700px){.project-streams,.project-statements{grid-template-columns:1fr}.project-streams article{padding:28px 0}.project-streams article+article{padding-left:0;border-left:0;border-top:1px solid #474c50}.project-heading{margin-bottom:28px}.project-statements{gap:24px}}

/* A single viewport-anchored platinum mark remains visible as the content scrolls. */
body>.brand-watermarks{position:fixed;inset:50% auto auto 50%;width:75%;transform:translate(-50%,-50%);height:auto;display:block;overflow:visible;z-index:0;opacity:.085;pointer-events:none}
body>.brand-watermarks img{width:100%;max-height:88vh;object-fit:contain;position:static}
main,.site-footer{z-index:1;background:transparent}.home-hero,.services-section,.interior-hero{background:transparent}.about-teaser{background:rgba(21,24,28,.78);color:var(--paper)}.about-teaser .text-link{color:var(--paper)}
.capability-points{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:40px}.capability-points article{border-top:1px solid #42494e;padding:30px 0}.capability-points h3{font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:16px}.capability-points p{max-width:55ch;color:#c4c8ca;margin-bottom:0}.eyebrow{color:var(--amber);font-size:.8rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.profile-note{border-left:3px solid var(--amber);padding:24px 28px;background:rgba(29,32,34,.8);margin-top:32px}.profile-note p{max-width:75ch}.profile-badge-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.profile-badge-row h3{margin:0}.linkedin-badge{text-decoration:none;display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #52616f;border-radius:4px;font-size:.9rem;font-weight:700}.linkedin-icon{display:grid;place-items:center;background:#0a66c2;color:white;width:25px;height:25px;border-radius:3px;font-family:Arial,sans-serif;font-weight:800;text-shadow:none}.linkedin-badge small{font-size:.7rem;color:#b9c1c7;font-weight:400}.safety-sequence{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.safety-sequence span{border:1px solid #51585e;padding:12px 20px;color:#ffe1b2;font-weight:750}.safety-note{font-size:.9rem;color:#c4c8ca;margin-top:20px}
@media(max-width:700px){.capability-points{grid-template-columns:1fr}.profile-note{padding:20px}.safety-sequence span{flex:1 0 40%;padding:12px}}

/* Staggered capability boxes pair a headline hook with a short supporting caption. */
.capability-points{display:flex;flex-direction:column;gap:22px;margin-top:40px}.capability-points article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);column-gap:32px;align-items:center;width:84%;padding:26px 30px;border:1px solid #42494e;border-left:3px solid var(--amber);background:linear-gradient(120deg,rgba(35,40,44,.94),rgba(21,24,28,.88));box-shadow:0 10px 28px rgba(0,0,0,.15)}
.capability-points article:nth-child(even){align-self:flex-end;border-left:1px solid #42494e;border-right:3px solid var(--ember)}.capability-points .stream-number{grid-column:1/-1;margin-bottom:14px}.capability-points h3{margin:0;font-size:clamp(1.5rem,2.4vw,2rem);text-wrap:balance}.capability-points p{margin:0;max-width:48ch;font-size:1rem;line-height:1.65}
@media(max-width:800px){.capability-points article{width:94%;gap:16px;padding:24px}.capability-points .stream-number{margin:0}}
@media(max-width:600px){.capability-points article{width:100%;grid-template-columns:1fr;padding:22px}.capability-points article:nth-child(even){align-self:stretch}.capability-points{gap:18px}.capability-points h3{font-size:1.65rem}}

/* Compact service strips alternate left and right; imagery becomes a small site cue. */
.cards{display:flex;flex-direction:column;gap:16px}.service-card{display:grid;grid-template-columns:112px minmax(0,1fr);width:84%;min-height:124px;border:1px solid #42494e;border-left:3px solid var(--amber);background:rgba(29,32,34,.9)}.service-card:nth-child(even){align-self:flex-end;border-left:1px solid #42494e;border-right:3px solid var(--ember)}
.service-card .card-photo{width:112px;height:100%;min-height:124px;aspect-ratio:auto;object-fit:cover}.service-index{display:grid;place-items:center;color:#9ba8b2;font-size:2.2rem;font-weight:800;border-right:1px solid #42494e;background:linear-gradient(145deg,#292f34,#181c1f)}
.service-card .card-body{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) auto;align-items:center;gap:24px;min-height:0;padding:22px 24px}.service-card .card-body h3{font-size:clamp(1.2rem,1.8vw,1.5rem);margin:0;overflow-wrap:normal}.service-caption{font-size:.9rem;line-height:1.55;color:#c4c8ca;margin:0}.service-card .card-action{margin:0;gap:10px;white-space:nowrap;font-size:.8rem}
@media(max-width:1000px){.service-card{width:94%}.service-card .card-body{grid-template-columns:1fr auto;gap:10px 20px}.service-card .card-body h3{grid-column:1}.service-caption{grid-column:1}.service-card .card-action{grid-column:2;grid-row:1/3}}
@media(max-width:600px){.service-card{width:100%;grid-template-columns:64px minmax(0,1fr)}.service-card:nth-child(even){align-self:stretch}.service-card .card-photo{width:64px;min-height:124px}.service-card .card-body{padding:16px;gap:8px;grid-template-columns:1fr}.service-card .card-action{grid-column:1;grid-row:auto;justify-content:flex-start}.service-index{font-size:1.6rem}.service-card .card-body h3{font-size:1.2rem}}

/* Quiet construction detailing: spaced panels joined by brushed steel and collars. */
.cards{gap:40px}.service-card{position:relative;--joint-x:59.52%;--joint-gap:40px;min-height:144px}.service-card:nth-child(even){--joint-x:40.48%}.service-card .card-body{padding-top:28px;padding-bottom:28px}
.capability-points{gap:34px}.capability-points article{position:relative;--joint-x:59.52%;--joint-gap:34px;padding-top:32px;padding-bottom:32px}.capability-points article:nth-child(even){--joint-x:40.48%}
.service-card:not(:last-child)::after,.capability-points article:not(:last-child)::after{content:"";position:absolute;pointer-events:none;top:100%;left:var(--joint-x);transform:translateX(-50%);width:7px;height:calc(var(--joint-gap) + 2px);background:linear-gradient(90deg,#252c31 0%,#64717a 28%,#98a4ab 43%,#4d5962 64%,#242b30 100%);border-inline:1px solid #394249;opacity:.65}
.service-card:not(:last-child)::before,.capability-points article:not(:last-child)::before{content:"";position:absolute;pointer-events:none;top:calc(100% + var(--joint-gap)/2 - 5px);left:var(--joint-x);transform:translateX(-50%);width:13px;height:10px;z-index:1;border:1px solid #4e5b64;border-radius:2px;background:linear-gradient(0deg,#293139,#707c84 45%,#414c55 70%,#252e35);box-shadow:0 1px 3px #101316;opacity:.8}
@media(max-width:1000px) and (min-width:601px){.service-card{--joint-x:53.19%}.service-card:nth-child(even){--joint-x:46.81%}}
@media(max-width:800px) and (min-width:601px){.capability-points article{--joint-x:53.19%}.capability-points article:nth-child(even){--joint-x:46.81%}}
@media(max-width:600px){.cards,.capability-points{gap:30px}.service-card,.service-card:nth-child(even),.capability-points article,.capability-points article:nth-child(even){--joint-x:50%;--joint-gap:30px}.service-card .card-body{padding:20px 16px}.capability-points article{padding:26px 22px}}

/* Concrete end anchors terminate the service-section steel spine. */
.cards{position:relative;padding-block:70px;background:linear-gradient(90deg,#252c31,#85929b 43%,#303a42) center top 28px/7px 44px no-repeat,linear-gradient(90deg,#252c31,#85929b 43%,#303a42) center bottom 28px/7px 44px no-repeat}
.cards::before,.cards::after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:100vw;height:28px;pointer-events:none;border:1px solid #656d70;border-top-color:#a3aaa9;border-bottom:4px solid #4c5559;border-radius:2px;background:repeating-linear-gradient(17deg,transparent 0 6px,rgba(20,26,28,.1) 7px,transparent 8px 13px),repeating-linear-gradient(103deg,transparent 0 9px,rgba(235,238,227,.1) 10px,transparent 11px 18px),linear-gradient(135deg,#6b7476,#939b98 48%,#697375);box-shadow:0 3px 8px rgba(0,0,0,.3)}
.cards::before{top:0}.cards::after{bottom:0}
@media(max-width:600px){.cards{padding-block:60px;background-size:7px 34px,7px 34px}.cards::before,.cards::after{width:100vw}}

.services-section .service-subheadline{white-space:nowrap;font-size:clamp(.45rem,1.6vw,1.15rem);font-weight:850;line-height:1.65;letter-spacing:.025em;text-transform:uppercase;color:#fff0dc;text-shadow:0 0 2px #fff3da,0 0 7px rgba(255,173,65,.75),0 -3px 12px rgba(255,109,26,.6),0 -6px 20px rgba(232,57,44,.35)}.service-subheadline span{color:var(--amber);padding-inline:.12em}

/* Warm flame shimmer follows the existing wordmark silhouette. */
.site-header nav a[href="/intranet/"],.site-footer nav a[href="/intranet/"]{color:#ff4545}
.site-header .brand img{display:block;aspect-ratio:1.8;height:auto;object-fit:cover;object-position:center}
.home-hero{padding-top:48px}.home-hero h1{margin-bottom:38px}.home-hero .hero-mark{margin-bottom:38px}
.flame-wordmark{position:relative;isolation:isolate;display:block}
.flame-wordmark img{display:block;width:100%;height:auto;animation:wordmark-heat 3.4s ease-in-out infinite}
.flame-wordmark::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 30% 80%,#ffbc54 0%,transparent 48%),radial-gradient(ellipse at 75% 90%,#ff5620 0%,transparent 46%);background-size:180% 150%;mask:url('/assets/te2-wordmark-red-flames.png') center/100% 100% no-repeat;-webkit-mask:url('/assets/te2-wordmark-red-flames.png') center/100% 100% no-repeat;mix-blend-mode:screen;opacity:.2;animation:wordmark-flame 4.6s ease-in-out infinite alternate}
@keyframes wordmark-heat{0%,100%{filter:drop-shadow(0 -3px 8px rgba(255,111,25,.5)) drop-shadow(0 0 16px rgba(255,76,15,.22))}42%{filter:drop-shadow(0 -5px 13px rgba(255,157,43,.8)) drop-shadow(0 0 23px rgba(255,91,20,.35))}58%{filter:drop-shadow(0 -3px 10px rgba(255,109,24,.6)) drop-shadow(0 0 18px rgba(255,76,15,.25))}74%{filter:drop-shadow(0 -6px 15px rgba(255,170,55,.7)) drop-shadow(0 0 25px rgba(255,103,24,.3))}}
@keyframes wordmark-flame{0%{background-position:0% 100%;opacity:.12}45%{opacity:.3}100%{background-position:100% 20%;opacity:.18}}
@media(prefers-reduced-motion:reduce){.flame-wordmark img,.flame-wordmark::after{animation:none}.flame-wordmark::after{opacity:.12}}

.civil-concrete{width:100%;height:28px;border:1px solid #656d70;border-top-color:#a3aaa9;border-bottom:4px solid #4c5559;background:repeating-linear-gradient(17deg,transparent 0 6px,rgba(20,26,28,.1) 7px,transparent 8px 13px),repeating-linear-gradient(103deg,transparent 0 9px,rgba(235,238,227,.1) 10px,transparent 11px 18px),linear-gradient(135deg,#6b7476,#939b98 48%,#697375);box-shadow:0 3px 8px rgba(0,0,0,.3)}
.civil-layout .capability-points article,.civil-layout .capability-points article:nth-child(even){width:100%;align-self:flex-start;--joint-x:50%}.civil-layout .actions{margin-top:32px}
.civil-heading{position:relative;display:flow-root}.civil-heading::before{content:"";position:absolute;pointer-events:none;left:50%;transform:translateX(-50%);top:-72px;bottom:-40px;width:7px;background:linear-gradient(90deg,#252c31,#98a4ab 43%,#242b30);opacity:.65}.civil-heading::after{content:"";position:absolute;pointer-events:none;left:50%;transform:translateX(-50%);top:-42px;width:13px;height:10px;border:1px solid #4e5b64;border-radius:2px;background:linear-gradient(0deg,#293139,#707c84 45%,#252e35)}.civil-heading h2{font-size:clamp(1.05rem,2.5vw,2.25rem)}.civil-hook{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);white-space:nowrap}.civil-hook>span:first-child{text-align:right}.civil-hook>span:last-child{text-align:left}
@media(max-width:800px){.civil-heading::before{top:-48px}}
.civil-layout .other-services{position:relative}.civil-layout .other-services::before{content:"";position:absolute;pointer-events:none;left:28px;right:28px;bottom:100%;height:75px;background:linear-gradient(90deg,#252c31,#98a4ab 43%,#242b30) left center/7px 100% no-repeat,linear-gradient(90deg,#252c31,#98a4ab 43%,#242b30) right center/7px 100% no-repeat;opacity:.75}.civil-layout .other-services::after{content:"";position:absolute;pointer-events:none;left:25px;right:25px;top:-42px;height:10px;background:linear-gradient(0deg,#293139,#707c84 45%,#252e35) left center/13px 10px no-repeat,linear-gradient(0deg,#293139,#707c84 45%,#252e35) right center/13px 10px no-repeat}
@media(max-width:800px){.civil-layout .other-services::before{height:35px}.civil-layout .other-services::after{top:-22px}}
.civil-hook{display:block;text-align:left}.civil-hook>span{display:inline;text-align:left}
.civil-layout>div{min-width:0}.civil-layout .civil-heading h2{max-width:calc(50% - 18px);overflow-wrap:anywhere}.civil-layout .civil-heading:has(.civil-hook) h2{max-width:none}.civil-layout .service-card,.civil-layout .service-card:nth-child(even){width:100%;align-self:flex-start;--joint-x:50%}.civil-layout .cards{padding-block:0;background:none}.civil-layout .cards::before,.civil-layout .cards::after{display:none}.civil-layout .contact-panel{margin-top:28px}.civil-layout .card-body{grid-template-columns:1fr auto}.civil-layout .service-caption{grid-column:1}.civil-layout .card-action{grid-column:2;grid-row:1/3}
@media(max-width:600px){.civil-layout .card-body{grid-template-columns:1fr}.civil-layout .card-action{grid-column:1;grid-row:auto}}
.page-our-services>div{position:relative}.page-our-services>div::before{content:"";position:absolute;pointer-events:none;left:50%;transform:translateX(-50%);top:-72px;height:72px;width:7px;background:linear-gradient(90deg,#252c31,#98a4ab 43%,#242b30);opacity:.65}.page-our-services>div::after{content:"";position:absolute;pointer-events:none;left:50%;transform:translateX(-50%);top:-42px;width:13px;height:10px;border:1px solid #4e5b64;border-radius:2px;background:linear-gradient(0deg,#293139,#707c84 45%,#252e35)}.page-contact .civil-heading::before{bottom:-28px}.page-contact .civil-heading p{max-width:calc(50% - 18px)}.page-contact .civil-heading h2{margin-top:0}
@media(max-width:800px){.page-our-services>div::before{top:-48px;height:48px}.page-our-services>div::after{top:-28px}}
