:root{--ink:#181715;--ink-soft:#24211e;--chocolate:#2c211d;--pearl:#f1ece4;--taupe:#a68f79;--champagne:#dcc9ad;--champagne-deep:#80654d;--muted:#c9c0b5;--line:rgba(220,201,173,.34);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--pearl);font-family:var(--sans);font-size:16px;line-height:1.7}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--pearl);color:var(--ink);padding:.75rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{position:fixed;inset:0 0 auto;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:1.2rem 4vw;border-bottom:1px solid transparent;transition:.25s;background:linear-gradient(to bottom,rgba(15,14,13,.8),transparent)}.site-header.scrolled{background:rgba(24,23,21,.96);border-color:var(--line);backdrop-filter:blur(10px)}.brand{display:flex;flex-direction:column;width:max-content;text-transform:uppercase}.brand span{font-family:var(--serif);font-size:1.3rem;letter-spacing:.22em}.brand small{font-size:.53rem;letter-spacing:.26em;color:var(--champagne)}nav{display:flex;gap:1.7rem}nav a{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em}nav a:hover,nav a:focus-visible{color:var(--champagne)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.8rem 1.5rem;border:1px solid var(--champagne);text-transform:uppercase;letter-spacing:.15em;font-size:.68rem;font-weight:600;cursor:pointer;transition:.2s}.button-outline{justify-self:end}.button:hover,.button:focus-visible{background:var(--pearl);border-color:var(--pearl);color:var(--ink)}.button-filled{background:var(--champagne);color:var(--ink)}.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('assets/garage.webp') center/cover no-repeat;transform:scale(1.025)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,15,13,.96) 0%,rgba(17,15,13,.82) 40%,rgba(17,15,13,.2) 75%),linear-gradient(0deg,rgba(17,15,13,.7),transparent 40%)}.hero-content{position:relative;z-index:2;width:min(760px,88vw);margin-left:8vw;padding-top:7rem}.eyebrow{margin:0 0 1rem;color:var(--champagne);font-size:.66rem;text-transform:uppercase;letter-spacing:.32em;font-weight:600}.hero h1,.section-title h2,.intro h2,.about h2,.pricing h2,.contact h2{font-family:var(--serif);font-weight:400;line-height:.9;margin:.2rem 0 1.7rem}.hero h1{font-size:clamp(4.4rem,9vw,8.4rem);letter-spacing:-.035em}.hero h1 em{font-weight:400;color:var(--champagne)}.hero-line{max-width:540px;font-family:var(--serif);font-size:clamp(1.35rem,2.3vw,2rem);margin:0 0 2.4rem;color:#e9e1d7}.scroll-cue{position:absolute;z-index:3;right:4vw;bottom:2.4rem;text-transform:uppercase;letter-spacing:.2em;font-size:.58rem;color:var(--muted)}.scroll-cue span{color:var(--champagne);font-size:1rem;margin-left:.5rem}.section-pad{padding:8rem 8vw}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:10vw;background:var(--pearl);color:var(--ink);align-items:start}.intro h2,.section-title h2,.about h2,.pricing h2,.contact h2{font-size:clamp(3.4rem,6vw,6rem)}.intro-copy{font-size:1.08rem;max-width:700px}.accent-copy{font-family:var(--serif);color:var(--champagne-deep);font-size:1.5rem;font-style:italic}.feature-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;min-height:980px;background:var(--ink-soft)}.feature-card{position:relative;overflow:hidden;min-height:480px}.feature-card.feature-tall{grid-row:1/3}.feature-card img{height:100%;object-fit:cover;filter:saturate(.78) contrast(1.02);transition:transform .6s}.feature-card:hover img{transform:scale(1.025)}.feature-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(18,16,14,.92))}.feature-caption{position:absolute;z-index:2;left:2.5rem;right:2.5rem;bottom:2.5rem;display:flex;gap:1.5rem;align-items:flex-start}.feature-caption>span,.service-number{font-family:var(--serif);color:var(--champagne);font-size:1.25rem;border-top:1px solid var(--champagne);padding-top:.35rem}.feature-caption h3,.service-list h3,.steps h3,.rather h3,.confirmation h3{font-family:var(--serif);font-weight:500;text-transform:uppercase;letter-spacing:.08em;font-size:1.6rem;line-height:1.1;margin:0 0 .5rem}.feature-caption p{margin:0;color:#ddd3c8;font-size:.84rem;max-width:450px}.service-list{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:2rem;background:var(--chocolate);align-items:start}.service-list h3{font-size:1.4rem}.service-list p{color:var(--muted);font-size:.9rem;margin:0}.editorial-strip{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:2px;background:var(--champagne)}.editorial-strip figure{position:relative;margin:0;height:540px;overflow:hidden}.editorial-strip img{height:100%;object-fit:cover;filter:saturate(.75)}.editorial-strip figcaption{position:absolute;inset:auto 0 0;padding:4rem 2rem 2rem;background:linear-gradient(transparent,rgba(20,18,16,.85));font-family:var(--serif);font-size:1.5rem;text-transform:uppercase;letter-spacing:.1em}.how{background:var(--pearl);color:var(--ink)}.section-title{text-align:center;max-width:850px;margin:0 auto 4rem}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(45,32,26,.25);border-bottom:1px solid rgba(45,32,26,.25)}.steps li{padding:3rem;border-right:1px solid rgba(45,32,26,.25)}.steps li:last-child{border:0}.steps span{display:block;color:var(--champagne-deep);font-size:.65rem;text-transform:uppercase;letter-spacing:.25em;margin-bottom:2rem}.steps h3{font-size:1.7rem}.steps p{font-size:.9rem;color:#554b44}.rather{text-align:center;padding-top:4rem}.rather h3{font-size:2rem}.rather p{font-family:var(--serif);font-style:italic;font-size:1.4rem;color:var(--champagne-deep)}.about{background:var(--ink-soft);display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.about-mark{position:sticky;top:10rem;font-family:var(--serif);font-size:clamp(11rem,24vw,25rem);line-height:.7;color:transparent;-webkit-text-stroke:1px var(--line);letter-spacing:-.12em}.about-copy{max-width:760px}.about-copy p{color:var(--muted)}.about-copy .eyebrow,.about-copy .accent-copy{color:var(--champagne)}.founder-title{text-transform:uppercase;letter-spacing:.2em;font-size:.65rem!important}.pricing{background:linear-gradient(120deg,rgba(23,20,18,.1),rgba(23,20,18,.75)),url('assets/gifts.webp') center/cover fixed;display:flex;justify-content:flex-end}.pricing-card{max-width:680px;padding:5rem;background:rgba(24,23,21,.95);border:1px solid var(--line)}.rate{display:flex;gap:1.5rem;align-items:center;border-block:1px solid var(--line);padding:1.5rem 0}.rate strong{font-family:var(--serif);font-size:5rem;color:var(--champagne);font-weight:400;line-height:1}.rate span{text-transform:uppercase;letter-spacing:.15em;font-size:.67rem}.pricing-card>p:not(.eyebrow):not(.rate){color:var(--muted)}.faq{background:var(--pearl);color:var(--ink)}.accordion{max-width:1020px;margin:auto}.accordion details{border-top:1px solid rgba(45,32,26,.25);padding:0}.accordion details:last-child{border-bottom:1px solid rgba(45,32,26,.25)}.accordion summary{list-style:none;padding:1.4rem 3rem 1.4rem 0;font-family:var(--serif);font-size:1.55rem;cursor:pointer;position:relative}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"+";position:absolute;right:.5rem;color:var(--champagne-deep);font-family:var(--sans);font-weight:300}.accordion details[open] summary:after{content:"−"}.accordion details p{margin:0 0 1.8rem;max-width:850px;color:#554b44}.contact{background:var(--chocolate);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;position:relative}.contact-intro{position:sticky;top:9rem;align-self:start}.contact-intro .lead{font-family:var(--serif);font-size:2rem;color:var(--champagne);font-style:italic}.direct-links{display:grid;margin-top:3rem;border-top:1px solid var(--line)}.direct-links a{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.15em;font-size:.65rem}.direct-links span{color:var(--muted);letter-spacing:.03em;text-transform:none}.estimate-form{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;padding:3.5rem;background:var(--pearl);color:var(--ink)}.estimate-form label,.estimate-form legend{display:grid;gap:.55rem;text-transform:uppercase;letter-spacing:.13em;font-size:.64rem;font-weight:600}.estimate-form input,.estimate-form textarea,.estimate-form select{width:100%;background:transparent;border:0;border-bottom:1px solid #968576;border-radius:0;padding:.75rem .1rem;color:var(--ink);outline:0;text-transform:none;letter-spacing:0;font-size:1rem}.estimate-form textarea{border:1px solid #968576;padding:.8rem;resize:vertical}.estimate-form input:focus,.estimate-form textarea:focus,.estimate-form select:focus{border-color:#6c4b26;box-shadow:0 1px #6c4b26}.estimate-form fieldset{border:0;padding:0;margin:0}.choice-row{display:flex;gap:1.4rem;padding-top:.7rem}.choice-row label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:.4rem}.choice-row input{width:auto}.full{grid-column:1/-1}.estimate-form label span,.estimate-form small{font-weight:400;text-transform:none;letter-spacing:0;color:#796d63}.form-note{text-align:center;color:#796d63;font-family:var(--serif);font-style:italic;font-size:1.1rem}.confirmation{grid-column:2;padding:3rem;border:1px solid var(--line)}.confirmation h3{font-size:2rem;color:var(--champagne)}footer{padding:4rem 4vw 2rem;display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:3rem;border-top:1px solid var(--line);background:#11100f}footer>div{display:flex;flex-direction:column}footer strong{font-family:var(--serif);text-transform:uppercase;letter-spacing:.14em;font-size:1rem;margin-bottom:.6rem}footer span,footer a{color:var(--muted);font-size:.72rem}.footer-brand strong{font-size:1.8rem}.footer-brand span{color:var(--champagne);text-transform:uppercase;letter-spacing:.14em;font-size:.55rem}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;color:#766f68;font-size:.65rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1050px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.feature-grid{grid-template-columns:1fr 1fr;min-height:auto}.feature-card.feature-tall{grid-row:auto;grid-column:1/-1;height:650px}.service-list{grid-template-columns:auto 1fr auto 1fr}.service-list>:nth-child(5){grid-column:1}.editorial-strip figure{height:400px}.contact{grid-template-columns:1fr}.contact-intro{position:static}.about{grid-template-columns:1fr}.about-mark{display:none}}
@media (max-width:720px){body{font-size:16px}.site-header{padding:1rem 1.1rem;gap:1rem;background:rgba(24,23,21,.95)}.brand small{display:none}.brand span{font-size:1rem}.header-cta{min-height:2.6rem;padding:.5rem .8rem;font-size:.55rem}.hero-content{margin-left:6vw;padding-top:4rem}.hero h1{font-size:clamp(4rem,19vw,6rem)}.hero-overlay{background:linear-gradient(90deg,rgba(17,15,13,.94),rgba(17,15,13,.45)),linear-gradient(0deg,rgba(17,15,13,.75),transparent)}.section-pad{padding:5rem 6vw}.intro{grid-template-columns:1fr;gap:1rem}.intro h2,.section-title h2,.about h2,.pricing h2,.contact h2{font-size:3.5rem}.feature-grid{display:block}.feature-card,.feature-card.feature-tall{height:500px;min-height:0}.feature-caption{left:1.4rem;right:1.4rem;bottom:1.5rem}.service-list{grid-template-columns:auto 1fr;gap:1.2rem 1rem}.service-list>:nth-child(5){grid-column:auto}.editorial-strip{grid-template-columns:1fr}.editorial-strip figure{height:420px}.steps{grid-template-columns:1fr}.steps li{border-right:0;border-bottom:1px solid rgba(45,32,26,.25);padding:2.2rem 0}.pricing{padding:0;background-attachment:scroll}.pricing-card{padding:4.5rem 6vw;width:100%;border:0}.estimate-form{grid-template-columns:1fr;padding:2rem 1.2rem}.estimate-form>*{grid-column:1}.direct-links a{flex-direction:column}.contact-intro h2{font-size:4rem}footer{grid-template-columns:1fr 1fr}.footer-brand,.copyright{grid-column:1/-1}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.feature-card img{transition:none}}

/* Service presentation: clean editorial labels without catalog numbering. */
.feature-caption{display:block}
.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5rem}
.service-list>div{border-top:1px solid var(--line);padding-top:1.5rem}
@media (max-width:720px){.service-list{grid-template-columns:1fr;gap:2.5rem}}

/* Shorter home page and dedicated editorial pages. */
nav a[aria-current="page"]{color:var(--champagne)}
.page-links{display:grid;grid-template-columns:1fr 1fr;background:var(--chocolate);border-block:1px solid var(--line)}
.page-link{padding:5.5rem 8vw;border-right:1px solid var(--line);transition:background .25s,color .25s}
.page-link:last-child{border-right:0}
.page-link>span,.page-link>strong{display:block;color:var(--champagne);font-size:.65rem;text-transform:uppercase;letter-spacing:.22em}
.page-link h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,5vw,5rem);line-height:.95;margin:1rem 0}
.page-link p{max-width:480px;color:var(--muted);margin:0 0 2rem}
.page-link:hover,.page-link:focus-visible{background:var(--pearl);color:var(--ink)}
.page-link:hover p,.page-link:focus-visible p{color:#554b44}
.inner-page .site-header{background:rgba(24,23,21,.98);border-color:var(--line)}
.page-hero{min-height:72svh;display:grid;align-items:end;padding:12rem 8vw 7rem;position:relative;overflow:hidden;background:var(--ink-soft)}
.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,16,14,.96),rgba(18,16,14,.38)),url('assets/garage.webp') center/cover no-repeat;filter:saturate(.72)}
.page-hero>div{position:relative;z-index:1;max-width:850px}
.page-hero h1,.founder-page h1,.inner-cta h2{font-family:var(--serif);font-weight:400;line-height:.92;margin:.2rem 0 1.5rem}
.page-hero h1{font-size:clamp(4rem,8vw,8rem)}
.page-hero>div>p:last-child{font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2rem);max-width:650px;color:#e9e1d7}
.inner-cta{text-align:center;background:var(--pearl);color:var(--ink)}
.inner-cta h2{font-size:clamp(3rem,5vw,5rem);max-width:900px;margin-inline:auto}
.inner-cta>p:not(.eyebrow){max-width:650px;margin:0 auto 2rem;color:#554b44}
.founder-page{min-height:100svh;padding-top:12rem}
.founder-page h1{font-size:clamp(4rem,7vw,7rem)}
@media (max-width:720px){.page-links{grid-template-columns:1fr}.page-link{padding:4rem 6vw;border-right:0;border-bottom:1px solid var(--line)}.page-link:last-child{border-bottom:0}.page-hero{min-height:66svh;padding:10rem 6vw 5rem}.founder-page{padding-top:9rem}.founder-page h1{font-size:4.5rem}}

/* Service directory and individual service pages. */
.intro .eyebrow,.how .eyebrow,.faq .eyebrow,.inner-cta .eyebrow{color:var(--champagne-deep)}
.page-link:hover>span,.page-link:focus-visible>span,.page-link:hover>strong,.page-link:focus-visible>strong{color:var(--champagne-deep)}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.category-card{display:grid;grid-template-columns:.85fr 1.15fr;min-height:430px;background:var(--ink-soft);overflow:hidden}
.category-card:last-child{grid-column:1/-1;grid-template-columns:.55fr 1fr}
.category-card img{height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02);transition:transform .5s ease}
.category-card>div{display:flex;flex-direction:column;justify-content:center;padding:3rem}
.category-card span,.category-card strong,.back-link{color:var(--champagne);font-size:.64rem;text-transform:uppercase;letter-spacing:.2em}
.category-card h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,3.4vw,3.8rem);line-height:.95;margin:1rem 0}
.category-card p{color:var(--muted);margin:0 0 2rem}
.category-card:hover img,.category-card:focus-visible img{transform:scale(1.035)}
.category-card:hover strong,.category-card:focus-visible strong{color:var(--pearl)}
.service-detail{min-height:100svh;display:grid;grid-template-columns:1fr 1fr;padding-top:6rem;background:var(--ink-soft)}
.service-detail-image{min-height:720px;overflow:hidden}
.service-detail-image img{height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02)}
.service-detail-copy{display:flex;flex-direction:column;justify-content:center;padding:7rem 8vw 6rem}
.service-detail-copy .back-link{width:max-content;margin-bottom:4rem}
.service-detail-copy h1{font-family:var(--serif);font-size:clamp(3.5rem,6vw,6rem);font-weight:400;line-height:.9;margin:.3rem 0 2rem}
.service-detail-copy>p:not(.eyebrow):not(.service-note){color:var(--muted);font-size:1.05rem}
.service-detail-copy ul{list-style:none;padding:0;margin:2rem 0 2.5rem;border-top:1px solid var(--line)}
.service-detail-copy li{padding:.85rem 0;border-bottom:1px solid var(--line);color:var(--pearl)}
.service-detail-copy li:before{content:"—";color:var(--champagne);margin-right:.75rem}
.service-detail-copy .button{align-self:flex-start;margin-top:1rem}
.service-note{font-family:var(--serif);font-size:1.25rem;color:var(--champagne);font-style:italic}
@media (max-width:1050px){.category-card,.category-card:last-child{grid-template-columns:1fr}.category-card img{height:320px}.category-card:last-child{grid-column:auto}.service-detail{grid-template-columns:1fr}.service-detail-image{min-height:520px;height:62svh}.service-detail-copy{padding:5rem 8vw}}
@media (max-width:720px){.category-grid{grid-template-columns:1fr;padding:0}.category-card>div{padding:2.4rem 1.5rem}.category-card img{height:270px}.service-detail{padding-top:4.6rem}.service-detail-image{min-height:0;height:48svh}.service-detail-copy{padding:3.5rem 6vw 5rem}.service-detail-copy .back-link{margin-bottom:2.5rem}.service-detail-copy h1{font-size:3.8rem}}

.page-links .page-link{border-bottom:1px solid var(--line)}
.page-links .page-link:nth-child(odd){border-right:1px solid var(--line)}
.page-links .page-link:nth-child(even){border-right:0}
.page-links .page-link:nth-last-child(-n+2){border-bottom:0}
.page-links .page-link h2{font-size:clamp(2.3rem,3.6vw,4rem)}
@media (max-width:720px){.page-links .page-link:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}.page-links .page-link:last-child{border-bottom:0}}

/* Dedicated information pages keep the home page focused on contact. */
.page-links .page-link:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
.page-links .page-link:last-child{grid-column:1/-1;border-right:0;border-bottom:0}
.standalone-section{min-height:100svh;padding-top:12rem}
.standalone-section .section-title h1,.pricing-page h1{font-family:var(--serif);font-weight:400;line-height:.9;font-size:clamp(3.8rem,7vw,7rem);margin:.2rem 0 1.7rem}
.pricing-page{min-height:100svh;padding-top:12rem;align-items:center}
.detail-cta{text-align:center;margin-top:4rem}
@media (max-width:720px){.page-links .page-link:last-child{grid-column:auto}.standalone-section,.pricing-page{padding-top:9rem}}

/* Keep conditional form fields hidden and make every page directly reachable on phones. */
[hidden]{display:none!important}
@media (max-width:1050px){
  .site-header nav{display:flex;grid-column:1/-1;gap:1.15rem;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:.15rem 0 .35rem}
  .site-header nav a{flex:0 0 auto;white-space:nowrap;font-size:.75rem}
}
@media (max-width:720px){.hero-content{padding-top:8rem}}
