
:root{--ink:#111111;--muted:#626262;--line:#e5e5e5;--soft:#f7f7f7;--warm:#f5f5f5;--accent:#b11226;--accent2:#8d0e1d;--navy:#111111;--white:#fff;--shadow:0 18px 55px rgba(0,0,0,.10);--radius:22px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}.shell{width:min(var(--max),calc(100% - 44px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid rgba(229,229,229,.95)}.nav-row{height:74px;display:flex;align-items:center;gap:28px}.brand{text-decoration:none;font-weight:800;letter-spacing:-.02em;font-size:18px;margin-right:auto}.main-nav{display:flex;align-items:center;gap:22px}.main-nav>a{text-decoration:none;color:#3f3f3f;font-size:14px;font-weight:650}.main-nav>a:hover{color:var(--ink)}.menu-button{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-weight:700}.mobile-nav{display:none;padding:0 22px 18px;background:#fff}.mobile-nav.open{display:grid;gap:10px}.mobile-nav a{text-decoration:none;padding:9px 0;border-bottom:1px solid var(--line);font-weight:650}.button{border:0;border-radius:999px;background:var(--ink);color:#fff;padding:12px 20px;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease;line-height:1.2}.button:hover{transform:translateY(-1px);background:#000}.button-small{padding:10px 16px;font-size:13px}.button-accent{background:var(--accent)}.button-accent:hover{background:var(--accent2)}.button-outline{background:transparent;color:var(--ink);border:1px solid #cecece}.button-outline:hover{background:var(--soft)}.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:850;color:var(--accent);margin:0 0 10px}.kicker.light{color:#fff}.muted{color:var(--muted)}h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;line-height:1.12;letter-spacing:-.025em;margin-top:0}h1{font-size:clamp(46px,6vw,76px);margin-bottom:22px}h2{font-size:clamp(32px,4vw,48px);margin-bottom:18px}h3{font-size:24px;margin-bottom:10px}p{margin-top:0}.hero{padding:88px 0 72px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:76px;align-items:center}.hero .lead{font-size:21px;line-height:1.55;color:#4a4a4a;max-width:760px}.hero-audience{font-size:13px;color:var(--muted);margin:24px 0 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-portrait{width:min(100%,400px);aspect-ratio:1;border-radius:50%;overflow:hidden;justify-self:end;background:#f2f2f2;box-shadow:var(--shadow);border:1px solid var(--line)}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:23px 26px;border-right:1px solid var(--line)}.trust-item:last-child{border-right:0}.trust-item strong{font-family:Georgia,serif;font-size:27px;display:block;line-height:1.1}.trust-item span{display:block;font-size:12px;color:var(--muted);margin-top:6px}.section{padding:82px 0}.section-soft{background:var(--soft)}.section-warm{background:var(--warm)}.section-head{max-width:810px;margin-bottom:38px}.section-head p{font-size:18px;color:var(--muted)}.stakeholder-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stakeholder-card,.area-card,.project-card,.publication-card,.news-card,.book-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px}.stakeholder-card p,.area-card p,.project-card p,.publication-card p,.news-card p,.book-card p{color:var(--muted)}.stakeholder-card .text-button,.area-card .text-button{padding:0;border:0;background:none;color:var(--accent);font-weight:800;cursor:pointer;text-align:left}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.area-card{min-height:220px;display:flex;flex-direction:column}.area-card .area-link{margin-top:auto;color:var(--accent);font-weight:800;text-decoration:none;font-size:14px}.area-card .area-link:hover{text-decoration:underline}.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fact-panel{border-radius:var(--radius);padding:34px;background:var(--navy);color:#fff}.fact-panel.light{background:#f4f4f4;color:var(--ink)}.fact-panel p{color:rgba(255,255,255,.78)}.fact-panel.light p{color:var(--muted)}.project-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project-card small,.publication-card small,.news-card time{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--accent)}.inline-cta{margin:38px 0;padding:30px 32px;border:1px solid #d9d9d9;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff}.inline-cta h3{margin-bottom:6px}.inline-cta p{margin-bottom:0;color:var(--muted)}.breadcrumbs{padding-top:28px;font-size:12px;color:#7a7a7a}.breadcrumbs a{text-decoration:none}.page-hero{padding:54px 0 52px}.page-hero .hero-copy{max-width:860px}.page-hero h1{font-size:clamp(40px,5vw,66px)}.page-hero .lead{font-size:20px;color:#555555;max-width:820px}.content-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:58px;align-items:start}.content h2{margin-top:46px;font-size:34px}.content h2:first-child{margin-top:0}.content h3{margin-top:28px}.content p,.content li{font-size:17px}.content ul{padding-left:22px}.side-facts{position:sticky;top:102px;border:1px solid var(--line);border-radius:var(--radius);padding:25px;background:var(--soft)}.side-facts h3{font-size:21px}.side-facts dl{margin:0}.side-facts dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:850;margin-top:17px}.side-facts dd{margin:4px 0 0;color:#4a4a4a}.side-facts dt:first-child{margin-top:0}.photo-gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:start}.photo-figure{margin:0;text-align:center}.photo-figure img{width:132px;height:132px;object-fit:cover;border-radius:50%;margin:0 auto;border:6px solid #fff;box-shadow:0 0 0 1px var(--line),0 12px 30px rgba(0,0,0,.08)}.photo-figure figcaption{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.35}.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.book-card{padding:18px}.book-card img{width:100%;aspect-ratio:2/3;object-fit:contain;background:#f7f7f7;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.10);margin-bottom:16px}.book-card a{text-decoration:none}.book-card h3{font-size:21px}.book-card .read-link{color:var(--accent);font-weight:800;font-size:14px}.publication-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.publication-card cite{font-style:normal;font-weight:750}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card a{text-decoration:none}.news-card:hover{border-color:#c9c9c9}.news-card h3{font-size:22px}.contact-band{padding:78px 0;background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;align-items:start}.contact-copy h2{font-size:44px}.contact-copy>p{color:#d9d9d9;font-size:18px}.contact-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.contact-points span{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 11px;font-size:12px;color:#f0f0f0}.contact-form-wrap{background:#fff;color:var(--ink);border-radius:24px;padding:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:block}.form-grid label>span{display:block;font-size:12px;font-weight:800;margin-bottom:6px}.form-grid .span-2{grid-column:1/-1}.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:1px solid #cccccc;border-radius:12px;background:#fff;padding:12px 13px;color:var(--ink);outline:none}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:#808080;box-shadow:0 0 0 3px rgba(0,0,0,.08)}.lead-form textarea{min-height:116px;resize:vertical}.submit-button{margin-top:16px;background:var(--accent)}.submit-button:hover{background:var(--accent2)}.form-note{font-size:11px;color:#707070;margin:10px 0 0}.form-status{font-size:13px;margin-top:10px}.turnstile-wrap{margin-top:14px}.cf-turnstile[data-sitekey="YOUR_TURNSTILE_SITE_KEY"]{min-height:0}.hp{position:absolute!important;left:-9999px!important;opacity:0!important}.site-footer{border-top:1px solid var(--line);padding:24px 0;background:#fff}.footer-row{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px;color:#777777}.footer-row a{text-decoration:none}.modal{display:none;position:fixed;inset:0;z-index:100}.modal.open{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68)}.modal-card{position:relative;width:min(690px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:24px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.26)}.modal-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:30px;cursor:pointer;color:#555555}.modal .lead-form{margin-top:22px}.article-wrap{width:min(830px,calc(100% - 44px));margin:0 auto;padding:46px 0 70px}.article-wrap h1{font-size:clamp(40px,5vw,62px)}.article-meta{font-size:13px;color:var(--muted);margin:0 0 28px}.article-wrap h2{font-size:32px;margin-top:42px}.article-wrap p,.article-wrap li{font-size:18px}.article-wrap ul{padding-left:23px}.article-video{aspect-ratio:16/9;margin:28px 0;border-radius:18px;overflow:hidden;background:#111}.article-video iframe{width:100%;height:100%;border:0}.book-reader-hero{padding:52px 0;border-bottom:1px solid var(--line)}.book-reader-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;align-items:center}.book-cover-large{width:100%;max-height:330px;object-fit:contain;border-radius:8px;box-shadow:0 16px 40px rgba(0,0,0,.14)}.book-reader-hero h1{font-size:clamp(40px,5vw,64px);margin-bottom:12px}.book-subtitle{font-size:20px;color:#555555}.book-byline{font-weight:750}.reader{width:min(1240px,calc(100% - 44px));margin:0 auto;padding:46px 0 76px;display:grid;grid-template-columns:260px minmax(0,820px);gap:56px;align-items:start}.booktoc{position:sticky;top:100px;max-height:calc(100vh - 130px);overflow:auto;padding-right:18px;border-right:1px solid var(--line)}.booktoc strong{display:block;font-family:inherit;font-size:18px;font-weight:800;margin-bottom:12px}.booktoc a{display:block;text-decoration:none;color:#606060;font-size:13px;line-height:1.35;padding:5px 0}.booktoc a.sub{padding-left:12px;font-size:12px}.booktoc a:hover{color:var(--accent)}.booktext{font-family:inherit;font-size:17px;line-height:1.78;min-width:0}.booktext h2,.booktext h3,.booktext h4{scroll-margin-top:100px}.booktext h2{font-size:34px;margin:56px 0 20px}.booktext h3{font-size:25px;margin:36px 0 14px}.booktext h4{font-size:20px;margin:28px 0 10px}.booktext p{margin:0 0 1.1em}.booktext ul,.booktext ol{padding-left:24px}.booktext img{max-width:100%;height:auto}.privacy{width:min(800px,calc(100% - 44px));margin:0 auto;padding:58px 0 90px}.privacy p,.privacy li{font-size:17px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.main-nav>a{display:none}.menu-button{display:block}.hero-grid{grid-template-columns:1fr .6fr;gap:38px}.stakeholder-grid{grid-template-columns:repeat(2,1fr)}.area-grid{grid-template-columns:repeat(2,1fr)}.photo-gallery{grid-template-columns:repeat(3,1fr)}.book-grid{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:repeat(2,1fr)}.reader{grid-template-columns:1fr}.booktoc{position:relative;top:auto;max-height:320px;border:1px solid var(--line);border-radius:16px;padding:18px}.contact-grid{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr}.side-facts{position:relative;top:auto}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:720px){.shell{width:min(var(--max),calc(100% - 28px))}.nav-row{height:66px}.main-nav .button{display:none}.hero{padding:48px 0 42px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-portrait{order:-1;justify-self:start;width:210px}.hero h1{font-size:46px}.hero .lead{font-size:18px}.section{padding:58px 0}.stakeholder-grid,.area-grid,.project-list,.facts-grid,.publication-grid,.news-grid{grid-template-columns:1fr}.inline-cta{align-items:flex-start;flex-direction:column}.photo-gallery{grid-template-columns:repeat(2,1fr)}.photo-figure img{width:112px;height:112px}.book-grid{grid-template-columns:1fr 1fr;gap:14px}.book-card{padding:12px}.book-reader-grid{grid-template-columns:1fr}.book-cover-large{max-width:170px}.reader{width:min(100% - 28px,1240px)}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.contact-form-wrap{padding:20px}.contact-copy h2{font-size:36px}.footer-row{align-items:flex-start;flex-direction:column;gap:6px}.article-wrap{width:min(100% - 28px,830px)}.article-wrap p,.article-wrap li{font-size:17px}}
@media(max-width:440px){.book-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0!important;border-bottom:1px solid var(--line)}.trust-item:last-child{border-bottom:0}.photo-gallery{grid-template-columns:repeat(2,1fr)}.hero-portrait{width:180px}}
.cf-turnstile[data-sitekey="YOUR_TURNSTILE_SITE_KEY"]{display:none!important}
.button{white-space:nowrap}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
img{height:auto} .section-warm{background:#f5f5f5} .contact-band{background:#111} .fact-panel{background:#111} .booktext strong{font-weight:750} .booktext em{font-style:italic}


/* Homepage V3 */
.hero-positioning{font-size:clamp(21px,2.2vw,29px);line-height:1.42;max-width:760px;color:#3d3d3d;margin:0}
.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expertise-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff;min-height:245px}.expertise-card h3{font-size:24px;margin:22px 0 12px}.expertise-card p{color:var(--muted);margin-bottom:0}.expertise-no{font-size:12px;font-weight:850;letter-spacing:.12em;color:var(--accent)}
.other-books{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);display:flex;gap:20px;align-items:flex-start}.other-books strong{white-space:nowrap}.other-books ul{display:flex;gap:10px 26px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.other-books a{color:var(--accent);font-weight:750;text-decoration:none}.other-books a:hover{text-decoration:underline}
.research-section{background:#111;color:#fff}.research-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:38px}.research-intro h2{max-width:840px}.research-intro p{color:#d3d3d3;font-size:18px;max-width:900px}.button-white{background:#fff;color:#111}.button-white:hover{background:#f0f0f0;color:#111}.research-topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#353535;border:1px solid #353535;border-radius:var(--radius);overflow:hidden}.research-topic-grid article{background:#161616;padding:28px;min-height:230px}.research-topic-grid h3{font-size:22px}.research-topic-grid p{color:#bfbfbf;margin-bottom:0}.research-note{margin:24px 0 0;color:#cfcfcf;font-size:14px}
.project-widget-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-widget{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff;min-height:245px}.project-widget>span{display:inline-block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--accent);margin-bottom:18px}.project-widget p{color:var(--muted);margin-bottom:0}.additional-work{margin-top:30px;padding:28px 30px;border-radius:var(--radius);background:var(--soft);display:flex;justify-content:space-between;gap:30px;align-items:center}.additional-work p{margin:0;max-width:850px}.profile-links{display:flex;gap:12px;flex-wrap:wrap;white-space:nowrap}.profile-links a{font-weight:800;color:var(--accent);text-decoration:none}.profile-links a:hover{text-decoration:underline}
.about-head{max-width:930px}.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.about-grid article{border-top:3px solid #111;background:#fff;border-radius:0 0 var(--radius) var(--radius);padding:26px 28px}.about-grid h3{font-size:24px}.about-grid p{color:var(--muted);margin-bottom:0}.about-hobbies{grid-column:1/-1}
.photo-band{background:#111;padding:26px 0}.photo-band-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.photo-band-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.useful-section{padding-top:64px;padding-bottom:64px}.useful-links{margin:0;padding:0;list-style:none;columns:2;column-gap:60px}.useful-links li{break-inside:avoid;border-top:1px solid var(--line);padding:11px 0}.useful-links a{font-weight:700;text-decoration:none}.useful-links a:hover{color:var(--accent)}
.contact-red{background:#8d0e1d}.contact-red .contact-copy>p{color:#f5dfe3}.simple-form-grid{display:grid;gap:14px}.simple-form-grid label>span{display:block;font-size:12px;font-weight:800;margin-bottom:6px}.simple-form-grid textarea{min-height:150px}.contact-red .submit-button{background:#111}.contact-red .submit-button:hover{background:#000}
@media(max-width:980px){.expertise-grid,.project-widget-grid{grid-template-columns:repeat(2,1fr)}.research-topic-grid{grid-template-columns:repeat(2,1fr)}.research-intro{grid-template-columns:1fr;align-items:start}.photo-band-grid{grid-template-columns:repeat(3,1fr)}.additional-work{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.expertise-grid,.project-widget-grid,.about-grid,.research-topic-grid{grid-template-columns:1fr}.about-hobbies{grid-column:auto}.other-books{flex-direction:column;gap:8px}.other-books ul{display:grid;gap:8px}.photo-band-grid{grid-template-columns:repeat(2,1fr)}.useful-links{columns:1}.research-topic-grid article{min-height:auto}.expertise-card,.project-widget{min-height:auto}.additional-work{padding:22px}.hero-positioning{font-size:21px}}

:root{
  --ink:#111111;--muted:#5f5f5f;--line:#e4e4e4;--soft:#f7f7f7;
  --red:#b11226;--red-dark:#8d0e1d;--white:#ffffff;--black:#0d0d0d;
  --radius:20px;--max:1180px;--shadow:0 18px 48px rgba(0,0,0,.10)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,textarea{font:inherit}.shell{width:min(var(--max),calc(100% - 44px));margin-inline:auto}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;letter-spacing:-.025em;margin:0}h1{font-size:clamp(48px,6.2vw,78px)}h2{font-size:clamp(34px,4vw,50px)}h3{font-size:23px}p{margin:0}
.kicker{margin:0 0 11px;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.section-title{max-width:860px}.section-title>p:not(.kicker){margin-top:14px;font-size:18px;color:var(--muted);max-width:820px}
.section{padding:80px 0;border-top:1px solid var(--line)}
.section-dark{background:var(--black);color:#fff;border-top-color:#2b2b2b}.section-dark .section-title>p:not(.kicker){color:#c7c7c7}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:saturate(140%) blur(10px)}
.nav-row{height:74px;display:flex;align-items:center;gap:24px}.brand{margin-right:auto;text-decoration:none;font-size:18px;font-weight:850;letter-spacing:-.025em}.main-nav{display:flex;align-items:center;gap:17px}.main-nav>a{font-size:13px;font-weight:700;text-decoration:none;color:#3d3d3d}.main-nav>a:hover{color:var(--red)}
.button{border:0;border-radius:999px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;background:#111;color:#fff;font-weight:850;line-height:1.15;text-decoration:none;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.button:hover{transform:translateY(-1px);background:#000}.button-red{background:var(--red)}.button-red:hover{background:var(--red-dark)}.button-outline{background:#fff;color:#111;border:1px solid #cfcfcf}.button-outline:hover{background:#f5f5f5}.button-small{padding:10px 16px;font-size:13px}.menu-button{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-weight:800}.mobile-nav{display:none;padding:0 22px 18px;background:#fff}.mobile-nav.open{display:grid;gap:2px}.mobile-nav a{text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line);font-weight:700}.mobile-nav .button{margin-top:10px}
.hero{padding:84px 0 70px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:72px;align-items:center}.hero-copy{max-width:760px}.hero h1{margin-bottom:20px}.hero-positioning{font-size:clamp(21px,2.1vw,29px);line-height:1.42;color:#3d3d3d;max-width:750px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-portrait{width:min(100%,400px);aspect-ratio:1;border-radius:50%;overflow:hidden;justify-self:end;background:#f2f2f2;border:1px solid var(--line);box-shadow:var(--shadow)}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}
.trust-strip{border-top:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:23px 26px;border-right:1px solid var(--line)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;font-family:Georgia,serif;font-size:28px;line-height:1.05}.trust-item span{display:block;margin-top:7px;font-size:12px;line-height:1.45;color:var(--muted)}
.card-grid{display:grid;gap:18px;margin-top:38px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}
.hover-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:27px;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;display:flex;flex-direction:column}.hover-card h3{margin:0 0 12px}.hover-card p{color:var(--muted);transition:color .18s ease}.hover-card .card-accent,.hover-card .card-link,.hover-card .card-number{color:var(--red);transition:color .18s ease}.hover-card .card-link{font-size:14px;font-weight:850;text-decoration:none;margin-top:auto;padding:20px 0 0;border:0;background:transparent;cursor:pointer;text-align:left;line-height:1.35}.hover-card:hover,.hover-card:focus-within{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px)}.hover-card:hover p,.hover-card:hover .card-accent,.hover-card:hover .card-link,.hover-card:hover .card-number,.hover-card:focus-within p,.hover-card:focus-within .card-accent,.hover-card:focus-within .card-link,.hover-card:focus-within .card-number{color:#fff}.hover-card:hover .button,.hover-card:focus-within .button{background:#fff;color:var(--red)}
.partnership-card{min-height:290px}.partnership-card .card-link{margin-top:auto}
.experience-intro{margin-bottom:36px}.experience-grid .hover-card{min-height:260px}.card-number{display:block;font-size:11px;font-weight:900;letter-spacing:.15em;margin-bottom:19px}.section-dark .experience-grid .hover-card{background:#fff;color:#111}.section-dark .experience-grid .hover-card p{color:var(--muted)}.section-dark .experience-grid .hover-card:hover,.section-dark .experience-grid .hover-card:focus-within{background:var(--red);color:#fff}.section-dark .experience-grid .hover-card:hover p,.section-dark .experience-grid .hover-card:focus-within p{color:#fff}
.project-inquiry{margin-top:34px;padding:28px 30px;border:1px solid #343434;border-radius:var(--radius);display:flex;justify-content:space-between;gap:28px;align-items:center;background:#161616}.project-inquiry h3{font-size:28px;margin-bottom:8px}.project-inquiry p{color:#c7c7c7;max-width:790px}
.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px}.book-card{padding:18px}.book-card>a{text-decoration:none}.book-card img{width:100%;aspect-ratio:2/3;object-fit:contain;background:#f7f7f7;border-radius:11px;margin-bottom:17px;box-shadow:0 10px 28px rgba(0,0,0,.09)}.book-card h3{font-size:21px}.book-card p{font-size:14px;margin-top:8px}.book-card .card-link{padding-top:16px}.other-books{margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.other-books strong{display:block;margin-bottom:10px}.other-books-list{display:flex;gap:8px 20px;flex-wrap:wrap;list-style:none;padding:0;margin:0}.other-books-list li{font-size:14px;color:#4e4e4e}.other-books-list a{color:var(--red);font-weight:750;text-decoration:none}.other-books-list a:hover{text-decoration:underline}
.research-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-top:14px}.research-intro p{font-size:18px;color:var(--muted);max-width:880px}.research-intro a{color:var(--red);font-weight:800;text-decoration:none}.research-intro a:hover{text-decoration:underline}.research-grid{grid-template-columns:repeat(3,1fr)}.research-grid .hover-card{min-height:255px}.research-grid h3{font-size:21px}
.projects-grid .hover-card{min-height:260px}.project-type{display:block;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:17px}.project-more{display:block;margin-top:auto;padding-top:18px;color:var(--red);font-size:14px;font-weight:850}
.about-intro{font-size:19px;color:#d2d2d2;max-width:900px;margin-top:14px}.about-grid{grid-template-columns:repeat(2,1fr)}.about-card{background:#161616;border-color:#2e2e2e;color:#fff}.about-card p{color:#c8c8c8}.about-card:hover,.about-card:focus-within{background:var(--red);border-color:var(--red)}.about-card:hover p,.about-card:focus-within p{color:#fff}.about-hobbies{grid-column:1/-1}
.photo-circles{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;align-items:center;margin-top:42px;padding-top:38px;border-top:1px solid #2e2e2e}.photo-circles img{width:140px;height:140px;object-fit:cover;border-radius:50%;margin:0 auto;border:4px solid #fff;box-shadow:0 0 0 1px #363636}
.useful-list{list-style:none;padding:0;margin:36px 0 0;max-width:900px}.useful-list li{position:relative;padding:12px 0 12px 26px;border-bottom:1px solid var(--line)}.useful-list li::before{content:"";position:absolute;left:0;top:21px;width:8px;height:8px;border-radius:50%;background:var(--red)}.useful-list a{font-weight:800;text-decoration:none}.useful-list a:hover{color:var(--red)}.useful-list span{color:var(--muted);font-size:14px;margin-left:7px}
.contact-section{background:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;align-items:start;margin-top:4px}.contact-copy{padding-top:8px}.contact-copy h2{margin-bottom:16px}.contact-copy p{font-size:18px;color:var(--muted)}.contact-form-panel{background:var(--red);color:#fff;border-radius:24px;padding:30px}.simple-form{display:grid;gap:15px}.simple-form label>span{display:block;margin-bottom:6px;font-size:12px;font-weight:850}.simple-form input,.simple-form textarea{width:100%;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:#fff;color:#111;padding:12px 13px;outline:none}.simple-form input:focus,.simple-form textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.13)}.simple-form textarea{min-height:155px;resize:vertical}.contact-form-panel .button{background:#111}.contact-form-panel .button:hover{background:#000}.form-note{font-size:11px;color:#f2f2f2}.form-status{font-size:13px}.hp{position:absolute!important;left:-9999px!important;opacity:0!important}.cf-turnstile[data-sitekey="YOUR_TURNSTILE_SITE_KEY"]{display:none!important}
.site-footer{background:#0b0b0b;color:#fff;padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:38px}.footer-brand{font-size:20px;font-weight:850}.footer-copy{margin-top:9px;color:#a9a9a9;font-size:13px;max-width:280px}.footer-col strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#858585;margin-bottom:10px}.footer-col a{display:block;text-decoration:none;color:#d8d8d8;font-size:13px;padding:4px 0}.footer-col a:hover{color:#fff}.footer-bottom{margin-top:34px;padding-top:20px;border-top:1px solid #2a2a2a;color:#858585;font-size:12px;display:flex;justify-content:space-between;gap:20px}
.modal{display:none;position:fixed;inset:0;z-index:100}.modal.open{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}.modal-card{position:relative;width:min(620px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:24px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.26)}.modal-card h2{font-size:38px;margin-bottom:10px}.modal-card>p:not(.kicker){color:var(--muted)}.modal-close{position:absolute;right:17px;top:10px;border:0;background:transparent;font-size:31px;cursor:pointer;color:#555}.modal .simple-form{margin-top:22px}.modal .simple-form label>span{color:#111}.modal .form-note{color:#707070}.modal .button{background:var(--red)}
section[id]{scroll-margin-top:82px}section:not(.hero):not(.trust-strip){content-visibility:auto;contain-intrinsic-size:1px 780px}
@media(max-width:1100px){.main-nav{gap:12px}.main-nav>a{font-size:12px}.research-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){.main-nav>a{display:none}.menu-button{display:block}.hero-grid{grid-template-columns:1fr .62fr;gap:38px}.grid-4,.grid-3,.research-grid{grid-template-columns:repeat(2,1fr)}.book-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.photo-circles{grid-template-columns:repeat(3,1fr)}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.research-intro{grid-template-columns:1fr;align-items:start}}
@media(max-width:720px){.shell{width:min(var(--max),calc(100% - 28px))}.nav-row{height:66px}.main-nav .button{display:none}.hero{padding:46px 0 42px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-portrait{order:-1;justify-self:start;width:205px}.hero h1{font-size:46px}.hero-positioning{font-size:20px}.section{padding:58px 0}.grid-4,.grid-3,.grid-2,.research-grid,.about-grid{grid-template-columns:1fr}.book-grid{grid-template-columns:1fr 1fr;gap:14px}.book-card{padding:13px}.project-inquiry{flex-direction:column;align-items:flex-start}.photo-circles{grid-template-columns:repeat(3,1fr);gap:16px}.photo-circles img{width:100px;height:100px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.about-hobbies{grid-column:auto}}
@media(max-width:460px){.book-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0!important;border-bottom:1px solid var(--line)}.trust-item:last-child{border-bottom:0}.photo-circles{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.hover-card{transition:none}}


/* V5 unified design and page-specific refinements */
:root{--red:#b11226;--red-dark:#8d0e1d;--black:#0d0d0d;--ink:#111;--muted:#5f5f5f;--line:#e4e4e4;--soft:#f7f7f7;--radius:20px;--max:1180px;--shadow:0 18px 48px rgba(0,0,0,.10)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif}
.kicker{color:var(--red)}
/* Popup fields must stay clearly visible on white popup panels */
.modal .simple-form input,.modal .simple-form textarea,.modal .lead-form input,.modal .lead-form textarea,.modal .lead-form select{border:1.5px solid #9b9b9b!important;background:#fff!important;color:#111!important;box-shadow:none}
.modal .simple-form input:focus,.modal .simple-form textarea:focus,.modal .lead-form input:focus,.modal .lead-form textarea:focus,.modal .lead-form select:focus{border-color:#111!important;box-shadow:0 0 0 3px rgba(177,18,38,.12)!important}
/* Cards that should remain white instead of turning red */
.partnership-card:hover,.partnership-card:focus-within,.book-card:hover,.book-card:focus-within,.projects-grid .hover-card:hover,.projects-grid .hover-card:focus-within{background:#fff!important;border-color:#cfcfcf!important;color:#111!important;transform:translateY(-2px)}
.partnership-card:hover p,.partnership-card:focus-within p,.partnership-card:hover .card-link,.partnership-card:focus-within .card-link,.book-card:hover p,.book-card:focus-within p,.book-card:hover .card-link,.book-card:focus-within .card-link,.projects-grid .hover-card:hover p,.projects-grid .hover-card:focus-within p,.projects-grid .hover-card:hover .project-type,.projects-grid .hover-card:focus-within .project-type,.projects-grid .hover-card:hover .project-more,.projects-grid .hover-card:focus-within .project-more{color:inherit!important}
.partnership-card:hover .card-link,.partnership-card:focus-within .card-link,.book-card:hover .card-link,.book-card:focus-within .card-link,.projects-grid .hover-card:hover .project-type,.projects-grid .hover-card:focus-within .project-type,.projects-grid .hover-card:hover .project-more,.projects-grid .hover-card:focus-within .project-more{color:var(--red)!important}
.project-inquiry .kicker{color:#e2233a!important}
.research-grid{grid-template-columns:repeat(3,1fr)}
.scholar-link-row{margin-top:22px}.scholar-link{display:inline-block;color:var(--red);font-size:14px;font-weight:850;text-decoration:none}.scholar-link:hover{text-decoration:underline}
.useful-list strong{font-weight:800}.useful-list a{color:var(--red);font-weight:700;overflow-wrap:anywhere}.useful-list span{display:block;margin-left:0;margin-top:2px}
/* Book pages use exactly the same typography and chrome as the homepage */
.book-page .site-header,.book-page .site-footer{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.book-reader-hero{padding:56px 0;border-bottom:1px solid var(--line);background:#fff}
.book-reader-grid{grid-template-columns:220px minmax(0,1fr);gap:48px}
.book-reader-hero h1{font-size:clamp(42px,5vw,66px)}
.book-subtitle{font-size:20px;color:#555}.book-byline{font-weight:750}
.reader{width:min(1240px,calc(100% - 44px));margin:0 auto;padding:48px 0 78px;display:grid;grid-template-columns:250px minmax(0,820px);gap:58px;align-items:start}
.booktoc{position:sticky;top:100px;max-height:calc(100vh - 130px);overflow:auto;padding:20px 20px 20px 0;border-right:1px solid var(--line)}
.booktoc strong{display:block;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--red);margin-bottom:13px}
.booktoc a{display:block;text-decoration:none;color:#4e4e4e;font-size:14px;line-height:1.4;padding:7px 0;border-bottom:1px solid #efefef}.booktoc a:last-child{border-bottom:0}.booktoc a:hover{color:var(--red)}
.booktext{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.78;min-width:0;color:#242424}.booktext p{margin:0 0 1.1em}.booktext h2{font-size:34px;margin:56px 0 20px}.booktext h3{font-size:25px;margin:36px 0 14px}.booktext h4{font-size:20px;margin:28px 0 10px}.reading-note{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.book-contact-section{background:#fff;border-top:1px solid var(--line)}.book-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;align-items:start}.book-contact-copy{padding-top:8px}.book-contact-copy h2{font-size:clamp(34px,4vw,50px);margin-bottom:16px}.book-contact-copy>p:not(.kicker){font-size:18px;color:var(--muted)}
.site-footer{background:#0b0b0b!important;color:#fff!important;border-top:0!important;padding:52px 0 28px!important}.footer-grid{display:grid!important;grid-template-columns:1.2fr 1fr 1fr 1fr!important;gap:38px!important}.footer-brand{font-size:20px;font-weight:850}.footer-copy{margin-top:9px;color:#a9a9a9!important;font-size:13px;max-width:280px}.footer-col strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#858585;margin-bottom:10px}.footer-col a{display:block;text-decoration:none;color:#d8d8d8!important;font-size:13px;padding:4px 0}.footer-col a:hover{color:#fff!important}.footer-bottom{margin-top:34px;padding-top:20px;border-top:1px solid #2a2a2a;color:#858585;font-size:12px;display:flex;justify-content:space-between;gap:20px}
@media(max-width:980px){.research-grid{grid-template-columns:repeat(2,1fr)}.book-contact-grid{grid-template-columns:1fr}.reader{grid-template-columns:1fr}.booktoc{position:relative;top:auto;max-height:none;border:1px solid var(--line);border-radius:16px;padding:18px}.footer-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:720px){.research-grid{grid-template-columns:1fr}.book-reader-grid{grid-template-columns:1fr}.book-cover-large{max-width:180px}.reader{width:min(100% - 28px,1240px)}.footer-grid{grid-template-columns:1fr!important}.footer-bottom{flex-direction:column}.book-contact-section{padding:58px 0}}


/* V6: project-detail template + final book refinements */
.book-description-list{margin:0 0 1.4em;padding-left:1.35em}.book-description-list li{margin:.36em 0}
.project-page .page-hero{padding:66px 0 58px;border-bottom:1px solid var(--line)}
.project-page .page-hero .lead{max-width:900px}
.project-page .page-hero .hero-actions{margin-top:26px}
.project-detail-section{padding:76px 0;border-bottom:1px solid var(--line)}
.project-detail-section:last-of-type{border-bottom:0}
.project-detail-section .section-title{max-width:850px}
.project-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.project-detail-grid.grid-4{grid-template-columns:repeat(4,1fr)}
.project-detail-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px;min-height:190px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.project-detail-card:hover{transform:translateY(-2px);border-color:#c9c9c9;box-shadow:0 12px 30px rgba(0,0,0,.05)}
.project-detail-card .project-index{display:block;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:15px}
.project-detail-card h3{font-size:22px;margin-bottom:10px}.project-detail-card p{color:var(--muted);margin-bottom:0}
.project-detail-section.dark{background:#0d0d0d;color:#fff;border-bottom:0}.project-detail-section.dark .section-title>p:not(.kicker){color:#c8c8c8}.project-detail-section.dark .project-detail-card{background:#fff;color:#111}.project-detail-section.dark .project-detail-card p{color:var(--muted)}
.format-meta{color:var(--red);font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px}
.project-brief{max-width:890px;font-size:18px;color:var(--muted)}
.project-inline-cta{margin-top:38px;padding:28px 30px;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:28px;background:#fff}
.project-inline-cta h3{margin:0 0 7px}.project-inline-cta p{margin:0;color:var(--muted)}
.other-projects-grid .hover-card{min-height:230px}
.project-more[href]{text-decoration:none}.project-more[href]:hover{text-decoration:underline}
.footer-brand-only{padding-top:1px}
@media(max-width:980px){.project-detail-grid,.project-detail-grid.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.project-detail-section{padding:58px 0}.project-detail-grid,.project-detail-grid.grid-4{grid-template-columns:1fr}.project-inline-cta{flex-direction:column;align-items:flex-start}}

/* V7: family entertainment research area + visual project pages */
.family-area-hero-grid,.project-visual-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:58px;align-items:center}.area-hero-image,.project-logo-hero{width:100%;max-width:390px;justify-self:end;object-fit:contain}.remote-image{background:#fff}.gap-scale{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:18px;overflow:hidden}.gap-scale span{padding:22px 16px;border-right:1px solid var(--line);font-size:13px;color:var(--muted)}.gap-scale span:last-child{border-right:0}.gap-scale b{display:block;color:var(--red);font-size:18px}.dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dual-card{border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff}.dual-card ul{margin-bottom:0;padding-left:20px}.book-feature-wide{display:grid;grid-template-columns:220px minmax(0,1fr);gap:44px;align-items:center}.book-feature-wide img{width:100%;max-height:330px;object-fit:contain}.text-link{color:var(--red);font-weight:850;text-decoration:none}.text-link:hover{text-decoration:underline}.study-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.study-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.study-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#f2f2f2}.study-card>div{padding:22px}.study-card small,.insight-card small{color:var(--red);font-size:10px;letter-spacing:.11em;font-weight:900}.study-card h3,.insight-card h3{font-size:21px}.study-card p,.insight-card p{color:var(--muted);margin-bottom:0}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.insight-card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:#fff}.format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.format-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.format-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f4f4f4}.format-card>div{padding:22px}.format-card h3{font-size:22px}.format-card p:last-child{color:var(--muted);margin-bottom:0}.project-visual-hero{border-bottom:1px solid var(--line)}
@media(max-width:980px){.family-area-hero-grid,.project-visual-hero-grid{grid-template-columns:1fr}.area-hero-image,.project-logo-hero{justify-self:start;max-width:300px}.gap-scale{grid-template-columns:1fr 1fr}.gap-scale span{border-bottom:1px solid var(--line)}.study-grid,.insight-grid,.format-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.dual-grid,.study-grid,.insight-grid,.format-grid,.book-feature-wide{grid-template-columns:1fr}.gap-scale{grid-template-columns:1fr}.gap-scale span{border-right:0}.book-feature-wide img{max-width:180px}}


/* V8: homepage About repair, family entertainment redesign, Future Experience Park redesign */
.section-dark .about-grid .about-card{background:#fff!important;border-color:#dedede!important;color:#111!important;min-height:0}
.section-dark .about-grid .about-card p{color:#626262!important}
.section-dark .about-grid .about-card:hover,.section-dark .about-grid .about-card:focus-within{background:#fff!important;border-color:#c7c7c7!important;color:#111!important;transform:translateY(-2px)}
.section-dark .about-grid .about-card:hover p,.section-dark .about-grid .about-card:focus-within p{color:#626262!important}
.contact-section .kicker{color:var(--red)!important}
.photo-circles{grid-template-columns:repeat(6,minmax(0,1fr))}

.family-modern-hero,.future-project-hero{border-bottom:1px solid var(--line)}
.family-modern-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:64px;align-items:center}
.area-signal-panel{background:#0c0c0c;color:#fff;border-radius:26px;padding:32px;box-shadow:var(--shadow)}
.area-signal-panel>strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.15;margin-bottom:24px}
.area-signal-panel .kicker{color:#fff}
.signal-list{display:grid;gap:0;border-top:1px solid #333}
.signal-list span{padding:11px 0;border-bottom:1px solid #333;color:#ededed;font-size:14px}
.external-arrow{display:inline-flex;align-items:center;min-height:44px}
.link-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.center-link{justify-content:center}
.interview-points{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.interview-points>div{border:1px solid var(--line);border-radius:18px;background:#fff;padding:22px}
.interview-points strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:20px;margin-bottom:8px}
.interview-points span{display:block;color:var(--muted);font-size:14px;line-height:1.55}
.clean-book-feature{border:1px solid var(--line);border-radius:24px;padding:28px;background:#fff}
.research-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.research-link-card{display:flex;flex-direction:column;min-height:250px;border:1px solid var(--line);border-radius:20px;padding:24px;background:#fff;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.research-link-card:hover{transform:translateY(-2px);border-color:#c9c9c9;box-shadow:0 12px 28px rgba(0,0,0,.05)}
.research-link-card>span{font-size:10px;font-weight:900;letter-spacing:.13em;color:var(--red);margin-bottom:15px}
.research-link-card h3{font-size:22px}.research-link-card p{color:var(--muted);font-size:14px;line-height:1.55}.research-link-card b{margin-top:auto;color:var(--red);font-size:13px;padding-top:16px}
.research-link-grid-3{grid-template-columns:repeat(3,1fr)}
.engines-section .section-head>p:not(.kicker){color:#c8c8c8}
.engine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.engine-grid article{background:#fff;color:#111;border-radius:20px;padding:26px;min-height:190px}
.engine-grid article>span{display:block;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.14em;margin-bottom:15px}.engine-grid article h3{font-size:24px}.engine-grid article p{color:var(--muted);margin-bottom:0}
.project-format-grid .format-card{box-shadow:0 10px 28px rgba(0,0,0,.04)}
.project-format-grid .format-card img{aspect-ratio:4/3;object-fit:cover;background:#f3f3f3}
.format-size{display:block;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.whole-family-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.whole-family-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.whole-family-grid h3{font-size:20px}.whole-family-grid p{font-size:14px;color:var(--muted);margin-bottom:0}
.project-page-lower>.section:first-child{border-top:1px solid var(--line)}
.family-rebuilt .project-detail-card,.project-page-v8 .project-detail-card{min-height:0}

@media(max-width:980px){.family-modern-grid{grid-template-columns:1fr}.area-signal-panel{max-width:620px}.interview-points,.research-link-grid,.research-link-grid-3,.engine-grid{grid-template-columns:repeat(2,1fr)}.whole-family-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.family-modern-hero,.future-project-hero{padding-top:38px}.area-signal-panel{padding:24px}.area-signal-panel>strong{font-size:26px}.interview-points,.research-link-grid,.research-link-grid-3,.engine-grid,.whole-family-grid{grid-template-columns:1fr}.clean-book-feature{grid-template-columns:1fr;padding:20px}.clean-book-feature img{max-width:190px}.photo-circles{grid-template-columns:repeat(3,1fr)}}


/* FINAL V9 — unified templates */
html{scroll-padding-top:88px}body{overflow-x:hidden}.site-header{background:rgba(255,255,255,.98)}
.main-nav a,.mobile-nav a{white-space:nowrap}.section-title{max-width:900px}.section-title .kicker,.detail-page .kicker{font-size:11px;letter-spacing:.16em;color:var(--red);font-weight:900}.section-title h2,.detail-page .section-title h2{font-size:clamp(30px,3.2vw,46px);line-height:1.08;margin-top:7px}.detail-page h1{font-size:clamp(42px,5vw,68px);line-height:1.02}.detail-page h2{font-size:clamp(28px,3vw,42px)}.detail-page h3{font-size:22px}.detail-page .lead{max-width:900px;font-size:20px;color:#555}.section-rule{border-top:1px solid var(--line)}.compact-section{padding-top:32px;padding-bottom:32px}
.detail-hero{padding:66px 0 58px;border-bottom:1px solid var(--line);background:#fff}.detail-hero-grid{display:grid;grid-template-columns:minmax(0,900px);gap:32px}.focus-box{background:#fff;border:2px solid #111;border-radius:20px;padding:26px 28px}.focus-box .kicker{margin-bottom:7px}.focus-box h2{margin:0 0 10px;font-size:clamp(27px,3vw,40px)}.focus-box p:last-child{margin-bottom:0;color:var(--muted)}
.detail-card-grid{margin-top:30px}.detail-card{position:relative;border:1px solid var(--line);border-radius:20px;background:#fff;padding:24px;min-height:190px;text-decoration:none;color:#111;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.detail-card p{color:var(--muted);transition:color .18s ease}.detail-card .card-number{display:block;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;transition:color .18s ease}.detail-card b{display:block;margin-top:16px;color:var(--red);font-size:13px;transition:color .18s ease}.detail-card:hover,.detail-card:focus-within{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px)}.detail-card:hover p,.detail-card:focus-within p,.detail-card:hover .card-number,.detail-card:focus-within .card-number,.detail-card:hover b,.detail-card:focus-within b{color:#fff}.dark-detail-grid .detail-card{background:#fff;color:#111}.section-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.area-more{display:inline-block;margin-top:16px;color:var(--red);font-weight:850;text-decoration:none}.area-more:hover{text-decoration:underline}.experience-grid h3 a{color:inherit;text-decoration:none}
.final-study-grid .study-card{transition:transform .18s ease,border-color .18s ease}.final-study-grid .study-card:hover{transform:translateY(-2px);border-color:#c7c7c7}.final-study-grid img{aspect-ratio:16/10;object-fit:cover}.final-book-feature{border:1px solid var(--line);border-radius:22px;padding:28px}.research-links-grid .detail-card{min-height:240px}.project-format-grid .format-card{transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.project-format-grid .format-card:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px)}.project-format-grid .format-card:hover p,.project-format-grid .format-card:hover .format-size{color:#fff}.project-format-grid .format-card img{aspect-ratio:4/3;object-fit:cover}.compact-book-grid .book-card{min-height:0}.compact-book-grid .book-card p{display:none}
.contact-section{background:#fff}.contact-form-panel{background:var(--red);color:#fff}.contact-form-panel .button{background:#fff;color:#111;border-color:#fff}.contact-form-panel input,.contact-form-panel textarea{border:1.5px solid rgba(255,255,255,.75)!important;background:#fff!important;color:#111!important}.contact-form-panel label>span{color:#fff}.contact-form-panel .form-note{color:#fff}.modal-card input,.modal-card textarea{border:1.5px solid #bcbcbc!important;background:#fff!important;color:#111!important}
.final-footer-grid{grid-template-columns:1fr .75fr 1.35fr}.footer-note{color:#aaa;max-width:300px;font-size:13px}.site-footer .footer-col a{line-height:1.45}
.book-page .book-reader-hero,.book-page .reader,.book-page .book-contact-section{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}.book-page .book-reader-hero h1,.book-page .booktext h2,.book-page .booktext h3,.book-page .booktext h4,.book-page .book-contact-section h2{font-family:Georgia,"Times New Roman",serif}.book-page .booktext{font-size:17px;line-height:1.76}.book-page .booktext h2{font-size:34px}.book-page .booktext h3{font-size:25px}.book-page .booktext h4{font-size:20px}.book-page .book-contact-section .contact-form-panel{background:var(--red)}
@media(max-width:980px){.final-footer-grid{grid-template-columns:1fr 1fr}.detail-hero{padding-top:48px}.project-format-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){html{scroll-padding-top:72px}.detail-hero{padding:38px 0 42px}.detail-page .lead{font-size:18px}.focus-box{padding:21px}.detail-card{min-height:0}.section-actions .button{width:100%;justify-content:center}.project-format-grid{grid-template-columns:1fr}.final-footer-grid{grid-template-columns:1fr}.final-study-grid{grid-template-columns:1fr}.final-book-feature{padding:20px}.final-book-feature img{max-width:170px}.hero-actions{align-items:stretch}.hero-actions .button{justify-content:center}}
/* Prevent anti-spam honeypot from creating horizontal overflow on mobile. */
.hp{position:fixed!important;left:0!important;top:0!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;opacity:0!important;pointer-events:none!important}
.hp input{width:1px!important;height:1px!important;padding:0!important;border:0!important}
.booktext p,.booktext li{overflow-wrap:anywhere;word-break:break-word}

/* V10 form delivery states: same direct Web3Forms pattern used on NY Family Expo. */
.form-status{min-height:1.2em;margin-top:10px;font-size:13px;font-weight:700}
.form-status.success{color:#0b6e3a}
.form-status.error{color:#a40000}
.contact-form-panel .form-status.success,.contact-form-panel .form-status.error{color:#fff}
.is-sending{opacity:.92}


/* V11 homepage refinements */
.experience-grid .expertise-static,
.section-dark .experience-grid .expertise-static{background:#fff!important;color:#111!important;border-color:var(--line)!important;transform:none!important}
.experience-grid .expertise-static p,
.section-dark .experience-grid .expertise-static p{color:var(--muted)!important}
.experience-grid .expertise-static:hover,
.experience-grid .expertise-static:focus-within{background:#fff!important;color:#111!important;border-color:#cfcfcf!important;transform:translateY(-2px)!important}
.experience-grid .expertise-static:hover p,
.experience-grid .expertise-static:focus-within p{color:var(--muted)!important}
.experience-grid .expertise-static .card-number,
.experience-grid .expertise-static .area-more,
.experience-grid .expertise-static:hover .card-number,
.experience-grid .expertise-static:hover .area-more{color:var(--red)!important}
.experience-grid .expertise-static .area-more{margin-top:auto;padding-top:18px;font-size:14px;line-height:1.35}
.other-books-inline{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:14px;color:#4e4e4e;line-height:1.8}
.other-books-inline strong{color:#111}.other-books-inline a{color:var(--red);font-weight:750;text-decoration:none}.other-books-inline a:hover{text-decoration:underline}
.project-more-disabled{color:#9a9a9a!important;cursor:default;pointer-events:none}
.simple-links li{padding-top:13px;padding-bottom:13px}.simple-links li span{display:none!important}
.final-footer-grid{grid-template-columns:1.1fr 1fr 1.4fr!important}.footer-bottom{justify-content:flex-start!important}.footer-brand-only{min-width:0}
.pdf-modal{display:none;position:fixed;inset:0;z-index:130}.pdf-modal.open{display:grid;place-items:center}.pdf-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}.pdf-modal-card{position:relative;width:min(1120px,calc(100% - 28px));height:min(88vh,900px);background:#fff;border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden}.pdf-modal-close{position:absolute;right:17px;top:10px;z-index:2;border:0;background:#fff;width:40px;height:40px;border-radius:50%;font-size:29px;line-height:1;cursor:pointer}.pdf-modal-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 66px 18px 24px;border-bottom:1px solid var(--line)}.pdf-modal-head h2{font-size:28px;margin:0 0 4px}.pdf-modal-head p{margin:0;color:var(--muted);font-size:14px}.pdf-modal-head .kicker{color:var(--red);margin-bottom:5px}.pdf-modal iframe{width:100%;flex:1;border:0;background:#f3f3f3}
.about-grid .about-card{border-radius:var(--radius)!important}
@media(max-width:720px){.final-footer-grid{grid-template-columns:1fr!important}.pdf-modal-card{height:92vh;width:calc(100% - 16px);border-radius:16px}.pdf-modal-head{align-items:flex-start;flex-direction:column;padding:18px 54px 14px 18px}.pdf-modal-head .button{font-size:12px;padding:9px 12px}.other-books-inline{font-size:13px}}

/* V12 final UI overrides */
.menu-button{background:var(--red)!important;color:#fff!important;border-color:var(--red)!important}.menu-button:hover,.menu-button:focus-visible{background:var(--red-dark)!important;color:#fff!important;border-color:var(--red-dark)!important}
.section-dark .about-grid .about-card:hover,.section-dark .about-grid .about-card:focus-within{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important;transform:translateY(-2px)}
.section-dark .about-grid .about-card:hover p,.section-dark .about-grid .about-card:focus-within p{color:#fff!important}
.contact-form-panel .button{background:#111!important;color:#fff!important;border-color:#111!important}.contact-form-panel .button:hover,.contact-form-panel .button:focus-visible{background:#000!important;color:#fff!important;border-color:#000!important}


/* V13 family-entertainment research library and article pages */
.research-landing-hero{padding:64px 0 58px;border-bottom:1px solid var(--line)}
.research-landing-hero .hero-copy{max-width:900px}.research-landing-hero h1{font-size:clamp(42px,5vw,66px);margin-bottom:18px}.research-landing-hero .lead{font-size:20px;color:#535353;max-width:820px}
.research-library-grid-mg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.research-card-mg{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden;text-decoration:none;min-width:0;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.research-card-mg:hover,.research-card-mg:focus-visible{transform:translateY(-3px);border-color:#c7c7c7;box-shadow:0 16px 38px rgba(0,0,0,.08)}.research-card-mg img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#f3f3f3}.research-card-body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}.research-tag-mg{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:850;color:var(--accent);margin-bottom:9px}.research-card-mg h3{font-size:23px;margin-bottom:10px}.research-card-mg p{font-size:14px;color:var(--muted);margin-bottom:18px}.research-card-link{margin-top:auto;color:var(--accent);font-size:13px;font-weight:800}
.research-article-hero{padding:58px 0 48px;border-bottom:1px solid var(--line)}.research-article-hero .hero-copy{max-width:930px}.research-article-hero h1{font-size:clamp(38px,5vw,64px);margin-bottom:18px}.research-article-hero .lead{font-size:20px;line-height:1.55;color:#505050;max-width:860px}.article-credit{font-size:14px;color:#666;margin-top:18px}.article-top-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.research-article-section{padding:54px 0 76px}.research-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:54px;align-items:start}.research-article-content{min-width:0}.research-feature{margin:0 0 34px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#f5f5f5}.research-feature img{width:100%;height:auto}.research-copy{font-size:17px;line-height:1.78}.research-copy>p:first-child{font-size:20px;line-height:1.62;color:#333}.research-copy h2{font-size:31px;margin:44px 0 14px}.research-copy h3{font-size:23px;margin:32px 0 12px}.research-copy p{margin:0 0 18px}.research-copy ul,.research-copy ol{padding-left:24px;margin:0 0 22px}.research-copy li{margin:7px 0}.research-copy a{color:var(--accent);text-underline-offset:3px}.research-copy blockquote{border-left:4px solid var(--accent);margin:28px 0;padding:8px 0 8px 22px;color:#444}.research-copy table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}.research-copy th,.research-copy td{border:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}.research-copy img{max-width:100%;height:auto}.research-actions-bottom{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.research-side{position:sticky;top:96px;border:1px solid var(--line);border-radius:22px;background:#fff;padding:22px;max-height:calc(100vh - 120px);overflow:auto}.research-side .kicker{margin-bottom:12px}.research-side-links{display:grid;gap:0}.research-side-links a{display:block;text-decoration:none;font-size:12px;line-height:1.35;color:#555;padding:9px 0;border-top:1px solid #eee}.research-side-links a:first-child{border-top:0}.research-side-links a:hover{color:var(--accent)}.research-side-links a.current{color:var(--accent);font-weight:850}.research-side-actions{display:grid;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.research-side-actions .button{width:100%;font-size:12px;padding:10px 12px}.research-side-actions .button-outline{background:#fff;border-color:#bdbdbd}.research-source-note{font-size:12px;color:#777;margin-top:14px}
.research-related-divider{border-top:1px solid var(--line)}
.research-article-page .section-title,.research-landing-page .section-title{max-width:820px}
.research-article-page .contact-section,.research-landing-page .contact-section{border-top:1px solid var(--line)}
@media(max-width:980px){.research-library-grid-mg{grid-template-columns:repeat(2,minmax(0,1fr))}.research-article-layout{grid-template-columns:1fr}.research-side{position:static;max-height:none;order:2}.research-side-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.research-side-links a:nth-child(2){border-top:0}}
@media(max-width:720px){.research-landing-hero,.research-article-hero{padding:40px 0}.research-library-grid-mg{grid-template-columns:1fr}.research-article-section{padding:38px 0 58px}.research-article-layout{gap:34px}.research-copy{font-size:16px}.research-copy h2{font-size:27px;margin-top:36px}.research-side{padding:18px}.research-side-links{grid-template-columns:1fr}.research-side-links a:nth-child(2){border-top:1px solid #eee}.article-top-actions,.research-actions-bottom{display:grid}.article-top-actions .button,.research-actions-bottom .button{width:100%}}

/* V14 knowledge pages */
.knowledge-article-page .research-article-content{max-width:860px}.knowledge-article-page .research-copy>p:first-child{font-size:17px;line-height:1.78;color:inherit}.knowledge-article-page .research-side-links a{font-size:13px}.knowledge-article-page .research-article-section{background:#fff}
