@font-face{font-family:SiteSans;src:url('/assets/body.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{--ink:#22252a;--paper:#fffdf8;--accent:#6e2336;--soft:#f0e4e2;--line:#d4cdc8;--head:SiteSans,Arial,sans-serif;--radius:0;--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 SiteSans,Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #0672b8;outline-offset:5px}img{display:block;width:100%;height:auto}figure{margin:0}p{margin:0 0 1.25em;max-width:74ch}h1,h2,h3{font-family:var(--head);line-height:1.12;letter-spacing:-.035em;margin:0 0 .65em;text-wrap:balance}h1{font-size:clamp(34px,4.2vw,60px)}h2{font-size:clamp(29px,3.2vw,46px)}h3{font-size:23px}ul{padding-left:1.3em}li{margin:.4em 0}blockquote{margin:1rem 0}address{font-style:normal}svg{width:23px;height:23px}.wrap{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.section{padding-block:76px}.small{font-size:14px;line-height:1.55}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:var(--accent);margin-bottom:18px}.lead{font-size:20px;line-height:1.55}.text-link{font-weight:700;display:inline-block;margin:8px 18px 8px 0;text-decoration:none;border-bottom:1px solid currentColor}.text-link span{display:inline-block;margin-left:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--accent);color:#fff;min-height:54px;padding:14px 24px;border:2px solid var(--accent);border-radius:var(--radius);font-weight:800;text-decoration:none;line-height:1.3;text-align:center;max-width:100%}.button svg{fill:currentColor;flex:none}.button.secondary{background:transparent;color:var(--ink);border-color:currentColor}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:25px 0 15px}.actions .text-link{margin:8px 0}.skip{position:fixed;left:20px;top:-100px;background:#fff;color:#000;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.nav-row{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:98px}.brand{display:block;flex:none;width:290px;max-width:100%}.brand img{height:auto}.site-header nav{display:flex;align-items:center;gap:20px}.site-header nav .text-link{font-size:14px;margin:0;border:0}.site-header nav .button{font-size:15px;padding:10px 15px;min-height:46px}.menu{display:none;background:none;border:0;color:inherit;width:46px;height:46px;padding:10px}.menu span{display:block;height:2px;background:currentColor;margin:6px 0}.hero{padding-block:50px}.hero h1{font:750 16px/1.5 SiteSans,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;margin-bottom:20px;color:var(--accent)}.display{font-family:var(--head);font-size:clamp(45px,5.9vw,86px);letter-spacing:-.055em;line-height:1.02;font-weight:800;margin:0 0 24px;text-wrap:balance}.hero figure img{border-radius:var(--radius)}.hero-copy{min-width:0}.hero figcaption{font-size:12px;letter-spacing:.12em;padding:14px 0;font-weight:700}.trust-strip{display:flex;justify-content:space-between;gap:16px;padding-block:20px;border-block:1px solid var(--line);font-size:14px;font-weight:700}.trust-strip a{text-decoration:none}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.split>*{min-width:0}.split img{border-radius:var(--radius)}.construction{background:var(--soft)}.construction .split>figure{order:2}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.section-head>p{max-width:480px;margin:0}.section-head h2{margin-bottom:0}.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 32px}.equipment-grid article{min-width:0}.equipment-grid article .equipment-photo{margin-bottom:25px}.equipment-grid article h3 .text-link{margin:0;border:0}.equipment-grid article img{border-radius:var(--radius)}.event-check,.planning-note{padding:35px;background:var(--soft);border-radius:var(--radius);align-self:start}.event-check ul{margin-bottom:24px}.process{background:var(--ink);color:white}.process h2{max-width:730px}.process ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:0;margin:45px 0 30px}.process li>span{display:block;font-size:14px;border-bottom:1px solid #ffffff55;padding-bottom:12px;margin-bottom:22px}.process li p{font-size:15px;color:#e7e7e7}.process h3{font-size:23px}.city-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 25px}.city-links a{margin:0;padding:20px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.review-grid figure{border-top:2px solid var(--accent);padding:25px 5px}.review-grid blockquote{font-size:16px}.review-grid figcaption{font-size:14px}.review-grid figcaption span{display:block;opacity:.75}.stars{position:relative;display:inline-block;line-height:1.2;letter-spacing:3px;font-size:20px;color:#a6a6a6;width:max-content}.stars i{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;font-style:normal;color:var(--accent)}.faq-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:750;font-size:19px;line-height:1.45;padding:3px 25px 3px 0}details p{margin:18px 0 5px}.extras-banner{border-top:1px solid var(--line)}.extras-banner p{max-width:850px}.quote-section{background:var(--soft)}.quote-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:start}form{background:var(--paper);padding:35px;border-radius:var(--radius);color:var(--ink)}form h3{font-size:29px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fields .full{grid-column:1/-1}label{display:block;font-size:14px;font-weight:700}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #898989;border-radius:3px;background:#fff;color:#172026;padding:12px;min-height:48px;margin-top:6px;font-size:16px}textarea{resize:vertical}.fields+p{margin-top:20px}form>.button{width:100%}.form-status{font-size:15px;margin:15px 0 0;min-height:24px}footer{background:#182329;color:white;padding-top:65px}footer .wrap{max-width:var(--max)}.footer-grid{display:grid;grid-template-columns:1fr 1fr .9fr;gap:45px}footer h2{font-size:22px;letter-spacing:0}footer p,footer address{font-size:15px}footer .brand{margin-bottom:24px}footer .text-link{display:block;width:fit-content;font-size:15px}footer .button{color:#fff;border-color:white;background:transparent}.map-box{position:relative;margin-top:20px;background:#e0e6e4;min-height:210px}.map-box iframe{width:100%;border:0;display:block}.map-load{position:absolute;inset:0;margin:auto;max-width:90%;height:48px;background:white;color:#172026;border:1px solid #888;padding:8px 20px}.preferred{display:flex;align-items:center;flex-wrap:wrap;gap:20px;border-top:1px solid #ffffff40;margin-top:45px;padding-block:30px}.preferred h2{margin-bottom:8px}.preferred p{margin:0}.google-fallback{display:inline-flex;align-items:center;min-height:46px;border:1px solid #ffffff80;padding:10px 16px;border-radius:6px;font-size:14px}.profiles{padding-block:25px;border-top:1px solid #ffffff40}.profiles div{display:flex;flex-wrap:wrap;gap:15px 25px}.profiles a{font-size:14px}.footer-end{display:flex;justify-content:space-between;padding-block:25px;border-top:1px solid #ffffff40;font-size:13px}.mobile-dock{display:none}.inner-intro{padding-block:65px;border-bottom:1px solid var(--line)}.inner-intro.with-photo{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.inner-intro figure img{border-radius:var(--radius)}.breadcrumb{font-size:13px;margin-bottom:25px}.service-editorial,.city-editorial{display:grid;grid-template-columns:1.45fr .75fr;gap:60px}.prose h2{font-size:31px}.prose h3{font-size:23px}.prose>section{margin-bottom:42px}.section-number{font-size:12px;display:block;color:var(--accent);font-weight:800;letter-spacing:.1em;margin-bottom:12px}.planning-note h2{font-size:26px}.planning-note h3{font-size:18px}.planning-note p{font-size:15px}.request-check{padding:30px;border:1px solid var(--line)}.request-check p{font-size:15px}.decision-grid,.extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.decision-grid article,.extras-grid article{border-top:1px solid var(--line);padding-top:24px}.decision-grid h3{font-size:22px}.extras-grid h2{font-size:28px}.next-reading{border-top:1px solid var(--line)}.next-reading .text-link{margin-right:30px}.narrow{max-width:850px}.policy{max-width:920px}.policy h1{font-size:42px}.policy h2{font-size:27px;margin-top:38px}.review-form{max-width:850px}.review-form input,.review-form select,.review-form textarea{margin-bottom:20px}.review-form button{padding:12px 20px;background:var(--accent);color:white;border:0}.review-form label{margin-top:10px}
/* Thirteen compositions, not thirteen palette-only copies. */
.burgundy{--ink:#39262b;--paper:#faf4ed;--accent:#6e2336;--soft:#eddce0}.burgundy-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-inline:1px solid var(--line);padding:0}.burgundy-grid .hero-copy{padding:55px 40px}.burgundy-grid figure{border-left:1px solid var(--line);padding:45px 24px 20px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.burgundy-grid .hero-note{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--accent);color:#fff;padding:24px 35px}.burgundy-grid .hero-note span{font-size:14px}.burgundy .equipment-grid article{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);gap:25px;padding:25px 0;align-items:center}.burgundy .equipment-grid article .equipment-photo{margin:0}.burgundy .equipment-grid{gap:25px}.burgundy.inner .service-editorial .prose{border-left:4px solid var(--accent);padding-left:32px}
.cyan{--ink:#092e40;--accent:#075677;--soft:#d9f5fb;--paper:#f9feff;--radius:18px}.cyan-window{position:relative;max-width:1440px;margin:30px auto;padding:45px;min-height:630px}.cyan-window>figure{position:absolute;inset:0;z-index:0}.cyan-window>figure img{height:100%;object-fit:cover;border-radius:28px}.cyan-window .hero-copy{position:relative;max-width:575px;background:#fffefdf5;padding:35px;border-radius:20px;margin:0}.cyan-window .display{font-size:clamp(44px,5.2vw,73px)}.cyan-strip{position:relative;background:#0c536d;color:white;border-radius:14px;padding:16px 26px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:30px;font-size:15px}.cyan .construction{border-radius:80px 0 80px 0}.cyan .equipment-grid{grid-template-columns:repeat(4,1fr);gap:20px}.cyan .equipment-grid article{background:var(--soft);border-radius:18px;overflow:hidden}.cyan .equipment-grid article>div:last-child{padding:0 22px 22px}.cyan .equipment-grid h3{font-size:22px}.cyan .equipment-grid p{font-size:15px}.cyan .city-links a{background:var(--soft);border-radius:28px;padding:16px 25px;margin:6px;border:0}.cyan.inner .inner-intro{background:var(--soft);border-radius:0 0 45px 45px;padding-inline:35px}.cyan .planning-note{border:1px solid #83becf}
.olive{--ink:#313c2b;--accent:#394731;--paper:#f4f2e7;--soft:#e4e7d9;--head:Georgia,'Times New Roman',serif;--radius:4px}.olive-field{text-align:center;max-width:1120px}.olive-field .hero-copy{max-width:870px;margin:auto}.olive-field .lead{margin-inline:auto}.olive-field .actions{justify-content:center}.olive-field figure{margin-top:36px}.olive-field figure img{max-height:470px;object-fit:cover}.olive-caption{font:12px SiteSans,sans-serif;letter-spacing:.2em;margin:20px auto 0}.olive .display{font-weight:500}.olive .equipment-grid article{padding:25px;background:#fffdf5}.olive .section-head{border-bottom:1px solid var(--line);padding-bottom:25px}.olive .process{background:#dce1d1;color:var(--ink)}.olive .process p{color:var(--ink)}.olive .process li>span{border-color:var(--line)}.olive.inner .service-editorial{grid-template-columns:1fr}.olive.inner .service-editorial .prose{max-width:850px;margin:auto;columns:2;column-gap:45px}.olive.inner .prose section{break-inside:avoid}.olive.inner .planning-note{max-width:850px;margin:auto;width:100%;border-block:1px solid var(--line)}
.accordion{--ink:#232628;--accent:#b93215;--soft:#fbe8df;--paper:#fffaf5;--radius:7px}.accordion-hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.accordion-hero .display{font-size:clamp(43px,5vw,73px)}.choice-panel{border:1px solid var(--line);padding:25px;background:white}.choice-panel details{border-top:1px solid var(--line);padding:18px 0}.choice-panel summary{display:flex;justify-content:space-between;gap:15px}.choice-panel img{margin-top:20px}.choice-panel .text-link{font-size:14px}.accordion .construction{border-top:5px solid var(--accent)}.accordion .equipment-grid article{display:flex;flex-direction:column-reverse;border-bottom:2px solid var(--ink);padding-bottom:20px}.accordion .equipment-photo{margin:10px 0 0!important}.accordion .process ol{grid-template-columns:1fr 1fr}.accordion.inner .prose section{border-bottom:1px solid var(--line);padding-bottom:25px}
.human{--ink:#162e49;--accent:#9d2835;--soft:#f6e9e5;--paper:#fff;--radius:12px}.human-service{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.human-service .display{font-size:clamp(44px,5vw,70px)}.human-service figure{padding:20px;background:#eff4f8;transform:rotate(2deg)}.human-service figure img{border-radius:8px}.human-service figcaption{letter-spacing:0;text-transform:none;font-size:17px;padding:20px 8px 5px}.human .construction{background:#162e49;color:white}.human .construction .eyebrow{color:#f6b8b5}.human .equipment-grid article{border:1px solid var(--line);padding:24px;border-radius:12px}.human .process{background:#f5eae6;color:var(--ink)}.human .process p{color:var(--ink)}.human .process li>span{border-color:var(--line)}.human.inner .service-editorial{grid-template-columns:1fr 1fr}.human.inner .prose section{padding:25px;background:#f1f5f8;border-radius:12px}
.offset{--ink:#00464a;--accent:#004c4e;--soft:#ecd5c5;--paper:#f4f1e9;--head:Georgia,'Times New Roman',serif;--radius:0}.offset-editorial{display:grid;grid-template-columns:1.05fr .95fr;gap:30px 50px;align-items:center}.offset-editorial .hero-copy{grid-column:1;grid-row:1}.offset-editorial .offset-large{grid-column:2;grid-row:1/3;align-self:start;margin-top:85px}.offset-editorial .offset-large img{aspect-ratio:4/5;object-fit:cover}.offset-editorial .offset-note{grid-column:1;padding:30px;background:var(--soft);max-width:410px;margin-left:45px}.offset-note p{font:italic 30px/1.2 Georgia,serif}.offset .display{font-weight:500;font-style:italic}.offset .equipment-grid{gap:50px}.offset .equipment-grid article:nth-child(even){margin-top:65px}.offset .process{background:var(--accent)}.offset .city-links{grid-template-columns:1fr 1fr}.offset .city-links a{font-family:var(--head);font-size:24px}.offset.inner .inner-intro.with-photo{grid-template-columns:1.3fr .7fr}.offset.inner .inner-intro figure{transform:translateY(35px)}.offset.inner .planning-note{margin-top:80px}
.graphite{--ink:#f4f5f8;--paper:#1d252e;--accent:#b4e6ee;--soft:#2b3846;--line:#52606d;--radius:8px}.graphite .button{color:#102630}.graphite .site-header{background:#141c24}.graphite .eyebrow{color:#b4e6ee}.graphite .quote-section form{background:#f5fbff;color:#152b3c}.graphite form .button{background:#10394a;color:white;border-color:#10394a}.graphite form a{color:#10394a}.graphite-product{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.graphite-product figure{border-radius:20px;padding:25px;background:radial-gradient(ellipse at 40% 30%,#45627b,#1a222b)}.graphite-product figure img{border-radius:12px}.graphite .product-shortcuts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.product-shortcuts a{border:1px solid var(--line);border-radius:30px;padding:8px 15px;font-size:13px;margin:0}.graphite .construction{background:#111921}.graphite .equipment-grid{grid-template-columns:repeat(4,1fr);gap:20px}.graphite .equipment-grid article{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:18px}.graphite .equipment-grid h3{font-size:21px}.graphite .equipment-grid p{font-size:15px}.graphite .process{background:#b4e6ee;color:#183040}.graphite .process p{color:#183040}.graphite .process li>span{border-color:#476877}.graphite footer{background:#111921}.graphite.inner .prose section{border:1px solid var(--line);padding:28px;border-radius:8px}
.places{--ink:#172e42;--accent:#a96800;--paper:#fffdfa;--soft:#f4e6c9;--radius:4px}.places-hero .hero-copy{max-width:960px}.places-hero .display{font-size:clamp(43px,5.5vw,78px)}.place-tiles{display:grid;grid-template-columns:1fr 1fr .7fr;gap:12px;margin-top:40px}.place-tiles a{position:relative;display:block;min-height:300px;text-decoration:none;background:var(--ink);color:white;overflow:hidden}.place-tiles img{height:100%;object-fit:cover}.place-tiles a>span{position:absolute;bottom:0;left:0;right:0;padding:60px 22px 25px;background:linear-gradient(transparent,#102637)}.place-tiles b{display:block;font-size:29px;line-height:1.1;margin-bottom:10px}.place-tiles a:last-child{background:var(--accent)}.place-tiles a:last-child>span{background:none;top:20px;bottom:auto}.places .equipment-grid article{border-bottom:3px solid var(--accent);padding-bottom:25px}.places .process ol{grid-template-columns:repeat(2,1fr)}.places .city-links a{border-left:3px solid var(--accent);padding:16px;margin:7px;background:var(--soft)}.places.inner .inner-intro.with-photo{grid-template-columns:1fr}.places.inner .inner-intro figure img{max-height:420px;object-fit:cover}
.rail{--ink:#173d35;--accent:#17463e;--paper:#fff;--soft:#e7efea;--radius:0}.rail .button{background:#bb432f;border-color:#bb432f;color:white}.rail-hero{display:grid;grid-template-columns:70px 1fr .9fr;gap:35px;align-items:center}.rail-hero .display{font-size:clamp(43px,5vw,70px)}.chapter-rail{align-self:stretch;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-around}.chapter-rail a{font-size:12px;text-decoration:none;font-weight:750}.rail .equipment-grid{display:block}.rail .equipment-grid article{display:grid;grid-template-columns:220px 1fr;gap:35px;align-items:center;border-top:1px solid var(--line);padding:25px 0}.rail .equipment-photo{margin:0!important}.rail .review-grid{grid-template-columns:1fr 1fr}.rail.inner .inner-intro{border-left:9px solid var(--accent);padding-left:35px}.rail.inner .service-editorial{grid-template-columns:.7fr 1.3fr}.rail.inner .service-editorial .planning-note{grid-column:1;grid-row:1}.rail.inner .service-editorial .prose{grid-column:2}
.chapters{--ink:#112b4e;--accent:#112b4e;--paper:#fffaf4;--soft:#f4ddcf;--radius:3px}.chapters .button{background:#c3472e;border-color:#c3472e}.chapters-hero{display:grid;grid-template-columns:1fr .9fr;gap:35px 50px;align-items:center}.chapters-hero .display{font-size:clamp(43px,5.2vw,73px)}.chapter-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;list-style:none;padding:0;margin:0}.chapter-steps li{border-top:2px solid var(--accent);padding-top:16px;font-size:13px}.chapter-steps a{display:block;font-size:18px;font-weight:750;text-decoration:none;margin-top:10px}.chapters .process ol{display:block;counter-reset:item}.chapters .process li{display:grid;grid-template-columns:50px .8fr 1.4fr;gap:30px;padding-block:20px;border-bottom:1px solid #ffffff40;align-items:start}.chapters .process li>span{border:0}.chapters .process li p{margin:0}.chapters.inner .prose>section{padding-left:55px;position:relative}.chapters.inner .section-number{position:absolute;left:0;top:3px;font-size:24px}.chapters .city-links{grid-template-columns:1fr 1fr}
.jobsite{--ink:#181f24;--accent:#e3c400;--paper:#fff;--soft:#eeefec;--radius:4px;--head:Impact,'Arial Narrow',SiteSans,sans-serif}.jobsite .button{color:#151b20}.jobsite .site-header{background:#181f24;color:white}.jobsite .site-header nav .button.secondary{color:white}.jobsite .eyebrow{color:#625300}.jobsite-hero{position:relative;padding:0;min-height:760px;display:flex;align-items:center;background:#172025;color:white}.jobsite-hero>figure{position:absolute;inset:0}.jobsite-hero>figure img{width:100%;height:100%;object-fit:cover}.jobsite-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111b25ed 10%,#111b25b5 43%,transparent 90%)}.jobsite-hero>.wrap{position:relative;z-index:1;padding-block:65px}.jobsite-hero .hero-copy{max-width:630px}.jobsite-hero h1{color:#ffe629}.jobsite-hero .display{font-size:clamp(57px,7.2vw,104px);letter-spacing:-.025em;font-weight:800}.jobsite-hero .button.secondary{color:white}.job-note{font-size:12px;letter-spacing:.13em;margin-top:25px}.jobsite .construction{border-top:9px solid var(--accent)}.jobsite .equipment-grid{grid-template-columns:repeat(4,1fr);gap:24px}.jobsite .equipment-grid h3{font-family:SiteSans,sans-serif;font-size:22px}.jobsite .equipment-grid p{font-size:15px}.jobsite .process{background:#181f24}.jobsite .process h3{font-family:SiteSans,sans-serif}.jobsite.inner .inner-intro{background:#181f24;color:white;padding-inline:35px}.jobsite.inner .inner-intro .button.secondary{color:white}.jobsite .stars i{color:#8c7300}
.mosaic{--ink:#071e48;--accent:#092d52;--paper:#fff;--soft:#e6f0f3;--radius:5px}.mosaic .eyebrow{color:#0f5f52}.mosaic-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:5px;padding:25px 0}.mosaic-hero .hero-copy{padding:35px;background:#e7f0f4}.mosaic-hero .display{font-size:clamp(45px,5.5vw,77px)}.mosaic-main img{height:100%;object-fit:cover}.mosaic-tile{position:relative;text-decoration:none}.mosaic-tile img{width:100%;aspect-ratio:2/1;object-fit:cover}.mosaic-tile span{display:block;position:absolute;bottom:0;left:0;right:0;padding:40px 25px 20px;background:linear-gradient(transparent,#092a43);color:white;font-size:25px;font-weight:800}.mosaic .construction{background:#d7efe6}.mosaic .process{background:#082748}.mosaic .process li>span{display:inline-flex;align-items:center;justify-content:center;border:0;background:#9be2c3;border-radius:50%;color:#082748;width:44px;height:44px}.mosaic .equipment-grid article{background:#e6f0f3;display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;padding:20px;align-items:center}.mosaic .equipment-photo{margin:0!important}.mosaic .equipment-grid h3{font-size:21px}.mosaic .equipment-grid p{font-size:15px}.mosaic.inner .service-editorial .prose>section:nth-child(even){background:#e6f0f3;padding:30px}
.catalogue{--ink:#101820;--accent:#bb3900;--paper:#fff;--soft:#ffede3;--radius:3px}.catalogue-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;border-bottom:2px solid var(--ink)}.catalogue-hero .display{font-size:clamp(45px,5.7vw,82px)}.catalogue-teaser{border-left:1px solid var(--line);padding:20px}.catalogue-teaser span{font-size:11px;letter-spacing:.1em;display:block;margin-top:20px}.catalogue .equipment-grid{display:block}.catalogue .equipment-grid article{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;border-top:2px solid var(--ink);padding:30px 0}.catalogue .equipment-grid article .equipment-photo{order:2;margin:0}.catalogue .equipment-grid h3{font-size:35px}.catalogue .construction{background:#fff1e6;border-bottom:2px solid var(--ink)}.catalogue .process{background:#ba3700}.catalogue .city-links a{padding:22px 0;border-bottom:2px solid var(--ink)}.catalogue.inner .prose>section{border-top:2px solid var(--ink);padding-top:25px}.catalogue.inner .section-number{font-size:22px}
@media(min-width:1500px){.hero{padding-block:65px}.cyan-window{padding:55px}.burgundy-grid{padding:0}.jobsite-hero{padding:0}}
@media(max-width:1120px){.site-header nav{gap:12px}.site-header nav .text-link{font-size:12px}.brand{width:250px}.wrap{width:calc(100% - 44px)}.split{gap:35px}.quote-layout{gap:35px}.display{font-size:63px}.hero .display{font-size:clamp(42px,6vw,70px)}.graphite .equipment-grid,.cyan .equipment-grid,.jobsite .equipment-grid{grid-template-columns:1fr 1fr}.rail-hero{grid-template-columns:50px 1fr .8fr;gap:22px}.footer-grid{gap:25px}}
@media(max-width:900px){.site-header .menu{display:block}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);padding:24px;box-shadow:0 16px 22px #0002;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.site-header nav .text-link{padding:11px;font-size:17px}.nav-row{min-height:80px}.site-header .brand{width:290px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.process ol{grid-template-columns:1fr 1fr}.review-grid{grid-template-columns:1fr 1fr}.service-editorial,.city-editorial,.human.inner .service-editorial{grid-template-columns:1fr;gap:30px}.planning-note{width:100%;max-width:unset}.rail.inner .service-editorial{display:block}.rail.inner .service-editorial .planning-note{margin-top:30px}.decision-grid,.extras-grid{grid-template-columns:1fr 1fr}.place-tiles{grid-template-columns:1fr 1fr}.place-tiles a:last-child{grid-column:1/-1;min-height:125px}.place-tiles a:last-child>span{padding:25px;top:0}.burgundy .equipment-grid article,.mosaic .equipment-grid article{display:block}.burgundy .equipment-photo,.mosaic .equipment-photo{margin-bottom:20px!important}.human-service figure{transform:none}.cyan-window{margin:0}.offset .offset-note{margin-left:0}.quote-layout{grid-template-columns:1fr 1.2fr;gap:25px}}
@media(max-width:680px){body{font-size:16px;line-height:1.65}.wrap{width:calc(100% - 36px)}.section{padding-block:44px}.site-header .brand{width:245px}.nav-row{min-height:77px;gap:8px}.menu{flex:none}.hero{padding-block:32px}.hero h1{font-size:12px;letter-spacing:.055em;margin-bottom:18px}.hero .display{font-size:clamp(40px,10.5vw,58px);line-height:1.05;margin-bottom:20px}.lead{font-size:18px}.hero .lead{font-size:17px}.actions{gap:10px;margin-top:22px}.button{padding:13px 18px;min-height:52px;font-size:16px}.actions>.button{flex:1 1 auto}.hero .actions>.button{flex:1 1 100%}.trust-strip{font-size:12px;gap:15px;align-items:start}.trust-strip a{flex:1}.split,.quote-layout,.faq-section,.inner-intro.with-photo{grid-template-columns:1fr;gap:28px}.split>figure{order:0}.construction .split>figure{order:2}.section-head{display:block;margin-bottom:25px}.section-head>p{margin-top:20px}.section-head>.text-link{margin-top:18px}.equipment-grid,.graphite .equipment-grid,.cyan .equipment-grid,.jobsite .equipment-grid{grid-template-columns:1fr;gap:35px}.equipment-grid article .equipment-photo{margin-bottom:20px}.equipment-grid article h3{font-size:27px}.equipment-grid article img{aspect-ratio:3/2;object-fit:contain}.city-links,.chapters .city-links,.offset .city-links{grid-template-columns:1fr 1fr;gap:0 15px}.city-links a{font-size:14px;padding:15px 0}.review-grid,.rail .review-grid{grid-template-columns:1fr;gap:5px}.review-grid figure{padding-block:25px}.review-grid blockquote{font-size:16px}.review-grid figure:nth-child(n+4){display:none}.inner .review-grid figure:nth-child(n+4){display:block}.process ol{grid-template-columns:1fr 1fr;gap:22px}.process h3{font-size:20px}.process li p{font-size:14px}.process li>span{margin-bottom:17px}.fields{gap:15px;grid-template-columns:1fr}.fields .full{grid-column:auto}form{padding:25px 20px}.quote-layout>div>p{max-width:55ch}.quote-layout form h3{font-size:26px}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-grid>div:last-child{grid-column:auto}.footer-end{font-size:12px;gap:20px}.preferred{display:block;margin-top:35px}.preferred>div{margin-bottom:20px}.preferred .google-fallback{margin-top:12px;font-size:13px}footer{padding-top:40px;padding-bottom:78px}footer .brand{width:265px;max-width:100%}.mobile-dock{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:var(--paper);padding:10px 12px max(10px,env(safe-area-inset-bottom));box-shadow:0 -3px 15px #0002}.mobile-dock .button{min-height:47px;font-size:14px;padding:10px 8px}.mobile-dock .button svg{width:19px;height:19px}.inner-intro{padding-block:35px}.inner-intro h1{font-size:36px}.inner-intro.with-photo{gap:25px}.inner-intro .lead{font-size:18px}.service-editorial,.city-editorial{display:block}.planning-note{padding:26px;margin-top:30px}.prose h2{font-size:27px}.decision-grid,.extras-grid{grid-template-columns:1fr;gap:24px}.policy h1{font-size:35px}.request-check{padding:22px}.faq-section{gap:20px}.map-box{max-width:480px}.review-form{padding-inline:0}.review-form form{padding:20px}.burgundy-grid{display:block;padding:0;width:calc(100% - 24px)}.burgundy-grid .hero-copy{padding:34px 22px}.burgundy-grid figure{border-left:0;border-top:1px solid var(--line);padding:22px 12px 10px}.burgundy-grid .hero-note{display:block;padding:20px 22px}.burgundy-grid .hero-note>*{display:block}.burgundy-grid .hero-note span{margin-top:10px}.burgundy .equipment-grid article{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px}.burgundy .equipment-grid article h3{font-size:22px}.burgundy .equipment-grid article p{font-size:14px}.burgundy .equipment-grid article .eyebrow{font-size:10px;margin-bottom:10px}.burgundy .equipment-photo{margin:0!important}.burgundy.inner .service-editorial .prose{padding-left:20px}.cyan-window{padding:25px 18px 0;display:flex;flex-direction:column;background:var(--soft);min-height:0}.cyan-window>figure{position:static;order:2;margin-top:25px}.cyan-window>figure img{height:auto;object-fit:contain;border-radius:16px}.cyan-window .hero-copy{padding:26px 22px;border-radius:18px;background:white}.cyan-strip{order:3;display:block;font-size:14px;padding:20px;margin:20px -18px 0;border-radius:0}.cyan .construction{border-radius:45px 0}.cyan .equipment-grid article{display:grid;grid-template-columns:.95fr 1.05fr;gap:15px}.cyan .equipment-grid article .equipment-photo{margin:0;align-self:center}.cyan .equipment-grid article>div:last-child{padding:20px 17px 20px 0}.cyan .equipment-grid article h3{font-size:22px}.cyan .equipment-grid article p{font-size:14px}.cyan .city-links a{font-size:13px;padding:13px 15px;margin:5px 0}.cyan.inner .inner-intro{padding-inline:22px}.olive-field .display{font-size:clamp(44px,11vw,62px)}.olive-field figure img{max-height:none;object-fit:contain}.olive-caption{font-size:10px;letter-spacing:.12em}.olive .equipment-grid article{padding:20px}.olive.inner .service-editorial .prose{columns:1}.accordion-hero{display:block}.choice-panel{margin-top:30px;padding:20px}.choice-panel summary{font-size:18px}.accordion .process ol{grid-template-columns:1fr}.human-service{display:block}.human-service figure{margin-top:35px;padding:14px}.human-service figcaption{font-size:15px}.human .equipment-grid article{padding:20px}.offset-editorial{display:grid;grid-template-columns:1fr;gap:25px}.offset-editorial .hero-copy,.offset-editorial .offset-large,.offset-editorial .offset-note{grid-column:auto;grid-row:auto;margin:0;max-width:none}.offset-editorial .offset-large img{aspect-ratio:3/2;object-fit:contain}.offset-editorial .offset-note{padding:25px}.offset-note p{font-size:29px}.offset .equipment-grid article:nth-child(even){margin-top:0}.offset .city-links a{font-size:18px}.offset.inner .inner-intro.with-photo{grid-template-columns:1fr}.offset.inner .inner-intro figure{transform:none}.offset.inner .planning-note{margin-top:30px}.graphite-product{display:block}.graphite-product figure{margin-top:30px;padding:15px}.graphite .product-shortcuts{gap:8px}.product-shortcuts a{font-size:12px;padding:8px 12px}.graphite .equipment-grid article{display:grid;grid-template-columns:.9fr 1.1fr;gap:15px;padding:18px}.graphite .equipment-grid article h3{font-size:20px}.graphite .equipment-grid p{font-size:14px}.graphite .equipment-photo{margin:0!important;align-self:center}.place-tiles{display:block;margin-top:25px}.place-tiles a{margin-top:12px;min-height:0}.place-tiles img{height:auto;aspect-ratio:3/2;object-fit:contain}.place-tiles a>span{padding:45px 22px 20px;font-size:14px}.place-tiles b{font-size:28px}.place-tiles a:last-child{min-height:130px}.places .city-links a{padding:14px;font-size:13px;margin:5px 0}.places.inner .inner-intro figure img{max-height:none;object-fit:contain}.rail-hero{grid-template-columns:38px minmax(0,1fr);gap:17px;align-items:start}.rail-hero .chapter-rail{grid-row:1/3;min-height:590px}.rail-hero .hero-copy{grid-column:2}.rail-hero>figure{grid-column:2}.rail-hero .display{font-size:clamp(34px,9vw,49px)}.rail-hero .lead{font-size:16px}.chapter-rail a{font-size:10px}.rail .equipment-grid article{grid-template-columns:115px 1fr;gap:20px}.rail .equipment-grid article h3{font-size:22px}.rail .equipment-grid p{font-size:14px}.rail.inner .inner-intro{padding-left:20px}.chapters-hero{display:block}.chapters-hero figure{margin-top:30px}.chapter-steps{display:block;margin-top:25px}.chapter-steps li{margin-top:20px;display:grid;grid-template-columns:35px 1fr;align-items:center;gap:16px}.chapter-steps a{font-size:16px;margin:0}.chapters .process li{grid-template-columns:32px 1fr;gap:15px}.chapters .process li p{grid-column:2}.chapters .process h3{margin:0}.chapters.inner .prose>section{padding-left:40px}.chapters.inner .section-number{font-size:20px}.jobsite-hero{display:flex;flex-direction:column;min-height:0;padding:0;background:#192128}.jobsite-hero>figure{position:static;order:2;width:100%}.jobsite-hero>figure img{height:auto;object-fit:contain}.jobsite-hero:after{display:none}.jobsite-hero>.wrap{padding:35px 0 20px;order:1}.jobsite-hero .display{font-size:clamp(56px,14vw,76px);line-height:.99}.jobsite-hero .lead{font-size:19px}.jobsite .equipment-grid{grid-template-columns:1fr 1fr;gap:20px}.jobsite .equipment-grid h3{font-size:20px}.jobsite .equipment-grid p{font-size:14px}.jobsite.inner .inner-intro{padding-inline:22px}.mosaic-hero{grid-template-columns:1fr 1fr;gap:4px;width:100%;padding:0}.mosaic-hero .hero-copy{grid-column:1/-1;padding:32px 22px}.mosaic-main{grid-column:1/-1}.mosaic-main img{height:auto;max-height:420px;object-fit:contain}.mosaic-tile img{aspect-ratio:1;object-fit:cover}.mosaic-tile span{font-size:18px;padding:35px 14px 15px}.mosaic .equipment-grid article{display:grid;grid-template-columns:1fr;gap:15px;padding:20px}.mosaic .equipment-grid article h3{font-size:26px}.mosaic .equipment-grid article p{font-size:16px}.catalogue-hero{display:block}.catalogue-teaser{padding:20px 0 0;border-left:0;border-top:1px solid var(--line);margin-top:25px}.catalogue .equipment-grid article{grid-template-columns:1.05fr .95fr;gap:18px;padding:25px 0}.catalogue .equipment-grid article h3{font-size:25px}.catalogue .equipment-grid article p{font-size:14px}.catalogue .equipment-grid article .eyebrow{font-size:10px;margin-bottom:10px}.catalogue .equipment-grid article .equipment-photo{align-self:center}.catalogue .city-links a{font-size:14px}.catalogue.inner .section-number{font-size:16px}}
.graphite .button.secondary{color:var(--ink);background:transparent;border-color:var(--ink)}.graphite footer .button,.jobsite footer .button{color:white}.rail .button.secondary,.chapters .button.secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.jobsite{--head:SiteSans,Arial,sans-serif}.jobsite .display{font-weight:900;letter-spacing:-.05em;line-height:1.03}
@media(max-width:680px){.hero .actions>.button{flex:1 1 auto;font-size:15px;padding:12px 14px}.hero .lead{font-size:17px}.jobsite-hero .display{font-size:clamp(46px,12vw,66px);line-height:1.03}.jobsite-hero .hero-copy{padding-bottom:5px}.jobsite .mobile-dock .button.secondary{color:var(--ink)}}
@media(max-width:680px){.site-header .brand{max-width:calc(100% - 56px)}.footer-grid a,.policy a{overflow-wrap:anywhere}}
.review-form form{max-width:760px;margin:auto;display:grid;gap:20px}.review-honeypot{display:none!important}.review-consent{display:flex;align-items:flex-start;gap:12px;font-size:15px}.review-consent input{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin:3px 0}.review-form button[type=submit]{padding:16px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:700 17px SiteSans,Arial,sans-serif;cursor:pointer}.offset-editorial .offset-large img{aspect-ratio:3/2;object-fit:contain}.olive-field figure img{max-height:none;object-fit:contain}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
