@font-face{font-family:Switzer;src:url('fonts/Switzer-Variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
/* Brand colours: lime for primary actions, blue for secondary accents,
   dusty peach for the warm companion tone. */
:root{
 --bg:#101010;
 --surface:#20211f;
 --fg:#f3f2eb;
 --text:#c4c4be;
 --muted:#a8a8a2;
 --line:#383a36;
 --line-strong:#73756c;
 --accent:#d4f452;
 --accent-hover:#def779;
 --secondary:#9eb8f5;
 --secondary-line:#627195;
 --concept-blue:#c9d5f0;
 --tertiary:#e8bcb2;
 --gutter:clamp(22px,4vw,76px);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--fg);font-family:Switzer,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{touch-action:manipulation}button{border:0}h1,h2,h3,p,figure{margin:0}img{display:block;max-width:100%;object-fit:cover}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.wrap{padding-inline:var(--gutter);max-width:1800px;margin-inline:auto}.muted{color:var(--muted)}.eyebrow{font-size:12px;line-height:1.5;font-weight:500;letter-spacing:.015em}.header{max-width:1800px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:29px var(--gutter);font-size:13px}.brand{display:flex;align-items:center;gap:12px;line-height:1.13;font-weight:500}.brand-mark{font-size:43px;font-weight:600;letter-spacing:-8px;line-height:.9;display:inline-block;padding-right:8px}.brand-mark span{color:var(--accent)}.header nav{display:flex;gap:35px}.header nav a{color:var(--text);transition:color .2s}.header nav a:hover{color:var(--accent)}.nav-contact{padding-bottom:7px;border-bottom:1px solid var(--line-strong);display:flex;gap:37px}.nav-contact:hover{color:var(--accent);border-color:var(--accent)}.hero{padding-top:64px;padding-bottom:61px}.hero-eyebrow{display:flex;justify-content:space-between;align-items:center;margin-bottom:31px}.hero-eyebrow>span:first-child{display:flex;align-items:center;gap:8px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;vertical-align:middle;margin-right:5px}.location{color:var(--muted)}h1{position:relative;max-width:1350px;font-size:clamp(42px,5.9vw,102px);font-weight:500;line-height:.98;letter-spacing:-.065em}h1>span{color:var(--muted)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:39px;gap:30px}.hero-bottom>p{font-size:clamp(17px,1.55vw,24px);line-height:1.4;letter-spacing:-.025em}.hero-action{display:flex;flex-direction:column;align-items:stretch;gap:13px}.button{display:flex;align-items:center;justify-content:space-between;gap:33px;padding:18px 23px;border-radius:3px;font-size:14px;font-weight:500;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.button-light{background:var(--accent);color:var(--bg)}.button-light:hover{background:var(--accent-hover)}.price-note{font-size:11px;color:var(--muted);text-align:center}.people-grid{display:grid;grid-template-columns:1fr 1fr 1.17fr 1fr 1fr;gap:9px;align-items:start;padding-inline:9px;max-width:2000px;margin:auto}.person{position:relative;overflow:hidden;aspect-ratio:.76;background:var(--surface)}.person-two,.person-four{margin-top:29px}.person-three{aspect-ratio:.81}.person img{height:100%;width:100%;transition:transform .7s;object-position:center 35%}.person-one img{object-position:42% 35%}.person:hover img{transform:scale(1.045)}.person:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}.person figcaption{position:absolute;z-index:1;bottom:17px;left:17px;right:17px;display:flex;justify-content:space-between;gap:9px;font-size:12px;color:#fff}.person figcaption>span:last-child{opacity:.65;font-size:10px}.image-foot{display:flex;justify-content:space-between;gap:20px;margin-top:25px;font-size:11px;color:var(--muted)}.image-foot>span:last-child span{margin-left:28px;color:var(--fg)}.section{padding-top:130px;padding-bottom:20px;scroll-margin-top:16px}.section-heading{display:grid;grid-template-columns:1fr 2.1fr;gap:35px;margin-bottom:52px}.section-heading>.eyebrow{padding-top:10px;color:var(--muted)}h2{font-size:clamp(41px,4.7vw,78px);font-weight:500;line-height:1.05;letter-spacing:-.055em}.section-intro{font-size:16px;color:var(--text);line-height:1.6;margin-top:24px;letter-spacing:-.015em}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.project-open{position:relative;width:100%;padding:0;background:none;display:block;text-align:left;overflow:hidden;border-radius:2px}.site-preview{position:relative;display:block;aspect-ratio:.9;overflow:hidden;container-type:inline-size;transition:transform .6s}.project-open:hover .site-preview{transform:scale(1.025)}.mini-nav{position:absolute;top:6%;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:1.7cqw;letter-spacing:.03em}.mini-nav>b{font-size:5.5cqw;letter-spacing:-.06em;line-height:1}.mini-bottom{position:absolute;bottom:5%;left:7%;right:7%;display:flex;justify-content:space-between;gap:10px;font-size:1.7cqw;font-weight:500}.daybreak{background:var(--tertiary);color:#442b20}.daybreak-title{position:absolute;top:20%;left:7%;font-size:9cqw;line-height:.97;font-weight:500;letter-spacing:-.06em}.daybreak-image{position:absolute;left:7%;right:7%;top:44%;bottom:12%;overflow:hidden}.daybreak-image img{width:100%;height:100%;object-position:center 37%;filter:brightness(.8)}.daybreak-image>span{position:absolute;left:6%;bottom:9%;font-size:5cqw;color:#ffe3b4;line-height:.98;font-weight:600;letter-spacing:-.03em}.goodcompany{background:var(--concept-blue);color:#192430}.goodcompany .mini-nav{z-index:2;color:#fff}.barber-image{position:absolute;inset:0 0 26%;overflow:hidden}.barber-image img{height:100%;width:100%;object-position:55% 24%;filter:brightness(.6)}.goodcompany-title{position:absolute;bottom:31%;left:7%;font-size:10cqw;font-weight:650;line-height:.91;letter-spacing:-.055em;color:#dfebff}.goodcompany .mini-bottom{bottom:8%;align-items:center}.goodcompany .mini-bottom>b{font-size:5cqw;max-width:50%;line-height:.9;letter-spacing:-.05em}.stem{background:#dce4bc;color:#2f472c}.stem .mini-nav>b{font-size:7cqw}.stem-title{position:absolute;top:20%;left:7%;font-size:10.6cqw;font-weight:500;line-height:.92;letter-spacing:-.065em;z-index:1}.stem-image{position:absolute;left:22%;right:7%;top:37%;bottom:12%;border-radius:50% 50% 0 0;overflow:hidden}.stem-image img{width:100%;height:100%;object-position:center 30%}.stem-sticker{position:absolute;left:6%;bottom:19%;background:#e6edce;border-radius:50%;width:27%;aspect-ratio:1;display:grid;place-content:center;transform:rotate(-12deg);font-size:2.3cqw;font-weight:600;text-align:center;line-height:1.2}.project-hover{position:absolute;inset:auto 15px 15px auto;background:var(--fg);color:var(--bg);padding:13px 16px;font-size:12px;border-radius:2px;opacity:0;transform:translateY(8px);transition:.2s}.project-open:hover .project-hover,.project-open:focus-visible .project-hover{opacity:1;transform:none}.project-caption{display:flex;align-items:center;justify-content:space-between;margin-top:21px;gap:8px}.project-caption h3{font-size:17px;font-weight:500;letter-spacing:-.03em}.project-caption>span{font-size:11px;color:var(--muted)}.project-caption>span>span{color:var(--fg);margin-left:13px}.project>p{font-size:12px;color:var(--muted);margin-top:7px}.concept-note{display:flex;gap:12px;align-items:center;font-size:11px;color:var(--muted);margin-top:30px}.tiny-cross{color:var(--accent);font-size:18px}.approach{padding-top:145px}.approach .section-heading{border-top:1px solid var(--line);padding-top:58px}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:30px;max-width:800px}.about-copy p{font-size:16px;line-height:1.65;color:var(--text)}.text-link{display:inline-flex;gap:45px;align-items:center;font-size:13px;margin-top:25px;padding-bottom:9px;border-bottom:1px solid var(--line-strong)}.text-link:hover{color:var(--accent)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px}.steps article{border-top:1px solid var(--line);padding-top:23px}.step-number{font-size:12px;color:var(--muted)}.steps h3{font-size:23px;letter-spacing:-.035em;font-weight:500;margin-top:32px;margin-bottom:15px}.steps p{font-size:14px;line-height:1.7;color:var(--muted);max-width:34ch}.pricing{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:140px}.pricing-lead>.eyebrow{color:var(--muted);margin-bottom:37px}.pricing-lead>p:not(.eyebrow){font-size:21px;letter-spacing:-.02em;line-height:1.5;margin-top:30px}.handmade{display:block;font-size:12px;color:var(--muted);margin-top:70px}.price-panel{background:var(--surface);padding:35px 35px 27px;border:1px solid var(--line);border-radius:4px}.price-panel-top{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px}.price-tag{border:1px solid var(--line-strong);border-radius:50px;padding:7px 11px;color:var(--accent);font-size:11px;white-space:nowrap}.price-value{font-size:105px;letter-spacing:-.075em;line-height:1;margin-top:34px;font-weight:500}.price-value>span{font-size:13px;letter-spacing:0;color:var(--text);margin-left:18px;font-weight:400}.price-term{font-size:14px;line-height:1.8;margin-top:12px}.price-term>span{color:var(--muted);font-size:12px}.includes{padding:0;margin:27px 0 28px;list-style:none}.includes li{border-top:1px solid var(--line);padding:13px 0;font-size:12px;display:flex;justify-content:space-between;gap:12px}.includes li>span{color:var(--accent)}.price-fine{font-size:11px;color:var(--muted);line-height:1.6;margin-top:18px;max-width:44ch}.questions{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;padding-top:140px;padding-bottom:130px}.questions .eyebrow{color:var(--muted);margin-bottom:30px}.questions h2{font-size:clamp(38px,3.8vw,64px)}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;letter-spacing:-.02em;padding:23px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:24px;font-weight:300;color:var(--muted);line-height:1;transition:transform .2s}details[open] summary>span{transform:rotate(45deg);color:var(--accent)}details p{font-size:14px;line-height:1.7;color:var(--muted);padding-bottom:24px;padding-right:35px;max-width:58ch}.contact{padding-top:44px;padding-bottom:65px;border-top:1px solid var(--line)}.contact-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:44px}.contact-top>span{color:var(--muted)}.contact-title-link{display:flex;align-items:center;justify-content:space-between;gap:20px}.contact h2{font-size:clamp(60px,8.3vw,144px);line-height:1;letter-spacing:-.065em}.contact-arrow{font-size:clamp(100px,17vw,270px);line-height:1;font-weight:300;color:var(--accent);transition:transform .3s}.contact-title-link:hover .contact-arrow{transform:translate(8px,-8px)}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:50px}.contact-bottom>p{font-size:17px;color:var(--muted);line-height:1.45}.email-row{display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--line-strong);padding-bottom:12px}.email-row>a{font-size:25px;letter-spacing:-.035em}.email-row>button{background:none;font-size:11px;color:var(--muted);padding:10px 0 10px 12px;min-width:58px}.email-row>button:hover,.email-row>a:hover{color:var(--accent)}.footer{padding-block:25px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.footer>a{color:var(--fg);font-size:12px}.footer>a span{margin-left:15px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--accent);color:var(--bg);padding:14px}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.concept-dialog{background:var(--bg);color:var(--fg);border:1px solid var(--line);padding:25px;width:min(920px,calc(100% - 32px));max-height:90dvh;overflow:auto;border-radius:6px}.concept-dialog::backdrop{background:rgba(0,0,0,.8);backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-close{background:none;padding:10px 0 10px 20px;font-size:13px}.dialog-close>span{font-size:22px;margin-left:15px}.dialog-art{width:min(480px,100%);margin:auto}.dialog-art .site-preview{width:100%;aspect-ratio:1.1}.dialog-copy{display:flex;align-items:end;gap:30px;justify-content:space-between;margin-top:25px}.dialog-copy h2{font-size:36px}.dialog-copy p{max-width:45ch;font-size:14px;line-height:1.6;color:var(--muted);margin-top:12px}.dialog-copy p.dialog-disclosure{font-size:11px}.dialog-copy .button{white-space:nowrap;font-size:12px;padding:15px 18px}
@media(min-width:1800px){.people-grid{padding-inline:var(--gutter)}}
@media(max-width:1100px){.hero{padding-top:45px}.people-grid{gap:6px;padding-inline:6px}.person figcaption{font-size:10px;left:10px;right:10px;bottom:12px}.person figcaption>span:last-child{display:none}.work-grid{gap:16px}.project-caption{align-items:start;flex-direction:column;gap:5px}.project>p{font-size:11px}.pricing{gap:5%}.price-panel{padding:26px}.section{padding-top:105px}.questions{padding-bottom:100px}.section-heading{grid-template-columns:1fr 2.5fr}.price-panel-top{font-size:12px}.footer>span:nth-child(2){display:none}}
@media(max-width:700px){.header{padding-block:22px}.brand-mark{font-size:35px;letter-spacing:-6px}.brand{font-size:12px;gap:9px}.header nav{display:none}.nav-contact{gap:22px;font-size:12px}.hero{padding-top:39px;padding-bottom:35px}.hero-eyebrow{margin-bottom:27px;font-size:10px}.location{display:none}h1{font-size:clamp(30px,10vw,68px);line-height:1.01;letter-spacing:-.06em}.hero-bottom{margin-top:27px;align-items:start;flex-direction:column;gap:25px}.hero-bottom>p{font-size:17px}.hero-action{width:100%;max-width:350px}.button{padding:17px 20px;font-size:13px}.price-note{text-align:left;font-size:10px}.people-grid{grid-template-columns:repeat(5,40vw);overflow-x:auto;gap:6px;padding:0 22px 12px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--bg);align-items:start}.person{scroll-snap-align:center;aspect-ratio:.68}.person-two,.person-four{margin-top:20px}.person-three{aspect-ratio:.68}.person figcaption{font-size:10px}.image-foot{font-size:10px;line-height:1.5;max-width:330px;margin-left:0;margin-top:15px}.image-foot>span:last-child{display:none}.section{padding-top:78px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}h2{font-size:43px}.section-intro{font-size:14px;margin-top:20px}.section-intro br{display:none}.work-grid{grid-template-columns:1fr;gap:33px}.site-preview{aspect-ratio:1.05}.project-caption{flex-direction:row;margin-top:15px;align-items:center}.project-caption h3{font-size:17px}.project-caption>span{font-size:11px}.project>p{font-size:12px}.project-hover{opacity:1;transform:none;padding:9px 12px;font-size:10px;bottom:14px;right:14px}.concept-note{font-size:10px;align-items:start;line-height:1.6;margin-top:23px}.tiny-cross{line-height:1}.approach .section-heading{padding-top:32px}.about-copy{grid-template-columns:1fr;gap:16px;margin-top:23px}.about-copy p{font-size:15px}.steps{grid-template-columns:1fr;gap:27px;margin-top:38px}.steps article{display:grid;grid-template-columns:40px 1fr;gap:13px 17px;padding-top:24px}.steps h3{font-size:22px;margin:0}.step-number{padding-top:5px}.steps p{grid-column:2;font-size:13px;max-width:none}.pricing{grid-template-columns:1fr;gap:32px}.pricing-lead>.eyebrow{margin-bottom:24px}.pricing-lead>p:not(.eyebrow){font-size:18px;margin-top:22px}.handmade{margin-top:25px;font-size:11px}.price-panel{padding:24px}.price-value{font-size:94px}.price-panel-top{font-size:12px}.price-tag{font-size:10px}.includes li{font-size:12px;line-height:1.5}.questions{grid-template-columns:1fr;gap:33px;padding-bottom:75px}.questions h2{font-size:40px}.questions .eyebrow{margin-bottom:22px}summary{font-size:14px;padding-block:21px}details p{font-size:13px;padding-right:14px}.contact{padding-top:28px;padding-bottom:40px}.contact-top{margin-bottom:32px}.contact-top .eyebrow{font-size:10px}.contact-top>span{display:none}.contact h2{font-size:clamp(40px,10vw,66px)}.contact-arrow{font-size:15vw;align-self:end;padding-bottom:1%}.contact-bottom{flex-direction:column;align-items:start;gap:28px;margin-top:30px}.contact-bottom>p{font-size:15px}.email-row{width:100%;justify-content:space-between;gap:15px}.email-row>a{font-size:23px}.footer{flex-wrap:wrap;padding-block:22px;gap:16px;font-size:9px}.footer>a{font-size:11px}.dialog-copy{flex-direction:column;align-items:stretch;gap:20px}.concept-dialog{padding:18px}.dialog-copy h2{font-size:30px}.dialog-copy p{font-size:13px}.dialog-art .site-preview{aspect-ratio:.95}.dialog-copy .button{justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* A shared rhythm for the staggered heading, introduction and photographs. */
.hero{--hero-type:clamp(40px,4.7vw,82px);padding-top:48px;padding-bottom:60px}
.hero-eyebrow{margin-bottom:48px}
.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(50px,6.5vw,110px);width:calc(100% - clamp(48px,6vw,100px));align-items:start}
.hero h1{font-size:var(--hero-type);line-height:1.13;letter-spacing:-.035em;word-spacing:.035em;max-width:none}
.hero h1>.hero-row{display:block;color:var(--fg)}
.hero h1>.hero-row-offset{padding-left:clamp(34px,4.4vw,76px)}
.hero h1>.hero-row-muted{color:var(--muted)}
.hero h1 .hero-accent{color:var(--accent)}
.hero-bottom{margin:0;padding-top:calc(var(--hero-type) * 1.13);display:flex;flex-direction:column;align-items:start;gap:24px}
.hero-bottom>p{font-size:16px;line-height:1.6;letter-spacing:0;max-width:29ch;color:var(--text)}
.hero-action{width:auto;max-width:100%;gap:0}
.hero-action .button{width:max-content;max-width:100%;padding:16px 19px;gap:29px;font-size:13px;white-space:nowrap}
.hero-action .button span{font-size:21px}
.hero-action .button-light{background:var(--accent)}
.hero-action .button-light:hover{background:var(--accent-hover)}
@media(min-width:1800px){.hero{--hero-type:82px}}
@media(min-width:701px) and (max-width:1100px){
 .hero{--hero-type:clamp(32px,4.8vw,52px);padding-top:40px;padding-bottom:50px}
 .hero-eyebrow{margin-bottom:40px}
 .hero-layout{grid-template-columns:minmax(0,1fr) 240px;gap:35px;width:100%;align-items:center}
 .hero h1>.hero-row-offset{padding-left:30px}
 .hero-bottom{padding-top:0;gap:21px}
 .hero-bottom>p{font-size:14px;line-height:1.65;max-width:28ch}
 .hero-action .button{padding:15px 17px;gap:25px;font-size:12px}
}
@media(max-width:700px){
 .hero{--hero-type:clamp(29px,9.4vw,61px);padding-top:32px;padding-bottom:34px}
 .hero-eyebrow{margin-bottom:30px}
 .hero-layout{grid-template-columns:1fr;gap:29px;width:100%}
 .hero h1{line-height:1.14;letter-spacing:-.04em;word-spacing:.025em}
 .hero h1>.hero-row-offset{padding-left:4vw}
 .hero-bottom{padding-top:0;gap:22px;max-width:350px}
 .hero-bottom>p{font-size:15px;line-height:1.55;max-width:31ch}
 .hero-action .button{font-size:13px;padding:16px 19px;gap:30px}
}

/* A smooth solid disc with rotating lettering. */
.hero{position:relative}
.hero-seal{position:absolute;left:50%;top:13px;width:124px;aspect-ratio:1;transform:translateX(-50%);color:var(--secondary);opacity:.8;user-select:none}
.hero-seal svg{display:block;width:100%;height:100%;overflow:visible}
.seal-disc{fill:currentColor}
.seal-divider{fill:var(--bg)}
.seal-lettering{transform-origin:80px 80px}
.seal-lettering text{fill:var(--bg);font-family:Switzer,Arial,sans-serif;font-size:13px;font-weight:550;letter-spacing:1px}
.nav-contact{align-items:center;gap:25px;padding:12px 17px;background:transparent;color:var(--secondary);border:1px solid var(--secondary-line);border-radius:3px;line-height:1.2;transition:background .2s,color .2s,border-color .2s,transform .2s}
.nav-contact:hover{background:var(--secondary);color:var(--bg);border-color:var(--secondary);transform:translateY(-1px)}
@media(prefers-reduced-motion:no-preference){
 .seal-lettering{animation:seal-turn 90s linear infinite}
 .hero-seal:hover .seal-lettering{animation-play-state:paused}
 @keyframes seal-turn{to{transform:rotate(360deg)}}
}
@media(min-width:701px) and (max-width:1100px){.hero-seal{width:94px}}
@media(max-width:800px){.hero-seal{display:none}}
@media(max-width:700px){.nav-contact{padding:10px 13px;gap:17px}}
@media(hover:hover) and (pointer:fine){
 .person img{transition:transform .8s cubic-bezier(.22,1,.36,1),filter .55s ease}
 .people-grid:has(.person:hover) .person:not(:hover) img{filter:brightness(.76) saturate(.75)}
 .person:hover img{transform:scale(1.045)}
 .person figcaption{transition:color .3s}
 .person:hover figcaption{color:var(--accent)}
}
@media(hover:none){.person:hover img{transform:none}}

/* Personal introduction and the single website plan. */
.approach{
 --fg:#392b25;
 --text:#49382f;
 --muted:#624c41;
 --line:#b98f80;
 --line-strong:#866657;
 --accent:#392b25;
 margin-top:120px;
 padding:72px 0 70px;
 background:var(--tertiary);
 color:var(--fg);
}
.approach .section-heading{border-top:0;padding-top:0;margin-bottom:0}
.approach .section-heading>.eyebrow{color:var(--text)}
.approach h2{letter-spacing:-.045em}
.approach .about-copy{margin-top:30px}
.approach .text-link{border-color:var(--line-strong)}
.approach .text-link:hover{color:var(--fg);border-color:var(--fg)}
.approach .steps{margin-top:58px;gap:42px}
.approach .steps article{padding-top:22px}
.approach .steps h3{margin-top:28px}
.approach .steps p{color:var(--text)}
.approach :focus-visible{outline-color:var(--fg)}
.pricing{display:block;padding-top:110px;padding-bottom:10px}
.pricing-heading{display:grid;grid-template-columns:1fr 2.1fr;gap:35px;align-items:start;margin-bottom:48px}
.pricing-heading>.eyebrow{color:var(--muted);padding-top:10px}
.pricing-heading h2{font-size:clamp(43px,4.7vw,78px);letter-spacing:-.045em}
.pricing-heading>div>p{margin-top:24px;color:var(--text);font-size:17px;line-height:1.6}
.pricing-offer{display:grid;grid-template-columns:1fr 1.22fr;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#181a17}
.plan-cost{background:#dce4bc;color:#273024;padding:40px;display:flex;flex-direction:column;align-items:start}
.plan-label{font-size:13px;line-height:1.5;font-weight:500;color:#4b5543}
.plan-amount{display:flex;align-items:baseline;gap:23px;margin-top:38px;white-space:nowrap}
.plan-figure{font-size:clamp(125px,13.2vw,210px);line-height:.9;letter-spacing:-.075em;font-weight:500}
.plan-unit{font-size:14px;color:#4b5543}
.plan-upfront{margin-top:24px;font-size:23px;font-weight:500;letter-spacing:-.025em}
.plan-term{font-size:14px;line-height:1.7;color:#4b5543;margin-top:15px}
.plan-term strong{font-weight:500;color:#273024}
.plan-button{width:100%;margin-top:auto;background:#273024;color:#f3f2eb;padding:20px 23px}
.plan-cost .plan-term{margin-bottom:34px}
.plan-button:hover{background:#394731}
.plan-cost :focus-visible{outline-color:#273024}
.plan-details{padding:40px 44px;display:flex;flex-direction:column}
.plan-details>h3{font-size:16px;font-weight:500;letter-spacing:-.015em}
.plan-inclusions{padding:0;margin:26px 0 32px;list-style:none}
.plan-inclusions li{display:flex;align-items:baseline;gap:16px;padding:15px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.45;color:var(--text)}
.plan-inclusions li>span{color:#dce4bc;font-size:14px;flex-shrink:0}
.plan-ownership{display:flex;align-items:start;gap:22px;margin-top:auto;padding-top:28px;border-top:1px solid var(--line)}
.ownership-arrow{color:#dce4bc;font-size:35px;line-height:1;flex-shrink:0}
.plan-ownership h3{font-size:clamp(23px,2vw,32px);font-weight:500;line-height:1.15;letter-spacing:-.035em}
.plan-ownership p{margin-top:12px;font-size:13px;line-height:1.6;color:var(--muted);max-width:42ch}
.pricing-extras{margin-top:21px;font-size:12px;line-height:1.65;color:var(--muted);text-align:right}
@media(min-width:701px) and (max-width:1100px){
 .approach{margin-top:95px;padding-block:55px}
 .approach .steps{gap:28px}
 .pricing{padding-top:90px}
 .pricing-heading{grid-template-columns:1fr 2.5fr}
 .pricing-offer{grid-template-columns:1fr 1.15fr}
 .plan-cost,.plan-details{padding:28px}
 .plan-amount{gap:15px;flex-wrap:wrap;row-gap:12px;margin-top:32px}
 .plan-figure{font-size:clamp(112px,14vw,154px)}
 .plan-unit{font-size:12px}
 .plan-inclusions li{font-size:14px;gap:12px;padding-block:14px}
 .plan-ownership{gap:15px}
 .ownership-arrow{font-size:29px}
 .plan-button{padding:18px 20px;font-size:13px}
}
@media(max-width:700px){
 .approach{margin-top:68px;padding-block:42px}
 .approach .section-heading{gap:24px}
 .approach h2{font-size:clamp(34px,9.5vw,52px)}
 .approach .about-copy{margin-top:23px}
 .approach .steps{margin-top:37px;gap:25px}
 .approach .steps h3{margin:0;font-size:21px}
 .approach .steps article{padding-top:23px;gap:12px 17px}
 .pricing{padding-top:68px}
 .pricing-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}
 .pricing-heading>.eyebrow{padding-top:0}
 .pricing-heading h2{font-size:clamp(38px,10vw,54px)}
 .pricing-heading>div>p{font-size:15px;margin-top:20px}
 .pricing-offer{grid-template-columns:1fr}
 .plan-cost{padding:28px 25px 26px}
 .plan-label{font-size:12px}
 .plan-amount{margin-top:32px;gap:18px;flex-wrap:wrap;row-gap:12px}
 .plan-figure{font-size:clamp(123px,34vw,175px)}
 .plan-unit{font-size:13px}
 .plan-upfront{font-size:23px;margin-top:25px}
 .plan-term{font-size:13px;margin-top:12px}
 .plan-cost .plan-term{margin-bottom:28px}
 .plan-button{padding:18px 20px;font-size:13px}
 .plan-details{padding:30px 25px}
 .plan-details>h3{font-size:16px}
 .plan-inclusions{margin:23px 0 28px}
 .plan-inclusions li{font-size:14px;padding-block:14px;gap:12px}
 .plan-ownership{gap:15px;padding-top:26px}
 .ownership-arrow{font-size:28px}
 .plan-ownership h3{font-size:25px}
 .plan-ownership p{font-size:12px}
 .pricing-extras{text-align:left;font-size:11px;margin-top:18px;max-width:48ch}
}
@media(max-width:360px){.plan-cost,.plan-details{padding-inline:21px}.plan-amount{gap:14px}.plan-unit{font-size:11px}.plan-ownership{gap:11px}.plan-ownership h3{font-size:23px}}


/* Soft controls and quiet movement. Headings use the shared Switzer font. */
.nav-contact{border-radius:999px;padding:13px 20px}
.hero-action .button,.plan-button{border-radius:999px;min-height:58px;padding:9px 9px 9px 24px;gap:25px;transition:background .25s,transform .35s cubic-bezier(.22,1,.36,1)}
.hero-action .button>span,.plan-button>span{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:50%;font-size:22px;transition:transform .35s cubic-bezier(.22,1,.36,1),background .25s}
.hero-action .button>span{background:rgba(16,16,16,.09)}
.plan-button>span{background:rgba(243,242,235,.12)}
.project-open{border-radius:6px}
.project-hover{border-radius:999px;padding:14px 19px}
.contact-title-link .heading-accent{color:var(--accent)}
@media(hover:hover) and (pointer:fine){
 .hero-action .button:hover,.plan-button:hover{transform:translateY(-2px)}
 .hero-action .button:hover>span{transform:rotate(-45deg);background:rgba(16,16,16,.15)}
 .plan-button:hover>span{transform:rotate(45deg);background:rgba(243,242,235,.2)}
 .text-link>span{transition:transform .3s cubic-bezier(.22,1,.36,1)}
 .text-link:hover>span{transform:translate(3px,-3px)}
}
@media(max-width:700px){
 .nav-contact{padding:11px 16px}
 .hero-action .button,.plan-button{min-height:54px;padding:8px 8px 8px 21px;gap:23px}
 .hero-action .button>span,.plan-button>span{width:38px;height:38px;flex-basis:38px;font-size:21px}
 .project-hover{padding:10px 14px}
}

/* Keep the approved, longer contact address and copy action inside narrow screens. */
@media(max-width:700px){.email-row{gap:12px}.email-row>a{font-size:clamp(16px,4.65vw,23px)}}
