
:root {
  --cream:#FBF8F5; --paper:#fffdfb; --navy:#28324E; --text:#4d5360; --muted:#647086;
  --rose:#B75368; --rose-dark:#994255; --rose-soft:#F4DFE3; --blush:#F7EEE9;
  --teal:#4FA2A8; --teal-dark:#347C82; --teal-soft:#DCEFF0; --line:#EADFD9;
  --slate-deep:#5F6685; --shadow:0 12px 34px rgba(40,50,78,.07); --shell:1180px;
}
*,*::before,*::after{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;line-height:1.72;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%} a{color:inherit}.shell{width:min(calc(100% - 40px),var(--shell));margin-inline:auto}
.site-header{background:var(--cream);border:0;box-shadow:none;padding:21px 0 18px;position:relative;z-index:20}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:min(56vw,255px);height:auto}
.main-nav{display:flex;align-items:center;gap:30px;font-size:15px;font-weight:650;color:var(--navy)}.main-nav a{text-decoration:none;padding:8px 0}.main-nav a:hover,.main-nav a:focus-visible,.main-nav a[aria-current="page"]{color:var(--rose-dark)}
h1,h2,h3{color:var(--navy);letter-spacing:-.025em;margin:0} h1{font-size:clamp(2.45rem,5vw,4.25rem);line-height:1.08} h2{font-size:clamp(1.72rem,3vw,2.45rem);line-height:1.15} h3{font-size:1.18rem;line-height:1.25}
.eyebrow{margin:0 0 14px;color:var(--teal-dark);font-size:.78rem;line-height:1.2;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.86rem;margin-bottom:28px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}
.hub-hero{padding:76px 0 52px}.hub-hero .intro{max-width:800px}.hub-hero p{font-size:1.08rem;max-width:730px;margin:22px 0 0}
.article-list{padding:18px 0 92px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.article-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.article-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.article-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.article-card__body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}.article-card__body h2{font-size:1.18rem;line-height:1.3;margin:0 0 11px}.article-card__body p{font-size:.94rem;line-height:1.62;color:var(--muted);margin:0 0 18px}.article-card__link{margin-top:auto;color:var(--teal-dark);font-weight:700;text-decoration:none;font-size:.91rem}.article-card__link::after{content:" →"}.article-card__link:hover{text-decoration:underline}
.hub-note{margin-top:34px;padding:22px 24px;border-radius:18px;background:var(--teal-soft);color:var(--navy);max-width:800px}
.article-hero{padding:64px 0 58px}.article-hero__grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(340px,.97fr);gap:54px;align-items:center}.article-hero__copy p.lead{font-size:1.08rem;line-height:1.7;margin:22px 0 0;max-width:700px}.article-hero__image img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:26px;border:1px solid var(--line);box-shadow:var(--shadow)}
.article-wrap{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:70px 0 78px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,280px);gap:62px;align-items:start;justify-content:center}.article-body{min-width:0}.article-body p{margin:0 0 1.16rem}.article-body h2{margin:3.2rem 0 1.15rem;font-size:clamp(1.55rem,2.7vw,2.06rem)}.article-body h2:first-child{margin-top:0}.article-body strong{color:var(--navy)}
.article-toc{position:sticky;top:28px;border:1px solid var(--line);border-radius:18px;background:var(--cream);padding:20px 20px 18px}.article-toc strong{display:block;color:var(--navy);font-size:.95rem;margin-bottom:10px}.article-toc a{display:block;text-decoration:none;color:var(--muted);font-size:.88rem;line-height:1.45;padding:7px 0;border-bottom:1px solid rgba(234,223,217,.7)}.article-toc a:last-child{border-bottom:0}.article-toc a:hover{color:var(--teal-dark)}
.pullquote{margin:2rem 0 2.2rem;padding:24px 26px;border-left:4px solid var(--rose);border-radius:0 18px 18px 0;background:var(--blush);color:var(--navy);font-size:1.18rem;line-height:1.55;font-weight:600}.insight{margin:2rem 0;padding:22px 24px;border:1px solid #c9e2e4;border-radius:18px;background:var(--teal-soft);color:var(--navy)}
.brand-box{margin-top:3.5rem;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--cream)}.brand-box h2{margin:0 0 14px;font-size:1.5rem}.brand-box p:last-child{margin-bottom:0}.brand-box .small{font-size:.88rem;color:var(--muted)}
.back-link{display:inline-flex;margin-top:30px;color:var(--teal-dark);font-weight:700;text-decoration:none}.back-link:hover{text-decoration:underline}
footer{background:var(--slate-deep);color:#f7f4f2;padding:58px 0 30px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:start}.footer-title{font-size:1.35rem;font-weight:800;margin-bottom:12px}.footer-grid p{color:rgba(255,255,255,.86);margin:0 0 12px}.footer-nav{display:flex;gap:18px 24px;flex-wrap:wrap;justify-content:flex-end}.footer-nav a{color:#fff;text-decoration:none;font-size:.9rem}.footer-nav a:hover{text-decoration:underline}.footer-bottom{margin-top:35px;padding-top:24px;border-top:1px solid rgba(255,255,255,.17);display:grid;gap:13px;color:rgba(255,255,255,.76);font-size:.83rem}.footer-disclaimer{max-width:980px;line-height:1.55}
@media(max-width:900px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-hero__grid{grid-template-columns:1fr;gap:30px}.article-hero__image{max-width:700px}.article-layout{grid-template-columns:1fr;gap:30px}.article-toc{position:static;order:-1}.footer-grid{grid-template-columns:1fr}.footer-nav{justify-content:flex-start}}
@media(max-width:640px){body{font-size:16.5px;line-height:1.65}.shell{width:min(calc(100% - 28px),var(--shell))}.site-header{padding:17px 0 13px}.header-inner{align-items:flex-start;flex-direction:column;gap:8px}.brand img{width:min(76vw,242px)}.main-nav{width:100%;justify-content:flex-start;gap:22px;font-size:14px}.hub-hero{padding:48px 0 34px}.article-list{padding:8px 0 62px}.article-grid{grid-template-columns:1fr;gap:18px}.article-card__body{padding:19px 18px 21px}.article-hero{padding:42px 0 38px}.article-hero__grid{gap:24px}.article-hero__image img{border-radius:18px}.article-wrap{padding:46px 0 54px}.article-body h2{margin-top:2.55rem}.pullquote{padding:20px 19px;font-size:1.08rem}.article-toc{padding:18px;border-radius:15px}.brand-box{padding:22px 19px}.footer-nav{gap:14px 18px}}

/* Editorial reading rhythm: reusable article inserts */
.article-keybox{
  margin:2.15rem 0 2.4rem;
  padding:26px 28px 25px;
  border:1px solid #c9e2e4;
  border-radius:20px;
  background:var(--teal-soft);
  color:var(--navy);
}
.article-keybox__label,.reflection-box__label{
  display:inline-block;
  margin:0 0 12px;
  font-size:.72rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.105em;
  text-transform:uppercase;
  color:var(--teal-dark);
}
.article-keybox p{margin:0 0 .7rem;line-height:1.62}
.article-keybox p:last-child{margin-bottom:0}
.key-sentence{
  position:relative;
  margin:2.45rem 0 2.55rem;
  padding:30px 34px 30px 52px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  color:var(--navy);
}
.key-sentence__mark{
  position:absolute;
  left:10px;
  top:15px;
  font-family:Georgia,serif;
  font-size:3.6rem;
  line-height:1;
  color:var(--rose);
  opacity:.88;
}
.key-sentence p{
  margin:0;
  max-width:650px;
  font-size:clamp(1.32rem,2.7vw,1.72rem);
  line-height:1.42;
  font-weight:650;
  letter-spacing:-.018em;
}
.reflection-box{
  margin:2.4rem 0 2.6rem;
  padding:25px 28px;
  border:1px solid #ead4d8;
  border-radius:20px;
  background:var(--rose-soft);
  color:var(--navy);
}
.reflection-box__label{color:var(--rose-dark)}
.reflection-box p{margin:0;font-size:1.12rem;line-height:1.55;font-weight:650}
.reflection-box .reflection-box__sub{margin-top:8px;font-size:.98rem;font-weight:500;color:var(--muted)}
@media(max-width:640px){
  .article-keybox,.reflection-box{padding:21px 19px;border-radius:17px}
  .key-sentence{padding:25px 18px 25px 40px;margin:2.15rem 0 2.25rem}
  .key-sentence__mark{left:4px;top:12px;font-size:3rem}
  .key-sentence p{font-size:1.28rem}
  .reflection-box p{font-size:1.06rem}
}

/* Clickable article cards */
.article-title-link{color:inherit;text-decoration:none;}
.article-title-link:hover h2,.article-title-link:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.article-image-link{display:block;color:inherit;text-decoration:none;}

/* R7: compact, scalable article overview */
.hub-hero .intro{max-width:860px}
.hub-hero .intro h1{max-width:760px}
.hub-hero .intro > p:not(.eyebrow){max-width:820px}
.article-list{padding-top:8px}
.article-grid{
  grid-template-columns:1fr;
  gap:18px;
  max-width:930px;
  margin-inline:auto;
}
.article-card{
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  min-height:166px;
  border-radius:18px;
  overflow:hidden;
}
.article-card > a:first-child{display:block;min-height:166px;height:100%}
.article-card img{
  width:100%;
  height:100%;
  min-height:166px;
  aspect-ratio:auto;
  object-fit:cover;
}
.article-card__body{padding:20px 22px 20px}

.article-card__body h2{font-size:1.08rem;line-height:1.28;margin-bottom:9px}
.article-card__body p{font-size:.91rem;line-height:1.52;margin-bottom:12px}
.article-card__link{font-size:.88rem}
@media(max-width:640px){
  .hub-hero{padding-bottom:28px}
  .article-grid{gap:14px;max-width:100%}
  .article-card{
    grid-template-columns:112px minmax(0,1fr);
    min-height:138px;
    border-radius:16px;
  }
  .article-card > a:first-child{min-height:138px}
  .article-card img{min-height:138px;height:100%;object-fit:cover}
  .article-card__body{padding:14px 14px 14px 15px}
  .article-card__body h2{font-size:.98rem;line-height:1.26;margin-bottom:7px}
  .article-card__body p{font-size:.82rem;line-height:1.42;margin-bottom:9px}
  .article-card__link{font-size:.84rem}
}
@media(max-width:420px){
  .article-card{grid-template-columns:98px minmax(0,1fr);min-height:132px}
  .article-card > a:first-child,.article-card img{min-height:132px}
  .article-card__body{padding:13px 12px}
  .article-card__body h2{font-size:.93rem}
  .article-card__body p{font-size:.79rem}
}
