:root{--paper:#f7f5ef;--ink:#242621;--muted:#666960;--line:#d8d8ce;--yellow:#e4c54c;--dark:#252a27;--light:#edece4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #99751a;outline-offset:6px}img{display:block;max-width:100%}p{margin:0 0 20px}.container{width:min(1240px,calc(100% - 100px));margin-inline:auto}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:var(--yellow);z-index:100}.skip:focus{top:10px}.site-header{background:rgba(247,245,239,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{height:94px;display:flex;justify-content:space-between;align-items:center}.brand{font-size:20px;line-height:1.06;font-weight:700;letter-spacing:-.7px}.brand>span{display:block}.brand-dot{color:#ab8915}.navigation{display:flex;align-items:center;gap:35px;font-size:13px}.navigation>a:not(.nav-cta):hover{color:#826719}.nav-cta{display:flex;gap:35px;align-items:center;border:1px solid var(--ink);padding:10px 19px;border-radius:3px}.nav-cta:hover{background:var(--yellow)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;padding-top:75px;padding-bottom:73px;align-items:center}.eyebrow{font-size:10px;line-height:1.5;font-weight:700;letter-spacing:1.8px;margin:0 0 27px;display:flex;gap:10px;align-items:center}.small-square{display:inline-block;width:7px;height:7px;background:#ad8b20;flex-shrink:0}h1{font-size:clamp(58px,6.2vw,85px);line-height:1.03;letter-spacing:-4.8px;margin:0 0 30px;font-weight:500}.highlight{position:relative;z-index:0}.highlight:after{content:'';position:absolute;left:0;bottom:3px;width:100%;height:19px;background:var(--yellow);z-index:-1}.hero-intro{font-size:18px;line-height:1.55;max-width:445px;margin-bottom:16px}.hero-audience{font-size:14px;color:var(--muted);line-height:1.7}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;gap:32px;align-items:center;justify-content:center;font-size:13px;padding:16px 21px;border:1px solid var(--ink);border-radius:3px;transition:background .2s,transform .2s}.dark{background:var(--ink);color:var(--paper)}.button:hover{background:#41483e;transform:translateY(-2px)}.text-link{font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:5px;display:inline-flex;gap:18px}.text-link:hover{color:#826719}.hero-visual{position:relative;align-self:center;margin-top:10px;margin-bottom:35px}.photo-frame{height:510px;background:#bbbcb8;overflow:hidden;border-radius:2px 110px 2px 2px}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:53% center}.photo-label{position:absolute;left:0;right:0;bottom:0;padding:45px 26px 22px;background:linear-gradient(transparent,rgba(22,25,23,.84));color:white}.photo-label>span{font-size:17px;display:block}.photo-label small{font-size:11px;color:#ddd}.experience-stamp{position:absolute;top:-23px;right:-21px;width:115px;height:115px;border-radius:50%;background:var(--yellow);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(8deg)}.experience-stamp strong{font-size:38px;font-weight:500;line-height:1.15;letter-spacing:-2px}.experience-stamp span{font-size:8px;font-weight:700;text-align:center;line-height:1.35;letter-spacing:1.2px}.photo-index{position:absolute;bottom:-31px;left:0;font-size:8px;letter-spacing:2px;color:var(--muted)}.positioning{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;font-size:12px}.positioning>span{color:var(--muted)}.positioning>div{display:flex;gap:28px;align-items:center}.positioning i{font-style:normal;color:#a5a69a}.section{padding-top:100px;padding-bottom:100px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:85px;margin-bottom:49px}.section-heading .eyebrow{margin-bottom:21px}h2{font-size:clamp(32px,3.3vw,45px);font-weight:500;line-height:1.16;letter-spacing:-1.8px;margin:0}h3{font-size:20px;line-height:1.3;letter-spacing:-.5px;margin:0 0 15px;font-weight:500}.section-heading>p{font-size:15px;color:var(--muted);max-width:440px;margin:0 0 2px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:55px 1fr 1fr 22px;gap:12px;align-items:center;padding:26px 0}.service summary::-webkit-details-marker{display:none}.service-number{font-size:11px;color:#7c8074}.service-title{font-size:23px;letter-spacing:-.8px}.service-summary{font-size:12px;color:var(--muted)}.plus{position:relative;display:block;height:18px;width:18px}.plus:before,.plus:after{content:'';position:absolute;top:8px;width:16px;height:1px;background:var(--ink)}.plus:after{transform:rotate(90deg);transition:transform .2s}.service[open] .plus:after{transform:rotate(0)}.service[open] .service-number{color:#80620a}.service-body{padding:4px 34px 34px 67px;display:grid;grid-template-columns:1fr 1fr;gap:65px}.service-body>p{font-size:15px;color:var(--muted);max-width:370px}.service-body ul{list-style:none;padding:0;margin:0 0 23px;font-size:14px}.service-body li{padding:4px 0 4px 15px;position:relative}.service-body li:before{content:'';width:4px;height:4px;background:#ae8c20;position:absolute;left:0;top:14px}.service-body a{font-size:12px;display:inline-flex;gap:20px;border-bottom:1px solid var(--line);padding-bottom:4px}.service summary:hover .service-title{color:#896b18}.approach{background:var(--dark);color:var(--paper);padding:90px 0}.approach .eyebrow{color:#e4c54c}.approach .section-heading>p{color:#bdc2b9}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:60px}.steps article{border-top:1px solid #555b52;padding-top:23px}.step-number{color:var(--yellow);font-size:12px;display:block;margin-bottom:35px}.steps h3{font-size:21px;max-width:230px}.steps p{color:#bdc2b9;font-size:14px;max-width:300px}.about{display:grid;grid-template-columns:1.05fr 1fr;gap:120px}.about-intro h2{margin-bottom:30px}.about-intro>p{font-size:15px;color:var(--muted)}.about-intro>p.about-lead{font-size:19px;color:var(--ink)}.about-intro .eyebrow{font-size:10px;color:var(--ink)}.about-intro .text-link{margin-top:8px}.education{margin-top:38px;padding-top:23px;border-top:1px solid var(--line)}.education>span{font-size:9px;letter-spacing:1.5px;font-weight:700}.education p{font-size:12px;line-height:1.8;color:var(--muted);margin:10px 0 0}.timeline>.eyebrow{margin-bottom:24px}.timeline article{position:relative;border-left:1px solid var(--line);padding:0 0 28px 25px}.timeline article:before{content:'';position:absolute;left:-4px;top:5px;width:7px;height:7px;background:#c5c7bc;border-radius:50%}.timeline article:first-of-type:before{background:#ac8519}.timeline article:last-child{padding-bottom:0}.timeline time{display:block;font-size:9px;letter-spacing:1px;color:var(--muted);margin-bottom:9px}.timeline h3{font-size:19px;margin-bottom:6px}.timeline p{font-size:12px;color:var(--muted);margin:0;max-width:330px}.contact{background:var(--yellow);padding:83px 0}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}.contact .eyebrow{margin-bottom:22px}.contact h2{font-size:clamp(36px,4vw,54px);letter-spacing:-2.3px;margin-bottom:25px}.contact h2 span{font-family:Georgia,serif;font-style:italic}.contact p{font-size:14px;line-height:1.8}.contact .button{margin-top:8px}.contact-item{display:block;position:relative;padding:21px 25px 21px 0;border-bottom:1px solid #ad973f}.contact-item>span{font-size:8px;letter-spacing:1.5px;display:block;margin-bottom:8px;font-weight:700}.contact-item strong{font-size:clamp(15px,1.5vw,20px);font-weight:400;letter-spacing:-.4px;overflow-wrap:anywhere}.contact-item i{position:absolute;right:0;top:46px;font-style:normal;font-size:20px}.contact-item:hover strong{text-decoration:underline}.contact-info .location{display:flex;align-items:center;gap:9px;font-size:11px;margin:27px 0 0}.contact .small-square{background:var(--ink);width:5px;height:5px}footer{padding:30px 0}.footer{display:flex;align-items:center;gap:30px;font-size:10px;color:var(--muted)}.footer-brand{font-size:15px;color:var(--ink);font-weight:700;letter-spacing:-.6px}.footer-brand span{color:#a4841e}.footer>span:nth-child(3){margin-left:auto}.back-top{color:var(--ink)}
@media(min-width:1500px){.hero{padding-top:95px;padding-bottom:90px}.photo-frame{height:550px}}
@media(max-width:1050px){.container{width:calc(100% - 64px)}.hero{gap:35px}h1{font-size:65px}.photo-frame{height:470px}.hero-actions{gap:20px}.section-heading{gap:45px}.service-summary{font-size:11px}.service-title{font-size:20px}.service summary{grid-template-columns:40px 1fr .9fr 18px}.service-body{padding-left:52px;gap:35px}.about{gap:65px}.contact-grid{gap:50px}.steps,.experience-stamp{right:-10px}}
@media(max-width:760px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.nav{height:77px}.brand{font-size:18px}.menu-toggle{display:flex;gap:14px;align-items:center;background:transparent;border:1px solid var(--line);padding:7px 12px;font-size:12px;border-radius:3px}.navigation{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:20px;box-shadow:0 12px 15px #24262112;border-bottom:1px solid var(--line)}.navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.navigation>a{padding:12px}.navigation .nav-cta{margin-top:8px;justify-content:space-between}.hero{grid-template-columns:1fr;padding:45px 0 50px;gap:37px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:25px}h1{font-size:clamp(56px,12vw,82px);letter-spacing:-3.4px}.hero-intro{font-size:17px;max-width:480px}.hero-audience{font-size:13px}.hero-actions{gap:24px}.button{font-size:12px;padding:15px 18px;gap:24px}.text-link{font-size:12px}.hero-visual{max-width:520px;width:100%;margin:0 auto 30px}.photo-frame{height:auto;aspect-ratio:1.12;border-top-right-radius:85px}.experience-stamp{width:95px;height:95px;top:-13px;right:5px}.experience-stamp strong{font-size:32px}.experience-stamp span{font-size:7px}.photo-label{padding:40px 20px 18px}.photo-label>span{font-size:15px}.positioning{display:block;padding:20px 0}.positioning>span{font-size:11px;display:block;margin-bottom:12px}.positioning>div{justify-content:space-between;gap:6px;font-size:11px}.section{padding:65px 0}.section-heading{grid-template-columns:1fr;gap:23px;margin-bottom:30px}h2{font-size:35px;letter-spacing:-1.5px}.section-heading>p{font-size:14px;max-width:560px}.section-heading .eyebrow{margin-bottom:18px}.service summary{grid-template-columns:25px 1fr 18px;padding:23px 0;gap:8px}.service-summary{display:none}.service-title{font-size:20px}.service-body{grid-template-columns:1fr;padding:0 16px 25px 33px;gap:0}.service-body>p{font-size:14px;max-width:100%}.service-body ul{font-size:13px}.approach{padding:65px 0}.steps{grid-template-columns:1fr;gap:23px;margin-top:35px}.step-number{margin-bottom:18px}.steps h3,.steps p{max-width:100%}.steps p{margin-bottom:0}.about{grid-template-columns:1fr;gap:45px}.about-intro h2{margin-bottom:24px}.timeline article{padding-bottom:25px}.timeline p{max-width:100%}.contact{padding:60px 0}.contact-grid{grid-template-columns:1fr;gap:25px}.contact h2{font-size:42px}.contact-item strong{font-size:18px}.footer{flex-wrap:wrap;gap:12px 24px}.footer-brand{width:100%}.footer>span:nth-child(3){margin-left:0}.back-top{margin-left:auto}.desktop-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Readability and line illustrations */
.navigation{font-size:15px}
.eyebrow{font-size:12px;letter-spacing:1.7px}
.hero-intro{font-size:19px}
.hero-audience{font-size:16px}
.button,.text-link{font-size:15px}
.photo-label>span{font-size:19px}
.photo-label small{font-size:14px}
.photo-index{font-size:10px;letter-spacing:1.7px}
.positioning{font-size:14px}
.section-heading>p{font-size:17px;line-height:1.7}
.service summary{grid-template-columns:75px 1fr 1fr 22px;gap:18px;padding:25px 0}
.service-title{font-size:25px}
.service-summary{font-size:14px;line-height:1.5}
.service-icon{display:flex;width:60px;height:64px;align-items:center;justify-content:center;color:var(--ink)}
.service-icon svg{width:56px;height:56px;flex-shrink:0;transition:transform .2s}
.service summary:hover .service-icon svg{transform:translateY(-2px)}
.service-body{padding-left:93px;gap:45px}
.service-body>p,.service-body ul{font-size:16px;line-height:1.75}
.service-body a{font-size:14px}
.service-body li:before{top:16px}
.steps{counter-reset:steps;margin-top:50px;gap:48px}
.steps article{padding-top:18px;counter-increment:steps}
.step-number{font-size:88px;font-weight:400;letter-spacing:-6px;line-height:1.1;margin-bottom:28px;color:var(--yellow)}
.steps h3{font-size:23px;max-width:300px}
.steps p{font-size:16px;line-height:1.75;max-width:330px}
.approach{padding-bottom:80px}
.about-intro>p{font-size:17px;line-height:1.75}
.about-intro>p.about-lead{font-size:21px}
.about-intro .eyebrow{font-size:12px}
.education>span{font-size:11px}
.education p{font-size:14px}
.timeline time{font-size:12px}
.timeline h3{font-size:21px}
.timeline p{font-size:15px;line-height:1.65}
.timeline article{padding-bottom:30px}
.contact p{font-size:16px}
.contact-item>span{font-size:11px}
.contact-item strong{font-size:clamp(17px,1.6vw,21px)}
.contact-info .location{font-size:14px}
.footer{font-size:12px}
@media(max-width:1050px){
.service summary{grid-template-columns:64px 1fr .9fr 18px;gap:12px}
.service-title{font-size:23px}
.service-summary{font-size:13px}
.service-body{padding-left:76px;gap:30px}
.navigation{gap:25px}
.steps{gap:30px}
}
@media(max-width:760px){
.hero .eyebrow{font-size:11px;letter-spacing:1.4px}
.hero-intro{font-size:18px}
.hero-audience{font-size:15px}
.button,.text-link{font-size:14px}
.hero-actions{gap:20px}
.photo-label>span{font-size:18px}
.photo-label small{font-size:13px}
.photo-index{font-size:9px}
.positioning>span{font-size:13px}
.positioning>div{font-size:12px;gap:4px}
.section-heading>p{font-size:16px}
.service summary{grid-template-columns:48px 1fr 18px;gap:13px;padding:22px 0}
.service-icon{width:46px;height:50px}
.service-icon svg{width:45px;height:45px}
.service-title{font-size:22px;line-height:1.25}
.service-body{padding:0 0 27px 0;gap:0}
.service-body>p,.service-body ul{font-size:16px}
.service-body a{font-size:14px}
.steps{gap:30px;margin-top:35px}
.steps article{display:grid;grid-template-columns:80px 1fr;column-gap:20px;padding-top:23px}
.step-number{grid-row:1 / span 2;font-size:64px;letter-spacing:-4px;margin:0;line-height:1}
.steps h3{font-size:22px;max-width:100%;margin:1px 0 12px}
.steps p{font-size:16px;max-width:100%;margin:0}
.approach{padding-bottom:60px}
.about-intro>p{font-size:16px}
.about-intro>p.about-lead{font-size:20px}
.timeline p{max-width:100%}
.contact-item strong{font-size:19px}
.contact-info .location{font-size:13px}
.footer{gap:12px 18px}
}
@media(max-width:380px){.service-title{font-size:20px}.steps article{grid-template-columns:64px 1fr;column-gap:16px}.step-number{font-size:56px}.positioning>div{font-size:11px}}
