/* The original, refined (October 2026): the original site's black/off-white rhythm, Caslon and Lato,
   centred hero and slanted section edges, with the draft's structure and accessibility fixes.
   Earlier explorations keep their styles in atelier.css. */
@font-face{font-family:'Libre Caslon Display';src:url(/fonts/libre-caslon-display-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Libre Caslon Text';src:url(/fonts/libre-caslon-text-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Libre Caslon Text';src:url(/fonts/libre-caslon-text-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Libre Caslon Text';src:url(/fonts/libre-caslon-text-latin-700-normal.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Lato;src:url(/fonts/lato-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Lato;src:url(/fonts/lato-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Lato;src:url(/fonts/lato-latin-700-normal.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}

:root{
  --black:#000;--night:#0f0f0f;--paper:#fafafa;--ink:#111;--silver:#dcdcdc;
  --display:'Libre Caslon Display','Libre Caslon Text',Georgia,serif;--serif:'Libre Caslon Text',Georgia,serif;--sans:Lato,'Helvetica Neue',Arial,sans-serif;
  --text:var(--ink);--muted:#4a4a4a;--line:#d6d6d6;--btn-bg:#111;--btn-fg:#fff;--btn-line:#111;
  --slant:3.2vw;--gutter:clamp(20px,5vw,72px);
  color-scheme:light;font:400 17px/1.7 var(--sans);letter-spacing:.02em;color:var(--text);background:var(--paper)
}
.dark,.black,.hero-original,.site-header,.footer,.page-heading,.breadcrumb{--text:#f5f5f5;--muted:#c9c9c9;--line:#3d3d3d;--btn-bg:var(--silver);--btn-fg:#000;--btn-line:var(--silver);color:var(--text)}
.dark{background:var(--night)}.black{background:var(--black)}.light{background:var(--paper);color:var(--ink)}

*{box-sizing:border-box}html,body{overflow-x:clip}body{margin:0;background:var(--paper)}img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:400;letter-spacing:0}p{line-height:1.7}
h1{font:400 clamp(2.9rem,5.6vw,4.6rem)/1.08 var(--display)}
h2{font:400 clamp(2.1rem,3.6vw,2.9rem)/1.15 var(--display)}
h3{font:400 1.55rem/1.3 var(--serif)}h4{font:700 1rem/1.4 var(--sans)}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}
button,input,select,textarea{font:inherit;letter-spacing:inherit}button{cursor:pointer}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}
[hidden]{display:none!important}section[id]{scroll-margin-top:24px}
.wrap{width:min(1180px,calc(100% - 2*var(--gutter)));margin-inline:auto}
.skip{position:absolute;top:-100px;left:20px;z-index:20;padding:14px 18px;background:#fff;color:#000}.skip:focus{top:12px}
.reading-width{max-width:68ch;margin-top:24px}.eyebrow{font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.intro{font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.note{font-size:.9rem;color:var(--muted);margin-top:16px}.text-link{display:inline-block;margin-top:18px}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}

/* Full-bleed dark bands on elements that live inside .wrap; only the pseudo-element paints. */
.site-header,.breadcrumb,.page-heading{position:relative;isolation:isolate}
.site-header::before,.breadcrumb::before,.page-heading::before{content:'';position:absolute;inset:0 -100vmax;background:var(--night);z-index:-1}

/* Slanted edges, as on the original site: higher on the right. */
.slant-top{position:relative;z-index:1;clip-path:polygon(0 var(--slant),100% 0,100% 100%,0 100%);margin-top:calc(-1*var(--slant));padding-top:calc(var(--pad,96px) + var(--slant))}
.slant-bottom{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--slant)),0 100%);padding-bottom:calc(var(--pad,96px) + var(--slant))}

/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 26px;border:1px solid var(--btn-line);border-radius:4px;background:var(--btn-bg);color:var(--btn-fg);font:700 .9rem/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
.button:hover{filter:brightness(1.12)}.button.secondary{background:transparent;color:var(--text);border-color:var(--text)}.button.secondary:hover{background:var(--text);color:var(--paper);filter:none}
.dark .button.secondary:hover,.black .button.secondary:hover,.page-heading .button.secondary:hover{color:#000}

/* Draft bar (preview only) */
.draft-bar{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;justify-content:center;padding:8px 20px;background:#2b2b2b;color:#e6e6e6;font-size:.82rem;line-height:1.4}.draft-bar a{text-decoration:none;border-bottom:1px solid transparent}.draft-bar a[aria-current]{border-color:currentColor}.draft-bar strong{font-weight:700}

/* Header */
.site-header{z-index:30;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:84px}
.logo{width:200px}.nav{display:flex;align-items:center;gap:28px}.nav>a{font-size:.92rem;text-decoration:none}.nav>a:not(.button):hover{text-decoration:underline}
.nav .button{min-height:42px;padding:10px 18px;font-size:.8rem}
.menu{display:none;background:transparent;color:inherit;border:1px solid #6b6b6b;border-radius:4px;padding:9px 14px}

/* Generic sections */
.section{--pad:96px;padding:var(--pad) 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-head>p{max-width:42ch;color:var(--muted)}
.centered{text-align:center}.centered .section-head{display:block}.centered .section-head p{margin:16px auto 0}

/* Homepage hero */
.hero-original{position:relative;z-index:2;isolation:isolate;color:#fff;text-align:center;background:#111 url(/assets/tools.webp) center/cover no-repeat;--pad:0}
.hero-original::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.66),rgba(0,0,0,.74));z-index:-1}
.hero-inner{padding:84px 0 calc(110px + var(--slant))}
.hero-original+.section{margin-top:calc(-1*var(--slant));padding-top:calc(var(--pad) + var(--slant))}
.lockup{font-family:var(--display);line-height:1.04}.lockup-name{display:block;font-size:clamp(3rem,6.4vw,5rem);letter-spacing:.02em}.lockup-name b{font-family:var(--serif);font-weight:700}.lockup-line{display:block;font-size:clamp(2.2rem,4.6vw,3.6rem);margin-top:4px}
.service-icons{width:min(480px,86%);margin:30px auto 0}
.hero-shops{display:flex;justify-content:center;gap:clamp(28px,8vw,140px);margin-top:36px;flex-wrap:wrap}
.hero-shop{font-weight:700;line-height:1.6}.hero-shop a{text-decoration:none}.hero-shop a:hover{text-decoration:underline}
.pill{display:inline-block;padding:3px 16px;margin-bottom:10px;border:1.5px solid #fff;border-radius:999px;font-size:.92rem;text-decoration:none}a.pill:hover{background:#fff;color:#000;text-decoration:none}
.hero-email{margin-top:26px;font-weight:700}.tagline{margin-top:30px;font:italic 400 clamp(1.4rem,2.4vw,1.9rem)/1.3 var(--serif)}
.hero-original .actions{justify-content:center}

/* Homepage intro */
.home-intro{text-align:center}.home-intro p{max-width:62ch;margin:0 auto;font-size:1.12rem;color:var(--text)}.home-intro p+p{margin-top:18px}
.home-intro .signature{font:italic 400 1.45rem/1.4 var(--serif);margin-top:26px}

/* Link grid (What we alter / How we alter them) */
.home-directory{display:grid;gap:70px}.home-directory h2{text-align:center;margin-bottom:34px}
.home-directory ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 48px}
.home-directory a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:10px 6px;text-align:center;font-size:.95rem;line-height:1.35;text-decoration:none;border-bottom:1.5px solid var(--silver)}
.home-directory a:hover{background:var(--silver);color:#000;border-radius:4px}
.home-directory .feature a{background:var(--silver);color:#000;border-radius:4px;font-weight:700}
.directory-help{text-align:center;color:var(--muted);margin:46px auto 0;max-width:60ch}

/* How it works */
.home-processes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px}
.home-processes h3{font:400 2rem/1.15 var(--display)}.home-processes h3 b{display:block;font-family:var(--serif);font-weight:700}
.home-processes .lede{margin-top:16px;font-weight:700}
.home-processes ol{padding-left:22px;margin:20px 0 0}.home-processes li{margin-bottom:16px;padding-left:4px}.home-processes li strong{display:block}.home-processes li p{color:var(--muted);font-size:.95rem}
.home-express p+p{margin-top:14px}.home-call-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:20px;font-weight:700}

/* Promise */
.promise{background:#111 url(/assets/sewing-banner.jpg) center/cover;position:relative;isolation:isolate}
.promise::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.78);z-index:-1}
.promise-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.promise-grid img{width:100%;aspect-ratio:3/2;object-fit:cover}
.promise h2{font:italic 400 clamp(2.4rem,4vw,3.2rem)/1.1 var(--serif);padding-bottom:16px;border-bottom:2px solid #fff;display:inline-block}
.promise h3{margin-top:24px;font-weight:700}.promise p{margin-top:16px}.promise .fine-print{font-size:.9rem;color:var(--muted)}

/* Why alterations matter */
.home-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 48px;margin-top:10px}
.home-benefits article{border-top:1px solid var(--line);padding-top:24px}.home-benefits h3{font-size:1.45rem}.home-benefits p{margin-top:12px;color:var(--muted)}

/* Why choose / DIY */
.home-expertise{display:grid;grid-template-columns:1fr 1.25fr;gap:64px}.home-expertise>div>p{margin-top:20px;color:var(--muted)}
.home-expertise-copy h3{margin-bottom:12px}.home-expertise-copy p+h3{margin-top:30px}.home-expertise-copy p+p{margin-top:14px}
.diy{text-align:center}.diy h2 em{font-family:var(--serif)}.diy p{max-width:66ch;margin:20px auto 0;color:var(--muted)}.diy .actions{justify-content:center}

/* Testimonials */
.home-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:48px;text-align:center}
.home-quotes figure{margin:0}
/* Customer photo reviews: a grid on wide screens, a swipeable row on phones. */
.photo-reviews{list-style:none;margin:0 0 64px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;text-align:left}
.photo-reviews figure{margin:0}.photo-reviews img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
.photo-review-text{margin:18px 0 0;font:400 1.08rem/1.55 var(--serif);white-space:pre-line}
.photo-reviews figcaption{margin-top:12px;font-size:.82rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.home-quotes blockquote{margin:0;font:400 1.4rem/1.55 var(--serif)}.home-quotes figcaption{margin-top:16px;font-size:.9rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.service-testimonials .home-quotes{grid-template-columns:1fr;gap:30px;text-align:left}.service-testimonials .home-quotes blockquote{font-size:1.2rem}
.service-testimonials figure{border-left:2px solid var(--ink);padding-left:22px}

/* About / story */
.home-story{background:#111 url(/assets/thread-spools.webp) center/cover;position:relative;isolation:isolate}
.home-story::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.8);z-index:-1}
.story{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}.story img{width:100%;aspect-ratio:4/3;object-fit:cover}
.story h2{padding-bottom:16px;border-bottom:1px solid #fff;margin-bottom:22px}.story p+p{margin-top:16px}.story a{display:inline-block;margin-top:22px}

/* Locations */
.location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.location-card{border-top:1px solid var(--line);padding-top:26px}.location-card h3{font:400 2rem/1.15 var(--display)}
address{font-style:normal;line-height:1.75;margin:14px 0}.location-card p{color:var(--muted)}
.hours{margin:22px 0 0}.hours div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid var(--line)}.hours dt,.hours dd{margin:0}
.home-hours-title{margin-top:24px}.home-hours-title+.hours{margin-top:10px}
.home-contact{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}

/* Google review links */
.reviews-section .section-head{margin-bottom:0}.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:22px}

/* Footer */
.footer{background:var(--black);padding:56px 0 40px;font-size:.92rem}.footer img{width:200px}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}.footer nav{display:flex;flex-wrap:wrap;gap:22px;align-items:center}
/* Larger tap areas for small inline links, without changing the layout. */
address a[href^="tel:"],address+a,.hero-shop a[href^="tel:"],.footer nav a,.section-head>a{display:inline-block;padding:10px 0;margin:-10px 0}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-top:24px;border-top:1px solid #333;color:#c9c9c9}
.mobile-visit{display:none}

/* Inner pages: dark heading band with a slanted lower edge */
.breadcrumb{margin:0;padding:22px 0 0;font-size:.88rem;color:var(--muted)}.breadcrumb a{color:var(--text)}
.page-heading{padding:34px 0 calc(72px + var(--slant));margin-bottom:12px}
.page-heading::before{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--slant)),0 100%)}
.page-heading h1{max-width:20ch}.page-heading>p{max-width:62ch;margin-top:22px;font-size:1.12rem}
.service-page .page-heading h1{font-size:clamp(2.6rem,5vw,4.2rem)}
.directory-nav{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:28px;font-size:.92rem}.directory-nav a{padding:8px 0}
main>.section:first-of-type{padding-top:56px}

/* Service guides */
.content-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(250px,1fr);gap:72px;align-items:start;padding:40px 0 20px}
.service-copy{min-width:0}.service-copy>section>h2,.service-copy>.copy-section>h2{margin-bottom:18px}
.copy-section{margin-top:30px}.copy-section h3{margin-bottom:10px}.copy-section p+p{margin-top:14px}
.service-copy>.copy-section{margin-top:48px;padding-top:40px;border-top:1px solid var(--line)}
.info-panel{background:var(--night);color:#f5f5f5;--text:#f5f5f5;--muted:#c9c9c9;--line:#3d3d3d;--btn-bg:var(--silver);--btn-fg:#000;--btn-line:var(--silver);padding:34px;position:sticky;top:var(--panel-top,24px)}
.info-panel h2{font-size:2rem;margin-bottom:16px}.info-panel .button{margin-top:26px}.service-aside .copy-section{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{position:relative;display:block;list-style:none;cursor:pointer;padding:18px 0 18px 26px;font:400 1.15rem/1.45 var(--serif)}.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:'';position:absolute;left:2px;top:calc(18px + .5em);border-left:8px solid currentColor;border-block:5px solid transparent;transition:transform .15s}.faq details[open] summary::before{transform:rotate(90deg)}.faq details p{margin:-4px 0 20px 26px;color:var(--muted)}
.service-copy .faq{margin-top:22px}
.price-table-wrap{margin-top:22px;overflow-x:auto}.price-table{width:100%;border-collapse:collapse;line-height:1.5}
.price-table caption{text-align:left;font-weight:700;padding-bottom:14px}.price-table th,.price-table td{padding:16px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.price-table thead th{background:var(--ink);color:#fff;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.price-table tbody th{font-weight:700;width:70%;padding-left:0}
.price-table td{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.price-detail{display:block;margin-top:6px;font-size:.88rem;font-weight:400;color:var(--muted)}
.price-extras-title{display:block;margin-top:10px;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.price-extras{list-style:none;margin:4px 0 0;padding:0;font-size:.88rem;font-weight:400}.price-extras li{margin-top:2px}
.price-note{margin-top:20px;font-size:.94rem;max-width:80ch}.price-note+.note{margin-top:10px}
.related-services{border-top:1px solid var(--line);margin-top:56px}
.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}.service{display:block;padding:26px 0;border-top:1px solid var(--line)}
.service h3{font:400 1.6rem/1.25 var(--display)}.service h3 a{text-decoration:none}.service h3 a:hover{text-decoration:underline}.service p{margin-top:10px;color:var(--muted);font-size:.96rem}
.directory-group{padding:24px 0 56px}.directory-group>h2{margin-bottom:10px}
#shops.section{--text:#f5f5f5;--muted:#c9c9c9;--line:#3d3d3d;--btn-bg:var(--silver);--btn-fg:#000;--btn-line:var(--silver);color:var(--text)}
#shops.section{position:relative}#shops.section::before{content:'';position:absolute;inset:0 -100vmax;background:var(--night);z-index:-1;clip-path:polygon(0 var(--slant),100% 0,100% 100%,0 100%)}#shops.section{isolation:isolate;padding-top:calc(96px + var(--slant))}
main:has(#shops)+.footer{margin-top:0}

/* Shop pages */
.detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:72px;padding:40px 0}.detail-grid h2{margin-bottom:18px}
.local-services{margin-top:30px}.local-services h3{margin-bottom:12px}.local-services ul{padding-left:20px;margin:18px 0}.local-services li+li{margin-top:10px}
.shop-photo{width:100%;aspect-ratio:1/1;object-fit:cover;margin-bottom:26px}
.shop-map{margin-top:26px}.shop-map iframe{display:block;width:100%;height:300px;border:0;background:#333}
.shop-prices{border-top:1px solid var(--line)}

/* Quote, legal, 404 */
.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px}.demo-notice{background:#ececec;padding:16px 20px;margin-bottom:26px;font-size:.92rem;border-left:3px solid var(--ink)}
.page-heading .demo-notice{background:#2b2b2b;color:#f0f0f0;border-color:var(--silver)}
.form-grid{display:grid;gap:20px}label{display:grid;gap:8px;font-size:.95rem;font-weight:700}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid #8a8a8a;border-radius:4px;background:#fff;color:var(--ink);font-weight:400}textarea{min-height:140px;resize:vertical}
.legal-notice{margin-top:26px}.status{line-height:1.6}
.legal-policy h2{font-size:1.45rem;margin:40px 0 12px}.legal-policy p,.legal-policy li{line-height:1.7}.legal-policy p{margin:0 0 14px}.legal-policy .actions{margin-top:28px}.legal-policy ul{padding-left:1.2em;margin:0 0 16px}.legal-policy li{margin-bottom:8px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.optional,.hint{font-weight:400;color:var(--muted)}.hint{font-size:.88rem}
.choices{border:0;padding:0;margin:0;display:grid;gap:4px}.choices legend{font-weight:700;font-size:.95rem;padding:0;margin-bottom:8px}.choices legend .hint{display:block;margin-top:2px}
label.check{display:flex;align-items:flex-start;gap:12px;font-weight:400;padding:8px 0}label.check input{width:22px;height:22px;margin:1px 0 0;flex:none;accent-color:var(--ink)}
input[type=file]{padding:10px;background:transparent}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.enquiry-form [hidden]{display:none}.copy-section>.enquiry-form,.copy-section>.demo-notice{margin-top:24px}.status:empty{display:none}

@media(max-width:1000px){.photo-reviews{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}
  .home-directory ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 30px}
  .home-processes{grid-template-columns:1fr 1fr}.home-express{grid-column:1/-1}
  .promise-grid,.story,.home-expertise{gap:40px}.home-benefits{grid-template-columns:1fr 1fr}
  .content-layout,.detail-grid,.quote-layout{gap:40px}
}
@media(max-width:760px){.photo-reviews{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;margin:0 calc(-1*var(--gutter)) 48px;padding:0 var(--gutter) 12px;scroll-padding-inline:var(--gutter)}.photo-reviews li{flex:0 0 80%;scroll-snap-align:start}.form-row{grid-template-columns:1fr}
  :root{font-size:16px;--slant:6vw}
  .section{--pad:64px}.section-head{display:block}.section-head>p{margin-top:16px}
  .site-header{min-height:72px}.logo{width:168px}.menu{display:block}
  .nav{display:none;position:absolute;top:100%;left:calc(-1*var(--gutter));right:calc(-1*var(--gutter));z-index:10;flex-direction:column;align-items:stretch;gap:4px;padding:16px var(--gutter) 24px;background:var(--night);border-top:1px solid #2a2a2a;box-shadow:0 14px 20px rgba(0,0,0,.35)}
  .nav.is-open{display:flex}.nav>a{padding:10px 0}.nav .button{margin-top:8px}
  .hero-inner{padding:56px 0 calc(80px + var(--slant))}.hero-shops{gap:26px;flex-direction:column}
  .home-directory{gap:52px}.home-directory ul{grid-template-columns:1fr 1fr;gap:8px 18px}.home-directory a{font-size:.9rem;min-height:52px}
  .home-processes,.home-benefits,.promise-grid,.story,.home-expertise,.location-grid,.content-layout,.detail-grid,.quote-layout{grid-template-columns:1fr}
  .home-processes{gap:40px}.promise-grid,.story{gap:30px}.home-quotes blockquote{font-size:1.25rem}
  .services{grid-template-columns:1fr}
  .info-panel{position:static;padding:26px}.detail-grid .info-panel{order:-1}
  .page-heading{padding-bottom:calc(52px + var(--slant))}
  .footer{padding-bottom:96px}.footer-bottom{flex-direction:column}
  .mobile-visit{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:15;justify-content:center;padding:15px;background:var(--silver);color:#000;font-weight:700;text-decoration:none;letter-spacing:.04em}
  .js-visit .mobile-visit{transform:translateY(100%);visibility:hidden;transition:transform .2s,visibility .2s}.js-visit .mobile-visit.is-visible{transform:none;visibility:visible}
  .price-table th,.price-table td{padding:13px 6px}.price-table tbody th{width:64%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
