:root{--ink:#202220;--deep:#171917;--surface:#2b2d2a;--paper:#f6f5f1;--white:#fff;--muted:#b6b8b1;--text:#50554f;--accent:#eb5027;--action:#c7401d;--line:#dadcd4;--radius:3px;--container:1280px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:700;letter-spacing:-.045em}h1{font-size:clamp(49px,calc(5.5vw + 1px),79px);line-height:1.04}h2{font-size:clamp(31px,calc(3.15vw + 1px),46px);line-height:1.12}h3{font-size:25px;line-height:1.15}em{font-style:normal;color:var(--accent)}p{font-size:17px;line-height:1.75}p+p{margin-top:18px}.icon{flex:none;vertical-align:middle}.container{width:min(var(--container),calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.15em;line-height:1.6;margin-bottom:22px;color:#b43817}.lead{font-size:20px;line-height:1.65;max-width:650px}.button{min-height:52px;padding:15px 23px;display:inline-flex;align-items:center;justify-content:center;gap:27px;background:var(--action);border:1px solid transparent;border-radius:var(--radius);color:#fff;font-size:14px;font-weight:650;line-height:1.5;text-align:center;transition:background .18s,transform .18s;cursor:pointer}.button:hover{background:#aa3214;transform:translateY(-2px)}.button .icon{width:18px;height:18px}.button-outline{border-color:#757970;background:transparent;color:inherit}.button-outline:hover{background:#ffffff12}.button-text{color:var(--ink);padding:12px 0;background:transparent;border:0;border-bottom:1px solid var(--accent);justify-content:space-between}.button-text:hover{color:var(--accent);background:transparent}.button-row{display:flex;flex-wrap:wrap;gap:12px}.underlined{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:14px}.underlined:hover{color:var(--accent)}:focus-visible{outline:3px solid #eb5027;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:-70px;left:20px;background:var(--accent);color:white;padding:15px}.skip-link:focus{top:10px}[hidden]{display:none!important}.site-header{position:sticky;top:0;z-index:50;background:#202220f5;color:#fff;border-bottom:1px solid #ffffff12;backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;gap:30px;min-height:104px}.brand{flex:none;padding-block:8px}.brand img{width:132px;height:73px;object-fit:contain}.navigation{display:flex;align-items:center;justify-content:center;gap:25px;flex:1}.navigation a{font-size:13px;color:#e1e3dc;white-space:nowrap;transition:color .2s;padding-block:14px}.navigation a:hover,.navigation a[aria-current]{color:#ff7954}.header-phone{display:flex;align-items:center;gap:12px;border-left:1px solid #ffffff26;padding-left:25px;font-size:18px;font-weight:650;letter-spacing:-.025em;white-space:nowrap}.header-phone>.icon{color:var(--accent);width:22px}.header-phone small{display:block;font-size:10px;letter-spacing:.02em;font-weight:400;color:#b5b9ae;margin-bottom:6px}.menu-toggle{display:none}
.hero{position:relative;background:var(--deep);color:white;overflow:hidden}.hero-image{position:absolute;inset:0 0 0 auto;height:100%;width:75%;object-fit:cover;object-position:58% 50%;filter:brightness(.81)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#171917 3%,#171917fa 23%,#171917d9 38%,#17191770 57%,#17191715 80%),linear-gradient(0deg,#1719177d,transparent 45%)}.hero-inner{position:relative;min-height:658px;padding-top:66px;padding-bottom:55px;display:flex;align-items:center}.hero-copy{position:relative;z-index:2}.hero .eyebrow{font-size:11px;letter-spacing:.17em;margin-bottom:25px;display:flex;align-items:center;gap:13px;color:#ff805a}.hero .eyebrow:before{content:"";height:1px;width:29px;background:var(--accent)}.hero h1{font-size:clamp(51px,calc(5.55vw + 1px),80px);line-height:1.045;letter-spacing:-.055em;font-weight:740}.hero h1 em{color:#ff7954}.hero-copy>p{font-size:17px;color:#d2d5cb;margin-top:25px;line-height:1.7}.hero .button-row{margin-top:31px}.hero .button-outline{border-color:#788070}.hero-google{display:inline-flex;align-items:center;gap:14px;margin-top:40px}.google-letter{font-family:Arial,sans-serif;display:grid;place-items:center;width:36px;height:36px;background:#fff;color:#4285f4;border-radius:50%;font-weight:700;font-size:24px;letter-spacing:-.08em;padding-right:2px}.hero-google strong{font-size:19px;letter-spacing:-.02em}.hero-google strong>span{font-size:13px;font-weight:400;color:#c4c8bd}.stars{color:#ff9b64;letter-spacing:3px;font-size:13px}.hero-google .stars{display:block;font-size:10px;margin-top:4px}.hero-google u{text-decoration:none;color:#fff}.hero-google .icon{width:11px;height:11px;margin-left:3px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:43px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p{font-size:14px;line-height:1.75;color:var(--text);padding-bottom:4px}.services-section{background:var(--paper);padding-bottom:90px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{background:#fff;border:1px solid #e4e5df;transition:transform .2s,border-color .2s;min-width:0}.service-card:hover{transform:translateY(-5px);border-color:var(--accent)}.service-picture{height:185px;position:relative;overflow:hidden;background:#e7e7e0}.service-picture img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover .service-picture img{transform:scale(1.035)}.service-card:first-child .service-picture img{object-position:50% 50%}.service-card:nth-child(4) .service-picture img{object-position:65% 50%}.service-body{padding:25px 20px 24px}.service-title{display:flex;align-items:center;gap:9px;margin-bottom:15px}.service-title>.icon:first-child{width:23px;height:23px;color:var(--accent)}.service-title h3{font-size:22px;letter-spacing:-.035em;flex:1}.service-title>.icon:last-child{width:16px;height:16px}.service-body p{font-size:13px;line-height:1.8;color:var(--text);min-height:65px}.service-tags{display:block;margin-top:23px;padding-top:16px;border-top:1px solid var(--line);font-size:10px;color:#6a6e65;line-height:1.7}
.family-section{background:#eeeee7;padding-top:80px;padding-bottom:80px}.family-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.family-picture{position:relative;height:465px}.family-picture>img{height:100%;width:100%;object-fit:cover;object-position:50% 50%}.family-copy h2{margin-bottom:26px}.family-copy h2 em{color:var(--ink)}.family-copy p{font-size:15px;color:var(--text);line-height:1.85}.family-copy p+p{margin-top:14px}.family-copy .button{margin-top:29px;font-size:13px}
.reviews-section{background:var(--ink);color:var(--white)}.reviews-section .section-heading{align-items:center}.reviews-section .eyebrow{color:#ff805a}.reviews-section h2 em{color:#d4d8cd}.review-score{display:grid;grid-template-columns:40px auto;column-gap:12px;align-items:center}.review-score .google-letter{grid-row:1/3}.review-score strong{font-size:32px;line-height:1;letter-spacing:-.04em}.review-score strong span{font-size:17px;font-weight:400;color:#c8cebf}.review-score .stars{margin-top:6px;font-size:11px}.review-score small{font-size:10px;color:#b9c0af;grid-column:1/3;margin-top:14px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;margin:40px 0 27px}.review{border:1px solid #ffffff23;padding:28px;display:flex;flex-direction:column;background:#252825}.review>.stars{font-size:11px}.review blockquote{margin:22px 0 32px;line-height:1.6;font-size:20px;letter-spacing:-.025em;min-height:64px;flex:1}.review figcaption{display:flex;align-items:center;gap:11px;font-size:11px}.review-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff13;display:grid;place-items:center;font-size:10px;color:#d4dacb}.review figcaption strong{display:block;font-weight:550}.review figcaption small{display:block;color:#aeb7a3;font-size:9px;margin-top:5px}.google-small{margin-left:auto;color:#c7cec0;font-weight:700;font-size:16px}.reviews-section .underlined{color:#c5cbbb;font-size:12px}
.season-section{position:relative;background:#e8e8df;overflow:hidden;min-height:445px}.season-picture{position:absolute;right:0;top:0;bottom:0;width:45%;background:#171917}.season-picture img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}.season-inner{position:relative;padding-block:70px}.season-copy{max-width:600px;width:52%}.season-copy .eyebrow{font-size:10px}.season-copy p{font-size:15px;color:var(--text);max-width:460px;margin-top:24px}.season-copy .button{margin-top:28px}
.footer{background:#171917;color:#d5d9cf;padding-top:65px}.footer h2{font-size:13px;letter-spacing:0;font-weight:600;margin:10px 0 23px;color:#fff}.footer a:hover{color:#ff805a}.social-links{display:flex;gap:20px;margin-top:24px;font-size:11px}.footer-bottom{padding-block:22px;border-top:1px solid #ffffff15;font-size:10px;color:#8e9880;display:flex;justify-content:space-between;gap:25px}.footer-bottom>div{display:flex;gap:24px}.mobile-contact{display:none}
.breadcrumbs{display:flex;gap:12px;font-size:11px;color:#a6b09a;padding-top:24px;margin-bottom:53px}.breadcrumbs a:hover{color:var(--accent)}.breadcrumbs>span[aria-hidden]{color:#5f6956}.page-hero{background:var(--ink);color:#fff;padding-bottom:67px;overflow:hidden}.page-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center}.page-hero .eyebrow,.simple-hero .eyebrow{font-size:11px;color:#ff805a}.page-hero .lead{font-size:17px;color:#c7cebe;margin-top:27px;max-width:530px}.page-hero .button-row{margin-top:33px}.page-hero h1{font-size:clamp(44px,calc(4.8vw + 1px),69px)}.page-hero h1 em,.simple-hero h1 em{color:#ff7954}.page-hero-picture{height:355px;position:relative}.page-cover{width:100%;height:100%;object-fit:cover}.page-hero-picture:after{content:"";position:absolute;right:-13px;bottom:-13px;width:75px;height:75px;border-right:3px solid var(--accent);border-bottom:3px solid var(--accent);pointer-events:none}.detail-layout{display:grid;grid-template-columns:1.4fr 1fr;align-items:start;gap:110px}.detail-blocks{display:grid;gap:39px}.detail-blocks article{display:flex;gap:22px}.detail-blocks h2{font-size:25px;letter-spacing:-.025em;margin-bottom:13px}.detail-blocks p{font-size:15px;color:var(--text)}.other-services{background:#eeeee7;padding-block:55px}.other-services h2{font-size:31px}.other-services-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.other-services-links a{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:23px;font-size:18px}.other-services-links a>.icon:first-child{color:var(--accent)}.other-services-links a>.icon:last-child{margin-left:auto;width:18px}.simple-hero{background:var(--ink);color:#fff;padding-bottom:65px}.simple-hero h1{font-size:clamp(41px,calc(5vw + 1px),71px)}.simple-hero .lead{font-size:17px;color:#c5ceba;margin-top:27px}.simple-hero .button{margin-top:30px}.narrow{max-width:850px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.story-grid h2{font-size:38px}.story-grid .lead{font-size:20px;color:var(--ink);margin-bottom:20px}.story-grid p{font-size:15px;color:var(--text)}.garage-photo{height:440px;position:relative;overflow:hidden}.garage-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:brightness(.75)}.garage-photo>.container{position:absolute;bottom:40px;left:0;right:0;color:#fff;font-size:25px;font-weight:600;letter-spacing:-.03em}.welcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.welcome-grid>div{border-top:1px solid var(--line);padding-top:30px}.welcome-grid .icon{color:var(--accent);width:30px;height:30px;margin-bottom:20px}.welcome-grid h3{font-size:25px;margin-bottom:15px}.welcome-grid p{font-size:15px;color:var(--text)}
.contact-section{padding-top:65px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact-method{display:flex;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}.contact-method>.icon:first-child{color:var(--accent);width:25px;height:25px}.contact-method>.icon:last-child{margin-left:auto;width:22px;height:22px}.contact-method span{display:block;font-size:12px;color:var(--text);margin-bottom:9px}.contact-method strong{font-size:30px;font-weight:650;letter-spacing:-.035em}.contact-method:hover strong{color:#bc3412}.contact-appointment{margin-top:40px}.contact-appointment h2{font-size:26px;margin-bottom:18px}.contact-appointment p{font-size:15px;color:var(--text);margin-bottom:25px}.hours-card{background:#eaece3;padding:40px}.hours-card>.eyebrow{font-size:10px}.hours-card h2{font-size:37px}.hours{border-collapse:collapse;width:100%;margin-top:25px;font-size:14px}.hours th,.hours td{padding:20px 0;border-bottom:1px solid #cdd2c3;vertical-align:top}.hours th{text-align:left;font-weight:500}.hours td{text-align:right;line-height:1.8}.hours-card>p{font-size:13px;color:var(--text);margin-top:25px}.contact-facade{position:relative;height:400px;margin-top:60px;overflow:hidden}.contact-facade>img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.map-link{position:absolute;left:25px;bottom:25px;background:#fff;padding:18px 23px;display:flex;gap:15px;align-items:center;font-size:13px}.map-link>.icon:first-child{color:var(--accent)}.map-link>.icon{width:18px;height:18px}
.appointment-section{padding-top:60px}.appointment-form{color:var(--ink)}.form-section{padding-bottom:29px;margin-bottom:29px;border-bottom:1px solid var(--line)}.form-section-title{display:flex;align-items:center;gap:14px;margin-bottom:28px}.form-section-title>span{width:29px;height:29px;border:1px solid #d2d6c9;border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--accent);flex:none}.form-section-title h2{font-size:24px;letter-spacing:-.03em}.appointment-form label{display:block;font-size:13px;font-weight:550;margin-bottom:9px}.appointment-form input:not([type=checkbox]),.appointment-form select,.appointment-form textarea{width:100%;border:1px solid #c9cec0;background:#fff;border-radius:3px;padding:14px 13px;min-height:49px;color:var(--ink);font-size:15px;margin-bottom:17px;line-height:1.5}.appointment-form textarea{resize:vertical}.appointment-form input::placeholder,.appointment-form textarea::placeholder{color:#777f6c;font-size:13px}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:#bd3715;outline:2px solid #eb502726;outline-offset:1px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.field-hint{font-size:12px;color:#657159;line-height:1.8;margin-top:2px}.field-hint a{text-decoration:underline;text-underline-offset:3px}.form-notice{background:#ede9df;border-left:3px solid var(--accent);padding:14px 18px;font-size:13px;line-height:1.8;margin:0 0 20px}.form-notice a{text-decoration:underline}.field-error{display:block;color:#a52d12;font-size:12px;margin-bottom:12px;line-height:1.6}.appointment-form .checkbox-label{display:flex;gap:12px;align-items:flex-start;line-height:1.8;font-weight:400;font-size:13px;margin-bottom:15px}.checkbox-label input{margin-top:4px;width:16px;height:16px;accent-color:var(--accent);flex:none}.appointment-form>.button{margin-bottom:15px}
.faq-list{margin-bottom:38px}.faq-list details{border-bottom:1px solid #ccd2c1}.faq-list details:first-child{border-top:1px solid #ccd2c1}.faq-list summary{padding:25px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;font-size:19px;letter-spacing:-.025em;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--accent);font-size:25px;line-height:1}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list p{font-size:15px;color:var(--text);padding-bottom:24px;max-width:700px}.legal h2{font-size:26px;margin:35px 0 17px}.legal h2:first-child{margin-top:0}.legal p{font-size:15px;color:var(--text)}.legal a{text-decoration:underline}.offer-empty{text-align:center;padding:20px 0}.offer-empty>.icon{width:55px;height:55px;color:var(--accent);margin-bottom:29px}.offer-empty h2{font-size:41px}.offer-empty p{font-size:16px;color:var(--text);margin:25px auto;max-width:570px}.promotion{border:1px solid var(--line);padding:40px;margin-bottom:25px}.promotion h2{margin-bottom:20px}.promotion p{margin-bottom:25px}
@media(min-width:1500px){.hero-image{width:70%}.hero-inner{min-height:710px}.hero h1{font-size:86px}}
@media(max-width:1200px){.container{width:calc(100% - 64px)}.header-inner{gap:20px}.navigation{gap:17px}.navigation a{font-size:12px}.header-phone{padding-left:17px;font-size:16px;gap:9px}.header-phone small{font-size:9px}.brand img{width:115px;height:64px}.header-inner{min-height:91px}.service-title h3{font-size:19px}.service-body{padding:22px 16px}.service-title{gap:7px}.service-title>.icon:first-child{width:19px}.service-title>.icon:last-child{width:13px}.family-grid{gap:50px}.family-picture{height:430px}.hero-inner{min-height:620px}.hero h1{font-size:67px}.detail-layout{gap:60px}.contact-grid{gap:65px}}
@media(max-width:1000px){.header-phone{margin-left:auto;border-left:0}.header-phone small{display:none}.navigation{position:absolute;top:100%;left:0;right:0;background:#202220;padding:25px 32px;display:none;border-top:1px solid #ffffff17;box-shadow:0 15px 20px #0003}.navigation.is-open{display:grid;grid-template-columns:1fr 1fr;gap:5px 30px}.navigation a{font-size:15px;padding:15px 0;border-bottom:1px solid #ffffff13}.menu-toggle{order:3;margin-left:15px;display:grid;gap:5px;padding:12px;border:1px solid #ffffff25;border-radius:3px;background:transparent;min-width:44px;min-height:44px;align-content:center}.menu-toggle span{display:block;width:20px;height:1px;background:#eee}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6px) rotate(-45deg)}.hero h1{font-size:63px}.hero-inner{min-height:590px}.hero-image{width:90%;object-position:60% 50%}.hero-shade{background:linear-gradient(90deg,#171917fc 0%,#171917e0 37%,#17191755 75%),linear-gradient(0deg,#17191775,transparent)}.section{padding-block:75px}.section-heading h2{font-size:35px}.section-heading>p{font-size:12px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.service-picture{height:210px}.service-title h3{font-size:25px}.service-title>.icon:first-child{width:24px}.service-title>.icon:last-child{width:18px}.service-body{padding:25px}.service-body p{font-size:14px;min-height:0}.service-tags{font-size:11px}.family-grid{gap:40px}.family-picture{height:430px}.family-copy h2{font-size:34px}.family-copy p{font-size:13px}.review blockquote{font-size:17px}.review{padding:23px}.review figcaption{gap:8px;font-size:10px}.review figcaption small{font-size:8px}.review-grid{gap:15px}.review-avatar{width:25px;height:25px}.season-copy h2{font-size:34px}.season-copy p{font-size:14px}.season-copy .eyebrow{font-size:9px}.page-hero-grid{gap:40px}.page-hero h1{font-size:48px}.page-hero .lead{font-size:15px}.page-hero .button-row>.button{font-size:12px;padding:13px 17px;gap:13px}.page-hero-picture{height:330px}.detail-layout{gap:40px;grid-template-columns:1.3fr 1fr}.detail-blocks h2{font-size:23px}.detail-blocks p{font-size:14px}.simple-hero h1{font-size:53px}.story-grid{gap:50px}.story-grid h2{font-size:33px}.contact-grid{gap:45px}.contact-method strong{font-size:26px}.hours-card{padding:30px}.form-section-title h2{font-size:22px}.form-grid{gap:13px}.welcome-grid{gap:30px}}
@media(max-width:700px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{min-height:81px;gap:15px}.brand img{width:108px;height:60px}.header-phone{font-size:15px;gap:9px}.header-phone>.icon{width:18px;height:18px}.menu-toggle{margin-left:0;min-width:40px;min-height:40px;padding:10px}.navigation{padding:15px 20px 25px}.navigation.is-open{grid-template-columns:1fr 1fr}.navigation a{font-size:14px}.hero-inner{min-height:650px;padding-block:54px 40px;align-items:flex-start}.hero-image{width:100%;object-position:65% 50%}.hero-shade{background:linear-gradient(90deg,#171917ed 0%,#171917c7 50%,#17191765),linear-gradient(0deg,#171917ed 0%,#17191740 70%)}.hero .eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:26px}.hero h1{font-size:clamp(41px,calc(8.5vw + 1px),59px);line-height:1.07;letter-spacing:-.05em}.hero-copy>p{font-size:15px;margin-top:26px;line-height:1.8;max-width:310px}.hero .button-row{gap:11px;margin-top:29px}.hero .button{font-size:12px;padding:14px 16px;gap:15px;min-height:48px}.hero-google{margin-top:34px;gap:11px}.section{padding-block:58px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:32px;line-height:1.15}.section-heading .eyebrow{font-size:10px;margin-bottom:15px}.section-heading>p{font-size:13px;margin-top:20px}.section-heading>p br{display:none}.service-grid{gap:16px}.service-picture{height:150px}.service-body{padding:20px 15px}.service-title{gap:8px;flex-wrap:wrap;margin-bottom:13px}.service-title h3{font-size:21px;flex-basis:calc(100% - 30px);letter-spacing:-.04em}.service-title>.icon:first-child{width:19px;height:19px}.service-title>.icon:last-child{display:none}.service-body p{font-size:12px;line-height:1.8;min-height:80px}.service-tags{font-size:9px;margin-top:17px;padding-top:12px;line-height:1.8;min-height:42px}.family-grid{grid-template-columns:1fr;gap:36px}.family-picture{height:310px;max-width:100%}.family-copy h2{font-size:35px;margin-bottom:22px}.family-copy>.eyebrow{font-size:10px;margin-bottom:17px}.family-copy p{font-size:15px}.family-copy .button{font-size:13px;margin-top:23px;gap:15px}.reviews-section .section-heading{display:block}.reviews-section .section-heading h2{font-size:31px}.review-score{display:inline-grid;margin-top:30px;column-gap:10px}.review-score strong{font-size:29px}.review-score small{font-size:10px;margin-top:10px}.review-score .google-letter{width:34px;height:34px;font-size:22px}.review-grid{grid-template-columns:1fr;gap:14px;margin-top:28px}.review{padding:24px}.review blockquote{font-size:21px;margin-block:18px 24px;min-height:0}.review figcaption{font-size:11px}.review figcaption small{font-size:9px}.review-avatar{width:30px;height:30px}.review>.stars{font-size:11px}.reviews-section .underlined{font-size:11px;margin-top:5px}.season-section{display:flex;flex-direction:column;min-height:0}.season-picture{position:relative;order:2;height:220px;width:100%}.season-inner{padding-block:52px}.season-copy{max-width:100%;width:100%}.season-copy .eyebrow{font-size:9px}.season-copy h2{font-size:35px}.season-copy p{font-size:15px}.season-copy .button{font-size:13px}.footer{padding-top:40px;padding-bottom:65px}.footer h2{font-size:13px;margin-bottom:20px}.footer-bottom{display:block;font-size:10px;padding-block:20px}.footer-bottom>div{margin-top:15px;gap:25px}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;background:var(--ink);border-top:1px solid #ffffff20;z-index:60;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact>a{min-height:57px;display:flex;gap:9px;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:550}.mobile-contact>a:last-child{background:var(--action)}.mobile-contact .icon{width:17px;height:17px}.breadcrumbs{padding-top:22px;margin-bottom:37px;font-size:10px}.page-hero{padding-bottom:40px}.page-hero-grid{grid-template-columns:1fr;gap:37px}.page-hero h1{font-size:49px;line-height:1.07}.page-hero .lead{font-size:16px;margin-top:24px}.page-hero .eyebrow{font-size:10px;margin-bottom:18px}.page-hero .button-row{margin-top:26px}.page-hero .button-row>.button{font-size:12px}.page-hero-picture{height:240px;margin-right:11px}.page-hero-picture:after{right:-9px;bottom:-9px;width:55px;height:55px;border-width:2px}.detail-layout{grid-template-columns:1fr;gap:40px}.detail-blocks{gap:30px}.detail-blocks h2{font-size:24px}.detail-blocks p{font-size:15px}.detail-blocks article{gap:16px}.other-services{padding-block:42px}.other-services .eyebrow{font-size:10px}.other-services h2{font-size:30px}.other-services-links{grid-template-columns:1fr;gap:0;margin-top:24px}.other-services-links>a{font-size:17px;padding-block:20px}.simple-hero{padding-bottom:43px}.simple-hero h1{font-size:44px;line-height:1.1}.simple-hero .eyebrow{font-size:10px;margin-bottom:17px}.simple-hero .lead{font-size:15px;margin-top:24px}.simple-hero .lead br{display:none}.story-grid{grid-template-columns:1fr;gap:30px}.story-grid h2{font-size:34px}.story-grid .eyebrow{font-size:10px}.story-grid .lead{font-size:19px}.story-grid p{font-size:15px}.garage-photo{height:290px}.garage-photo>.container{bottom:30px;font-size:22px}.welcome-grid{grid-template-columns:1fr;gap:28px}.welcome-grid>div{padding-top:25px}.welcome-grid .icon{margin-bottom:16px}.welcome-grid h3{font-size:25px;margin-bottom:12px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-section{padding-top:28px}.contact-method{gap:16px;padding-block:25px}.contact-method strong{font-size:27px}.contact-method>.icon:first-child{width:23px;height:23px}.contact-method>.icon:last-child{width:18px;height:18px}.contact-method span{font-size:12px}.contact-appointment{margin-top:35px}.hours-card{padding:30px}.contact-facade{height:285px;margin-top:40px}.map-link{left:15px;right:15px;bottom:15px;padding:16px;font-size:11px;gap:10px;justify-content:space-between}.map-link .icon{width:17px}.appointment-section{padding-top:35px}.form-section-title h2{font-size:22px}.form-section-title{gap:11px;margin-bottom:25px}.form-section-title>span{width:27px;height:27px}.form-section{margin-bottom:26px;padding-bottom:26px}.form-grid{grid-template-columns:1fr;gap:0}.appointment-form input:not([type=checkbox]),.appointment-form select,.appointment-form textarea{font-size:17px;min-height:52px}.appointment-form>.button{width:100%;font-size:13px;gap:17px}.appointment-form label{font-size:13px}.faq-list summary{font-size:18px;line-height:1.5;padding-block:23px}.faq-list p{font-size:15px}.legal h2{font-size:25px}.offer-empty h2{font-size:35px}.offer-empty p{font-size:15px}.offer-empty .button{font-size:13px}.promotion{padding:28px}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.header-phone{font-size:13px;gap:6px}.header-phone>.icon{width:16px}.brand img{width:95px;height:53px}.header-inner{gap:10px}.hero h1{font-size:37px}.hero .button-row{flex-direction:column;align-items:flex-start}.hero .button-row .button{width:220px;justify-content:space-between}.hero-google{margin-top:27px}.service-grid{gap:12px}.service-picture{height:120px}.service-body{padding:17px 12px}.service-title h3{font-size:18px}.service-body p{font-size:11px;min-height:75px}.service-tags{font-size:8px}.hero-inner{min-height:670px}.contact-method strong{font-size:24px}.simple-hero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.service-card:hover,.button:hover{transform:none}}

.announcement{background:var(--action);color:#fff;text-align:center;font-size:13px;font-weight:550;line-height:1.7;padding-block:12px;white-space:pre-wrap;overflow-wrap:anywhere}.snowfall{position:fixed;inset:0;pointer-events:none;z-index:45;overflow:hidden}.snowfall>span{position:absolute;left:var(--x);top:-32px;width:var(--size);height:var(--size);opacity:1;animation:ag-snow var(--duration) linear infinite;animation-delay:var(--delay);}.snowfall svg{display:block;width:100%;height:100%}.snowfall.is-paused>span{animation-play-state:paused}@keyframes ag-snow{from{transform:translate3d(0,-10px,0) rotate(var(--turn))}to{transform:translate3d(var(--sway),calc(100vh + 45px),0) rotate(calc(var(--turn) + 120deg))}}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-response{font-size:15px;line-height:1.8;margin-top:20px;color:#315b1a}.form-response.is-error{color:#a13317}.appointment-form button:disabled{opacity:.55;cursor:wait}.contact-form-section{background:#eeeee7}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-card{padding:30px;background:#fff;border:1px solid var(--line)}.news-card h2{font-size:26px;line-height:1.2;margin-bottom:20px;overflow-wrap:anywhere}.news-card p{font-size:14px;color:var(--text);margin-bottom:27px;overflow-wrap:anywhere}.news-card .eyebrow{font-size:10px;letter-spacing:.08em}.news-card .underlined{font-size:12px}.news-article p{font-size:17px;line-height:1.9;white-space:normal;overflow-wrap:anywhere}.news-article time{display:block;margin-bottom:30px;color:#6d7c5d;font-size:13px}.news-article .underlined{margin-top:40px}.review-controls{display:flex;gap:10px;align-items:center;margin:-5px 0 27px}.review-controls>span{font-size:10px;color:#aab99a;line-height:1.8;margin-right:auto}.review-controls button{width:35px;height:35px;border:1px solid #ffffff3b;background:transparent;color:#fff;border-radius:3px;flex:none}.review blockquote{overflow-wrap:anywhere}
@media(max-width:1000px){.news-grid{grid-template-columns:1fr 1fr}.news-grid .news-card:last-child{grid-column:1/3}.navigation{gap:19px}}
@media(max-width:700px){.announcement{font-size:12px;padding-block:10px}.snowfall>span:nth-child(n+9){display:none}.news-grid{grid-template-columns:1fr}.news-grid .news-card:last-child{grid-column:auto}.news-card{padding:25px}.news-card h2{font-size:26px}.news-card p{font-size:15px}.review-controls{flex-wrap:wrap}.review-controls>span{flex-basis:100%;font-size:10px}.contact-form-section h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.snowfall{display:none}}

.detail-blocks>article>.detail-icon{width:26px;height:26px;color:var(--accent);flex:none;margin-top:3px}.form-section-title>.icon{width:26px;height:26px;color:var(--accent);flex:none}

/* Révision éditoriale : navigation, photos et lecture des prestations. */
.site-header{background:#222622;border-bottom:2px solid #eb5027}
.header-inner{width:min(1520px,calc(100% - 64px));min-height:98px;gap:22px}
.brand img{width:132px;height:73px}
.navigation{gap:3px;min-width:0}
.navigation a{display:flex;align-items:center;gap:7px;padding:12px 9px;font-size:15px;font-weight:600;border-radius:4px;color:#f1f2ec;line-height:1.4}
.navigation a>.icon{width:17px;height:17px;color:#f67c57}
.navigation a:hover{color:#fff;background:#ffffff10}
.navigation a[aria-current]{color:#fff;background:#b93817}
.navigation a[aria-current]>.icon{color:#fff}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none}
.header-map{display:flex;align-items:center;gap:9px;min-height:46px;padding:8px 11px;border:1px solid #eb502775;border-radius:4px;font-size:13px;font-weight:600;white-space:nowrap;background:#ffffff04}
.header-map>.icon{width:20px;height:20px;color:#ff8c6a}
.header-map small{display:block;margin-top:3px;font-size:11px;font-weight:400;color:#cbd0c4}
.header-map:hover{border-color:#ff8c6a;background:#ffffff0c}
.header-phone{min-height:46px;border:0;border-radius:4px;padding:11px 13px;gap:9px;background:var(--action);font-size:16px;letter-spacing:0;color:#fff}
.header-phone>.icon{width:18px;height:18px;color:#fff}
.header-phone:hover{background:#ad3417}
.hero-inner{min-height:680px;padding-block:48px 44px}
.hero-copy{max-width:680px}
.hero h1{font-size:clamp(49px,calc(5.2vw + 1px),73px)}
.hero .eyebrow{margin-bottom:18px;font-size:12px}
.hero-copy>.hero-intro{font-size:19px;line-height:1.65;color:#e0e4da;margin-top:22px;max-width:620px}
.hero .button-row{margin-top:26px}
.hero-social-proof{display:flex;align-items:center;gap:23px;margin-top:29px;max-width:610px}
.hero-social-proof .hero-google{margin:0;flex:none;gap:11px}
.hero-google small{display:block;color:#d4d8ce;font-size:11px;margin-top:6px}
.hero-review{margin:0;border-left:1px solid #ffffff3b;padding-left:23px;min-width:0;max-width:390px}
.hero-review blockquote{margin:0 0 9px;font-size:17px;line-height:1.55;letter-spacing:-.01em;color:#fff;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.hero-review figcaption{display:flex;flex-wrap:wrap;gap:3px 10px;font-size:12px;line-height:1.6}
.hero-review figcaption strong{font-weight:600;color:#f3c9b9}
.hero-review figcaption span{color:#c6cfc0}
.services-section{padding-block:75px 85px}
.service-picture{height:205px}
.service-title h3{font-size:24px}
.service-body p{font-size:15px;line-height:1.75;min-height:73px}
.service-tags{font-size:12px;line-height:1.7}
.family-grid{grid-template-columns:.95fr 1.05fr;gap:70px}
.family-picture{height:auto;width:100%;max-width:540px;aspect-ratio:1;border-bottom:4px solid var(--action)}
.family-picture>img{height:100%;width:100%;object-fit:cover;object-position:center}
.family-copy .eyebrow{font-size:11px;margin-bottom:18px}
.family-copy h2{font-size:41px;line-height:1.15;margin-bottom:24px}
.family-copy p{font-size:16px;line-height:1.8}
.family-copy .button{margin-top:24px;font-size:14px}
.page-hero .lead{font-size:17px;line-height:1.8;color:#d5ddcc;max-width:620px}
.page-hero-grid{grid-template-columns:1.08fr .92fr;gap:65px}
.page-hero-picture{height:430px}
.service-detail-section{padding-block:80px}
.detail-layout{grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:80px}
.detail-blocks{gap:0}
.detail-blocks article{gap:20px;padding:32px 0;border-bottom:1px solid var(--line);scroll-margin-top:130px}
.detail-blocks article:first-child{padding-top:0}
.detail-blocks article:last-child{border-bottom:0;padding-bottom:0}
.detail-icon-wrap{width:48px;height:48px;display:grid;place-items:center;flex:none;background:#eb502710;border:1px solid #eb50272b;border-radius:8px;color:var(--action)}
.detail-icon-wrap .icon{width:26px;height:26px}
.detail-blocks h2{font-size:26px;line-height:1.25;margin-bottom:16px}
.detail-blocks p{font-size:16px;line-height:1.85;color:#4e554c}
.detail-blocks p+p{margin-top:13px}
.service-visual{position:sticky;top:125px}
.service-visual figure{margin:0;background:#eaece5}
.service-visual img{width:100%;height:470px;object-fit:cover}
.service-visual figcaption{padding:19px 21px;font-size:14px;line-height:1.7;color:#4d5548;border-left:3px solid var(--action)}
.other-services{padding-block:42px}
.other-services h2{font-size:29px}
.other-services-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:24px}
.other-services-links>a{margin:0;padding:19px 17px;border:1px solid #d6d9d0;border-radius:4px;font-size:17px;background:#f9faf5;line-height:1.5}
.other-services-links>a:hover{border-color:var(--action)}
.other-services-links>a[aria-current]{background:#262b24;color:#fff;border-color:#262b24}
.other-services-links>a[aria-current]>.icon:first-child{color:#ff8c6a}
.other-services-links>a>.icon:first-child{width:23px;height:23px}
.season-section{min-height:390px}
.season-inner{padding-block:62px}
.season-copy h2{font-size:41px;line-height:1.15;overflow-wrap:anywhere}
.season-copy p{font-size:16px;max-width:520px}
.footer{padding:30px 0 0;background:#171b17}
.footer-main{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:35px;padding-bottom:22px}
.footer-brand img{width:115px;height:64px;object-fit:contain}
.footer-nav{display:flex;justify-content:center;gap:14px 26px;flex-wrap:wrap}
.footer-nav a{font-size:13px;color:#e3e7dc;line-height:1.8;padding-block:5px}
.social-links{display:flex;align-items:center;gap:10px;margin:0}
.social-links>a{display:grid;place-items:center;min-width:42px;min-height:42px;border:1px solid #ffffff32;border-radius:5px;color:#f3f5ee}
.social-links>a .icon{width:21px;height:21px}
.social-links>a:hover{border-color:var(--accent);background:#ffffff09;color:#ff8c6a}
.footer-details{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 36px;padding-bottom:22px}
.footer-details a{display:flex;align-items:center;gap:8px;font-size:13px;color:#c7cec0;line-height:1.7}
.footer-details .icon{width:16px;height:16px;color:#f28561}
.footer-bottom{padding-block:16px;font-size:11px;line-height:1.6;color:#aab69e}
.network-link{display:inline-flex;align-items:center;gap:10px;margin-top:30px;font-size:14px;color:#48533f;line-height:1.7;border-bottom:1px solid var(--line);padding-bottom:9px}
.network-link .icon{width:18px;height:18px;color:var(--action)}
.story-grid{grid-template-columns:.85fr 1.15fr;gap:85px}
.story-grid h2{font-size:40px;line-height:1.17}
.story-grid p{font-size:16px;line-height:1.85}
.story-grid .lead{font-size:21px;line-height:1.65}
.vehicle-fields{margin:28px 0;padding:22px;border:1px solid #d0d5ca;min-width:0}
.vehicle-fields legend{font-weight:650;font-size:17px;padding:0 7px}
.vehicle-fields legend span{font-size:14px;font-weight:400}
.vehicle-identification{grid-template-columns:1fr 1fr .65fr}
.faq-section{padding-top:65px}
.faq-tools label{display:block;font-size:16px;font-weight:650;margin-bottom:13px}
.faq-search-wrap{position:relative}
.faq-search-wrap>.icon{position:absolute;left:18px;top:17px;color:var(--action);width:22px;height:22px}
.faq-search-wrap input{width:100%;min-height:58px;padding:14px 20px 14px 53px;border:1px solid #bdc7b3;border-radius:4px;background:#fff;color:var(--ink);font-size:17px}
.faq-topics{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 48px}
.faq-topics a{display:flex;align-items:center;gap:8px;border:1px solid #d6dbcf;background:#fdfdf9;border-radius:4px;padding:11px 13px;font-size:13px;line-height:1.5}
.faq-topics a:hover{border-color:var(--action)}
.faq-topics .icon{color:var(--action);width:18px;height:18px}
.faq-group{margin-bottom:48px;scroll-margin-top:130px}
.faq-group h2{display:flex;align-items:center;gap:14px;font-size:28px;margin-bottom:16px;line-height:1.3}
.faq-group h2 .icon{width:28px;height:28px;color:var(--action)}
.faq-list summary{font-size:18px;line-height:1.55;padding-block:20px;font-weight:600;gap:20px}
.faq-list p{font-size:16px;line-height:1.85;padding:0 30px 24px 0;max-width:none}
.faq-list details[open]{background:#eeeee7;padding-inline:18px}
.faq-contact{padding:30px;background:#e9ece2;border-left:3px solid var(--action)}
.faq-contact h2{font-size:28px}
.faq-contact p{font-size:16px;margin:16px 0 23px}
@media(max-width:1320px){
 .header-inner{gap:20px;min-height:94px}
 .navigation{position:absolute;left:0;right:0;top:100%;display:none;padding:22px max(32px,calc((100vw - 1280px)/2));background:#222622;border-top:1px solid #ffffff21;box-shadow:0 14px 24px #0004}
 .navigation.is-open{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
 .navigation a{font-size:15px;padding:17px 14px;white-space:normal;background:#ffffff08;border:1px solid #ffffff14;min-height:56px}
 .navigation a>.icon{width:21px;height:21px;margin-right:3px}
 .header-actions{margin-left:auto}
 .menu-toggle{display:grid;gap:5px;min-height:46px;min-width:46px;align-content:center;order:3;padding:12px;border:1px solid #ffffff40;border-radius:4px;background:#ffffff04;margin-left:0}
 .menu-toggle span{display:block;width:20px;height:1px;background:#fff}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6px) rotate(-45deg)}
 .detail-layout{gap:50px}
}
@media(max-width:1000px){
 .header-inner{width:calc(100% - 48px)}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-body p{min-height:0}
 .service-picture{height:225px}
 .family-grid{gap:40px}
 .family-copy h2{font-size:34px}
 .family-copy p{font-size:15px}
 .page-hero-grid{gap:36px}
 .page-hero h1{font-size:48px}
 .page-hero .lead{font-size:15px}
 .page-hero-picture{height:380px}
 .detail-layout{grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr);gap:38px}
 .detail-blocks h2{font-size:24px}
 .detail-blocks p{font-size:15px}
 .service-visual img{height:390px}
 .other-services-links{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-main{gap:25px}
 .footer-nav{gap:10px 19px}
 .footer-nav a{font-size:12px}
 .story-grid{gap:50px}
 .story-grid h2{font-size:34px}
}
@media(max-width:800px){
 .detail-layout{display:block}
 .service-visual{display:none}
 .detail-blocks article{gap:17px}
 .footer-main{grid-template-columns:110px 1fr;gap:20px}
 .footer-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start}
 .social-links{justify-self:end}
 .footer-details{justify-content:flex-start;gap:12px 24px}
}
@media(max-width:700px){
 html{scroll-padding-top:90px}
 .header-inner{width:calc(100% - 32px);gap:8px;min-height:81px}
 .brand img{width:96px;height:60px}
 .header-actions{gap:7px}
 .header-map{padding:9px;min-width:40px;min-height:42px}
 .header-map span{display:none}
 .header-map>.icon{width:20px;height:20px}
 .header-phone{font-size:14px;padding:10px 9px;min-height:42px;gap:6px}
 .header-phone>.icon{width:16px;height:16px}
 .menu-toggle{min-width:40px;min-height:42px;padding:10px;margin:0}
 .navigation{padding:16px;background:#202520}
 .navigation.is-open{grid-template-columns:1fr 1fr;gap:9px}
 .navigation a{font-size:15px;padding:14px 11px;min-height:58px;gap:8px}
 .navigation a>.icon{width:21px;height:21px}
 .hero-inner{min-height:0;padding-block:44px 40px}
 .hero h1{font-size:clamp(43px,calc(10.5vw + 1px),59px);line-height:1.06}
 .hero .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:20px}
 .hero-copy>.hero-intro{font-size:16px;line-height:1.75;margin-top:23px;max-width:100%}
 .hero .button-row{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;gap:10px}
 .hero .button{font-size:12px;padding:12px 11px;min-height:52px;gap:9px}
 .hero .button .icon{width:16px;height:16px}
 .hero-social-proof{gap:13px;margin-top:28px;align-items:center}
 .hero-social-proof .hero-google{gap:9px}
 .hero-google .google-letter{width:30px;height:30px;font-size:21px}
 .hero-google strong{font-size:17px}
 .hero-google small{font-size:10px}
 .hero-review{padding-left:13px;flex:1}
 .hero-review blockquote{font-size:15px;line-height:1.55;margin-bottom:7px}
 .hero-review figcaption{font-size:11px;line-height:1.45}
 .hero-review figcaption span{font-size:10px}
 .services-section{padding-block:52px}
 .section-heading .underlined{margin-top:18px;font-size:13px}
 .service-grid{grid-template-columns:1fr;gap:22px}
 .service-picture{height:220px}
 .service-body{padding:25px}
 .service-title{flex-wrap:nowrap}
 .service-title h3{font-size:26px;flex-basis:auto}
 .service-title>.icon:first-child{width:25px;height:25px}
 .service-title>.icon:last-child{display:block}
 .service-body p{font-size:15px;min-height:0}
 .service-tags{font-size:12px;min-height:0}
 .family-grid{gap:30px}
 .family-picture{height:auto;aspect-ratio:1;max-width:100%}
 .family-copy h2{font-size:35px}
 .family-copy p{font-size:16px}
 .family-copy .eyebrow{font-size:10px}
 .page-hero{padding-bottom:40px}
 .page-hero-grid{grid-template-columns:1fr;gap:32px}
 .page-hero .lead{font-size:16px;line-height:1.85}
 .page-hero h1{font-size:46px}
 .page-hero-picture{height:280px;margin-right:9px}
 .page-hero-picture img[data-image-slot="garage-hero"]{object-position:50% 44%}
 .service-detail-section{padding-block:48px}
 .detail-blocks article{padding-block:27px;gap:13px;scroll-margin-top:100px}
 .detail-icon-wrap{width:39px;height:39px;border-radius:6px}
 .detail-icon-wrap .icon{width:23px;height:23px}
 .detail-blocks h2{font-size:23px;line-height:1.3;margin-bottom:15px}
 .detail-blocks p{font-size:16px;line-height:1.85}
 .other-services{padding-block:35px}
 .other-services h2{font-size:27px}
 .other-services-links{gap:10px;margin-top:22px}
 .other-services-links>a{font-size:15px;padding:15px 12px;gap:9px;min-height:62px}
 .other-services-links>a>.icon:first-child{width:20px;height:20px}
 .other-services-links>a>.icon:last-child{display:none}
 .season-copy{width:100%}
 .season-copy h2{font-size:34px}
 .season-copy p{font-size:16px}
 .season-inner{padding-block:45px}
 .season-picture{height:200px}
 .footer{padding:25px 0 57px}
 .footer-main{padding-bottom:20px}
 .footer-brand img{width:100px;height:58px}
 .footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 15px;width:100%}
 .footer-nav a{font-size:13px;padding-block:9px}
 .footer-details{display:grid;gap:13px;padding-bottom:23px}
 .footer-details a{font-size:13px}
 .footer-bottom{font-size:11px;padding-block:18px}
 .footer-bottom>div{margin-top:12px;gap:18px}
 .story-grid{gap:26px}
 .story-grid h2{font-size:33px}
 .story-grid p{font-size:16px}
 .story-grid .lead{font-size:20px}
 .network-link{margin-top:22px;font-size:13px}
 .vehicle-fields{padding:17px;margin-block:25px}
 .vehicle-identification{grid-template-columns:1fr}
 .faq-section{padding-top:40px}
 .faq-topics{gap:8px;margin:22px 0 35px}
 .faq-topics a{font-size:12px;padding:10px}
 .faq-group{margin-bottom:35px;scroll-margin-top:100px}
 .faq-group h2{font-size:25px;gap:10px}
 .faq-group h2 .icon{width:24px;height:24px}
 .faq-list summary{font-size:17px;padding-block:19px}
 .faq-list p{font-size:16px;padding-right:7px}
 .faq-list details[open]{padding-inline:13px}
 .faq-contact{padding:24px}
 .faq-contact h2{font-size:26px}
}
@media(max-width:380px){
 .header-inner{width:calc(100% - 24px);gap:6px}
 .brand img{width:81px;height:55px}
 .header-actions{gap:5px}
 .header-phone{font-size:13px;padding-inline:8px}
 .header-phone>.icon{display:none}
 .header-map{min-width:36px;padding:8px}
 .menu-toggle{min-width:36px;padding:8px}
 .hero-social-proof{gap:10px}
 .hero-review{padding-left:10px}
 .hero-review blockquote{font-size:14px}
}

.hero-review{overflow-wrap:anywhere}@media(max-width:700px){.hero .button{font-size:13px}.garage-intro h1{font-size:41px}.garage-intro .page-hero-picture{order:-1;height:320px;object-position:center}}

/* Appointment choices keep the form short for vehicles already known at the garage. */
.booking-form fieldset{border:0;padding:0;min-width:0;margin-inline:0}
.booking-form legend.form-section-title{width:100%;font-size:26px;font-weight:650;letter-spacing:-.03em;padding:0;margin-bottom:26px}
.booking-form .form-section-title>.icon{width:25px;height:25px;color:var(--orange)}
.booking-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.booking-choices label,.booking-slots label{position:relative;cursor:pointer;margin:0}
.booking-choices input,.booking-slots input{position:absolute;opacity:0;width:1px;height:1px;min-height:0!important}
.booking-choices span,.booking-slots span{display:flex;align-items:center;justify-content:center;min-height:53px;padding:14px;border:1px solid #c4c9be;background:#fff;color:#252925;font-weight:600;border-radius:3px}
.booking-choices input:checked+span,.booking-slots input:checked+span{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action);background:#fff0e9;color:#9e3214}
.booking-choices input:focus-visible+span,.booking-slots input:focus-visible+span{outline:3px solid #3468a3;outline-offset:3px}
.booking-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.booking-form .underlined{background:none;border:0;border-bottom:1px solid currentColor;font:inherit;cursor:pointer;padding:4px 0;color:#8f321d;font-size:14px}
.booking-form .button:disabled{opacity:.5;cursor:not-allowed}
.booking-form #plate{text-transform:uppercase}
#appointment-status:not(:empty){padding:22px;background:#e3e9df;border-left:3px solid #587b49;line-height:1.8;margin-top:24px;overflow-wrap:anywhere}
#appointment-status.is-error{background:#fff0e8;border-color:#bc451f}
@media(max-width:700px){.booking-form legend.form-section-title{font-size:23px}.booking-choices{gap:9px}.booking-choices span{font-size:13px;padding:13px 8px}.booking-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}
.booking-form .form-section-title>.icon{color:var(--accent)}
.booking-form legend.form-section-title>span{display:block;flex:1;width:auto;height:auto;border:0;border-radius:0;font:inherit;color:inherit;line-height:1.2}
.booking-form fieldset.form-section{padding-bottom:29px;margin-bottom:29px;border-bottom:1px solid var(--line)}

.announcement{font-family:"Arial Black",Arial,sans-serif;font-size:17px;font-weight:900;line-height:1.6}@media(max-width:700px){.announcement{font-size:15px}}

/* Footer complet et rythme vertical */
.footer-main{align-items:start;gap:28px;padding-bottom:26px}.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:initial;align-items:start;gap:24px}.footer-link-group{display:grid;align-content:start;gap:3px}.footer-link-group h2{font-size:15px;letter-spacing:0;line-height:1.5;color:#fff;margin-bottom:9px}.footer-link-group a{padding-block:5px}.section{padding-block:clamp(40px,5vw,72px)}.section-heading{margin-bottom:30px}.family-grid{gap:clamp(25px,4vw,55px)}.reviews-section{padding-block:56px}.season-inner{padding-block:44px}.simple-hero{padding-block:44px}.section+.section{padding-top:40px}
@media(max-width:900px){.footer-nav{grid-column:1/-1;grid-row:2;gap:20px}.page-hero-picture{min-height:0}.family-grid,.detail-layout,.story-grid{gap:28px}}
@media(max-width:700px){.section,.services-section,.reviews-section,.service-detail-section{padding-block:36px}.section+.section{padding-top:28px}.section-heading{margin-bottom:24px}.simple-hero{padding-block:30px}.page-hero{padding-block:28px}.page-hero-grid{gap:24px}.page-hero-picture{height:auto;aspect-ratio:16/10;min-height:0}.page-hero-picture img{height:100%;width:100%;object-fit:cover}.page-hero-picture img[data-image-slot="garage-hero"]{object-position:50% 40%}.family-grid{gap:24px}.family-copy p{margin-top:17px}.detail-blocks article{padding-block:22px}.other-services{padding-block:28px}.other-services-links{gap:9px;margin-top:18px}.season-section{min-height:0}.season-inner{min-height:0;padding-block:30px}.season-picture{height:175px;min-height:0}.contact-grid{gap:26px}.contact-section,.appointment-section{padding-top:24px}.contact-facade{margin-top:24px;height:240px}.hours-card{padding:24px}.footer{padding-top:28px}.footer-main{row-gap:22px;padding-bottom:22px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.footer-link-group:last-child{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.footer-link-group:last-child h2{grid-column:1/-1}.footer-link-group h2{font-size:15px;margin-bottom:5px}.footer-link-group a{font-size:14px;padding-block:7px;min-height:35px}.footer-details{gap:10px;padding-bottom:18px}.footer-bottom{padding-block:14px}.form-section{margin-bottom:22px;padding-bottom:22px}.faq-list summary{padding-block:18px}.faq-section{padding-top:32px}}

.leasing-first-visit{border:2px solid #c7401d;background:#fff0e8;color:#62270f;padding:26px;margin:20px 0 30px;scroll-margin-top:120px}.leasing-first-visit strong{display:block;font-size:23px;line-height:1.35}.leasing-first-visit p{font-size:17px;line-height:1.7;margin:14px 0 20px}.leasing-first-visit .actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}@media(max-width:700px){.leasing-first-visit{padding:22px 18px}.leasing-first-visit strong{font-size:21px}.leasing-first-visit .button{width:100%}}

.booking-following{border:0;padding:0;margin:0;min-width:0}.header-actions{display:grid;grid-template-columns:auto auto;gap:6px 9px;padding-block:9px}.header-booking{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--action);border:1px solid var(--action);border-radius:4px;min-height:44px;padding:10px 13px;font-size:14px;font-weight:700;white-space:nowrap}.header-booking .icon{width:17px;height:17px}.header-booking:hover{background:#a93113}.header-phone{background:transparent;border:1px solid #ffffff65;font-size:15px}.header-phone:hover{background:#ffffff12}.header-map{grid-column:1/-1;justify-content:flex-end;min-height:20px;padding:0;border:0;background:transparent;font-size:11px;font-weight:400;color:#d5d9d0;gap:5px}.header-map .icon{width:13px;height:13px}.header-map span{display:inline}.header-map:hover{background:transparent;text-decoration:underline}@media(max-width:700px){html{scroll-padding-top:148px}.header-inner{display:grid;grid-template-columns:1fr 42px;gap:0 12px;padding-block:5px;min-height:0}.brand{grid-column:1;grid-row:1;padding:0}.brand img{width:92px;height:51px}.menu-toggle{grid-column:2;grid-row:1;justify-self:end}.header-actions{grid-column:1/-1;grid-row:2;margin:0;grid-template-columns:1fr 1fr;gap:5px 10px;padding:3px 0 4px}.header-phone,.header-booking{justify-content:center;min-height:38px;padding:7px 10px;font-size:14px}.header-map{grid-column:1/-1;justify-content:center;min-height:18px;padding:0;font-size:11px}.header-map span{display:inline}.header-map .icon{width:12px;height:12px}.navigation{top:100%}.leasing-first-visit .underlined{font-size:15px;line-height:1.6}}

/* Mobile : colonnes explicites et contenus intrinsèques contenus dans leur grille. */
.family-grid>*,.story-grid>*,.page-hero-grid>*,.footer-main>*,.footer-nav>*{min-width:0;max-width:100%}.page-hero-grid .lead{overflow-wrap:anywhere}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-link-group:last-child{grid-column:auto;grid-template-columns:minmax(0,1fr)}.footer-link-group:last-child h2{grid-column:auto}
@media(max-width:800px){
 .family-grid,.story-grid,.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:24px}
 .family-picture{width:100%;max-width:440px;height:auto;aspect-ratio:auto;margin-inline:auto;justify-self:center;align-self:start}
 .family-picture>img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;object-position:center}
 .family-copy,.story-grid>div,.page-hero-grid>div{width:100%;min-width:0;max-width:100%}
 .family-copy h2{font-size:clamp(30px,calc(7.5vw + 1px),37px);line-height:1.15}.family-copy p{font-size:17px;line-height:1.75}
 .story-grid{gap:22px}.story-grid h2{font-size:clamp(29px,calc(7.3vw + 1px),35px);line-height:1.2;max-width:100%}.story-grid p,.story-grid .lead{font-size:17px;line-height:1.75;overflow-wrap:anywhere}.story-grid .lead{margin-bottom:18px}
 .page-hero-grid{gap:24px}.page-hero-grid .lead{width:auto;max-width:100%;font-size:17px;line-height:1.75;white-space:normal}.garage-intro .page-hero-grid>div{min-width:0;max-width:100%}.garage-intro .lead{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .page-hero-picture{width:100%;min-width:0;max-width:100%;height:auto;aspect-ratio:16/10;margin-right:0}.page-hero-picture img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover}.garage-intro .page-hero-picture{height:auto;aspect-ratio:1;order:0}.garage-intro .page-hero-picture img{object-position:center}
 .footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px 18px}.footer-brand{grid-column:1;grid-row:1}.footer-main>.social-links{grid-column:2;grid-row:1;align-self:center;justify-self:end}.footer-nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start;width:100%}.footer-link-group,.footer-link-group:last-child{display:grid;grid-column:auto;grid-template-columns:minmax(0,1fr);align-content:start;gap:3px}.footer-link-group h2,.footer-link-group:last-child h2{grid-column:auto;font-size:15px;margin-bottom:7px}.footer-link-group a{font-size:14px;line-height:1.6;padding-block:7px;min-height:35px}.footer-details{display:grid;justify-content:start;gap:11px;border-top:1px solid #ffffff1f;padding-block:20px}.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-bottom>div{margin:0;display:flex;flex-wrap:wrap;gap:16px}
}

/* Mobile : actions fixes en bas, adresse seule dans l’en-tête. */
@media(max-width:700px){
 html{scroll-padding-top:108px;scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
 body{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}
 .header-actions>.header-phone,.header-actions>.header-booking{display:none}
 .header-actions{grid-template-columns:minmax(0,1fr);gap:0;padding:3px 0 4px}
 .header-map{justify-content:center;font-size:12px;min-height:22px;line-height:1.5}
 .mobile-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);position:fixed;inset:auto 0 0;z-index:60;background:var(--ink);border-top:1px solid #ffffff25;padding-bottom:env(safe-area-inset-bottom,0px)}
 .mobile-contact>a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:57px;padding:10px 6px;color:#fff;font-size:14px;font-weight:650;line-height:1.35}
 .mobile-contact>a:last-child{background:var(--action)}
 .mobile-contact .icon{display:block;width:18px;height:18px}
 .mobile-contact>a:focus-visible{outline:3px solid #fff;outline-offset:-5px}
 .footer{padding-bottom:20px}
}

.booking-form .vehicle-identification{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(80px,.6fr)}.booking-form .vehicle-identification>div{min-width:0}@media(max-width:700px){.booking-form .vehicle-identification{grid-template-columns:minmax(0,1fr)}}

/* Itinéraire lisible dans l’en-tête. */
.header-actions .header-map{font-size:14px;line-height:1.5;font-weight:500}.header-actions .header-map .icon{width:16px;height:16px}@media(max-width:700px){.header-actions .header-map{font-size:13px}}

/* Publications illustrées et mise en avant d’une publication unique. */
.news-card.has-photo{padding:0;overflow:hidden}.news-card-copy{padding:30px}.news-card:not(.has-photo) .news-card-copy{padding:0}.news-picture{display:block;overflow:hidden}.news-photo-card{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.news-grid.news-grid-single{grid-template-columns:minmax(0,1fr)}.news-grid-single .news-card:last-child{grid-column:auto}.news-card-featured{padding:42px}.news-card-featured.has-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}.news-card-featured .news-card-copy{padding:42px;align-self:center}.news-card-featured:not(.has-photo) .news-card-copy{max-width:850px}.news-card-featured h2{font-size:clamp(29px,calc(3vw + 1px),43px);line-height:1.15;margin-top:16px}.news-card-featured p{font-size:17px}.news-card-featured .underlined{font-size:15px}.news-card-featured .news-picture{min-height:300px}.news-card-featured .news-photo-card{height:100%;min-height:300px;object-fit:cover}.news-hero-picture{max-width:1000px;margin:32px auto 0}.news-photo-page{display:block;width:100%;height:auto;object-fit:contain;border-radius:5px}.leasing-service-visual{align-self:start}.leasing-service-visual figure{margin:0;background:#f5f5f2}.leasing-service-visual img[data-image-slot="leasing-detail"]{display:block;width:100%;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:4/3;object-fit:contain!important;object-position:center!important}@media(max-width:700px){.news-card-featured.has-photo{grid-template-columns:1fr}.news-card-featured{padding:26px}.news-card-copy,.news-card-featured .news-card-copy{padding:26px}.news-card-featured .news-picture,.news-card-featured .news-photo-card{min-height:0}.news-card-featured .news-photo-card{height:auto;aspect-ratio:16/9}.news-card-featured p{font-size:16px}.news-hero-picture{margin-top:24px}}

/* Même départ de titre sous la navigation sur toutes les pages intérieures. */
main>.page-hero,main>.simple-hero{padding-top:56px}main>.page-hero>.container>.page-hero-grid{align-items:start}main>.page-hero .page-hero-grid h1,main>.simple-hero h1{margin-top:0;font-size:clamp(44px,calc(4.8vw + 1px),69px);line-height:1.08;min-height:2.16em}main>.page-hero .page-hero-picture{margin-top:0}main>.simple-hero .breadcrumbs{padding-top:0}@media(max-width:700px){main>.page-hero,main>.simple-hero{padding-top:32px}main>.page-hero .page-hero-grid h1,main>.simple-hero h1{font-size:clamp(38px,calc(8.5vw + 1px),53px);min-height:2.16em}}

.news-article-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 100% 0%,#c7401d26,transparent 60%),#20251f;border-bottom:4px solid #c7401d}.news-article-hero:before{content:attr(data-category);position:absolute;z-index:-1;right:-.04em;top:60px;font-size:clamp(90px,16vw,240px);font-weight:900;letter-spacing:-.07em;line-height:1;color:#ffffff07;white-space:nowrap;pointer-events:none}.news-article-hero>.container{position:relative}.news-article-hero .breadcrumbs{margin-bottom:28px}.news-article-hero .news-category{font-size:13px;font-weight:750;letter-spacing:.15em;color:#ff805a;margin:0 0 20px}.news-category span{letter-spacing:.03em;color:#bec5b9;font-weight:500}.news-article-hero h1{max-width:1000px;min-height:0!important;font-size:clamp(33px,calc(4.5vw + 1px),61px)!important}.news-article-hero .lead{max-width:800px}.news-article-hero .news-hero-picture{background:#f4f4ef;padding:10px;border-radius:6px;box-shadow:0 18px 45px #0003}@media(max-width:700px){.news-article-hero:before{top:46px;font-size:25vw}.news-article-hero .news-hero-picture{padding:5px}}

/* Photographies réelles : conserver le cadrage complet, y compris les logos. */
.workshop-photo{margin:28px 0 0;max-width:680px}.workshop-photo img,.workshop-visual .workshop-photo img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:4px}.workshop-photo figcaption{font-size:14px;line-height:1.5;color:var(--muted,#687066);padding-top:10px}.workshop-visual .workshop-photo{margin:0}.garage-photo-section .workshop-photo{margin:0 auto;max-width:760px}@media(max-width:700px){.workshop-photo{margin-top:22px}.workshop-photo figcaption{font-size:13px}.workshop-visual{display:block!important}.garage-photo-section{padding-top:0}}

/* Galerie du garage : petites photos, cadrage intégral. */
.garage-photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1040px;margin-inline:auto;align-items:start}.garage-photo-gallery .workshop-photo{margin:0!important;width:100%;max-width:none}.garage-photo-gallery .workshop-photo img{width:100%;height:260px!important;object-fit:contain!important;background:#e8e8e2;border-radius:4px}.garage-photo-gallery figcaption{font-size:14px}@media(max-width:700px){.garage-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.garage-photo-gallery .workshop-photo img{height:180px!important}.garage-photo-gallery figcaption{font-size:13px}}@media(max-width:380px){.garage-photo-gallery .workshop-photo img{height:150px!important}}

/* Légendes des photographies : même traitement sur toutes les pages. */
.service-visual figcaption,.workshop-photo figcaption{padding:19px 21px;font-size:14px;line-height:1.7;color:#4d5548;border-left:3px solid var(--action);background:#f1f1eb}

.company-toggle{margin:0 0 22px}.appointment-form .company-details{display:block;border:0;padding:0;margin:0 0 24px;min-width:0;width:100%}.company-details[hidden]{display:none!important}.company-details-title{float:none;display:block;width:100%;padding:0;margin:0 0 16px;font-size:15px;font-weight:650;line-height:1.5}.company-details>.form-grid{clear:both;align-items:start}.company-details>.form-grid>div{min-width:0}.company-details .field-hint{margin-top:-9px}

.appointment-form .booking-message-label{margin-top:22px}
