/* Richer transport presentation, shared accessibility and three distinct directions. */
:root{--ease:cubic-bezier(.16,1,.3,1)}html{scroll-padding-top:24px}body{--accent2:#b9cba7;--deep:#10241d;--line:#ffffff26;--shadow:0 14px 35px #0002}::selection{background:var(--accent);color:var(--onaccent)}*{scrollbar-color:var(--accent) var(--bg)}input,textarea{caret-color:var(--accent)}a{text-underline-offset:5px}h1,h2,h3{letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(42px,5vw,78px);line-height:1.06}h2{font-size:clamp(32px,3.5vw,52px);line-height:1.1;margin-bottom:22px}p{line-height:1.75;font-size:16px}body.v2{--accent2:#a8c4d7;--deep:#102b46;--line:#163f6224}body.v3{--accent2:#bed091;--deep:#143d30;--line:#234b3326}.eyebrow{display:none!important}.section{padding:64px 6%}.section-heading{margin-bottom:30px;align-items:center}.section-heading>p{max-width:340px;margin:0}.topbar{padding:9px 5%;font-size:12px}header,.v3 header{min-height:132px;height:auto;padding:8px 4%;gap:22px;margin:0;max-width:none;border-radius:0;border-bottom:1px solid #d8bb7f40;background:var(--deep)}.brand{gap:16px;min-width:0;flex-shrink:0}.brand img,.v2 footer .brand img,.v3 footer .brand img{width:94px;height:116px;object-fit:contain;filter:drop-shadow(0 4px 7px #0002);background:transparent}.brand span{font-size:18px;line-height:1.15;color:#f4d899}.brand small{font-size:12px;letter-spacing:.06em;margin-top:5px}.brand em{font-size:9px;letter-spacing:.15em;margin-top:8px}.brand:hover img{transform:translateY(-2px);transition:transform .4s var(--ease)}nav{font-size:14px;gap:20px}nav>a{position:relative}nav>a:after{content:'';position:absolute;bottom:6px;left:0;width:0;height:2px;background:var(--accent);transition:width .3s var(--ease)}nav>a:hover:after,nav>a[aria-current]:after{width:100%}.submenu{z-index:100;border-radius:12px;padding:12px;box-shadow:0 14px 40px #0004;max-height:75vh;overflow:auto}.submenu a{font-size:14px;padding:12px;line-height:1.4}.button,.v3 .button{border-radius:7px;min-height:50px;padding:15px 21px;position:relative;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s,background .35s;isolation:isolate}.button:before{content:'';position:absolute;inset:-70% auto -70% -60%;width:35%;background:#ffffff2b;transform:rotate(20deg);transition:left .6s var(--ease);z-index:-1}.button:hover:before{left:130%}.button:hover{transform:translateY(-3px);box-shadow:0 9px 24px #0003}.button:active{transform:translateY(0)}.header-cta{font-size:13px;min-height:46px;padding:13px 15px}.header-cta svg{width:19px;height:19px}.photo-frame{position:relative;margin:0;overflow:hidden;background:var(--surface);isolation:isolate;min-width:0;display:grid;place-items:center;aspect-ratio:4/3}.photo-frame:before{content:'';position:absolute;inset:-20px;background-image:var(--photo);background-size:cover;background-position:center;filter:blur(22px);opacity:.23;z-index:-1}.photo-frame img{width:100%;height:100%;max-height:100%;object-fit:contain;position:relative;z-index:1;transition:filter .45s;animation:none!important}.photo-frame:hover img{filter:brightness(1.035);transform:none!important}.hero,.v2 .hero-2,.v3 .hero-3{display:flex;align-items:center;position:relative;min-height:660px;height:calc(100svh - 174px);max-height:1000px;padding:50px 6% 85px;margin:0;border-radius:0;isolation:isolate;overflow:hidden;background-color:var(--deep);background-image:var(--hero);background-size:cover;background-position:center;color:#fff;gap:0}.hero:after,.v2 .hero-2:after,.v3 .hero-3:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071e16eb 0%,#071e16d9 35%,#071e1633 68%,#071e1600 100%);z-index:-1}.v2 .hero-2:after{background:linear-gradient(90deg,#082943f2 0%,#082943d4 39%,#08294324 75%)}.v3 .hero-3:after{background:linear-gradient(90deg,#0a3029ed 0%,#0a3029c7 35%,#0a302912 80%)}.hero .hero-visual,.v2 .hero-2 .hero-visual,.v3 .hero-3 .hero-visual{position:absolute;inset:0;z-index:-2;height:100%;min-height:0;border-radius:0;width:100%;margin:0;overflow:hidden;animation:hero-drift 20s ease-in-out infinite alternate}.hero .hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center;animation:none}.hero .hero-copy,.v3 .hero-copy{display:block;padding:0;background:none;max-width:600px;align-self:auto;z-index:2}.hero h1,.v2 .hero-copy h1,.v3 .hero-copy h1{font-size:clamp(46px,5.8vw,84px);letter-spacing:-.03em;margin:0 0 25px;text-transform:none}.v1 .hero h1{font-weight:800}.v2 .hero-copy{max-width:700px}.v2 .hero h1{font-family:TransportSerif,Georgia,serif;line-height:1.12}.v3 .hero h1{font-weight:800}.hero i{color:#f5bf69}.v2 .hero i{color:#f4c58b}.v3 .hero i{color:#ffa979}.hero p,.v3 .hero-copy p{color:#eaf0ec;font-size:18px;max-width:440px;line-height:1.7;margin-bottom:24px}.hero .secondary,.v3 .hero .secondary{color:white;border-color:#ffffff96;background:#09231c4d}.hero .actions{margin-top:24px}.hero-call{display:block;margin-top:24px;font-size:13px;color:#d6e2dc}.hero-scroll{position:absolute;bottom:24px;left:6%;display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:.06em}.hero-scroll span{font-size:23px;animation:scroll-cue 2s infinite}.hero-note{display:none!important}.rotating-stripe{overflow:hidden;background:var(--accent);color:var(--onaccent);padding:20px 0;position:relative}.stripe-track{display:flex;width:max-content;animation:stripe 36s linear infinite}.stripe-track>div{display:flex;flex-shrink:0;gap:42px;padding:0 21px}.stripe-track span{display:flex;align-items:center;gap:42px;font-size:14px;font-weight:700;white-space:nowrap}.stripe-track span:after{content:'';width:6px;height:6px;background:currentColor;transform:rotate(45deg)}.rotating-stripe:hover .stripe-track{animation-duration:55s}.v2 .rotating-stripe{background:#dae8f1;color:#123b58}.v3 .rotating-stripe{background:#d8e6b5;color:#163b2e}.rich-intro{grid-template-columns:1fr 1.1fr;gap:6%;background:linear-gradient(100deg,var(--bg),var(--surface));align-items:center}.intro-collage{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.intro-collage .photo-frame{height:330px;border-radius:12px}.intro-collage .photo-frame:nth-child(2){height:400px}.intro p{font-size:16px}.service-explorer{background:var(--surface);position:relative;isolation:isolate}.service-explorer:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--surface),transparent),url('crane-side-960.webp') center/cover;opacity:.055;z-index:-1}.service-tabs{display:flex;gap:12px;border-bottom:1px solid var(--line);padding-bottom:18px;margin:26px 0 22px;flex-wrap:wrap}.service-tabs button{border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:14px 25px;border-radius:7px;font-size:15px;font-weight:700;transition:background .3s,transform .3s}.service-tabs button[aria-selected=true]{background:var(--accent);color:var(--onaccent);border-color:transparent}.service-tabs button:hover{transform:translateY(-2px)}.panel-intro{max-width:760px;margin-bottom:28px}.service-grid,.v2 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-card,.v2 .service-card,.v3 .service-card{display:grid;grid-template-columns:1fr;background:var(--bg);border:0;border-radius:12px;overflow:hidden;box-shadow:0 6px 20px #0000000d;transition:transform .4s var(--ease),box-shadow .4s}.service-card:hover{transform:translateY(-6px);box-shadow:0 15px 35px #0002}.service-card .photo-frame{aspect-ratio:16/10;width:100%;height:auto;min-height:0}.service-card img,.v2 .service-card img,.v3 .service-card img{width:100%;height:100%;min-height:0;object-fit:contain}.service-card>div,.v2 .service-card>div,.v3 .service-card>div{padding:25px 28px}.service-card h3,.v2 .service-card h3,.v3 .service-card h3{font-size:26px;margin-bottom:14px;line-height:1.2}.service-card p{font-size:15px}.service-card:nth-child(3n+2)>div{background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.service-card .text-link{color:var(--ink);font-size:13px}.v3 .service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.v3 .service-card{grid-template-columns:44% 1fr}.v3 .service-card .photo-frame{height:100%;aspect-ratio:auto;min-height:260px}.v3 .service-card>div{padding:25px 22px}.v3 .service-card h3{font-size:23px}.v3 .service-card p{font-size:14px}.equipment-tab{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.equipment-tab h3{font-size:32px}.equipment-tab .photo-frame{border-radius:12px}.fleet-feature,.v2 .fleet-feature,.v3 .fleet-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:0;margin:0;border-radius:0;background:var(--deep);color:white;position:relative;isolation:isolate}.fleet-feature:before{content:'';position:absolute;inset:0;background:url('crane-cab-960.webp') center/cover;opacity:.08;z-index:-1}.fleet-feature>.photo-frame{width:100%;height:470px;aspect-ratio:auto;background:#e3e8e2;order:0}.fleet-feature>div,.v3 .fleet-feature>div{padding:50px 12%}.fleet-feature p,.v2 .fleet-feature p{color:#dce7df}.fleet-feature i{color:#f2bb69}.v2 .fleet-feature>.photo-frame{order:2}.coverage-section{position:relative;display:grid;grid-template-columns:1.7fr 1fr;gap:10%;align-items:center;padding:70px 6%;background:linear-gradient(90deg,#0a2419ef,#0a2419d4),url('hero-1-1600.webp') center/cover;color:#fff}.coverage-section>div{position:relative}.coverage-section h2{font-size:clamp(32px,3.7vw,54px)}.coverage-section p{color:#dce7df}.coverage-section i{color:#f1c778}.coverage-section .secondary{color:#fff}.coverage-note{padding:30px;border:1px solid #ffffff45;border-radius:12px;background:#07190e35}.coverage-note strong{font-size:32px;font-weight:600}.coverage-note p{font-size:14px;margin:8px 0 18px}.coverage-note hr{border:0;border-top:1px solid #fff4;margin:25px 0}.v2 .coverage-section{background-image:linear-gradient(90deg,#062c47ee,#062c47c9),url('hero-2-1600.webp')}.v3 .coverage-section{background-image:linear-gradient(90deg,#0c392af2,#0c392ac7),url('hero-3-1600.webp')}.home-gallery{background:var(--bg)}.work-strip,.v3 .work-strip{grid-template-columns:1fr 1fr 1fr;gap:20px}.work-strip .photo-frame{height:340px;aspect-ratio:auto;border-radius:12px}.work-strip img{height:100%;object-fit:contain}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;background:var(--surface)}.faq-intro p{max-width:38ch}.faq-intro .button{margin-top:10px}.faq-list details{border-bottom:1px solid var(--line);padding:0}.faq-list summary{cursor:pointer;list-style:none;display:flex;gap:22px;align-items:center;justify-content:space-between;font-size:17px;font-weight:600;padding:22px 0;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:25px;font-weight:400;color:var(--accent);transition:transform .3s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details[open] summary{color:var(--accent)}.faq-list details p{margin:0 0 24px;font-size:15px;max-width:65ch;animation:answer-in .35s var(--ease)}.contact-band,.v2 .contact-band,.v3 .contact-band{margin:0;padding:55px 6%;border-radius:0;background:linear-gradient(90deg,#0c211be8,#0c211bcc),url('crane-side-1600.webp') center/cover;color:white;gap:40px}.contact-band h2{font-size:clamp(32px,3.2vw,48px);margin-bottom:16px}.contact-band p,.contact-band .eyebrow{color:#e0e8e3!important}.contact-band .button,.v2 .contact-band .button,.v3 .contact-band .button{background:var(--accent);color:var(--onaccent)}footer,.v2 footer,.v3 footer{background:var(--deep);color:white;padding:52px 6% 90px;grid-template-columns:1.4fr .65fr 1fr;gap:45px}footer .brand,.v2 footer .brand{background:none;padding:0;width:auto;max-width:100%;gap:20px}footer .brand img,.v2 footer .brand img,.v3 footer .brand img{width:145px;height:170px}footer .brand span{font-size:20px}footer .brand small{font-size:13px}footer .brand em{font-size:10px}footer p,.v2 footer p{color:#cad7cf}footer h3,.v2 footer h3{color:#f1ce88;font-size:17px}footer>div:not(.footer-brand):not(.credit){padding-top:28px}footer>div>a:not(.brand){font-size:14px;line-height:1.6}.credit,.v2 .credit{color:#c1cec5;border-color:#fff3;margin-top:3px;padding-top:20px}.footer-brand>p{max-width:420px;font-size:14px;margin-top:16px}.social svg{transition:transform .3s}.social:hover svg{transform:rotate(-10deg)}.floating{bottom:22px;right:22px;background:#087441;box-shadow:0 7px 20px #0003}.back-to-top{position:fixed;right:28px;bottom:89px;width:44px;height:44px;display:grid;place-items:center;background:var(--deep);color:white;border:1px solid #ffffff66;border-radius:50%;z-index:24;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .3s,transform .3s}.back-to-top.show{opacity:1;pointer-events:auto;transform:none}.inner-hero,.v3 .inner-hero{margin:0;border-radius:0;display:grid;grid-template-columns:1fr 1fr;min-height:400px;background:var(--surface);isolation:isolate;position:relative;overflow:hidden}.inner-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--surface),transparent),url('hero-1-960.webp') center/cover;opacity:.085;z-index:-1}.inner-hero>div,.v2 .inner-hero>div{padding:40px 10%;align-self:center}.inner-hero h1,.v3 .inner-hero h1{font-size:clamp(34px,3.5vw,54px);text-transform:none;letter-spacing:-.03em;margin-bottom:22px}.inner-hero p{max-width:45ch}.inner-hero>.photo-frame{width:100%;height:450px;aspect-ratio:auto;background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.inner-hero .actions{gap:20px;align-items:center;margin-top:22px}.breadcrumb{font-size:13px;text-decoration:underline;display:inline-block;margin-bottom:20px;opacity:.8}.detail-layout{gap:6%;grid-template-columns:1.4fr 1fr;align-items:center}.detail-layout aside{background:var(--surface);border:0;border-radius:12px;padding:32px;box-shadow:none}.detail-layout aside ul{padding:0;list-style:none}.detail-layout aside li{padding:12px 0;border-bottom:1px solid var(--line);margin:0}.detail-layout aside h3{font-size:24px}.detail-layout aside p{font-size:14px;margin-top:24px}.preparation{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;background:var(--bg);position:relative}.preparation .photo-frame{height:430px;aspect-ratio:auto;border-radius:12px}.check-list{list-style:none;padding:0;margin:24px 0}.check-list li{padding:12px 0 12px 25px;border-bottom:1px solid var(--line);position:relative;margin:0;font-size:15px}.check-list li:before{content:'';position:absolute;left:3px;top:20px;width:7px;height:7px;background:var(--accent);border-radius:2px}.steps{gap:28px;grid-template-columns:1fr 1fr 1fr 1fr;background:var(--surface);padding-top:45px;padding-bottom:45px}.steps article{border:0;padding:20px;background:var(--bg);border-radius:12px}.steps h2{font-size:30px}.steps article b{font-size:18px}.fleet-grid{gap:32px}.fleet-grid article{border-radius:12px;overflow:hidden;align-items:center}.fleet-grid article>.photo-frame{height:400px;aspect-ratio:auto}.fleet-grid article:nth-child(even)>.photo-frame{order:2}.fleet-grid article>div{padding:35px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.gallery-item{border-radius:12px;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s;position:relative}.gallery-item:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.gallery-item .photo-frame{height:310px;aspect-ratio:auto}.gallery-item img{object-fit:contain;height:100%}.gallery-item span{padding:16px 18px;font-size:14px}.filters{margin-bottom:25px}.filters button{border-radius:7px;padding:12px 22px}.lightbox{border:0;border-radius:10px}.lightbox>img{object-fit:contain;max-height:88vh}.contact-layout{gap:6%;align-items:start}.contact-layout>div{position:sticky;top:30px;padding:32px;background:linear-gradient(var(--surface),color-mix(in srgb,var(--accent) 8%,var(--surface)));border-radius:12px}.contact-layout h2{font-size:36px}.contact-layout form{border-radius:12px;padding:35px;background:var(--surface)}form label{font-size:14px}input,textarea,select{border-radius:6px;padding:13px;border-color:var(--line)}form .button{font-size:14px}.js .reveal.pending,.js .reveal.seen,.reveal{opacity:1;transform:none;transition:none}.reveal.entered{animation:block-arrive .7s var(--ease) both}.ticker{display:none}
@keyframes stripe{to{transform:translateX(-50%)}}@keyframes scroll-cue{50%{transform:translateY(5px)}}@keyframes hero-drift{to{transform:scale(1.025)}}@keyframes answer-in{from{opacity:.6;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes block-arrive{from{filter:brightness(.88);transform:translateY(12px)}to{filter:brightness(1);transform:none}}
@media(max-width:1200px){header,.v3 header{padding:8px 3%;gap:16px}.brand img{width:84px;height:105px}.brand span{font-size:16px}.brand small{font-size:11px}nav{gap:15px;font-size:13px}.header-cta{padding:12px;font-size:12px}.header-cta svg{display:none}.hero,.v2 .hero-2,.v3 .hero-3{height:calc(100svh - 162px);min-height:620px}.hero .hero-copy{max-width:56%}.hero h1,.v2 .hero-copy h1,.v3 .hero-copy h1{font-size:clamp(46px,5.9vw,72px)}.v3 .service-card{grid-template-columns:1fr}.v3 .service-card .photo-frame{height:auto;min-height:0;aspect-ratio:16/10}.intro-collage .photo-frame{height:280px}.intro-collage .photo-frame:nth-child(2){height:330px}footer .brand{flex-wrap:wrap}footer .brand img{width:125px;height:150px}footer .brand span{font-size:17px}}
@media(max-width:1000px){header,.v3 header{min-height:116px;gap:12px}.brand{margin-right:auto}.brand img{width:82px;height:100px}.brand span{font-size:16px}.brand small{font-size:11px}.hamburger{display:grid;place-items:center;order:2;width:44px;height:44px;flex-shrink:0;border:1px solid #fff5;background:transparent;color:#fff;border-radius:7px}.hamburger svg{width:24px;height:24px}.header-cta{order:3}.header-cta svg{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:16px 5%;max-height:calc(100dvh - 155px);overflow:auto;background:var(--deep);box-shadow:0 12px 25px #0004}nav.open{display:block}nav>a{display:block;padding:12px 0;border-bottom:1px solid #fff2}.submenu{position:static;width:100%;background:#ffffff0d;color:white;box-shadow:none;max-height:none;border:0;padding:8px 12px}.submenu a{color:#fff;border-color:#fff2}.service-trigger{display:flex;justify-content:space-between;width:100%;padding:12px 0}.hero p{font-size:16px;max-width:380px}.hero .actions{gap:10px}.hero .button{padding:14px 18px;font-size:13px}.rich-intro{gap:5%}.section{padding:50px 5%}.intro-collage{gap:10px}.intro-collage .photo-frame{height:240px}.intro-collage .photo-frame:nth-child(2){height:280px}.fleet-feature>.photo-frame{height:420px}.fleet-feature>div,.v3 .fleet-feature>div{padding:38px 9%}.work-strip .photo-frame{height:280px}.coverage-section{gap:6%;padding:55px 5%}.coverage-note{padding:23px}.coverage-note strong{font-size:26px}.faq-section{gap:6%}.faq-list summary{font-size:16px}.inner-hero>div,.v2 .inner-hero>div{padding:35px 9%}.inner-hero>.photo-frame{height:420px}.inner-hero h1,.v3 .inner-hero h1{font-size:38px}.inner-hero .button{font-size:12px;padding:13px 16px}.inner-hero .text-link{font-size:12px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item .photo-frame{height:290px}.contact-layout>div{padding:25px}.contact-layout h2{font-size:31px}footer,.v2 footer,.v3 footer{grid-template-columns:1.2fr 1fr;gap:30px;padding:45px 5% 100px}.footer-brand{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;align-items:center}.footer-brand .brand{grid-row:1/3;flex-wrap:nowrap}.footer-brand .social{grid-column:2}.footer-brand>p{margin:0}footer .brand img,.v2 footer .brand img,.v3 footer .brand img{width:140px;height:170px}footer>div:not(.footer-brand):not(.credit){padding-top:10px}.preparation .photo-frame{height:390px}.steps{grid-template-columns:1fr 1fr}.contact-band{padding:45px 5%}.equipment-tab{gap:28px}}
@media(max-width:600px){.topbar{font-size:10px;padding:7px 4%}.topbar span:first-child{max-width:230px}.topbar a{display:none}header,.v3 header{min-height:116px;height:116px;padding:6px 3%;gap:8px}.brand{gap:8px;min-width:0}.brand img{width:76px;height:102px;flex-shrink:0}.brand span{font-size:11px;letter-spacing:0;max-width:104px}.brand small{font-size:8px;margin-top:4px;letter-spacing:.025em}.brand em{font-size:7px;letter-spacing:.06em;margin-top:6px}.hamburger{width:40px;height:42px}.header-cta{padding:11px 10px;font-size:10px;min-height:42px;flex-shrink:0}.header-cta svg{display:none}.hero,.v2 .hero-2,.v3 .hero-3{min-height:730px;height:calc(100svh - 146px);max-height:none;padding:35px 6% 310px;display:flex;align-items:flex-start;background-position:68% center}.hero .hero-visual,.v2 .hero-2 .hero-visual,.v3 .hero-3 .hero-visual{inset:auto 0 30px 0;height:300px;z-index:0;animation:none;overflow:visible}.hero .hero-visual img{object-fit:contain;object-position:center bottom;mask-image:linear-gradient(transparent,#000 13%,#000 93%,transparent)}.hero:after,.v2 .hero-2:after,.v3 .hero-3:after{z-index:-1;background:linear-gradient(180deg,#09251af5 0%,#09251af5 55%,#09251ada 100%)}.v2 .hero-2:after{background:#0b2b43ee}.v3 .hero-3:after{background:#0c3329f0}.hero .hero-copy,.v2 .hero-copy,.v3 .hero-copy{max-width:none;width:100%;position:relative;padding:0;align-self:auto}.hero h1,.v2 .hero-copy h1,.v3 .hero-copy h1{font-size:clamp(39px,10.8vw,53px);line-height:1.05;margin-bottom:20px;text-transform:none;letter-spacing:-.03em}.v2 .hero-copy h1{font-size:clamp(38px,10.3vw,50px);line-height:1.13}.hero p,.v3 .hero-copy p{font-size:15px;line-height:1.65;margin-bottom:20px;max-width:35ch}.hero .actions{flex-wrap:wrap;margin-top:0;gap:10px}.hero .button{font-size:11px;min-height:45px;padding:12px 13px;gap:8px}.hero .button svg{width:18px;height:18px}.hero-call{font-size:11px;margin-top:18px}.hero-scroll{bottom:12px;left:6%;font-size:10px;z-index:3;gap:12px}.hero-scroll span{font-size:17px}.rotating-stripe{padding:16px 0}.stripe-track>div{gap:25px;padding:0 12.5px}.stripe-track span{font-size:12px;gap:25px}.section{padding:42px 5%}h2{font-size:32px;line-height:1.12}p{font-size:15px;line-height:1.75}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:18px}.rich-intro{grid-template-columns:1fr;gap:28px}.intro-collage{gap:12px}.intro-collage .photo-frame{height:230px}.intro-collage .photo-frame:nth-child(2){height:270px}.intro p{font-size:15px}.service-tabs{gap:8px;padding-bottom:15px;margin:22px 0}.service-tabs button{font-size:12px;padding:12px 13px;flex:1;min-width:90px}.panel-intro{font-size:14px}.service-grid,.v2 .service-grid,.v3 .service-grid{grid-template-columns:1fr;gap:20px}.service-card,.v2 .service-card,.v3 .service-card{display:grid;grid-template-columns:1fr}.service-card .photo-frame,.v2 .service-card .photo-frame,.v3 .service-card .photo-frame{height:auto;aspect-ratio:4/3;min-height:0}.service-card>div,.v2 .service-card>div,.v3 .service-card>div{padding:24px}.service-card h3,.v2 .service-card h3,.v3 .service-card h3{font-size:25px}.service-card p,.v3 .service-card p{font-size:14px}.equipment-tab{grid-template-columns:1fr;gap:24px}.equipment-tab h3{font-size:27px}.fleet-feature,.v2 .fleet-feature,.v3 .fleet-feature{grid-template-columns:1fr}.fleet-feature>.photo-frame,.v2 .fleet-feature>.photo-frame{height:300px;min-height:0;order:0}.fleet-feature>div,.v3 .fleet-feature>div{padding:34px 6%}.fleet-feature p{font-size:15px}.coverage-section{grid-template-columns:1fr;gap:28px;padding:44px 6%}.coverage-section h2{font-size:32px}.coverage-note{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;padding:23px}.coverage-note strong{font-size:24px}.coverage-note strong:first-child{grid-column:1;grid-row:1}.coverage-note strong:nth-of-type(2){grid-column:2;grid-row:1}.coverage-note p{font-size:12px;margin:0}.coverage-note hr{display:none}.coverage-section .button{font-size:12px;padding:13px 15px}.work-strip,.v3 .work-strip{grid-template-columns:1fr 1fr;gap:14px}.work-strip .photo-frame{height:230px}.work-strip .photo-frame:first-child{grid-column:1/-1;height:330px}.work-strip img:first-child{height:100%;grid-column:auto}.faq-section{grid-template-columns:1fr;gap:25px}.faq-intro p{max-width:none}.faq-list summary{font-size:15px;gap:15px;padding:19px 0}.faq-list details p{font-size:14px}.faq-intro .button{font-size:12px}.contact-band,.v2 .contact-band,.v3 .contact-band{padding:40px 6%;margin:0;display:block}.contact-band h2{font-size:32px}.contact-band .button{margin-top:24px}.inner-hero,.v3 .inner-hero{grid-template-columns:1fr;margin:0;min-height:0}.inner-hero>div,.v2 .inner-hero>div{padding:32px 6%}.inner-hero h1,.v3 .inner-hero h1{font-size:36px;line-height:1.12;overflow-wrap:normal}.inner-hero p{font-size:15px}.inner-hero>.photo-frame{height:320px;aspect-ratio:auto}.inner-hero .actions{margin-top:18px;gap:16px}.breadcrumb{margin-bottom:16px;font-size:12px}.detail-layout{grid-template-columns:1fr;gap:26px}.detail-layout aside{padding:27px}.preparation{grid-template-columns:1fr;gap:30px}.preparation .photo-frame{height:350px}.steps{grid-template-columns:1fr;gap:16px}.steps article{padding:23px}.steps>div{grid-column:auto}.steps h2{font-size:30px}.fleet-grid article{grid-template-columns:1fr}.fleet-grid article>.photo-frame{height:300px}.fleet-grid article:nth-child(even)>.photo-frame{order:0}.fleet-grid article>div{padding:28px}.gallery-grid{grid-template-columns:1fr 1fr;gap:13px}.gallery-item .photo-frame{height:240px}.gallery-item span{font-size:11px;padding:12px;line-height:1.4}.filters{gap:8px}.filters button{padding:12px 15px;font-size:12px}.contact-layout{grid-template-columns:1fr;gap:26px}.contact-layout>div{position:static;padding:28px}.contact-layout h2{font-size:30px}.contact-layout form{padding:28px 22px}.contact-layout dd{font-size:14px}.contact-layout form h2{font-size:27px}footer,.v2 footer,.v3 footer{grid-template-columns:.75fr 1.25fr;padding:40px 6% 100px;gap:24px 20px}.footer-brand{display:block;grid-column:1/-1}.footer-brand .brand{gap:20px;align-items:center;flex-wrap:nowrap}footer .brand img,.v2 footer .brand img,.v3 footer .brand img{width:140px;height:174px}footer .brand span{font-size:17px;max-width:none}footer .brand small{font-size:11px}footer .brand em{font-size:9px}.footer-brand>p{margin:16px 0;font-size:14px}footer>div>a:not(.brand){font-size:12px}footer h3,.v2 footer h3{font-size:15px}.credit{font-size:11px;display:block;margin-top:5px}.credit a{font-size:11px!important;margin-top:13px}.floating{width:50px;height:50px;right:16px;bottom:17px;padding:12px}.back-to-top{right:19px;bottom:81px;width:43px;height:43px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal.entered{filter:none;transform:none}}
@media(min-width:601px){.hero .hero-visual img{object-position:right center}.hero,.v2 .hero-2,.v3 .hero-3{background-position:right center}}
/* Final responsive containment and image-fit corrections. */
.rich-intro{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.rich-intro>*{min-width:0}.intro-collage{min-width:0;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.intro-collage .photo-frame{width:100%;aspect-ratio:auto}.photo-frame img{object-fit:contain!important;height:100%!important;min-height:0!important;max-width:100%;width:100%!important}.contact-band{background-color:var(--deep)}nav>a:after{width:100%;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}nav>a:hover:after,nav>a[aria-current]:after{transform:scaleX(1)}
@media(max-width:600px){.rich-intro{grid-template-columns:minmax(0,1fr)}.topbar{font-size:11px}.header-cta{font-size:11px}.hero,.v2 .hero-2,.v3 .hero-3{min-height:620px;height:auto;padding-bottom:230px}.hero .hero-visual,.v2 .hero-2 .hero-visual,.v3 .hero-3 .hero-visual{height:230px;bottom:30px}.brand em{font-size:8px}footer .brand em{font-size:10px}}
@media(max-width:600px){.hero-1{background-image:url('hero-1-480.webp')}.v2 .hero-2{background-image:url('hero-2-480.webp')}.v3 .hero-3{background-image:url('hero-3-480.webp')}}
@media(max-width:600px){.v3 .header-cta{font-size:11px;padding:11px 10px;min-height:42px}}
.lightbox{min-width:min(280px,90vw);min-height:140px}
/* Business-information photographs: preserve the complete source frame. */
.client-collection{background:linear-gradient(135deg,var(--surface),var(--bg))}.client-collection .section-heading>div{max-width:760px}.client-collection .section-heading p{font-size:16px;margin:0;max-width:57ch}.client-collection .section-heading .text-link{flex-shrink:0}.original-grid{columns:3;column-gap:24px}.original-grid .original-photo{width:100%;display:block;break-inside:avoid;margin:0 0 24px;overflow:hidden;border:1px solid var(--line);background:var(--bg);border-radius:10px;box-shadow:0 8px 24px #00000013;transition:transform .3s,box-shadow .3s}.original-grid .original-photo img{display:block;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto;transform:none!important}.original-grid .original-photo span{padding:17px 20px;font-size:15px;font-weight:600;line-height:1.45}.original-grid .original-photo:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0003}.original-grid .original-photo:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.client-collection .section-heading h2{margin-bottom:20px}.lightbox img{max-width:90vw;max-height:85vh;object-fit:contain}.v1 .client-collection{border-top:1px solid #efbd6150}.client-collection .filters{margin-top:25px}
@media(max-width:1000px){.original-grid{columns:2;column-gap:18px}.original-grid .original-photo{margin-bottom:18px}.client-collection .section-heading{display:block}.client-collection .section-heading>.text-link{margin-top:20px}}
@media(max-width:600px){.original-grid{columns:2;column-gap:12px}.original-grid .original-photo{margin-bottom:12px;border-radius:7px}.original-grid .original-photo span{font-size:12px;padding:12px 10px}.client-collection .section-heading p{font-size:15px}.lightbox{padding:0;max-width:94vw}.lightbox img{width:100%;max-height:85vh}.client-collection .section-heading h2{font-size:32px}}
/* Aligned, size-bounded photo rows: never enlarge portraits into long columns. */
.client-collection{padding-left:max(5%,calc((100vw - 1240px)/2));padding-right:max(5%,calc((100vw - 1240px)/2))}
.original-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));columns:auto;gap:22px;align-items:stretch}
.original-grid .original-photo{grid-column:span 2;display:flex;flex-direction:column;margin:0;min-width:0;align-self:stretch;background:var(--surface)}
.original-grid .original-photo img{width:100%!important;height:280px!important;max-height:280px!important;object-fit:contain!important;object-position:center;padding:12px;background:color-mix(in srgb,var(--bg) 72%,var(--surface));flex:none}
.original-grid .original-photo span{display:flex;align-items:center;min-height:60px;margin:0;padding:15px 18px;border-top:1px solid var(--line);background:var(--bg);flex:1}
.original-grid .original-photo:nth-last-child(2):nth-child(3n+1),.original-grid .original-photo:last-child:nth-child(3n+2){grid-column:span 3}
.intro-collage .photo-frame,.intro-collage .photo-frame:nth-child(2){height:auto;aspect-ratio:4/3;max-height:300px}
@media(min-width:1600px){.original-grid .original-photo img{height:300px!important;max-height:300px!important}}
@media(max-width:1000px){.original-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.original-grid .original-photo,.original-grid .original-photo:nth-last-child(2):nth-child(3n+1),.original-grid .original-photo:last-child:nth-child(3n+2){grid-column:auto}.original-grid .original-photo img{height:250px!important;max-height:250px!important}}
@media(max-width:600px){.original-grid{gap:12px}.original-grid .original-photo img{height:185px!important;max-height:185px!important;padding:7px}.original-grid .original-photo span{font-size:13px;line-height:1.4;padding:11px 10px;min-height:58px}.intro-collage .photo-frame,.intro-collage .photo-frame:nth-child(2){max-height:190px}}
/* V1 landscape service scenes fill their frames without portrait side gutters. */
.v1 .original-grid .original-photo img{height:auto!important;max-height:none!important;aspect-ratio:3/2;object-fit:contain!important}
.v1 .original-grid .original-photo[data-representative=true] img{padding:0!important;object-fit:cover!important;object-position:center}
.v1 .original-grid .original-photo:nth-last-child(2):nth-child(3n+1),.v1 .original-grid .original-photo:last-child:nth-child(3n+2){grid-column:span 3}
.v1 .landscape-scene{aspect-ratio:3/2;height:auto!important;min-height:0!important;max-height:none!important;background:transparent}
.v1 .landscape-scene:before{display:none}
.v1 .landscape-scene img{object-fit:cover!important;width:100%!important;height:100%!important;padding:0}
.v1 .inner-hero>.landscape-scene{align-self:center;aspect-ratio:3/2}
@media(max-width:1000px){.v1 .original-grid .original-photo:nth-last-child(2):nth-child(3n+1),.v1 .original-grid .original-photo:last-child:nth-child(3n+2){grid-column:auto}}
@media(max-width:600px){.v1 .inner-hero>.landscape-scene{aspect-ratio:3/2}}
