/* Contact and Thinking reuse the approved shared Royal Flush system. */
.launch-page h1,.launch-page h2,.launch-page h3{font-family:var(--font-display);font-weight:400;letter-spacing:-.04em;line-height:1.1}
.page-opening,.contact-opening{padding:clamp(40px,5vw,85px) var(--pad)}
.page-opening>.eyebrow,.contact-opening>.eyebrow{color:var(--yellow);margin-bottom:24px}
.page-opening h1{max-width:17ch;font-size:clamp(43px,4.9vw,82px)}
.page-intro{font-size:clamp(18px,1.5vw,24px);line-height:1.5;max-width:61ch;margin-top:28px}
.contact-opening{padding-bottom:44px}.contact-opening h1{max-width:20ch;font-size:clamp(45px,5.4vw,90px)}
.contact-opening .page-intro{max-width:66ch}
.contact-enquiry{display:grid;grid-template-columns:3fr 2fr;gap:clamp(30px,6vw,110px);padding:0 var(--pad) 70px;align-items:start}
.contact-enquiry .contact-form{color:var(--charcoal);align-self:start;width:100%}
.direct-contact{padding-top:40px}.direct-contact>p{font-size:18px;max-width:28ch}.direct-phone{display:inline-block;font-family:var(--font-display);font-size:clamp(32px,3.2vw,53px);border-bottom:1px solid currentColor;margin:18px 0 30px;letter-spacing:-.04em}
.direct-contact .footer-socials{display:flex}.direct-contact a:hover{color:var(--yellow);text-decoration:none}
.locations{background:var(--paper);color:var(--charcoal);padding:clamp(40px,5vw,80px) var(--pad)}
.locations h2{margin-bottom:42px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--pad)}
.location-address{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px}.location-address h3{font-size:34px}.location address{font-style:normal;font-size:16px;line-height:1.6}
.map-panel{height:clamp(260px,23vw,390px);background:var(--sage);display:grid;place-items:center;overflow:hidden;margin-bottom:23px}
.location:nth-child(2) .map-panel{background:var(--blue)}
.map-prompt{text-align:center;padding:25px;max-width:36ch}.map-prompt p{font-size:14px}.map-prompt .button{margin-top:22px;background:var(--charcoal);color:var(--paper)}.map-prompt .button:hover{color:var(--yellow)}
.map-pin{display:block;width:32px;height:32px;border:2px solid currentColor;border-radius:50% 50% 50% 0;transform:rotate(-45deg);margin:0 auto 24px;position:relative}.map-pin::after{content:'';position:absolute;width:9px;height:9px;border:2px solid currentColor;border-radius:50%;top:8px;left:8px}
.map-panel iframe{width:100%;height:100%;border:0}.locations :focus-visible{outline-color:var(--charcoal)}
.first-conversation{padding:clamp(45px,6vw,100px) var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:25px 8vw}.first-conversation>.eyebrow{grid-column:1/-1;color:var(--yellow)}.first-conversation h2{max-width:17ch}.first-conversation>div{max-width:57ch;font-size:18px;line-height:1.65}
.thinking-feature{background:var(--sage);color:var(--charcoal);padding:clamp(35px,4.5vw,80px) var(--pad);margin-top:6px}
.thinking-feature .article-card-content{display:grid;grid-template-columns:3fr 2fr;gap:24px 8vw;align-items:start}.thinking-feature .eyebrow{grid-column:1/-1}.thinking-feature h2{font-size:clamp(34px,3.5vw,60px);grid-row:2/5;max-width:25ch}.thinking-feature .article-excerpt{font-size:18px;line-height:1.6}.thinking-feature .text-link{justify-self:start}.thinking-feature :focus-visible{outline-color:var(--charcoal)}
.thinking-browser{padding:40px var(--pad) 80px}.thinking-filters{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);padding-bottom:20px}
.thinking-filters button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--paper);padding:11px 0;min-height:44px;font-size:14px}
.thinking-filters button[aria-pressed=true],.thinking-filters button:hover{color:var(--yellow);border-bottom-color:var(--yellow)}
.filter-status{font-size:12px;color:var(--muted);margin:24px 0}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 32px}
.article-grid .thinking-card{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-direction:column;min-width:0}
.article-card-content{display:flex;flex-direction:column;flex:1;align-items:flex-start;gap:20px}.article-grid h3{font-size:clamp(27px,2.3vw,39px)}
.article-grid .article-excerpt{font-size:16px;line-height:1.6;color:var(--muted)}.article-grid .article-meta{margin-top:auto}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px}.article-card-image{display:block;margin-bottom:25px;width:100%;overflow:hidden}.article-card-image img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center 45%}
.thinking-card h3 a:hover,.thinking-feature h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.thinking-card[hidden],.thinking-feature[hidden]{display:none!important}
.thinking .article-card-content{gap:15px}.thinking .article-card-content>p{margin:0}.thinking .article-card-content>.eyebrow{font-size:11px}.thinking .article-excerpt{font-size:15px;line-height:1.6}.thinking h3{max-width:none}.thinking-top>.text-link{font-size:11px}.thinking .article-meta{margin-top:auto!important;font-size:11px}.thinking :focus-visible{outline-color:var(--charcoal)}
.article-opening{padding:40px var(--pad) 45px;max-width:1250px;margin:auto}.breadcrumb{display:flex;gap:15px;font-size:12px;margin-bottom:40px}.article-opening>.eyebrow{color:var(--yellow);margin-bottom:22px}.article-opening h1{font-size:clamp(38px,4.5vw,72px);max-width:27ch;line-height:1.08}.article-byline{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:13px;margin-top:30px}.article-updated{color:var(--muted);font-size:12px;margin-top:8px}
.article-hero{background:var(--charcoal);padding:0 var(--pad) 40px;max-width:1000px;margin:auto}.article-hero img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.article-body{background:var(--cream);color:var(--charcoal);padding:clamp(35px,5vw,75px) max(var(--pad),calc((100% - 740px)/2));font-size:18px;line-height:1.75;overflow-wrap:break-word}
.article-body>p+p{margin-top:1.05em}.article-body h2{font-size:clamp(29px,2.7vw,40px);line-height:1.2;margin:1.8em 0 .7em}.article-body h3{font-size:27px;margin:1.5em 0 .7em;line-height:1.25}.article-body>h2:first-child,.article-body>h3:first-child{margin-top:0}.article-body ul,.article-body ol{padding-left:25px;margin:1em 0 1.5em}.article-body li{padding-left:5px;margin:.25em 0}.article-body li p{margin:0}.article-body a{border-bottom:1px solid currentColor}.article-body blockquote{font-family:var(--font-display);font-size:29px;border-left:2px solid var(--charcoal);padding-left:25px;margin:30px 0}.article-body figure{margin:35px 0}.article-body figure img{max-height:620px;object-fit:contain;width:100%}.article-body :focus-visible{outline-color:var(--charcoal)}
.article-work-link{padding:35px var(--pad);background:var(--sage);color:var(--charcoal)}.article-work-link .eyebrow{margin-bottom:15px}
@media(max-width:1000px) and (min-width:701px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-enquiry{gap:35px}.location-address{display:block}.location address{margin-top:20px}}
@media(max-width:700px){.page-opening,.contact-opening{padding:38px 25px}.page-intro{font-size:18px;margin-top:24px}.contact-opening h1{font-size:45px}.contact-enquiry{display:flex;flex-direction:column;padding:0 25px 45px;gap:0}.direct-contact{padding-top:30px}.direct-contact>p{font-size:16px;max-width:none}.direct-phone{font-size:36px}.location-grid{grid-template-columns:1fr;gap:44px}.locations{padding:40px 25px}.location-address{grid-template-columns:1fr;gap:15px}.location-address h3{font-size:32px}.locations h2{font-size:39px}.map-panel{height:280px}.first-conversation{display:block;padding:45px 25px}.first-conversation h2{font-size:39px;margin:22px 0 25px}.first-conversation>div{font-size:16px}.thinking-feature{padding:34px 25px}.thinking-feature .article-card-content{display:flex;gap:22px}.thinking-feature h2{font-size:35px}.thinking-feature .article-excerpt{font-size:16px}.thinking-browser{padding:30px 25px 45px}.thinking-filters{gap:4px 22px}.thinking-filters button{font-size:13px}.article-grid{grid-template-columns:1fr;gap:35px}.article-grid h3{font-size:32px}.article-card-content{gap:18px}.article-card-image img{height:auto}.thinking-top>.text-link{margin-top:18px}.article-opening{padding:30px 25px 35px}.article-opening h1{font-size:40px}.breadcrumb{margin-bottom:30px}.article-body{font-size:17px;line-height:1.75;padding:35px 25px}.article-body h2{font-size:30px}.article-body h3{font-size:25px}.article-byline{font-size:12px}.article-hero{padding:0 25px 30px}.article-work-link .text-link{line-height:1.6}.thinking-grid{gap:32px}}
@media(prefers-reduced-motion:reduce){.launch-page{scroll-behavior:auto}}
html:not(.js) .thinking-filters,html:not(.js) [data-load-map]{display:none}

/* Legal notices and shared enquiry/footer links. */
.legal-body{background:var(--cream);color:var(--charcoal);padding:clamp(35px,5vw,75px) max(var(--pad),calc((100% - 840px)/2));font-family:var(--font-body);font-size:17px;line-height:1.75;overflow-wrap:anywhere}.legal-body h2{font-family:var(--font-display);font-size:clamp(27px,3vw,37px);line-height:1.2;margin:1.7em 0 .65em}.legal-body p+p{margin-top:1em}.legal-body ul{padding-left:24px;margin:1em 0}.legal-body a{text-decoration:underline;text-underline-offset:3px}.legal-body :focus-visible{outline:2px solid var(--charcoal);outline-offset:4px}.legal-table-wrap{overflow-x:auto;margin:24px 0;max-width:100%}.legal-body table{width:100%;min-width:840px;overflow-wrap:normal;border-collapse:collapse;font-size:14px;line-height:1.5;text-align:left}.legal-body caption{text-align:left;margin-bottom:12px;font-size:13px}.legal-body th,.legal-body td{padding:14px 12px;border-bottom:1px solid var(--charcoal);vertical-align:top}.legal-body th{font-weight:600}.legal-body thead{background:var(--sage)}
@media(max-width:700px){.legal-body{padding:30px 25px;font-size:16px}.legal-page .article-opening h1{font-size:38px}.legal-body th,.legal-body td{padding:12px 10px}}
