:root{--bg:#0b0d0e;--surface:#141617;--panel:#1a1d1e;--panel2:#202324;--line:#333739;--line-soft:#292d2e;--white:#f7f7f5;--muted:#a1a6a7;--text:#e6e8e7;--ink:#181a1b;--font:'DM Sans',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--ease:cubic-bezier(.2,.75,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.65 var(--font);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #e9e9e9;outline-offset:4px}::selection{background:#b9bec0;color:#0d0f10}.wrap{width:min(100% - 72px,1250px);margin-inline:auto}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.icon{display:inline-block;width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle}.eyebrow{font-weight:700;font-size:11px;letter-spacing:.23em;color:#b3b7b7;display:flex;align-items:center;gap:14px;text-transform:uppercase;margin:0 0 26px}.eyebrow.light{color:#d1d3d2}.eyebrow-line{width:31px;height:1px;display:inline-block;background:currentColor;flex:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:.96;letter-spacing:.012em}h1{font-size:clamp(82px,10.6vw,176px)}h2{font-size:clamp(58px,7.0vw,105px)}h2 span,h1 span{color:#92999b}h3{font-size:34px}.section{padding:125px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-bottom:62px}.section-head h2{margin:0}.section-head>p{max-width:310px;color:var(--muted);font-size:16px;line-height:1.85;margin:60px 0 0}.section-head.align-end>a{align-self:end;margin-bottom:8px}.text-link{display:inline-flex;align-items:center;gap:22px;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.15em;border-bottom:1px solid #c1c5c5;padding:0 0 11px;transition:gap .25s var(--ease);white-space:nowrap}.text-link:hover{gap:29px}.text-link .icon{width:15px;height:15px}.btn{min-height:55px;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 23px;font-weight:700;font-size:11px;letter-spacing:.10em;line-height:1.3;text-transform:uppercase;border:1px solid transparent;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn .icon{width:18px;height:18px}.btn-primary,.btn-white{background:var(--white);color:#111314}.btn-primary:hover,.btn-white:hover{background:#d2d6d5}.btn-glass{border:1px solid #a9afb0;background:#0b0d0e38;color:#fff}.btn-glass:hover{background:#fff2}.btn-outline{border:1px solid #969d9f;color:var(--white);background:transparent}.btn-outline:hover{background:#292d2e}.button-row{display:flex;gap:12px;flex-wrap:wrap}
.topline{height:36px;background:#050607;border-bottom:1px solid #252829}.topline-inner{height:100%;display:flex;align-items:center;justify-content:space-between;font-size:9px;line-height:1;font-weight:700;letter-spacing:.19em;color:#9da2a3}.topline-inner>a{display:inline-flex;align-items:center;gap:7px;color:#e6e6e5}.topline-inner .icon{width:12px;height:12px}.status-dot{display:inline-block;width:5px;height:5px;background:#dbe5e0;border-radius:50%;margin-right:10px;vertical-align:1px}.site-header{height:84px;position:sticky;top:0;z-index:30;background:rgba(10,12,13,.94);border-bottom:1px solid #252829;backdrop-filter:blur(14px)}.header-inner{display:flex;height:100%;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:45px;height:45px;object-fit:contain}.brand-type{font-family:var(--display);font-size:27px;line-height:.82;font-weight:800;letter-spacing:.025em;color:#fff}.brand-type em{font-style:normal;color:#a6acad}.brand-type small{display:block;margin-top:10px;font:700 7px/1 var(--font);letter-spacing:.25em;color:#8b9294;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:36px;height:100%}.nav-link{display:inline-flex;align-items:center;height:100%;font-size:11px;font-weight:700;letter-spacing:.08em;color:#b1b6b6;transition:color .2s;white-space:nowrap}.nav-link:hover,.nav-link.current{color:#fff}.nav-link.current{position:relative}.nav-link.current:after{content:'';height:2px;width:14px;position:absolute;bottom:0;left:0;background:#f0f0ef}.nav-action{border:1px solid #888e8f;min-height:44px;display:inline-flex;align-items:center;gap:15px;padding:0 16px;font-size:10px;font-weight:700;letter-spacing:.09em;white-space:nowrap;transition:background .2s}.nav-action:hover{background:#272a2b}.nav-action .icon{width:15px;height:15px}.menu-toggle{display:none;border:0;background:none;color:#fff;padding:9px}.menu-toggle .icon{width:27px;height:27px}
.hero{position:relative;min-height:min(760px,calc(100svh - 120px));min-height:max(660px,calc(100svh - 120px));display:flex;align-items:center;overflow:hidden;isolation:isolate}.hero-bg,.hero-tint{position:absolute;inset:0;z-index:-1}.hero-bg{background:#14191b url('hero.webp') center 55%/cover no-repeat;transform:scale(1.015)}.hero-tint{background:linear-gradient(90deg,rgba(4,6,7,.95) 0%,rgba(6,8,9,.86) 23%,rgba(7,9,11,.57) 48%,rgba(8,10,11,.12) 82%),linear-gradient(0deg,rgba(4,6,7,.65),transparent 30%)}.hero-content{position:relative;padding:90px 0 120px}.hero-inner{max-width:1010px}.hero h1{font-weight:700;letter-spacing:-.008em;margin:0 0 26px;text-shadow:0 4px 40px #0005}.hero h1 span{color:#c5c9c7}.hero-copy{max-width:410px;font-size:15px;line-height:1.9;color:#d2d6d4;margin-bottom:34px}.hero-bottom{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.16em;color:#d0d5d3}.down-arrow{margin-left:20px;font-size:20px;vertical-align:-2px;font-weight:400}.proof{background:#101213;border-bottom:1px solid #2a2c2d}.proof-grid{min-height:142px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.proof-grid>div{padding:16px 48px;border-left:1px solid #303334}.proof-grid>div:first-child{padding-left:0;border-left:0}.proof-grid strong{font:700 33px/.9 var(--display);color:#fff;letter-spacing:.03em}.proof-grid strong span{font-size:26px;color:#969e9e}.proof-grid p{font-size:9px;font-weight:700;letter-spacing:.17em;color:#989e9f;margin:12px 0 0}.services-preview{background:#111314}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #363a3b;margin-bottom:40px}.service-card{min-height:350px;display:flex;flex-direction:column;justify-content:space-between;padding:29px 28px 28px;position:relative;transition:background .22s;background:#191b1c;border-left:1px solid #343839}.service-card:first-child{border-left:0}.service-card:hover{background:#26292a}.service-top{display:flex;align-items:center;justify-content:space-between}.service-number{font-size:9px;letter-spacing:.16em;color:#8f9595;font-weight:700}.service-top>.icon{width:28px;height:28px;stroke:#b9bebe;stroke-width:1.2}.service-card h3{margin:0 0 12px;max-width:210px}.service-card p{font-size:12px;color:#a5aaab;line-height:1.65;min-height:77px;margin:0 0 24px}.service-bottom{position:relative}.round-arrow{width:33px;height:33px;border:1px solid #6c7272;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-top:12px;transition:transform .25s}.round-arrow .icon{width:14px;height:14px}.service-card:hover .round-arrow{transform:translate(3px,-3px)}.work-preview{background:#0b0d0e}.work-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:260px 260px;gap:13px}.work-wide{grid-row:span 2}.work-tile{display:block;position:relative;overflow:hidden;background:#242829}.work-tile:after{content:'';position:absolute;inset:38% 0 0;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);pointer-events:none}.work-tile img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .5s;filter:saturate(.78)}.work-tile:hover img{transform:scale(1.045);filter:saturate(.97)}.tile-overlay{position:absolute;bottom:0;left:0;right:0;z-index:1;display:flex;justify-content:space-between;align-items:center;padding:24px 28px;font-size:10px;font-weight:700;letter-spacing:.16em}.tile-overlay .icon{width:21px;height:21px}.about-split{display:grid;grid-template-columns:1fr 1fr;background:#202425}.about-picture{min-height:645px}.about-picture img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) brightness(.86)}.about-copy{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;padding:95px clamp(40px,7vw,140px)}.about-copy h2{font-size:clamp(62px,6.4vw,105px);margin:0 0 32px}.about-copy p{font-size:14px;color:#b8bdbe;max-width:420px;line-height:1.92;margin-bottom:22px}.about-copy .btn{margin-top:20px}.area{background:#111314}.area-grid{display:grid;grid-template-columns:1fr .82fr;gap:100px;align-items:center}.area h2{margin-bottom:30px}.area p{max-width:470px;color:#a4a9a9;font-size:15px;line-height:1.9;margin-bottom:28px}.city-pills{display:flex;flex-wrap:wrap;gap:10px;align-content:center}.city-pills span{padding:12px 16px;border:1px solid #3a3e3f;min-width:110px;text-align:center;font-size:11px;letter-spacing:.07em;font-weight:700;color:#d6d9d9;background:#1a1d1e}.city-pills .other-city{border-color:#828788;background:transparent;min-width:208px}.emergency{background:#252a2b;border-top:1px solid #424849;border-bottom:1px solid #424849;position:relative;overflow:hidden}.emergency:before{content:'GG';font:800 460px/.7 var(--display);letter-spacing:-.1em;position:absolute;right:-70px;bottom:-80px;color:rgba(255,255,255,.025);pointer-events:none}.emergency-inner{padding:90px 0;display:flex;justify-content:space-between;align-items:end;gap:40px;position:relative}.emergency h2{font-size:clamp(63px,7.5vw,117px);margin:0 0 20px}.emergency h2 em{font-style:normal;color:#a6adae}.emergency p{max-width:510px;color:#c7caca;line-height:1.85;margin:0}.emergency .btn{flex:none;margin-bottom:10px}.final-cta{background:#0d0f10}.final-inner{display:flex;justify-content:space-between;align-items:end;gap:45px}.final-inner h2{margin-bottom:20px}.final-inner p{margin:0;color:#a6abac;font-size:15px}.final-inner .btn{margin-bottom:10px;flex:none}
.footer{background:#070809;border-top:1px solid #292c2d}.footer-main{padding:78px 0 68px;display:grid;grid-template-columns:1.8fr .75fr 1.15fr;gap:58px}.footer-brand img{width:52px;height:52px}.footer-brand .brand-type{font-size:33px}.footer-main p{font-size:13px;color:#969d9e;line-height:1.9;margin:28px 0 0}.footer-col{display:flex;flex-direction:column;align-items:start;gap:12px;color:#adb3b3;font-size:12px}.footer-col b{color:#eff1f0;font-size:10px;letter-spacing:.16em;margin-bottom:14px}.footer-col a:hover,.footer-bottom a:hover{color:#fff}.footer-col span{max-width:245px;line-height:1.8}.footer-bottom{border-top:1px solid #252829;min-height:75px;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#81888a;font-size:9px;font-weight:700;letter-spacing:.15em}.footer-bottom a{color:#b5baba}.dot-divider{padding:0 12px}.mobile-cta{display:none}
.inner-hero{min-height:490px;display:flex;align-items:center;background:#1b2022;position:relative;overflow:hidden}.inner-hero .wrap{position:relative;padding:80px 0}.inner-hero h1{font-size:clamp(90px,11vw,162px);margin:0 0 16px}.inner-hero p{color:#d1d6d7;font-size:16px;max-width:580px;margin:0}.dark-inner{background:linear-gradient(95deg,#0b0d0e 20%,#202528 100%)}.dark-inner:after{content:'GG';font:800 550px/.6 var(--display);position:absolute;right:0;bottom:-150px;color:#ffffff06;pointer-events:none}.work-hero{background:linear-gradient(90deg,#0b0d0e 0%,#0b0d0ee0 45%,#0b0d0e25),url('carriage.webp') center 49% / cover}.booking-hero{min-height:400px;background:linear-gradient(90deg,#0b0d0e,#222728)}.short{min-height:350px}.short h1{margin:0}
.service-details{padding:110px 0}.service-detail{display:grid;grid-template-columns:1fr 1fr;min-height:505px;border-bottom:1px solid #363b3d}.service-detail:first-child{border-top:1px solid #363b3d}.service-detail.reverse .service-photo{order:2}.service-detail.reverse .service-detail-copy{order:1;padding-left:0;padding-right:clamp(40px,7vw,90px)}.service-photo{min-height:495px;overflow:hidden}.service-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.service-detail-copy{padding:60px 20px 60px clamp(40px,7vw,90px);align-self:center}.service-detail-copy h2{font-size:clamp(60px,6vw,89px);margin:0 0 25px}.service-detail-copy p{color:#aeb4b4;line-height:1.87;max-width:480px}.check-list{margin:30px 0;padding:0;list-style:none;border-top:1px solid #363b3d;max-width:420px}.check-list li{padding:12px 0;border-bottom:1px solid #363b3d;display:flex;align-items:center;gap:13px;color:#d6dad9;font-size:12px}.check-list .icon{width:14px;height:14px;color:#adb6b7}.service-detail-copy .text-link{margin-top:18px}.dark-banner{background:#202425}.dark-banner-inner{padding:75px 0;display:flex;align-items:end;justify-content:space-between;gap:35px}.dark-banner h2{font-size:clamp(50px,5.2vw,76px);margin:16px 0}.dark-banner p{margin:0;color:#b1b6b7}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-card{position:relative;aspect-ratio:1/1.02;overflow:hidden;display:block;background:#1e2223}.gallery-card img{height:100%;width:100%;object-fit:cover;transition:transform .6s var(--ease);filter:saturate(.8)}.gallery-card:hover img{transform:scale(1.05)}.gallery-card:after{content:'';position:absolute;inset:58% 0 0;background:linear-gradient(0deg,#000b,transparent)}.gallery-card>div{position:absolute;z-index:1;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:22px;color:white;gap:12px}.gallery-card span{font-size:11px;font-weight:700;letter-spacing:.09em}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:100;background:#050607f5;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:65px 40px 35px}.lightbox img{max-width:min(100%,1150px);max-height:78vh;object-fit:contain}.lightbox p{margin:15px 0 0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#d4d6d6}.lightbox-close{position:absolute;right:25px;top:15px;color:white;font-size:44px;border:0;background:transparent;line-height:1}.narrow-cta{background:#1b1f20}.narrow-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.narrow-cta h2{font-size:clamp(50px,5.5vw,80px);margin:0}.about-story-grid{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:center}.about-story-grid h2{font-size:clamp(67px,7vw,105px);margin-bottom:30px}.about-story-grid p{color:#b6babb;line-height:1.94;font-size:15px;max-width:560px;margin-bottom:23px}.about-story-grid .btn{margin-top:13px}.about-story-grid>img{width:100%;min-height:540px;max-height:750px;object-fit:cover;filter:saturate(.74)}.process{background:#1b1e1f}.process h2{margin-bottom:50px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #474b4d}.process-grid>div{padding:36px 34px 12px 0;border-right:1px solid #474b4d}.process-grid>div:not(:first-child){padding-left:34px}.process-grid>div:last-child{border:0}.process-grid b{font:600 18px var(--display);color:#9da3a4}.process-grid h3{margin:30px 0 12px;font-size:37px}.process-grid p{color:#b0b5b5;font-size:14px;line-height:1.85}
.booking-section{background:#111314}.booking-grid{display:grid;grid-template-columns:.70fr 1.3fr;gap:85px;align-items:start}.booking-side{position:sticky;top:125px}.booking-side h2{font-size:clamp(58px,6.4vw,92px);margin:0 0 24px}.booking-side>p{color:#afb5b5;font-size:14px;line-height:1.85}.booking-side-rule{height:1px;background:#3c4142;margin:38px 0 32px}.side-contact{display:flex;gap:16px;margin-bottom:30px}.side-contact>span{width:39px;height:39px;border:1px solid #505657;display:flex;align-items:center;justify-content:center;flex:none}.side-contact .icon{width:18px;height:18px}.side-contact b{font-size:10px;letter-spacing:.14em;color:#fff}.side-contact p,.side-contact a{display:block;margin:4px 0 0;color:#acb2b3;font-size:13px;line-height:1.7}.side-contact a:hover{color:white}.form-shell{border:1px solid #444a4c;background:#1c2021}.form-top{padding:19px 31px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #414647;background:#242829;color:#e8e9e9;font-size:10px;font-weight:700;letter-spacing:.15em}.form-top-marker{color:#b1b8b8;display:flex;align-items:center;gap:11px}.form-top-marker>span{width:7px;height:7px;border-radius:50%;background:#e7eeee}.booking-form{padding:31px}.form-section-label{font-size:11px;letter-spacing:.18em;font-weight:700;color:#d3d7d7;margin:10px 0 25px;padding-top:10px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-form label{display:block;font-size:10px;letter-spacing:.11em;font-weight:700;color:#cbd0cf;margin-bottom:21px}.booking-form label>span:not(.optional){color:#f1f1ef}.optional{font-size:9px;color:#9aa1a2;letter-spacing:.08em}.booking-form input:not([type=hidden]),.booking-form select,.booking-form textarea{width:100%;margin-top:10px;padding:14px 14px;min-height:51px;border:1px solid #4a5051;border-radius:0;outline:none;background:#151819;color:#f5f5f4;font:400 13px/1.5 var(--font);color-scheme:dark;transition:border-color .2s}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#878e8f}.booking-form input:focus,.booking-form textarea:focus,.booking-form select:focus{border-color:#eceeeb}.booking-form textarea{resize:vertical;min-height:122px}.booking-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c6c9c9' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:40px}.booking-form select option{background:#151819;color:white}.booking-form input[type=date]{padding-right:10px}.bot-field{position:absolute;left:-9999px;top:-9999px;opacity:0;height:1px;width:1px;overflow:hidden}.form-submit{width:100%;display:flex;justify-content:space-between;margin-top:18px;padding-inline:25px;min-height:62px}.form-disclaimer{font-size:11px;color:#9da4a4;line-height:1.8;margin:20px 0 0}.form-disclaimer a{text-decoration:underline}.success-page{min-height:70vh;display:grid;align-items:center;padding:110px 0}.success-card{max-width:690px}.success-check{font:500 38px var(--font);display:grid;place-items:center;width:72px;height:72px;border:1px solid #a1a9aa;border-radius:50%;margin-bottom:35px}.success-card h1{font-size:clamp(73px,8vw,125px);margin:0 0 30px}.success-card p{max-width:540px;color:#adb3b4;line-height:1.9}.success-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.legal-inner{max-width:800px}.legal-inner h2{font-family:var(--font);font-size:24px;font-weight:700;line-height:1.3;letter-spacing:0;margin:38px 0 12px}.legal-inner p{color:#b9bfc0;line-height:1.9}.legal-inner a{text-decoration:underline}
@media (max-width:1130px){.main-nav{gap:23px}.nav-action{padding:0 12px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card:nth-child(3){border-left:0;border-top:1px solid #343839}.service-card:nth-child(4){border-top:1px solid #343839}.service-card{min-height:325px}.about-copy{padding:65px}.about-picture{min-height:580px}.area-grid{gap:55px}.booking-grid{gap:48px}.service-detail-copy{padding-left:45px}.service-detail.reverse .service-detail-copy{padding-right:45px}.about-story-grid{gap:50px}}
@media (max-width:800px){.wrap{width:min(100% - 38px,670px)}.topline{display:none}.site-header{height:72px}.brand img{width:40px;height:40px}.brand-type{font-size:25px}.brand-type small{font-size:6px}.menu-toggle{display:block}.main-nav{position:absolute;top:72px;left:0;right:0;display:none;height:auto;background:#0c0e0f;padding:18px 19px 27px;border-bottom:1px solid #3a3e40;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 30px 40px #0007}.main-nav.open{display:flex}.nav-link{height:auto;padding:14px 5px;border-bottom:1px solid #282c2e;font-size:14px}.nav-link.current:after{display:none}.nav-action{margin-top:18px;padding:16px;justify-content:space-between}.section{padding:80px 0}.section-head{display:block;margin-bottom:35px}.section-head>p{margin:21px 0 0;max-width:600px}.section-head.align-end>a{margin:23px 0 0}.hero{min-height:760px;min-height:max(710px,calc(100svh - 72px))}.hero-bg{background-position:60% 50%}.hero-tint{background:linear-gradient(90deg,#050708e8,#05070885 60%,#05070822),linear-gradient(0deg,#050708d8,transparent 42%)}.hero-content{padding:90px 0}.hero h1{font-size:clamp(75px,12vw,119px)}.hero-copy{font-size:14px}.hero-bottom{bottom:25px;font-size:9px}.proof-grid{min-height:auto;grid-template-columns:repeat(3,1fr);padding:28px 0}.proof-grid>div{padding:15px 20px}.proof-grid strong{font-size:25px}.proof-grid strong span{font-size:20px}.proof-grid p{font-size:8px;line-height:1.65}.work-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 210px}.work-wide{grid-column:span 2;grid-row:span 1}.about-split{grid-template-columns:1fr}.about-picture{min-height:420px;max-height:520px}.about-copy{padding:75px 35px}.area-grid{grid-template-columns:1fr;gap:40px}.emergency-inner,.final-inner,.dark-banner-inner{display:block}.emergency-inner{padding:75px 0}.emergency .btn,.final-inner .btn,.dark-banner .btn{margin-top:28px}.footer-main{grid-template-columns:1fr 1fr;gap:43px}.footer-main>div:first-child{grid-column:span 2}.inner-hero{min-height:420px}.inner-hero h1{font-size:clamp(76px,11vw,112px)}.service-detail,.service-detail.reverse{grid-template-columns:1fr}.service-detail .service-photo,.service-detail.reverse .service-photo{order:0;min-height:325px;max-height:480px}.service-detail .service-detail-copy,.service-detail.reverse .service-detail-copy{order:1;padding:48px 0 55px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}.about-story-grid{grid-template-columns:1fr;gap:35px}.about-story-grid>img{min-height:420px;max-height:550px}.booking-grid{grid-template-columns:1fr;gap:42px}.booking-side{position:static}.booking-side-rule,.side-contact{display:none}.booking-side>p{max-width:500px}.booking-hero{min-height:330px}.booking-section{padding-top:65px}.process-grid{gap:0}.process-grid>div{padding-right:18px}.process-grid>div:not(:first-child){padding-left:18px}.process-grid h3{font-size:30px}.narrow-cta .wrap{display:block}.narrow-cta .btn{margin-top:23px}}
@media (max-width:540px){body{padding-bottom:65px}.wrap{width:calc(100% - 36px)}h2{font-size:clamp(56px,14vw,78px)}.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:20px;gap:10px}.eyebrow-line{width:22px}.section{padding:70px 0}.hero{min-height:660px;min-height:max(640px,calc(100svh - 72px))}.hero-bg{background-position:60% center}.hero-content{padding:80px 0 110px}.hero h1{font-size:clamp(64px,16vw,95px);line-height:.94}.hero-copy{max-width:320px;font-size:13px;line-height:1.85}.button-row{gap:9px}.button-row .btn{font-size:10px;min-height:52px;gap:14px;padding:13px 15px}.button-row .btn-glass{min-width:0}.hero-bottom{font-size:8px}.hero-bottom>span:last-child{display:none}.proof-grid{grid-template-columns:1fr;gap:0;padding:10px 0}.proof-grid>div,.proof-grid>div:first-child{border:0;border-bottom:1px solid #2f3233;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:71px;padding:8px 0}.proof-grid>div:last-child{border:0}.proof-grid strong{font-size:24px}.proof-grid strong span{font-size:19px}.proof-grid p{text-align:right;font-size:8px;max-width:145px;margin:0}.service-grid{grid-template-columns:1fr}.service-card{border-left:0;border-top:1px solid #343839;min-height:255px}.service-card:first-child{border-top:0}.service-card:nth-child(2){border-top:1px solid #343839}.service-card h3{font-size:39px;max-width:none}.service-card p{min-height:0;margin:0;max-width:280px}.service-bottom .round-arrow{position:absolute;right:0;bottom:0}.work-grid{grid-template-columns:1fr;grid-template-rows:290px 235px 235px}.work-wide{grid-column:span 1}.tile-overlay{padding:17px;font-size:9px}.about-picture{min-height:310px}.about-copy{padding:65px 19px}.area-grid{gap:30px}.city-pills{gap:8px}.city-pills span{min-width:0;padding:11px 13px;font-size:10px}.emergency h2{font-size:clamp(68px,15vw,98px)}.final-inner .btn{margin-top:30px}.footer-main{grid-template-columns:1fr;gap:30px;padding:56px 0 45px}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:22px 0;line-height:1.8}.mobile-cta{display:grid;grid-template-columns:.85fr 1.45fr;position:fixed;z-index:45;bottom:0;left:0;right:0;height:65px;background:#060708;border-top:1px solid #313536}.mobile-cta a{display:flex;align-items:center;justify-content:center;gap:12px;font-size:10px;font-weight:700;letter-spacing:.09em}.mobile-call{color:#f4f5f4;border-right:1px solid #434748}.mobile-book{background:#eef0ee;color:#151819}.mobile-cta .icon{width:18px;height:18px}.inner-hero{min-height:340px}.inner-hero .wrap{padding:60px 0}.inner-hero h1{font-size:clamp(68px,16vw,99px)}.inner-hero p{font-size:13px;line-height:1.8}.service-details{padding:55px 0}.service-photo{min-height:250px!important}.service-detail-copy h2{font-size:65px}.gallery-grid{grid-template-columns:1fr}.gallery-card{aspect-ratio:1.2}.lightbox{padding:65px 15px 35px}.about-story-grid h2{font-size:67px}.about-story-grid>img{min-height:310px}.process-grid{grid-template-columns:1fr}.process-grid>div,.process-grid>div:not(:first-child){border:0;border-top:1px solid #414647;padding:26px 0}.process-grid h3{margin-top:10px}.process-grid>div p{margin-bottom:0}.booking-hero{min-height:310px}.booking-grid{gap:27px}.booking-side h2{font-size:68px}.booking-side>p{font-size:13px}.form-top{padding:17px}.booking-form{padding:18px}.field-row{grid-template-columns:1fr;gap:0}.form-section-label{font-size:10px}.booking-form label{margin-bottom:16px}.booking-form input:not([type=hidden]),.booking-form select{min-height:49px}.form-submit{font-size:10px;gap:10px;padding:16px}.success-page{padding:75px 0;min-height:75vh}.success-card h1{font-size:77px}.success-actions{flex-direction:column;align-items:stretch}.success-actions .btn{justify-content:space-between}.legal-inner h2{font-size:23px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Robust typography fallback when web fonts are unavailable */
.hero h1{font-size:clamp(78px,8.8vw,143px)}
.inner-hero h1{font-size:clamp(77px,7.8vw,117px)}
@media (max-width:800px){.hero h1{font-size:clamp(66px,10.5vw,100px)}.inner-hero h1{font-size:clamp(62px,9.2vw,83px)}}
@media (max-width:540px){.hero h1{font-size:clamp(45px,12.5vw,65px)}.inner-hero h1{font-size:clamp(48px,12.4vw,67px)}.booking-hero{min-height:255px}.booking-hero .wrap{padding:44px 0}.booking-hero h1{font-size:clamp(43px,11.4vw,62px)}.booking-side h2{font-size:clamp(49px,12.5vw,66px)}.booking-section{padding-top:48px}.booking-grid{gap:17px}}
.hero-inner{max-width:1220px}
@media (max-width:800px){.about-split{grid-template-columns:minmax(0,1fr)}.about-picture,.about-copy{min-width:0}}
@media (max-width:540px){.about-copy h2{font-size:clamp(49px,12.7vw,69px)}}
@media (max-width:800px){.service-detail,.service-detail.reverse{grid-template-columns:minmax(0,1fr)}.service-detail-copy,.service-photo{min-width:0}}
@media (max-width:540px){.service-detail-copy h2{font-size:clamp(40px,11vw,63px);overflow-wrap:anywhere}.work-hero h1{font-size:clamp(43px,11vw,62px)}}
@media (max-width:540px){.work-hero ~ .section .section-head h2{font-size:clamp(36px,10.4vw,66px)}.emergency h2{font-size:clamp(52px,14vw,79px)}}
@media (max-width:360px){.wrap{width:calc(100% - 28px)}.header-inner{gap:8px}.brand img{width:35px;height:35px}.brand-type{font-size:21px}.brand-type small{font-size:5.5px}.menu-toggle{padding:5px}.about-copy h2{font-size:clamp(40px,12vw,60px)}}


/* Garage Guys homepage slideshow — pure CSS for reliable local & hosted playback.
   Five slides; next slide becomes fully visible every six seconds.
   The last 1.2 seconds of each interval are a gentle crossfade. */
.hero{isolation:isolate}
.hero .hero-slideshow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#14191b}
.hero .hero-slide{position:absolute;inset:0;background-repeat:no-repeat;background-size:cover;background-position:center 54%;opacity:0;animation:gg-hero-fade 30s linear infinite;will-change:opacity}
.hero .hero-slide:first-child{opacity:1}
.hero .hero-slide--1{background-image:url('modern-glass.webp');animation-delay:0s}
.hero .hero-slide--2{background-image:url('walnut-pair.webp');animation-delay:-24s}
.hero .hero-slide--3{background-image:url('black-modern.webp');animation-delay:-18s}
.hero .hero-slide--4{background-image:url('arched-wood.webp');animation-delay:-12s}
.hero .hero-slide--5{background-image:url('original-black-raised-panel.webp');animation-delay:-6s}
@keyframes gg-hero-fade{
  0%,16%{opacity:1}
  20%,96%{opacity:0}
  100%{opacity:1}
}
.hero .hero-tint{z-index:1;pointer-events:none}
.hero .hero-content,.hero .hero-bottom{z-index:2}
@media (max-width:800px){.hero .hero-slide{background-position:60% 50%}}
@media (max-width:540px){.hero .hero-slide{background-position:62% 50%}}
@media (prefers-reduced-motion:reduce){
  .hero .hero-slide{animation:none!important;opacity:0}
  .hero .hero-slide:first-child{opacity:1}
}

/* Slideshow is a subtle opacity-only fade, so keep it operating even when the
   browser's global reduced-motion setting would otherwise freeze all slides. */
@media (prefers-reduced-motion:reduce){
  .hero .hero-slide{animation:gg-hero-fade 30s linear infinite !important}
  .hero .hero-slide--1{animation-delay:0s !important}
  .hero .hero-slide--2{animation-delay:-24s !important}
  .hero .hero-slide--3{animation-delay:-18s !important}
  .hero .hero-slide--4{animation-delay:-12s !important}
  .hero .hero-slide--5{animation-delay:-6s !important}
}
