:root{--font-body:'Switzer',Arial,sans-serif;--font-display:'Boska',Georgia,serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:clamp(2rem,2.9vw,2.75rem);--text-hero:clamp(3.5rem,6.2vw,6rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--color-bg:oklch(97% .009 85);--color-surface:oklch(94% .012 85);--color-text:oklch(24% .008 150);--color-muted:oklch(45% .008 85);--color-line:oklch(24% .008 150 / .18);--color-accent:oklch(47% .044 75);--dark:#171b19;--ivory:#f2f0e8;--sand:#c0ae92;--gutter:clamp(1.5rem,6vw,6rem)}
[data-theme=dark]{--color-bg:oklch(22% .008 150);--color-surface:oklch(25% .008 150);--color-text:oklch(93% .012 85);--color-muted:oklch(76% .012 85);--color-line:oklch(93% .012 85 / .2);--color-accent:oklch(76% .042 75)}
body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.7}.wrap{width:100%;max-width:1536px;margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--space-24)}.eyebrow{font-size:var(--text-xs);font-weight:500;letter-spacing:.17em;line-height:1.6}.header{height:100px;padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);background:var(--dark);color:var(--ivory);position:relative;z-index:20;border-bottom:1px solid #ffffff1a}.brand{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.monogram{width:48px;height:48px;color:var(--sand)}.brand-name{font-size:var(--text-lg);letter-spacing:.17em;line-height:1.5}.brand-name>span{display:block;font-size:var(--text-xs);letter-spacing:.13em;color:#c1c2ba}.navigation{display:flex;align-items:center;gap:var(--space-8);margin-left:auto;font-size:var(--text-sm)}.navigation>a{padding-block:var(--space-3)}.navigation>a:hover{color:var(--sand)}.navigation .nav-contact{border:1px solid #969c9066;padding:var(--space-3) var(--space-5);display:flex;gap:var(--space-6)}.header-tools{display:flex}.theme-toggle,.menu-toggle{height:44px;width:44px;border:0;background:transparent}.theme-toggle{font-size:1.5rem;color:var(--sand)}.menu-toggle{display:none}.hero{min-height:690px;height:calc(100svh - 100px);max-height:880px;position:relative;background:#141715;color:var(--ivory);overflow:hidden;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center 46%}.hero-shade{background:linear-gradient(90deg,#111714e8 0%,#111714c4 24%,#11171440 58%,#11171405 80%),linear-gradient(0deg,#111714a6,transparent 20%)}.hero-content{position:relative;z-index:1;padding-bottom:var(--space-16)}.hero-label{color:#d4c8b4;display:flex;gap:var(--space-4);align-items:center;margin-bottom:var(--space-8)}.small-line{width:32px;height:1px;background:var(--sand)}h1,h2{font-family:var(--font-display);font-weight:400;line-height:1.08}h1{font-size:var(--text-hero);letter-spacing:-.035em;max-width:790px}h1 span{color:#c3b398}.hero-description{color:#d6d9d1;font-size:var(--text-base);line-height:1.7;margin-top:var(--space-6);margin-bottom:var(--space-8)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:var(--space-8);padding:var(--space-4) var(--space-6);font-size:var(--text-sm);line-height:1.5;min-height:54px;border:1px solid var(--color-text);background:var(--color-text);color:var(--color-bg);transition:background .2s,color .2s}.button-light{background:var(--ivory);border-color:var(--ivory);color:#222922}.button-light:hover{background:#c4b398;border-color:#c4b398}.button span,.text-link span{font-size:var(--text-lg)}.hero-bottom{position:absolute;bottom:var(--space-6);display:flex;align-items:center;justify-content:space-between;color:#d1d1c7;font-size:var(--text-xs);letter-spacing:.13em}.hero-bottom a{letter-spacing:.04em;display:flex;align-items:center;gap:var(--space-8);min-height:44px}.principles-strip{display:flex;align-items:center;justify-content:center;gap:var(--space-12);font-size:var(--text-xs);letter-spacing:.15em;padding:var(--space-6) var(--space-4);border-bottom:1px solid var(--color-line);color:var(--color-muted)}.principles-strip>span:nth-child(even){color:var(--color-accent)}h2{font-size:var(--text-xl);letter-spacing:-.025em}h2 span{color:var(--color-muted)}.section-heading .eyebrow,.about-copy .eyebrow,.process .eyebrow,.faq .eyebrow{color:var(--color-accent);margin-bottom:var(--space-6)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}.approach h2{font-size:clamp(2.5rem,4vw,3.75rem)}.approach-body{padding-top:var(--space-10);max-width:580px}.approach-body p,.about-copy>p:not(.eyebrow){margin-bottom:var(--space-5);color:var(--color-muted)}.approach-body .lead{color:var(--color-text);font-size:var(--text-lg);max-width:360px;line-height:1.6}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-8);min-height:44px;padding-block:var(--space-2);font-size:var(--text-sm);border:0;border-bottom:1px solid var(--color-line);background:transparent;color:var(--color-text)}.text-link:hover{color:var(--color-accent);border-color:var(--color-accent)}.services{background:var(--color-surface);padding-block:var(--space-20)}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-8);margin-bottom:var(--space-12)}.section-top .eyebrow{color:var(--color-accent);margin-bottom:var(--space-5)}.section-top>p{font-size:var(--text-sm);color:var(--color-muted)}.service{border-top:1px solid var(--color-line)}.service:last-child{border-bottom:1px solid var(--color-line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service summary{display:grid;grid-template-columns:56px 1fr auto 24px;align-items:center;gap:var(--space-6);padding-block:var(--space-6)}.service-number{color:var(--color-accent);font-size:var(--text-sm)}h3{font-size:var(--text-lg);font-weight:400;line-height:1.5}.service h3{font-family:var(--font-display);font-size:clamp(1.625rem,2.3vw,2rem)}.service-tag{font-size:var(--text-xs);letter-spacing:.12em;color:var(--color-muted);margin-right:var(--space-8)}.expand{position:relative;width:16px;height:16px;flex-shrink:0}.expand:before,.expand:after{content:"";position:absolute;background:currentColor;left:0;top:7px;width:16px;height:1px}.expand:after{transform:rotate(90deg);transition:transform .2s}details[open]>summary .expand:after{transform:rotate(0)}.service-content{padding:0 var(--space-12) var(--space-8) var(--space-20);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-12)}.service-content p{max-width:590px;color:var(--color-muted);font-size:var(--text-sm)}.service-content a{white-space:nowrap}.service-note{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-5)}.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,8rem);align-items:center}.about-visual{position:relative}.about-visual img{width:100%;height:610px;object-fit:cover;background:var(--color-surface)}.about-visual figcaption{position:absolute;bottom:0;left:0;right:0;color:var(--ivory);background:linear-gradient(transparent,#131713c7);padding:var(--space-12) var(--space-6) var(--space-6);font-size:var(--text-xs);letter-spacing:.14em}.about-copy h2{margin-bottom:var(--space-8)}.about-copy{max-width:500px}.signature{font-family:var(--font-display);font-size:var(--text-xl);margin-top:var(--space-8);margin-bottom:var(--space-3)}.process{padding-block:var(--space-20);background:var(--color-surface)}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:36px 1fr;gap:var(--space-6);padding-block:var(--space-6);border-bottom:1px solid var(--color-line)}.steps li:first-child{padding-top:0}.steps li>span{font-size:var(--text-xs);color:var(--color-accent);padding-top:var(--space-1)}.steps h3{margin-bottom:var(--space-2)}.steps p{font-size:var(--text-sm);color:var(--color-muted);max-width:450px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-24)}.faq-list details{border-bottom:1px solid var(--color-line)}.faq-list details:first-child{border-top:1px solid var(--color-line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);padding-block:var(--space-5);font-size:var(--text-base)}.faq-list p{color:var(--color-muted);font-size:var(--text-sm);padding:0 var(--space-8) var(--space-6) 0}.contact{background:var(--dark);color:var(--ivory);padding-block:var(--space-24)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}.contact .eyebrow{color:var(--sand)}.contact h2{font-size:clamp(2.75rem,4.5vw,4.5rem);margin-block:var(--space-8)}.contact h2 span{color:var(--sand)}.contact-copy>p:not(.eyebrow){color:#c7cbc3;font-size:var(--text-sm)}.contact-rule{width:56px;height:1px;background:var(--sand);margin-block:var(--space-8)}.contact-copy .small{font-size:var(--text-xs)!important}.form-wrap{padding-top:var(--space-2)}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.form-heading h3{font-family:var(--font-display);font-size:var(--text-xl)}.form-heading .eyebrow{font-size:var(--text-xs);letter-spacing:.08em}.form-notice{font-size:var(--text-xs);color:#bec4b9;line-height:1.65;border-bottom:1px solid #ffffff2b;padding-bottom:var(--space-5);margin-bottom:var(--space-6)}label{display:block;font-size:var(--text-sm);margin-bottom:var(--space-5)}input,textarea,select{width:100%;display:block;margin-top:var(--space-2);border:1px solid #73807380;background:#ffffff03;color:var(--ivory);padding:var(--space-3) var(--space-4);font-size:var(--text-base);min-width:0}input::placeholder,textarea::placeholder{color:#a7afa3;font-size:var(--text-sm)}select{min-height:51px}select option{background:var(--dark);color:var(--ivory)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.submit{width:100%}.form-small{color:#a7afa3;font-size:var(--text-xs);margin-top:var(--space-3)}.draft-result h3{margin-bottom:var(--space-3)}.draft-result p{font-size:var(--text-sm);color:#c7cbc3}.draft-result textarea{margin-block:var(--space-5)}.draft-actions{display:flex;flex-wrap:wrap;gap:var(--space-4)}.draft-actions .text-link{color:var(--ivory);border-color:#ffffff40}.footer{padding-block:var(--space-10);font-size:var(--text-xs)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-line)}.footer-brand{font-size:var(--text-base);letter-spacing:.18em}.footer-top p{color:var(--color-muted)}.back-top{padding-block:var(--space-3)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-5);color:var(--color-muted)}.footer-bottom button{background:transparent;border:0;font-size:var(--text-xs);min-height:44px}dialog{max-width:640px;width:calc(100% - 32px);padding:var(--space-12);border:1px solid var(--color-line);background:var(--color-bg);color:var(--color-text);max-height:85svh}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}dialog h2{margin-block:var(--space-6)}dialog p{font-size:var(--text-sm);margin-bottom:var(--space-4);color:var(--color-muted)}.dialog-close{position:absolute;right:var(--space-3);top:var(--space-3);width:44px;height:44px;border:0;background:transparent;font-size:1.75rem}.dialog-done{margin-top:var(--space-4)}
.experience{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-24);border-top:1px solid var(--color-line);padding-top:var(--space-20)}.experience .eyebrow{color:var(--color-accent);margin-bottom:var(--space-6)}.experience-context{color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-6);max-width:350px}.experience-body>h3{font-family:var(--font-display);font-size:var(--text-xl);margin-bottom:var(--space-2)}.experience-employer{font-size:var(--text-sm);color:var(--color-muted)}.experience-duties{padding-left:var(--space-5);margin-block:var(--space-6);color:var(--color-muted);font-size:var(--text-sm)}.experience-duties li{padding-left:var(--space-2);margin-bottom:var(--space-3)}.skills-block{border-top:1px solid var(--color-line);padding-top:var(--space-6);margin-top:var(--space-8)}.skills-block h3{margin-bottom:var(--space-4)}.skills-block p{color:var(--color-muted);font-size:var(--text-sm);margin-bottom:var(--space-4)}.contact-copy a{display:inline-block;min-height:44px;overflow-wrap:anywhere}.contact-copy a:hover{text-decoration:underline;text-underline-offset:5px}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}.hero-label{max-width:100%;flex-wrap:nowrap}@media(max-width:800px){.experience{gap:var(--space-10);grid-template-columns:1fr}.experience-context{max-width:none}.hero-label{letter-spacing:.07em}}@media(max-width:400px){.hero-label{font-size:var(--text-xs);letter-spacing:.02em;gap:var(--space-2)}.hero-label .small-line{width:12px;flex-shrink:0}.brand-name{letter-spacing:.09em}}
.personal-headline{font-size:clamp(2.65rem,5.8vw,5.6rem);max-width:840px}@media(max-width:600px){h1.personal-headline{font-size:clamp(2.25rem,9.6vw,3.5rem)}}
@media(min-width:1600px){.header{padding-inline:max(var(--gutter),calc((100vw - 1344px)/2))}}
@media(max-width:1100px){.header{gap:var(--space-4)}.brand-name{font-size:var(--text-sm)}.brand-name>span{font-size:var(--text-xs);letter-spacing:.03em}.navigation{gap:var(--space-5)}.navigation .nav-contact{padding-inline:var(--space-3);gap:var(--space-3)}.service-tag{display:none}.service summary{grid-template-columns:36px 1fr 24px}.service-content{padding-left:var(--space-16);display:block}.service-content a{margin-top:var(--space-4)}.about-visual img{height:550px}.approach,.process-grid,.contact-grid,.faq{gap:var(--space-12)}}
@media(max-width:800px){.header{height:84px}.header-tools{margin-left:auto}.monogram{width:40px;height:40px}.brand{gap:var(--space-3)}.brand-name{font-size:var(--text-sm);letter-spacing:.12em}.brand-name>span{font-size:var(--text-xs);letter-spacing:0}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2)}.menu-toggle span{height:1px;width:23px;background:var(--ivory)}.navigation{display:none;position:absolute;top:84px;left:0;right:0;background:var(--dark);padding:var(--space-6) var(--gutter);border-top:1px solid #ffffff22;box-shadow:0 14px 24px #0004}.navigation.open{display:flex;align-items:stretch;flex-direction:column;gap:var(--space-3)}.navigation .nav-contact{justify-content:space-between}.hero{height:730px;min-height:0;max-height:none}.hero-image{object-position:66% center}.hero-shade{background:linear-gradient(90deg,#101713ef,#1017138a 65%,#10171320),linear-gradient(0deg,#101713bb,transparent 70%)}h1{font-size:clamp(3.4rem,8.5vw,4.8rem)}.hero-content{padding-bottom:var(--space-12)}.hero-description{font-size:var(--text-sm)}.hero-label{margin-bottom:var(--space-6)}.hero-bottom>span{display:none}.hero-bottom{justify-content:flex-start}.principles-strip{gap:var(--space-6);font-size:var(--text-xs);letter-spacing:.06em}.principles-strip>span:last-child,.principles-strip>span:nth-child(4){display:none}.section{padding-block:var(--space-16)}.approach{gap:var(--space-8)}.approach h2{font-size:var(--text-xl)}.approach-body{padding-top:0}.section-top{align-items:flex-start;flex-direction:column;gap:var(--space-5)}.about{gap:var(--space-10)}.about-visual img{height:530px}.about-copy p{font-size:var(--text-sm)}.about-copy h2{font-size:var(--text-xl)}.about-visual figcaption{font-size:var(--text-xs);letter-spacing:.04em;padding-inline:var(--space-4)}.process-grid{grid-template-columns:.85fr 1.15fr;gap:var(--space-8)}.faq{grid-template-columns:1fr;gap:var(--space-8)}.contact-grid{gap:var(--space-10)}.contact-grid .form-row{grid-template-columns:1fr;gap:0}.form-heading{align-items:flex-start;flex-direction:column}.contact{padding-block:var(--space-16)}.contact h2{font-size:clamp(2.5rem,5.5vw,4rem)}.footer-top p{display:none}}
@media(max-width:600px){:root{--gutter:var(--space-6)}.header{padding-inline:var(--space-4);gap:var(--space-2)}.brand-name{font-size:var(--text-xs);letter-spacing:.15em}.brand-name>span{max-width:170px;letter-spacing:0;line-height:1.25;margin-top:var(--space-1)}.brand{gap:var(--space-2)}.header-tools{gap:0}.theme-toggle{width:36px}.hero{height:720px}.hero-content{padding-top:var(--space-6)}h1{font-size:clamp(3.15rem,10.7vw,4rem);line-height:1.04}.hero-label{letter-spacing:.1em;font-size:var(--text-xs);gap:var(--space-3)}.small-line{width:20px}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#111714e0,#111714a3 55%,#11171460),linear-gradient(0deg,#111714b5,transparent 60%)}.hero-description{line-height:1.8;max-width:320px}.desktop-break{display:none}.hero-bottom{bottom:var(--space-4)}.principles-strip{justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);letter-spacing:0;padding-inline:var(--space-6)}.principles-strip>span:nth-child(3){text-align:right}.approach,.about,.process-grid,.contact-grid{grid-template-columns:1fr}.approach h2{font-size:2.75rem}.approach h2 br:nth-child(2){display:none}.approach-body{max-width:none}.approach-body .lead{max-width:300px}.services{padding-block:var(--space-16)}.service summary{grid-template-columns:24px 1fr 16px;gap:var(--space-4);padding-block:var(--space-6)}.service h3{font-size:1.625rem}.service-content{padding-left:var(--space-10);padding-right:0}.service-content p{font-size:var(--text-sm)}.service-content .text-link{gap:var(--space-4)}.about-visual img{height:420px;object-position:center 65%}.about-copy{max-width:none}.about-copy h2{font-size:2.5rem}.about-copy p{font-size:var(--text-base)}.about-copy h2 br:last-child{display:none}.process{padding-block:var(--space-16)}.process-grid{gap:var(--space-10)}.contact-copy h2{font-size:3.75rem}.contact-copy>p:not(.eyebrow){font-size:var(--text-base)}.contact-copy .contact-rule,.contact-copy .small{display:none}.contact-grid{gap:var(--space-12)}.form-heading{flex-direction:row;align-items:center}.form-heading h3{font-size:2rem}.form-heading .eyebrow{font-size:var(--text-xs)}.contact-grid .form-row{grid-template-columns:1fr}.footer-top{flex-wrap:wrap;gap:var(--space-3);padding-bottom:var(--space-5)}.footer-brand{font-size:var(--text-sm)}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;column-gap:var(--space-6);row-gap:var(--space-1)}dialog{padding:var(--space-8)}}
