@font-face{font-family:Montserrat;src:url('/assets/montserrat.woff') format('woff'),url('/assets/montserrat.ttf') format('truetype');font-weight:100 900;font-display:swap}

/* One shared layout system for landing pages, detail pages and guides. */
:root{
 --green:#2D4135;--gold:#D7A34C;--ink:#202521;--muted:#535B56;
 --mist:#F2F3F2;--line:#dce1dc;--white:#fff;--max:1240px;
 --gutter:clamp(20px,4vw,56px);--section-space:clamp(48px,6vw,80px);
 --column-gap:clamp(32px,5vw,72px);--header-height:100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}
body{margin:0;background:var(--white);color:var(--ink);font:1.0625rem/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
:where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid var(--green);outline-offset:5px}
::selection{background:#eedbb9;color:var(--green)}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
h1,h2,h3,h4{font-family:Montserrat,Arial,sans-serif;font-weight:550;line-height:1.2;color:var(--green);margin:0 0 22px;overflow-wrap:break-word;text-wrap:balance}
h1{font-size:clamp(2.25rem,4.4vw,4.25rem);letter-spacing:-.045em;max-width:970px}
h2{font-size:clamp(1.75rem,2.8vw,2.5rem);letter-spacing:-.035em}
h3{font-size:1.25rem;letter-spacing:-.018em}
h4{font-size:1.0625rem;font-weight:650}
p{margin:0 0 22px}
ul,ol{padding-left:1.25em;margin-top:0}
li{padding-left:5px;margin:9px 0}
.wrap{width:calc(100% - var(--gutter)*2);max-width:var(--max);margin-inline:auto}
.wrap>*{min-width:0}
.muted{color:var(--muted)}
.eyebrow,.label{font-size:.875rem;font-weight:600;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
.eyebrow{color:var(--green);display:flex;align-items:center;gap:12px;margin-bottom:24px}
.eyebrow:before{content:'';width:25px;height:2px;background:var(--gold);flex:none}
.label{color:var(--muted);margin-bottom:16px}
.skip{position:fixed;top:8px;left:8px;padding:12px 20px;background:var(--green);color:#fff;transform:translateY(-170%);z-index:999}
.skip:focus{transform:none}

/* Header and navigation use one breakpoint and a height-aware mobile panel. */
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}
.header-inner{min-height:var(--header-height);display:flex;align-items:center;gap:24px}
.brand{flex-shrink:0}
.brand img{width:206px;height:auto}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:22px}
.main-nav>a{font-size:.875rem;text-decoration:none;white-space:nowrap;padding:12px 0;color:var(--green)}
.main-nav>a:not(.btn):hover,.main-nav>a[aria-current]{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px}
.btn,.main-nav>a.btn{display:inline-flex;justify-content:center;align-items:center;min-height:49px;max-width:100%;background:var(--green);border:1px solid var(--green);color:#fff;padding:12px 21px;text-decoration:none;font-size:.9375rem;font-weight:600;line-height:1.45;border-radius:2px;white-space:normal;transition:background .15s,color .15s}
.btn:hover{background:#405948;border-color:#405948}
.btn.light{background:#fff;color:var(--green);border-color:#fff}
.btn.light:hover{background:var(--mist);border-color:var(--mist)}
.text-link{display:inline-block;color:var(--green);font-size:1rem;font-weight:600;text-decoration:underline;text-decoration-color:#a5afa6;text-decoration-thickness:1px;padding-block:4px;overflow-wrap:anywhere}
.text-link:hover{text-decoration-color:var(--gold);text-decoration-thickness:2px}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:28px}
.menu-toggle{display:none;flex-shrink:0;background:none;border:1px solid var(--line);color:var(--green);padding:9px 14px;font-size:.9375rem;min-height:44px}

/* Landing-page components. Both supplied portraits retain their entire frame. */
.hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.85fr);gap:var(--column-gap);align-items:center;padding-block:60px}
.hero h1{font-size:clamp(2.5rem,4.7vw,4.35rem);max-width:750px}
.hero h1 span{font-weight:620}
.hero .lead{font-size:1.125rem;max-width:575px;line-height:1.7;color:var(--muted);margin-top:26px}
.hero-portrait{margin:0;align-self:center}
.hero-portrait img,.profile-visual img,.about-portrait img{width:100%;height:auto;aspect-ratio:1122/1402;object-fit:contain;background:var(--mist)}
.portrait-toggle{display:block;width:100%;padding:0;border:0;border-radius:0;background:var(--mist);line-height:0;appearance:none;cursor:pointer}
.portrait-toggle picture{display:block}
.portrait-toggle img{filter:grayscale(1);transition:filter .35s ease}
.portrait-toggle[aria-pressed="true"] img,.portrait-toggle:focus-visible:not(.portrait-activated) img{filter:grayscale(0)}
@media(hover:hover) and (pointer:fine){.portrait-toggle:hover img{filter:grayscale(0)}}
.about-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:var(--column-gap);align-items:center}
.about-intro .intro{font-size:1.1875rem;line-height:1.65}
.about-intro h3{margin-top:32px}
.about-portrait{margin:0;max-width:390px;justify-self:end;width:100%}
.portrait-caption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 16px;padding-top:16px;font-size:.9375rem;border-top:3px solid var(--gold)}
.portrait-caption strong{color:var(--green);font-weight:600}
.portrait-caption span{color:var(--muted);font-size:.875rem}
.assurance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-block:1px solid var(--line);padding-block:24px;color:var(--green);font-size:.9375rem}
.assurance div{display:flex;align-items:center;gap:12px}
.assurance div:before{content:'';width:7px;height:7px;border:1px solid var(--gold);flex:none}
.section{padding-block:var(--section-space)}
.section.tint{background:var(--mist)}
.section-joined{padding-top:0}
.section-head,.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap)}
.section-head{margin-bottom:36px;align-items:end}
.section-head p{color:var(--muted);margin-bottom:0;max-width:540px}
.section-head .eyebrow{margin-bottom:16px}
.section-head h2{max-width:560px;margin-bottom:0}
.split .intro{font-size:1.1875rem;line-height:1.65}
.split>div>:last-child{margin-bottom:0}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--column-gap);border-top:1px solid var(--line)}
.service-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:18px;padding-block:30px;border-bottom:1px solid var(--line)}
.num{font-family:Montserrat,Arial,sans-serif;color:#6a746d;font-size:.875rem;font-weight:550;padding-top:3px}
.service-item :is(h2,h3){font-size:1.25rem;line-height:1.35;margin-bottom:12px;max-width:480px;letter-spacing:-.018em}
.service-item :is(h2,h3) a{text-decoration:none}
.service-item :is(h2,h3) a:hover{text-decoration:underline;text-decoration-color:var(--gold)}
.service-item p{font-size:1rem;line-height:1.65;max-width:450px;color:var(--muted);margin-bottom:16px}
.service-item .text-link{font-size:.9375rem}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;list-style:none;padding:0;margin:36px 0 0}
.step{min-width:0;margin:0;border-top:1px solid #aab4ac;padding:22px 0 0}
.step>span{display:block;margin-bottom:20px;font-family:Montserrat,Arial,sans-serif;font-size:.875rem;color:var(--muted)}
.step h3{font-size:1.125rem;line-height:1.4}
.step p{font-size:1rem;color:var(--muted);margin:0}
.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.product{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;align-items:start;background:#fff;min-width:0}
.product h3{font-size:1.25rem;line-height:1.35;margin-bottom:14px}
.product p{font-size:1rem;color:var(--muted)}
.product .tag{font-size:.875rem;letter-spacing:.04em;font-weight:600;color:var(--green);border-top:1px solid var(--line);padding-top:16px;margin-top:auto;width:100%}
.product>.text-link{margin-top:18px;font-size:.9375rem}
.product h3 a,.scope-link h3 a{text-decoration:none}
.product h3 a:hover,.scope-link h3 a:hover{text-decoration:underline;text-decoration-color:var(--gold)}
.quote{border-left:3px solid var(--gold);padding-left:24px;margin:0 0 30px;font-family:Montserrat,Arial,sans-serif;font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.5;letter-spacing:-.02em;color:var(--green)}
.principal-block{background:var(--mist);padding:36px}
.principal-block h3{margin-bottom:12px}
.audience-list{border-top:1px solid var(--line)}
.audience-list a{display:block;text-decoration:none;padding-block:22px;border-bottom:1px solid var(--line);font-family:Montserrat,Arial,sans-serif;font-size:1.125rem;line-height:1.5;font-weight:500;color:var(--green)}
.audience-list a:hover{text-decoration:underline;text-decoration-color:var(--gold)}
.cta{background:var(--green);color:#fff;padding:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;margin-bottom:var(--section-space)}
.section.tint+.cta{margin-top:var(--section-space)}
.cta h2{color:#fff;font-size:clamp(1.65rem,2.5vw,2.05rem);margin-bottom:14px;max-width:700px}
.cta p{margin:0;color:#edf0eb;max-width:650px;font-size:1rem}
.cta :focus-visible{outline-color:var(--gold)}
.link-block{margin-top:28px}

/* The same page header, reading column and support column on detail routes. */
.page-head{padding-block:48px;border-bottom:1px solid var(--line)}
.breadcrumb{font-size:.875rem;line-height:1.6;color:var(--muted);margin-bottom:30px;display:flex;flex-wrap:wrap;gap:6px 12px}
.breadcrumb a{text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb [aria-current]{overflow-wrap:anywhere}
.page-head h1{font-size:clamp(2.2rem,4vw,3.7rem);max-width:970px;margin-bottom:24px}
.page-head .lead{font-size:1.1875rem;max-width:790px;line-height:1.7;color:var(--muted);margin:0}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--column-gap);padding-block:var(--section-space)}
.content-main{min-width:0;max-width:780px}
.content-main h2{font-size:clamp(1.6rem,2.5vw,1.9rem);margin:40px 0 20px}
.content-main h2:first-child{margin-top:0}
.content-main h3{font-size:1.125rem;line-height:1.4;margin:28px 0 14px}
.content-main p,.content-main li{color:#414a44}
.content-main ul{margin-bottom:24px}
.decision-points{margin-block:36px}
.decision-point{padding-block:18px;border-top:1px solid var(--line)}
.decision-point:last-child{border-bottom:1px solid var(--line)}
.decision-point h3{margin:0 0 10px}
.decision-point p{margin:0}
.article-intro{font-size:1.125rem;line-height:1.7}
.brief-checklist{margin-top:36px;background:var(--mist);padding:26px}
.brief-checklist h2{font-size:1.375rem;margin:0 0 18px}
.brief-checklist ul{margin-bottom:0}
.sidebar{align-self:start;min-width:0}
.sidebar.sidebar-with-photo{position:static}
.context-photo{margin:0 0 24px;max-width:300px}
.context-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.sidebar-box{background:var(--mist);padding:28px;margin-bottom:20px;border-top:3px solid var(--gold)}
.sidebar-box h2{font-size:1.25rem;line-height:1.4;margin-bottom:16px}
.sidebar-box .label{display:block}
.sidebar-box p{font-size:1rem;color:var(--muted)}
.sidebar-box .btn{width:100%;font-size:.9375rem}
.sidebar-links{border-top:1px solid var(--line);display:grid}
.sidebar-links a{border-bottom:1px solid var(--line);padding-block:14px;font-size:.9375rem;text-decoration:none;color:var(--green);overflow-wrap:anywhere}
.sidebar-links a:hover{text-decoration:underline}
.deliverables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.deliverable{padding:24px;background:var(--mist);min-width:0}
.deliverable h3{margin:0 0 12px;font-size:1.0625rem}
.deliverable p{font-size:1rem;margin:0}
.callout{padding:24px;border-left:3px solid var(--gold);background:var(--mist);margin-block:24px;font-size:1rem}
.callout p:last-child{margin-bottom:0}
.product-fit{font-size:1.125rem;line-height:1.7;color:var(--green)!important;border-left:3px solid var(--gold);padding-left:24px}
.scope-link{padding-block:22px;border-top:1px solid var(--line)}
.scope-link h3{margin:0 0 12px}
.scope-link p{margin-bottom:14px}
.guide-link,.source-context{margin-top:40px;padding:24px;border:1px solid var(--line);background:#fff}
.guide-link h2,.source-context h2{font-size:1.375rem;margin:0 0 16px}
.source-links{margin:18px 0 16px;padding-left:20px;font-size:1rem;overflow-wrap:anywhere}
.source-date{font-size:.875rem!important;color:var(--muted)!important;margin:0}
.article-next{display:grid;gap:12px;margin-top:28px;justify-items:start}
.engagement-note{margin-top:22px}
.fee-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;font-size:1rem}
.fee-table caption{text-align:left;padding-bottom:10px}
.fee-table th,.fee-table td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--line);overflow-wrap:break-word}
.fee-table th{background:var(--mist);color:var(--green);font-weight:600}
.fee-table th:first-child{width:34%}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{padding:22px 36px 22px 0;cursor:pointer;list-style:none;position:relative;font-size:1rem;font-weight:600;color:var(--green)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';position:absolute;right:4px;top:17px;font-size:1.5rem;font-weight:400}
.faq details[open] summary:after{content:'−'}
.faq details p,.faq details ul{font-size:1rem;color:var(--muted);padding-right:24px}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 32px}
.resource-card{border-top:2px solid var(--green);padding:24px 0;display:flex;flex-direction:column;align-items:start;min-width:0}
.resource-card .label{margin-bottom:18px}
.resource-card :is(h2,h3){font-size:1.25rem;line-height:1.4;letter-spacing:-.018em}
.resource-card p{font-size:1rem;color:var(--muted)}
.resource-card .text-link{margin-top:auto;font-size:.9375rem}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;color:var(--muted);margin-bottom:28px}
.numbered-notes{counter-reset:notes;list-style:none;padding:0}
.numbered-notes li{counter-increment:notes;padding:22px 0 22px 44px;border-bottom:1px solid var(--line);position:relative}
.numbered-notes li:before{content:counter(notes,decimal-leading-zero);position:absolute;left:0;top:25px;font-size:.875rem;color:var(--green)}
.numbered-notes :is(h2,h3){margin:0 0 12px;font-size:1.125rem;line-height:1.4}
.numbered-notes p{margin:0}

/* Profile, contact and short legal information share the content rhythm. */
.profile-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:var(--column-gap);padding-block:var(--section-space)}
.profile-contact{border-top:3px solid var(--gold);padding-top:20px}
.profile-contact .label{margin-bottom:10px}
.profile-contact .text-link{font-size:1rem}
.profile-content{max-width:780px}
.profile-content h2{font-size:1.75rem;margin-top:36px}
.profile-content p{color:#414a44}
.profile-content p:first-child{font-size:1.1875rem}
.contact-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:var(--column-gap);padding-block:var(--section-space)}
.contact-details h2{font-size:1.375rem;margin-bottom:16px}
.contact-details p{font-size:1rem}
.contact-details a{overflow-wrap:anywhere}
.contact-details .callout{padding:22px}
.enquiry-panel{min-width:0}
.enquiry-embed{display:block;width:100%;max-width:100%;border:0;background:#fff;scroll-margin-top:calc(var(--header-height) + 24px)}
.form-note{font-size:.9375rem;color:var(--muted)}
.form-fallback{font-size:.9375rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:14px}
.selected-service{padding:16px 20px;border-left:3px solid var(--gold);background:var(--mist);color:var(--green);font-size:1rem}
.no-js-message{padding:16px;border:1px solid var(--line)}
.legal-page{max-width:850px;padding-block:var(--section-space)}
.legal-page h2{font-size:1.6rem;margin-top:36px}
.legal-page h2:first-child{margin-top:0}
.legal-page p{font-size:1rem}

.site-footer{border-top:1px solid var(--line);padding:48px 0 24px}
.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;margin-bottom:40px}
.footer-top>div{min-width:0}
.footer-logo{width:190px;margin-bottom:24px}
.footer-top p{font-size:.9375rem;color:var(--muted);max-width:260px}
.footer-title{font-weight:600;font-size:.9375rem;margin-bottom:16px;display:block;color:var(--green)}
.footer-links{display:grid;gap:4px;font-size:.875rem;align-content:start}
.footer-links a{text-decoration:none;color:var(--muted);padding-block:3px;overflow-wrap:anywhere}
.footer-links a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:start;gap:28px;font-size:.875rem;color:var(--muted)}
.footer-bottom p{margin:0}
.footer-legal{max-width:650px}
.footer-bottom .legal-links{display:flex;flex-wrap:wrap;gap:12px 24px}

@media(min-width:961px) and (min-height:800px){.sidebar{position:sticky;top:calc(var(--header-height) + 24px)}}
@media(max-width:1180px){
 .brand img{width:180px}
 .main-nav{gap:17px}
 .main-nav>a.btn{padding-inline:16px}
}
@media(max-width:1080px){
 :root{--header-height:86px}
 .brand img{width:190px}
 .menu-toggle{display:block;margin-left:auto}
 .main-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:#fff;padding:18px var(--gutter) 26px;border-bottom:1px solid var(--line);box-shadow:0 16px 20px #00000008}
 .main-nav.open{display:flex;align-items:stretch;flex-direction:column;gap:4px;max-height:calc(100vh - var(--header-height));max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain}
 .main-nav>a{font-size:1rem;padding:12px 0;white-space:normal}
 .main-nav>a.btn{margin-top:10px;font-size:1rem}
 html:not(.js) .site-header{position:static}
 html:not(.js) .header-inner{flex-wrap:wrap;gap:16px;padding-block:18px}
 html:not(.js) .menu-toggle{display:none}
 html:not(.js) .main-nav{position:static;display:flex;flex-direction:column;width:100%;max-height:none;padding:0;border:0;box-shadow:none;gap:0}
}
@media(max-width:960px){
 .hero{grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:32px;padding-block:48px}
 .hero h1{font-size:clamp(2.5rem,4.6vw,3rem)}
 .hero .lead{font-size:1.0625rem}
 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .content-layout{grid-template-columns:minmax(0,1fr);gap:40px}
 .content-main{max-width:none}
 .sidebar{position:static;width:100%;border-top:1px solid var(--line);padding-top:32px}
 .sidebar-box{max-width:600px}
 .sidebar-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}
 .contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 .contact-details .callout{grid-column:1/-1;margin:0}
 .profile-layout{grid-template-columns:260px minmax(0,1fr);gap:32px}
 .footer-top{grid-template-columns:repeat(3,minmax(0,1fr))}
 .footer-top>div:first-child{grid-column:1/-1;display:flex;align-items:start;gap:32px}
 .footer-logo{flex:none}
 .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cta{padding:36px;gap:28px}
}
@media(max-width:720px){
 :root{--header-height:78px;--column-gap:28px}
 .brand img{width:170px}
 .hero{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:40px}
 .hero h1{font-size:clamp(2.5rem,8vw,3.4rem);max-width:650px}
 .hero .lead{margin-top:24px}
 .hero-portrait{display:block;width:100%;max-width:320px;justify-self:start}
 .portrait-caption{border-top:0;border-left:2px solid var(--gold);padding:6px 0 6px 18px;display:block}
 .hero-portrait .portrait-caption{border-top:3px solid var(--gold);border-left:0;padding:16px 0 0}
 .portrait-caption strong,.portrait-caption span{display:block}
 .portrait-caption span{margin-top:6px}
 .assurance{grid-template-columns:minmax(0,1fr);gap:16px}
 .section-head,.split{grid-template-columns:minmax(0,1fr);gap:24px}
 .about-intro{grid-template-columns:minmax(0,1fr);gap:32px}
 .about-portrait{justify-self:start;max-width:320px}
 .section-head{margin-bottom:28px}
 .service-grid,.products,.resource-grid{grid-template-columns:minmax(0,1fr)}
 .service-item{grid-template-columns:24px minmax(0,1fr);gap:14px;padding-block:26px}
 .products{gap:20px}
 .product,.principal-block{padding:26px}
 .steps{gap:28px 24px;margin-top:28px}
 .step h3{font-size:1.0625rem}
 .resource-grid{gap:4px}
 .cta{grid-template-columns:minmax(0,1fr);padding:30px 26px;gap:24px}
 .cta .btn{justify-self:start}
 .page-head{padding-block:30px 36px}
 .breadcrumb{margin-bottom:24px}
 .page-head .lead{font-size:1.0625rem}
 .sidebar-links{grid-template-columns:minmax(0,1fr)}
 .deliverables{grid-template-columns:minmax(0,1fr)}
 .profile-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 .profile-visual{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:24px;align-items:end}
 .profile-contact{border-top:0;border-left:2px solid var(--gold);padding:0 0 0 20px}
 .profile-content p:first-child{font-size:1.125rem}
 .fee-table th,.fee-table td{padding:14px 10px}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
 .footer-top>div:first-child{display:block}
 .footer-bottom{display:block}
 .footer-bottom .legal-links{margin-top:20px}
 .site-footer{padding-top:36px}
}
@media(max-width:480px){
 .steps,.contact-details{grid-template-columns:minmax(0,1fr)}
 .step{padding-top:18px}
 .step>span{margin-bottom:12px}
 .profile-visual{display:block;max-width:320px}
 .profile-contact{border-left:0;border-top:3px solid var(--gold);padding:20px 0 0}
 .guide-link,.source-context,.callout,.sidebar-box{padding:22px}
 .footer-top{grid-template-columns:minmax(0,1fr)}
 .footer-top>div:first-child{grid-column:auto}
 .eyebrow{letter-spacing:.07em}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{
 .site-header,.site-footer,.cta,.sidebar,.actions,.enquiry-embed,.form-fallback{display:none}
 .wrap{width:100%;max-width:none}
 .section,.page-head,.content-layout,.profile-layout,.legal-page{padding-block:20px}
 .content-layout,.profile-layout{display:block}
 .hero-portrait,.profile-visual{max-width:240px;margin-bottom:24px}
 a{text-decoration:none}
 .source-context,.deliverable{break-inside:avoid}
}
