
:root{--ink:#201a2a;--ink-soft:#615665;--paper:#fffaf4;--cream:#f5eadf;--rose:#c78e98;--wine:#6e394d;--gold:#b58a53;--gold-light:#d9b57d;--night:#251f37;--line:rgba(70,47,65,.14);--shadow:0 20px 55px rgba(53,29,49,.14);--radius:26px;--wide:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-serif,Georgia,'Times New Roman','Noto Serif SC','Songti SC',serif;line-height:1.72;letter-spacing:.01em}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:10px 14px;border-radius:8px}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,250,244,.91);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.bar{width:min(var(--wide),calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px}.brand{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;white-space:nowrap}.brand-mark{width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:15px}.top-nav{display:flex;align-items:center;gap:20px;font-size:14px;white-space:nowrap}.top-nav a{color:#4c4150}.top-nav a:hover,.top-nav a:focus{color:var(--wine)}.nav-cta{border:1px solid var(--gold);padding:9px 13px;border-radius:999px;color:var(--wine)!important}.menu-btn{display:none;border:1px solid var(--line);background:#fffaf4;padding:7px 10px;border-radius:10px;font:inherit}.hero{min-height:760px;position:relative;display:grid;align-items:end;overflow:hidden;background:#211b30}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.89}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,32,.78),rgba(20,15,32,.33) 58%,rgba(20,15,32,.15));}.hero-inner{position:relative;z-index:1;width:min(var(--wide),calc(100% - 40px));margin:0 auto;padding:120px 0 104px;color:#fff;max-width:1180px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#f7d4a9;font-weight:700}.hero h1{font-size:clamp(45px,7vw,86px);line-height:1.08;letter-spacing:-.035em;margin:16px 0 20px;max-width:840px;font-weight:600}.hero p{font-size:clamp(18px,2vw,23px);max-width:650px;line-height:1.7;color:#fbf1e8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.6);font-size:14px;letter-spacing:.03em}.button.primary{background:#f5d2aa;color:#3a2634;border-color:#f5d2aa}.button.ghost{background:rgba(255,255,255,.08);color:#fff}.notice{border:1px solid var(--line);background:#fff8ef;border-radius:18px;padding:14px 16px;color:#584652;font-size:14px}.wrap{width:min(var(--wide),calc(100% - 40px));margin:auto}.section{padding:86px 0}.section-tight{padding:54px 0}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--wine);font-weight:700}.title{font-size:clamp(32px,4.3vw,58px);line-height:1.16;letter-spacing:-.03em;margin:12px 0 18px;font-weight:600;max-width:860px}.lead{font-size:19px;color:var(--ink-soft);max-width:800px}.grid{display:grid;gap:22px}.grid.three{grid-template-columns:repeat(3,1fr)}.grid.two{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 14px 35px rgba(67,39,58,.07)}.card-img{aspect-ratio:1.55/1;object-fit:cover;width:100%}.card-body{padding:22px 22px 24px}.card h3{font-size:25px;line-height:1.24;margin:0 0 10px;font-weight:600}.card p{color:var(--ink-soft);margin:0}.link-arrow{display:inline-block;margin-top:16px;color:var(--wine);font-size:14px;font-weight:700}.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.feature.reverse{grid-template-columns:.9fr 1.1fr}.feature-img{border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.feature-img img{aspect-ratio:1.18/1;object-fit:cover}.quote{background:var(--night);color:#fff;padding:76px 0}.quote blockquote{font-size:clamp(30px,4vw,56px);line-height:1.23;letter-spacing:-.035em;margin:0;max-width:1000px}.quote cite{display:block;color:#e5bf94;font-size:14px;margin-top:22px;font-style:normal;letter-spacing:.08em;text-transform:uppercase}.mosaic{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:16px}.mosaic img{height:290px;width:100%;object-fit:cover;border-radius:20px}.mosaic img:first-child{height:596px;grid-row:span 2}.cta-band{background:linear-gradient(115deg,#f3e0d0,#e8d1dc 45%,#d7d6ef);padding:72px 0}.cta-card{border:1px solid rgba(80,47,66,.13);background:rgba(255,255,255,.62);border-radius:32px;padding:42px;box-shadow:var(--shadow)}.cta-card h2{font-size:clamp(34px,5vw,60px);line-height:1.13;margin:8px 0 16px;letter-spacing:-.035em}.cta-card p{max-width:720px;color:var(--ink-soft);font-size:18px}.prose{width:min(820px,100%);margin:auto}.prose h1{font-size:clamp(42px,5.4vw,70px);line-height:1.1;letter-spacing:-.04em;margin:10px 0 20px}.prose h2{font-size:30px;line-height:1.3;margin-top:48px}.prose p{font-size:18px;color:#4e424f}.prose .meta{color:var(--wine);font-size:14px;letter-spacing:.05em}.breadcrumb{font-size:13px;color:#806a78;margin:32px 0}.breadcrumb a{text-decoration:underline;text-decoration-color:rgba(128,106,120,.3)}.info-panel{border-left:4px solid var(--gold);padding:15px 18px;background:#fff4e5;color:#554352;margin:28px 0}.faq{border-top:1px solid var(--line);margin-top:36px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-size:19px;font-weight:600}.faq p{font-size:16px}.pill-list{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.pill{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13px;color:#5b4655}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.editorial-grid a{display:block;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;min-height:150px}.editorial-grid a:hover{transform:translateY(-2px);box-shadow:0 15px 25px rgba(67,39,58,.08)}.editorial-grid strong{display:block;font-size:20px;line-height:1.3}.editorial-grid span{display:block;margin-top:10px;color:#806a78;font-size:13px}.footer{background:#211a2c;color:#eee5ee;padding:64px 0 28px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}.footer h4{color:#e6bb82;letter-spacing:.08em;font-size:12px;text-transform:uppercase;margin:0 0 14px}.footer p,.footer li{color:#cfc2ce;font-size:14px}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:8px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:38px;padding-top:18px;font-size:12px;color:#ab9cab;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.locale{font-size:12px;border:1px solid rgba(255,255,255,.24);padding:7px 10px;border-radius:999px}.hero-mini{background:linear-gradient(135deg,#34243b,#765064 52%,#d7a47e);padding:100px 0 64px;color:#fff}.hero-mini h1{font-size:clamp(40px,5.5vw,75px);line-height:1.08;letter-spacing:-.04em;margin:14px 0;max-width:950px}.hero-mini p{max-width:680px;font-size:19px;color:#f8e9e4}.footer a:hover{text-decoration:underline}@media(max-width:860px){.top-nav{display:none;position:absolute;left:20px;right:20px;top:66px;padding:15px;background:#fffaf4;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.top-nav.open{display:flex}.menu-btn{display:block}.grid.three,.editorial-grid{grid-template-columns:1fr 1fr}.feature,.feature.reverse{grid-template-columns:1fr;gap:24px}.mosaic{grid-template-columns:1fr 1fr}.mosaic img:first-child{grid-column:span 2;height:360px;grid-row:auto}.mosaic img{height:190px}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:680px}}@media(max-width:560px){.bar,.wrap,.hero-inner{width:min(100% - 28px,var(--wide))}.hero-inner{padding-bottom:70px}.hero{min-height:625px}.section{padding:62px 0}.grid.three,.grid.two,.editorial-grid{grid-template-columns:1fr}.mosaic{grid-template-columns:1fr}.mosaic img:first-child{grid-column:auto;height:260px}.mosaic img{height:220px}.footer-grid{grid-template-columns:1fr}.cta-card{padding:28px 20px}.card-body{padding:18px}.brand{font-size:10px}.hero h1{font-size:46px}.prose p{font-size:17px}.hero-mini{padding:82px 0 48px}}


/* Expanded 4-center architecture + main site support convergence */
.center-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.center-grid .card{height:100%}.center-grid .card-body{display:flex;flex-direction:column;height:100%}.center-grid .link-arrow{margin-top:auto}.section-soft{padding:92px 0;background:linear-gradient(180deg,#fffaf4 0%,#f4ece4 100%)}.hero-new{min-height:720px}.knowledge-hero{background:linear-gradient(135deg,#2c2035,#79505e 53%,#b68a62);color:#fff}.theme-hero{background:linear-gradient(135deg,#322a45,#746077 57%,#b48c80);color:#fff}.neighborhood-hero{background:linear-gradient(135deg,#201e2d,#475568 58%,#aa8e73);color:#fff}.article-hero{background:linear-gradient(135deg,#fff3e6,#e9d4c9 55%,#dbc3b2)}.contact-hero{background:linear-gradient(135deg,#382539,#7a4f60 60%,#c49376);color:#fff}.library-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:46px;align-items:center;margin:28px 0 44px;padding:38px;border:1px solid var(--line);background:#fffdf9;border-radius:28px}.library-intro img{width:100%;height:250px;object-fit:cover;border-radius:20px}.library-grid{align-items:stretch}.editorial-card{height:100%}.main-site-panel{width:min(var(--wide),calc(100% - 40px));margin:0 auto 92px;padding:38px 42px;border-radius:28px;background:#251f37;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:36px;box-shadow:var(--shadow)}.main-site-panel h2{font-size:clamp(28px,4vw,46px);line-height:1.18;margin:10px 0 12px}.main-site-panel p{max-width:760px;color:#f5e9df}.main-site-panel .kicker{color:#e9bd86}.contact-lines{font-size:15px}.support-ribbon{position:fixed;z-index:28;right:22px;bottom:20px;width:min(480px,calc(100% - 36px));background:rgba(37,31,55,.97);color:#fff;border:1px solid rgba(230,187,130,.38);border-radius:18px;box-shadow:0 16px 42px rgba(32,24,38,.25);backdrop-filter:blur(14px)}.support-ribbon-inner{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px}.support-copy{display:flex;flex-direction:column;gap:1px}.support-copy strong{color:#f4cf9c;font-size:13px;letter-spacing:.06em}.support-copy span{font-size:12px;line-height:1.42;color:#f7eee8}.support-ribbon a{font-size:12px;line-height:1.3;padding:8px 10px;border:1px solid #e1b77f;border-radius:999px;color:#fff;white-space:nowrap;text-align:center}.support-ribbon a:hover{background:#e1b77f;color:#302236}.footer-contact{line-height:1.76}.footer-main-cta{display:inline-block;margin-top:4px;color:#ffe1aa!important;border-bottom:1px solid rgba(255,225,170,.6)}.medical-note{opacity:.75;font-size:13px}.contact-main-card{padding:48px;border:1px solid var(--line);border-radius:30px;background:#fffdf9;box-shadow:var(--shadow);max-width:980px;margin:auto}.contact-main-card h2{font-size:clamp(32px,5vw,56px);line-height:1.14;margin:10px 0 16px}.contact-main-card>p{font-size:18px;max-width:720px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:28px 0 32px}.contact-grid div{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff8ef}.contact-grid span{display:block;color:var(--ink-soft);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.contact-grid strong{display:block;margin-top:5px;font-size:18px;color:var(--wine)}
@media(max-width:980px){.center-grid{grid-template-columns:1fr 1fr}.library-intro{grid-template-columns:1fr;gap:22px}.main-site-panel{flex-direction:column;align-items:flex-start}.support-ribbon{bottom:12px;right:12px}}
@media(max-width:620px){.center-grid{grid-template-columns:1fr}.library-intro{padding:23px}.main-site-panel{width:min(100% - 28px,var(--wide));padding:28px 22px;margin-bottom:78px}.contact-main-card{padding:28px 20px}.contact-grid{grid-template-columns:1fr}.support-ribbon{width:calc(100% - 24px)}.support-ribbon-inner{padding:10px 12px;gap:9px}.support-copy span{font-size:10px}.support-ribbon a{font-size:10px;padding:7px 8px}.hero-new{min-height:660px}}
