@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/inter-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-latin-var.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
:root{--paper:#F4F3ED;--paper-2:#E9E8E1;--white:#FFFFFF;--ink:#121B26;--ink-soft:#56616C;--line:#C8CBD0;--blue:#0066CC;--blue-deep:#0052A3;--blue-pale:#D6E7F8;--blue-on-dark:#8FC0F2;--navy:#121D29;--night:#0C131B;--on-dark:#F4F3ED;--on-dark-soft:#C3CBD5;--error:#A4161A;--f-display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;--f-body:"Montserrat","Segoe UI",Arial,sans-serif;--f-ui:"Inter","Segoe UI",Arial,sans-serif;--w-page:90rem;--gutter:clamp(1.125rem,4.5vw,3.5rem);--sp-section:clamp(4.5rem,10vw,9rem);--ease-out:cubic-bezier(.16,1,.3,1);--header-h:6rem}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:1rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img,picture,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
h1,h2,h3{margin:0;font-weight:800}
ul,ol{margin:0;padding:0}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:#94C3F0;color:var(--ink)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.on-dark:focus-visible,.hero:focus-visible,.feature-blue:focus-visible{outline-color:#fff}
.visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:1rem;top:-4rem;z-index:200;background:var(--ink);color:#fff;padding:.75rem 1rem;font-weight:700;text-decoration:none}
.skip-link:focus{top:1rem}
main:focus{outline:none}
.nowrap{white-space:nowrap}
.tel{white-space:nowrap;font-variant-numeric:tabular-nums;font-family:var(--f-ui);font-weight:600}
.container{width:min(var(--w-page),100% - 2 * var(--gutter));margin-inline:auto}
.container--narrow{width:min(52rem,100% - 2 * var(--gutter))}
.section{padding-block:var(--sp-section)}
.section--tight-top{padding-top:0}
.ground--alt{background:var(--paper-2)}
.ground--white{background:var(--white)}
.mt-4{margin-top:2rem}
.mb-4{margin-bottom:2rem}
.display,.title,.smalltitle,.h3{font-family:var(--f-display);font-weight:800;text-transform:uppercase;margin:0}
.display{font-size:clamp(4.25rem,11vw,11.5rem);line-height:.84;letter-spacing:-.03em}
.title{font-size:clamp(3.4rem,7.6vw,8.25rem);line-height:.88;letter-spacing:-.022em}
.smalltitle{font-size:clamp(2.6rem,4.8vw,5rem);line-height:.92;letter-spacing:-.01em}
.h3{font-size:clamp(1.75rem,2.4vw,2.4rem);line-height:1;letter-spacing:0}
.blue{color:var(--blue)}
.on-dark .blue,.hero .blue{color:var(--blue-on-dark)}
.outline{color:transparent;-webkit-text-stroke:2px currentColor}
@supports not (-webkit-text-stroke:1px black){.outline{color:inherit}
}
.hero .outline{-webkit-text-stroke-color:#F4F3ED;filter:drop-shadow(0 0 1px rgba(5,10,18,.7)) drop-shadow(0 2px 8px rgba(5,10,18,.45))}
.lead{font-size:clamp(1.0625rem,1.3vw,1.25rem);line-height:1.7;max-width:34rem}
.muted{color:var(--ink-soft)}
.small{font-size:.9375rem}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:3.5rem;padding:1rem 1.5rem;background:var(--blue);color:#fff;border:2px solid var(--blue);font-family:var(--f-ui);font-weight:600;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .25s var(--ease-out),background-color .2s,border-color .2s,color .2s}
.btn:hover{background:var(--blue-deep);border-color:var(--blue-deep);transform:translateY(-3px)}
.btn:active{transform:translateY(0)}
.arr{display:inline-block;flex:none;width:.62em;height:.62em;vertical-align:-.02em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.9'%3E%3Cpath d='M2 14 14 2M4.5 2H14v9.5'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.9'%3E%3Cpath d='M2 14 14 2M4.5 2H14v9.5'/%3E%3C/svg%3E") center / contain no-repeat}
.btn .arr{font-size:1.35rem;font-weight:400;line-height:1}
.btn .icon{width:1.15rem;height:1.15rem;fill:currentColor;flex:none}
.btn--ghost{background:transparent;color:inherit;border-color:currentColor}
.btn--ghost:hover{background:rgba(255,255,255,.12);border-color:currentColor}
.ground--alt .btn--ghost:hover,.section .btn--ghost:hover{background:rgba(18,27,38,.06)}
.on-dark .btn--ghost:hover,.hero .btn--ghost:hover,.feature-blue .btn--ghost:hover{background:rgba(255,255,255,.12)}
.btn--white{background:#fff;color:var(--blue-deep);border-color:#fff}
.btn--white:hover{background:var(--paper);border-color:var(--paper);color:var(--blue-deep)}
.btn-group{display:flex;flex-wrap:wrap;gap:.75rem}
.action{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--f-ui);font-weight:600;color:var(--blue);text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:.15rem}
.action:hover{color:var(--blue-deep)}
.on-dark .action{color:var(--blue-on-dark)}
.action .chevron{width:.9rem;height:.9rem;fill:none;stroke:currentColor;stroke-width:2.4}
.link-row{display:flex;flex-wrap:wrap;gap:1.25rem 2rem}
.site-header{position:relative;z-index:80;height:var(--header-h);background:var(--paper);border-bottom:1px solid var(--line)}
.site-header--over{position:absolute;inset:0 0 auto;background:transparent;color:#fff;border-bottom-color:rgba(255,255,255,.3)}
.site-header__inner{display:flex;align-items:center;gap:1.5rem;height:100%;width:min(var(--w-page),100% - 2 * var(--gutter));margin-inline:auto}
.wordmark{display:block;flex:none;line-height:0}
.wordmark img{width:10.5rem}
.nav{margin-left:auto}
.nav__list{list-style:none;display:flex;gap:1.75rem}
.nav__list a{font-family:var(--f-ui);font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding-block:.5rem;border-bottom:2px solid transparent;white-space:nowrap}
@media (max-width:1199.98px){.nav__list{gap:1.1rem}
.nav__list a{letter-spacing:.05em}
}
.nav__list a:hover{border-bottom-color:currentColor}
.nav__list a[aria-current="page"]{border-bottom-color:var(--blue)}
.site-header--over .nav__list a[aria-current="page"]{border-bottom-color:#fff}
.header-call{min-height:3rem;padding:.75rem 1.1rem;gap:.6rem;font-size:.8125rem}
.nav-toggle{display:none;align-items:center;gap:.5rem;min-height:3rem;padding:.5rem .85rem;background:transparent;border:2px solid currentColor;color:inherit;font-family:var(--f-ui);font-weight:600;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.nav-toggle__icon{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:2.2}
.drawer{display:none}
@media (max-width:1023.98px){:root{--header-h:4.75rem}
.nav{display:none}
.js .nav-toggle{display:inline-flex}
.header-call{margin-left:auto}
.wordmark img{width:8.75rem}
.js .drawer{display:flex;flex-direction:column;position:fixed;inset:0;z-index:150;background:var(--navy);color:var(--on-dark);overflow-y:auto;overflow-x:hidden;visibility:hidden;opacity:0;transform:translateY(-.75rem);transition:opacity .25s,transform .3s var(--ease-out),visibility 0s .3s}
.js .drawer.is-open{visibility:visible;opacity:1;transform:none;transition:opacity .25s,transform .3s var(--ease-out)}
.drawer__bar{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);padding-inline:var(--gutter);border-bottom:1px solid rgba(255,255,255,.15)}
.drawer .nav-toggle{display:inline-flex}
.drawer__body{padding:2rem var(--gutter) 3rem}
.drawer__list{list-style:none;margin-bottom:2rem;border-top:1px solid rgba(255,255,255,.12)}
.drawer__link{display:block;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--f-ui);font-weight:600;font-size:clamp(1.25rem,5.2vw,2rem);line-height:1.15;letter-spacing:.03em;text-transform:uppercase;text-decoration:none}
.drawer__link[aria-current="page"]{color:var(--blue-on-dark)}
.drawer__call{width:100%}
.drawer__note{margin-top:1rem;color:var(--on-dark-soft)}
html.menu-open{overflow:hidden}
}
@media (max-width:479.98px){.header-call .header-call__label{display:none}
.header-call{padding-inline:.9rem}
.site-header__inner{gap:.6rem}
.wordmark img{width:7.75rem}
}
.header-call__label .tel{margin-left:.25rem}
html.has-road{scrollbar-width:none}
html.has-road::-webkit-scrollbar{display:none}
.road{position:fixed;top:0;right:0;bottom:0;z-index:85;width:18px;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}
.road__lines{position:absolute;inset:0 auto 0 50%;width:2px;margin-left:-1px;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent)}
.road__line{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.55) 0 10px,transparent 10px 24px)}
.road__line--ink{background:repeating-linear-gradient(to bottom,rgba(18,27,38,.22) 0 10px,transparent 10px 24px);-webkit-mask-image:linear-gradient(transparent,transparent);mask-image:linear-gradient(transparent,transparent)}
.road__thumb{position:absolute;top:0;left:50%;width:16px;margin-left:-8px;cursor:grab;will-change:transform;border-radius:4px}
.road__thumb::before{content:"";position:absolute;inset:-6px -1px}
.road.is-dragging,.road.is-dragging .road__thumb{cursor:grabbing}
.road__thumb:focus-visible{outline:2px solid var(--blue);outline-offset:2px;box-shadow:0 0 0 2px #fff}
.road__truck{display:block;width:100%;height:auto;filter:drop-shadow(0 0 .6px rgba(255,255,255,.95)) drop-shadow(0 2px 2.5px rgba(5,10,18,.35))}
html:not(.js) .road{display:none}
@media (max-width:1099.98px){.road{display:none}
}
.hero{position:relative;overflow:hidden;min-height:max(46rem,100svh);display:flex;align-items:center;background:var(--navy);color:#fff}
.hero__photo,.hero__photo img{position:absolute;inset:0;width:100%;height:100%}
.hero__photo{margin:0}
.hero__photo img{object-fit:cover;object-position:center 62%}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,18,30,.92) 0%,rgba(8,18,30,.7) 42%,rgba(8,18,30,.15) 88%),linear-gradient(0deg,rgba(7,16,27,.75),transparent 50%)}
.hero__content{position:relative;z-index:2;padding-top:calc(var(--header-h) + 3rem);padding-bottom:7rem}
.hero h1 .display{display:block;max-width:11ch}
.hero__lead{color:#D9E0E8;margin:2rem 0;max-width:30rem}
.has-anim .hero__photo img{animation:hero-in 1.6s var(--ease-out) both}
@keyframes hero-in{from{transform:scale(1.07)}
to{transform:none}
}
.hero--page h1.display{max-width:11ch}
.hero--page h1 .blue{color:#fff}
.hero--about .hero__photo img{object-position:0% center}
.hero--services .hero__photo img{object-position:center 74%}
.hero--services h1.display{font-size:max(min(4.25rem,calc(21.3vw - 7px)),3rem)}
@media (min-width:560px){.hero--services h1.display{font-size:clamp(4.25rem,11vw,11.5rem)}
}
@media (min-width:560px) and (max-aspect-ratio:5/4){.hero--about .hero__photo img{object-position:20% center}
}
@media (min-width:560px) and (max-aspect-ratio:1/1){.hero--about .hero__photo img{object-position:34% center}
}
@media (min-width:560px){.hero--crew .hero__photo{transform:scale(1.3);transform-origin:0 0}
}
.ticker{position:relative;background:var(--blue);color:#fff;overflow:hidden;padding:.85rem 0}
.ticker__track{display:flex;gap:2.25rem;width:max-content;padding-left:2.25rem;font-family:var(--f-display);font-weight:700;font-size:1.6rem;line-height:1.1;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.ticker__track i{align-self:center;flex:none;width:.55em;height:.55em;opacity:.6;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M8 0v16M0 8h16M2.3 2.3l11.4 11.4M13.7 2.3 2.3 13.7'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M8 0v16M0 8h16M2.3 2.3l11.4 11.4M13.7 2.3 2.3 13.7'/%3E%3C/svg%3E") center / contain no-repeat}
.has-anim .ticker__track{animation:marquee 40s linear infinite}
.ticker.is-paused .ticker__track,.ticker:hover .ticker__track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}
}
.ticker__pause{position:absolute;top:0;right:0;bottom:0;z-index:2;display:none;align-items:center;justify-content:center;width:3.25rem;padding:0;border:0;background:var(--blue);color:#fff;cursor:pointer}
.ticker__pause::before{content:"";position:absolute;top:0;bottom:0;right:100%;width:2.5rem;pointer-events:none;background:linear-gradient(90deg,rgba(0,102,204,0),var(--blue))}
.has-anim .ticker__pause{display:inline-flex}
.ticker__pause svg{box-sizing:border-box;width:2rem;height:2rem;padding:.6rem;fill:currentColor;border:1.5px solid rgba(255,255,255,.55);border-radius:50%;transition:background .2s,border-color .2s}
.ticker__pause:hover svg{background:rgba(255,255,255,.16);border-color:#fff}
.ticker__pause:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.ticker__pause .i-play{display:none}
.ticker.is-paused .i-play{display:block}
.ticker.is-paused .i-pause{display:none}
.frame{position:relative;margin:0;padding:.5rem;border:1px solid #ADB3BD;background:var(--paper)}
.frame::before,.frame::after{content:"";position:absolute;z-index:3;width:1.15rem;height:1.15rem;border:0 solid var(--blue)}
.frame::before{top:-1px;left:-1px;border-width:3px 0 0 3px}
.frame::after{bottom:-1px;right:-1px;border-width:0 3px 3px 0}
.frame picture,.frame img{width:100%;height:100%}
.frame img{object-fit:cover}
.frame--dark{background:transparent;border-color:rgba(255,255,255,.45)}
.frame--dark::before,.frame--dark::after{border-color:#fff}
.photo{margin:0}
.photo img{width:100%}
.photo__caption{margin-top:.75rem;font-size:.9375rem;color:var(--ink-soft)}
.editorial{display:grid;grid-template-columns:1.25fr .75fr;gap:3rem 8%;align-items:end}
.editorial .lead{margin-bottom:2rem}
.overlap{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem 7%;align-items:center}
.overlap .frame{aspect-ratio:1.35}
.overlap--flip>:first-child{order:2}
.svc-list{list-style:none;border-top:1px solid var(--line);margin:2rem 0;counter-reset:svc}
.svc-list li{border-bottom:1px solid var(--line);counter-increment:svc}
.svc-list a{display:grid;grid-template-columns:2.75rem 1fr auto;align-items:baseline;gap:.25rem 1rem;padding:.95rem 0;text-decoration:none}
.svc-list a::before{content:counter(svc,decimal-leading-zero);font-family:var(--f-display);font-weight:700;color:var(--blue);font-size:1.05rem}
.svc-list strong{font-family:var(--f-display);font-weight:800;font-size:1.85rem;line-height:1;text-transform:uppercase}
.svc-list span{grid-column:2;color:var(--ink-soft);font-size:.9375rem}
.svc-list .arr{grid-column:3;grid-row:1;color:var(--blue);font-size:1.4rem;transition:transform .25s var(--ease-out)}
.svc-list a:hover strong{color:var(--blue)}
.svc-list a:hover .arr{transform:translate(3px,-3px)}
.feature-blue{background:var(--blue);color:#fff;overflow:hidden}
.feature-blue .lead{color:#EBF4FD}
.feature-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem 6%;align-items:center}
.feature-photo{position:relative;margin:0;height:clamp(26rem,42vw,40rem);overflow:hidden}
.feature-photo picture{height:100%}
.feature-photo img{width:100%;height:100%;object-fit:cover;object-position:40% 86%}
.feature-photo::after{content:"";position:absolute;inset:.75rem;border:1px solid rgba(255,255,255,.55);pointer-events:none}
.title .soft{color:#CFE4FA}
.crew-feature{display:grid;grid-template-columns:1.2fr .8fr;background:var(--paper-2)}
.crew-feature__photo{min-height:36rem;position:relative;margin:0}
.crew-feature__photo picture,.crew-feature__photo img{position:absolute;inset:0;width:100%;height:100%}
.crew-feature__photo img{object-fit:cover;object-position:center 58%}
.crew-feature__text{padding:clamp(3rem,7vw,7rem) var(--gutter);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.crew-feature__text .lead{margin:1.75rem 0 2rem;color:var(--ink-soft)}
.quote{margin:0}
.quote blockquote{margin:0}
.quote blockquote p{font-family:var(--f-display);font-weight:700;text-transform:none;font-size:clamp(1.9rem,3.4vw,3.1rem);line-height:1.05;letter-spacing:-.005em}
.quote blockquote p::before{content:"\201C";color:var(--blue)}
.quote blockquote p:last-child::after{content:"\201D";color:var(--blue)}
.quote figcaption{margin-top:1.25rem;font-weight:700}
.quote figcaption span{font-weight:400;color:var(--ink-soft)}
.quote--sm blockquote p{font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.12}
.quote--long blockquote p{font-family:var(--f-body);font-weight:400;font-size:1.1875rem;line-height:1.7}
.quote--long blockquote p::before,.quote--long blockquote p::after{content:none}
.quote--long{padding:2rem;background:var(--white);border-top:4px solid var(--blue)}
.quotes-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem 6%;align-items:start}
.quotes{display:grid;gap:1.5rem}
.rating-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.rating-line strong{font-family:var(--f-display);font-weight:800;font-size:2rem;line-height:1;text-transform:uppercase;color:var(--blue)}
.rating-line>span{color:var(--ink-soft)}
.rating-line--band{margin-top:clamp(3rem,6vw,4.5rem);padding-top:1.5rem;gap:.5rem 1.5rem}
.rating-line--band strong{font-size:clamp(2.25rem,3.6vw,3rem)}
html.reviews-open{overflow:hidden}
.reviews-panel{position:fixed;inset:0 0 0 auto;margin:0;padding:0;border:0;width:min(38rem,100%);max-width:100%;height:100%;max-height:100%;background:var(--paper);color:var(--ink);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;box-shadow:-1.5rem 0 4rem rgba(5,10,18,.28);transform:translateX(100%);transition:transform .42s var(--ease-out)}
.reviews-panel.is-open{transform:none}
.reviews-panel::backdrop{background:rgba(8,18,30,0);transition:background .42s ease}
.reviews-panel.is-open::backdrop{background:rgba(8,18,30,.62)}
.reviews-panel__inner{min-height:100%;padding:clamp(1.5rem,4vw,3rem);border-left:4px solid var(--blue)}
.reviews-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2rem}
.reviews-panel__head .rating-line{margin:0;padding:0;border:0}
.reviews-panel__close{flex:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;background:transparent;color:var(--ink);border:2px solid currentColor;cursor:pointer}
.reviews-panel__close:hover{background:var(--ink);color:var(--paper)}
.reviews-panel__close svg{width:1rem;height:1rem}
.reviews-panel .smalltitle{margin-bottom:2rem}
.reviews-panel .quote--long{padding:1.5rem}
.reviews-panel .quote--long blockquote p{font-size:1.0625rem}
.reviews-panel .quote--long blockquote p:last-child::after{content:none}
.reviews-panel__note{margin:2rem 0 1.25rem;color:var(--ink-soft)}
.dark-cta{position:relative;overflow:hidden;background:var(--navy);color:var(--on-dark);padding-block:clamp(5rem,10vw,8.5rem)}
.dark-cta::after{content:"MILNE\2019S";position:absolute;right:-1.5rem;bottom:-.18em;z-index:0;font-family:var(--f-display);font-weight:800;font-size:29vw;line-height:1;color:rgba(255,255,255,.07);pointer-events:none}
.dark-cta>.container{position:relative;z-index:1}
.dark-cta .lead{color:var(--on-dark-soft);margin-top:1.5rem}
.phone-big{display:inline-block;margin:1rem 0 2rem;font-family:var(--f-ui);font-weight:600;font-size:clamp(2.75rem,6vw,5.5rem);line-height:1.05;text-decoration:none;border-bottom:3px solid var(--blue-on-dark);font-variant-numeric:tabular-nums}
@media (max-width:389.98px){.phone-big{font-size:10.4vw}
}
.phone-big:hover{color:var(--blue-on-dark)}
.section .phone-big{color:var(--blue);border-bottom-color:currentColor}
.section .phone-big:hover{color:var(--blue-deep)}
.dark-cta .phone-big{border-bottom-color:transparent}
.site-footer{background:var(--night);color:var(--on-dark-soft);padding:4.5rem 0 2rem}
.footer__inner{width:min(var(--w-page),100% - 2 * var(--gutter));margin-inline:auto}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:3rem}
.footer__logo{margin:0 0 1.25rem;width:13rem;line-height:0}
.footer__brand p{max-width:22rem;font-size:.9375rem}
.footer__phone{display:inline-block;margin:.5rem 0 .25rem;font-family:var(--f-ui);font-weight:600;font-size:2.25rem;line-height:1.1;color:#fff;text-decoration:none;border-bottom:2px solid var(--blue-on-dark)}
.footer__label{margin:0 0 1.1rem;color:#fff;font-weight:700;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase}
.footer__links{list-style:none}
.footer__links li{margin-bottom:.7rem}
.footer__links a{text-decoration:none;font-family:var(--f-ui);font-weight:600;font-size:.9375rem}
.footer__links a:hover,.footer__meta a:hover{color:#fff;text-decoration:underline}
.footer__social{display:flex;gap:.5rem;margin-left:-.625rem}
.footer__links .footer__social a{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;color:#fff;transition:background-color .2s ease}
.footer__social svg{width:1.5rem;height:1.5rem}
.footer__links .footer__social a:hover,.footer__links .footer__social a:focus-visible{background:var(--blue);text-decoration:none}
.footer__meta{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.14);font-size:.8125rem;color:#A8B2BE}
.footer__meta a{color:inherit}
.site-footer__credit{margin-left:auto}
.call-bar{display:none}
@media (max-width:759.98px){.call-bar{display:block;position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:90;box-shadow:0 6px 24px rgba(0,0,0,.3)}
.call-bar[hidden]{display:none}
.call-bar__link{display:flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.5rem;padding:.9rem 1rem;background:var(--blue);color:#fff;font-family:var(--f-ui);font-weight:600;font-size:.9375rem;letter-spacing:.05em;text-transform:uppercase;text-decoration:none}
.call-bar__link .icon{width:1.15rem;height:1.15rem;fill:currentColor}
.site-footer{padding-bottom:6.5rem}
}
.page-hero{padding-block:clamp(4.5rem,9vw,8rem) clamp(3.5rem,7vw,6.5rem);overflow:hidden}
.page-hero__grid{display:grid;grid-template-columns:1fr auto;gap:2.5rem 4rem;align-items:end}
.page-hero .lead{margin-top:2rem}
.page-hero__aside{padding-left:2rem;border-left:3px solid var(--blue)}
.page-hero__aside .phone-big{margin:0 0 .25rem;font-size:clamp(2.25rem,3.6vw,3.25rem)}
@media (max-width:389.98px){.page-hero__aside .phone-big{font-size:min(2.25rem,10.4vw)}
}
.page-hero__aside p{margin:0 0 1.25rem;color:var(--ink-soft)}
.page-photo{position:relative;height:clamp(22rem,62vh,44rem);overflow:hidden;margin:0}
.page-photo picture,.page-photo img{width:100%;height:100%}
.page-photo img{object-fit:cover}
.machine{display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;margin-top:3rem;align-items:stretch}
.machine__photo{aspect-ratio:1000 / 705}
.hotspot{position:absolute;z-index:5;display:none;place-items:center;width:2.9rem;height:2.9rem;margin:-1.45rem 0 0 -1.45rem;border-radius:50%;background:var(--blue);color:#fff;border:2px solid #fff;cursor:pointer;font-family:var(--f-display);font-weight:800;font-size:1.15rem;box-shadow:0 0 0 .55rem rgba(0,102,204,.35);transition:transform .25s var(--ease-out),background-color .2s}
.js .hotspot{display:grid}
.hotspot:hover,.hotspot[aria-pressed="true"]{transform:scale(1.15);background:var(--navy)}
.has-anim .hotspot[aria-pressed="false"]{animation:ping 2.4s ease-out infinite}
@keyframes ping{0%,60%{box-shadow:0 0 0 0 rgba(0,102,204,.55)}
100%{box-shadow:0 0 0 1rem rgba(0,102,204,0)}
}
.machine__detail{background:var(--navy);color:var(--on-dark);padding:clamp(2rem,4vw,3.5rem);display:flex;flex-direction:column;justify-content:center}
.spot + .spot{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.15)}
.js .spot + .spot{margin-top:0;padding-top:0;border-top:0}
.js .machine__detail{display:grid;align-content:center}
.js .machine__detail .spot{grid-area:2 / 1;transition:opacity .35s,transform .4s var(--ease-out),visibility 0s}
.js .machine__detail .spot[hidden]{display:block;visibility:hidden;opacity:0;transform:translateY(.75rem);transition:opacity .2s,transform .2s,visibility 0s .2s}
.js .machine__detail>.btn{grid-row:3;justify-self:start;margin-top:1.75rem}
.machine__steps{display:none}
.js .machine__steps{grid-row:1;display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin-bottom:1.75rem}
.machine__steps i{height:4px;background:rgba(255,255,255,.18);transition:background .3s}
.machine__steps i.is-on{background:var(--blue-on-dark)}
.spot__num{font-family:var(--f-display);font-weight:800;font-size:3.25rem;line-height:1;color:var(--blue-on-dark)}
.spot h3{margin:.5rem 0 1rem}
.spot p{color:var(--on-dark-soft)}
.spot .btn{margin-top:1.25rem}
.situations{background:var(--blue-pale)}
.situation-options{display:none;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:2.5rem 0 1rem}
.js .situation-options{display:grid}
.situation{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:1.25rem;min-height:8.5rem;padding:1.25rem 1.25rem 1.4rem;text-align:left;cursor:pointer;background:#F8F8F5;color:var(--ink);border:1px solid #BED2E7;transition:background-color .2s,color .2s,transform .25s var(--ease-out)}
.situation .arr{color:var(--blue);font-size:1.4rem;line-height:1}
.situation b{font-family:var(--f-display);font-weight:800;font-size:1.85rem;line-height:.95;text-transform:uppercase}
.situation:hover{transform:translateY(-3px)}
.situation[aria-pressed="true"]{background:var(--blue);color:#fff;border-color:var(--blue)}
.situation[aria-pressed="true"] .arr{color:#fff}
.situation-panels{margin-top:2.5rem;display:grid;gap:.65rem}
.js .situation-panels{margin-top:0}
.answer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem 2.5rem;background:#fff;padding:1.75rem 2rem}
.js .answer[hidden]{display:none}
.answer h3{margin-bottom:.5rem}
.answer p{max-width:42rem;color:var(--ink-soft)}
.answer .btn-group{flex:none}
.svc-rows{list-style:none;border-top:2px solid var(--ink);counter-reset:row}
.svc-row{display:grid;grid-template-columns:6rem minmax(0,1fr) minmax(0,1.25fr);gap:1.5rem 3rem;padding:3rem 0;border-bottom:1px solid var(--line);counter-increment:row;scroll-margin-top:1rem}
.svc-row::before{content:counter(row,decimal-leading-zero);font-family:var(--f-display);font-weight:800;font-size:3rem;line-height:.9;color:var(--blue)}
.svc-row__body p{color:var(--ink-soft)}
.svc-row__body .link-row{margin-top:1.5rem}
.svc-row .photo-pair{margin-top:1.5rem}
.supports{list-style:none;margin:1.25rem 0}
.supports li{position:relative;padding-left:1.5rem;margin-bottom:.6rem}
.supports li::before{content:"";position:absolute;left:0;top:.6em;width:.65rem;height:3px;background:var(--blue)}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.photo-pair img{aspect-ratio:4 / 3;object-fit:cover}
.faq{border-top:2px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem 0;cursor:pointer;list-style:none;font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.05;text-transform:uppercase}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:2.5rem;height:2.5rem;background:var(--blue);color:#fff;font-size:1.5rem;transition:transform .25s var(--ease-out)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--blue)}
.faq .faq__a{padding:0 3.5rem 1.6rem 0;max-width:46rem;color:var(--ink-soft)}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 6%;align-items:center}
.story-grid .frame{height:clamp(28rem,46vw,42rem)}
.story-grid .frame--article{height:auto}
.frame--article img{height:auto}
.article-zoom{position:relative;display:block;color:inherit;cursor:zoom-in}
.article-zoom__badge{position:absolute;right:.75rem;bottom:.75rem;display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .85rem;background:var(--navy);color:#fff;font-family:var(--f-ui);font-weight:600;font-size:.875rem;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.article-zoom__badge svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2}
.article-zoom:hover .article-zoom__badge{background:var(--blue)}
html.zoom-open{overflow:hidden}
.zoom{position:fixed;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;padding:0;border:0;background:#0B1520;color:#fff;overflow:hidden}
.zoom::backdrop{background:rgba(8,18,30,.7)}
.zoom__bar{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem var(--gutter);background:linear-gradient(rgba(8,18,30,.92) 60%,rgba(8,18,30,0))}
.zoom__hint{font-size:.9375rem;color:var(--on-dark-soft)}
.zoom__hint .is-out,.zoom.is-zoomed .zoom__hint .is-in{display:none}
.zoom.is-zoomed .zoom__hint .is-out{display:inline}
.zoom__close{flex:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;background:transparent;color:#fff;border:2px solid currentColor;cursor:pointer}
.zoom__close:hover{background:#fff;color:var(--navy)}
.zoom__close svg{width:1rem;height:1rem}
.zoom:focus-visible{outline-color:#fff}
.zoom__scroll{position:absolute;inset:0;display:grid;overflow:auto;overscroll-behavior:contain;padding:4.5rem 1rem 1.5rem}
.zoom__page{margin:auto;padding:0;border:0;background:none;cursor:zoom-in}
.zoom__page img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 6rem);max-height:calc(100dvh - 6rem)}
.zoom.is-zoomed .zoom__page{cursor:zoom-out}
.zoom.is-zoomed .zoom__page picture{max-width:none}
.zoom.is-zoomed .zoom__page img{width:938px;max-width:none;max-height:none}
.story-grid p{color:var(--ink-soft);max-width:36rem}
.story-grid .title{margin-bottom:2rem}
.family{display:grid;grid-template-columns:1fr 1fr;gap:3rem 7%;align-items:center}
.family .frame{height:clamp(30rem,48vw,44rem)}
.family .lead{margin-top:2rem;color:var(--ink-soft)}
.family .frame--whole{height:auto}
.frame--whole img{height:auto}
.story-grid .story-family{display:grid;grid-template-columns:15rem 1fr;gap:1.75rem;align-items:end;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid #BFC2C5}
.story-grid .story-family__photo{height:auto;aspect-ratio:4 / 5}
.story-family p{font-size:1rem;line-height:1.7}
.cards3{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}
.cards3 li{background:#fff;padding:2rem;border-top:4px solid var(--blue)}
.cards3 h3{margin:.35rem 0 .75rem}
.cards3 .num{font-family:var(--f-display);font-weight:700;color:var(--blue);letter-spacing:.1em}
.cards3 p{color:var(--ink-soft)}
.about-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem 7%;align-items:end}
.about-intro__copy{border-top:1px solid #BFC2C5;padding-top:1.75rem}
.about-intro__copy p{font-size:1.125rem;line-height:1.8;color:var(--ink-soft)}
.timeline-track{position:relative;margin-top:clamp(3rem,6vw,5.5rem)}
.timeline{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 4.5rem}
.timeline::before{content:"";position:absolute;top:34px;left:0;right:0;height:2px;background:#C7CDD5}
.timeline__item{position:relative;padding-top:4.75rem}
.timeline__item::before{content:"";position:absolute;top:30px;left:30.5px;width:3px;height:12px;background:var(--blue)}
.timeline__car{position:absolute;top:6px;left:0;z-index:3;width:64px;height:auto;color:var(--blue);transition:opacity .2s ease,transform .45s var(--ease-out),color .35s ease}
.tl-defs{position:absolute;width:0;height:0;overflow:hidden}
.timeline__progress,.tl-truck{display:none}
.timeline-track.is-live .timeline__progress{display:block;position:absolute;top:34px;left:0;right:0;z-index:1;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left center}
.timeline-track.is-live .tl-truck{display:block;position:absolute;top:-14px;left:0;z-index:2;width:140px;height:50.4px;opacity:0;pointer-events:none;will-change:transform;overflow:visible}
.tl-truck__deck{transform-box:view-box;transform-origin:66px 23px}
.tl-truck__load{color:var(--blue);opacity:0}
.tl-truck.has-load .tl-truck__load{opacity:1}
.tl-truck.is-loading .tl-truck__load{animation:tl-load .7s var(--ease-out)}
@keyframes tl-load{from{transform:var(--tl-from,translate(-59px,15px))}
to{transform:none}
}
.timeline__item.is-picked .timeline__car{opacity:0;transition-duration:.08s}
.timeline__year{display:block;margin-bottom:1.25rem;font-family:var(--f-display);font-weight:800;font-size:clamp(4.375rem,7vw,7.2rem);line-height:1;text-transform:uppercase;color:var(--blue)}
.timeline__item .h3{margin-bottom:1rem}
.timeline__item p{color:var(--ink-soft)}
.about-next{display:grid;grid-template-columns:1fr 1fr;gap:3rem 8%;align-items:center}
.about-next .feature-photo{height:clamp(30rem,48vw,42.5rem)}
.about-next .feature-photo img{object-position:center 40%}
.about-next .title{margin-bottom:2.25rem}
.about-next p{color:#EEF6FE;max-width:37rem}
.then-now__head{display:grid;grid-template-columns:1.3fr .7fr;gap:2.5rem 6%;align-items:end;margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.then-now__copy{border-top:1px solid #BFC2C5;padding-top:1.75rem}
.then-now__copy p{font-size:1.125rem;line-height:1.8;color:var(--ink-soft)}
.then-now__copy .then-now__note{margin-top:1.75rem;padding-left:1rem;border-left:3px solid var(--blue);font-family:var(--f-ui);font-weight:600;font-size:.8125rem;line-height:1.6;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-wrap:balance}
.compare{--pos:50%;position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--navy);touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.js .compare{cursor:ew-resize}
.compare picture{position:absolute;inset:0}
.frame .compare img{object-position:center 58%;pointer-events:none;-webkit-user-drag:none}
.compare__then{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.compare__divider{position:absolute;inset:0;transform:translateX(var(--pos));pointer-events:none}
.compare__divider::before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(12,19,27,.18),0 0 1.25rem rgba(12,19,27,.35)}
.compare__handle{position:absolute;top:50%;left:0;width:3.75rem;height:3.75rem;margin:-1.875rem 0 0 -1.875rem;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--blue);box-shadow:0 .6rem 1.6rem rgba(12,19,27,.3);pointer-events:auto;transition:transform .3s var(--ease-out),background-color .25s ease,color .25s ease}
.js .compare__handle{cursor:grab}
.compare__handle svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.compare__handle:hover,.compare.is-dragging .compare__handle{background:var(--blue);color:#fff;transform:scale(1.08)}
.compare.is-dragging,.compare.is-dragging .compare__handle{cursor:grabbing}
.compare__handle:focus-visible{outline:3px solid var(--blue);outline-offset:3px;box-shadow:0 0 0 9px #fff,0 .6rem 1.6rem rgba(12,19,27,.3)}
.compare__label{position:absolute;top:clamp(.75rem,2vw,1.5rem);padding:.5rem .85rem;pointer-events:none;font-family:var(--f-ui);font-weight:600;font-size:.75rem;line-height:1;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(12,19,27,.74);transition:opacity .3s ease}
.compare__label--then{left:clamp(.75rem,2vw,1.5rem)}
.compare__label--now{right:clamp(.75rem,2vw,1.5rem);background:var(--blue)}
.compare.is-then-hidden .compare__label--then,.compare.is-now-hidden .compare__label--now{opacity:0}
.then-now__caption{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem 1.5rem;flex-wrap:wrap;padding:1rem .25rem .25rem;font-size:.9375rem;color:var(--ink-soft)}
.then-now__caption b{font-family:var(--f-ui);font-weight:600;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.then-now__hint{display:none;font-family:var(--f-ui);font-weight:600;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.js .then-now__hint{display:inline}
.pull{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem 6%;align-items:start}
.page-services{--sp-section:clamp(3.25rem,7vw,6.25rem)}
.page-services .dark-cta{padding-block:clamp(3.5rem,7vw,6rem)}
.page-services .svc-row{padding-block:2.25rem}
.page-services .section .mb-4{margin-bottom:1.5rem}
.page-services #machine .lead{margin-top:1.5rem}
.page-services .machine{margin-top:2.25rem}
.page-services .situation-options{margin-top:2rem}
.page-about,.page-crew{--sp-section:clamp(3.25rem,7vw,6.25rem)}
.page-about .dark-cta,.page-crew .dark-cta{padding-block:clamp(3.5rem,7vw,6rem)}
.page-crew .profile:last-child{padding-bottom:clamp(2.75rem,5.5vw,5rem)}
.page-contact{--sp-section:clamp(3.25rem,7vw,6.25rem)}
.page-contact .page-hero{padding-block:clamp(3.25rem,6.25vw,5.5rem) clamp(2.5rem,5vw,4.5rem)}
.page-contact .page-hero__grid{grid-template-columns:1fr;gap:1.75rem 6%}
.page-contact .page-hero .display{margin:0}
.page-contact .page-hero .lead{margin:0;max-width:31rem;font-size:clamp(1.1875rem,1.6vw,1.4375rem);line-height:1.6}
@media (min-width:1100px){.page-contact .page-hero__grid{grid-template-columns:max-content minmax(17rem,27rem);justify-content:space-between}
.page-contact .page-hero .lead{padding-bottom:.35em}
}
.profiles{counter-reset:crew}
.profile{display:grid;grid-template-columns:1fr 1fr;gap:3rem 8%;align-items:center;padding-block:clamp(4rem,8vw,7rem);border-top:1px solid var(--line)}
.profile:nth-child(even) .profile__image{order:2}
.profile__image{height:clamp(30rem,50vw,46rem);overflow:hidden}
.profile__image img{object-position:center 26%;transition:transform .7s var(--ease-out)}
.profile__image:hover img{transform:scale(1.03)}
.profile__index{font-family:var(--f-display);font-weight:700;font-size:1.1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:.5rem}
.profile .display{font-size:clamp(5rem,10vw,10rem)}
.profile p{color:var(--ink-soft);max-width:30rem;margin-top:1.75rem}
.profile__extra{max-width:20rem;margin-top:2rem;aspect-ratio:4 / 5}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 8%;align-items:start}
.reach{list-style:none;border-top:2px solid var(--ink);margin-top:2rem}
.reach li{display:grid;grid-template-columns:7rem 1fr;gap:.25rem 1.5rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.reach b{font-family:var(--f-display);font-weight:800;font-size:1.35rem;text-transform:uppercase;line-height:1.2}
.reach .help{display:block;color:var(--ink-soft);font-size:.9375rem}
.reach a{font-weight:700}
.form-panel{background:#fff;padding:clamp(1.75rem,4vw,3rem);border-top:4px solid var(--blue)}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.field{display:flex;flex-direction:column}
.field--wide{grid-column:1 / -1}
.field__label{font-weight:700;margin-bottom:.35rem}
.field__opt{font-weight:400;color:var(--ink-soft)}
.field__hint{margin:0 0 .4rem;font-size:.875rem;color:var(--ink-soft)}
.control{width:100%;min-height:3.25rem;padding:.8rem 1rem;background:#fff;border:1px solid #8A95A3;border-radius:0}
textarea.control{min-height:8rem;resize:vertical}
.control:focus{outline:3px solid var(--blue);outline-offset:0;border-color:var(--blue)}
.control[aria-invalid="true"]{border-color:var(--error);border-width:2px}
.field__error{color:var(--error);font-weight:700;font-size:.9375rem;margin-top:.35rem}
.field__error:empty{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__notice:empty{display:none}
.notice{margin-top:1.25rem;padding:1rem 1.25rem;background:var(--blue-pale);border-left:4px solid var(--blue)}
.notice .number{font-weight:700}
.form__actions{margin-top:1.5rem}
.form-note{margin-top:1.5rem;font-size:.875rem;color:var(--ink-soft)}
.form-call{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.form-call .phone-big{font-size:2.25rem;margin:.25rem 0 0}
@media (max-width:389.98px){.form-call .phone-big{font-size:8.6vw}
}
.town-list{list-style:none;margin:2.5rem 0 0;padding:0;border-top:2px solid var(--blue)}
.town-list li{padding:1rem 0;border-bottom:1px solid var(--line);font-family:var(--f-display);font-weight:800;font-size:1.6rem;line-height:1.1;text-transform:uppercase}
@media (min-width:600px){.town-list{display:grid;grid-auto-flow:column;grid-template-rows:repeat(4,auto);grid-template-columns:1fr 1fr;column-gap:clamp(2rem,6vw,4.5rem)}
}
.town-note{margin-top:1.5rem;color:var(--ink-soft)}
.legal{max-width:46rem}
.legal h2{font-family:var(--f-display);font-weight:800;font-size:2rem;text-transform:uppercase;line-height:1;margin:2.75rem 0 1rem}
.legal h3{font-size:1.15rem;margin:1.75rem 0 .5rem}
.legal ul{padding-left:1.25rem;margin:0 0 1em}
.legal li{margin-bottom:.4rem}
.legal a{color:var(--blue)}
.notfound{padding-block:clamp(5rem,12vw,10rem)}
.notfound .lead{margin:2rem 0}
.notfound .link-row{margin-top:2.5rem}
.has-anim .reveal{opacity:0;transform:translateY(2.5rem);transition:opacity .7s ease,transform .95s var(--ease-out)}
.has-anim .reveal.is-visible{opacity:1;transform:none}
@media (max-width:1023.98px){.footer__grid{grid-template-columns:1fr 1fr}
.footer__brand{grid-column:1 / -1}
.situation-options{grid-template-columns:1fr 1fr}
.svc-row{grid-template-columns:4rem 1fr}
.svc-row__body{grid-column:2}
.machine{grid-template-columns:1fr}
}
@media (max-width:859.98px){.editorial,.overlap,.feature-split,.crew-feature,.story-grid,.family,.contact-grid,.quotes-grid,.pull,.profile,.page-hero__grid{grid-template-columns:1fr}
.quote blockquote p,.quote--sm blockquote p{font-size:clamp(1.6rem,5.4vw,2.1rem);line-height:1.08}
.overlap--flip>:first-child{order:0}
.profile:nth-child(even) .profile__image{order:0}
.crew-feature__photo{min-height:24rem}
.feature-photo{height:26rem}
.cards3{grid-template-columns:1fr}
.about-intro,.about-next,.then-now__head{grid-template-columns:1fr}
.story-grid .frame--article{width:100%;max-width:32rem}
.story-grid .story-family{grid-template-columns:13rem 1fr}
.about-next .feature-photo{height:30rem}
.timeline{grid-template-columns:1fr;gap:2.75rem;padding-left:2.5rem}
.timeline::before{top:0;bottom:0;left:15px;right:auto;width:2px;height:auto}
.timeline__item{padding-top:0}
.timeline__item::before{display:none}
.timeline__car{top:1.65rem;left:calc(-2.5rem - 4px);width:40px}
.timeline-track.is-live .timeline__progress{top:0;bottom:0;left:15px;right:auto;width:2px;height:auto;transform:scaleY(0);transform-origin:center top}
.timeline-track.is-live .tl-truck{top:0;width:84px;height:30.24px;transform-origin:0 0}
.tl-truck__load{transform-box:view-box;transform-origin:34px 9.3px}
.page-hero__aside{padding-left:1.25rem}
.answer{flex-direction:column;align-items:flex-start;padding:1.5rem}
}
@media (max-width:559.98px){body{font-size:1rem}
.hero{min-height:40rem}
.hero__photo img{object-position:40% center}
.hero--about .hero__photo img{object-position:44% center}
.hero::after{background:linear-gradient(90deg,rgba(9,21,34,.88),rgba(9,21,34,.5)),linear-gradient(0deg,rgba(9,21,34,.8),transparent 65%)}
.hero__content{padding-bottom:5rem}
.btn{width:100%}
.btn-group{flex-direction:column}
.header-call,.nav-toggle{width:auto}
.situation-options{grid-template-columns:1fr 1fr;gap:.5rem}
.situation{min-height:7rem;padding:1rem}
.situation b{font-size:1.4rem}
.svc-row{grid-template-columns:1fr;padding:2.25rem 0;gap:.75rem}
.svc-row::before{font-size:2.25rem}
.svc-row__body{grid-column:auto}
.svc-list a{grid-template-columns:2.25rem 1fr auto}
.svc-list strong{font-size:1.55rem}
.photo-pair{grid-template-columns:1fr}
.then-now .title{font-size:min(3.4rem,12.6vw)}
.story-grid .story-family{grid-template-columns:1fr}
.story-grid .story-family__photo{max-width:17rem}
.then-now__frame{margin-inline:calc(-1 * var(--gutter));border-inline:0}
.then-now__frame::before{left:0}
.then-now__frame::after{right:0}
.compare{aspect-ratio:5 / 4}
.then-now__caption{padding-inline:calc(var(--gutter) - .5rem)}
.compare__handle{width:3.25rem;height:3.25rem;margin:-1.625rem 0 0 -1.625rem}
.then-now__hint{order:-1;flex-basis:100%}
.form__grid{grid-template-columns:1fr}
.reach li{grid-template-columns:1fr}
.footer__grid{grid-template-columns:1fr}
.site-footer__credit{margin-left:0}
.faq .faq__a{padding-right:0}
.page-services .svc-row{padding-block:1.7rem}
.profile__extra{max-width:14rem}
.ticker__track{font-size:1.35rem}
.hotspot{width:2.25rem;height:2.25rem;margin:-1.125rem 0 0 -1.125rem;font-size:1rem;box-shadow:0 0 0 .3rem rgba(0,102,204,.35)}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
.reveal{opacity:1 !important;transform:none !important}
}
.hook-cursor{position:fixed;top:0;left:0;z-index:2147483000;width:20px;height:26px;pointer-events:none;opacity:0;will-change:transform}
html.has-hook .hook-cursor{opacity:1}
html.has-hook body,html.has-hook body *:not(:is(input,textarea,select,[contenteditable],.road,.road *,.compare,.compare *,.article-zoom,.article-zoom *,dialog,dialog *)){cursor:none}
.hook-cursor__swing,.hook-cursor svg{display:block;transform-origin:2px 9px}
.hook-cursor svg{overflow:visible;transform:rotate(-8deg);transition:transform .2s var(--ease-out),filter .2s var(--ease-out)}
.hook-cursor.is-hot svg{transform:rotate(0deg) scale(1.08);filter:drop-shadow(0 0 3px rgba(0,102,204,.55))}
.hook-cursor.is-down svg{transform:rotate(0deg) scale(.92);transition-duration:.08s}
.hook-cursor__latch{transform-box:view-box;transform-origin:13px 9.4px;transform:rotate(-34deg);transition:transform .2s var(--ease-out)}
.hook-cursor.is-hot .hook-cursor__latch,.hook-cursor.is-down .hook-cursor__latch{transform:none}
@media (prefers-reduced-motion:reduce){.hook-cursor svg,.hook-cursor__latch{transition:none}
}
