@font-face{font-family:monda;src:url(../media/Monda_VariableFont_wght-s.p.0ym__fepsn-m7.ttf)format("truetype");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:monda Fallback;src:local(Arial);ascent-override:112.67%;descent-override:40.06%;line-gap-override:0.0%;size-adjust:106.65%}.monda_d5c0c9fb-module__UUcXKq__className{font-family:monda,monda Fallback;font-style:normal}.monda_d5c0c9fb-module__UUcXKq__variable{--font-monda:"monda", "monda Fallback"}
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--yale:#094074;--baltic:#3c6997;--aqua:#5adbff;--mustard:#ffdd4a;--saffron:#fe9000;--canvas:#f5f9fb;--surface:#d8e6ed;--surface-strong:#b9d0dc;--text:#021624;--muted:#29495e;--line:#0940744d;--line-strong:#0940749e;--rail-bg:#f5f9fbf7;--button-text:#f5fbfd;--field:#fbfdfe;--field-placeholder:#3f6073;--selection:#5adbff2b;--floating-surface:#f5f9fbf5;--grid-line:#0940741f;--grid-line-major:#09407436;--rail-width:10.5rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--canvas:#020f1a;--surface:#0a2941;--surface-strong:#123f5e;--text:#f4fbfd;--muted:#bad1dd;--line:#5adbff42;--line-strong:#5adbff94;--rail-bg:#020f1af7;--button-text:#06223a;--field:#061f32;--field-placeholder:#a9c0cd;--selection:#5adbff24;--floating-surface:#061f32f5;--grid-line:#5adbff1f;--grid-line-major:#5adbff36}}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--canvas);color:var(--text);font-family:var(--font-monda), Arial, sans-serif;font-synthesis:none;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}p,li,figcaption,dd{text-wrap:pretty}h1,h2,h3,p,figure,dl,dd{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}::selection{background:var(--aqua);color:#06223a}:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}.section-anchor{scroll-margin-top:1rem}.site-main{margin-left:var(--rail-width)}.content-section,.journey-intro{padding:clamp(6rem,10vw,10rem) clamp(1.5rem,5vw,6rem)}.section-intro{max-width:64rem}.section-intro h2,.fit-copy h2,.approach-copy h2,.contact-copy h2{letter-spacing:-.035em;text-wrap:balance;max-width:14ch;font-size:clamp(2.8rem,5.7vw,5.55rem);font-weight:650;line-height:.98}.section-intro>p,.fit-copy>p,.approach-copy>p,.contact-copy>p{max-width:65ch;color:var(--muted);margin-top:1.5rem;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.7}.side-rail{z-index:20;width:var(--rail-width);border-right:1px solid var(--line);background:var(--rail-bg);-webkit-backdrop-filter:blur(18px)saturate(125%);flex-direction:column;height:100dvh;display:flex;position:fixed;inset:0 auto 0 0}.rail-brand{border-bottom:1px solid var(--line);min-height:5.3rem;color:var(--yale);letter-spacing:.09em;align-items:center;padding:1.3rem 1.35rem;font-size:1.05rem;font-weight:700;display:flex}@media (prefers-color-scheme:dark){.rail-brand{color:var(--aqua)}}.rail-brand-short,.rail-index{display:none}.rail-nav{flex-direction:column;flex:1;justify-content:center;padding:1rem 0;display:flex}.rail-link{min-height:3.45rem;color:var(--muted);isolation:isolate;align-items:center;padding:0 1.35rem;font-size:.82rem;font-weight:650;transition:color .22s cubic-bezier(.2,0,0,1),background-color .22s cubic-bezier(.2,0,0,1);display:flex;position:relative}.rail-selection{z-index:-1;background:var(--selection);box-shadow:inset 2px 0 0 var(--aqua);pointer-events:none;position:absolute;inset:0}.rail-link:hover:not([data-active=true]){background:var(--selection)}.rail-link:hover,.rail-link[data-active=true]{color:var(--text)}.rail-label,.rail-index{z-index:1;position:relative}.rail-contact{border-top:1px solid var(--line);background:var(--yale);color:#f5fbfd;justify-content:space-between;align-items:center;gap:.5rem;min-height:5.3rem;padding:1.1rem 1.35rem;font-size:.69rem;font-weight:700;line-height:1.25;transition:background-color .18s;display:flex}.rail-contact:hover{background:var(--baltic)}.hero{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:clamp(1.5rem,3vw,4rem);min-height:100dvh;padding:1.5rem clamp(1.5rem,3.5vw,4rem);display:grid;position:relative;overflow:hidden}.hero:before{border:1px solid var(--line);content:"";opacity:.75;width:11rem;height:11rem;position:absolute;inset:auto auto 5% 3%;transform:rotate(10deg)}.hero-copy{z-index:2;grid-column:1/span 7;padding:clamp(1rem,3vw,3rem) 0;position:relative}.hero h1{letter-spacing:-.04em;text-wrap:balance;max-width:14ch;font-size:clamp(3.35rem,5.8vw,5.35rem);font-weight:650;line-height:.94}.hero h1 span{color:var(--baltic);display:inline}@media (prefers-color-scheme:dark){.hero h1 span{color:var(--aqua)}}.hero-summary{max-width:56ch;color:var(--muted);margin-top:1.6rem;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:.8rem;min-height:3.2rem;padding:.85rem 1.05rem;font-size:.78rem;font-weight:700;line-height:1;transition:background-color .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(1px)}.button-primary{background:var(--yale);color:#f5fbfd}.button-primary:hover{background:var(--baltic)}@media (prefers-color-scheme:dark){.button-primary{background:var(--aqua);color:var(--button-text)}.button-primary:hover{background:#8be7ff}}.button-secondary{border-color:var(--line-strong);background:var(--floating-surface);color:var(--text)}.button-secondary:hover{border-color:var(--baltic);background:var(--surface)}.hero-visual{grid-column:8/-1;position:relative}.hero-image-wrap{background:var(--surface);height:min(88dvh,55rem);min-height:34rem;position:relative;overflow:hidden}.hero-image-wrap img,.journey-image-layer img,.project-image-wrap img,.journey-static-image img{object-fit:cover}.hero-image-wrap img{object-position:62% center}.hero-image-scrim,.hero-contours,.hero-section-line{pointer-events:none;position:absolute;inset:0}.hero-image-scrim{background:linear-gradient(#04152405,#04152452)}.hero-contours{mix-blend-mode:screen;opacity:.72;background:repeating-radial-gradient(at 74% 52%,#0000 0 29px,#5adbff85 30px 31px,#0000 32px 51px),repeating-radial-gradient(at 18% 78%,#0000 0 43px,#ffdd4a4d 44px 45px,#0000 46px 70px)}.hero-section-line{background:var(--saffron);opacity:.85;transform-origin:0;height:1px;inset:63% -12% auto 8%;transform:rotate(-9deg);box-shadow:0 4px #5adbff94}.fit-section{background:var(--surface);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:clamp(3rem,6vw,7rem);min-height:90dvh;display:grid}.fit-copy{grid-column:1/span 5}.condition-field{border:1px solid var(--line-strong);background:var(--canvas);isolation:isolate;grid-column:6/-1;min-height:39rem;position:relative;overflow:hidden}.condition-field:after{z-index:-1;background:var(--saffron);content:"";opacity:.65;height:1px;position:absolute;inset:50% -8% auto;transform:rotate(-7deg)}.condition-topography,.coordination-contours{z-index:-1;background:repeating-radial-gradient(at 30% 35%,#0000 0 26px,#09407426 27px 28px,#0000 29px 46px),repeating-radial-gradient(at 72% 68%,#0000 0 40px,#5adbff2e 41px 42px,#0000 43px 66px);position:absolute;inset:-18%;transform:rotate(8deg)}.condition-core{border:1px solid var(--aqua);background:var(--yale);color:#f5fbfd;text-align:center;border-radius:50%;place-items:center;width:10.5rem;height:10.5rem;font-size:.8rem;font-weight:700;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.condition-item{border:1px solid var(--line);background:var(--floating-surface);min-width:9rem;min-height:3.15rem;color:var(--text);align-items:center;gap:.65rem;padding:.75rem .9rem;font-size:.7rem;font-weight:650;display:flex;position:absolute}.condition-1{inset:12% auto auto 10%}.condition-2{inset:18% 8% auto auto}.condition-3{inset:43% auto auto 4%}.condition-4{inset:48% 4% auto auto}.condition-5{inset:auto auto 12% 12%}.condition-6{inset:auto 10% 15% auto}.journey-section{background:var(--canvas)}.journey-intro{flex-direction:column;justify-content:flex-end;min-height:65dvh;display:flex}.journey-intro h2{max-width:12ch}.journey-sequence{height:500dvh}.journey-sticky{grid-template-columns:minmax(19rem,.36fr) minmax(0,.64fr);min-height:100dvh;display:grid;position:sticky;top:0;overflow:hidden}.journey-copy{z-index:2;background:var(--surface);grid-template-columns:2px 1fr;align-content:center;gap:1.5rem;padding:clamp(2rem,5vw,5.5rem);display:grid;position:relative}.journey-progress{background:var(--line);width:2px;height:15rem;position:relative}.journey-progress span{background:var(--aqua);transform-origin:top;position:absolute;inset:0}.journey-copy-stack{min-height:16rem;position:relative}.journey-copy-layer{will-change:transform, opacity;flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.journey-copy-layer h3,.journey-static h3{letter-spacing:-.035em;text-wrap:balance;max-width:12ch;font-size:clamp(2.3rem,4.6vw,4.7rem);font-weight:650;line-height:.98}.journey-copy-layer p,.journey-static p{max-width:38ch;color:var(--muted);margin-top:1.2rem;font-size:.92rem;line-height:1.65}.journey-visual,.journey-image-stack{background:var(--surface-strong);min-width:0;height:100dvh;position:relative;overflow:hidden}.journey-image-layer{will-change:transform, opacity;position:absolute;inset:0}.journey-treatment,.blueprint-grid{pointer-events:none;position:absolute;inset:0}.journey-treatment{background:linear-gradient(#04142208,#0414226b)}.journey-terrain{background:repeating-radial-gradient(at 35% 56%,#0000 0 36px,#5adbff6b 37px 38px,#0000 39px 61px),linear-gradient(#0414220a,#04142259)}.journey-field{background:linear-gradient(90deg,#0940742e,#0000 55%,#fe90001c)}.journey-system{background:linear-gradient(160deg,#0000 48%,#5adbff38 49% 49.4%,#0000 50%)}.journey-permit{mix-blend-mode:multiply;background:linear-gradient(90deg,#0940746b,#0940740f)}.journey-field-support{background:linear-gradient(#0000,#04142275)}.blueprint-grid{mix-blend-mode:screen;background:linear-gradient(#5adbff17 1px,#0000 1px) 0 0/7.5rem 7.5rem,linear-gradient(90deg,#5adbff17 1px,#0000 1px) 0 0/7.5rem 7.5rem}.journey-static{gap:4rem;padding:0 clamp(1.5rem,5vw,6rem) 8rem;display:grid}.journey-static article{grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);align-items:end;gap:2rem;display:grid}.journey-static-image{min-height:28rem;position:relative}.journey-static h3,.journey-static p{grid-column:2}.services-section{background:var(--canvas)}.services-intro{margin-bottom:clamp(3.5rem,7vw,6.5rem)}.service-explorer{grid-template-columns:minmax(18rem,.72fr) minmax(28rem,1.28fr);align-items:start;gap:clamp(2.5rem,5vw,6rem);display:grid}.service-list{border-top:1px solid var(--line-strong)}.service-tab{border:0;border-bottom:1px solid var(--line);width:100%;min-height:5.7rem;color:var(--muted);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;transition:background-color .18s,color .18s;display:flex}.service-tab>span{gap:.35rem;display:grid}.service-tab strong{color:inherit;font-size:.82rem;font-weight:700}.service-tab small{color:var(--muted);font-size:.68rem}.service-tab svg{opacity:0;flex:none;transition:opacity .18s,transform .18s;transform:translate(-8px)}.service-tab:hover,.service-tab[data-active=true]{background:var(--surface);color:var(--text)}.service-tab[data-active=true] svg{opacity:1;transform:translate(0)}.service-panel{border:1px solid var(--line-strong);background:repeating-radial-gradient(ellipse at 105% -10%, transparent 0 34px, #5adbff1f 35px 36px, transparent 37px 56px), var(--surface);min-height:42rem;padding:clamp(1.5rem,4vw,4rem);position:sticky;top:2rem}.service-panel-heading{align-items:flex-start;gap:1rem;display:flex}.service-panel-heading>div{min-width:0}.service-panel-heading p{color:var(--muted);font-size:.72rem;font-weight:650}.service-panel-mark{border:1px solid var(--aqua);width:3rem;height:3rem;color:var(--baltic);border-radius:50%;flex:none;place-items:center;display:grid}@media (prefers-color-scheme:dark){.service-panel-mark{color:var(--aqua)}}.service-panel h3{letter-spacing:-.035em;text-wrap:balance;max-width:12ch;margin-top:.45rem;font-size:clamp(2.25rem,4.5vw,4.8rem);font-weight:650;line-height:.98}.service-panel-lead{max-width:58ch;color:var(--muted);margin-top:2rem;font-size:1rem;line-height:1.68}.service-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:3rem;display:grid}.service-details>div{border-top:1px solid var(--line-strong);padding-top:1rem}.service-details dt{color:var(--text);font-size:.68rem;font-weight:700}.service-details dd{color:var(--muted);margin-top:.65rem;font-size:.74rem;line-height:1.6}.text-link{border-bottom:1px solid var(--line-strong);color:var(--text);align-items:center;gap:.75rem;margin-top:2.5rem;padding-bottom:.3rem;font-size:.75rem;font-weight:700;transition:border-color .18s,color .18s;display:inline-flex}.text-link:hover{border-color:var(--aqua);color:var(--baltic)}@media (prefers-color-scheme:dark){.text-link:hover{color:var(--aqua)}}.projects-section{background:var(--surface)}.projects-intro{margin-bottom:clamp(3.5rem,7vw,6.5rem)}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:clamp(1.5rem,3vw,3.5rem);display:grid}.project-item{min-width:0}.project-hillside{grid-area:span 2/1/auto/span 7}.project-excavation,.project-retaining{grid-column:8/-1}.project-homes{grid-column:1/span 5}.project-rebuild{grid-column:6/-1}.project-image-wrap{background:var(--surface-strong);height:18rem;position:relative;overflow:hidden}.project-hillside .project-image-wrap{height:41rem}.project-homes .project-image-wrap,.project-rebuild .project-image-wrap{height:25rem}.project-image-wrap img{transition:transform .6s cubic-bezier(.16,1,.3,1)}.project-item:hover .project-image-wrap img{transform:scale(1.025)}.project-copy{border-top:1px solid var(--line-strong);grid-template-columns:minmax(10rem,.72fr) minmax(0,1.28fr);gap:1rem;padding-top:1rem;display:grid}.project-copy h3{letter-spacing:-.02em;font-size:clamp(1.05rem,1.7vw,1.55rem);font-weight:700;line-height:1.2}.project-copy p{color:var(--muted);font-size:.75rem;line-height:1.6}.approach-section{background:var(--canvas);grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(3rem,6vw,7rem);display:grid}.approach-copy,.approach-path{grid-column:1/span 6}.approach-path{align-self:end;display:grid}.approach-path article{border-top:1px solid var(--line);grid-template-columns:minmax(9rem,.75fr) minmax(0,1.25fr);gap:1.5rem;padding:1.4rem 0;display:grid}.approach-path h3{font-size:.82rem;font-weight:700;line-height:1.3}.approach-path p{color:var(--muted);font-size:.77rem;line-height:1.65}.coordination-map{border:1px solid var(--line-strong);background:var(--surface);isolation:isolate;grid-area:1/7/span 2/-1;min-height:48rem;position:relative;overflow:hidden}.coordination-map:after{z-index:-1;background:var(--saffron);content:"";opacity:.6;height:1px;position:absolute;inset:auto -20% 29%;transform:rotate(8deg)}.coordination-center{z-index:2;border:1px solid var(--aqua);background:var(--yale);color:#f5fbfd;text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:11rem;height:11rem;display:flex;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.coordination-center strong{letter-spacing:.07em;font-size:.86rem}.coordination-center span{opacity:.8;margin-top:.25rem;font-size:.63rem}.coordination-node{z-index:2;border:1px solid var(--line-strong);background:var(--canvas);min-width:10rem;min-height:3.5rem;color:var(--text);text-align:center;place-items:center;padding:.75rem;font-size:.67rem;font-weight:650;display:grid;position:absolute}.node-owner{inset:12% auto auto 8%}.node-field{inset:15% 8% auto auto}.node-agency{inset:auto auto 13% 9%}.node-contractor{inset:auto 8% 16% auto}.coordination-axis{z-index:1;background:var(--line-strong);transform-origin:50%;width:72%;height:1px;position:absolute;inset:50% auto auto 50%}.axis-one{transform:translate(-50%,-50%)rotate(42deg)}.axis-two{transform:translate(-50%,-50%)rotate(-42deg)}.contact-section{background:var(--surface-strong);min-height:100dvh}.contact-copy h2{max-width:12ch}.site-review-form{border:1px solid var(--line-strong);background:var(--canvas);margin-top:clamp(3rem,6vw,6rem);padding:clamp(1.4rem,4vw,3.5rem)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.form-grid label{gap:.55rem;display:grid}.form-grid label>span{color:var(--text);font-size:.68rem;font-weight:700}.form-wide{grid-column:1/-1}input,select,textarea{border:1px solid var(--line-strong);background:var(--field);width:100%;color:var(--text);border-radius:0;outline:none;transition:border-color .18s,box-shadow .18s}input,select{min-height:3.2rem;padding:.75rem .85rem}textarea{resize:vertical;min-height:8rem;padding:.85rem}input::placeholder,textarea::placeholder{color:var(--field-placeholder);opacity:1}input:focus,select:focus,textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 2px #5adbff38}.form-submit-row{justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.form-submit-row>p{max-width:42ch;color:var(--muted);align-items:center;gap:.6rem;font-size:.68rem;line-height:1.55;display:inline-flex}.form-submit-row>p svg{flex:none}.button:disabled{cursor:wait;opacity:.68;transform:none}.form-status{color:var(--muted);margin-top:1rem;font-size:.72rem}.form-status a{color:var(--text);text-underline-offset:.2rem;text-decoration:underline}footer{color:var(--muted);flex-wrap:wrap;align-items:center;gap:1.2rem 2.2rem;padding-top:4rem;font-size:.75rem;display:flex}footer a{align-items:center;gap:.55rem;transition:color .18s;display:inline-flex}footer a:hover{color:var(--text)}footer span{margin-left:auto}:where(.hero,.fit-section,.journey-intro,.services-section,.projects-section,.approach-section,.contact-section){background-image:linear-gradient(90deg, var(--grid-line-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px), linear-gradient(var(--grid-line) 1px, transparent 1px);background-position:-1px 0,-1px 0,0 -1px;background-size:clamp(38rem,72vw,72rem) 100%,clamp(10rem,18vw,18rem) 100%,100% clamp(6.5rem,9vw,8.5rem)}@media (max-width:1180px){.hero h1{font-size:clamp(3.35rem,5.8vw,5.1rem)}.service-explorer{grid-template-columns:minmax(16rem,.76fr) minmax(24rem,1.24fr);gap:2.5rem}.service-details{grid-template-columns:1fr;gap:1rem}}@media (max-width:900px){:root{--rail-width:3.75rem}.rail-brand{justify-content:center;min-height:4.5rem;padding:0}.rail-brand-full,.rail-label,.rail-contact span{display:none}.rail-brand-short,.rail-index{display:block}.rail-link{justify-content:center;min-height:3rem;padding:0;font-size:.72rem}.rail-contact{justify-content:center;min-height:4.5rem;padding:0}.hero{grid-template-columns:1fr;align-content:center;gap:1.5rem;min-height:100dvh;padding:2rem 1.25rem}.hero-copy,.hero-visual{grid-column:1}.hero-copy{max-width:48rem;padding:0}.hero h1{max-width:12ch;font-size:clamp(3.15rem,9vw,5.3rem)}.hero-image-wrap{height:32dvh;min-height:14rem}.fit-section,.approach-section{grid-template-columns:1fr}.fit-copy,.condition-field,.approach-copy,.approach-path,.coordination-map{grid-column:1}.condition-field{min-height:36rem}.journey-sticky{grid-template-columns:minmax(15rem,.42fr) minmax(0,.58fr)}.journey-copy{padding:2rem}.service-explorer{grid-template-columns:1fr}.service-panel{position:relative;top:auto}.project-hillside{grid-column:1/span 8}.project-excavation,.project-retaining{grid-column:9/-1}.project-homes{grid-column:1/span 6}.project-rebuild{grid-column:7/-1}.approach-copy,.approach-path,.coordination-map{grid-row:auto}.coordination-map{min-height:42rem}}@media (max-width:700px){:root{--rail-width:3.35rem}.side-rail{-webkit-backdrop-filter:none}.hero{min-height:100dvh;padding:1.5rem 1rem}.hero:before{display:none}.hero h1{font-size:clamp(2.75rem,12vw,4.1rem);line-height:.96}.hero-summary{margin-top:1rem;font-size:.88rem}.hero-actions{gap:.55rem;margin-top:1.2rem}.button{width:100%;min-height:2.85rem}.hero-image-wrap{height:25dvh;min-height:11rem}.content-section,.journey-intro{padding:5.5rem 1.1rem}.section-intro h2,.fit-copy h2,.approach-copy h2,.contact-copy h2{font-size:clamp(2.45rem,11vw,3.85rem)}.fit-section{gap:3rem}.condition-field{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;min-height:auto;padding:1rem;display:grid}.condition-core{border-radius:0;grid-column:1/-1;width:auto;height:auto;min-height:7rem;position:relative;inset:auto;transform:none}.condition-item{min-width:0;position:relative;inset:auto}.journey-intro{min-height:56dvh}.journey-sequence{height:500dvh}.journey-sticky{grid-template-rows:minmax(15rem,.42fr) minmax(0,.58fr);grid-template-columns:1fr}.journey-copy{grid-template-columns:2px 1fr;padding:1.25rem}.journey-progress{height:10rem}.journey-copy-stack{min-height:10rem}.journey-copy-layer h3{font-size:clamp(2rem,9vw,3.15rem)}.journey-copy-layer p{margin-top:.7rem;font-size:.74rem}.journey-visual,.journey-image-stack{height:100%}.journey-static{padding:0 1.1rem 5.5rem}.journey-static article{grid-template-columns:1fr}.journey-static-image{min-height:18rem}.journey-static h3,.journey-static p{grid-column:1}.service-tab{min-height:4.8rem}.service-panel{min-height:auto;padding:1.35rem}.service-panel h3{font-size:clamp(2.1rem,10vw,3.25rem)}.project-grid{grid-template-columns:1fr}.project-hillside,.project-excavation,.project-retaining,.project-homes,.project-rebuild{grid-area:auto/1}.project-hillside .project-image-wrap,.project-image-wrap,.project-homes .project-image-wrap,.project-rebuild .project-image-wrap{height:min(68vw,25rem)}.project-copy,.approach-path article{grid-template-columns:1fr}.coordination-map{min-height:35rem}.coordination-center{width:8.5rem;height:8.5rem}.coordination-node{min-width:7.2rem;max-width:8.5rem;min-height:3rem;font-size:.58rem}.form-grid{grid-template-columns:1fr}.form-wide{grid-column:1}.form-submit-row{flex-direction:column;align-items:stretch}footer{flex-direction:column;align-items:flex-start}footer span{margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.project-item:hover .project-image-wrap img,.button:hover,.button:active{transform:none}}@media (prefers-reduced-transparency:reduce){.side-rail{background:var(--canvas);-webkit-backdrop-filter:none}.condition-item{background:var(--canvas)}}
