/* Editorial supporting pages. Shared typography, colours and gutters live in the base stylesheet. */
.aux-quarter,.aux-studio-method,.aux-proposal-schedule,.aux-investment { margin-inline:calc(-1 * var(--gutter,40px)); padding-inline:var(--gutter,40px); }
.aux-intro-bottom { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:end; margin-top:64px; }
.aux-intro-bottom > p:last-child { max-width:34rem; font-size:clamp(18px,1.6vw,24px); line-height:1.4; }
.aux-disciplines { display:grid; grid-template-columns:5fr 7fr; gap:6%; }
.aux-disciplines .section-head { display:block; }
.aux-disciplines .section-head p { margin-top:28px; }
.aux-discipline { display:grid; grid-template-columns:1fr 1.5fr; gap:24px; padding:30px 0 34px; border-top:1px solid #D0CDC5; }
.aux-discipline h3 { margin:0; font-size:clamp(23px,2.3vw,36px); line-height:1.1; letter-spacing:-.035em; font-weight:400; }
.aux-discipline p { max-width:33rem; margin:0; font-size:17px; line-height:1.5; }
.aux-practice-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin:24px 0 45px; }
.aux-practice-heading h2 { font-size:clamp(38px,4.3vw,64px); line-height:1.03; letter-spacing:-.05em; font-weight:400; }
.aux-practice-heading > p { font-size:17px; padding-bottom:5px; }
.aux-brand-spread { display:grid; grid-template-columns:1fr 1.14fr; gap:7%; align-items:start; }
.aux-brand-portrait { margin-top:8px; }
.aux-brand-detail { padding-top:55px; }
.aux-practice-discipline { scroll-margin-top:100px; border-top:1px solid #D0CDC5; padding:26px 0 30px; display:grid; grid-template-columns:1fr 1.65fr; gap:22px; }
.aux-practice-discipline h3 { font-size:clamp(26px,2.55vw,38px); line-height:1.1; font-weight:400; letter-spacing:-.035em; margin:0; }
.aux-practice-discipline p { font-size:18px; line-height:1.5; margin:0; }
.aux-brand-application { margin-top:50px; }
.aux-practice-image { display:block; position:relative; background:#E8E4D9; overflow:hidden; }
.aux-practice-image img { width:100%; height:auto; display:block; transition:transform .75s cubic-bezier(.2,.65,.25,1); }
.aux-practice-image:hover img { transform:scale(1.025); }
.aux-image-arrow { position:absolute; bottom:18px; right:18px; width:48px; height:48px; display:grid; place-items:center; background:#F5F3EF; color:#191B20; font-size:26px; line-height:1; transition:background .2s ease,transform .3s ease; }
.aux-practice-image:hover .aux-image-arrow { transform:translate(3px,-3px); background:#F9F06F; }
.aux-practice-image:focus-visible { outline-offset:5px; }
.aux-practice-brand figcaption,.aux-practice-digital figcaption,.aux-practice-presentations figcaption { display:flex; justify-content:space-between; gap:20px; font-size:14px; line-height:1.4; padding-top:14px; }
.aux-practice-presentations { display:grid; grid-template-columns:1fr 1.05fr; gap:12%; align-items:center; background:#191B20; color:#F5F3EF; margin:110px calc(-1 * var(--gutter,40px)) 0; padding:70px var(--gutter,40px); scroll-margin-top:80px; }
.aux-presentation-copy h2 { font-size:clamp(40px,4.7vw,70px); font-weight:400; line-height:1.05; letter-spacing:-.05em; margin:34px 0 30px; overflow-wrap:anywhere; }
.aux-presentation-copy .lede { max-width:25rem; }
.aux-presentation-context { font-size:18px; line-height:1.5; margin-top:36px; max-width:26rem; }
.aux-practice-aside { display:block; font-size:14px; margin-top:56px; color:#D0CDC5; }
.aux-presentation-visual { width:100%; max-width:570px; justify-self:end; }
.aux-presentation-visual .aux-practice-image { background:#141414; }
.aux-presentation-visual .aux-practice-image:focus-visible { outline-color:#F9F06F; }
.aux-presentation-visual figcaption { color:#D0CDC5; }
.aux-practice-digital { scroll-margin-top:70px; }
.aux-digital-heading { display:grid; grid-template-columns:1fr 1fr; gap:10%; align-items:end; margin-bottom:46px; }
.aux-digital-heading h2 { font-size:clamp(56px,7vw,104px); font-weight:400; line-height:1; letter-spacing:-.06em; }
.aux-digital-heading .lede { max-width:35rem; }
.aux-digital-spread { display:grid; grid-template-columns:1.7fr 1fr; gap:5%; align-items:start; }
.aux-digital-context { margin-top:110px; }
.aux-practice-further { display:grid; grid-template-columns:1fr 1fr; gap:9%; margin:12px 0 90px; }
.aux-practice-further .aux-practice-discipline { grid-template-columns:1fr; gap:24px; padding-top:24px; }
.aux-practice-further h2 { font-size:clamp(34px,3.6vw,54px); font-weight:400; line-height:1.1; letter-spacing:-.04em; }
.aux-practice-further p { max-width:33rem; }
.aux-quarter { background:#E8E4D9; padding-top:80px; padding-bottom:64px; }
.aux-quarter-heading { display:grid; grid-template-columns:1fr 1.4fr; gap:24px 6%; }
.aux-quarter-heading .eyebrow { grid-column:1 / -1; }
.aux-quarter-heading h2 { margin:0; font-size:clamp(44px,5.5vw,88px); line-height:.99; letter-spacing:-.055em; font-weight:400; }
.aux-quarter-heading .lede { max-width:30rem; margin:0; align-self:end; }
.aux-timeline { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:68px; }
.aux-timeline article { border-top:1px solid currentColor; padding-top:20px; }
.aux-weeks { font-size:15px; margin:0 0 38px; }
.aux-timeline h3 { font-size:clamp(24px,2.5vw,38px); font-weight:400; line-height:1.1; letter-spacing:-.035em; margin:0 0 22px; }
.aux-timeline article > p:last-child { font-size:17px; line-height:1.5; max-width:27rem; margin:0; }
.aux-scope-note { max-width:48rem; margin:70px 0 0 auto; border-top:1px solid #D0CDC5; padding-top:24px; font-size:18px; line-height:1.5; }
.aux-plain-cta h2 { font-size:clamp(42px,6.4vw,96px); font-weight:400; line-height:1; letter-spacing:-.055em; margin:24px 0 40px; }
.aux-plain-cta > .text-link { font-size:clamp(19px,2vw,28px); }
.aux-studio-intro h1 { max-width:1100px; }
.aux-studio-location { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #D0CDC5; padding-top:20px; margin-top:72px; font-size:16px; }
.aux-studio-story { display:grid; grid-template-columns:5fr 7fr; gap:6%; }
.aux-studio-story h2 { margin:0; font-size:clamp(36px,4.5vw,64px); font-weight:400; line-height:1.05; letter-spacing:-.045em; }
.aux-studio-story .prose { max-width:48rem; }
.aux-studio-story .prose p + p { margin-top:30px; }
.aux-studio-story .prose p:not(.lede) { font-size:clamp(19px,1.9vw,27px); line-height:1.4; }
.aux-studio-method { display:grid; grid-template-columns:5fr 7fr; gap:6%; background:#035293; color:#F5F3EF; }
.aux-studio-method .section-head { display:block; }
.aux-method-list article { display:grid; grid-template-columns:40px 1fr; gap:30px; border-top:1px solid rgba(245,243,239,.4); padding:27px 0 42px; }
.aux-method-list article > span { font-size:15px; }
.aux-method-list h3 { font-size:clamp(25px,2.7vw,40px); line-height:1.1; font-weight:400; letter-spacing:-.03em; margin:0 0 20px; }
.aux-method-list p { font-size:18px; line-height:1.5; margin:0; max-width:30rem; }
.aux-enquiry-intro { padding-bottom:36px; }
.aux-enquiry-layout { display:grid; grid-template-columns:5fr 7fr; gap:8%; padding-top:36px; }
.aux-enquiry-aside { max-width:27rem; }
.aux-enquiry-aside > p:not(.lede) { font-size:18px; line-height:1.5; }
.aux-simulation-note { margin-top:48px; border-top:1px solid #D0CDC5; padding-top:20px; font-size:15px; line-height:1.5; }
.aux-simulation-note strong { font-weight:500; }
.aux-simulation-note p { margin:8px 0 0; }
.aux-context { color:#035293; padding-top:20px; }
.aux-form-note { margin:0 0 38px; font-size:14px; }
.aux-enquiry-form { width:100%; }
.aux-field { margin-bottom:30px; }
.aux-field label,.aux-timing legend { display:block; font-size:19px; line-height:1.3; margin-bottom:12px; }
.aux-optional { font-size:15px; color:#575955; }
.aux-field input,.aux-field textarea { display:block; width:100%; border:1px solid #B5B4AC; border-radius:0; padding:15px 16px; background:transparent; color:#191B20; font:inherit; font-size:18px; line-height:1.4; box-sizing:border-box; box-shadow:none; }
.aux-field textarea { resize:vertical; min-height:170px; }
.aux-field input:focus,.aux-field textarea:focus { outline:2px solid #035293; outline-offset:3px; border-color:#035293; }
.aux-field [aria-invalid="true"] { border-color:#9F3224; }
.aux-field-error { color:#9F3224; font-size:14px; line-height:1.4; margin:9px 0 0; }
.aux-error-summary { padding:18px; background:#E8E4D9; border-left:3px solid #9F3224; margin-bottom:30px; font-size:16px; line-height:1.4; }
.aux-timing { border:0; margin:0 0 40px; padding:0; min-width:0; }
.aux-timing legend { margin-bottom:18px; }
.aux-timing label { display:flex; gap:12px; align-items:center; width:fit-content; padding:9px 0; font-size:17px; cursor:pointer; }
.aux-timing input { appearance:auto; width:19px; height:19px; margin:0; accent-color:#035293; flex:none; }
.aux-timing input:focus-visible { outline:2px solid #035293; outline-offset:4px; }
.aux-submit { display:flex; align-items:center; justify-content:space-between; gap:40px; border:1px solid #191B20; padding:18px 24px; background:#191B20; color:#F5F3EF; cursor:pointer; font:inherit; font-size:18px; min-width:250px; border-radius:0; }
.aux-submit:disabled { opacity:.5; cursor:not-allowed; }
.aux-submit:not(:disabled):hover { background:#035293; border-color:#035293; }
.aux-enquiry-result { border-top:2px solid #035293; margin-top:60px; padding-top:24px; }
.aux-enquiry-result h2 { font-size:clamp(29px,3vw,44px); line-height:1.05; letter-spacing:-.035em; font-weight:400; margin:22px 0 32px; }
.aux-enquiry-result h2:focus { outline:2px solid #035293; outline-offset:8px; }
.aux-enquiry-result dl { margin:0; }
.aux-enquiry-result dl div { padding:17px 0; border-top:1px solid #D0CDC5; display:grid; grid-template-columns:140px 1fr; gap:20px; }
.aux-enquiry-result dt { font-size:14px; }
.aux-enquiry-result dd { margin:0; font-size:17px; line-height:1.5; overflow-wrap:anywhere; white-space:pre-wrap; }
.aux-enquiry-result > p:last-child { font-size:14px; line-height:1.5; margin:30px 0 0; }
.aux-sample-label { display:inline-block; background:#F9F06F; color:#191B20; padding:9px 12px; margin:0 0 60px; font-size:14px; }
.aux-proposal-meta { display:flex; justify-content:space-between; gap:30px; margin:0 0 72px; font-size:15px; line-height:1.5; }
.aux-proposal-meta p { margin:0; }
.aux-proposal-meta strong { font-weight:500; }
.aux-proposal-intro h1 { max-width:1150px; font-size:clamp(52px,7.7vw,122px); }
.aux-proposal-intro > .lede { max-width:780px; margin-top:48px; margin-left:auto; }
.aux-deliverables { border-top:1px solid #D0CDC5; margin-top:52px; }
.aux-deliverables article { display:grid; grid-template-columns:1fr 4fr 5fr; gap:4%; border-bottom:1px solid #D0CDC5; padding:34px 0 42px; }
.aux-deliverable-number { font-size:15px; padding-top:5px; }
.aux-deliverables h3 { font-size:clamp(26px,2.7vw,42px); line-height:1.1; letter-spacing:-.03em; font-weight:400; margin:0; }
.aux-deliverables p { font-size:18px; line-height:1.5; margin:0; max-width:35rem; }
.aux-proposal-schedule { background:#E8E4D9; }
.aux-proposal-terms { display:grid; grid-template-columns:1fr 1fr; gap:10%; }
.aux-proposal-terms h2 { font-size:clamp(29px,3.3vw,46px); line-height:1.1; font-weight:400; letter-spacing:-.035em; margin:0 0 34px; }
.aux-proposal-terms ul { list-style:none; padding:0; margin:0; }
.aux-proposal-terms li { border-top:1px solid #D0CDC5; padding:18px 0; font-size:17px; line-height:1.45; }
.aux-investment { background:#035293; color:#F5F3EF; }
.aux-investment h2 { font-size:clamp(40px,5.5vw,80px); max-width:950px; line-height:1.02; letter-spacing:-.045em; font-weight:400; margin:28px 0 54px; }
.aux-investment-detail { max-width:630px; margin-left:auto; font-size:18px; line-height:1.5; }
.aux-investment-detail p + p { margin-top:28px; }
.aux-proposal-evidence { display:grid; grid-template-columns:1fr 1fr; gap:8%; margin-top:48px; }
.aux-proposal-evidence article { border-top:1px solid #D0CDC5; padding-top:28px; }
.aux-evidence-image { display:block; aspect-ratio:4/3; overflow:hidden; margin-bottom:28px; background:#E8E4D9; }
.aux-evidence-image img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .5s ease; }
.aux-evidence-image:hover img { transform:scale(1.025); }
.aux-proposal-evidence h3 { font-size:clamp(36px,4vw,60px); font-weight:400; letter-spacing:-.035em; line-height:1.1; margin:0 0 24px; }
.aux-proposal-evidence p { max-width:31rem; font-size:20px; line-height:1.4; margin-bottom:32px; }
.aux-cta-description { max-width:570px; font-size:19px; line-height:1.5; margin:0 0 36px; }
.aux-proposal-disclaimer { font-size:13px; line-height:1.5; margin:52px 0 0; max-width:38rem; }
[hidden] { display:none !important; }
@media (max-width:800px) {
  .aux-practice-heading { display:block; margin:12px 0 30px; }
  .aux-practice-heading > p { margin-top:20px; font-size:16px; }
  .aux-brand-spread { grid-template-columns:1fr; gap:33px; }
  .aux-brand-portrait { margin-top:0; }
  .aux-brand-portrait .aux-practice-image { max-height:680px; }
  .aux-brand-portrait img { max-height:680px; object-fit:contain; background:#035293; }
  .aux-brand-detail { padding-top:0; }
  .aux-practice-discipline { gap:20px; padding:23px 0 26px; }
  .aux-practice-discipline p { font-size:17px; }
  .aux-brand-application { margin-top:20px; }
  .aux-image-arrow { bottom:12px; right:12px; width:42px; height:42px; font-size:23px; }
  .aux-practice-brand figcaption,.aux-practice-digital figcaption,.aux-practice-presentations figcaption { font-size:13px; padding-top:12px; }
  .aux-practice-presentations { grid-template-columns:1fr; gap:38px; margin-top:65px; padding-top:48px; padding-bottom:42px; }
  .aux-presentation-copy h2 { margin:24px 0; overflow-wrap:normal; font-size:clamp(40px,9.8vw,64px); }
  .aux-presentation-copy .lede { max-width:38rem; }
  .aux-presentation-context { margin-top:24px; max-width:38rem; font-size:17px; }
  .aux-practice-aside { margin-top:26px; }
  .aux-presentation-visual { max-width:none; }
  .aux-digital-heading { grid-template-columns:1fr; gap:24px; margin-bottom:30px; }
  .aux-digital-heading h2 { font-size:56px; }
  .aux-digital-spread { grid-template-columns:1fr; gap:35px; }
  .aux-digital-context { margin-top:0; width:75%; margin-left:auto; }
  .aux-practice-further { gap:36px; margin-top:0; margin-bottom:56px; }
  .aux-practice-further h2 { font-size:34px; }
  .aux-intro-bottom,.aux-disciplines,.aux-studio-story,.aux-studio-method,.aux-enquiry-layout { grid-template-columns:1fr; gap:36px; }
  .aux-intro-bottom { margin-top:40px; }
  .aux-disciplines .section-head p { margin-top:20px; }
  .aux-discipline { grid-template-columns:1fr 1.5fr; gap:20px; padding:25px 0 28px; }
  .aux-quarter { padding-top:52px; padding-bottom:48px; }
  .aux-quarter-heading { grid-template-columns:1fr; gap:26px; }
  .aux-quarter-heading .eyebrow { grid-column:auto; }
  .aux-timeline { grid-template-columns:1fr; gap:30px; margin-top:42px; }
  .aux-weeks { margin-bottom:25px; }
  .aux-timeline h3 { margin-bottom:16px; }
  .aux-timeline article > p:last-child { max-width:none; }
  .aux-scope-note { margin-top:40px; font-size:17px; }
  .aux-studio-location { flex-direction:column; gap:8px; margin-top:45px; font-size:14px; }
  .aux-studio-story h2 br { display:none; }
  .aux-studio-story .prose p + p { margin-top:24px; }
  .aux-method-list article { gap:15px; padding:24px 0 30px; }
  .aux-enquiry-layout { padding-top:16px; gap:48px; }
  .aux-enquiry-aside { max-width:100%; }
  .aux-enquiry-aside .lede br { display:none; }
  .aux-simulation-note { margin-top:24px; }
  .aux-form-note { margin-bottom:28px; }
  .aux-submit { width:100%; }
  .aux-enquiry-result dl div { grid-template-columns:1fr; gap:8px; }
  .aux-proposal-meta { margin-bottom:45px; font-size:14px; }
  .aux-sample-label { margin-bottom:35px; }
  .aux-proposal-intro > .lede { margin-top:30px; }
  .aux-deliverables { margin-top:32px; }
  .aux-deliverables article { grid-template-columns:35px 1fr; gap:14px; padding:27px 0 30px; }
  .aux-deliverables p { grid-column:2; font-size:17px; }
  .aux-proposal-terms { grid-template-columns:1fr; gap:48px; }
  .aux-proposal-terms h2 { margin-bottom:24px; }
  .aux-investment h2 { margin-bottom:36px; }
  .aux-investment-detail { font-size:17px; }
  .aux-proposal-evidence { grid-template-columns:1fr; gap:38px; margin-top:30px; }
  .aux-proposal-evidence p { font-size:18px; margin-bottom:25px; }
}
@media (max-width:430px) {
  .aux-practice-discipline { grid-template-columns:1fr; gap:15px; }
  .aux-practice-further { grid-template-columns:1fr; gap:9px; }
  .aux-discipline { grid-template-columns:1fr; gap:14px; }
  .aux-discipline p { font-size:16px; }
  .aux-proposal-meta { flex-direction:column; gap:18px; }
  .aux-proposal-intro h1 { font-size:49px; }
}
@media print {
  .page-proposal { background:white !important; color:black !important; }
  .page-proposal header,.page-proposal footer,.page-proposal .skip-link,.page-proposal .aux-plain-cta .text-link { display:none !important; }
  .aux-proposal .page-intro,.aux-proposal .section { padding:20px 0; margin:0; background:white !important; color:black !important; }
  .aux-proposal .aux-sample-label { background:none; border:1px solid #999; margin-bottom:20px; }
  .aux-proposal h1 { font-size:40pt; }
  .aux-proposal h2,.aux-proposal .aux-investment h2,.aux-proposal .aux-plain-cta h2 { font-size:26pt; }
  .aux-proposal h3,.aux-proposal .aux-proposal-evidence h3 { font-size:18pt; }
  .aux-proposal p,.aux-proposal li,.aux-proposal .lede { font-size:11pt !important; line-height:1.4; }
  .aux-proposal article,.aux-proposal .aux-proposal-terms > div { break-inside:avoid; }
  .aux-proposal .aux-timeline { gap:24px; margin-top:25px; }
  .aux-proposal .aux-weeks { margin-bottom:18px; }
  .aux-proposal .aux-proposal-meta { margin-bottom:25px; }
  .aux-proposal .aux-proposal-intro > .lede { margin-top:25px; }
  .aux-proposal a { color:black !important; }
  .aux-proposal .aux-proposal-evidence .text-link { display:none; }
  .aux-proposal .aux-evidence-image { max-height:45mm; }
  @page { margin:18mm; }
}
@media (prefers-reduced-motion:reduce) {
  .aux-evidence-image img { transition:none; }
  .aux-evidence-image:hover img { transform:none; }
  .aux-practice-image img,.aux-image-arrow { transition:none; }
  .aux-practice-image:hover img,.aux-practice-image:hover .aux-image-arrow { transform:none; }
}
