/* Site-wide extension of the approved homepage. No changes to its photographic composition. */
body.wpc27-site{--wpc27-paper:#f5f3ed;--wpc27-ink:#173c31;--wpc27-muted:#59665d;--wpc27-line:#d4d9ce;--wpc27-mint:#c9e5ce;--wpc27-edge:clamp(22px,4vw,72px);background:var(--wpc27-paper);color:var(--wpc27-ink);font-weight:400}
.wpc27-site .site-header{position:relative;inset:auto;background:var(--wpc27-paper);color:var(--wpc27-ink);border:0;z-index:20}
.wpc27-site .site-header .nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;width:calc(100% - var(--wpc27-edge)*2);max-width:1440px;min-height:88px;border-bottom:1px solid var(--wpc27-line)}
.wpc27-site .site-header .brand{color:var(--wpc27-ink);font-family:var(--display);font-size:27px;font-weight:600;letter-spacing:-1.4px;white-space:nowrap}
.wpc27-site .site-header .menu-list{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.wpc27-site .site-header .menu-list a{display:inline-flex;align-items:center;min-height:44px;color:var(--wpc27-ink);font-size:12px;letter-spacing:0;text-transform:none;font-weight:500}
.wpc27-site .site-header .menu-list a[aria-current=page]:not(.button){text-decoration:underline;text-underline-offset:6px}
.wpc27-site .site-header .menu-list .button{color:var(--wpc27-ink);background:transparent;border:1px solid var(--wpc27-ink);padding:0 20px;min-height:44px}
.wpc27-site .mobile-toggle{display:none;color:var(--wpc27-ink);background:transparent;border:0;cursor:pointer;min-width:48px;min-height:48px;font-size:27px;padding:0}
.wpc27-site .site-footer{background:var(--wpc27-paper);color:var(--wpc27-ink);border-top:1px solid var(--wpc27-line)}
.wpc27-site .site-footer .brand,.wpc27-site .site-footer a,.wpc27-site .site-footer h2{color:var(--wpc27-ink)}
.wpc27-site .site-footer .footer-brand p,.wpc27-site .site-footer .footer-meta{color:var(--wpc27-muted)}
.wpc27-site .site-footer .footer-brand p{max-width:320px;line-height:1.65}
.wpc27-site .site-footer .footer-services a,.wpc27-site .site-footer .footer-links a{display:inline-flex;align-items:center;min-height:36px}
.wpc27-site a:focus-visible,.wpc27-site button:focus-visible,.wpc27-site summary:focus-visible{outline:3px solid #30886c;outline-offset:5px}
.wpc28{padding-bottom:0}
.wpc28-hero{display:grid;grid-template-columns:.94fr 1.2fr;align-items:center;gap:clamp(32px,5vw,85px);padding-block:54px 62px}
.wpc28-hero-copy{min-width:0;max-width:590px}
.wpc28-hero .wpc27-kicker{color:var(--wpc27-muted);margin-bottom:27px}
.wpc28 h1{font-size:clamp(46px,4.8vw,76px);line-height:1.04;letter-spacing:-.06em;overflow-wrap:normal}
.wpc28 h1 em{display:block;font-size:.86em;line-height:1.08;margin-top:15px;color:#3f6755}
.wpc28-intro{font-size:16px;max-width:480px;margin-top:28px!important;color:var(--wpc27-muted);line-height:1.7!important}
.wpc28-hero-photo{width:100%;min-width:0}
.wpc28-hero-photo img{width:100%;height:auto;object-fit:contain}
.wpc28-hero-photo figcaption{padding-top:13px}
.wpc28-hero--portrait{grid-template-columns:1.1fr .9fr}
.wpc28-hero--portrait .wpc28-hero-photo{width:min(100%,415px);justify-self:center}
.wpc28-price-note{display:inline-block;margin-top:24px;color:var(--wpc27-muted);font-size:12px;text-decoration:underline;text-underline-offset:5px}
.wpc28 h2{font-size:clamp(30px,3.15vw,46px);line-height:1.15;letter-spacing:-.045em}
.wpc28-planning{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,8vw,120px);padding:52px 0 58px;border-top:1px solid var(--wpc27-line)}
.wpc28-planning>h2{max-width:460px}
.wpc28-planning p{font-size:16px;color:var(--wpc27-muted);max-width:680px}
.wpc28-scope{list-style:none;padding:0;margin:23px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 27px}
.wpc28-scope li{border-top:1px solid var(--wpc27-line);padding:13px 0;font-size:13px;line-height:1.55}
.wpc28-gallery-section{padding:25px 0 65px;scroll-margin-top:28px}
.wpc28-section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.wpc28-section-title h2{font-size:clamp(26px,2.45vw,36px);max-width:760px;text-align:right}
.wpc28-gallery{columns:2;column-gap:28px}
.wpc28-gallery figure{break-inside:avoid;page-break-inside:avoid;margin:0 0 28px;width:100%}
.wpc28-gallery img{display:block;width:100%;height:auto;object-fit:contain}
.wpc28-additional-picture{display:block}
.wpc28 .wpc28-gallery-section--supporting .wpc28-gallery{columns:2}
.wpc28-gallery-section--supporting{border-top:1px solid var(--wpc27-line);padding-top:35px}
@media(max-width:620px){.wpc28 .wpc28-gallery-section--supporting .wpc28-gallery{columns:1}}
.wpc28--headshots-people .wpc28-gallery,.wpc28--corporate-brand .wpc28-gallery,.wpc28--work .wpc28-gallery{columns:3}
.wpc28 .wpc27-client-story{padding-top:22px}
.wpc28 .wpc27-client-name{font-size:16px!important}
.wpc28-pricing{display:grid;grid-template-columns:1fr 1.1fr;align-items:start;gap:clamp(35px,8vw,120px);padding:68px 0;border-bottom:1px solid var(--wpc27-line);scroll-margin-top:25px}
.wpc28-pricing .wpc27-kicker{margin-bottom:22px}
.wpc28-pricing h2{max-width:440px;margin-bottom:22px}
.wpc28-pricing p{color:var(--wpc27-muted);font-size:15px;max-width:560px}
.wpc28-pricing .wpc27-text-link{margin-top:18px}
.wpc28-rates{margin:0}
.wpc28-rates>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:17px 0;border-bottom:1px solid var(--wpc27-line)}
.wpc28-rates>div:first-child{padding-top:0}
.wpc28-rates dt{font-size:15px}
.wpc28-rates dd{font-family:var(--display);font-size:30px;font-weight:500;letter-spacing:-.04em;margin:0;white-space:nowrap}
.wpc28-rates small,.wpc28-price-feature small{font-family:var(--body);font-size:12px;font-weight:400;letter-spacing:0;color:var(--wpc27-muted)}
.wpc28-pricing .wpc28-fine{font-size:12px;line-height:1.65;margin-top:18px}
.wpc28-price-detail h3{font-size:17px;margin-bottom:12px}
.wpc28-pricing .wpc28-price-feature{font-family:var(--display);font-size:30px;color:var(--wpc27-ink);line-height:1.25;letter-spacing:-.035em;margin-bottom:16px}
.wpc28-individual{border-top:1px solid var(--wpc27-line);padding-top:26px;margin-top:27px}
.wpc28-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,8vw,120px);padding:60px 0}
.wpc28-faq .wpc27-kicker{margin-bottom:20px}
.wpc28-faq h2{max-width:370px}
.wpc28-answers details{border-bottom:1px solid var(--wpc27-line)}
.wpc28-answers details:first-child{border-top:1px solid var(--wpc27-line)}
.wpc28-answers summary{position:relative;list-style:none;cursor:pointer;font-size:15px;font-weight:500;line-height:1.55;padding:19px 30px 19px 0;min-height:60px}
.wpc28-answers summary::-webkit-details-marker{display:none}
.wpc28-answers summary::after{content:'+';position:absolute;right:3px;top:17px;font-size:23px;font-weight:400}
.wpc28-answers details[open] summary::after{content:'−'}
.wpc28-answers details>p{font-size:14px;color:var(--wpc27-muted);line-height:1.75;padding:0 25px 22px 0}
.wpc28-related{padding:25px 0 48px}
.wpc28-related>div{display:flex;flex-wrap:wrap;gap:8px 30px;margin-top:15px}
.wpc28-related a,.wpc28-jump a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:6px;line-height:1.5}
.wpc28-about-copy{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,8vw,120px);border-top:1px solid var(--wpc27-line);padding:55px 0 70px}
.wpc28-about-copy .wpc27-kicker{margin-bottom:23px}
.wpc28-about-copy p:not(.wpc27-kicker){font-size:17px;line-height:1.85;color:var(--wpc27-muted);margin-bottom:20px}
.wpc28-about-copy p:last-child{margin-bottom:0}
.wpc28-contact-page{margin-top:38px;padding-top:60px;padding-bottom:78px}
.wpc28-contact-page h1{margin-bottom:30px}
.wpc28-contact-page h1 em{font-size:.9em;margin-top:3px}
.wpc28-simple-heading{padding:64px 0 55px;min-height:350px}
.wpc28-simple-heading .wpc27-kicker{margin-bottom:25px}
.wpc28-simple-heading>p:not(.wpc27-kicker){font-size:16px;max-width:620px;color:var(--wpc27-muted);margin-top:25px}
.wpc28-jump{display:flex;flex-wrap:wrap;gap:10px 32px;margin-top:25px}
.wpc28-generic{padding:55px 0 75px;max-width:1040px}
.wpc28-generic h1{margin-bottom:35px}
.wpc28-generic .entry-content{font-size:17px;line-height:1.8}
.wpc28-generic .entry-content p{margin-bottom:20px}
.wpc27-site .wpc27-form-wrap>.notice{margin-bottom:24px;padding:18px;border:1px solid #b65e45;background:#fff9f4;color:#642819;font-size:14px}
.wpc27 .form .notice{grid-column:1/-1;padding:16px;line-height:1.6;font-size:14px}
.wpc27 .form .notice--success{background:#f5f6f0;color:#173c31;border:1px solid #628567}
.wpc27 .form input[aria-invalid=true],.wpc27 .form textarea[aria-invalid=true],.wpc27 .form select[aria-invalid=true]{border-color:#9b3c29}
.wpc27 .form .field-error{color:#823222;font-size:12px;line-height:1.5;display:block;margin-top:6px}
.wpc27 .form :is(input,textarea,select):focus-visible{outline:2px solid #30886c;outline-offset:2px}
@media(max-width:1100px){.wpc27-site .site-header .menu-list{gap:16px}.wpc27-site .site-header .menu-list a{font-size:11px}.wpc27-site .site-header .brand{font-size:24px}.wpc28-hero{gap:35px;padding-block:40px 45px}.wpc28 h1{font-size:52px}.wpc28-intro{font-size:15px}.wpc28-hero .wpc27-kicker{font-size:9px!important}.wpc28--corporate-brand .wpc28-gallery{columns:2}}
@media(max-width:900px){.wpc27-site .site-header .nav{min-height:74px}.wpc27-site .mobile-toggle{display:inline-flex;align-items:center;justify-content:center}.wpc27-site .site-header .menu{display:none;position:absolute;top:100%;left:0;right:0;width:auto;background:var(--wpc27-paper);color:var(--wpc27-ink);border:1px solid var(--wpc27-line);padding:16px 21px;z-index:50}.wpc27-site .site-header .menu.open{display:block}.wpc27-site .site-header .menu-list{display:flex;flex-direction:column;align-items:stretch;gap:4px}.wpc27-site .site-header .menu-list a{display:flex;min-height:48px;font-size:14px;color:var(--wpc27-ink)}.wpc27-site .site-header .menu-list .button{margin-top:5px;justify-content:center}.wpc28-hero{grid-template-columns:1fr;gap:30px;padding-top:35px}.wpc28-hero-copy{max-width:650px}.wpc28 h1{font-size:clamp(46px,7.8vw,68px)}.wpc28-hero--portrait{grid-template-columns:1.15fr .85fr;gap:28px}.wpc28-hero--portrait h1{font-size:46px}.wpc28-hero--portrait .wpc28-intro{font-size:14px}.wpc28-planning,.wpc28-pricing,.wpc28-faq,.wpc28-about-copy{gap:35px}.wpc28-section-title{display:block}.wpc28-section-title .wpc27-kicker{margin-bottom:15px}.wpc28-section-title h2{text-align:left}.wpc28-scope{grid-template-columns:1fr}.wpc28--headshots-people .wpc28-gallery,.wpc28--work .wpc28-gallery{columns:2}.wpc28-contact-page{padding-top:40px}}
@media(max-width:620px){body.wpc27-site{--wpc27-edge:22px}.wpc27-site .site-header .brand{font-size:25px}.wpc28-hero,.wpc28-hero--portrait{grid-template-columns:1fr;padding-block:28px 36px;gap:28px}.wpc28-hero .wpc27-kicker{margin-bottom:20px;font-size:10px!important}.wpc28 h1,.wpc28-hero--portrait h1{font-size:clamp(40px,10.6vw,58px);line-height:1.05}.wpc28 h1 em{margin-top:10px;font-size:.87em}.wpc28-intro,.wpc28-hero--portrait .wpc28-intro{font-size:15px;margin-top:22px!important;line-height:1.7!important}.wpc28-hero--portrait .wpc28-hero-photo{width:min(82%,330px);justify-self:start}.wpc28-price-note{font-size:12px;margin-top:19px}.wpc28-planning,.wpc28-pricing,.wpc28-faq,.wpc28-about-copy{grid-template-columns:1fr;gap:25px;padding-block:35px}.wpc28 h2{font-size:32px}.wpc28-planning p{font-size:15px}.wpc28-scope{grid-template-columns:1fr;margin-top:22px}.wpc28-gallery-section{padding:12px 0 32px}.wpc28-section-title h2{font-size:28px}.wpc28-section-title{margin-bottom:23px}.wpc28-gallery,.wpc28--corporate-brand .wpc28-gallery,.wpc28--work .wpc28-gallery{columns:1;column-gap:17px}.wpc28-gallery figure{margin-bottom:20px}.wpc28--headshots-people .wpc28-gallery{columns:2;column-gap:15px}.wpc28--headshots-people .wpc28-gallery figure{margin-bottom:15px}.wpc28 .wpc27-client-story{padding-top:18px;padding-bottom:38px}.wpc28-pricing .wpc27-kicker,.wpc28-faq .wpc27-kicker{margin-bottom:18px}.wpc28-pricing h2{margin-bottom:18px}.wpc28-pricing .wpc28-price-feature{font-size:28px}.wpc28-rates dd{font-size:28px}.wpc28-related{padding:13px 0 35px}.wpc28-related>div{gap:5px 22px}.wpc28-related a{font-size:13px}.wpc28-about-copy p:not(.wpc27-kicker){font-size:16px;line-height:1.8}.wpc28-contact-page{margin-top:24px;padding-top:35px;padding-bottom:43px}.wpc28-contact-page h1{font-size:56px}.wpc28-simple-heading{padding:36px 0;min-height:0}.wpc28-simple-heading>p:not(.wpc27-kicker){font-size:15px}.wpc28-jump{gap:4px 24px;margin-top:20px}.wpc28-jump a{font-size:13px}.wpc28-generic{padding-block:35px}.wpc28-generic .entry-content{font-size:16px}}
/* Enquiry flow: keep the first step short and confirmation unmistakable. */
.wpc-enquiry-intro{font-size:14px;line-height:1.65;margin:0 0 22px;color:#44594a}
.wpc27 .form .wpc-enquiry-extras{grid-column:1/-1;border-top:1px solid #bdc9b8;border-bottom:1px solid #bdc9b8}
.wpc-enquiry-extras summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:13px;font-weight:500;line-height:1.6}
.wpc-enquiry-extras summary span{font-weight:400;color:#526251}
.wpc-enquiry-extra-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 19px;padding:10px 0 22px}
.wpc-enquiry-extra-fields .form-field--wide{grid-column:1/-1}
.wpc-enquiry-confirmation{padding:26px;border:1px solid #628567;background:#f5f6f0;color:#173c31;scroll-margin-top:30px}
.wpc-enquiry-confirmation h3{font-size:25px;line-height:1.25;margin:0 0 16px}
.wpc-enquiry-confirmation p{font-size:14px;line-height:1.7;margin-bottom:12px}
.wpc-enquiry-confirmation .wpc-enquiry-reference{margin-bottom:0}
.wpc27 .form button:disabled{opacity:.7;cursor:wait}
.wpc-enquiry-sticky{display:none}
#enquiry-form{scroll-margin-top:24px}
@media(max-width:620px){
 .wpc-enquiry-extra-fields{grid-template-columns:1fr;gap:17px}
 .wpc-enquiry-confirmation{padding:22px}
 .wpc28 .wpc-enquiry-sticky:not([hidden]){display:flex;position:fixed;bottom:calc(14px + env(safe-area-inset-bottom));left:22px;right:22px;z-index:40;justify-content:space-between;box-shadow:0 5px 20px #173c3133;min-height:50px}
 .wpc28 .wpc-enquiry-sticky[hidden]{display:none!important}
 body:has(.wpc-enquiry-sticky) .site-footer{padding-bottom:90px}
}
@media(prefers-reduced-motion:reduce){.wpc27-site html{scroll-behavior:auto}}
