:root{--ink:#1a1410;--ink-soft:#3a2e26;--muted:#76665c;--bg:#faf6ed;--bg-alt:#f1e8d4;--paper:#fff;--brand-900:#003d7a;--brand-700:#0052a3;--brand-500:#06c;--gold:#ffeb3b;--gold-soft:#fff59d;--blush:#f4dcd6;--line:#ead9c3;--shadow-sm:0 2px 6px #003d7a0f;--shadow-md:0 10px 30px #003d7a14;--shadow-lg:0 30px 80px #003d7a26;--radius:14px;--radius-lg:24px;--maxw:1200px;--serif:"Cormorant Garamond", "Playfair Display", Georgia, serif;--sans:"Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}img{max-width:100%;display:block}a{color:var(--brand-700);text-decoration:none;transition:color .2s}a:hover{color:var(--brand-900)}h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;margin:0 0 .6em;font-weight:600;line-height:1.15}h1{font-size:clamp(2.4rem,5.5vw,4.4rem);font-weight:500}h2{font-size:clamp(1.9rem,3.5vw,2.8rem)}h3{font-size:clamp(1.2rem,2vw,1.4rem)}p{color:var(--ink-soft);margin:0 0 1em}.eyebrow{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--brand-700);align-items:center;gap:10px;margin-bottom:14px;font-size:.78rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--gold);width:28px;height:1px}.container{width:min(100% - 40px,var(--maxw));margin-inline:auto}section{padding:clamp(72px,10vw,120px) 0;position:relative}section.tight{padding:clamp(56px,7vw,90px) 0}.section-head{max-width:760px;margin-bottom:clamp(40px,5vw,64px)}.section-head p{font-size:1.08rem}.btn{font-family:var(--sans);letter-spacing:.04em;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:.92rem;font-weight:600;line-height:1;text-decoration:none;transition:all .25s;display:inline-flex}.btn-primary{background:var(--brand-900);color:#fff}.btn-primary:hover{background:var(--brand-700);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-ghost{color:var(--brand-900);border-color:var(--brand-900);background:0 0}.btn-ghost:hover{background:var(--brand-900);color:#fff}.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:var(--gold-soft)}.chip{color:var(--brand-900);letter-spacing:.04em;background:#0052a314;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;font-weight:500;display:inline-flex}.ornament{color:var(--gold);align-items:center;gap:12px;display:flex}.ornament:before,.ornament:after{content:"";background:linear-gradient(90deg,transparent,var(--gold),transparent);flex:1;height:1px}.nav{z-index:50;-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);background:#faf6edd1;border-bottom:1px solid #0000;transition:border-color .25s,background .25s;position:sticky;top:0}.nav.scrolled{border-bottom-color:var(--line)}.nav-inner{justify-content:space-between;align-items:center;padding:18px 0;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(135deg,var(--brand-900),var(--brand-500));width:42px;height:42px;color:var(--gold-soft);font-family:var(--serif);box-shadow:var(--shadow-sm);border-radius:12px;place-items:center;font-size:1.3rem;font-style:italic;font-weight:700;display:grid}.brand-mark-img{width:44px;height:44px;box-shadow:var(--shadow-sm);border-radius:12px;flex-shrink:0}.brand-text{flex-direction:column;line-height:1.1;display:flex}.brand-text strong{font-family:var(--serif);letter-spacing:.01em;font-size:1.15rem;font-weight:600}.brand-text span{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a{color:var(--ink-soft);font-size:.92rem;font-weight:500;position:relative}.nav-links a:after{content:"";background:var(--gold);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover{color:var(--brand-900)}.nav-links a:hover:after{transform:scaleX(1)}.nav-cta{align-items:center;gap:10px;display:flex}.menu-toggle{cursor:pointer;color:var(--ink);background:0 0;border:none;padding:8px;display:none}.hero{background:radial-gradient(1000px 500px at 90% -10%,#ffeb3b33,transparent 60%),radial-gradient(900px 500px at -10% 10%,#0066cc1f,transparent 60%),var(--bg);padding:clamp(64px,8vw,120px) 0 clamp(80px,10vw,140px);position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(32px,5vw,72px);display:grid}.hero h1{margin-bottom:18px}.hero .tagline{max-width:560px;color:var(--ink-soft);font-size:1.15rem}.hero-credentials{flex-wrap:wrap;gap:10px;margin:28px 0 36px;display:flex}.hero-cta{flex-wrap:wrap;gap:14px;margin-bottom:40px;display:flex}.hero-meta{color:var(--muted);flex-wrap:wrap;gap:28px;font-size:.9rem;display:flex}.hero-meta strong{color:var(--brand-900);font-weight:600}.hero-visual{aspect-ratio:4/5;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);isolation:isolate;background:linear-gradient(135deg,#003d7a,#0052a3 65%,#06c);position:relative;overflow:hidden}.hero-visual:before{content:"";background:radial-gradient(400px 200px at 30% 20%,#ffeb3b59,#0000 60%),radial-gradient(500px 260px at 75% 85%,#ffffff1f,#0000 60%);position:absolute;inset:0}.hero-visual .monogram{font-family:var(--serif);color:#ffeb3b2e;-webkit-user-select:none;user-select:none;place-items:center;font-size:clamp(12rem,22vw,20rem);font-style:italic;font-weight:500;line-height:1;display:grid;position:absolute;inset:0}.hero-visual .quote{color:#faf6ed;font-family:var(--serif);z-index:2;text-shadow:0 2px 12px #1a1410b3;font-size:clamp(1.1rem,1.6vw,1.35rem);font-style:italic;line-height:1.4;position:absolute;bottom:28px;left:28px;right:28px}.hero-photo{background:#003d7a}.hero-photo+.hero-badge,.hero-photo .hero-badge{top:32px;bottom:auto;left:-22px}.hero-photo:before{display:none}.hero-photo>img{object-fit:cover;object-position:center top;z-index:0;filter:saturate(1.05)contrast(1.02);width:100%;height:100%;position:absolute;inset:0}.hero-photo .hero-photo-overlay{z-index:1;background:linear-gradient(#003d7a00 35%,#1a1410d9),linear-gradient(135deg,#003d7a2e,#0000 60%);position:absolute;inset:0}.hero-photo .caduceus{z-index:2}.hero-photo .monogram{display:none}.hero-photo:after{content:"";border-radius:calc(var(--radius-lg) - 6px);pointer-events:none;z-index:2;border:1px solid #ffeb3b59;position:absolute;inset:14px}.hero-visual .quote small{font-family:var(--sans);letter-spacing:.25em;color:var(--gold-soft);text-transform:uppercase;margin-top:12px;font-size:.7rem;font-style:normal;display:block}.hero-visual .caduceus{width:48px;height:48px;color:var(--gold-soft);opacity:.85;position:absolute;top:28px;right:28px}.hero-badge{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:14px;align-items:center;gap:14px;max-width:260px;padding:14px 18px;display:flex;position:absolute;bottom:48px;left:-18px}.hero-badge .dot{background:#1cb87a;border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 0 6px #1cb87a26}.hero-badge strong{color:var(--ink);font-size:.85rem;display:block}.hero-badge span{color:var(--muted);font-size:.78rem}.stats{background:var(--brand-900);color:#faf6ed;padding:28px 0}.stats-grid{grid-template-columns:repeat(4,1fr);gap:24px;padding:28px 0;display:grid}.stat{text-align:center;border-right:1px solid #faf6ed1f;padding:8px 12px}.stat:last-child{border-right:none}.stat .n{font-family:var(--serif);color:var(--gold-soft);margin-bottom:8px;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1}.stat .l{letter-spacing:.22em;text-transform:uppercase;color:#faf6edb3;font-size:.78rem}.about-grid{grid-template-columns:1.3fr 1fr;align-items:start;gap:clamp(40px,6vw,80px);display:grid}.about-text p{color:var(--ink-soft);font-size:1.05rem}.about-signature{font-family:var(--serif);color:var(--brand-900);margin-top:24px;font-size:1.4rem;font-style:italic}.about-highlights{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:32px}.highlight{border-bottom:1px solid var(--line);gap:16px;padding:18px 0;display:flex}.highlight:last-child{border-bottom:none}.highlight-icon{background:linear-gradient(135deg,var(--bg-alt),var(--blush));width:44px;height:44px;color:var(--brand-900);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.highlight h4{font-family:var(--sans);color:var(--ink);margin:0 0 4px;font-size:.98rem;font-weight:600}.highlight p{color:var(--muted);margin:0;font-size:.9rem}.services{background:var(--bg-alt)}.services-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.service{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);padding:36px 30px 30px;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden}.service:before{content:"";background:radial-gradient(circle at 0 0,#ffeb3b33,#0000 70%);width:60px;height:60px;position:absolute;top:0;left:0}.service:hover{box-shadow:var(--shadow-md);border-color:var(--gold);transform:translateY(-4px)}.service-num{font-family:var(--serif);color:var(--gold);letter-spacing:.1em;margin-bottom:10px;font-size:1rem;font-style:italic}.service h3{margin-bottom:10px}.service p{color:var(--muted);margin:0;font-size:.95rem}.service-icon{width:54px;height:54px;color:var(--brand-900);background:linear-gradient(135deg,#003d7a14,#ffeb3b2e);border-radius:14px;place-items:center;margin-bottom:22px;display:grid}.timeline{border-left:2px solid var(--line);margin-left:8px;padding-left:28px;position:relative}.tl-item{padding:0 0 42px 20px;position:relative}.tl-item:last-child{padding-bottom:0}.tl-item:before{content:"";background:var(--gold);width:12px;height:12px;box-shadow:0 0 0 6px var(--bg);border-radius:50%;position:absolute;top:6px;left:-34px}.tl-date{letter-spacing:.2em;text-transform:uppercase;color:var(--brand-700);margin-bottom:6px;font-size:.78rem;font-weight:600}.tl-item h4{font-family:var(--serif);color:var(--ink);margin:0 0 4px;font-size:1.25rem}.tl-item .org{color:var(--ink-soft);margin-bottom:8px;font-weight:500}.tl-item p{color:var(--muted);margin:0;font-size:.95rem}.two-col{grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);display:grid}.two-col h3.col-title{font-family:var(--serif);color:var(--brand-900);margin-bottom:24px;font-size:1.6rem}.publications{background:var(--bg-alt)}.pub{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:auto auto 1fr auto;align-items:center;gap:24px;margin-bottom:18px;padding:28px 30px;transition:border-color .25s,transform .25s;display:grid}.pub:hover{border-color:var(--brand-500);transform:translate(2px)}.pub-image{background:linear-gradient(135deg,var(--bg-alt),var(--blush));width:120px;height:160px;box-shadow:var(--shadow-sm);border-radius:8px;flex-shrink:0;overflow:hidden}.pub-image img{object-fit:cover;width:100%;height:100%}.pub-year{font-family:var(--serif);color:var(--brand-900);white-space:nowrap;font-size:1.8rem;font-weight:600;line-height:1}.pub-year small{font-family:var(--sans);color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin-top:4px;font-size:.7rem;font-weight:500;display:block}.pub h4{font-family:var(--serif);color:var(--ink);margin:0 0 4px;font-size:1.15rem;line-height:1.35}.pub .journal{color:var(--muted);margin:0;font-size:.88rem}.pub-tag{letter-spacing:.18em;text-transform:uppercase;color:var(--brand-700);white-space:nowrap;font-size:.72rem;font-weight:600}.awards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.award{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;position:relative;overflow:hidden}.award:after{content:"";background:radial-gradient(circle,#ffeb3b29,#0000 70%);border-radius:50%;width:100px;height:100px;position:absolute;top:-30px;right:-30px}.award .trophy{color:var(--gold);margin-bottom:14px}.award h4{font-family:var(--serif);margin:0 0 6px;font-size:1.15rem}.award p{color:var(--muted);margin:0;font-size:.9rem}.activity{background:var(--paper);padding:clamp(72px,9vw,110px) 0}.activity-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.activity-card{border-radius:var(--radius-lg);aspect-ratio:4/5;color:#faf6ed;flex-direction:column;justify-content:space-between;padding:28px;transition:transform .35s;display:flex;position:relative;overflow:hidden}.activity-card:hover{transform:translateY(-4px)}.activity-card:before{content:"";z-index:1;background:linear-gradient(160deg,#0000000d,#00000059);position:absolute;inset:0}.activity-card>*{z-index:2;position:relative}.activity-card .year{font-family:var(--serif);letter-spacing:.04em;font-size:1rem;font-style:italic}.activity-card h4{font-family:var(--serif);color:#faf6ed;margin:0 0 6px;font-size:1.5rem}.activity-card p{color:#faf6edcc;margin:0;font-size:.88rem}.ac-1{background:linear-gradient(135deg,#003d7a,#06c)}.ac-2{background:linear-gradient(135deg,#003d7a,#0052a3)}.ac-3{background:linear-gradient(135deg,#0052a3,#06c)}.ac-4{background:linear-gradient(135deg,#003d7a,#004fa3)}.ac-5{background:linear-gradient(135deg,#1a1c2e,#00366b)}.ac-6{background:linear-gradient(135deg,#003d7a,#0052a3)}.philosophy{background:var(--brand-900);color:#faf6ed;text-align:center;padding:clamp(80px,10vw,120px) 0;position:relative;overflow:hidden}.philosophy:before{content:"";z-index:1;background:radial-gradient(1000px 800px at 50% 100%,#0066cc4d,#0000 60%),radial-gradient(1200px 600px at 0 0,#ffeb3b26,#0000 60%);position:absolute;inset:0}.philosophy>*{z-index:2;position:relative}.philosophy h2{color:#faf6ed;margin-bottom:24px;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.35}.philosophy .quote{font-family:var(--serif);max-width:820px;margin:0 auto 28px;font-size:clamp(1.2rem,2vw,1.6rem);font-style:italic;line-height:1.6}.philosophy .author{font-family:var(--serif);color:var(--gold-soft);margin-top:28px;font-size:1rem}.cta-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#faf6ed;padding:clamp(56px,8vw,100px) 0;position:relative;overflow:hidden}.cta-band:before{content:"";background:radial-gradient(1000px 500px at 100%,#0066cc14,#0000 60%),radial-gradient(1000px 500px at 0%,#ffeb3b14,#0000 60%);position:absolute;inset:0}.cta-band>*{z-index:2;position:relative}.cta-band h2{text-align:center;color:var(--brand-900);margin-bottom:28px;font-size:clamp(1.8rem,3vw,2.4rem)}.cta-band-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.contact{background:var(--bg-alt)}.contact-grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:clamp(40px,6vw,80px);display:grid}.contact-text h2{color:var(--brand-900);margin-bottom:16px}.contact-text p{color:var(--ink-soft);margin-bottom:28px;font-size:1.05rem}.contact-meta{flex-direction:column;gap:16px;display:flex}.contact-item{align-items:flex-start;gap:16px;display:flex}.contact-item-icon{width:44px;height:44px;color:var(--brand-900);background:linear-gradient(135deg,#003d7a14,#ffeb3b2e);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.contact-item-text strong{color:var(--ink);margin-bottom:2px;font-weight:600;display:block}.contact-item-text span{color:var(--muted);font-size:.95rem;display:block}.contact-item-text a{color:var(--brand-700)}.contact-item-text a:hover{color:var(--brand-900)}.contact-form{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:40px}.form-group{margin-bottom:24px}.form-group label{color:var(--ink);margin-bottom:8px;font-size:.95rem;font-weight:600;display:block}.form-group input,.form-group textarea{border:1px solid var(--line);width:100%;font-family:var(--sans);color:var(--ink);border-radius:8px;padding:12px 16px;font-size:.95rem;transition:border-color .25s}.form-group input:focus,.form-group textarea:focus{border-color:var(--brand-500);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted)}footer{background:var(--ink);color:#faf6ed;border-top:1px solid #faf6ed1a;padding:clamp(48px,8vw,80px) 0 clamp(28px,4vw,40px)}footer .container{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;margin-bottom:40px;display:grid}footer h4{color:#faf6ed;letter-spacing:.04em;margin-bottom:16px;font-size:.95rem}footer p,footer li{color:#faf6edb3;margin:0;font-size:.88rem;line-height:1.7}footer a{color:#faf6edb3;transition:color .25s}footer a:hover{color:var(--gold-soft)}footer ul{margin:0;padding:0;list-style:none}footer li{margin-bottom:8px}.footer-bottom{color:#faf6ed99;border-top:1px solid #faf6ed1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;font-size:.85rem;display:flex}.footer-socials{gap:16px;display:flex}.footer-socials a{color:#faf6edb3;background:#faf6ed1a;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .25s;display:inline-flex}.footer-socials a:hover{background:var(--brand-500);color:#faf6ed}@media(max-width:960px){.hero-grid,.about-grid,.contact-grid,.two-col{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.pub{grid-template-columns:auto 1fr auto}footer .container{grid-template-columns:repeat(2,1fr);gap:24px}}@media(max-width:640px){.nav-links{display:none}.menu-toggle{display:block}.stats-grid,.services-grid,.activity-grid,.awards-grid{grid-template-columns:1fr}.pub{grid-template-columns:1fr;gap:12px}.pub-image{aspect-ratio:3/4;width:100%;height:auto}.pub-year{font-size:1.4rem}.cta-band-buttons{gap:12px}.cta-band-buttons .btn{justify-content:center;width:100%}.contact-form{padding:24px}footer .container{grid-template-columns:1fr;gap:24px}.footer-bottom{text-align:center;flex-direction:column}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:.6s ease-out fadeInUp}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:.6s ease-out slideInLeft}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.slide-in-right{animation:.6s ease-out slideInRight}
