@import url("v6-base.css");

/* v8 refines the v6 composition; colours follow Angelika's September feedback. */
:root { --paper:#f1f1f1; --surface:#fff; --ink:#1c1c1e; --raspberry:#aa1263; --raspberry-dark:#941054; --muted:#505055; --line:#ceced1; --blush:#e7e7e9; --gold:#caa342; --gold-soft:#e9d399; }
body { line-height:1.65; animation:page-enter .85s cubic-bezier(.22,.8,.25,1) backwards; transition:opacity .62s cubic-bezier(.4,0,.2,1),transform .62s cubic-bezier(.4,0,.2,1); }
body.page-leaving { opacity:.06; transform:translateY(6px); }
[hidden] { display:none !important; }
a,button,input,textarea { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--raspberry); outline-offset:5px; }
button { cursor:pointer; }
.section { padding-left:clamp(1.3rem,5.2vw,5rem); padding-right:clamp(1.3rem,5.2vw,5rem); }
.skip-link { position:fixed; top:-80px; left:16px; z-index:200; padding:12px 20px; background:white; border:1px solid var(--raspberry); }
.skip-link:focus { top:12px; }
h1,h2,h3,h4 { text-wrap:balance; }
p { text-wrap:pretty; }
em { color:var(--raspberry); font-style:normal; }
.inline-link { text-decoration:underline; text-decoration-color:var(--raspberry); text-underline-offset:.22em; }
.inline-link:hover { color:var(--raspberry-dark); }
.button { border:1px solid var(--raspberry); background:var(--raspberry); color:white; padding:1rem 1.4rem; font-size:.75rem; letter-spacing:.06em; transition:background .25s ease,transform .25s ease; }
.button span { margin-left:2rem; font-size:1.2rem; line-height:.6; }
.button:hover { background:var(--raspberry-dark); transform:translateY(-2px); }
.light-button { background:white; color:var(--raspberry-dark); border-color:white; }
.light-button:hover { background:#eee; }

/* Original logo mark, clipped from the supplied raster without redrawing it. */
.site-header { height:84px; padding:0 clamp(1.3rem,5.2vw,5rem); background:rgba(255,255,255,.96); border-color:#ddd; }
.brand { gap:.65rem; flex-shrink:0; }
.brand-symbol { width:50px; height:35px; display:block; overflow:hidden; flex:0 0 50px; }
.brand-symbol img { width:246px; max-width:none; height:auto; transform:translate(-23px,-30px); filter:contrast(1.4); }
.brand-name { font-family:var(--sans); font-size:.93rem; line-height:1.3; font-weight:700; white-space:nowrap; }
.brand-name small { color:var(--raspberry); font-size:.65rem; line-height:1.55; letter-spacing:.15em; font-weight:600; }
.main-nav { gap:clamp(1rem,2.2vw,2.1rem); font-size:.8rem; flex:0 0 auto; white-space:nowrap; }
.nav-services { width:74px; min-width:0; flex:0 0 74px; }
.main-nav > a::after,.services-toggle::after { background:var(--raspberry); }
.main-nav.indicator-ready > a::after,.main-nav.indicator-ready .services-toggle::after { display:none; }
.nav-indicator { position:absolute; height:2px; background:var(--raspberry); pointer-events:none; transition:left .6s cubic-bezier(.22,.8,.25,1),width .6s cubic-bezier(.22,.8,.25,1); }
.services-menu { width:300px; padding:.6rem; box-shadow:0 16px 40px #00000012; }
.services-menu a:hover,.services-menu a.active { background:#ededee; }

/* HOME: staggered large line, smaller right-aligned block, as in v6. */
.home-hero { min-height:calc(100svh - 84px); justify-content:center; padding-top:4.5rem; padding-bottom:4.5rem; gap:3rem; background:linear-gradient(113deg,#f2f2f2 0 70%,#e7e7e9 70% 100%); }
.home-hero::before { background:linear-gradient(90deg,transparent 0 51.95%,#00000007 52%,transparent 52.05%); }
.home-hero h1 { max-width:1070px; margin:0; font-size:clamp(2.3rem,4vw,3.65rem); line-height:1.1; letter-spacing:-.035em; }
.home-hero h1 em { margin-left:clamp(1rem,5.5vw,5rem); }
.hero-bottom { width:min(800px,76%); margin-left:auto; padding-left:2rem; }
.hero-bottom p { max-width:760px; font-size:1.09rem; line-height:1.75; }
.hero-bottom p em { font-weight:600; white-space:nowrap; }
.orbit-one { width:430px; height:210px; right:-100px; top:7%; border-color:#aa126345; }
.orbit-two { width:330px; height:160px; right:-30px; top:12%; border-color:#52525b33; }
.philosophy { padding-top:6rem; padding-bottom:6rem; }
.philosophy-intro { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1fr); gap:clamp(3rem,7vw,7rem); align-items:center; max-width:1150px; margin:0 auto 5rem; }
.home-portrait { margin:0; max-width:420px; }
.home-portrait img { width:100%; height:auto; }
.philosophy-lead { max-width:650px; margin:0; font-size:clamp(1.35rem,2vw,1.85rem); line-height:1.55; letter-spacing:-.01em; }
.philosophy-columns { max-width:1150px; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,6vw,6rem); border-top:1px solid var(--line); padding-top:3rem; }
.philosophy-columns p,.philosophy-columns p:first-child { font:400 1.03rem/1.85 var(--sans); color:var(--ink); }
.philosophy-columns em { display:inline; font:inherit; }
.services-overview { background:#e4e4e7; padding-top:6rem; padding-bottom:6rem; }
.overview-heading { max-width:1150px; margin:0 auto 3.5rem; display:grid; grid-template-columns:.65fr 1.35fr; gap:3rem; align-items:start; }
.overview-heading h2 { font-size:clamp(2.15rem,3vw,3rem); }
.overview-heading p { margin:0; max-width:740px; line-height:1.85; }
.service-grid { max-width:1150px; margin:auto; border:0; gap:1px; background:#bcbcc1; }
.service-card { position:relative; min-height:340px; padding:2.5rem 2.7rem 4rem; border:0; background:#eeeeef; display:block; transition:background .3s ease; }
.service-card:nth-child(2),.service-card:nth-child(3) { background:#e7e7ea; }
.service-card:nth-child(2n) { border:0; }
.service-card:hover { background:white; }
.service-card h3 { max-width:440px; font-size:clamp(1.6rem,2.4vw,2.35rem); margin:0 0 1.4rem; line-height:1.1; }
.service-card p { margin:0; font-size:1rem; line-height:1.75; color:#414146; opacity:1; }
.service-card .service-arrow { position:absolute; bottom:1.5rem; right:2rem; color:var(--raspberry); font-size:1.7rem; opacity:1; letter-spacing:0; }
.testimonials { background:#ededee; padding-top:5rem; padding-bottom:5rem; }
.testimonial-card { width:min(100%,1100px); margin:auto; min-height:370px; padding:3.5rem 4rem 5.5rem; background:white; position:relative; }
.quote-mark { position:absolute; top:.15rem; left:1.5rem; font:6rem/1.1 var(--serif); color:var(--raspberry); }
.quote-slide { margin:0; animation:content-enter .55s ease both; }
.quote-slide blockquote { font-size:clamp(1.35rem,2.3vw,2.2rem); line-height:1.4; max-width:900px; }
.quote-slide figcaption { margin-top:2rem; color:var(--raspberry-dark); font-size:.72rem; text-transform:uppercase; letter-spacing:.13em; font-weight:700; }
.carousel-controls { right:2rem; bottom:1.5rem; }
.carousel-controls button:hover,.case-controls button:hover { background:var(--raspberry); color:white; border-color:var(--raspberry); }
.faq { padding-top:5.5rem; padding-bottom:6rem; }
.faq-layout { max-width:1150px; margin:auto; display:grid; grid-template-columns:.4fr 1.6fr; gap:4rem; width:100%; }
.faq-layout h2 { font-size:2.5rem; }
.accordion-item button { padding:1.5rem 0; }
.accordion-item button span { font-size:clamp(1.1rem,1.45vw,1.4rem); line-height:1.5; }
.accordion-answer { max-width:none; color:#414146; padding:0; transition:max-height .65s cubic-bezier(.22,.8,.25,1),opacity .45s ease; }
.accordion-item.open .accordion-answer { padding-bottom:0; }
.answer-inner { padding:0 2rem 1.8rem 0; line-height:1.85; }
.accordion-answer p+p { margin-top:1.15rem; }
.editorial-list { padding-left:1.25rem; line-height:1.8; }
.editorial-list li { margin-bottom:.9rem; padding-left:.35rem; }
.editorial-list li::marker { color:var(--raspberry); }

/* Service pages: the modest hero and alternating editorial rhythm from v6. */
.simple-hero { min-height:390px; background:#eeeeef; padding-top:5rem; padding-bottom:3.7rem; }
.simple-hero::before,.simple-hero::after { display:none; }
.simple-hero h1 { max-width:1050px; font-size:clamp(2.6rem,4vw,3.8rem); line-height:1.05; margin:0; }
.simple-hero > p { margin-top:1.5rem; max-width:960px; font-size:clamp(1.2rem,1.65vw,1.55rem); color:var(--raspberry-dark); }
.service-lead { padding-top:3.7rem; padding-bottom:3.7rem; border-bottom:1px solid #d4d4d6; }
.service-lead p { max-width:1020px; margin:0 auto; font:400 clamp(1.35rem,2.1vw,2rem)/1.5 var(--serif); color:var(--raspberry-dark); }
.service-editorial { padding-top:5rem; padding-bottom:5rem; }
.editorial-columns { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2.5rem,7vw,7rem); max-width:1150px; margin:auto; }
.service-editorial p { margin:0 0 1.5rem; line-height:1.85; }
.editorial-lower { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(2.5rem,7vw,7rem); max-width:1150px; margin:3rem auto 0; padding-top:3rem; border-top:1px solid var(--line); }
.editorial-lower p:last-child { font-family:var(--serif); font-size:1.2rem; line-height:1.7; }
.journey { background:#ededee; padding-top:4.5rem; padding-bottom:4.5rem; }
.journey-instruction { max-width:900px; margin:0 0 2.5rem; font:1.35rem/1.6 var(--serif); }
.journey-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:#bdbdc2; }
.journey-tabs button { position:relative; display:flex; flex-direction:column; align-items:flex-start; min-width:0; white-space:normal; overflow-wrap:break-word; border:0; border-radius:0; padding:1.5rem 1.2rem 2.8rem; background:#f9f9f9; min-height:210px; text-align:left; transition:background .3s,color .3s; }
.journey-tabs small { font-size:.62rem; font-weight:700; letter-spacing:.12em; color:var(--raspberry); margin-bottom:1.5rem; }
.journey-tabs strong { width:100%; max-width:100%; font-family:var(--serif); font-weight:400; font-size:1.2rem; line-height:1.2; margin-bottom:1rem; }
.journey-tabs span { width:100%; max-width:100%; font-size:.85rem; line-height:1.6; }
.journey-tabs b { position:absolute; bottom:1rem; right:1.2rem; font-weight:400; }
.journey-tabs button[aria-selected="true"] { background:var(--raspberry-dark); color:white; }
.journey-tabs button[aria-selected="true"] small { color:white; }
.journey-panel { background:white; display:grid; grid-template-columns:120px 1fr; gap:2rem; padding:2.4rem 3rem; min-height:250px; animation:content-enter .5s both; }
.journey-number { font:3rem/1.1 var(--serif); color:var(--raspberry); }
.journey-panel p { max-width:900px; margin:0; line-height:1.85; }
.on-call { padding-top:3.8rem; padding-bottom:3.8rem; background:#dddddf; }
.on-call>div { display:grid; grid-template-columns:.7fr 1.3fr; gap:3rem; max-width:1150px; margin:auto; }
.on-call h2 { font-size:1.8rem; line-height:1.2; }
.on-call p { margin:0; }
.service-contact { padding-top:4rem; padding-bottom:4rem; background:var(--raspberry-dark); color:white; }
.service-contact p { max-width:900px; margin:0 auto 2rem; font:1.45rem/1.55 var(--serif); }


























.cases-intro { max-width:1150px; margin:3rem auto 0 !important; font-family:var(--serif); font-size:1.4rem; }
.cases { padding-top:4rem; padding-bottom:5rem; background:#e7e7ea; }
.case-controls { max-width:1150px; margin:0 auto 2.5rem; display:flex; align-items:center; justify-content:flex-end; gap:1rem; }
.case-controls button { width:42px; height:42px; border:1px solid var(--ink); border-radius:50%; background:transparent; transition:background .3s,color .3s; }
.case-controls span { font-size:.7rem; letter-spacing:.1em; }
.case-slide { max-width:1150px; margin:auto; animation:content-enter .5s both; }
.case-heading { display:grid; grid-template-columns:1.55fr .7fr; gap:3rem; margin-bottom:3rem; align-items:start; }
.case-heading .eyebrow { color:var(--raspberry-dark); font-size:.65rem; letter-spacing:.12em; }
.case-heading h2 { margin-top:1rem; font-size:clamp(1.8rem,2.7vw,2.8rem); line-height:1.2; }
.case-tag { margin:0; font-size:.9rem; line-height:1.7; padding-top:.2rem; }
.case-columns { display:grid; grid-template-columns:1fr 1.15fr 1fr; gap:2rem; border-top:1px solid #bdbdc2; padding-top:2rem; }
.case-columns h3 { font:700 .72rem var(--sans); letter-spacing:.08em; text-transform:uppercase; margin:0 0 1.5rem; }
.case-columns p,.case-columns li { font-size:.95rem; line-height:1.85; }
.case-columns p { margin:0; }
.case-columns ul { margin:0; }
.case-impact { border-left:2px solid var(--raspberry); padding-left:1.5rem; }

/* ANGELIKA: adjacent, uncropped portrait; chronology and visual text hierarchy. */
.profile-heading { background:#eeeef0; padding-top:5rem; padding-bottom:3rem; }
.profile-heading h1 { font-size:clamp(2.8rem,4vw,3.8rem); }
.profile-heading p { max-width:none; font-size:clamp(1.1rem,1.55vw,1.5rem); }
.profile-intro { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:center; max-width:none; padding-top:4rem; padding-bottom:5rem; }
.profile-intro .profile-image { height:auto; min-height:0; overflow:visible; max-width:470px; background:none; }
.profile-image img { width:100%; height:auto; object-fit:contain; object-position:top; }
.profile-brief h2 { font-size:1.9rem; }
.profile-brief p { font-size:clamp(1.15rem,1.65vw,1.5rem); line-height:1.65; }
.about-background { display:grid; grid-template-columns:.6fr 1.4fr; gap:3rem; padding-top:5rem; padding-bottom:5rem; }
.about-section-heading h2 { font-size:2rem; }
.background-timeline { border-top:1px solid var(--line); }
.background-timeline article { display:grid; grid-template-columns:80px 1fr; gap:2rem; padding:2rem 0; border-bottom:1px solid var(--line); }
.timeline-stamp { color:var(--raspberry); font:1.5rem var(--serif); }
.background-timeline p { margin:0; line-height:1.85; }
.about-practice { display:grid; grid-template-columns:1.3fr .7fr; gap:clamp(3rem,6vw,6rem); padding-top:5rem; padding-bottom:5rem; }
.about-practice h2 { font-size:1.8rem; line-height:1.2; margin-bottom:1.5rem; }
.about-practice aside { border-left:1px solid var(--line); padding-left:2.5rem; }
.about-practice p { line-height:1.85; }
.discretion-note { color:var(--muted); font-size:.9rem; margin-top:2rem; }
.why-work { padding-top:4rem; padding-bottom:4rem; background:#dcdce0; }
.why-work>div { max-width:1150px; margin:auto; display:grid; grid-template-columns:.6fr 1.4fr; gap:3rem; }
.why-work h2 { font-size:1.95rem; line-height:1.25; }
.why-work p { margin:0; font:1.2rem/1.8 var(--serif); }
.library { padding-top:5rem; padding-bottom:5rem; }
.library-content { width:min(100%,1150px); }
.library-content>h2 { font-size:2rem; }
.library-content>h3 { margin:2.5rem 0 1.4rem; font-size:.72rem; }
.resource-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:#c7c7cc; border:1px solid #c7c7cc; }
.resource-tile { position:relative; padding:1.5rem 1.4rem 3rem; min-height:240px; background:#eeeeef; display:flex; flex-direction:column; overflow:hidden; transition:background .3s; }
.resource-tile:nth-child(2) { background:#dedee3; }
.resource-tile:nth-child(3) { background:#ceced4; }
.resource-tile:nth-child(4) { background:#e4e4e7; }
.resource-tile:hover { background:#fff; }
.resource-tile::before { content:""; position:absolute; width:150px; height:90px; border:1px solid #aa12631f; border-radius:50%; top:-45px; right:-60px; transform:rotate(-30deg); }
.resource-tile h4 { font-size:1.5rem; position:relative; margin:2.5rem 0 .7rem; }
.resource-tile p { font-size:.85rem; margin:0; }
.resource-type { font-size:.6rem; text-transform:uppercase; letter-spacing:.13em; color:var(--raspberry-dark); }
.resource-arrow { position:absolute; bottom:1rem; right:1.2rem; color:var(--raspberry); }
.reading-heading { margin:4rem 0 1.5rem !important; font:1.6rem/1.3 var(--serif) !important; }
.reading-list article { padding:1.4rem 0; border-top:1px solid var(--line); }
.reading-link { font-size:1rem; line-height:1.6; }
.reading-link:hover { color:var(--raspberry); }
.reading-list p { margin:.5rem 0 0; font-size:.95rem; line-height:1.8; color:var(--muted); }
.associate-intro { display:grid; grid-template-columns:1fr 1fr; gap:5rem; padding-top:5rem; padding-bottom:5rem; }
.associate-intro p { margin:0; line-height:1.85; }
.associate-intro .intro-copy { font-size:1.35rem; line-height:1.6; }
.partner-list { padding-top:1rem; padding-bottom:5rem; }
.partner { display:grid; grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr); gap:clamp(3rem,6vw,6rem); max-width:1100px; margin:auto; padding:3.5rem 0; border-bottom:1px solid var(--line); align-items:center; }
.partner figure { margin:0; }
.partner img { width:100%; height:auto; max-height:390px; object-fit:contain; object-position:left; }
.partner h2 { margin:0 0 1.5rem; font-size:1.6rem; line-height:1.35; }
.partner h2 a:hover { color:var(--raspberry); }
.partner h2 a { text-decoration:underline; text-decoration-color:#aa126350; text-underline-offset:.2em; }
.partner p { margin:0; line-height:1.85; }
.contact-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(3rem,7vw,7rem); padding-top:5rem; padding-bottom:6rem; }
.contact-copy p { margin:2rem 0 1.5rem; font:1.25rem/1.8 var(--serif); }
#contact-form { scroll-margin-top:105px; }
#contact-form label { display:block; margin:0 0 .4rem; font-size:.8rem; font-weight:700; }
#contact-form input,#contact-form textarea { display:block; width:100%; margin-bottom:1.5rem; padding:.85rem .9rem; border:1px solid #c3c3c8; border-radius:0; background:#f5f5f6; color:var(--ink); font:1rem/1.55 var(--sans); }
.form-note { color:var(--muted); font-size:.82rem; margin-bottom:1.5rem; }
#contact-status { font-size:.85rem; color:var(--raspberry); }
.legal-copy { max-width:none; padding-top:4rem; padding-bottom:5rem; }
.legal-copy>div { max-width:720px; }
.legal-copy p { margin:.5rem 0; font-size:1rem; }
.site-footer { padding-top:3.5rem; padding-bottom:3.5rem; }
.footer-brand { font-size:1.8rem; }
.footer-brand span { color:#de5b9d; }
.site-footer nav a:hover { color:#de5b9d; }
@keyframes content-enter { from { opacity:.25; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }
@media(min-width:1450px) { .section { padding-left:max(5rem,calc((100vw - 1290px)/2)); padding-right:max(5rem,calc((100vw - 1290px)/2)); } }
@media(max-width:1000px) {
 .main-nav { gap:1.15rem; } .brand-name { font-size:.84rem; }
 .journey-tabs { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; background:transparent; gap:1px; }
 .journey-tabs button { min-width:210px; scroll-snap-align:start; }
 .faq-layout { grid-template-columns:1fr; gap:2rem; }
 .case-columns { gap:1.3rem; }
 .resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .home-hero h1 { font-size:clamp(2.3rem,5vw,3.5rem); }
 .hero-bottom { width:82%; }
}
@media(max-width:900px) {
 .site-header { height:74px; } .menu-button { font-family:var(--sans); font-size:.85rem; padding:.6rem .1rem; }
 .main-nav { background:#f1f1f1; gap:1.25rem; }
 .main-nav.open { overflow-y:auto; justify-content:flex-start; padding-top:6rem; }
 .nav-services { width:auto; max-width:100%; flex:none; }
 .main-nav>a,.services-toggle { font-size:1.6rem; }
 .services-menu { width:auto; max-width:100%; white-space:normal; }
 .nav-indicator { display:none; }
 .main-nav.indicator-ready>a::after,.main-nav.indicator-ready .services-toggle::after { display:block; }
 .home-hero { min-height:calc(100svh - 74px); gap:2.5rem; padding-top:3.5rem; padding-bottom:3.5rem; }
 .hero-bottom { width:100%; margin-left:0; padding-left:1.4rem; }
 .hero-bottom p { font-size:1rem; }
 .philosophy-intro { gap:2.5rem; }
 .philosophy-columns { grid-template-columns:1fr; gap:2rem; }
 .overview-heading { grid-template-columns:1fr; gap:2rem; }
 .service-grid { grid-template-columns:1fr 1fr; }
 .service-card { padding:2rem 1.6rem 3.5rem; }
 .testimonial-card { padding:3.7rem 2rem 5rem; min-height:350px; }
 .carousel-controls { left:auto; right:2rem; }
 .simple-hero { min-height:340px; padding-top:4rem; padding-bottom:3rem; }
 .simple-hero h1 { font-size:clamp(2.3rem,5vw,3.4rem); }
 .editorial-columns,.editorial-lower { gap:2.5rem; }
 .journey-panel { grid-template-columns:70px 1fr; padding:2rem; gap:1.5rem; }
 .on-call>div,.why-work>div { grid-template-columns:1fr; gap:1.5rem; }
 .case-heading { grid-template-columns:1fr; gap:1.5rem; }
 .case-columns { grid-template-columns:1fr 1fr; gap:2rem; }
 .case-impact { grid-column:1/-1; }
 .profile-intro { grid-template-columns:.8fr 1.2fr; gap:2rem; }
 .profile-intro .profile-image { height:auto; min-height:0; }
 .profile-brief p { font-size:1.1rem; }
 .about-background { grid-template-columns:1fr; gap:2rem; }
 .about-practice { gap:2.5rem; }
 .about-practice aside { padding-left:1.5rem; }
 .associate-intro { gap:2.5rem; }
 .contact-layout { gap:2.5rem; }
}
@media(max-width:650px) {
 .section { padding-left:1.3rem; padding-right:1.3rem; }
 .site-header { padding:0 1.3rem; }
 .home-hero h1 { font-size:2.35rem; line-height:1.12; }
 .home-hero h1 em { margin-left:0; }
 .home-hero { gap:2rem; }
 .philosophy,.services-overview,.service-editorial,.library,.about-background,.about-practice { padding-top:3.5rem; padding-bottom:3.5rem; }
 .philosophy-intro { grid-template-columns:1fr; margin-bottom:3rem; }
 .home-portrait { max-width:350px; }
 .philosophy-lead { font-size:1.4rem; }
 .philosophy-columns { padding-top:2rem; }
 .service-grid { grid-template-columns:1fr; }
 .service-card { min-height:0; padding:2rem 1.5rem 3.5rem; }
 .service-card h3 { font-size:1.9rem; }
 .quote-slide blockquote { font-size:1.3rem; }
 .testimonial-card { padding:3rem 1.5rem 5rem; min-height:370px; }
 .testimonials,.faq { padding-top:3.5rem; padding-bottom:3.5rem; }
 .answer-inner { padding-right:0; }
 .accordion-item button { gap:1rem; }
 .simple-hero { min-height:300px; }
 .simple-hero h1 { font-size:2.4rem; }
 .simple-hero>p { font-size:1.2rem; }
 .service-lead { padding-top:2.5rem; padding-bottom:2.5rem; }
 .service-lead p { font-size:1.4rem; }
 .editorial-columns,.editorial-lower { grid-template-columns:1fr; gap:1rem; }
 .editorial-lower { margin-top:1rem; padding-top:2rem; }
 .journey { padding-top:3rem; padding-bottom:3rem; }
 .journey-panel { grid-template-columns:1fr; gap:1rem; padding:1.5rem; }
 .journey-number { font-size:2rem; }
 .journey-instruction { font-size:1.2rem; }
 .service-contact p { font-size:1.25rem; }
 
 
 
 
 
 
 
 
 
 
 .case-columns { grid-template-columns:1fr; }
 .case-heading h2 { font-size:1.9rem; }
 .case-controls { justify-content:flex-start; }
 .profile-heading { padding-top:3.5rem; }
 .profile-heading h1 { font-size:2.5rem; }
 .profile-intro { grid-template-columns:1fr; padding-top:2rem; padding-bottom:3.5rem; }
 .profile-intro .profile-image { max-width:400px; min-height:0; height:auto; }
 .profile-brief p { font-size:1.2rem; }
 .background-timeline article { grid-template-columns:1fr; gap:.6rem; }
 .about-practice { grid-template-columns:1fr; }
 .about-practice aside { border-left:0; border-top:1px solid var(--line); padding:2rem 0 0; }
 .resource-grid { grid-template-columns:1fr 1fr; }
 .resource-tile { padding:1.2rem 1rem 2.8rem; min-height:230px; }
 .resource-tile h4 { font-size:1.25rem; }
 .associate-intro { grid-template-columns:1fr; gap:2rem; padding-top:3.5rem; padding-bottom:3.5rem; }
 .partner { grid-template-columns:1fr; gap:1.5rem; padding:2.5rem 0; }
 .partner figure { max-width:280px; }
 .partner h2 { font-size:1.5rem; }
 .contact-layout { grid-template-columns:1fr; padding-top:3rem; padding-bottom:4rem; }
 .footer-brand { font-size:1.5rem; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

/* October revision: shared alignment, restrained patterns and grouped content. */
:root { --content-width:1150px; }
.section-inner { max-width:var(--content-width); margin-inline:auto; }
.simple-hero>h1,.simple-hero>.page-subtitle,.profile-heading>h1,.profile-heading>p {
 width:min(100%,var(--content-width)); max-width:var(--content-width); margin-left:auto; margin-right:auto;
}
.simple-hero>h1,.profile-heading>h1 { position:relative; z-index:1; }
.simple-hero>.page-subtitle { margin-top:1.25rem; }
.profile-heading>p { margin-top:1.25rem; }
.service-lead p { max-width:var(--content-width); }
em,.hero-bottom p em { font-weight:400; }
.philosophy-columns>div>p+p { margin-top:1.5rem; }
.philosophy-columns p { font:400 1.03rem/1.85 var(--sans); }
.home-hero h1 em { font-weight:400; }
.editorial-lower.single-column { display:block; }
.editorial-lower p:last-child { font:400 1rem/1.85 var(--sans); }
.journey-intro { max-width:950px; margin-bottom:2.4rem; }
.journey-intro>p { font:400 1rem/1.85 var(--sans); margin:0 0 1.25rem; }
.journey-intro>.journey-instruction { margin:0; color:var(--ink); font:400 1rem/1.7 var(--sans); }


.cases-intro { margin:0 auto 2rem !important; font:400 1.05rem/1.8 var(--sans); }
.case-controls { margin-bottom:2.5rem; }
.on-call>div,.why-work>div { display:block; }
.on-call h2,.why-work h2 { margin:0 0 1.25rem; }
.on-call p,.why-work p { max-width:1000px; font:400 1rem/1.85 var(--sans); }
.about-background { max-width:none; display:block; }
.about-section-heading,.background-copy { max-width:var(--content-width); margin-inline:auto; }
.about-section-heading h2 { margin:0 0 2rem; }
.background-copy { display:grid; grid-template-columns:1fr; gap:1.5rem; }
.background-copy p { margin:0; max-width:1050px; font:400 1rem/1.85 var(--sans); }
.discretion-note { font:inherit; color:var(--ink); }
.library-content { margin-inline:auto; }
.library-intro { max-width:950px; font:400 1rem/1.8 var(--sans); margin:1.25rem 0 2.5rem; }
.resource-section { margin-top:2.5rem; --resource-columns:4; }
.resource-section-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.3rem; }
.resource-section-heading h3,.library-content>.reading-heading { margin:0; font:700 .78rem/1.5 var(--sans) !important; letter-spacing:.1em; text-transform:uppercase; }
.resource-controls { display:flex; gap:.6rem; }
.resource-controls button { width:38px; height:38px; border:1px solid var(--ink); border-radius:50%; color:var(--ink); background:transparent; font:400 1rem var(--sans); transition:background .25s,color .25s; }
.resource-controls button:hover:not(:disabled) { background:var(--raspberry-dark); border-color:var(--raspberry-dark); color:white; }
.resource-controls button:disabled { opacity:.25; cursor:default; }
.resource-track { display:grid; grid-template-columns:repeat(var(--resource-columns),minmax(0,1fr)); gap:1rem; }
.resource-section.is-interactive .resource-viewport { overflow:hidden; }
.resource-section.is-interactive .resource-track { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - (var(--resource-columns) - 1)*1rem)/var(--resource-columns)); transition:transform .65s cubic-bezier(.22,.8,.25,1); }
.resource-tile { --pattern-ink:rgba(80,80,88,.18); isolation:isolate; display:flex; flex-direction:column; min-height:300px; padding:1.35rem 1.25rem 3rem; color:var(--ink); background:#e7e7ea; border:0; transition:filter .25s; }
.resource-tile.pattern-0 { background:#e7e7ea; }
.resource-tile.pattern-1 { --pattern-ink:rgba(255,255,255,.2); background:#941054; color:white; }
.resource-tile.pattern-2 { --pattern-ink:rgba(255,255,255,.16); background:#252529; color:white; }
.resource-tile.pattern-3 { background:#d8d8dd; }
.resource-tile:hover { background:inherit; filter:brightness(1.07); }
.resource-tile.pattern-0:hover { background:#e7e7ea; }
.resource-tile.pattern-1:hover { background:#941054; }
.resource-tile.pattern-2:hover { background:#252529; }
.resource-tile.pattern-3:hover { background:#d8d8dd; }
.resource-tile::before { z-index:-1; inset:0; width:auto; height:auto; border:0; border-radius:0; transform:none; pointer-events:none; background:repeating-radial-gradient(ellipse at -35% 120%,transparent 0 25px,var(--pattern-ink) 26px 27px,transparent 28px 43px); }
.resource-tile.pattern-1::before { background:repeating-radial-gradient(ellipse at 125% -15%,transparent 0 22px,var(--pattern-ink) 23px 24px,transparent 25px 41px); }
.resource-tile.pattern-2::before { background:repeating-radial-gradient(ellipse at -25% 25%,transparent 0 26px,var(--pattern-ink) 27px 28px,transparent 29px 46px); }
.resource-tile.pattern-3::before { background:repeating-linear-gradient(135deg,transparent 0 31px,var(--pattern-ink) 32px 33px,transparent 34px 52px); }
.resource-tile h4 { font:400 1.35rem/1.22 var(--serif); margin:2rem 0 .8rem; position:relative; }
.resource-tile .resource-author { font:400 .84rem/1.55 var(--sans); margin:0; }
.resource-tile .resource-detail { font:400 .73rem/1.65 var(--sans); margin:.6rem 0 0; opacity:.87; }
.resource-tile .resource-type { color:var(--raspberry-dark); }
.resource-tile.pattern-1 .resource-type,.resource-tile.pattern-2 .resource-type,
.resource-tile.pattern-1 .resource-arrow,.resource-tile.pattern-2 .resource-arrow { color:#fff; }
.library-content>.reading-heading { margin:3rem 0 1.4rem !important; }
.honeypot { display:none; }
#contact-status { margin:1rem 0 0; font:.9rem/1.6 var(--sans); }
@media(max-width:1000px) {
 .resource-section { --resource-columns:2; }
 .resource-tile { min-height:270px; }
}
@media(max-width:650px) {
 .resource-section { --resource-columns:1; }
 .resource-tile { min-height:260px; }
 .resource-tile h4 { font-size:1.5rem; }
 .on-call h2,.why-work h2 { font-size:1.65rem; }
 
}
@media(prefers-reduced-motion:reduce) { .resource-track { transition:none !important; } }

.hero-bottom p { min-width:0; width:100%; }
.hero-bottom p em { white-space:normal; }
.resource-tile::before { z-index:0; opacity:.55; }
.resource-tile>* { position:relative; z-index:1; }
.resource-tile>.resource-arrow { position:absolute; bottom:1rem; right:1.2rem; }
.journey-tabs button { display:block; }
.journey-tabs small,.journey-tabs strong,.journey-tabs span { display:block; white-space:normal; overflow-wrap:anywhere; }

/* Original vector patterns: concentric arcs and a diagonal variation. */
.resource-tile.pattern-0::before { background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20360%22%20fill%3D%22none%22%20stroke%3D%22%2355555f%22%20stroke-width%3D%221.1%22%20stroke-opacity%3D%22.32%22%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%2270%22%20ry%3D%2260%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%2296%22%20ry%3D%2283%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22122%22%20ry%3D%22106%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22148%22%20ry%3D%22128%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22174%22%20ry%3D%22151%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22200%22%20ry%3D%22174%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22226%22%20ry%3D%22196%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22252%22%20ry%3D%22219%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22278%22%20ry%3D%22241%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22304%22%20ry%3D%22264%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22330%22%20ry%3D%22287%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22356%22%20ry%3D%22309%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22382%22%20ry%3D%22332%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22408%22%20ry%3D%22354%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22434%22%20ry%3D%22377%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22460%22%20ry%3D%22400%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22486%22%20ry%3D%22422%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22512%22%20ry%3D%22445%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22538%22%20ry%3D%22468%22%2F%3E%3Cellipse%20cx%3D%22-70%22%20cy%3D%22390%22%20rx%3D%22564%22%20ry%3D%22490%22%2F%3E%3C%2Fsvg%3E") center/cover no-repeat; opacity:.65; }
.resource-tile.pattern-1::before { background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20360%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.1%22%20stroke-opacity%3D%22.32%22%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%2270%22%20ry%3D%2260%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%2296%22%20ry%3D%2283%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22122%22%20ry%3D%22106%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22148%22%20ry%3D%22128%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22174%22%20ry%3D%22151%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22200%22%20ry%3D%22174%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22226%22%20ry%3D%22196%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22252%22%20ry%3D%22219%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22278%22%20ry%3D%22241%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22304%22%20ry%3D%22264%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22330%22%20ry%3D%22287%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22356%22%20ry%3D%22309%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22382%22%20ry%3D%22332%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22408%22%20ry%3D%22354%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22434%22%20ry%3D%22377%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22460%22%20ry%3D%22400%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22486%22%20ry%3D%22422%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22512%22%20ry%3D%22445%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22538%22%20ry%3D%22468%22%2F%3E%3Cellipse%20cx%3D%22360%22%20cy%3D%22-70%22%20rx%3D%22564%22%20ry%3D%22490%22%2F%3E%3C%2Fsvg%3E") center/cover no-repeat; opacity:.65; }
.resource-tile.pattern-2::before { background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20360%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.1%22%20stroke-opacity%3D%22.32%22%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%2270%22%20ry%3D%2260%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%2296%22%20ry%3D%2283%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22122%22%20ry%3D%22106%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22148%22%20ry%3D%22128%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22174%22%20ry%3D%22151%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22200%22%20ry%3D%22174%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22226%22%20ry%3D%22196%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22252%22%20ry%3D%22219%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22278%22%20ry%3D%22241%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22304%22%20ry%3D%22264%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22330%22%20ry%3D%22287%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22356%22%20ry%3D%22309%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22382%22%20ry%3D%22332%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22408%22%20ry%3D%22354%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22434%22%20ry%3D%22377%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22460%22%20ry%3D%22400%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22486%22%20ry%3D%22422%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22512%22%20ry%3D%22445%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22538%22%20ry%3D%22468%22%2F%3E%3Cellipse%20cx%3D%22-85%22%20cy%3D%2265%22%20rx%3D%22564%22%20ry%3D%22490%22%2F%3E%3C%2Fsvg%3E") center/cover no-repeat; opacity:.65; }
.resource-tile.pattern-3::before { background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20360%22%20fill%3D%22none%22%20stroke%3D%22%2355555f%22%20stroke-width%3D%221.1%22%20stroke-opacity%3D%22.32%22%3E%3Cpath%20d%3D%22M%20-500%20-80%20L%20-30%20420%22%2F%3E%3Cpath%20d%3D%22M%20-468%20-80%20L%202%20420%22%2F%3E%3Cpath%20d%3D%22M%20-436%20-80%20L%2034%20420%22%2F%3E%3Cpath%20d%3D%22M%20-404%20-80%20L%2066%20420%22%2F%3E%3Cpath%20d%3D%22M%20-372%20-80%20L%2098%20420%22%2F%3E%3Cpath%20d%3D%22M%20-340%20-80%20L%20130%20420%22%2F%3E%3Cpath%20d%3D%22M%20-308%20-80%20L%20162%20420%22%2F%3E%3Cpath%20d%3D%22M%20-276%20-80%20L%20194%20420%22%2F%3E%3Cpath%20d%3D%22M%20-244%20-80%20L%20226%20420%22%2F%3E%3Cpath%20d%3D%22M%20-212%20-80%20L%20258%20420%22%2F%3E%3Cpath%20d%3D%22M%20-180%20-80%20L%20290%20420%22%2F%3E%3Cpath%20d%3D%22M%20-148%20-80%20L%20322%20420%22%2F%3E%3Cpath%20d%3D%22M%20-116%20-80%20L%20354%20420%22%2F%3E%3Cpath%20d%3D%22M%20-84%20-80%20L%20386%20420%22%2F%3E%3Cpath%20d%3D%22M%20-52%20-80%20L%20418%20420%22%2F%3E%3Cpath%20d%3D%22M%20-20%20-80%20L%20450%20420%22%2F%3E%3Cpath%20d%3D%22M%2012%20-80%20L%20482%20420%22%2F%3E%3Cpath%20d%3D%22M%2044%20-80%20L%20514%20420%22%2F%3E%3Cpath%20d%3D%22M%2076%20-80%20L%20546%20420%22%2F%3E%3Cpath%20d%3D%22M%20108%20-80%20L%20578%20420%22%2F%3E%3Cpath%20d%3D%22M%20140%20-80%20L%20610%20420%22%2F%3E%3Cpath%20d%3D%22M%20172%20-80%20L%20642%20420%22%2F%3E%3Cpath%20d%3D%22M%20204%20-80%20L%20674%20420%22%2F%3E%3Cpath%20d%3D%22M%20236%20-80%20L%20706%20420%22%2F%3E%3Cpath%20d%3D%22M%20268%20-80%20L%20738%20420%22%2F%3E%3Cpath%20d%3D%22M%20300%20-80%20L%20770%20420%22%2F%3E%3C%2Fsvg%3E") center/cover no-repeat; opacity:.65; }

/* Same content, with the v8-style continuous grey/pink comparison restored. */

























.journey-support { background:#fff; margin-top:1.5rem; padding:2.5rem 3rem; border-top:1px solid #d7d7db; }
.journey-support>div { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); align-items:start; gap:3rem; }
.journey-support h2 { font:400 1.65rem/1.3 var(--serif); margin:0; }
.journey-support p { font:400 1rem/1.85 var(--sans); margin:0; }
@media(max-width:800px) {
 
 .journey-support { padding:2rem; }
 .journey-support>div { grid-template-columns:1fr; gap:1.25rem; }
}
@media(max-width:650px) {
 
 
 
 
 
 
 .journey-support { padding:1.5rem; }
 .journey-support h2 { font-size:1.5rem; }
}

/* The selected step and ongoing support are one continuous detail box. */
.journey-details { background:#fff; }
.journey-details>.journey-panel { background:transparent; min-height:0; padding-bottom:1.5rem; }
.journey-details>.journey-support { margin:0; background:transparent; border:0; padding:0 3rem 2.4rem calc(3rem + 120px + 2rem); }
.journey-details>.journey-support>div { display:block; border-top:1px solid #dedee2; padding-top:1.5rem; }
.journey-details>.journey-support h2 { font:400 1.3rem/1.35 var(--serif); margin:0 0 .7rem; }
.journey-details>.journey-support p { font:400 1rem/1.85 var(--sans); margin:0; }
@media(max-width:900px) {
 .journey-details>.journey-support { padding:0 2rem 2rem calc(2rem + 70px + 1.5rem); }
}
@media(max-width:650px) {
 .journey-details>.journey-support { padding:0 1.5rem 1.5rem; }
 .journey-details>.journey-support h2 { font-size:1.25rem; }
}

/* October call corrections. Keep content and original artwork intact. */
.brand-symbol img { filter:none; }
.footer-brand span,.site-footer nav a:hover { color:var(--raspberry); }
.home-portrait { overflow:hidden; aspect-ratio:4/5; }
.home-portrait img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.why-work { background:var(--raspberry); color:#fff; }
.why-work h2,.why-work p,.why-work em { color:#fff; }

/* Labels, titles and descriptions share the same row across all five steps. */
.journey-tabs button { display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; gap:0; min-height:230px; }
.journey-tabs small { margin:0 0 1.1rem; min-height:1rem; line-height:1rem; flex:0 0 auto; align-self:flex-start; }
.journey-tabs strong { margin:0 0 1.1rem; min-height:3.3rem; flex:0 0 auto; font-size:1.16rem; line-height:1.35; text-wrap:normal; }
.journey-tabs span { margin:0; }
.journey-details>.journey-panel { grid-template-columns:190px minmax(0,1fr); gap:2rem; padding:2.4rem 3rem 1.8rem; }
.journey-details>.journey-support { padding:0 3rem 2.4rem; }
.journey-details>.journey-support>div { display:grid; grid-template-columns:190px minmax(0,1fr); gap:2rem; padding-top:1.8rem; border-top:1px solid var(--line); }
.journey-details>.journey-support h2 { margin:0; font-size:1.22rem; line-height:1.4; }
.journey-details>.journey-support p { max-width:900px; }

/* Team copy reads in two paired rows, with a common left edge and spacing. */
.team-editorial .editorial-columns { gap:2rem clamp(2.5rem,5vw,5rem); }
.team-editorial .editorial-columns>div { min-width:0; }
.team-editorial .editorial-columns p { margin:0; }
.team-editorial .editorial-columns>div:nth-child(n+3) { border-top:1px solid var(--line); padding-top:2rem; }
.business-editorial .editorial-columns { gap:clamp(2.5rem,5vw,5rem); }
.business-editorial .editorial-columns p:last-child { margin-bottom:0; }

/* Read both sides immediately. No slider, draggable divider or hidden copy. */
.team-comparison { padding-top:3.5rem; padding-bottom:3.5rem; background:linear-gradient(120deg,#e5e5e8,#f1f1f2); }
.comparison-inner { width:100%; max-width:860px; margin:auto; }
.comparison-intro { font:400 1.05rem/1.8 var(--sans); margin:0 0 2rem; max-width:800px; }
.comparison-caption { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0; margin:0; }
.comparison-caption>span { padding:.9rem 1.6rem; font:600 .9rem/1.4 var(--sans); border:1px solid #c9c9ce; border-bottom:0; background:#fafafa; }
.comparison-caption>[data-comparison-to] { color:var(--raspberry-dark); border-left:0; background:#f0ecef; }
.comparison-stage { border:1px solid #c9c9ce; background:#fafafa; }
.comparison-row { border-bottom:1px solid #dedee2; }
.comparison-row:last-child { border-bottom:0; }
.comparison-copy { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0; }
.comparison-copy>p { margin:0; padding:1.3rem 1.6rem; display:flex; align-items:center; min-height:105px; font:400 1.12rem/1.55 var(--serif); overflow-wrap:break-word; }
.comparison-before { color:var(--ink); background:#fafafa; }
.comparison-after { color:var(--raspberry-dark); background:linear-gradient(90deg,#f5eef2,#f0ecef); border-left:1px solid #dedee2; }

@media(max-width:1100px) and (min-width:901px) {
 .journey-tabs button { padding-left:1rem; padding-right:1rem; min-height:250px; }
 .journey-tabs strong { min-height:4.6rem; font-size:1.05rem; }
}
@media(max-width:900px) {
 .journey-details>.journey-panel { grid-template-columns:160px minmax(0,1fr); padding:2rem 2rem 1.6rem; gap:1.5rem; }
 .journey-details>.journey-support { padding:0 2rem 2rem; }
 .journey-details>.journey-support>div { grid-template-columns:160px minmax(0,1fr); gap:1.5rem; }
 .journey-tabs button { min-height:230px; }
}
@media(max-width:650px) {
 .team-editorial .editorial-columns { gap:1.6rem; }
 .team-editorial .editorial-columns>div:nth-child(n+3) { border-top:0; padding-top:0; }
 .business-editorial .editorial-columns { gap:1.5rem; }
 .journey-details>.journey-panel { grid-template-columns:1fr; padding:1.5rem; gap:1rem; }
 .journey-details>.journey-support { padding:0 1.5rem 1.5rem; }
 .journey-details>.journey-support>div { grid-template-columns:1fr; gap:.85rem; padding-top:1.5rem; }
 .team-comparison { padding-top:2.5rem; padding-bottom:2.5rem; }
 .comparison-intro { font-size:1rem; }
 .comparison-caption>span { padding:.7rem 1rem; }
 .comparison-copy>p { padding:1rem; font-size:1rem; min-height:0; }
 .comparison-copy { grid-template-columns:1fr; }
 .comparison-caption { display:none; }
 .comparison-copy>p { display:block; }
 .comparison-copy>p::before { display:block; margin-bottom:.45rem; font:600 .78rem/1.4 var(--sans); }
 .comparison-before::before { content:'From'; }
 .comparison-after::before { content:'To'; }
 .comparison-after { border-left:0; border-top:1px solid #e5dde2; }
}

/* Use the supplied logo as-is, without cropping, filters or redrawing. */
.brand-symbol { width:42px; height:43px; flex:0 0 42px; overflow:visible; }
.brand-symbol img { width:100%; height:100%; max-width:100%; object-fit:contain; transform:none; filter:none; }

/* Keep the light v13 colours, compact width and the movable centre divider. */
.comparison-caption { display:flex; justify-content:space-between; gap:1rem; margin:0 0 1rem; }
.comparison-caption>button { appearance:none; border:0; padding:.4rem 0; background:transparent; color:var(--ink); font:400 1.35rem/1.3 var(--serif); }
.comparison-caption>[data-comparison-to] { background:transparent; color:var(--raspberry-dark); }
.comparison-stage { position:relative; --reveal:50%; }
.comparison-stage.is-reveal .comparison-copy { grid-template-columns:minmax(0,1fr); }
.comparison-stage.is-reveal .comparison-copy>p { grid-area:1/1; min-height:115px; padding:1.5rem 2rem; border-left:0; }
.comparison-stage.is-reveal .comparison-before { clip-path:inset(0 0 0 var(--reveal)); }
.comparison-stage.is-reveal .comparison-after { clip-path:inset(0 calc(100% - var(--reveal)) 0 0); }
.comparison-seam { position:absolute; top:0; bottom:0; left:var(--reveal); border-left:2px solid var(--raspberry); transform:translateX(-1px); pointer-events:none; z-index:2; }
.comparison-handle { position:absolute; top:50%; left:0; transform:translate(-50%,-50%); display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#fff; color:var(--raspberry-dark); border:1px solid #aa126355; box-shadow:0 3px 14px #00000018; font:400 1.1rem/1 var(--sans); pointer-events:auto; touch-action:none; cursor:ew-resize; user-select:none; }
.comparison-handle:focus-visible { outline:2px solid var(--raspberry-dark); outline-offset:4px; }
@media(max-width:650px){
 .comparison-caption { display:flex; }
 .comparison-stage.is-reveal .comparison-copy>p { min-height:160px; padding:1.25rem; }
 .comparison-stage.is-reveal .comparison-copy>p::before { content:none; }
 .comparison-stage.is-reveal .comparison-after { border-top:0; }
}

/* Isolated mark on white, displayed without the screenshot's tinted square. */
.brand-symbol { width:52px; height:52px; flex:0 0 52px; background:#fff; }
.brand-symbol img { width:100%; height:100%; object-fit:contain; transform:none; filter:none; }

/* v11 comparison: grey From, solid pink To, white To copy and centre handle. */
.team-comparison { background:#ededee; }
.comparison-stage { background:#dedee2; border-color:#c8c8ce; }
.comparison-row { border-bottom-color:#ffffff70; }
.comparison-stage .comparison-before { background:#dedee2; color:#242427; }
.comparison-stage .comparison-after { background:var(--raspberry); color:#fff; }
.comparison-stage.is-reveal .comparison-copy>p { min-height:96px; padding:1.05rem 1.75rem; font:400 1.13rem/1.5 var(--serif); }
.comparison-seam { border-left-color:#fff; }
.comparison-handle { color:var(--raspberry); border-color:#aa126333; }
@media(max-width:650px){
 .comparison-stage.is-reveal .comparison-copy>p { min-height:140px; padding:1.15rem 1.25rem; font-size:1.04rem; line-height:1.55; }
}

/* Restore the previous light pink To surface, preserving the v11 interaction. */
.comparison-stage .comparison-after { background:linear-gradient(90deg,#f5eef2,#f0ecef); color:var(--raspberry-dark); }

/* Use Angelika's supplied photo without extra cropping or colour changes. */
.home-portrait { aspect-ratio:auto; overflow:visible; }
.home-portrait img { height:auto; object-fit:contain; }
/* October 13: black service hero copy, in balanced continuous columns. */
.service-balanced .service-intro-columns {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(2.5rem,5vw,5rem);
  align-items:start;
}
.service-intro-column { min-width:0; }
.service-balanced .service-intro-lead {
  margin:0 0 1.75rem;
  font:400 clamp(1.55rem,2.2vw,1.8rem)/1.45 var(--serif);
  color:var(--ink);
}
.service-balanced .service-intro-column>p:last-child { margin-bottom:0; }
@media(min-width:651px) {
  body[data-page="team-development"] .service-intro-columns {
    grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  }
}
@media(max-width:650px) {
  .service-balanced .service-intro-columns { grid-template-columns:1fr; gap:1.5rem; }
  .service-balanced .service-intro-lead { margin-bottom:1.5rem; }
}

/* Final home feedback: one centred reading column with equal paragraph gaps. */
.philosophy-columns {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  max-width:800px;
  margin:0 auto;
  gap:1.5rem;
}
.philosophy-columns>p { margin:0; }
