/* Shared visual language for public editorial and service content. Shell lives in layout.css. */
.site-layout{--paper:#f2f0e7;--ink:#19392c;--accent:#cdb984}
.inner-page,.journal-page{background:var(--paper);color:var(--ink)}
.inner-page .inner-hero,.shared-blog .journal-title,.shared-blog .article-heading{background:#17372b;color:#eeece3;max-width:none;margin:0;padding:42px var(--pad) 48px;position:relative}
.inner-page .inner-hero:after,.shared-blog .journal-title:after,.shared-blog .article-heading:after{content:'';position:absolute;left:var(--pad);bottom:0;width:72px;height:2px;background:var(--accent)}
.inner-page .breadcrumb{margin-bottom:32px;color:#bbc6b9;font-size:10px}.inner-page .inner-hero .overline,.shared-blog .eyebrow{color:#cdb984;letter-spacing:2px;font-size:10px}
.inner-page .inner-hero h1,.shared-blog .journal-title h1,.shared-blog .article-heading h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,4.9vw,68px);font-weight:400;letter-spacing:-.045em;line-height:1.1;max-width:900px;margin:22px 0}
.shared-blog .journal-title h1 em{color:#cdb984}.inner-page .inner-hero>p,.shared-blog .journal-title p,.shared-blog .article-heading>p{color:#c4cdc1;font-size:15px;line-height:1.85;max-width:640px}
.shared-blog .journal-title>div>span{color:#b3bfae}.shared-blog .article-heading .journal-meta{color:#cdb984;margin-top:26px}.shared-blog .article-heading>span{color:#c4cdc1}.shared-blog .article-heading>a{color:#c4cdc1}
.inner-page .detail-request{background:transparent;color:#e9ddbf;border-bottom:1px solid #bca66d;padding:0 0 9px;margin-top:24px;transition:color .25s}.inner-page .detail-request:hover{color:white}
.inner-page .inner-image{margin:0;height:340px;min-height:0;overflow:hidden}.inner-page .inner-image img{height:calc(100% + 36px);transform:translateY(var(--photo-drift,-18px));object-fit:cover;will-change:transform}
.inner-page .inner-body{padding:52px var(--pad) 60px;gap:5vw}.inner-page .inner-body:has(.detail-sidebar){grid-template-columns:230px minmax(0,1fr)}.inner-page .detail-sidebar{top:114px}.inner-page .article-sections section{scroll-margin-top:115px;padding:25px 0}.inner-page .article-sections h2{font-size:25px;letter-spacing:-.6px}.inner-page .article-sections p{max-width:760px;font-size:14px;line-height:1.9}.inner-page .article-sections a{ text-underline-offset:5px}.inner-page .site-cta{border-radius:0}
.content-band{padding:58px var(--pad);display:grid;grid-template-columns:1fr 1.4fr;gap:7vw;border-top:1px solid #c9cdbf;background:#e7e9de;color:#19392c}.content-band-heading .overline{color:#747953;font-size:9px}.content-band-heading h2{font:400 clamp(30px,3.2vw,45px)/1.14 Manrope,Arial,sans-serif;letter-spacing:-1.4px;margin:22px 0}.content-band-heading h2 em{font-family:Georgia,serif;color:#7b704a;font-weight:400}.content-band p{font-size:14px;line-height:1.9;color:#536454}.content-band-heading>a,.content-text-link{display:inline-block;font-size:12px;border-bottom:1px solid #8e987c;padding-bottom:8px;margin-top:24px}.service-answer-list article{border-bottom:1px solid #bbc5b3;padding:0 0 24px;margin-bottom:24px;position:relative}.service-answer-list h3{font-size:22px;letter-spacing:-.5px;line-height:1.3;margin:10px 0 14px;font-weight:500}.answer-index{font-size:10px;color:#7b704a}.team-contact{background:#f2f0e7}.team-contact article>a{display:block;margin-top:14px;font-size:13px;overflow-wrap:anywhere}.team-contact .overline{color:#737e67;font-size:9px}
.family-copy>a.family-brand,.family-brand{display:block;width:140px;margin:0 0 30px;padding:0;border:0;background:transparent;border-radius:0}.family-brand img{display:block;width:100%;height:auto;padding:0;filter:brightness(0) saturate(100%) invert(17%) sepia(20%) saturate(853%) hue-rotate(106deg) brightness(95%) contrast(91%);opacity:.88;transition:transform .4s,opacity .4s}.family-brand:hover img,.family-brand:focus-visible img{transform:translateY(-3px);opacity:1}
.shared-blog .journal-index{padding-top:34px}.shared-blog .journal-card.featured{gap:40px;padding-bottom:32px}.shared-blog .journal-image{border-radius:0}.shared-blog .featured .journal-copy h2{font-size:clamp(28px,3vw,40px)}.shared-blog .journal-copy h2{letter-spacing:-.9px}.shared-blog .journal-meta{color:#77724f}.shared-blog .journal-end{background:#e7e9de;padding-top:42px;padding-bottom:42px}.shared-blog .journal-end h2{font-size:36px}.shared-blog .article-cover{margin:0}.shared-blog .article-cover img{height:380px;min-height:0}.shared-blog .article-cover figcaption{padding:12px var(--pad);margin:0;background:#e7e9de}.shared-blog .article-layout{padding-top:48px}
.content-enter{animation:content-enter .7s cubic-bezier(.2,.7,.2,1) both}@keyframes content-enter{from{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.inner-page .inner-hero,.shared-blog .journal-title,.shared-blog .article-heading{padding-top:30px;padding-bottom:36px}.inner-page .inner-hero h1,.shared-blog .journal-title h1,.shared-blog .article-heading h1{font-size:40px}.inner-page .inner-image{height:260px}.inner-page .inner-body:has(.detail-sidebar),.content-band{grid-template-columns:1fr;gap:30px}.inner-page .detail-sidebar{position:static}.inner-page .detail-sidebar nav{grid-template-columns:1fr 1fr;gap:14px}.inner-page .inner-body{padding-top:35px;padding-bottom:38px}.content-band{padding:36px var(--pad)}.shared-blog .journal-title>div>span{font-size:8px}.shared-blog .article-cover img{height:260px}.shared-blog .journal-card.featured{gap:0}.family-copy>a.family-brand{width:135px}.service-answer-list h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.content-enter{animation:none}.family-brand img,.inner-page .inner-image img{transition:none;transform:none!important;will-change:auto}}

.build-topics{font-size:11px!important;color:#807452!important;border-top:1px solid #c7cebb;padding-top:14px;margin-top:20px}.newbuild-intro{margin:36px 0;padding:30px;border-left:2px solid #9b8757;background:#e7e9de}.newbuild-intro .overline{font-size:9px;color:#747953}.newbuild-intro h3{font-size:28px;font-weight:500;letter-spacing:-.8px;margin:16px 0}.newbuild-intro p{font-size:14px;line-height:1.8;color:#536454}.newbuild-intro a{display:inline-block;font-size:12px;border-bottom:1px solid #8e987c;padding-bottom:7px;margin-top:20px}

/* A quiet parent-brand signature aligned with the editorial content. */
.family-signature{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:440px;padding-bottom:22px;margin-bottom:28px;border-bottom:1px solid #19362d26}
.family-signature .overline{font-size:9px;line-height:1.9;letter-spacing:2px}
.family-signature>a.family-brand{flex:0 0 106px;width:106px;margin:0;padding:0;border:0;background:transparent}
.family-signature .family-brand img{opacity:.82;transition:opacity .25s;transform:none}
.family-signature .family-brand:hover img{opacity:1;transform:none}
.family-copy .family-signature+h2{margin-top:0}
@media(max-width:600px){.family-signature{padding-bottom:18px;margin-bottom:24px}.family-signature>a.family-brand{flex-basis:94px;width:94px}}

/* Shared team portrait series. */
.people.people-portraits{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;background:#f4f2e9;padding:76px var(--pad)}
.people-portraits .people-heading{grid-column:1/-1;max-width:650px;margin-bottom:4px}
.people-portraits article{border:0;padding:0;min-width:0}
.team-portrait{width:clamp(180px,20vw,260px);aspect-ratio:1;margin:0 0 30px;overflow:hidden;border-radius:50%;background:#c4c4c4}
.team-portrait img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.people-portraits article:hover .team-portrait img{transform:scale(1.025)}
.people-portraits h3{margin:15px 0 6px;font-size:27px}
.people-portraits article p{font-size:13px;min-height:25px;margin:0 0 22px}
.people-portraits article .team-phone{font-size:18px;letter-spacing:-.3px}
.people-portraits article .team-email{font-size:12px;overflow-wrap:anywhere;color:#536458}
.people-portraits article a:hover{color:#8b7548}
.people-portraits article a:focus-visible{outline:2px solid #8b7548;outline-offset:5px}
@media(max-width:760px){.people.people-portraits{gap:38px 24px;grid-template-columns:repeat(2,minmax(0,1fr));padding:48px var(--pad)}.team-portrait{width:min(100%,220px)}.people-portraits h3{font-size:24px}}
@media(max-width:480px){.people.people-portraits{grid-template-columns:1fr;gap:40px}.people-portraits article{padding-bottom:28px;border-bottom:1px solid #19362d26}.team-portrait{width:220px;margin-bottom:24px}.people-portraits article p{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.team-portrait img{transition:none}.people-portraits article:hover .team-portrait img{transform:none}}

@media(min-width:761px){.people.people-portraits{grid-template-columns:repeat(6,minmax(0,1fr))}.people-portraits article{grid-column:span 2}.people-portraits article:nth-of-type(4){grid-column:2/span 2}.people-portraits article:nth-of-type(5){grid-column:4/span 2}}

.people-portraits h2{font:500 clamp(30px,3vw,36px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-1px;margin:20px 0}.people-portraits .people-heading>p,.people-portraits article p{font-size:14px;line-height:1.9;color:#596b60}.people-portraits .overline,.people-portraits article>span{color:#657864;font-size:9px;letter-spacing:1.5px}.people-portraits article a{display:block;width:fit-content;margin-top:15px}

.language-link{font-size:11px;letter-spacing:1px;padding:8px 2px;border-bottom:1px solid currentColor}.english-page .inner-hero{padding:65px var(--pad);background:#14392d;color:#eeece3}.english-page .inner-hero h1{max-width:1000px}.english-page .inner-hero p{color:#ccd5c9;max-width:780px;line-height:1.9}.english-page .inner-hero .overline{color:#d0bb8c}.english-page .solid-link{display:inline-block;margin-top:22px;padding:14px 20px;background:#d9c59e;color:#17372b;font-size:14px}.en-hero-image{width:100%;height:420px;object-fit:cover}.en-copy,.en-details,.en-services,.en-next{padding:65px var(--pad);background:#f4f2e9;color:#19392c}.en-copy p,.en-details p,.en-next p{font-size:16px;line-height:1.9;color:#536458;max-width:760px}.en-copy h2,.en-details h2,.en-services h2,.en-next h2{font-size:clamp(26px,3vw,40px);line-height:1.2;margin:15px 0 22px;letter-spacing:-1px}.en-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px}.en-details article{border-top:1px solid #aab4a7;padding-top:25px}.en-details .overline{font-size:10px;color:#727751}.en-services>a{display:flex;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid #19392c30;font-size:20px}.en-next{background:#e3e4dc}.en-article{max-width:900px;margin:auto}.english-page{background:#f4f2e9}.en-request{background:#f4f2e9;color:#19392c}.en-request>div>p{line-height:1.8;margin:20px 0}.en-request a{overflow-wrap:anywhere}.en-request .request-form{min-width:0}.en-request pre{white-space:pre-wrap;overflow-wrap:anywhere}.en-request [hidden]{display:none!important}@media(max-width:760px){.en-details{grid-template-columns:1fr}.en-copy,.en-details,.en-services,.en-next{padding:40px var(--pad)}.en-hero-image{height:280px}.en-request{grid-template-columns:1fr}.english-page .desktop-nav{display:none}}@media(max-width:600px){.header-right{gap:7px}.header .language-link{font-size:10px}.english-page .inner-hero{padding:40px var(--pad)}}

.en-post-cover{margin:28px 0}.en-post-cover img{display:block;width:100%;max-height:480px;object-fit:cover}.en-post-cover figcaption{font-size:12px;color:#536458;margin-top:10px}

.author-box{display:flex;gap:24px;align-items:flex-start;padding:30px 0;margin:30px 0;border-top:1px solid #aab4a7;border-bottom:1px solid #aab4a7}.author-box img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex-shrink:0}.author-box h2{font-size:24px!important;margin:10px 0!important}.author-box p{font-size:14px!important;line-height:1.8}.article-faq details{padding:18px 0;border-bottom:1px solid #aab4a7}.article-faq summary{cursor:pointer;font-weight:600}.article-sources li{margin:12px 0;overflow-wrap:anywhere}.article-summary{background:#e5e8dd;padding:24px;margin:30px 0}.author-profile{padding:45px var(--pad);color:#19392c;background:#f4f2e9}.author-profile .author-box{max-width:850px}.author-profile>h2{margin:35px 0}@media(max-width:480px){.author-box{flex-direction:column}}

.english-home .header .brand{color:var(--cream)}.english-home .reveal-words{color:var(--cream)}.english-home .project-card{text-decoration:none}.english-home .request-form [hidden]{display:none!important}.english-home .prepared-message{margin-top:16px}.english-home .enquiry-preview{white-space:pre-wrap;overflow-wrap:anywhere}

.managed-projects{padding:clamp(24px,6vw,100px);gap:32px}.managed-projects .journal-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.managed-facts{margin:0 auto;padding:32px 6vw;display:flex;flex-wrap:wrap;gap:40px}.managed-copy{max-width:860px;margin:50px auto;padding:0 24px}.managed-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:0 6vw 70px}.managed-gallery figure{margin:0}.managed-gallery img{width:100%;height:auto;display:block}.managed-gallery figcaption{font-size:14px;padding:12px 0}.projects-track a.project-card{text-decoration:none;color:inherit}@media(max-width:650px){.managed-gallery{grid-template-columns:1fr}}

.project-preview-banner{padding:18px 6vw;background:#e8d8b4;color:#10271f;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between}.project-preview-banner a{color:inherit;font-weight:600}

/* Quiet editorial labels; preserve animation hooks without visual counters. */
.hero-index,.plan-index,.project-counter,.process-big,.story-current,.answer-index{display:none!important}
.process-tabs button small{display:none!important}

.project-enquiry-empty{padding:clamp(64px,8vw,120px) var(--pad,5vw);background:var(--cream,#eeece3);color:#16392c}.project-enquiry-empty h2{font-size:clamp(32px,5vw,64px);max-width:900px;line-height:1.08;margin:24px 0}.project-enquiry-empty p{max-width:650px;line-height:1.8;margin-bottom:28px}
