
:root{--ink:#1F2A44;--bone:#F6F2E9;--stone:#D8D1C4;--bronze:#8A6A3D;--charcoal:#222222;--white:#FFFFFF}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--charcoal);background:var(--bone);line-height:1.55}img{max-width:100%;display:block}a{color:inherit}.founder-link{color:#9b1c1c;text-decoration:none;font-weight:700;border-bottom:1px solid rgba(155,28,28,.28)}.founder-link:hover{color:#7f1212;border-bottom-color:rgba(127,18,18,.45)}.site-header{position:sticky;top:0;z-index:1000;background:rgba(246,242,233,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--stone)}.nav-wrap{max-width:1240px;margin:0 auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.brand-mark{width:54px;height:54px;border-radius:50%;background:transparent;color:var(--bone);display:grid;place-items:center;font-weight:700;letter-spacing:.03em;font-size:15px;flex:0 0 54px}.brand-title{font-size:18px;font-weight:700;color:var(--ink);line-height:1.08}.brand-sub{font-size:12px;color:#575b63;margin-top:3px;max-width:420px}.nav-links{display:flex;gap:26px;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--ink);font-size:16px;font-weight:600}.nav-links a:hover,.site-link:hover{color:var(--bronze)}
.lang-switch{display:flex;align-items:center;gap:10px;margin-left:18px;white-space:nowrap}.lang-switch a{text-decoration:none;color:var(--ink);font-size:15px;font-weight:700}.lang-switch .divider{color:#8b8f96}.lang-switch a.active{color:var(--bronze)}.lang-switch .flag{font-size:15px;margin-right:4px;vertical-align:-1px}@media (max-width:980px){.nav-wrap{flex-wrap:wrap}.lang-switch{margin-left:0;order:3;width:100%;justify-content:flex-end;padding-top:4px}}@media (max-width:760px){.lang-switch{justify-content:flex-start;padding-top:8px}}
.hero{background:linear-gradient(180deg,rgba(31,42,68,.06),rgba(31,42,68,0))}.hero-inner{max-width:1240px;margin:0 auto;padding:72px 28px 54px}.hero-inner.two-col{display:grid;grid-template-columns:1.15fr .95fr;gap:34px;align-items:center}.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--bronze);font-weight:700}.hero h1{margin:10px 0 16px;font-size:56px;line-height:1.05;color:var(--ink);max-width:920px}.hero p{margin:0 0 16px;max-width:860px;font-size:19px;color:#40454d}.hero .lead{font-size:24px;color:#313743}.hero-visual img{border-radius:28px;aspect-ratio:4/3;object-fit:cover;box-shadow:0 18px 48px rgba(23,29,39,.12)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:999px;text-decoration:none;font-weight:700;border:1.5px solid transparent}.button.primary{background:var(--ink);color:var(--bone)}.button.primary:hover{opacity:.92}.button.secondary{border-color:rgba(138,106,61,.55);color:var(--ink)}.button.secondary.light{color:var(--bone);border-color:rgba(246,242,233,.45)}.button.secondary:hover{border-color:var(--bronze);color:var(--bronze)}.section{max-width:1240px;margin:0 auto;padding:72px 28px}.alt-band{background:rgba(255,255,255,.6);max-width:none;padding-left:0;padding-right:0}.alt-band>*{max-width:1240px;margin:0 auto;padding:0 28px}.section-heading{display:flex;gap:28px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;margin-bottom:32px}.section-heading.compact-center{justify-content:flex-start}.section-heading h2{margin:0 0 10px;font-size:48px;line-height:1.08;color:var(--ink)}.section-heading p{margin:0;max-width:860px;font-size:18px;color:#4b5058}.pill-button{align-self:flex-start;display:inline-block;padding:16px 28px;border-radius:999px;border:1.5px solid rgba(138,106,61,.55);text-decoration:none;font-weight:700;color:var(--ink);white-space:nowrap}.pill-button:hover{border-color:var(--bronze);color:var(--bronze)}.pillars-grid,.focus-grid,.works-grid,.logo-grid{display:grid;gap:22px}.pillars-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pillar,.feature-card,.work-card,.contact-card{background:var(--white);border:1px solid rgba(31,42,68,.08);border-radius:24px;box-shadow:0 10px 28px rgba(23,29,39,.05)}.pillar{padding:24px}.pillar h3,.feature-card h3,.work-card h3{margin:0 0 8px;color:var(--ink);font-size:24px;line-height:1.15}.pillar p,.feature-card p,.work-card p{margin:0;color:#505661;font-size:16px}.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.five-up{grid-template-columns:repeat(5,minmax(0,1fr))}.feature-card,.work-card{overflow:hidden}.feature-card img,.work-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.feature-card,.work-card{display:flex;flex-direction:column}.feature-card>*:not(img),.work-card>*:not(img){padding-left:18px;padding-right:18px}.feature-card a,.work-card a{padding:0 18px 20px;color:var(--bronze);font-weight:700;text-decoration:none;margin-top:auto}.feature-meta{padding:16px 18px 4px;color:var(--bronze);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.about-band{max-width:none;background:var(--ink);color:var(--bone)}.about-grid{max-width:1240px;margin:0 auto;padding:72px 28px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:start}.about-grid h2{margin:8px 0 18px;font-size:48px;line-height:1.08}.about-grid p{font-size:18px;color:#e1ddd5}.stat-blocks{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stat{padding:20px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.stat span{display:block;color:#d6c6a7;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:8px}.stat strong{display:block;font-size:20px;line-height:1.2}.people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px}.home-people-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.card-image{aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:#ddd;box-shadow:0 8px 22px rgba(23,29,39,.08)}.card-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%)}.card h3{margin:14px 0 4px;font-size:19px;line-height:1.22;color:var(--ink)}.card .role{font-size:16px;color:#575b63;margin:0}.card .site-link{display:inline-block;margin-top:6px;font-size:15px;color:var(--bronze);text-decoration:none;border-bottom:1px solid rgba(138,106,61,.35)}.logo-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:center}.logo-grid img{max-height:72px;justify-self:center;opacity:.96;filter:grayscale(20%);object-fit:contain}.contact-band .contact-card{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:26px}.subsection-label{display:inline-block;margin:0 0 14px;color:var(--bronze);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.contact-list a{color:var(--bronze);text-decoration:none;word-break:break-word}.cta-links{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.footer{background:#182137;color:#e8e2d8;margin-top:40px}.footer-inner{max-width:1240px;margin:0 auto;padding:34px 28px 26px}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .8fr;gap:24px}.footer-title{font-size:20px;font-weight:700;margin:0 0 8px}.footer h3{margin:0 0 10px;font-size:16px;color:#d6c6a7}.footer p{margin:0 0 18px;color:#d7d2ca}.footer-links{display:flex;gap:12px 18px;flex-wrap:wrap}.footer-links a{text-decoration:none;color:#f2ece2}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:14px 28px 24px;max-width:1240px;margin:0 auto;color:#c8c2b9;font-size:14px}@media (max-width:1200px){.five-up{grid-template-columns:repeat(3,minmax(0,1fr))}.home-people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:980px){.hero-inner.two-col,.about-grid,.footer-grid,.contact-band .contact-card{grid-template-columns:1fr;display:grid}.pillars-grid,.three-up,.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.five-up{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:48px}.section-heading h2,.about-grid h2{font-size:40px}}@media (max-width:760px){.nav-wrap{padding:16px 18px}.nav-links{gap:14px}.hero-inner,.section,.about-grid,.footer-inner{padding-left:18px;padding-right:18px}.hero h1{font-size:38px}.hero .lead{font-size:20px}.section-heading h2,.about-grid h2{font-size:34px}.pillars-grid,.three-up,.five-up,.people-grid,.home-people-grid,.logo-grid,.stat-blocks{grid-template-columns:1fr}.feature-card img,.work-card img{aspect-ratio:4/3}}


.brand-mark{display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent;padding:0}.brand-mark img{display:block;width:54px;height:54px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px rgba(31,42,68,.08)}

.footer-bottom:empty{display:none}


.timeline-premium{padding-top:86px;padding-bottom:86px}
.timeline-shell{background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(255,255,255,.48));border:1px solid rgba(31,42,68,.08);border-radius:34px;padding:34px;box-shadow:0 16px 44px rgba(23,29,39,.06)}
.timeline-heading{align-items:flex-end;margin-bottom:26px}.timeline-heading p{max-width:760px}
.timeline-toggle{display:flex;gap:10px;align-items:center}.toggle-btn{appearance:none;border:1px solid rgba(138,106,61,.4);background:rgba(255,255,255,.8);color:var(--ink);padding:12px 18px;border-radius:999px;font-weight:700;font-family:inherit;cursor:pointer}.toggle-btn.active{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.timeline-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start}.timeline-layout[data-mode="map"]{grid-template-columns:.88fr 1.12fr}
.timeline-column{position:relative;min-width:0}.timeline-rail{position:absolute;left:18px;right:18px;top:28px;height:2px;background:linear-gradient(90deg,rgba(138,106,61,.25),rgba(138,106,61,.75),rgba(138,106,61,.25));z-index:0}
.timeline-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px, 1fr);gap:18px;overflow-x:auto;padding:0 2px 16px 2px;scroll-snap-type:x mandatory;position:relative;z-index:1}.timeline-cards::-webkit-scrollbar{height:10px}.timeline-cards::-webkit-scrollbar-thumb{background:rgba(138,106,61,.28);border-radius:999px}
.timeline-card{scroll-snap-align:start;background:rgba(255,255,255,.98);border:1px solid rgba(31,42,68,.08);border-radius:24px;padding:26px 22px 22px;min-height:280px;box-shadow:0 10px 26px rgba(23,29,39,.05);position:relative;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;outline:none}.timeline-card::before{content:"";position:absolute;top:23px;left:22px;width:14px;height:14px;border-radius:50%;background:var(--bone);border:3px solid rgba(138,106,61,.75);box-shadow:0 0 0 8px rgba(138,106,61,.08)}.timeline-card.active{transform:translateY(-4px);box-shadow:0 18px 34px rgba(23,29,39,.1);border-color:rgba(138,106,61,.4)}.timeline-year{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--bronze);padding-left:26px}.timeline-tag{display:inline-block;margin:12px 0 12px;padding:7px 11px;border-radius:999px;background:rgba(31,42,68,.06);color:var(--ink);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.timeline-card h3{margin:0 0 8px;color:var(--ink);font-size:28px;line-height:1.1}.timeline-card .timeline-place{margin:0 0 12px;color:#595f68;font-weight:700}.timeline-card p{margin:0;color:#505661;font-size:16px}.timeline-footer-note{margin-top:16px;color:#5a5f67;font-size:15px}
.map-column{min-width:0}.map-frame{background:linear-gradient(180deg,rgba(8,17,25,.96),rgba(7,20,31,.92));border:1px solid rgba(98,223,255,.16);border-radius:28px;padding:18px;box-shadow:0 18px 42px rgba(7,13,20,.28), inset 0 0 0 1px rgba(255,255,255,.03);position:sticky;top:108px}.map-panel{border-radius:22px;overflow:hidden;background:radial-gradient(circle at 50% 18%,rgba(50,181,228,.14),transparent 30%),linear-gradient(180deg,#071521,#04111a)}.story-map{display:block;width:100%;height:auto;aspect-ratio:12/7}.story-map .starfield circle{fill:rgba(123,233,255,.95)}.route-line{fill:none;stroke:rgba(123,233,255,.48);stroke-width:2.8;stroke-linecap:round;stroke-dasharray:7 8}.pin{cursor:pointer}.pin.supporting{cursor:default}.pin circle{fill:#6de9ff;stroke:#dffcff;stroke-width:2.4;transition:transform .24s ease,fill .24s ease}.pin .pin-halo{fill:rgba(109,233,255,.16);stroke:none;opacity:0}.pin.active circle{fill:#ffffff;transform:scale(1.08)}.pin.active .pin-halo{opacity:1}.pin.supporting circle{fill:#ffc861;stroke:#fff5d0}.pin-label rect,.pin-label path{fill:rgba(5,19,30,.86);stroke:rgba(109,233,255,.34);stroke-width:1}.pin-label text{font-family:Georgia,"Times New Roman",serif;font-size:15px;fill:#f7fbff;font-weight:700;letter-spacing:.01em}.map-caption{padding-top:14px}.map-caption-inner{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}.map-year{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--bronze);padding-top:3px}.map-caption h3{margin:0 0 6px;font-size:27px;color:var(--ink)}.map-caption p{margin:0;color:#555b63;font-size:16px}.timeline-layout[data-mode="map"] .map-frame{transform:scale(1.01)}.timeline-layout[data-mode="map"] .timeline-card:not(.active){opacity:.72}
@media (max-width:980px){.timeline-layout,.timeline-layout[data-mode="map"]{grid-template-columns:1fr}.map-column{order:-1}.map-frame{position:relative;top:auto}.timeline-heading{align-items:flex-start}.timeline-cards{grid-auto-columns:minmax(280px,85%)}.map-caption h3{font-size:24px}}
@media (max-width:760px){.timeline-shell{padding:22px}.timeline-premium{padding-top:68px;padding-bottom:68px}.timeline-heading{gap:16px}.timeline-toggle{width:100%}.toggle-btn{flex:1}.timeline-card{min-height:250px}.timeline-card h3{font-size:24px}.story-map{aspect-ratio:1.1/1}.pin-label text{font-size:12px}}


.focus-feature{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:2rem;align-items:start}.focus-feature-image img{width:100%;display:block;border-radius:22px;box-shadow:0 18px 40px rgba(31,42,68,.12)}.current-focus-feature .focus-feature-copy{background:#fff;border:1px solid #d8d1c4;border-radius:24px;padding:1.5rem 1.6rem;box-shadow:0 10px 30px rgba(31,42,68,.06)}.current-focus-feature h3{font-size:clamp(2rem,3vw,3rem);margin:.35rem 0 .9rem}.focus-partners{margin:1rem 0 1.2rem;padding:1rem 1.1rem;background:#f6f2e9;border-radius:16px;border:1px solid #e3dccf}.focus-partners p{margin:.15rem 0 .55rem}.focus-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:1rem 0 1.2rem}.support-card img{width:100%;max-width:540px;display:block;border-radius:18px;border:1px solid #d8d1c4;background:#fff}.focus-feature .feature-meta{letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:#8a6a3d;font-weight:700}@media (max-width: 920px){.focus-feature{grid-template-columns:1fr}.current-focus-feature .focus-feature-copy{padding:1.15rem}.support-card img{max-width:100%}}

.section-tight-top{padding-top:24px;}
.subsection-split{display:grid;gap:28px;}
.subsection-label{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent,#8f1d2c);font-weight:700;margin-bottom:14px;}
.memorial-block{padding-top:4px;}
.memorial-grid{grid-template-columns:minmax(220px,320px);justify-content:start;}
.memorial-card{border-color:rgba(143,29,44,.22);}
@media (min-width: 900px){.subsection-split{grid-template-columns:1fr 320px;align-items:start;}}


/* Mobile refinement pass */
.nav-toggle{display:none;appearance:none;border:1px solid rgba(31,42,68,.14);background:var(--white);color:var(--ink);border-radius:999px;padding:10px 14px;font:inherit;font-weight:700;line-height:1;box-shadow:0 6px 18px rgba(23,29,39,.06);cursor:pointer;min-height:44px}
.nav-toggle:hover{border-color:rgba(138,106,61,.55);color:var(--bronze)}
.nav-toggle-icon{display:inline-block;width:18px;height:12px;position:relative;margin-right:8px;vertical-align:-1px}
.nav-toggle-icon::before,.nav-toggle-icon::after,.nav-toggle-icon span{content:"";position:absolute;left:0;width:100%;height:2px;border-radius:999px;background:currentColor;transition:transform .22s ease,opacity .22s ease,top .22s ease}
.nav-toggle-icon::before{top:0}.nav-toggle-icon span{top:5px}.nav-toggle-icon::after{top:10px}
.nav-wrap.menu-open .nav-toggle-icon::before{top:5px;transform:rotate(45deg)}
.nav-wrap.menu-open .nav-toggle-icon span{opacity:0}
.nav-wrap.menu-open .nav-toggle-icon::after{top:5px;transform:rotate(-45deg)}
.hero-copy,.section-heading>div,.contact-card>div,.timeline-column,.map-column,.feature-card,.work-card,.card{min-width:0}
@media (max-width:760px){
  html,body{overflow-x:hidden}
  body{line-height:1.6}
  .site-header{backdrop-filter:blur(14px)}
  .nav-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 14px;padding:14px 16px}
  .brand{min-width:0;gap:12px}
  .brand-mark,.brand-mark img{width:46px;height:46px}
  .brand-title{font-size:16px}
  .brand-sub{display:none}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;grid-column:2;grid-row:1}
  .nav-links,.lang-switch{display:none}
  .nav-wrap.menu-open .nav-links,.nav-wrap.menu-open .lang-switch{display:flex}
  .nav-links{grid-column:1 / -1;flex-direction:column;align-items:stretch;gap:8px;padding-top:8px}
  .nav-links a{display:block;background:rgba(255,255,255,.88);border:1px solid rgba(31,42,68,.08);border-radius:16px;padding:13px 14px;font-size:16px;line-height:1.2;box-shadow:0 8px 18px rgba(23,29,39,.04)}
  .lang-switch{grid-column:1 / -1;justify-content:flex-start;gap:8px;padding-top:2px;font-size:14px}
  .lang-switch a{display:inline-flex;align-items:center;min-height:40px;padding:0 2px}
  .hero-inner,.section,.about-grid,.footer-inner{padding-left:16px;padding-right:16px}
  .hero-inner{padding-top:42px;padding-bottom:34px}
  .hero-inner.two-col{gap:24px}
  .hero h1{font-size:clamp(2.35rem,11vw,3.15rem);line-height:1.02;letter-spacing:-.02em}
  .hero .lead{font-size:1.2rem;line-height:1.35}
  .hero p,.section-heading p,.about-grid p,.pillar p,.feature-card p,.work-card p,.contact-list,.map-caption p{font-size:16px}
  .eyebrow,.feature-meta,.subsection-label,.timeline-year,.map-year{letter-spacing:.1em}
  .hero-actions,.cta-links{flex-direction:column;align-items:stretch}
  .button,.pill-button{width:100%;padding:15px 18px;text-align:center}
  .section{padding-top:56px;padding-bottom:56px}
  .section-tight-top{padding-top:8px}
  .section-heading{gap:16px;margin-bottom:24px}
  .section-heading h2,.about-grid h2{font-size:clamp(2rem,9vw,2.35rem)}
  .pillars-grid,.three-up,.five-up,.logo-grid,.stat-blocks{grid-template-columns:1fr}
  .people-grid,.home-people-grid{grid-template-columns:1fr 1fr;gap:22px 14px}
  .people-full-grid,.directors-grid{grid-template-columns:1fr 1fr}
  .memorial-grid{grid-template-columns:1fr}
  .card h3{font-size:17px}
  .card .role,.card .site-link{font-size:14px}
  .card-image{border-radius:18px}
  .pillar,.feature-card,.work-card,.contact-card,.timeline-shell{border-radius:22px}
  .about-grid{gap:20px;padding-top:56px;padding-bottom:56px}
  .logo-grid{gap:18px}.logo-grid img{max-height:56px}
  .contact-band .contact-card{padding:20px}
  .footer{margin-top:24px}
  .footer-inner{padding-top:28px;padding-bottom:22px}
  .footer-links{gap:10px 14px}
  .footer-bottom{padding:14px 16px 22px}
  .timeline-premium{padding-top:56px;padding-bottom:56px}
  .timeline-shell{padding:18px}
  .timeline-heading{margin-bottom:20px}
  .timeline-toggle{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .toggle-btn{width:100%;padding:12px 12px}
  .timeline-layout,.timeline-layout[data-mode="map"]{grid-template-columns:1fr;gap:18px}
  .timeline-cards{grid-auto-columns:88%;gap:14px;padding-bottom:10px}
  .timeline-card{min-height:auto;padding:22px 18px 18px}
  .timeline-card h3{font-size:22px}
  .timeline-card::before{top:20px;left:18px}
  .timeline-year{padding-left:24px}
  .map-frame{padding:12px;border-radius:22px;top:auto;position:relative}
  .map-panel{border-radius:18px}
  .story-map{aspect-ratio:1/1.08}
  .map-caption-inner{grid-template-columns:1fr;gap:8px}
  .map-caption h3{font-size:22px}
  .pin-label{display:none}
  .focus-feature{grid-template-columns:1fr;gap:1.25rem}
  .focus-feature-image img,.support-card img,.hero-visual img{border-radius:20px}
  .subsection-split{gap:22px}
}
@media (max-width:560px){
  .people-grid,.home-people-grid,.people-full-grid,.directors-grid{grid-template-columns:1fr}
  .hero-inner{padding-top:36px}
  .hero h1{font-size:clamp(2.1rem,12vw,2.7rem)}
  .nav-wrap{padding:12px 14px}
}

/* Premium pass — desktop soul preserved, presentation elevated */
:root{
  --ink-soft:#2c3650;
  --ink-deep:#162034;
  --paper:#fbf8f2;
  --paper-shadow:rgba(20,24,33,.08);
  --line-soft:rgba(31,42,68,.09);
  --line-strong:rgba(31,42,68,.14);
  --glow-bronze:rgba(138,106,61,.16);
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body{background:
  radial-gradient(circle at top left, rgba(255,255,255,.72), transparent 30%),
  linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,0) 18%),
  var(--bone);
  letter-spacing:.003em;
}
a{text-underline-offset:3px}
.site-header{background:rgba(251,248,242,.88);border-bottom:1px solid rgba(31,42,68,.08);box-shadow:0 12px 28px rgba(18,24,36,.04)}
.nav-wrap{padding:16px 28px}
.brand{position:relative}
.brand-title{font-size:18px;letter-spacing:.01em}
.brand-sub{font-size:11.5px;letter-spacing:.025em;color:#60646d}
.nav-links a,.lang-switch a{position:relative;transition:color .22s ease,opacity .22s ease}
.nav-links a::after,.footer-links a::after,.site-link::after{
  content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;
  background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .24s ease;opacity:.55;
}
.nav-links a:hover::after,.footer-links a:hover::after,.site-link:hover::after{transform:scaleX(1)}
.hero{background:
  radial-gradient(circle at 18% 12%, rgba(138,106,61,.10), transparent 20%),
  linear-gradient(180deg, rgba(31,42,68,.06), rgba(31,42,68,0) 52%)}
.hero-inner{padding-top:86px;padding-bottom:66px}
.hero-inner.two-col{gap:44px}
.hero-copy{max-width:760px}
.hero h1{font-size:60px;letter-spacing:-.03em;max-width:760px}
.hero p{max-width:720px;color:#4a5057}
.hero .lead{font-size:25px;line-height:1.32;color:#2d3441;max-width:760px}
.hero-visual{position:relative}
.hero-visual::before{
  content:"";position:absolute;inset:-16px 24px auto -16px;height:58%;border-radius:34px;
  background:linear-gradient(135deg, rgba(138,106,61,.12), rgba(255,255,255,0));z-index:0;filter:blur(.2px)
}
.hero-visual img{position:relative;z-index:1;border-radius:30px;box-shadow:0 26px 70px rgba(18,24,36,.14), 0 1px 0 rgba(255,255,255,.65) inset}
.eyebrow,.feature-meta,.subsection-label{letter-spacing:.15em}
.button{transition:transform .18s ease,box-shadow .22s ease,background-color .22s ease,border-color .22s ease,color .22s ease}
.button:hover{transform:translateY(-1px)}
.button.primary{box-shadow:0 18px 34px rgba(22,32,52,.16)}
.button.primary:hover{background:var(--ink-deep);box-shadow:0 24px 40px rgba(22,32,52,.19)}
.button.secondary,.pill-button{background:rgba(255,255,255,.66);backdrop-filter:blur(5px)}
.button.secondary:hover,.pill-button:hover{box-shadow:0 14px 28px rgba(138,106,61,.09)}
.section{padding-top:84px;padding-bottom:84px}
.section-heading{margin-bottom:38px}
.section-heading h2{font-size:50px;letter-spacing:-.022em;max-width:780px}
.section-heading p{max-width:760px;line-height:1.65}
.alt-band{background:linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,255,255,.58))}
.pillar,.feature-card,.work-card,.contact-card,.timeline-shell,.current-focus-feature .focus-feature-copy{
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.86));
  border:1px solid var(--line-soft);
  box-shadow:0 16px 44px rgba(20,24,33,.055), 0 1px 0 rgba(255,255,255,.65) inset;
}
.pillar,.feature-card,.work-card,.contact-card{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.pillar:hover,.feature-card:hover,.work-card:hover,.contact-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 52px rgba(20,24,33,.08), 0 1px 0 rgba(255,255,255,.7) inset;
  border-color:var(--line-strong);
}
.pillar{padding:28px}
.pillar h3,.feature-card h3,.work-card h3{font-size:25px;letter-spacing:-.015em;margin-bottom:10px}
.feature-card img,.work-card img{transition:transform .75s ease, filter .35s ease}
.feature-card:hover img,.work-card:hover img{transform:scale(1.028)}
.feature-card a,.work-card a,.site-link{position:relative}
.about-band{background:
 linear-gradient(135deg, rgba(255,255,255,.04), transparent 34%),
 linear-gradient(180deg, #172037, #121a2d)}
.about-grid{padding-top:82px;padding-bottom:82px;gap:38px}
.about-grid h2{font-size:52px;letter-spacing:-.024em}
.about-grid p{color:#ece7df;max-width:760px}
.stat{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);box-shadow:0 10px 26px rgba(0,0,0,.08)}
.people-grid{gap:30px 22px}
.card{padding-bottom:4px}
.card-image{border-radius:24px;box-shadow:0 18px 38px rgba(20,24,33,.10);background:linear-gradient(180deg,#ece7de,#d9d3ca);transition:transform .24s ease, box-shadow .24s ease}
.card:hover .card-image{transform:translateY(-2px);box-shadow:0 22px 44px rgba(20,24,33,.13)}
.card-image img{transition:transform .7s ease, filter .35s ease;filter:grayscale(100%) contrast(1.03)}
.card:hover .card-image img{transform:scale(1.022);filter:grayscale(92%) contrast(1.04)}
.card h3{font-size:20px;letter-spacing:-.01em;margin-top:16px}
.card .role{line-height:1.5}
.logo-grid{gap:28px 24px}
.logo-grid img{max-height:66px;opacity:.92;filter:grayscale(18%);transition:transform .22s ease,opacity .22s ease,filter .22s ease}
.logo-grid a:hover img,.logo-grid img:hover{transform:translateY(-2px);opacity:1;filter:grayscale(0%)}
.contact-band .contact-card{padding:30px;border-radius:28px}
.contact-list{gap:14px}
.footer{background:linear-gradient(180deg,#121a2e,#0e1526)}
.footer-inner{padding-top:38px;padding-bottom:30px}
.footer-title{font-size:22px;letter-spacing:-.012em}
.footer h3{letter-spacing:.08em;text-transform:uppercase;font-size:12px}
.footer p{color:#dcd6ce;line-height:1.68}
.footer-links a{position:relative;text-decoration:none}
.footer-bottom{color:#bfb8ad}
.hero-subpage .hero-inner{padding-top:72px;padding-bottom:48px}
.hero-subpage h1{font-size:54px;max-width:760px}
.people-full-grid .card,.directors-grid .card,.memorial-card{padding-bottom:8px}
.memorial-card{background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(249,245,240,.88));}
.timeline-shell{border-radius:36px}
.timeline-card{box-shadow:0 18px 36px rgba(20,24,33,.065), 0 1px 0 rgba(255,255,255,.72) inset}
.timeline-card:hover{transform:translateY(-2px)}
.map-frame{box-shadow:0 22px 56px rgba(7,13,20,.32), inset 0 0 0 1px rgba(255,255,255,.035)}
.current-focus-feature .focus-feature-copy{padding:1.75rem 1.85rem}
.focus-feature-image img,.support-card img{box-shadow:0 22px 48px rgba(20,24,33,.12)}
@media (max-width:980px){
  .hero-inner{padding-top:72px;padding-bottom:56px}
  .hero-inner.two-col{gap:32px}
  .hero h1{font-size:52px}
  .section{padding-top:72px;padding-bottom:72px}
  .section-heading h2,.about-grid h2{font-size:44px}
  .people-grid{gap:26px 18px}
}
@media (max-width:760px){
  body{background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0) 12%), var(--bone)}
  .site-header{box-shadow:0 10px 24px rgba(18,24,36,.05)}
  .nav-links a{background:rgba(255,255,255,.92);box-shadow:0 10px 22px rgba(20,24,33,.05),0 1px 0 rgba(255,255,255,.7) inset}
  .hero-inner{padding-top:46px;padding-bottom:38px}
  .hero h1{letter-spacing:-.03em}
  .hero .lead{font-size:1.16rem}
  .hero-visual::before{inset:-10px 12px auto -8px;height:48%;border-radius:24px}
  .section{padding-top:60px;padding-bottom:60px}
  .section-heading{margin-bottom:24px}
  .section-heading h2,.about-grid h2{letter-spacing:-.025em}
  .pillar,.feature-card,.work-card,.contact-card,.timeline-shell{box-shadow:0 14px 30px rgba(20,24,33,.05),0 1px 0 rgba(255,255,255,.65) inset}
  .card-image{box-shadow:0 14px 28px rgba(20,24,33,.09)}
  .logo-grid img{max-height:52px}
  .contact-band .contact-card{border-radius:24px}
  .hero-subpage .hero-inner{padding-top:42px;padding-bottom:30px}
  .hero-subpage h1{font-size:clamp(2.2rem,11vw,2.9rem)}
}


/* Header redesign — premium institutional masthead */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{background:rgba(251,248,242,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(31,42,68,.08);box-shadow:none}
.nav-wrap{max-width:1320px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px 30px;padding:18px 34px 16px}
.brand{gap:12px;min-width:0}
.brand-copy{min-width:0}
.brand-mark,.brand-mark img{width:42px;height:42px}
.brand-mark img{box-shadow:0 0 0 1px rgba(31,42,68,.09)}
.brand-title{font-size:17px;line-height:1.05;letter-spacing:.01em;white-space:nowrap}
.brand-sub{display:none!important}
.nav-links{justify-self:center;align-items:center;justify-content:center;gap:clamp(16px,1.9vw,28px);flex-wrap:nowrap;min-width:0}
.nav-links a{font-size:15px;font-weight:600;letter-spacing:.01em;white-space:nowrap}
.lang-switch{justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:0;padding:0;white-space:nowrap}
.lang-switch .divider{color:#90939a;opacity:.55}
.lang-switch a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 2px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.lang-switch .flag{font-size:14px;line-height:1;margin:0}
.nav-toggle{display:none;align-items:center;justify-content:center;width:46px;height:46px;min-height:46px;padding:0;border-radius:999px;font-size:0;box-shadow:none;background:rgba(255,255,255,.72)}
.nav-toggle-icon{margin-right:0}
.nav-toggle-label{display:none}
@media (max-width:1120px){
  .nav-wrap{gap:16px 20px;padding:16px 24px}
  .nav-links{gap:16px}
  .nav-links a{font-size:14px}
  .brand-title{font-size:16px}
}
@media (max-width:980px){
  .site-header{box-shadow:none}
  .nav-wrap{grid-template-columns:minmax(0,1fr) auto auto;gap:12px 10px;padding:12px 16px}
  .brand{grid-column:1;gap:10px}
  .brand-mark,.brand-mark img{width:40px;height:40px}
  .brand-title{font-size:15px;white-space:normal;max-width:190px}
  .lang-switch{display:flex;grid-column:2;justify-self:end;gap:6px}
  .lang-switch .divider{display:none}
  .lang-switch a{min-height:30px;font-size:12px;padding:0;letter-spacing:.06em}
  .nav-toggle{display:inline-flex;grid-column:3;grid-row:1}
  .nav-links{display:none;grid-column:1 / -1;justify-self:stretch;flex-direction:column;align-items:stretch;gap:10px;padding:12px 0 4px}
  .nav-wrap.menu-open .nav-links{display:flex}
  .nav-links a{display:block;background:rgba(255,255,255,.94);border:1px solid rgba(31,42,68,.08);border-radius:18px;padding:14px 16px;font-size:16px;box-shadow:0 10px 20px rgba(20,24,33,.04)}
}
@media (max-width:560px){
  .nav-wrap{padding:12px 14px}
  .brand-title{font-size:14px;max-width:150px}
  .lang-switch a{font-size:11px}
}


/* 10-year anniversary experience */
.anniversary-band{padding:22px 24px 0;background:transparent}
.anniversary-editorial-shell{max-width:1320px;margin:0 auto;padding:34px 36px 36px;border-radius:32px;border:1px solid rgba(31,42,68,.09);background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(247,242,233,.98));box-shadow:0 22px 52px rgba(20,24,33,.06),0 1px 0 rgba(255,255,255,.85) inset;position:relative;overflow:hidden}
.anniversary-editorial-shell::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(164,138,86,.12),transparent 30%),radial-gradient(circle at bottom left,rgba(23,32,55,.05),transparent 28%);pointer-events:none}
.anniversary-head,.anniversary-editorial-stage{position:relative;z-index:1}
.anniversary-head{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1fr);gap:26px;align-items:end;padding-bottom:24px;border-bottom:1px solid rgba(23,32,55,.09);margin-bottom:26px}
.anniversary-head h2{margin:0;font-size:clamp(34px,4vw,58px);line-height:.95;color:#172037;letter-spacing:-.04em}
.anniversary-head p{margin:0;max-width:720px;font-size:17px;line-height:1.65;color:#36445c}
.anniversary-editorial-stage{display:grid;gap:26px}
.anniversary-line-wrap{display:grid;gap:16px}
.anniversary-line{position:relative;height:2px;background:rgba(23,32,55,.11);border-radius:999px;overflow:hidden}
.anniversary-line-progress{display:block;height:100%;width:100%;background:linear-gradient(90deg,#172037,#9c7f43);transform:scaleX(var(--anniversary-progress,0));transform-origin:left center;transition:transform .45s ease}
.anniversary-points{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:start}
.anniversary-point{appearance:none;background:none;border:none;padding:0;text-align:left;cursor:pointer;display:grid;gap:10px;color:#172037;position:relative}
.anniversary-point::before{content:"";width:15px;height:15px;border-radius:50%;border:1px solid rgba(23,32,55,.22);background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.92);transition:transform .28s ease,background .28s ease,border-color .28s ease,box-shadow .28s ease}
.anniversary-point.is-active::before,.anniversary-point:hover::before,.anniversary-point:focus-visible::before{background:#172037;border-color:#172037;box-shadow:0 0 0 6px rgba(156,127,67,.16);transform:scale(1.06)}
.anniversary-point-year{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#7a6640;font-weight:700}
.anniversary-point-label{display:block;font-size:15px;line-height:1.35;color:#2f3a4f;max-width:16ch}
.anniversary-point.is-active .anniversary-point-label{color:#172037}
.anniversary-editorial-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:28px;align-items:stretch}
.anniversary-story-panel{padding:30px 30px 28px;border-radius:26px;background:rgba(255,255,255,.74);border:1px solid rgba(23,32,55,.08);box-shadow:0 18px 36px rgba(20,24,33,.045);display:grid;align-content:start;gap:12px;min-height:100%}
.anniversary-story-meta{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#7a6640;font-weight:700}
.anniversary-story-year{font-size:clamp(36px,5vw,64px);line-height:.9;color:#172037;letter-spacing:-.05em;font-weight:700}
.anniversary-story-panel h3{margin:0;font-size:clamp(24px,2.3vw,38px);line-height:1.04;color:#172037;letter-spacing:-.03em;max-width:14ch}
.anniversary-story-panel p{margin:0;font-size:17px;line-height:1.7;color:#3e4d66;max-width:34ch}
.anniversary-story-caption{padding-top:6px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#7a6640;font-weight:700}
.anniversary-actions{display:flex;flex-wrap:wrap;gap:14px 18px;padding-top:10px}
.anniversary-trigger,.anniversary-link{appearance:none;background:none;border:none;padding:0;text-decoration:none;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#172037;font-weight:700;position:relative;cursor:pointer}
.anniversary-trigger::after,.anniversary-link::after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:currentColor;opacity:.45;transform:scaleX(0);transform-origin:left center;transition:transform .24s ease}
.anniversary-trigger:hover::after,.anniversary-trigger:focus-visible::after,.anniversary-link:hover::after,.anniversary-link:focus-visible::after{transform:scaleX(1)}
.anniversary-media-editorial{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:#0d1321;box-shadow:0 26px 54px rgba(17,24,36,.19)}
.anniversary-media-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity .45s ease,transform .9s ease;filter:saturate(.95) contrast(1.02)}
.anniversary-media-image.is-active{opacity:1;transform:scale(1)}
.anniversary-media-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,21,34,.03),rgba(16,21,34,.16) 46%,rgba(16,21,34,.84))}
.anniversary-media-caption{position:absolute;left:26px;right:26px;bottom:22px;display:grid;gap:4px;color:#f4eee3}
.anniversary-caption-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.82}
.anniversary-media-caption strong{font-size:34px;line-height:1;color:#fff}
.anniversary-media-caption span:last-child{font-size:15px;line-height:1.45}
.anniversary-editorial.is-open .anniversary-head,.anniversary-editorial.is-open .anniversary-editorial-grid,.anniversary-editorial.is-open .anniversary-line-wrap{animation:anniversaryFadeUp .75s ease both}
@keyframes anniversaryFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:1180px){.anniversary-editorial-shell{padding:28px 24px 30px}.anniversary-head{grid-template-columns:1fr;gap:14px}.anniversary-editorial-grid{grid-template-columns:1fr;gap:22px}.anniversary-media-editorial{min-height:420px}}
@media (max-width:760px){.anniversary-band{padding:14px 16px 0}.anniversary-editorial-shell{padding:20px 16px 22px;border-radius:24px}.anniversary-head{margin-bottom:18px;padding-bottom:18px}.anniversary-head h2{font-size:36px;line-height:.98}.anniversary-head p{font-size:15px;line-height:1.6}.anniversary-line-wrap{gap:12px}.anniversary-points{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(118px,1fr);overflow-x:auto;gap:12px;padding-bottom:6px;scrollbar-width:none}.anniversary-points::-webkit-scrollbar{display:none}.anniversary-point{min-width:118px}.anniversary-point-label{font-size:13px;max-width:12ch}.anniversary-editorial-grid{gap:18px}.anniversary-story-panel{padding:22px 18px 20px;border-radius:22px}.anniversary-story-year{font-size:34px}.anniversary-story-panel h3{font-size:28px}.anniversary-story-panel p{font-size:15px;line-height:1.62}.anniversary-actions{gap:10px 16px}.anniversary-trigger,.anniversary-link{font-size:11px;letter-spacing:.13em}.anniversary-media-editorial{min-height:300px;border-radius:22px}.anniversary-media-caption{left:18px;right:18px;bottom:16px}.anniversary-media-caption strong{font-size:24px}.anniversary-media-caption span:last-child{font-size:13.5px}}.anniversary-copy p{font-size:14.5px;line-height:1.55}.anniversary-actions{gap:10px 16px}.anniversary-trigger,.anniversary-link{font-size:11.5px;letter-spacing:.11em}.anniversary-stage{gap:16px}.anniversary-milestones{grid-template-columns:1fr;gap:12px}.anniversary-milestone{grid-template-columns:auto 1fr;align-items:start;column-gap:12px}.anniversary-dot{margin-top:16px}.anniversary-card{min-height:auto;padding:13px 14px}.anniversary-card h3{font-size:16px}.anniversary-card p{font-size:13.5px}.anniversary-media-frame{min-height:260px;border-radius:20px}.anniversary-media-caption{left:16px;right:16px;bottom:14px}.anniversary-media-caption strong{font-size:22px}.anniversary-media-caption span:last-child{font-size:13.5px}}

