.page-hero{background:linear-gradient(135deg,#fff5f3,#fdeae6);padding:70px 24px 60px;text-align:center;margin:0 22px;border-radius:0 0 24px 24px;margin-top:0}
.page-hero .breadcrumb{font-size:11px;color:#8a7f7c;letter-spacing:.3px;margin-bottom:14px}
.page-hero .breadcrumb a{color:var(--red);font-weight:600}
.page-hero h1{font-size:46px;font-weight:750;letter-spacing:-1.8px;line-height:1.1;max-width:760px;margin:0 auto 14px;color:var(--ink)}
.page-hero p{font-size:14px;color:#5c6168;max-width:560px;margin:0 auto;line-height:1.7}
.page-meta{font-size:11px;color:#8a8a8a;margin-top:18px;letter-spacing:.3px}
.page-content{max-width:900px;margin:0 auto;padding:60px 24px 90px;display:grid;grid-template-columns:220px 1fr;gap:60px;align-items:start}
.page-toc{position:sticky;top:110px;font-size:12px}
.page-toc strong{display:block;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#8a8a8a;margin-bottom:14px}
.page-toc a{display:block;color:#5c6168;padding:7px 0;border-left:2px solid #f0e2e2;padding-left:12px;margin-left:-2px;transition:color .15s,border-color .15s}
.page-toc a:hover,.page-toc a.active{color:var(--red);border-left-color:var(--red)}
.page-body h2{font-size:24px;font-weight:700;letter-spacing:-.6px;color:var(--ink);margin:48px 0 14px;line-height:1.3}
.page-body h2:first-child{margin-top:0}
.page-body h3{font-size:16px;font-weight:700;color:var(--ink);margin:26px 0 10px}
.page-body p,.page-body li{font-size:14px;line-height:1.8;color:#4a4f55}
.page-body p{margin:0 0 14px}
.page-body ul,.page-body ol{padding-left:22px;margin:0 0 16px}
.page-body li{margin-bottom:8px}
.page-body a{color:var(--red);font-weight:600}
.page-body strong{color:var(--ink)}
.page-callout{background:#fff5f3;border-left:3px solid var(--red);padding:18px 22px;border-radius:0 10px 10px 0;margin:22px 0;font-size:13px;color:#4a4f55;line-height:1.7}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 50px}
.contact-card{background:#fff;border:1px solid #ececec;border-radius:18px;padding:28px;transition:border-color .2s,transform .2s}
.contact-card:hover{border-color:#f5caca;transform:translateY(-2px)}
.contact-card .icon{width:46px;height:46px;border-radius:12px;background:#ffe8e8;color:var(--red);display:grid;place-items:center;margin-bottom:18px}
.contact-card .icon svg{width:22px;height:22px}
.contact-card h3{font-size:16px;margin:0 0 6px;color:var(--ink)}
.contact-card p{font-size:12.5px;color:#5c6168;line-height:1.6;margin:0 0 12px}
.contact-card strong{display:block;font-size:14px;color:var(--red);font-weight:700}
.contact-card small{display:block;font-size:11px;color:#999;margin-top:6px}
.contact-form{background:#fafafa;border-radius:20px;padding:36px;max-width:720px;margin:0 auto}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form label{display:block;font-size:11px;font-weight:600;color:#5c6168;letter-spacing:.3px;margin:14px 0 6px;text-transform:uppercase}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;background:#fff;border:1px solid #e4e4e4;border-radius:10px;padding:14px 16px;font-size:14px;outline:0;transition:border-color .15s}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--red)}
.contact-form textarea{min-height:120px;resize:vertical;font-family:inherit}
.contact-form button{margin-top:22px;background:var(--red);color:#fff;border:0;padding:16px 36px;border-radius:50px;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s}
.contact-form button:hover{background:#bd0000}
.channels{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0 50px}
.channels>div{background:#f8f8f8;border-radius:14px;padding:22px}
.channels strong{display:block;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#8a8a8a;margin-bottom:10px}
.channels b{display:block;font-size:17px;color:var(--ink);font-weight:700;margin-bottom:4px}
.channels small{display:block;font-size:12px;color:#5c6168;line-height:1.6}
@media(max-width:900px){.page-content{grid-template-columns:1fr;gap:30px;padding:40px 20px 60px}.page-toc{position:static;display:none}.page-hero{padding:50px 20px 44px;margin:0 12px}.page-hero h1{font-size:32px;letter-spacing:-1.1px}.contact-grid,.channels{grid-template-columns:1fr}.contact-form .row{grid-template-columns:1fr}.contact-form{padding:26px}}

.page-toc:empty{display:none}.page-body{min-width:0}.page-body h2{scroll-margin-top:150px}.page-form-result{margin-top:18px;padding:16px;background:#fff0ed;border-radius:12px;color:#7c2929;font-size:13px;line-height:1.7}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.page-content:has(.page-toc:empty){grid-template-columns:1fr;max-width:1000px}.page-content:has(.contact-grid){max-width:1200px;grid-template-columns:1fr}.page-content:has(.contact-grid)>.page-toc{display:none}@media(max-width:900px){.page-body h2{scroll-margin-top:100px}}

/* Long institutional content and email addresses must fit narrow screens. */
.page-body,.page-body a,.channels b{overflow-wrap:anywhere}.page-content{grid-template-columns:minmax(0,220px) minmax(0,1fr)}.page-toc{max-height:calc(100dvh - 140px);overflow-y:auto;padding-right:10px}.page-body h2{font-size:clamp(21px,3vw,26px)}@media(max-width:900px){.page-content{grid-template-columns:minmax(0,1fr)}}
