/* Inner pages. Same poster register as the homepage: one colour field per
   hero, big serif with a slab, then paper and sand sections. */
.visually-hidden{position:absolute;left:-9999px}
.fine{font-size:var(--size-body-sm);line-height:var(--lh-body-sm);color:var(--plentiful-ink-70);margin:var(--space-4) 0 0}
.lede-ink{font-size:var(--size-lede);line-height:1.5;color:var(--plentiful-ink);max-width:30em;margin-top:var(--space-4)}

/* Hero */
.p-hero{padding:var(--space-8) 0 var(--space-8)}
@media (min-width:1100px){.p-hero{padding:var(--space-9) 0}}
.p-hero h1{font-size:clamp(44px,7.4vw,112px);line-height:.98;letter-spacing:-.02em;max-width:11em}
.p-hero__lede{font-size:clamp(18px,1.5vw,22px);line-height:1.45;font-weight:500;max-width:30em;margin:var(--space-6) 0 0}
.p-hero .actions{margin-top:var(--space-7)}
.p-hero__jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--space-7)}
.p-hero__jump a{font-weight:500;font-size:14px;padding:10px 16px;border:1.5px solid var(--plentiful-ink);border-radius:var(--radius-pill);text-decoration:none;transition:background-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}
.p-hero__jump a:hover{background:var(--plentiful-ink);color:var(--plentiful-gold)}
.p-hero--gold{background:var(--plentiful-gold)}
.p-hero--purple{background:var(--plentiful-purple)}
.p-hero--paper{background:var(--plentiful-paper);border-bottom:1px solid var(--rule-hairline)}
.p-hero--aub{background:var(--plentiful-aubergine);color:var(--plentiful-paper)}
.p-hero--aub .label{color:var(--plentiful-gold)}
.p-hero--short{padding-bottom:var(--space-6)}
.p-hero--short h1{font-size:clamp(36px,4.6vw,64px)}
.p-hero--center{text-align:center}
.p-hero--center h1,.p-hero--center .p-hero__lede,.p-hero--center .gate{margin-left:auto;margin-right:auto}
.p-hero .label{color:var(--plentiful-ink)}
.p-hero--paper .label{color:var(--plentiful-purple-deep)}
.gold-head .site-head{background:var(--plentiful-gold);border-bottom:0}
.purple-head .site-head{background:var(--plentiful-purple);border-bottom:0}
.dark .site-head{background:var(--plentiful-aubergine);border-bottom:0}
.dark .site-head .brand,.dark .site-head .nav a:not(.btn){color:var(--plentiful-paper)}
.dark .site-head .nav a:not(.btn):hover{color:var(--plentiful-gold)}
.dark .site-head .nav a.btn{background:var(--plentiful-gold);color:var(--plentiful-ink)}
.dark .site-head .nav-m summary{color:var(--plentiful-paper);border-color:rgba(250,247,242,.4)}

/* Sections */
.p-sec{padding:var(--space-9) 0}
@media (min-width:1100px){.p-sec{padding:var(--space-10) 0}}
.p-sec h2{font-size:clamp(34px,4.4vw,64px);line-height:1.02;letter-spacing:-.015em}
.p-sec h3{font-size:clamp(24px,2.2vw,32px);margin-bottom:var(--space-3)}
.p-sec--sand{background:var(--plentiful-sand)}
.p-sec--purple{background:var(--plentiful-purple)}
.p-sec--purple .label{color:var(--plentiful-ink)}
.p-sec--purple .lede,.p-sec--purple .fine{color:var(--plentiful-ink)}
.p-sec--aub{background:var(--plentiful-aubergine);color:var(--plentiful-paper)}
.p-sec--aub .label{color:var(--plentiful-gold)}
.p-sec--aub a{color:var(--plentiful-paper)}
.p-split{display:grid;gap:var(--space-6)}
@media (min-width:980px){.p-split{grid-template-columns:5fr 7fr;gap:var(--space-9)}}
.p-split--tight{margin-bottom:var(--space-6)}
.p-cols{display:grid;gap:var(--space-6);margin-top:var(--space-8);padding-top:var(--space-7);border-top:1.5px solid var(--plentiful-ink)}
@media (min-width:900px){.p-cols{grid-template-columns:1fr 1fr;gap:var(--space-8)}}
.ticks{list-style:none;margin:var(--space-5) 0 0;padding:0;display:grid;gap:12px}
.ticks li{padding-left:28px;position:relative;line-height:1.5}
.ticks li::before{content:"";position:absolute;left:0;top:.42em;width:14px;height:14px;border-radius:50%;background:var(--plentiful-gold)}
.p-sec--purple .ticks li::before{background:var(--plentiful-ink)}
.facts{display:grid;gap:var(--space-4);align-content:start}
.facts div{padding:var(--space-4) 0;border-top:1.5px solid var(--plentiful-ink);display:grid;gap:4px}
.facts b{font-family:var(--font-poster);font-weight:400;font-size:clamp(34px,3.4vw,52px);line-height:1;letter-spacing:-.03em}
.facts span{font-size:15px;line-height:1.5}
.steps{list-style:none;counter-reset:s;margin:var(--space-6) 0 0;padding:0;display:grid;gap:var(--space-4)}
.steps li{counter-increment:s;position:relative;padding:0 0 var(--space-4) 56px;border-bottom:1px solid var(--rule-hairline);line-height:1.55}
.steps li::before{content:"0" counter(s);position:absolute;left:0;top:0;font-family:var(--font-poster);font-size:22px;color:var(--plentiful-purple-deep)}
.steps b{font-weight:600}
.steps--big{gap:0}
.steps--big li{padding:var(--space-5) 0 var(--space-5) 96px;border-bottom-color:rgba(250,247,242,.2);font-size:var(--size-lede)}
.steps--big li::before{font-size:clamp(40px,4vw,64px);color:var(--plentiful-gold);top:var(--space-4)}
.offer-rows{border-top:2px solid var(--plentiful-ink);margin-top:var(--space-5)}
.offer-row{display:grid;gap:var(--space-4);padding:var(--space-6) 0;border-bottom:1px solid var(--rule-hairline)}
@media (min-width:900px){.offer-row{grid-template-columns:4fr 8fr;gap:var(--space-8)}}
.offer-row h2{font-size:clamp(40px,5vw,72px)}
.formats{display:grid;gap:var(--space-4);margin-top:var(--space-5)}
@media (min-width:900px){.formats{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}}
.formats div{padding:var(--space-5);border:1.5px solid var(--plentiful-ink);border-radius:22px;min-height:200px}
.formats p{margin:0;color:var(--plentiful-ink-70)}
.formats__move{background:var(--plentiful-gold)}
.formats__move p{color:var(--plentiful-ink)}
@media (min-width:900px){.formats__move{grid-column:1 / -1}}

/* Email gate */
.gate{max-width:560px}
.gate .label{margin-bottom:10px}
.gate__row{display:flex;flex-wrap:wrap;gap:10px}
.gate input[type=email]{flex:1 1 220px;min-width:0;font:inherit;font-size:16px;padding:14px 18px;border:1.5px solid var(--plentiful-ink);border-radius:var(--radius-pill);background:var(--plentiful-white);color:var(--plentiful-ink)}
.gate input[type=email]:focus-visible{outline:2px solid var(--accent-purple);outline-offset:3px}
.gate--hero{margin-top:var(--space-7);max-width:640px}
.p-sec--aub .gate input{border-color:var(--plentiful-paper)}
.res .p-split{align-items:center}

/* Manifesto */
.mani{max-width:900px}
.mani__lede{font-size:clamp(20px,2vw,26px);line-height:1.45;color:rgba(250,247,242,.85);max-width:34em;margin-bottom:var(--space-8)}
.mani__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(250,247,242,.25)}
.mani__list li{position:relative;padding:var(--space-6) 0 var(--space-6) 0;border-bottom:1px solid rgba(250,247,242,.25)}
@media (min-width:760px){.mani__list li{padding-left:120px}}
.mani__list span{display:block;font-family:var(--font-poster);font-size:22px;color:var(--plentiful-gold);margin-bottom:var(--space-3)}
@media (min-width:760px){.mani__list span{position:absolute;left:0;top:var(--space-6);font-size:clamp(40px,4vw,56px);margin:0;line-height:1}}
.mani__list h2{font-size:clamp(30px,3.6vw,54px);margin-bottom:var(--space-3)}
.mani__list p{color:rgba(250,247,242,.82);max-width:32em;margin:0;font-size:var(--size-lede);line-height:1.5}
.mani .sigs{margin-top:var(--space-7)}
.mani .hand{color:var(--plentiful-gold)}

/* About */
.bio{display:grid;gap:var(--space-7);align-items:center;padding-bottom:var(--space-9)}
@media (min-width:900px){.bio{grid-template-columns:4fr 8fr;gap:var(--space-9)}.bio--flip figure{order:2}}
.bio .c-pic{max-width:360px}
.bio h2{margin-bottom:var(--space-4)}

/* Contact */
.contact{display:grid;gap:var(--space-7)}
@media (min-width:900px){.contact{grid-template-columns:repeat(3,1fr)}}
.contact__big{font-family:var(--font-display);font-size:clamp(28px,2.8vw,40px);line-height:1.2}
.contact__big a{text-decoration-thickness:2px}

/* Prose */
.prose{max-width:36em}
.prose h2{font-size:clamp(26px,2.4vw,34px);margin:var(--space-7) 0 var(--space-3)}
.prose h2:first-child{margin-top:0}

/* Fixes after first render */
.p-hero--aub .label,.p-sec--aub .label{color:var(--plentiful-gold)}
.p-sec--aub .fine,.p-sec--aub .lede{color:rgba(250,247,242,.72)}
.gold-head .brand img,.purple-head .brand img,.home .brand img{display:none} /* the mark never sits on gold or purple */

/* Manifesto body */
.mani__body{max-width:34em;margin-bottom:var(--space-8)}
.mani__body p{font-size:clamp(20px,2vw,27px);line-height:1.42;color:rgba(250,247,242,.88);margin-bottom:var(--space-5)}
.mani__body em{color:var(--plentiful-gold);font-style:italic}
.mani__eq{font-family:var(--font-poster);text-transform:uppercase;font-size:clamp(32px,4.6vw,68px)!important;line-height:1!important;letter-spacing:-.03em;color:var(--plentiful-gold)!important;margin:var(--space-6) 0!important}
.mani__tag{font-family:var(--font-display);font-size:clamp(30px,3.6vw,54px);line-height:1.05;margin:var(--space-8) 0 0;max-width:14em}
.c-pic--full img{aspect-ratio:3/4;object-position:center 12%}

/* Two-route resources */
.p-sec--gold{background:var(--plentiful-gold)}
.p-sec--gold .label{color:var(--plentiful-ink)}
.res-head{padding:var(--space-8) 0}
.res-head .p-split{margin-bottom:0}
.gate__opt{display:flex;gap:10px;align-items:flex-start;margin-top:var(--space-4);font-size:15px;line-height:1.45;cursor:pointer}
.gate__opt input{margin:4px 0 0;width:18px;height:18px;accent-color:var(--plentiful-purple-deep);flex:none}
.bio{align-items:start}
.bio__text h2{font-size:clamp(30px,3.2vw,46px);margin-bottom:var(--space-5)}
.bio__text p{max-width:36em}
.bio__pull{font-family:var(--font-display);font-size:clamp(28px,2.8vw,40px);line-height:1.15;margin:var(--space-6) 0;max-width:16em!important}
.bio__pull em{box-shadow:inset 0 -.32em 0 var(--plentiful-gold)}
.bio .c-pic{position:sticky;top:24px}

/* Client and partner logos: greyscale on paper, colour is not needed here. */
.p-sec--logos{padding:var(--space-8) 0;border-top:1px solid var(--rule-hairline);border-bottom:1px solid var(--rule-hairline)}
.logos-row{display:grid;gap:var(--space-4);align-items:center;padding:var(--space-5) 0}
.logos-row+.logos-row{border-top:1px solid var(--rule-hairline)}
@media (min-width:900px){.logos-row{grid-template-columns:3fr 9fr}}
.logos-row .label{margin:0}
.logos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5) var(--space-8)}
.logos img{height:64px;width:auto;mix-blend-mode:multiply;filter:grayscale(1) contrast(1.15)}
.logos li:first-child img{height:150px}
.logos li:nth-child(2) img{height:96px}
.logos__text{font-family:var(--font-poster);font-size:clamp(24px,2.4vw,34px);letter-spacing:-.02em;color:var(--plentiful-ink-30)}
.prose .ticks{margin-bottom:var(--space-5)}
.prose p strong{font-weight:600}
.ptable{width:100%;border-collapse:collapse;margin:var(--space-4) 0 var(--space-5);font-size:15px;line-height:1.45}
.ptable th,.ptable td{text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid var(--rule-hairline);vertical-align:top}
.ptable th{font-weight:600;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--plentiful-ink-70);border-bottom:1.5px solid var(--plentiful-ink)}
.ptable em{color:var(--plentiful-purple-deep);font-style:italic}

/* Testimonial */
.quote{margin:var(--space-4) 0 0;padding:0;max-width:30em}
.quote p{font-family:var(--font-display);font-size:clamp(26px,2.6vw,40px);line-height:1.18;letter-spacing:-.008em;margin:0 0 var(--space-5)}
.quote footer{font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--plentiful-ink-70)}
.quote--home{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1.5px solid var(--plentiful-ink);max-width:24em}
.quote--home p{font-size:clamp(28px,3vw,46px)}
.quote--home footer{color:var(--plentiful-ink)}
