/* Entry hub and topic pages. Brand colours are inherited from styles.css. */
.compact-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:24px}
.compact-header .brand img{height:80px;width:196px}
.header-actions{display:flex;align-items:center;gap:30px}
.header-contact{font-size:.875rem;line-height:1.4;padding:12px 0;border-bottom:1px solid var(--gold)}
.header-contact:hover{color:var(--gold)}
.site-menu{position:relative;z-index:30}
.site-menu summary{display:flex;align-items:center;gap:12px;padding:13px 17px;border:1px solid #c5a25388;cursor:pointer;font-size:.875rem;list-style:none;min-height:46px}
.site-menu summary::-webkit-details-marker{display:none}
.site-menu summary svg{width:21px;height:21px;color:var(--gold)}
.site-menu summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.site-menu[open] summary{background:#214b3e}
.site-menu nav{position:absolute;right:0;top:calc(100% + 12px);width:290px;padding:13px;background:var(--deep);border:1px solid #c5a25388;box-shadow:0 14px 35px #0003;display:flex;flex-direction:column;gap:0;max-height:75vh;overflow:auto}
.site-menu nav a{padding:13px 15px;line-height:1.4;font-size:.875rem;border-bottom:1px solid #ffffff1a}
.site-menu nav a:last-child{border-bottom:0}
.site-menu nav a:hover,.site-menu nav a[aria-current=page]{background:#254b3d;color:#fff}
.site-menu nav a[aria-current=page]{border-left:2px solid var(--gold)}
.compact-footer{background:var(--deep);color:#d6e1dc}
.compact-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:25px;font-size:.75rem;line-height:1.6}
.compact-footer nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.compact-footer a{padding:4px 0}
.compact-footer a:hover{color:var(--gold)}
.compact-footer .privacy{position:relative;max-width:none}
.compact-footer .privacy[open] p{position:absolute;bottom:24px;right:0;width:min(430px,calc(100vw - 40px));max-width:none;background:var(--deep);border:1px solid #c5a25388;z-index:20;padding:22px;box-shadow:0 6px 30px #0003}
.home-page{min-height:100svh;display:flex;flex-direction:column}
.home-page main{display:flex;flex:1;align-items:center}
.entry-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding-block:30px;align-items:stretch}
.entry-profile{position:relative;overflow:hidden;background:var(--deep);min-height:475px;isolation:isolate}
.entry-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 24%}
.entry-profile:after{content:'';position:absolute;inset:58% 0 0;background:linear-gradient(transparent,#102d27f2);z-index:1;pointer-events:none}
.entry-profile-copy{position:absolute;bottom:28px;left:30px;right:24px;z-index:2;color:#fff}
.entry-profile-copy h1{font-size:2.1rem;line-height:1.12;margin:0 0 12px}
.entry-profile-copy p{margin:0;font-size:.8rem;line-height:1.6;color:#edf2ef}
.entry-choices{align-self:center;min-width:0}
.entry-choices>.eyebrow{color:var(--gold-ink);margin:0 0 10px;font-size:.75rem}
.entry-choices h2{font-size:2.65rem;line-height:1.12;margin-bottom:14px}
.entry-intro{font-size:.95rem;color:var(--muted);line-height:1.55;margin:0 0 25px}
.entry-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.entry-choice{display:flex;align-items:flex-start;gap:14px;padding:21px 19px;border:1px solid var(--line);background:#fff;min-height:100px;transition:background .18s,border-color .18s;min-width:0}
.entry-choice>svg{width:25px;height:25px;flex-shrink:0;color:var(--gold-ink);margin-top:1px}
.entry-choice h3{font-size:1.3rem;line-height:1.2;letter-spacing:-.025em;margin:0 0 7px}
.entry-choice p{font-size:.75rem;line-height:1.4;margin:0;color:var(--muted)}
.entry-choice:hover{border-color:var(--gold-ink);background:#f4f8f5}
.entry-primary{background:var(--deep);color:#fff;border-color:var(--deep)}
.entry-primary>svg{color:var(--gold)}
.entry-primary p{color:#d6e1dc}
.entry-primary:hover{background:#254b3d;border-color:var(--gold)}
.entry-recognition{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:24px;border-top:1px solid var(--line);padding-top:20px;font-size:.75rem;line-height:1.6}
.entry-recognition>span:first-child{font-size:.7rem;letter-spacing:.12em;color:var(--gold-ink)}
.entry-recognition strong{font-weight:500;color:var(--ink);letter-spacing:.02em}
.entry-award-note{color:var(--muted);margin-left:auto}
.entry-recognition:hover{text-decoration:underline;text-underline-offset:4px}
.detail-page main{min-height:calc(100svh - 171px)}
.breadcrumb{display:flex;gap:14px;align-items:center;padding-block:22px;font-size:.8rem;color:var(--muted);line-height:1.5}
.breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.route-heading{padding-block:38px 45px}
.route-heading .eyebrow{color:var(--gold-ink);margin-bottom:18px}
.route-heading h1{font-size:clamp(2.4rem,4.2vw,3.5rem);max-width:780px}
.route-heading>p:not(.eyebrow){font-size:1.05rem;color:var(--muted);margin:22px 0 25px;max-width:670px}
.route-heading>.button{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.route-heading>.button:hover{background:var(--gold-hover)}
.journey-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:45px;align-items:start;padding-bottom:70px}
.journey-grid .offer{padding:0;border:0}
.journey-grid .offer>.eyebrow{display:none}
.journey-grid .offer h2{font-size:1.7rem;max-width:530px;line-height:1.25}
.journey-grid .offer-steps{margin-top:24px}
.journey-grid .offer-steps h3{font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:600;line-height:1.45;letter-spacing:0;margin-bottom:9px;min-height:0}
.journey-aside{padding:34px;background:var(--deep);color:#fff}
.journey-aside .eyebrow{color:var(--gold);font-size:.7rem;margin-bottom:18px}
.journey-aside h2{font-size:2rem;margin-bottom:23px}
.journey-aside>p:not(.eyebrow){font-size:1rem;color:#d6e1dc}
.journey-aside .button{margin-top:8px}
.detail-page .section{padding-block:36px 65px}
.detail-page .section-heading h1{font-size:clamp(2.4rem,4.2vw,3.5rem);line-height:1.12}
.detail-page .about-grid{padding-block:24px 65px}
.detail-page .about-copy h1{font-size:3.3rem;margin-bottom:24px}
.detail-page .portrait-frame .portrait{height:490px}
.detail-page .honours{padding-block:60px}
.detail-page .honours h2{font-size:3.6rem}
.detail-page .honours-count{font-size:5rem}
.detail-page .honour{padding-block:25px}
.detail-page .honour .honour-year{font-size:3.4rem;margin-block:17px}
.detail-page .honour-name{font-size:1.5rem}
.detail-page .honours-heading{margin-bottom:30px}
.detail-page .client-stories,.detail-page .content-section{border-top:0}
.detail-page .contact{padding-block:48px 75px}
.detail-page .contact h1{font-size:clamp(2.4rem,4.2vw,3.5rem);margin-bottom:25px}
.detail-page .contact-grid{gap:65px}
.detail-page .contact-card{padding:30px}
.route-cta{background:var(--deep);color:#fff;padding-block:42px}
.route-cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
.route-cta h2{font-size:2rem;margin-bottom:12px}
.route-cta p{color:#d6e1dc;margin:0;font-size:.95rem}
.route-cta>.wrap>.button{flex-shrink:0}
.detail-page .compact-footer{border-top:1px solid #ffffff22}
.detail-page .compact-footer-inner{padding-bottom:84px}
.document-help{padding-bottom:50px}
.document-help p{max-width:730px;font-size:.95rem;color:var(--muted)}
.document-help a{overflow-wrap:anywhere}
@media(min-width:1400px){.entry-profile{min-height:545px}.entry-grid{gap:75px}.entry-choice{padding-block:25px;min-height:111px}.entry-choices h2{font-size:3rem}}
@media(max-width:1050px){.entry-grid{gap:32px;grid-template-columns:.75fr 1.25fr}.entry-choice{padding:19px 15px;gap:11px}.entry-choice>svg{width:22px;height:22px}.entry-choice h3{font-size:1.2rem}.entry-choices h2{font-size:2.35rem}.entry-award-note{display:none}.compact-footer-inner{gap:17px}.compact-footer nav{gap:15px}.footer-agency{display:none}.journey-grid{gap:30px}.journey-aside{padding:28px}}
@media(max-width:780px){.compact-header-inner{min-height:82px}.compact-header .brand,.compact-header .brand img{width:164px}.compact-header .brand img{height:72px}.header-actions{gap:18px}.header-contact{font-size:.8rem}.site-menu summary{padding:11px 13px}.entry-grid{grid-template-columns:1fr;gap:28px;padding-block:24px 30px}.entry-profile{min-height:0;display:grid;grid-template-columns:120px 1fr;align-items:center;gap:23px}.entry-photo{position:static;width:120px;height:148px;object-fit:cover;object-position:center 24%}.entry-profile:after{display:none}.entry-profile-copy{position:static;padding:18px 20px 18px 0}.entry-profile-copy h1{font-size:1.9rem;margin-bottom:8px}.entry-profile-copy p{font-size:.8rem}.entry-choices h2{font-size:2.25rem;margin-bottom:10px}.entry-intro{margin-bottom:21px;font-size:.875rem}.entry-choice{min-height:102px;padding:18px;gap:13px}.entry-choice h3{font-size:1.3rem}.entry-choices>.eyebrow{display:none}.entry-recognition{margin-top:21px;padding-top:16px;gap:6px 14px}.entry-award-note{display:block;font-size:.7rem}.compact-footer-inner{align-items:flex-start;flex-direction:column;gap:10px;padding-block:20px}.compact-footer nav{width:100%;justify-content:space-between;gap:12px;font-size:.75rem}.compact-footer .privacy[open] p{right:0}.breadcrumb{padding-block:20px;font-size:.75rem}.route-heading{padding-block:20px 38px}.journey-grid{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.journey-grid .offer{padding:0}.journey-grid .offer h2{font-size:1.7rem}.journey-aside{padding:29px}.detail-page .section{padding-block:20px 45px}.detail-page .about-grid{padding-block:18px 48px;gap:32px}.detail-page .portrait-frame{max-width:480px}.detail-page .portrait-frame .portrait{height:390px}.detail-page .about-copy h1{font-size:2.7rem}.detail-page .honours{padding-block:45px}.detail-page .honours h2{font-size:3.1rem}.detail-page .honours-count{font-size:3.7rem}.detail-page .honours-heading{gap:24px}.detail-page .honour{padding-block:20px}.detail-page .honour .honour-year{font-size:2.9rem;margin:0}.detail-page .contact{padding-block:30px 48px}.detail-page .contact-grid{gap:35px}.detail-page .contact-card{padding:25px}.route-cta{padding-block:36px}.route-cta>.wrap{align-items:flex-start;flex-direction:column;gap:24px}.route-cta h2{font-size:1.9rem}.detail-page .floating-contact{width:48px;height:48px;min-height:48px;padding:11px;border-radius:50%}.detail-page .floating-contact>span{display:none}.detail-page .compact-footer-inner{padding-bottom:85px}.document-help{padding-bottom:35px}}
@media(max-width:440px){.compact-header .brand,.compact-header .brand img{width:154px}.header-actions{gap:13px}.site-menu summary{font-size:.75rem;gap:8px;padding:10px}.site-menu summary svg{width:18px;height:18px}.header-contact{font-size:.75rem}.entry-profile{grid-template-columns:100px 1fr;gap:18px}.entry-photo{width:100px;height:125px;object-position:center 23%}.entry-profile-copy{padding:15px 12px 15px 0}.entry-profile-copy h1{font-size:1.65rem}.entry-profile-copy p{font-size:.75rem;line-height:1.5}.entry-choices h2{font-size:2rem}.entry-choice{padding:16px 13px;min-height:109px;gap:10px}.entry-choice>svg{width:20px;height:20px}.entry-choice h3{font-size:1.12rem;margin-bottom:7px}.entry-choice p{font-size:.75rem;line-height:1.45}.entry-options{gap:11px}.entry-award-note{flex-basis:100%;margin-left:0}.entry-recognition{padding-top:15px;margin-top:19px}.entry-grid{gap:25px}.route-heading h1{font-size:2.35rem}}
@media(max-width:360px){.header-contact{display:none}.site-menu nav{width:min(280px,calc(100vw - 40px))}.entry-choice{display:block}.entry-choice>svg{margin-bottom:11px}.entry-choice h3{font-size:1.15rem}.entry-profile-copy h1{font-size:1.5rem}}
