:root { --ink:#19261e; --forest:#28563a; --forest-dark:#173b27; --leaf:#7fa870; --cream:#f4f0e7; --paper:#fbfaf6; --white:#fff; --terracotta:#b9543b; --line:rgba(25,38,30,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
svg { width:1.25rem; height:1.25rem; flex:0 0 auto; }
.container { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.draft-bar { background:var(--forest-dark); color:rgba(255,255,255,.84); font-size:.74rem; letter-spacing:.025em; }
.draft-inner { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.draft-inner strong { color:#fff; text-transform:uppercase; font-size:.67rem; letter-spacing:.13em; }
.draft-contact { display:flex; align-items:center; gap:22px; }
.draft-contact a { display:flex; align-items:center; gap:7px; }
.draft-contact svg { width:14px; height:14px; }
.site-header { position:sticky; top:0; z-index:50; background:rgba(251,250,246,.94); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.nav-wrap { height:78px; display:flex; align-items:center; gap:34px; }
.brand { display:flex; align-items:center; gap:12px; min-width:268px; }
.brand img { width:52px; height:44px; object-fit:contain; mix-blend-mode:multiply; }
.brand span { display:flex; flex-direction:column; }
.brand b { font-family:Georgia,"Times New Roman",serif; font-size:1.16rem; line-height:1.1; }
.brand small { margin-top:4px; color:#627066; font-size:.67rem; letter-spacing:.1em; text-transform:uppercase; }
.desktop-nav { flex:1; display:flex; justify-content:center; gap:clamp(18px,2vw,32px); font-size:.84rem; font-weight:650; }
.desktop-nav a { position:relative; padding-block:28px; }
.desktop-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:20px; height:2px; background:var(--terracotta); transition:right .25s ease; }
.desktop-nav a:hover::after { right:0; }
.nav-cta { display:flex; align-items:center; gap:10px; padding:11px 15px; background:var(--forest); color:white; font-weight:700; font-size:.82rem; border-radius:4px; }
.nav-cta svg { width:16px; }
.menu-button { display:none; border:0; background:transparent; color:var(--ink); padding:10px; }
.mobile-nav { display:none; }
.hero { position:relative; overflow:visible; background:#f6ecdd; padding:82px 0 48px; }
.hero::before { content:""; position:absolute; width:520px; height:520px; border:1px solid rgba(40,86,58,.12); border-radius:50%; left:-290px; top:-210px; }
.hero-gridline { position:absolute; inset:0; opacity:.35; background-image:linear-gradient(to right,transparent 49.9%,rgba(40,86,58,.1) 50%,transparent 50.1%),linear-gradient(to bottom,transparent 49.9%,rgba(40,86,58,.07) 50%,transparent 50.1%); background-size:130px 130px; pointer-events:none; }
.hero-layout { position:relative; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(50px,7vw,96px); align-items:center; }
.hero-copy { padding-bottom:68px; }
.eyebrow { display:flex; align-items:center; gap:12px; color:var(--forest); font-size:.72rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow span { width:30px; height:2px; background:var(--terracotta); }
h1,h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; letter-spacing:-.04em; }
h1 { margin:20px 0 24px; max-width:680px; font-size:clamp(3.3rem,5.5vw,5.9rem); line-height:.95; }
h1 em,h2 em { color:var(--terracotta); font-weight:400; }
.hero-lead { max-width:620px; margin:0; color:#58655c; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.08rem,1.45vw,1.28rem); line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.button { min-height:50px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; gap:12px; border:1px solid var(--forest); border-radius:4px; font-size:.84rem; font-weight:750; transition:transform .2s ease,background .2s ease; }
.button:hover { transform:translateY(-2px); }
.button.primary { background:var(--forest); color:white; }
.button.primary:hover { background:var(--forest-dark); }
.button.secondary { background:rgba(255,255,255,.38); }
.button svg { width:17px; }
.hero-trust { display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:34px; color:#647168; font-size:.75rem; font-weight:650; }
.hero-trust span { display:flex; align-items:center; gap:8px; }
.hero-trust span::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--leaf); }
.hero-visual { position:relative; align-self:stretch; display:flex; align-items:center; padding-bottom:68px; }
.hero-photo-frame { position:relative; width:100%; max-width:560px; margin-left:auto; aspect-ratio:1/1.03; overflow:visible; }
.hero-photo-frame img { width:100%; height:100%; object-fit:contain; object-position:center; filter:saturate(.94) contrast(.98); }
.photo-label { position:absolute; z-index:2; bottom:18px; left:18px; display:flex; flex-direction:column; padding:12px 15px; color:var(--forest-dark); background:rgba(246,236,221,.88); border-left:2px solid var(--terracotta); backdrop-filter:blur(5px); }
.photo-label b { font-family:Georgia,"Times New Roman",serif; font-size:1.22rem; }
.photo-label span { margin-top:3px; font-size:.76rem; letter-spacing:.08em; text-transform:uppercase; }
.quick-grid { position:relative; z-index:4; display:grid; grid-template-columns:repeat(4,1fr); background:var(--white); border:1px solid var(--line); box-shadow:0 14px 40px rgba(25,38,30,.08); }
.quick-card { min-height:114px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:15px; padding:22px; border-right:1px solid var(--line); transition:background .2s ease; }
.quick-card:last-child { border-right:0; }
.quick-card:hover { background:#f8faf5; }
.quick-card>svg { width:17px; color:var(--forest); transition:transform .2s ease; }
.quick-card:hover>svg { transform:translateX(4px); }
.quick-icon { width:40px; height:40px; display:grid; place-items:center; color:var(--forest); background:#edf3ea; border-radius:50%; }
.quick-icon svg { width:19px; }
.quick-card span { display:flex; flex-direction:column; }
.quick-card b { font-family:Georgia,"Times New Roman",serif; font-size:.98rem; }
.quick-card small { margin-top:5px; color:#718078; font-size:.69rem; line-height:1.35; }
.section { padding:132px 0 100px; }
.intro { background:var(--paper); }
.split-heading { display:grid; grid-template-columns:1fr .7fr; gap:80px; align-items:end; }
.section-heading h2 { margin:18px 0 0; font-size:clamp(2.5rem,4.3vw,4.5rem); line-height:1.02; }
.split-heading>p { color:#647168; font-family:Georgia,"Times New Roman",serif; font-size:1.05rem; line-height:1.75; margin:0; }
.principles-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:58px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.principle { padding:36px 28px 38px 0; border-right:1px solid var(--line); }
.principle+.principle { padding-left:28px; }
.principle:last-child { border-right:0; }
.principle-number { color:var(--terracotta); font-family:Georgia,"Times New Roman",serif; font-style:italic; font-size:.8rem; }
.principle h3 { margin:22px 0 12px; font-family:Georgia,"Times New Roman",serif; font-size:1.25rem; }
.principle p { margin:0; color:#67736b; font-size:.82rem; line-height:1.7; }
.statement { max-width:900px; margin:78px auto 0; text-align:center; }
.statement p { margin:0; color:var(--forest); font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.55rem,3vw,2.45rem); line-height:1.35; }
.statement span { display:block; margin-top:20px; color:#718078; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.news { background:#fff; border-top:1px solid var(--line); }
.news-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; }
.news-heading h2 { max-width:720px; }
.filter-row { max-width:460px; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.filter-row button { border:1px solid var(--line); background:transparent; color:#607067; padding:8px 12px; border-radius:999px; font:inherit; font-size:.7rem; font-weight:700; cursor:pointer; }
.filter-row button:hover,.filter-row button.active { color:#fff; background:var(--forest); border-color:var(--forest); }
.activities-grid { margin-top:52px; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.activity-card { overflow:hidden; display:grid; grid-template-rows:230px 1fr; background:var(--paper); border:1px solid var(--line); border-radius:3px; transition:transform .25s ease,box-shadow .25s ease; }
.activity-card:hover { transform:translateY(-4px); box-shadow:0 18px 40px rgba(25,38,30,.11); }
.activity-card.featured { grid-column:span 2; grid-template-columns:1.12fr .88fr; grid-template-rows:420px; }
.activity-image { position:relative; overflow:hidden; min-width:0; }
.activity-image::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(20,44,29,.3),transparent 50%); }
.activity-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.activity-card:hover img { transform:scale(1.035); }
.category-tag { position:absolute; z-index:2; top:16px; left:16px; padding:7px 10px; color:#fff; background:var(--terracotta); border-radius:2px; font-size:.63rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.activity-copy { display:flex; flex-direction:column; padding:25px; }
.activity-card.featured .activity-copy { justify-content:center; padding:40px; }
.activity-date { display:flex; align-items:center; gap:7px; color:#738079; font-size:.66rem; font-weight:750; letter-spacing:.07em; text-transform:uppercase; }
.activity-date svg { width:14px; }
.activity-copy h3 { margin:14px 0 10px; font-family:Georgia,"Times New Roman",serif; font-size:1.3rem; line-height:1.22; }
.activity-card.featured h3 { font-size:2rem; }
.activity-copy p { margin:0; color:#657269; font-size:.8rem; line-height:1.65; }
.activity-copy button { align-self:flex-start; display:flex; align-items:center; gap:9px; margin-top:auto; padding:22px 0 0; border:0; background:transparent; color:var(--forest); font:inherit; font-size:.73rem; font-weight:800; cursor:pointer; }
.activity-copy button svg { width:15px; transition:transform .2s ease; }
.activity-copy button:hover svg { transform:translateX(4px); }
.prototype-note { margin:24px 0 0; color:#7b857f; font-size:.68rem; text-align:right; }
.magazine { position:relative; overflow:hidden; padding:110px 0; color:#fff; background:var(--forest-dark); }
.magazine-pattern { position:absolute; inset:0; opacity:.15; background-image:radial-gradient(circle at center,transparent 0 68px,rgba(255,255,255,.5) 69px 70px,transparent 71px),linear-gradient(45deg,transparent 49.8%,rgba(255,255,255,.35) 50%,transparent 50.2%); background-size:180px 180px; }
.magazine-layout { position:relative; display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(70px,10vw,150px); align-items:center; }
.magazine-visual { position:relative; max-width:420px; margin:auto; }
.magazine-visual img { width:100%; transform:rotate(-2deg); box-shadow:0 30px 60px rgba(0,0,0,.3); border:7px solid rgba(255,255,255,.9); }
.issue-stamp { position:absolute; z-index:2; right:-48px; top:34px; width:112px; height:112px; display:grid; place-content:center; text-align:center; color:var(--ink); background:#dfcf9d; border-radius:50%; font-family:Georgia,"Times New Roman",serif; font-size:1.15rem; line-height:1.2; transform:rotate(7deg); box-shadow:0 14px 30px rgba(0,0,0,.25); }
.issue-stamp small { margin-top:3px; font-family:Inter,ui-sans-serif,sans-serif; font-size:.55rem; text-transform:uppercase; }
.eyebrow.light { color:#c8d8c3; }
.magazine-copy h2,.namesake h2,.contact h2 { margin:20px 0 26px; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:clamp(3.3rem,5.5vw,5.6rem); font-weight:500; line-height:.9; letter-spacing:-.045em; }
.magazine-copy h2 em,.namesake h2 em,.contact h2 em { color:#e48a6f; font-weight:400; }
.magazine-copy>p { max-width:620px; margin:0; color:rgba(255,255,255,.7); font-family:Georgia,"Times New Roman",serif; font-size:1.06rem; line-height:1.75; }
.issue-list { display:grid; grid-template-columns:repeat(3,1fr); margin-top:35px; border-block:1px solid rgba(255,255,255,.16); }
.issue-list span { padding:19px 18px 19px 0; color:rgba(255,255,255,.78); border-right:1px solid rgba(255,255,255,.16); font-size:.72rem; line-height:1.4; }
.issue-list span+span { padding-left:18px; }
.issue-list span:last-child { border-right:0; }
.issue-list b { display:block; margin-bottom:8px; color:#e3a087; font-family:Georgia,"Times New Roman",serif; font-style:italic; }
.magazine-actions { display:flex; align-items:center; gap:28px; margin-top:34px; }
.button.paper-button { color:var(--ink); background:#fff; border-color:#fff; }
.text-link { display:inline-flex; align-items:center; gap:9px; color:#fff; font-size:.76rem; font-weight:800; }
.text-link svg { width:16px; }
.departments { background:var(--cream); }
.department-heading { align-items:center; }
.department-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:58px; background:var(--line); border:1px solid var(--line); }
.department-card { min-height:330px; display:flex; flex-direction:column; padding:34px; background:var(--paper); transition:background .2s ease; }
.department-card:hover { background:#fff; }
.department-icon { width:48px; height:48px; display:grid; place-items:center; color:var(--forest); background:#e9f0e5; border-radius:50%; }
.department-icon svg { width:21px; }
.department-card h3 { margin:25px 0 12px; font-family:Georgia,"Times New Roman",serif; font-size:1.3rem; line-height:1.2; }
.department-card p { margin:0; color:#68756d; font-size:.8rem; line-height:1.65; }
.department-card>span { margin-top:18px; color:var(--terracotta); font-size:.64rem; font-weight:750; letter-spacing:.04em; }
.department-card a { display:flex; align-items:center; gap:9px; margin-top:auto; padding-top:24px; color:var(--forest); font-size:.71rem; font-weight:800; }
.department-card a svg { width:15px; }
.namesake { padding:110px 0; color:#fff; background:#102d1d; }
.namesake-layout { display:grid; grid-template-columns:1fr .95fr; gap:clamp(70px,9vw,140px); align-items:center; }
.namesake-copy>p { color:rgba(255,255,255,.7); font-family:Georgia,"Times New Roman",serif; font-size:1rem; line-height:1.75; }
.namesake-copy strong { color:#fff; }
.light-link { margin-top:20px; color:#fff; }
.ratio-lab { padding:30px; color:var(--ink); background:#f1eadc; border-radius:3px; }
.lab-top { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-bottom:20px; border-bottom:1px solid rgba(25,38,30,.16); }
.lab-top>span { font-family:Georgia,"Times New Roman",serif; font-weight:700; }
.lab-top>div { display:flex; gap:5px; }
.lab-top button { border:1px solid rgba(25,38,30,.18); background:transparent; color:#5b675f; padding:7px 10px; border-radius:999px; font:inherit; font-size:.64rem; font-weight:750; cursor:pointer; }
.lab-top button.active { color:#fff; background:var(--forest); border-color:var(--forest); }
.ratio-stage { min-height:380px; display:grid; place-items:center; padding:35px 10px; }
.ratio-rectangle { position:relative; width:min(84%,400px); border:2px solid var(--terracotta); background:rgba(185,84,59,.06); transition:aspect-ratio .35s ease,width .35s ease; }
.ratio-rectangle span { position:absolute; left:50%; top:calc(100% + 9px); transform:translateX(-50%); color:var(--terracotta); font-family:Georgia,"Times New Roman",serif; font-style:italic; }
.ratio-rectangle i { position:absolute; right:calc(100% + 10px); top:50%; transform:translateY(-50%); color:var(--terracotta); font-family:Georgia,"Times New Roman",serif; }
.ratio-rectangle::before,.ratio-rectangle::after { content:""; position:absolute; background:rgba(185,84,59,.35); }
.ratio-rectangle::before { left:-8px; right:-8px; top:50%; height:1px; }
.ratio-rectangle::after { top:-8px; bottom:-8px; left:50%; width:1px; }
.rectangle-grid { position:absolute; inset:0; background-image:linear-gradient(45deg,transparent 49.8%,rgba(40,86,58,.32) 50%,transparent 50.2%),linear-gradient(-45deg,transparent 49.8%,rgba(40,86,58,.18) 50%,transparent 50.2%); }
.lab-caption { display:flex; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid rgba(25,38,30,.16); }
.lab-caption b { font-family:Georgia,"Times New Roman",serif; }
.lab-caption span { max-width:240px; color:#69756d; font-size:.7rem; text-align:right; }
.family { background:#fff; }
.family-layout { display:grid; grid-template-columns:1.35fr .65fr; gap:32px; align-items:stretch; }
.director-card { position:relative; overflow:hidden; padding:64px; background:var(--cream); border-radius:3px; }
.director-mark { position:absolute; right:36px; top:-40px; color:rgba(185,84,59,.12); font-family:Georgia,"Times New Roman",serif; font-size:14rem; line-height:1; }
.director-card h2 { max-width:760px; margin-top:20px; }
.director-card p { max-width:760px; color:#606d65; font-family:Georgia,"Times New Roman",serif; font-size:1rem; line-height:1.75; }
.signature { display:flex; flex-direction:column; margin-top:32px; color:var(--forest); font-family:Georgia,"Times New Roman",serif; font-style:italic; font-size:1.18rem; }
.signature small { margin-top:5px; color:#7b867f; font-family:Inter,ui-sans-serif,sans-serif; font-size:.6rem; font-style:normal; letter-spacing:.08em; text-transform:uppercase; }
.agenda-card { padding:38px; color:#fff; background:var(--terracotta); border-radius:3px; }
.agenda-header>span { font-size:.65rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.agenda-header h3 { margin:9px 0 26px; font-family:Georgia,"Times New Roman",serif; font-size:2rem; }
.agenda-card ol { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.25); }
.agenda-card li { display:grid; grid-template-columns:50px 1fr; gap:15px; align-items:center; padding:20px 0; border-bottom:1px solid rgba(255,255,255,.25); }
.agenda-card time { display:flex; flex-direction:column; align-items:center; font-size:.55rem; letter-spacing:.12em; }
.agenda-card time b { font-family:Georgia,"Times New Roman",serif; font-size:1.4rem; letter-spacing:0; }
.agenda-card li>span { display:flex; flex-direction:column; }
.agenda-card strong { font-family:Georgia,"Times New Roman",serif; font-size:.95rem; }
.agenda-card small { margin-top:4px; color:rgba(255,255,255,.72); font-size:.65rem; line-height:1.35; }
.agenda-card>a { display:flex; align-items:center; gap:10px; margin-top:28px; font-size:.72rem; font-weight:800; }
.agenda-card>a svg { width:15px; }
.contact { display:grid; grid-template-columns:1fr 1fr; min-height:690px; background:var(--forest-dark); color:#fff; }
.contact-map { min-height:500px; filter:grayscale(.5) contrast(.92) sepia(.1); }
.contact-map iframe { width:100%; height:100%; min-height:500px; border:0; }
.contact-copy { display:flex; flex-direction:column; justify-content:center; padding:80px clamp(40px,7vw,110px); }
.contact-copy>p { max-width:580px; margin:0; color:rgba(255,255,255,.68); font-family:Georgia,"Times New Roman",serif; font-size:1rem; line-height:1.75; }
.contact-list { display:grid; gap:0; margin:32px 0; border-top:1px solid rgba(255,255,255,.16); }
.contact-list a { display:grid; grid-template-columns:28px 1fr; gap:15px; align-items:center; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.contact-list a>svg { width:20px; color:#e48a6f; }
.contact-list span { display:flex; flex-direction:column; }
.contact-list b { font-family:Georgia,"Times New Roman",serif; font-size:.98rem; }
.contact-list small { margin-top:4px; color:rgba(255,255,255,.55); font-size:.66rem; }
.contact-copy>.button { align-self:flex-start; }
.footer { color:#dbe4dd; background:#0b2116; }
.footer-top { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding:70px 0; }
.footer-brand img { background:#fff; border-radius:3px; mix-blend-mode:normal; }
.footer-brand b { color:#fff; }
.footer-brand small { color:#879c8d; }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.footer-links>div { display:flex; flex-direction:column; gap:11px; }
.footer-links b { margin-bottom:6px; color:#fff; font-family:Georgia,"Times New Roman",serif; }
.footer-links a { color:#91a297; font-size:.72rem; }
.footer-links a:hover { color:#fff; }
.footer-bottom { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid rgba(255,255,255,.1); color:#718579; font-size:.62rem; letter-spacing:.04em; }
@media (max-width:1020px) {
  .desktop-nav { display:none; } .nav-wrap { height:70px; } .nav-cta { margin-left:auto; } .menu-button { display:block; }
  .mobile-nav { display:none; padding:8px 24px 22px; background:var(--paper); border-bottom:1px solid var(--line); }
  .mobile-nav.open { display:grid; }
  .mobile-nav a { padding:14px 0; border-bottom:1px solid var(--line); font-weight:700; }
  .hero-layout { grid-template-columns:1fr 1fr; gap:44px; }
  .quick-grid { grid-template-columns:1fr 1fr; } .quick-card:nth-child(2) { border-right:0; } .quick-card:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .principles-grid { grid-template-columns:1fr 1fr; } .principle:nth-child(2) { border-right:0; } .principle:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .news-heading { align-items:start; flex-direction:column; } .filter-row { justify-content:flex-start; max-width:none; }
  .activities-grid { grid-template-columns:1fr 1fr; } .activity-card.featured { grid-column:span 2; }
  .magazine-layout { grid-template-columns:.75fr 1.25fr; gap:70px; }
  .department-grid { grid-template-columns:1fr 1fr; }
  .namesake-layout { grid-template-columns:1fr; } .ratio-lab { max-width:700px; width:100%; margin:auto; }
  .family-layout { grid-template-columns:1fr; } .agenda-card { display:grid; grid-template-columns:.45fr 1fr; gap:30px; } .agenda-card>a { grid-column:2; }
  .contact { grid-template-columns:1fr; } .contact-map { min-height:440px; } .contact-copy { padding:80px max(32px,8vw); }
  .footer-top { grid-template-columns:.7fr 1.3fr; gap:50px; }
}
@media (max-width:760px) {
  .container { width:min(100% - 32px,620px); } .draft-contact { display:none; } .draft-inner { justify-content:center; text-align:center; }
  .brand { min-width:0; } .brand img { width:45px; } .brand b { font-size:1rem; } .brand small { display:none; } .nav-cta { display:none; } .menu-button { margin-left:auto; }
  .hero { padding:58px 0 34px; } .hero-layout { grid-template-columns:1fr; } .hero-copy { padding-bottom:0; } h1 { font-size:clamp(3.1rem,15vw,4.7rem); }
  .hero-visual { padding:20px 0 34px; } .hero-photo-frame { max-width:none; aspect-ratio:.96; }
  .photo-label { bottom:8px; left:8px; }
  .quick-grid { width:calc(100% - 32px); grid-template-columns:1fr; } .quick-card { min-height:100px; border-right:0; border-bottom:1px solid var(--line); } .quick-card:nth-child(3) { border-bottom:1px solid var(--line); } .quick-card:last-child { border-bottom:0; }
  .section { padding:116px 0 78px; } .split-heading { grid-template-columns:1fr; gap:28px; } .principles-grid { grid-template-columns:1fr; }
  .principle,.principle+.principle { padding:28px 0; border-right:0; border-bottom:1px solid var(--line); } .principle:last-child { border-bottom:0; } .statement { margin-top:58px; }
  .news-heading { gap:26px; } .filter-row { overflow-x:auto; flex-wrap:nowrap; width:100%; padding-bottom:6px; } .filter-row button { white-space:nowrap; }
  .activities-grid { grid-template-columns:1fr; } .activity-card,.activity-card.featured { grid-column:auto; grid-template-columns:1fr; grid-template-rows:240px 1fr; }
  .activity-card.featured .activity-copy { padding:26px; } .activity-card.featured h3 { font-size:1.45rem; } .prototype-note { text-align:left; line-height:1.5; }
  .magazine { padding:80px 0; } .magazine-layout { grid-template-columns:1fr; gap:72px; } .magazine-visual { max-width:300px; } .issue-stamp { right:-24px; width:96px; height:96px; }
  .magazine-copy h2,.namesake h2,.contact h2 { font-size:clamp(3rem,14vw,4.3rem); } .issue-list { grid-template-columns:1fr; } .issue-list span,.issue-list span+span { padding:14px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.16); } .issue-list span:last-child { border-bottom:0; }
  .magazine-actions { align-items:flex-start; flex-direction:column; }
  .department-grid { grid-template-columns:1fr; } .department-card { min-height:300px; padding:28px; }
  .namesake { padding:80px 0; } .namesake-layout { gap:55px; } .ratio-lab { padding:20px; } .lab-top { align-items:flex-start; flex-direction:column; } .ratio-stage { min-height:300px; } .lab-caption { flex-direction:column; } .lab-caption span { text-align:left; }
  .director-card { padding:38px 28px; } .agenda-card { display:block; padding:30px 26px; } .agenda-card>a { margin-top:24px; }
  .contact-map,.contact-map iframe { min-height:380px; } .contact-copy { padding:70px 24px; }
  .footer-top { grid-template-columns:1fr; gap:48px; } .footer-links { grid-template-columns:1fr 1fr; } .footer-bottom { align-items:flex-start; flex-direction:column; padding:20px 0; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition-duration:.01ms!important; } }
