:root{color-scheme:light;--ink:#2e2e2e;--muted:#625d58;--paper:#fffdfa;--soft:#fbf8f4;--line:#e5d9d0;--accent:#a84f20;--deep:#183438}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit}
.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1.25rem,5vw,5rem);border-bottom:1px solid #e5d9d0;background:rgba(255,253,250,.96);backdrop-filter:blur(12px)}
.brand img{display:block;width:110px;height:auto}
.site-header nav{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem)}
.site-header nav a,.header-cta,.button-link{font-size:.76rem;font-weight:700;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.site-header nav a{text-decoration:none}
.site-header nav a:hover,.site-header nav a.active{color:var(--accent)}
.header-cta,.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.8rem 1.2rem;background:var(--deep);color:#fff}
.header-cta:hover,.button-link:hover{background:var(--accent)}
.page-intro{padding:clamp(5rem,10vw,9rem) max(1.25rem,calc((100vw - 1050px)/2)) 3rem;background:var(--soft);border-bottom:1px solid var(--line)}
.page-intro h1{margin:.1rem 0 1rem;font-family:Georgia,serif;font-size:clamp(3.2rem,8vw,6rem);font-weight:500;letter-spacing:-.06em;line-height:1}
.page-intro>p:last-child{max-width:660px;color:var(--muted);font-size:clamp(1.1rem,2vw,1.4rem)}
.eyebrow{margin:0 0 .8rem;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.featured-article{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);align-items:center;gap:3rem;margin:3rem auto;max-width:1120px;padding:0 1.5rem}
.featured-article h2{margin:.1rem 0 1rem;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:500;line-height:1.08}
.featured-article h2 a{text-decoration:none}
.featured-article p:not(.eyebrow){color:var(--muted);font-size:1.1rem}
.featured-article>img{width:100%;max-height:420px;object-fit:cover}
.browse-section{max-width:1180px;margin:0 auto;padding:4rem 1.5rem 6rem}
.browse-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.browse-heading h2,.related-keynotes h2{font-family:Georgia,serif;font-size:2.2rem;font-weight:500}
.search-form{display:flex;align-items:center;gap:.5rem}
.search-form label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.search-form input{min-height:44px;width:min(320px,45vw);padding:.65rem .8rem;border:1px solid var(--line);background:white;font:inherit}
.search-form button{min-height:44px;padding:.65rem 1rem;border:0;background:var(--deep);color:white;font:inherit;font-weight:700}
.category-filter{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 2rem}
.category-filter a{padding:.5rem .9rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.85rem;text-decoration:none}
.category-filter a:hover,.category-filter a.selected{border-color:var(--accent);background:#a84f2010;color:var(--accent)}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.article-card{overflow:hidden;border:1px solid var(--line);background:white}
.card-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.card-copy{padding:1.4rem}
.card-copy h2{margin:.2rem 0 .7rem;font-family:Georgia,serif;font-size:1.55rem;font-weight:500;line-height:1.2}
.card-copy h2 a{text-decoration:none}
.card-copy>p:not(.eyebrow){color:var(--muted)}
.text-link,.back-link{color:var(--accent);font-weight:700;text-decoration:none}
.pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:2.5rem 0}
.pagination a{padding:.6rem 1rem;border:1px solid var(--line);color:var(--accent);font-weight:700;text-decoration:none}
.empty-state{padding:3rem 1rem;background:var(--soft);color:var(--muted);text-align:center}
.article-page{padding:4rem 1.25rem 6rem}
.article-heading{max-width:850px;margin:0 auto 3rem}
.article-heading h1{margin:.2rem 0 1rem;font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,5rem);font-weight:500;letter-spacing:-.045em;line-height:1.05}
.article-excerpt{color:var(--muted);font-size:clamp(1.1rem,2.4vw,1.5rem);line-height:1.55}
.article-meta{color:var(--muted);font-size:.88rem}
.article-hero-image{display:block;width:100%;max-height:560px;margin-top:2rem;object-fit:cover}
.prose{max-width:760px;margin:auto;font-size:1.08rem;line-height:1.85}
.prose h2,.prose h3{margin:2.4em 0 .6em;font-family:Georgia,serif;font-weight:500;line-height:1.2}
.prose h2{font-size:2rem}.prose h3{font-size:1.55rem}
.prose img{max-width:100%;height:auto}
.prose a{color:var(--accent);text-underline-offset:3px}
.related-keynotes{max-width:760px;margin:4rem auto;padding:1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.related-keynotes ul{padding-left:1.3rem}.related-keynotes li{margin:.6rem 0}.related-keynotes a{color:var(--accent);font-weight:700}
.enquiry-cta{margin:3rem auto 0;padding:3rem 1.5rem;background:var(--deep);color:white;text-align:center}
.enquiry-cta h2{max-width:700px;margin:.3rem auto 1.5rem;font-family:Georgia,serif;font-size:clamp(1.9rem,4vw,3rem);font-weight:500;line-height:1.2}
.site-footer{padding:2rem 1.5rem;background:#132b2e;color:#fff;text-align:center}
.site-footer a{color:#fff;font-weight:700}.site-footer p{margin:.8rem 0 0;color:#fff9;font-size:.8rem}
@media(max-width:800px){.site-header{gap:.8rem;padding:.8rem 1rem}.brand img{width:84px}.site-header nav{gap:.75rem}.site-header nav a,.header-cta{font-size:.62rem;letter-spacing:.07em}.header-cta{padding:.6rem}.featured-article{grid-template-columns:1fr;gap:1.3rem}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:space-between}.header-cta{margin-left:auto}.browse-heading{align-items:flex-start;flex-direction:column}.search-form{width:100%}.search-form input{flex:1;width:1px}.article-grid{grid-template-columns:1fr}.article-page{padding-top:2rem}.article-heading{margin-bottom:2rem}}

/* Insights is part of Tom's main site: warm paper, Montserrat and the same
   charcoal / burnt-orange / deep-blue palette used across the public pages. */
:root{--ink:#2e2e2e;--muted:#625d58;--paper:#f7f0e9;--soft:#efe0d6;--line:rgba(46,46,46,.15);--accent:#a84f20;--deep:#12497d}
body{background:var(--paper);font-family:Montserrat,sans-serif;line-height:1.65}
.site-header{min-height:88px;padding:1rem clamp(1.25rem,3vw,2.5rem);border-color:var(--line);background:rgba(247,240,233,.96)}
.brand img{width:110px}
.site-header nav a,.header-cta,.button-link{font-family:Montserrat,sans-serif;letter-spacing:.12em}
.site-header nav a{color:var(--ink)}
.site-header nav a:hover,.site-header nav a.active{color:var(--accent)}
.header-cta,.button-link{background:var(--deep);color:var(--paper);border-radius:2px}
.header-cta:hover,.button-link:hover{background:var(--accent);color:var(--paper)}
.page-intro{position:relative;overflow:hidden;padding:clamp(9rem,14vw,12rem) max(1.25rem,calc((100vw - 1280px)/2)) clamp(4rem,7vw,6rem);border:0;background:var(--paper)}
.page-intro:before{position:absolute;z-index:0;right:6%;top:2rem;width:min(33vw,430px);aspect-ratio:380/302;content:"";background:#efe0d6;opacity:.55;mask:url("/assets/TR_1788439984015-tZ-bwsgP.png") center/contain no-repeat;-webkit-mask:url("/assets/TR_1788439984015-tZ-bwsgP.png") center/contain no-repeat}
.page-intro>*{position:relative;z-index:1}
.page-intro h1,.featured-article h2,.browse-heading h2,.related-keynotes h2,.card-copy h2,.article-heading h1,.prose h2,.prose h3,.enquiry-cta h2{font-family:Montserrat,sans-serif;color:var(--ink);font-weight:700;letter-spacing:-.04em}
.page-intro h1{font-size:clamp(3rem,7vw,6rem);line-height:1.02}
.page-intro>p:last-child{font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.7}
.eyebrow{font-family:Montserrat,sans-serif;font-size:.72rem;letter-spacing:.17em}
.featured-article{max-width:1280px;margin:2rem auto 3.5rem;padding:0 clamp(1.25rem,3vw,2.5rem);gap:clamp(2rem,5vw,5rem)}
.featured-article h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.12}
.featured-article>img{max-height:460px;aspect-ratio:4/3;object-fit:cover}
.browse-section{max-width:1280px;padding:3rem clamp(1.25rem,3vw,2.5rem) 6rem}
.browse-heading{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.browse-heading h2,.related-keynotes h2{font-size:clamp(1.8rem,3vw,2.35rem)}
.search-form input,.search-form button{font-family:Montserrat,sans-serif}
.search-form input{border-color:var(--line);background:#fbf8f4}
.search-form button{background:var(--deep);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.search-form button:hover{background:var(--accent)}
.category-filter{gap:.5rem;margin:1.25rem 0 2rem}
.category-filter a{border-radius:2px;border-color:var(--line);color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.06em}
.category-filter a:hover,.category-filter a.selected{border-color:var(--accent);background:rgba(168,79,32,.08);color:var(--accent)}
.article-grid{gap:clamp(1.5rem,3vw,2.5rem)}
.article-card{border:0;border-top:1px solid var(--line);background:transparent}
.card-image{display:block;overflow:hidden;background:var(--soft)}
.card-image img{transition:transform .6s ease}
.card-image:hover img{transform:scale(1.025)}
.card-copy{padding:1.25rem 0}
.card-copy h2{font-size:1.45rem;line-height:1.25}
.card-copy h2 a{text-decoration:none}
.card-copy h2 a:hover{color:var(--accent)}
.text-link,.back-link{color:var(--accent);font-family:Montserrat,sans-serif;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.pagination a{border-color:var(--deep);color:var(--deep);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.pagination a:hover{background:var(--deep);color:var(--paper)}
.empty-state{background:#efe0d6;color:var(--ink)}
.article-page{padding:clamp(8rem,12vw,10rem) 1.25rem 6rem}
.article-heading{max-width:900px}
.article-heading h1{font-size:clamp(2.5rem,6vw,5rem);line-height:1.06}
.article-excerpt{color:var(--muted)}
.article-meta{padding-block:1rem;border-block:1px solid var(--line)}
.article-hero-image{max-height:600px;object-fit:cover}
.prose{color:var(--ink);font-size:1.06rem;line-height:1.9}
.prose h2,.prose h3{letter-spacing:-.025em;line-height:1.25}
.prose a{color:var(--accent)}
.prose blockquote{border-left:4px solid var(--accent);color:var(--muted)}
.related-keynotes{border-color:var(--line)}
.related-keynotes a{color:var(--accent)}
.enquiry-cta{padding:clamp(2.5rem,6vw,4rem) 1.5rem;background:var(--deep);color:var(--paper)}
.enquiry-cta h2{color:var(--paper);font-size:clamp(1.9rem,4vw,3rem);line-height:1.2}
.enquiry-cta .eyebrow{color:#f3a77d}
.enquiry-cta .button-link{background:var(--paper);color:var(--ink)}
.enquiry-cta .button-link:hover{background:var(--accent);color:var(--paper)}
.site-footer{padding:2rem 1.5rem;background:var(--deep);color:var(--paper)}
.site-footer a{color:var(--paper);font-family:Montserrat,sans-serif}
.site-footer p{color:rgba(247,240,233,.68)}
@media(max-width:800px){.site-header{min-height:72px}.page-intro:before{right:-10%;top:3rem;width:60vw;opacity:.32}}
@media(max-width:560px){.site-header{align-items:center}.site-header nav{order:initial;width:auto;gap:.55rem}.site-header nav a{font-size:.57rem;letter-spacing:.04em}.brand img{width:74px}.header-cta{font-size:.56rem;padding:.55rem .65rem}.page-intro{padding-top:8.5rem}.page-intro:before{width:75vw}.featured-article{margin-top:1rem}.article-page{padding-top:7.5rem}}

.page-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);align-items:center;gap:clamp(2rem,5vw,5rem)}
.page-intro-copy{max-width:48rem}
.page-intro-copy>p:last-child{max-width:660px;color:var(--muted);font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.7}
.insights-author-photo{justify-self:end;width:min(100%,20rem);aspect-ratio:4/5;overflow:hidden;border-radius:48% 52% 50% 50% / 42% 42% 58% 58%;background:var(--soft);box-shadow:18px 18px 0 var(--accent)}
.insights-author-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.85) contrast(1.05)}
@media(max-width:800px){.page-intro{grid-template-columns:1fr}.insights-author-photo{justify-self:center}}
@media(max-width:560px){.insights-author-photo{width:min(82%,20rem);margin-top:1rem}}
