/* The Speaker Handbook - design layer (D-028). Tokens come from theme.json. */
:root{--tsh-ink:var(--wp--preset--color--ink);--tsh-slate:var(--wp--preset--color--slate);--tsh-cream:var(--wp--preset--color--mist);--tsh-line:var(--wp--preset--color--line);--tsh-accent:var(--wp--preset--color--accent)}
.tsh-eyebrow{font-size:.74rem!important;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--tsh-accent);margin:0}
/* Side padding for full-width areas */
.tsh-front{padding-left:clamp(1.25rem,4vw,2rem)!important;padding-right:clamp(1.25rem,4vw,2rem)!important}
strong,b{font-weight:700}
/* Header */
.tsh-header{border-bottom:1px solid var(--tsh-line)}
.tsh-header .tsh-bar{min-height:76px}
.tsh-header .wp-block-site-title{font-size:1.3rem;letter-spacing:-.01em}
.tsh-tag{font-size:.68rem!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--tsh-accent);margin:0;line-height:1.2}
.tsh-mark{gap:.2rem!important}.tsh-mark .wp-block-site-title{line-height:1.1}
.tsh-header .wp-block-navigation{gap:1.9rem}
.tsh-cta .wp-block-button__link{background:transparent;color:var(--tsh-ink);border:1.5px solid var(--tsh-ink);padding:.5rem .9rem;font-size:.92rem}
.tsh-cta .wp-block-button__link:hover{background:var(--tsh-ink);color:#fff}
/* Hero */
.tsh-hero{padding:5rem 0 4.5rem!important;gap:4.5rem!important;align-items:flex-end;position:relative;background:var(--tsh-cream);box-shadow:0 0 0 100vmax var(--tsh-cream);clip-path:inset(0 -100vmax);margin-bottom:3.5rem!important}
.tsh-hero::after{content:"";position:absolute;left:50%;width:100vw;margin-left:-50vw;bottom:0;height:5px;background:linear-gradient(90deg,var(--wp--preset--color--learn) 0 20%,var(--wp--preset--color--find) 20% 40%,var(--wp--preset--color--travel) 40% 60%,var(--wp--preset--color--save) 60% 80%,var(--wp--preset--color--ask) 80% 100%)}
.tsh-front{overflow-x:clip;margin-top:0!important;padding-top:0!important}.tsh-front>.wp-block-post-content>.tsh-hero:first-child{margin-top:0!important}
.tsh-hero h1{font-size:clamp(2.4rem,4.6vw,3.6rem);letter-spacing:-.02em;margin:1.1rem 0 1.4rem}
.tsh-lede{font-size:1.28rem;color:var(--tsh-slate);max-width:34rem;margin:0}
.tsh-promise{border-left:3px solid var(--tsh-accent);padding:.3rem 0 .3rem 1.4rem}
.tsh-promise p:first-child{font-family:var(--wp--preset--font-family--serif);font-size:1.12rem;line-height:1.45;margin:0 0 .9rem}
.tsh-promise p:last-child{font-size:.85rem;color:var(--tsh-slate);margin:0}
/* Chapters */
.tsh-chapters{display:grid!important;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--tsh-ink);gap:0!important}
.tsh-ch{padding:1.6rem 1.4rem 1.8rem 0;border-right:1px solid var(--tsh-line);margin:0 1.4rem 0 0!important}
.tsh-ch:last-child{border-right:0;margin-right:0!important}
.tsh-ch>*{margin:0!important}
.tsh-ch .tsh-n{font-size:.78rem;font-weight:600;color:var(--tsh-slate);letter-spacing:.08em}
.tsh-ch h3{font-size:1.45rem;margin:.55rem 0 .5rem!important}
.tsh-ch p.tsh-d{font-size:.93rem;color:var(--tsh-slate);line-height:1.5;margin-bottom:.9rem!important}
.tsh-status{display:inline-block;font-size:.7rem!important;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.28rem .55rem;border-radius:3px;background:var(--tsh-cream);color:var(--tsh-slate);justify-self:start}
.tsh-status.is-live{background:var(--tsh-ink);color:#fff}
/* Ask panel */
.tsh-ask{margin-top:4.5rem!important;border-radius:6px;padding:3rem 3.2rem!important;gap:3rem!important;align-items:center}
.tsh-ask h2{font-size:2.1rem;margin:.7rem 0 .8rem}
.tsh-ask p{color:var(--tsh-slate)}
.tsh-ghost .wp-block-button__link{background:transparent;color:var(--tsh-ink);border:1.5px solid var(--tsh-ink)}
/* How we choose */
.tsh-how{margin-top:5rem!important;gap:4rem!important}
.tsh-how h2{font-size:2rem;margin-top:.7rem}
.tsh-points{display:grid!important;grid-template-columns:1fr 1fr;gap:2rem 3rem!important}
.tsh-points>div{border-top:1px solid var(--tsh-line);padding-top:1rem}
.tsh-points h3{font-size:1.15rem;margin:0 0 .35rem}
.tsh-points p{color:var(--tsh-slate);font-size:.95rem;margin:0}
/* Who runs TSH */
.tsh-who{margin-top:5rem!important;border-top:1px solid var(--tsh-line);padding-top:2.2rem;gap:2.2rem!important;align-items:center}
.tsh-av{width:64px;height:64px;min-width:64px;border-radius:50%;background:var(--tsh-cream);border:1px solid var(--tsh-line);display:flex;align-items:center;justify-content:center;font-family:var(--wp--preset--font-family--serif);font-weight:700;color:var(--tsh-slate);margin:0!important}
.tsh-who p{color:var(--tsh-slate);max-width:44rem;margin:0}.tsh-who strong{color:var(--tsh-ink)}
/* Footer */
.tsh-footer{font-size:.9rem;color:var(--tsh-slate)}
.tsh-footcols{display:grid!important;grid-template-columns:2fr 1fr 1fr;gap:3rem!important}
.tsh-footcols h4{font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-family:var(--wp--preset--font-family--sans);margin:0 0 .8rem}
.tsh-footer .wp-block-navigation{line-height:2;gap:0}
.tsh-footer a{color:var(--tsh-ink);text-decoration:none}
.tsh-legal{border-top:1px solid var(--tsh-line);margin-top:2.5rem!important;padding-top:1.2rem;font-size:.8rem!important}
/* Anchors land below the header */
[id]{scroll-margin-top:1.5rem}
/* Cookies page panel */
.tsh-cookie-panel{border-radius:6px;padding:1.2rem 1.4rem!important;margin:1.5rem 0!important}
.tsh-cookie-button{display:inline-block;background:var(--tsh-ink);color:#fff!important;text-decoration:none;font-weight:600;padding:.6rem 1rem;border-radius:4px}
.tsh-cookie-note{font-size:.85rem;color:var(--tsh-slate);margin:.6rem 0 0}
/* Ordinary pages */
.tsh-page-title{margin-bottom:1.5rem!important}
/* Section colours (D-029) */
.tsh-s-learn{--sc:var(--wp--preset--color--learn);--st:var(--wp--preset--color--learn-tint)}
.tsh-s-find{--sc:var(--wp--preset--color--find);--st:var(--wp--preset--color--find-tint)}
.tsh-s-travel{--sc:var(--wp--preset--color--travel);--st:var(--wp--preset--color--travel-tint)}
.tsh-s-save{--sc:var(--wp--preset--color--save);--st:var(--wp--preset--color--save-tint)}
.tsh-s-ask{--sc:var(--wp--preset--color--ask);--st:var(--wp--preset--color--ask-tint)}
.tsh-ch[class*="tsh-s-"]{position:relative}
.tsh-ch[class*="tsh-s-"]::before{content:"";position:absolute;top:-1px;left:0;right:1.4rem;height:4px;background:var(--sc)}
.tsh-ch[class*="tsh-s-"]:last-child::before{right:0}
.tsh-ch[class*="tsh-s-"] .tsh-n{color:var(--sc)}
.tsh-ch[class*="tsh-s-"] .tsh-status{background:var(--st);color:var(--sc)}
.tsh-ch[class*="tsh-s-"] .tsh-status.is-live{background:var(--sc);color:#fff}
/* Photos */
.tsh-who-photo{margin:0!important;flex:0 0 220px}
.tsh-who-photo img{width:220px;height:165px;object-fit:cover;object-position:50% 30%;border-radius:6px;display:block}
.tsh-about-photo img{border-radius:6px;max-height:34rem;width:auto;margin:0 auto;display:block}
/* Grid children: no flow margins */
.tsh-points>*,.tsh-footcols>*,.tsh-chapters>*{margin-top:0!important;margin-block-start:0!important}
.tsh-hero>.wp-block-column:last-child{align-self:flex-end}
/* Phones */
@media (max-width:781px){
 .tsh-tag,.tsh-header .wp-block-navigation{display:none}
 .tsh-header .tsh-bar{min-height:64px}
 .tsh-header .wp-block-site-title{font-size:1.15rem;white-space:nowrap}
 .tsh-cta .wp-block-button__link{font-size:0;padding:.45rem .75rem;white-space:nowrap}
 .tsh-cta .wp-block-button__link::after{content:"Ask us";font-size:.85rem}
 .tsh-hero{padding:2.6rem 0 2.6rem!important;gap:2.2rem!important}
 .tsh-lede{font-size:1.1rem}
 .tsh-chapters{grid-template-columns:1fr}
 .tsh-ch{border-right:0;margin-right:0!important;border-bottom:1px solid var(--tsh-line);padding:1.2rem 0;display:grid!important;grid-template-columns:2.2rem 1fr;column-gap:.6rem}
 .tsh-ch .tsh-n{grid-row:1/4;padding-top:.45rem}
 .tsh-ch h3{margin:0 0 .3rem!important}
 .tsh-ask{padding:2rem 1.5rem!important;gap:1.4rem!important}
 .tsh-ask h2{font-size:1.7rem}
 .tsh-how{gap:1.4rem!important}
 .tsh-points{grid-template-columns:1fr;gap:1.2rem!important}
 .tsh-who{flex-direction:column;align-items:flex-start!important;gap:1rem!important}
 .tsh-who-photo{flex-basis:auto;width:100%}
 .tsh-who-photo img{width:100%;height:auto}
 .tsh-ch[class*="tsh-s-"]::before{right:0;top:0;height:3px;width:2.2rem}
 .tsh-footcols{grid-template-columns:1fr;gap:1.6rem!important}
}
