.approach-photo{aspect-ratio:auto;height:auto;object-fit:contain}
.hero h1 em{color:#c3b49f}
.story img[src="assets/img_1484.jpg"]{object-position:62% 45%;height:auto;max-height:570px;object-fit:contain}
:root{--forest:#32555b;--forest2:#32555b;--cream:#f8f3e9;--sand:#efe8da;--clay:#a36a49;--ink:#2c3130;--muted:#2c3130}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1240px,calc(100% - 72px));margin:auto}
.topbar{background:var(--forest2);color:#f8f3e9;text-align:center;padding:10px 16px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:13px;min-width:220px}
.brand img{width:49px;height:49px}
.brand span{font-weight:700;letter-spacing:.16em;font-size:14px;line-height:1.3}
.brand small{display:block;font-size:9px;letter-spacing:.24em;color:var(--muted);margin-top:5px}
.navlinks{display:flex;gap:29px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.02em}
.navlinks a:not(.btn):hover{text-decoration:underline;text-underline-offset:5px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:16px 24px;background:var(--clay);color:#f8f3e9;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-2px);background:#a36a49}
.btn.light{background:var(--cream);color:var(--forest)}
.btn.outline{background:transparent;border:1px solid #c3b49f;color:var(--forest)}
.hero{position:relative;min-height:720px;display:flex;align-items:center;color:#f8f3e9;background:#32555b url('assets/IMG_4151.jpg') center 47%/cover no-repeat}
.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(44,49,48,.9),rgba(44,49,48,.55) 47%,rgba(44,49,48,.08) 95%)}
.hero-content{position:relative;padding:95px 0 100px}
.kicker{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.25em}
.hero .kicker{color:#efe8da}
.hero h1{font-family:'Georgia Pro',Georgia,serif;font-weight:400;font-size:clamp(68px,8.6vw,132px);line-height:.91;letter-spacing:-.035em;max-width:770px;margin:25px 0}
.hero h1 em{font-weight:400;color:#efe8da}
.hero p{font-size:17px;line-height:1.75;max-width:505px;margin:30px 0 33px;color:#f8f3e9}
.hero-note{position:absolute;right:0;bottom:30px;color:#f8f3e9;font-size:11px;letter-spacing:.15em;text-transform:uppercase}
.stripe{display:grid;grid-template-columns:repeat(3,1fr);background:var(--forest);color:#f8f3e9;padding:27px max(36px,calc((100vw - 1240px)/2));gap:30px}
.stripe div{border-left:1px solid #8a907c;padding-left:24px}
.stripe strong{display:block;font-size:13px;letter-spacing:.08em}
.stripe small{display:block;font-size:11px;color:#efe8da;margin-top:7px}
.section{padding:112px 0}
.section-head{max-width:750px}
.section h2,.split h2,.assessment h2{font-family:'Georgia Pro',Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:1.04;font-size:clamp(44px,5.2vw,76px);margin:17px 0 24px}
.section p,.split p{line-height:1.85;color:#2c3130;font-size:16px}
.lead{max-width:700px}
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center}
.split-image{position:relative}
.split-image img{height:610px;width:100%;object-fit:cover}
.photo-label{position:absolute;bottom:22px;left:22px;background:var(--cream);padding:12px 17px;font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.mini-rule{width:50px;height:2px;background:var(--clay);margin:25px 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:21px;margin-top:55px}
.card{background:#f8f3e9}
.card img{width:100%;height:335px;object-fit:cover}
.card-body{padding:28px 28px 34px}
.number{color:var(--clay);font-size:11px;letter-spacing:.16em;font-weight:700}
.card h3{font-family:'Georgia Pro',Georgia,serif;font-size:32px;font-weight:400;line-height:1.15;margin:13px 0}
.card p{font-size:14px;margin:0;line-height:1.8}
.tint{background:#efe8da}
.story{background:var(--forest);color:#f8f3e9;overflow:hidden}
.story .split{grid-template-columns:1fr 1fr}
.story p{color:#efe8da}
.story img{height:570px;width:100%;object-fit:cover;object-position:center}
.story .kicker{color:#efe8da}
.story .btn{margin-top:16px}
.assessment{background:#c3b49f;padding:105px 0}
.assessment-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:center}
.assessment p{line-height:1.8;max-width:640px}
.assessment-details{background:var(--cream);padding:38px}
.assessment-details .price{font-family:'Georgia Pro',Georgia,serif;font-size:84px;line-height:1;color:var(--forest)}
.assessment-details p{font-size:13px;color:var(--muted)}
.assessment-details .btn{width:100%;margin-top:16px}
.foot{background:var(--forest2);color:#f8f3e9;padding:55px 0 26px}
.foot-grid{display:flex;justify-content:space-between;gap:30px;align-items:start}
.foot .brand small{color:#efe8da}
.foot p{font-size:13px;color:#efe8da;line-height:1.8}
.foot-bottom{border-top:1px solid #32555b;margin-top:45px;padding-top:20px;color:#efe8da;font-size:11px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
@media(max-width:950px){.navlinks a:not(.btn){display:none}.split,.story .split,.assessment-grid{grid-template-columns:1fr;gap:40px}.split-image img,.story img{height:440px}.cards{grid-template-columns:1fr 1fr}.stripe{padding:25px 36px}.hero-note{display:none}}
@media(max-width:650px){.container{width:calc(100% - 38px)}.topbar{font-size:9px}.nav{height:76px}.brand{min-width:0}.brand img{width:40px;height:40px}.brand span{font-size:10px}.brand small{font-size:8px}.navlinks .btn{padding:12px;font-size:9px}.hero{min-height:680px;background-position:58% center}.hero:before{background:linear-gradient(90deg,rgba(44,49,48,.88),rgba(44,49,48,.37))}.hero h1{font-size:clamp(60px,15vw,85px)}.hero p{font-size:15px}.hero-content{padding:70px 0}.stripe{grid-template-columns:1fr;gap:16px;padding:25px 20px}.stripe div{padding-left:14px}.section{padding:75px 0}.section h2,.split h2,.assessment h2{font-size:48px}.cards{grid-template-columns:1fr}.card img{height:300px}.assessment{padding:70px 0}.assessment-details{padding:26px}.foot-grid{display:block}.foot-grid>div:last-child{margin-top:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
.page-hero{position:relative;min-height:590px;background:#32555b url('assets/IMG_4011.jpg') center 47%/cover;display:flex;align-items:center;color:var(--cream)}
.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(44,49,48,.94),rgba(44,49,48,.6) 55%,rgba(44,49,48,.1))}
.page-hero .container{position:relative;padding-top:90px;padding-bottom:95px}
.page-hero h1{font-family:'Georgia Pro',Georgia,serif;font-weight:400;font-size:clamp(58px,8vw,112px);line-height:.97;max-width:800px;letter-spacing:-.03em;margin:20px 0 24px}
.page-hero h1 em{color:#efe8da}
.page-hero p{max-width:600px;font-size:17px;line-height:1.8;color:#f8f3e9}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.intro-grid h2{margin-top:0}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.step{border-top:2px solid var(--clay);padding-top:22px}
.step h3{font-family:'Georgia Pro',Georgia,serif;font-size:29px;font-weight:400;margin:12px 0}
.step p{font-size:14px;line-height:1.8}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:55px}
.feature{background:#f8f3e9;display:grid;grid-template-columns:43% 57%;min-height:320px}
.feature img{height:100%;width:100%;object-fit:cover}
.feature .copy{padding:31px 29px}
.feature h3{font:400 30px/1.15 'Georgia Pro',Georgia,serif;margin:12px 0}
.feature p{font-size:14px;line-height:1.75;margin:0}
.smallprint{font-size:13px;color:var(--muted);line-height:1.8}
.note-band{background:var(--forest);color:var(--cream);padding:52px 0}
.note-band p{max-width:830px;color:#efe8da;line-height:1.8;margin:12px 0 0}
.note-band h2{font:400 36px 'Georgia Pro',Georgia,serif;margin:0}
.faq{max-width:850px;margin:40px auto 0}
.faq details{border-top:1px solid #c3b49f;padding:22px 0}
.faq details:last-child{border-bottom:1px solid #c3b49f}
.faq summary{cursor:pointer;font-weight:700}
.faq p{font-size:14px;line-height:1.8}
.text-link{text-decoration:underline;text-underline-offset:4px}
@media(max-width:950px){.feature-grid{grid-template-columns:1fr}}
@media(max-width:650px){.page-hero{min-height:560px;background-position:58% center}.page-hero .container{padding-top:75px;padding-bottom:80px}.page-hero h1{font-size:clamp(56px,13vw,75px)}.intro-grid,.steps{grid-template-columns:1fr}.feature{grid-template-columns:1fr}.feature img{height:245px}.feature .copy{padding:26px}.note-band{padding:44px 0}}
.about-hero{position:relative;min-height:650px;background:#32555b url('assets/IMG_4151.jpg') 60% 42%/cover no-repeat;display:flex;align-items:center;color:var(--cream)}
.about-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,31,23,.94),rgba(12,31,23,.64) 48%,rgba(12,31,23,.12))}
.about-hero .container{position:relative;padding-top:95px;padding-bottom:105px}
.about-hero h1{font:400 clamp(64px,8vw,116px)/.98 'Georgia Pro',Georgia,serif;letter-spacing:-.035em;max-width:780px;margin:24px 0}
.about-hero h1 em{color:#efe8da}
.about-hero p{font-size:17px;line-height:1.8;max-width:530px;color:#efe8da}
.quote{font:400 clamp(32px,4vw,58px)/1.22 'Georgia Pro',Georgia,serif;max-width:920px;margin:0}
.eyebrow{color:var(--clay);font-weight:700;letter-spacing:.18em;font-size:11px;text-transform:uppercase}
.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.bio-grid img{width:100%;height:650px;object-fit:cover;object-position:center}
.bio-grid h2,.credentials h2{font:400 clamp(44px,5vw,72px)/1.05 'Georgia Pro',Georgia,serif;margin:18px 0 24px}
.bio-grid p,.credentials p{font-size:16px;line-height:1.9;color:#2c3130}
.credentials{background:#efe8da}
.credential-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:45px}
.credential{background:#f8f3e9;padding:42px}
.credential h3{font:400 35px/1.1 'Georgia Pro',Georgia,serif;margin:18px 0}
.credential strong{font-size:12px;letter-spacing:.12em;color:var(--clay)}
.credential p{font-size:14px}
.milestones{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}
.milestone{border-top:2px solid var(--clay);padding-top:25px}
.milestone h3{font:400 30px 'Georgia Pro',Georgia,serif}
.milestone p{line-height:1.8;color:#2c3130}
.about-photo{width:100%;height:520px;object-fit:cover}
.manifesto{background:var(--forest);color:var(--cream);padding:105px 0}
.manifesto .quote{color:var(--cream)}
.manifesto p{color:#efe8da;line-height:1.85;max-width:740px;margin-top:28px}
.portrait-note{font-size:11px;color:var(--muted);letter-spacing:.09em;margin-top:10px}
@media(max-width:850px){.bio-grid{grid-template-columns:1fr}.bio-grid img{height:470px}.credential-grid,.milestones{grid-template-columns:1fr}.about-hero{min-height:600px}}
@media(max-width:650px){.about-hero{min-height:580px;background-position:60% center}.about-hero .container{padding-top:75px;padding-bottom:80px}.about-hero h1{font-size:65px}.credential{padding:28px}.manifesto{padding:75px 0}.about-photo{height:320px}}
.contact-hero{position:relative;background:var(--forest);color:var(--cream);overflow:hidden}
.contact-hero:after{content:"";position:absolute;right:-11%;top:-40%;width:70%;height:155%;border:1px solid rgba(240,233,218,.13);border-radius:50%;pointer-events:none}
.contact-hero .container{position:relative;z-index:1;padding:115px 0 125px}
.contact-hero h1{font:400 clamp(64px,8vw,116px)/.98 'Georgia Pro',Georgia,serif;letter-spacing:-.035em;max-width:930px;margin:24px 0}
.contact-hero h1 em{color:#efe8da}
.contact-hero p{font-size:18px;line-height:1.8;max-width:660px;color:#efe8da}
.contact-hero .btn{margin-top:20px}
.contact-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:8%;align-items:start}
.contact-layout h2{font:400 clamp(45px,5vw,74px)/1.05 'Georgia Pro',Georgia,serif;margin:15px 0 26px}
.contact-layout p{color:#2c3130;line-height:1.9}
.contact-panel{background:#f8f3e9;padding:48px;box-shadow:0 10px 45px rgba(20,40,30,.05)}
.contact-panel h3{font:400 38px/1.12 'Georgia Pro',Georgia,serif;margin:14px 0}
.contact-panel p{font-size:15px}
.contact-panel .btn{width:100%;margin:18px 0 10px}
.contact-panel .smallprint{margin:10px 0 0}
.contact-details{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:40px}
.contact-detail{border-top:2px solid var(--clay);padding-top:20px}
.contact-detail strong{display:block;margin:8px 0;font-size:14px}
.contact-detail p{font-size:13px;margin:0}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:50px}
.process-step{border-top:1px solid #c3b49f;padding-top:23px}
.process-step h3{font:400 30px 'Georgia Pro',Georgia,serif;margin:12px 0}
.process-step p{font-size:14px;line-height:1.8;color:#2c3130}
.contact-photo{width:100%;height:420px;object-fit:cover;object-position:center 45%}
.faq-wrap{max-width:900px}
.faq-wrap h2{font:400 clamp(45px,5vw,72px)/1.08 'Georgia Pro',Georgia,serif}
.faq-wrap details{border-top:1px solid #c3b49f;padding:23px 0}
.faq-wrap details:last-child{border-bottom:1px solid #c3b49f}
.faq-wrap summary{font-weight:700;cursor:pointer;line-height:1.5}
.faq-wrap details p{color:#2c3130;line-height:1.85;max-width:780px}
.contact-last{background:var(--forest);color:var(--cream);padding:90px 0}
.contact-last h2{font:400 clamp(45px,5vw,72px)/1.06 'Georgia Pro',Georgia,serif;margin:15px 0 20px}
.contact-last p{color:#efe8da;line-height:1.8;max-width:650px}
.contact-last .btn{margin-top:16px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:42px}.process-grid{grid-template-columns:1fr}.contact-hero .container{padding:85px 0 95px}}
@media(max-width:650px){.contact-hero h1{font-size:clamp(60px,13vw,85px)}.contact-panel{padding:27px}.contact-details{grid-template-columns:1fr}.contact-photo{height:270px}.contact-last{padding:70px 0}}
.review-hero{background:linear-gradient(90deg,rgba(14,32,25,.88),rgba(14,32,25,.43)),url('assets/IMG_4151.jpg') center 44%/cover;min-height:565px;color:var(--cream);display:flex;align-items:center}
.review-hero .container{padding:95px 0}
.review-hero h1{font:400 clamp(64px,8.5vw,116px)/.96 'Georgia Pro',Georgia,serif;max-width:880px;letter-spacing:-.035em;margin:22px 0}
.review-hero h1 em{color:#efe8da}
.review-hero p{font-size:17px;max-width:580px;line-height:1.8;color:#efe8da}
.review-stats{background:var(--forest);color:var(--cream);padding:38px 0}
.review-stats .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.review-stats strong{font:400 40px 'Georgia Pro',Georgia,serif}
.review-stats p{font-size:13px;color:#efe8da;margin:6px 0}
.review-stats a{text-decoration:underline;text-underline-offset:5px;font-size:13px}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:50px}
.review-card{background:#efe8da;padding:38px;display:flex;flex-direction:column;justify-content:space-between;min-height:300px}

.review-card .eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#a36a49;font-weight:700}
.review-card h3{font:400 32px/1.22 'Georgia Pro',Georgia,serif;margin:22px 0 14px}
.review-card p{font-size:14px;line-height:1.9;color:#2c3130;margin:0 0 20px}
.review-card .source{font-size:12px;color:#2c3130;border-top:1px solid #efe8da;padding-top:17px}
.story-band{background:var(--forest2);color:var(--cream);padding:95px 0}
.story-band .container{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
.story-band img{height:520px;width:100%;object-fit:cover}
.story-band h2{font:400 clamp(42px,5vw,69px)/1.07 'Georgia Pro',Georgia,serif}
.story-band p{color:#efe8da;line-height:1.85}
.note{font-size:12px;color:#2c3130;line-height:1.8;margin-top:24px}
.review-cta{background:#c3b49f;padding:100px 0}
.review-cta .container{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}
.review-cta h2{font:400 clamp(42px,5vw,70px)/1.05 'Georgia Pro',Georgia,serif;margin:18px 0}
.review-cta p{line-height:1.8}
.review-cta .btn{margin:7px 0 10px}
@media(max-width:800px){.review-grid,.story-band .container,.review-cta .container{grid-template-columns:1fr}.review-card{min-height:0}.story-band img{height:350px}.review-hero{min-height:520px}.review-cta{padding:65px 0}}
.mobile-menu{display:none;position:relative;z-index:20}
.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid #c3b49f;padding:11px 15px;font-weight:700;font-size:13px}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-links{position:absolute;right:0;top:calc(100% + 8px);width:min(290px,85vw);background:#f8f3e9;box-shadow:0 14px 38px rgba(0,0,0,.2);display:flex;flex-direction:column;padding:12px;gap:0}
.mobile-links a{padding:13px 12px;color:#32555b;border-bottom:1px solid #efe8da;font-size:14px}
.mobile-links a[aria-current="page"]{font-weight:700}
a:focus-visible,summary:focus-visible{outline:3px solid #a36a49;outline-offset:4px}
@media(max-width:950px){.mobile-menu{display:block}.navlinks a:not(.btn){display:none}}
@media(max-width:500px){.navlinks .btn{font-size:9px;padding:9px 10px}.mobile-menu summary{padding:9px 11px}.nav{gap:10px}}
h1,h2,h3,h4,h5,h6{font-family:'Georgia Pro',Georgia,serif}
.brand span{font-family:'Georgia Pro',Georgia,serif;letter-spacing:.015em;font-weight:400;font-size:19px}
.brand small{font-family:Arial,Helvetica,sans-serif;font-size:9px;letter-spacing:.18em}
.brand img{width:70px;height:70px;object-fit:contain;flex-shrink:0}
.btn{background:#32555b;color:#f8f3e9}
.btn:hover{background:#2c3130}
.btn.light{background:#f8f3e9;color:#32555b}
.btn.light:hover{background:#efe8da}
.btn.outline{background:transparent;color:#32555b;border-color:#32555b}
.btn.outline:hover{background:#efe8da}
.story .kicker,.hero .kicker,.hero h1 em{color:#efe8da}
a:focus-visible,summary:focus-visible{outline-color:#a36a49}
@media(max-width:650px){.brand img{width:48px;height:48px}.brand span{font-size:13px}.brand{gap:7px}.brand small{font-size:8px}}
header .brand small,.foot .brand small{color:#a36a49}
.btn,.btn.light,.btn.outline{background:#a36a49;color:#f8f3e9;border-color:#a36a49;gap:0}
.btn:hover,.btn.light:hover,.btn.outline:hover{background:#2c3130;color:#f8f3e9;border-color:#2c3130}
.kicker,.hero .kicker,.story .kicker,.eyebrow,.review-card .eyebrow{color:#a36a49}
.assessment,.review-cta,.contact-last{background:#c3b49f;color:#2c3130}
.assessment h2,.review-cta h2,.contact-last h2{color:#32555b}
.assessment p,.review-cta p,.contact-last p{color:#2c3130}
.assessment-details{background:#f8f3e9}
.page-hero h1 em,.about-hero h1 em,.review-hero h1 em,.contact-hero h1 em{color:#c3b49f}
:root{--clay-readable:#905839;--teal-readable:#29484d}
.kicker,.eyebrow,.review-card .eyebrow,.number,.credential strong{color:var(--clay-readable)}
header .brand small{color:var(--clay-readable)}
.btn,.btn.light,.btn.outline{background:var(--clay-readable);border-color:var(--clay-readable);color:#f8f3e9}
.btn:hover,.btn.light:hover,.btn.outline:hover{background:#2c3130;border-color:#2c3130;color:#f8f3e9}
.hero .kicker,.page-hero .kicker,.about-hero .kicker,.review-hero .kicker,.contact-hero .kicker,
.hero .eyebrow,.page-hero .eyebrow,.about-hero .eyebrow,.review-hero .eyebrow,.contact-hero .eyebrow,
.story .kicker,.story .eyebrow,.story-band .kicker,.story-band .eyebrow,
.manifesto .kicker,.manifesto .eyebrow,.note-band .kicker,.note-band .eyebrow,
.foot .kicker,.foot .eyebrow,.foot .brand small{color:#f8f3e9}
.assessment .kicker,.review-cta .kicker,.contact-last .kicker,
.assessment .eyebrow,.review-cta .eyebrow,.contact-last .eyebrow{color:var(--teal-readable)}
.assessment-details .kicker,.assessment-details .eyebrow{color:var(--clay-readable)}
.hero:before,.page-hero:before,.about-hero:before{background:linear-gradient(90deg,rgba(44,49,48,.94),rgba(44,49,48,.85) 60%,rgba(44,49,48,.4))}
.review-hero{background-image:linear-gradient(90deg,rgba(44,49,48,.94),rgba(44,49,48,.85) 60%,rgba(44,49,48,.4)),url('assets/IMG_4151.jpg')}
a:focus-visible,summary:focus-visible{outline:3px solid #32555b;outline-offset:4px}
.hero a:focus-visible,.page-hero a:focus-visible,.about-hero a:focus-visible,.review-hero a:focus-visible,
.contact-hero a:focus-visible,.story a:focus-visible,.story-band a:focus-visible,.foot a:focus-visible{outline-color:#f8f3e9}
@media(max-width:650px){.hero:before,.page-hero:before,.about-hero:before{background:linear-gradient(90deg,rgba(44,49,48,.94),rgba(44,49,48,.84))}}
.editorial-photo{display:block;width:100%;height:auto;object-fit:cover}
.approach-photo{margin-top:32px;aspect-ratio:4/3;object-position:50% 50%}
.personal-photo{margin:34px 0;max-height:560px;object-fit:cover;object-position:50% 60%}
.client-life-photo{margin:32px 0 40px;max-width:900px;height:auto;max-height:none}
#philosophy .split-image img{object-position:50% 65%}
img[src="assets/img_9768.jpg"]{object-position:50% 55%}
img[src="assets/img_1515.jpg"]{object-position:52% 55%}
img[src="assets/img_5041.jpg"]{object-position:50% 65%}
.contact-photo{object-position:50% 55%}
@media(max-width:650px){.personal-photo,.client-life-photo{max-height:none;height:auto}.approach-photo{aspect-ratio:4/3}}
.client-life-photo{width:min(100%,600px);height:auto;max-height:none;object-fit:contain}
.skip-link{position:fixed;top:8px;left:8px;z-index:1000;background:#f8f3e9;color:#32555b;padding:14px 18px;text-decoration:underline;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
img{height:auto}
.brand img{aspect-ratio:1}
.split>*,.bio-grid>*,.intro-grid>*,.assessment-grid>*{min-width:0}
.btn{white-space:normal;text-align:center;min-height:44px}
.mobile-links a{min-height:44px}
@media(max-width:380px){.navlinks{display:none}.nav{gap:8px}.section h2,.split h2,.assessment h2{font-size:40px}.brand span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}}
.contact-direct{background:#efe8da;padding:22px 26px;margin:25px 0}.contact-direct a,.footer-contact a,.foot-bottom a{text-decoration:underline;text-underline-offset:4px}
.contact-direct p:last-child{font-size:14px}.testimonial-photo{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;background:#efe8da;margin-bottom:26px}
.review-card blockquote{font:400 28px/1.35 'Georgia Pro',Georgia,serif;color:#32555b;margin:0 0 22px}.review-card .source{margin-top:auto}
.review-grid>.note{grid-column:1/-1}.privacy-copy{max-width:850px}.privacy-copy h1{font:400 clamp(40px,6vw,72px)/1.1 'Georgia Pro',Georgia,serif;color:#32555b}.privacy-copy h2{font-size:30px;color:#32555b;margin-top:38px}
.footer-contact a{display:inline-block;padding:5px 0}.section .intro-grid h3{font-size:32px;color:#32555b}
@media(max-width:650px){.testimonial-photo{height:auto}.review-card{padding:26px}.contact-direct{padding:20px}.contact-direct a{overflow-wrap:anywhere}}

@media(max-width:650px){.navlinks{display:none}.mobile-menu summary{display:flex;align-items:center;gap:8px;white-space:nowrap}.nav .brand{flex-shrink:0}}

/* Consistent client portraits and deliberate training-hero framing. */
.testimonial-photo[src$="testimonial-elwood.jpg"]{object-position:50% 65%}
.testimonial-photo[src$="testimonial-labrador.jpg"]{object-position:50% 20%}
.testimonial-photo[src$="testimonial-brittany.jpg"]{object-position:50% 50%}
.testimonial-photo[src$="testimonial-collie.jpg"]{object-position:50% 35%}
.page-hero{background-size:auto 155%;background-position:right 22%;background-repeat:no-repeat}
.page-hero:before{background:linear-gradient(90deg,#32555b 0%,#32555b calc(100% - 650px),rgba(50,85,91,.9) calc(100% - 550px),rgba(44,49,48,.25) calc(100% - 300px),rgba(44,49,48,.12) 100%)}
@media(max-width:650px){.page-hero{background-size:cover;background-position:center 28%}.page-hero:before{background:linear-gradient(90deg,rgba(44,49,48,.94),rgba(44,49,48,.84))}}

/* New photography selected for each training goal. */
img[src="assets/puppy-foundations.jpg"]{object-position:50% 35%}
img[src="assets/walking-partnership.jpg"]{object-position:48% 50%}
img[src="assets/city-walking.jpg"]{object-position:58% 50%}
img[src="assets/purposeful-retrieve.jpg"]{object-position:50% 52%}
.bio-grid .family-adventure-photo{object-position:50% 45%}
.section .photo-caption{font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.6;margin:12px 0 0;color:#2c3130}
