/* DVTK 50 • jubilee layer (2027)
   Separate from the original Ghost theme; remove this file reference to disable jubilee styling.
   Original logos/assets and original components are preserved. */
:root {
  --dvtk50-navy: #081d4c;
  --dvtk50-royal: #143f92;
  --dvtk50-gold: #d5ac50;
  --dvtk50-gold-light: #f6dd9a;
  --dvtk50-ink: #13294a;
}
/* Avoid repainting a blurred sticky header and an endlessly pulsing fixed button. */
body .dvtk-header {backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}
html.dark body .dvtk-header {background:#0b1931!important}
body .dvtk-chat-open {animation:none!important}
/* Only cards outside the viewport skip painting; anchor sections and dialogs stay normal. */
@supports (content-visibility:auto) {
  .dvtk50-gallery figure {content-visibility:auto;contain-intrinsic-size:auto 350px}
  .dvtk50-history__point {content-visibility:auto;contain-intrinsic-size:auto 295px}
}
/* Site-wide anniversary mark — header, footer, navigation and mobile menu. */
.dvtk-brand__logo.dvtk50-site-logo {
  display:block; width:74px; height:74px; object-fit:contain;
  filter: drop-shadow(0 4px 5px rgba(5,25,73,.10));
}
.dvtk-brand__logo-badge:has(.dvtk50-site-logo) {background:transparent!important;box-shadow:none!important; border-color:transparent!important}
.dvtk50-topbar-link { color:#fff!important; background:linear-gradient(110deg,#9b6e28,#d3a84d); border-radius:8px; padding:5px 10px!important; font-weight:800!important; letter-spacing:.02em; white-space:nowrap; }
.dvtk50-topbar-link:hover {background:linear-gradient(110deg,#ae792b,#ebc26c)}
.dvtk-footer--dark .dvtk-footer__brand img.dvtk50-footer-logo { width:92px!important;height:92px!important;max-width:92px;object-fit:contain;padding:0!important; border-radius:50%;background:transparent!important; }
.dvtk50-mobile-brand {text-decoration:none!important;max-width:calc(100% - 72px)}
.dvtk-mobile__mark--logo:has(img[src*="dvtk50-"]){background:rgba(255,255,255,.96);border-radius:50%;height:68px;width:68px; flex:0 0 68px;overflow:hidden}
.dvtk-mobile__mark--logo img[src*="dvtk50-"]{width:100%;height:100%;object-fit:contain}
.dvtk50-mobile-menu-link {background:linear-gradient(110deg,rgba(219,177,94,.18),rgba(219,177,94,.07)); color:#f4d69b!important; border:1px solid rgba(237,195,103,.18);border-radius:13px}
@media(max-width:640px){
  .dvtk-brand__logo.dvtk50-site-logo {width:47px;height:47px}
  .dvtk-mobile__mark--logo:has(img[src*="dvtk50-"]){width:56px;height:56px;flex-basis:56px}
  .dvtk50-mobile-brand .dvtk-mobile__brand-text{display:block;font-size:13px}
  .dvtk50-topbar-link{font-size:12px}
}
/* Reusable typography/buttons for home banner and jubilee page. */
.dvtk50-kicker {display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.13em;line-height:1.5;text-transform:uppercase;color:#f0d396}
.dvtk50-kicker__star{color:#f1c96c;font-size:21px;line-height:1}
.dvtk50-cta{display:inline-flex;gap:18px;align-items:center;justify-content:space-between;min-height:52px;padding:12px 22px;border-radius:13px;background:linear-gradient(115deg,#f4d88f,#d5a548);border:1px solid rgba(255,247,212,.44);color:#172d53!important;text-decoration:none!important;font-weight:800;font-size:14px;line-height:1.3;box-shadow:0 12px 25px rgba(4,15,44,.17);transition:transform .2s ease, box-shadow .2s ease}
.dvtk50-cta:hover,.dvtk50-cta:focus-visible{transform:translateY(-2px);box-shadow:0 15px 28px rgba(2,13,38,.30);color:#142b55!important}
.dvtk50-cta:focus-visible{outline:3px solid #9cbaf9;outline-offset:3px}
.dvtk50-cta span:last-child{font-size:20px;font-weight:500}
.dvtk50-cta--outline{color:#f2f5ff!important;background:rgba(255,255,255,.075);border:1px solid rgba(219,232,255,.3);box-shadow:none}
.dvtk50-cta--outline:hover{background:rgba(255,255,255,.13);color:#fff!important;box-shadow:none}
.dvtk50-cta--light{background:#fff;color:#15316a!important;border-color:#fff;box-shadow:0 10px 28px rgba(3,18,55,.22)}
/* First-stage homepage jubilee welcome, before existing stories/news. */
.dvtk50-home-banner{position:relative;padding:26px 0 15px;isolation:isolate;background:transparent}
.dvtk50-home-banner__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:30px;min-height:285px;padding:38px 65px;overflow:hidden;border-radius:30px;color:#fff;background:radial-gradient(circle at 80% 45%,rgba(49,106,203,.50),transparent 36%),linear-gradient(115deg,#061945 0%,#12377e 62%,#0b2051 100%);box-shadow:0 18px 45px rgba(5,29,79,.13)}
.dvtk50-home-banner__inner:before{content:"";pointer-events:none;position:absolute;inset:0;background-image:linear-gradient(rgba(225,235,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(225,235,255,.04) 1px,transparent 1px);background-size:45px 45px;mask-image:linear-gradient(90deg,transparent,#000)}
.dvtk50-home-banner__inner:after{content:"";position:absolute;inset:auto -50px -125px auto;width:390px;height:390px;border:1px solid rgba(240,209,139,.2);border-radius:50%;pointer-events:none}
.dvtk50-home-banner__copy{position:relative;z-index:2}
.dvtk50-home-banner__copy h2{margin:12px 0 14px!important;max-width:860px;color:#fff!important;font-size:clamp(30px,3.55vw,52px);line-height:1.12;letter-spacing:-.03em;font-weight:850}
.dvtk50-home-banner__copy h2 em{font-style:normal;color:var(--dvtk50-gold-light)}
.dvtk50-home-banner__copy p{margin:0 0 25px;max-width:680px;color:#d8e3fa;font-size:clamp(14px,1.1vw,17px);line-height:1.6}
.dvtk50-home-banner__emblem{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;text-decoration:none}
.dvtk50-home-banner__emblem img{width:min(100%,245px);height:auto;max-height:245px;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(2,13,40,.4));transition:transform .35s ease}
.dvtk50-home-banner__emblem:hover img{transform:scale(1.05) rotate(2deg)}
.dvtk50-home-banner__orb{position:absolute;pointer-events:none;border-radius:50%}
.dvtk50-home-banner__orb--one{top:-85px;right:80px;width:250px;height:250px;background:radial-gradient(circle,rgba(241,206,127,.19),transparent 72%)}
.dvtk50-home-banner__orb--two{bottom:-120px;left:18%;width:320px;height:320px;background:radial-gradient(circle,rgba(69,144,246,.13),transparent 72%)}
/* Dedicated /50 page */
.dvtk50-page{font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;color:var(--dvtk50-ink);overflow:hidden}
.dvtk50-page *{box-sizing:border-box}
.dvtk50-page a:focus-visible{outline:3px solid #d8ad51;outline-offset:3px}
.dvtk50-page h1,.dvtk50-page h2,.dvtk50-page h3{word-break:normal}
.dvtk50-hero{position:relative;isolation:isolate;min-height:610px;overflow:hidden;background:radial-gradient(ellipse at 80% 35%,rgba(52,109,214,.32),transparent 36%),radial-gradient(ellipse at 10% 90%,rgba(27,75,159,.46),transparent 46%),linear-gradient(112deg,#061533 0%,#0d2c6d 72%,#071d4c 100%);color:#fff}
.dvtk50-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,transparent 98%,rgba(255,255,255,.05) 100%),linear-gradient(transparent 98%,rgba(255,255,255,.05) 100%);background-size:62px 62px;pointer-events:none;mask-image:linear-gradient(90deg,transparent 20%,#000)}
.dvtk50-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#8f662a,#f5d586,#bc873a)}
.dvtk50-hero__layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:20px;padding-top:85px;padding-bottom:85px;min-height:610px}
.dvtk50-hero__content h1{margin:22px 0 22px;color:#fff!important;font-size:clamp(45px,5vw,82px);font-weight:860;line-height:1.06;letter-spacing:-.04em}
.dvtk50-hero__content h1 span{color:var(--dvtk50-gold-light)}
.dvtk50-hero__content>p{max-width:670px;color:#dae7fb;font-size:clamp(16px,1.35vw,19px);line-height:1.72;letter-spacing:0}
.dvtk50-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0 45px}
.dvtk50-hero__dates{display:flex;align-items:center;gap:15px;color:#f9dfa3;font-size:18px;font-weight:820;letter-spacing:.07em}
.dvtk50-hero__dates i{height:1px;width:50px;background:linear-gradient(90deg,#e4bb69,transparent)}
.dvtk50-hero__dates small{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#bdd0ef;font-weight:700;margin-left:8px}
.dvtk50-hero__art{position:relative;display:flex;align-items:center;justify-content:center;min-height:440px}
.dvtk50-hero__art img{position:relative;z-index:1;width:min(100%,470px);height:auto;object-fit:contain;filter:drop-shadow(0 25px 38px rgba(0,8,35,.38))}
.dvtk50-hero__halo{position:absolute;inset:7%;border-radius:50%;border:1px solid rgba(250,220,156,.23);box-shadow:0 0 0 35px rgba(239,199,120,.035),0 0 0 70px rgba(239,199,120,.025),inset 0 0 80px rgba(50,113,210,.2)}
.dvtk50-hero__art-label{position:absolute;bottom:-15px;left:0;right:0;text-align:center;color:rgba(211,226,255,.68);font-size:11px;letter-spacing:.28em;font-weight:700}
.dvtk50-milestones{background:#fff;position:relative;z-index:2;box-shadow:0 12px 34px rgba(25,54,107,.035)}
.dvtk50-milestones__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:32px;padding-bottom:32px}
.dvtk50-milestone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;border-right:1px solid #dfe6f2;padding:15px}
.dvtk50-milestone:last-child{border:0}
.dvtk50-milestone strong{font-size:clamp(36px,4.3vw,60px);font-weight:860;line-height:1.07;letter-spacing:-.035em;color:#143e85}
.dvtk50-milestone span{color:#60708d;font-size:14px;font-weight:620;line-height:1.4}
.dvtk50-section{padding:105px 0}
.dvtk50-history{background:linear-gradient(180deg,#f6f8fd,#eff3fb)}
.dvtk50-section__head{max-width:820px;margin:0 0 44px}
.dvtk50-section__eyebrow{color:#a16f27;letter-spacing:.14em;font-size:12px;font-weight:850;text-transform:uppercase}
.dvtk50-section__head h2,.dvtk50-tomorrow h2{margin:18px 0;color:#0b2451;font-size:clamp(33px,3.55vw,53px);line-height:1.13;letter-spacing:-.03em;font-weight:840}
.dvtk50-section__head h2 span{color:#be903c}
.dvtk50-section__head>p,.dvtk50-tomorrow p{color:#51627e;line-height:1.74;font-size:17px;max-width:735px}
.dvtk50-history__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;position:relative}
.dvtk50-history__grid:before{content:"";height:2px;background:linear-gradient(90deg,#c5963d,#7894c8);position:absolute;top:29px;left:20px;right:20px}
.dvtk50-history__point{position:relative;display:flex;flex-direction:column;gap:13px;min-height:305px;padding:57px 24px 23px;border:1px solid #e0e8f5;background:#fff;border-radius:21px;box-shadow:0 13px 34px rgba(24,55,109,.045)}
.dvtk50-history__point:before{content:"";position:absolute;top:20px;left:28px;z-index:1;width:19px;height:19px;background:#fff;border:5px solid #96a9ca;border-radius:50%;box-shadow:0 0 0 4px #f2f5fc}
.dvtk50-history__point--active:before{border-color:#c69a49}
.dvtk50-history__year{color:#1d4e9b;font-size:20px;font-weight:850}
.dvtk50-history__point h3{font-size:19px;line-height:1.25;color:#182d4e;margin:0}
.dvtk50-history__point p{font-size:14px;line-height:1.64;color:#576781;margin:0}
.dvtk50-history__tag{margin-top:auto;font-size:11px;letter-spacing:.06em;font-weight:800;text-transform:uppercase;color:#ae7c35}
.dvtk50-projects{background:#fff}
.dvtk50-projects__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.dvtk50-project-card{display:flex;flex-direction:column;min-height:265px;gap:15px;padding:28px 24px;border-radius:22px;background:#f7f9fd;border:1px solid #e7edf6;transition:transform .2s ease,box-shadow .2s ease}
.dvtk50-project-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(14,42,94,.08)}
.dvtk50-project-card__icon{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:12px;color:#d1a454;background:#152f63;font-size:14px;font-weight:900}
.dvtk50-project-card h3{margin:3px 0 0;color:#132f62;font-size:20px;line-height:1.25}
.dvtk50-project-card p{margin:0;color:#536480;font-size:14px;line-height:1.65}
.dvtk50-project-card__status{display:inline-block;align-self:flex-start;margin-top:auto;padding:7px 11px;border:1px solid rgba(180,143,65,.19);border-radius:999px;background:rgba(222,191,116,.13);color:#8e682d;font-size:11px;font-weight:770}
.dvtk50-tomorrow{background:radial-gradient(ellipse at 80% 40%,rgba(52,101,183,.3),transparent 43%),linear-gradient(120deg,#0c2255,#07183d);color:#fff}
.dvtk50-tomorrow__layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,.5fr);gap:50px;align-items:center}
.dvtk50-tomorrow h2{color:#fff;margin:20px 0}
.dvtk50-tomorrow h2 span{color:var(--dvtk50-gold-light)}
.dvtk50-tomorrow p{color:#cbd9f4;margin-bottom:29px}
.dvtk50-tomorrow__seal{display:flex;justify-content:center}
.dvtk50-tomorrow__seal img{width:min(100%,260px);height:auto;filter:drop-shadow(0 20px 25px rgba(0,0,0,.3))}
/* Dark theme: meaningful contrast for the jubilee landing and header badge. */
html.dark .dvtk50-page .dvtk50-milestones{background:#122441}
html.dark .dvtk50-page .dvtk50-milestone{border-color:#2a3e62}
html.dark .dvtk50-page .dvtk50-milestone strong{color:#f0d296}
html.dark .dvtk50-page .dvtk50-milestone span{color:#b7c7e2}
html.dark .dvtk50-page .dvtk50-history{background:linear-gradient(180deg,#0d1b35,#101f3b)}
html.dark .dvtk50-page .dvtk50-projects{background:#0d1b35}
html.dark .dvtk50-page .dvtk50-section__head h2{color:#f5f8ff}
html.dark .dvtk50-page .dvtk50-section__head h2 span{color:#f0d396}
html.dark .dvtk50-page .dvtk50-section__head>p{color:#c7d4ec}
html.dark .dvtk50-page .dvtk50-history__point,html.dark .dvtk50-page .dvtk50-project-card{background:#152948;border-color:#304564}
html.dark .dvtk50-page .dvtk50-history__point h3,html.dark .dvtk50-page .dvtk50-project-card h3{color:#f0f5ff}
html.dark .dvtk50-page .dvtk50-history__year{color:#f2d6a0}
html.dark .dvtk50-page .dvtk50-history__point p,html.dark .dvtk50-page .dvtk50-project-card p{color:#c0cee7}
html.dark .dvtk50-page .dvtk50-history__grid:before{background:#b58b46}
html.dark .dvtk50-page .dvtk50-history__point:before{box-shadow:0 0 0 4px #172847}
@media(max-width:1100px){
  .dvtk50-home-banner__inner{grid-template-columns:minmax(0,1fr) 205px;padding:30px 35px}
  .dvtk50-hero__layout{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)}
  .dvtk50-history__grid,.dvtk50-projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dvtk50-history__grid:before{display:none}
}
@media(max-width:760px){
  .dvtk50-home-banner{padding:12px 0 5px}
  .dvtk50-home-banner__inner{grid-template-columns:minmax(0,1fr) 140px;gap:10px;border-radius:22px;padding:25px 23px;min-height:240px}
  .dvtk50-home-banner__copy h2{font-size:clamp(23px,5vw,36px);margin-top:10px!important}
  .dvtk50-home-banner__copy p{font-size:13px;margin-bottom:15px}
  .dvtk50-home-banner__emblem img{width:138px;max-height:138px}
  .dvtk50-home-banner .dvtk50-cta{min-height:43px;padding:8px 12px;font-size:12px;gap:8px}
  .dvtk50-home-banner .dvtk50-kicker{font-size:10px;letter-spacing:.06em}
  .dvtk50-hero__layout{padding-top:60px;padding-bottom:60px;grid-template-columns:1fr;min-height:0;gap:15px}
  .dvtk50-hero__content h1{font-size:clamp(45px,7vw,65px)}
  .dvtk50-hero__art{min-height:320px;max-width:390px;margin:0 auto;width:100%}
  .dvtk50-hero__art img{max-width:300px}
  .dvtk50-hero__art-label{bottom:1px}
  .dvtk50-milestones__grid{padding-top:22px;padding-bottom:22px}
  .dvtk50-milestone{padding:12px 6px}
  .dvtk50-milestone span{font-size:12px}
  .dvtk50-section{padding:66px 0}
  .dvtk50-tomorrow__layout{grid-template-columns:1fr;gap:25px}
  .dvtk50-tomorrow__seal img{max-width:190px}
}
@media(max-width:490px){
  .dvtk50-home-banner__inner{grid-template-columns:minmax(0,1fr) 92px;gap:6px;padding:22px 15px;min-height:238px}
  .dvtk50-home-banner__copy h2{font-size:24px;line-height:1.16}
  .dvtk50-home-banner__emblem img{width:94px;max-height:94px}
  .dvtk50-home-banner__copy p{font-size:12px;line-height:1.5}
  .dvtk50-home-banner .dvtk50-kicker{font-size:9px;gap:4px}
  .dvtk50-home-banner .dvtk50-kicker__star{font-size:14px}
  .dvtk50-hero__content h1{font-size:42px}
  .dvtk50-hero__content>p{font-size:15px}
  .dvtk50-hero__actions{gap:10px;margin:25px 0}
  .dvtk50-hero__dates{gap:8px;font-size:16px}
  .dvtk50-hero__dates small{font-size:10px;margin-left:4px}
  .dvtk50-history__grid,.dvtk50-projects__grid{grid-template-columns:1fr}
  .dvtk50-history__point{min-height:240px}
  .dvtk50-project-card{min-height:215px}
  .dvtk50-milestone strong{font-size:34px}
}
@media(prefers-reduced-motion:reduce){
  .dvtk50-cta,.dvtk50-home-banner__emblem img,.dvtk50-project-card{transition:none!important}
}

/* Archive edition 0.0.82: content, photographs and documentary sources. */
.dvtk50-page{overflow:clip;--j-surface:#fff;--j-soft:#f2f5fb;--j-border:#dce4f0;--j-text:#13294a;--j-muted:#51627e;--j-accent:#174587}
.dvtk50-page section[id]{scroll-margin-top:115px}
.dvtk50-page [hidden]{display:none!important}
.dvtk50-page figure{margin:0}
.dvtk50-page button{font:inherit;cursor:pointer}
.dvtk50-page a{color:var(--j-accent)}
.dvtk50-page h3{font-weight:780}
.dvtk50-page .dvtk50-section__eyebrow{font-size:.875rem;letter-spacing:.10em}
.dvtk50-page .dvtk50-kicker{font-size:.875rem;letter-spacing:.09em}
.dvtk50-page .dvtk50-hero__art-label{font-size:.875rem;letter-spacing:.15em}
.dvtk50-page .dvtk50-hero__dates small{font-size:.875rem;letter-spacing:.06em}
.dvtk50-page .dvtk50-hero__content>p{font-size:1.125rem}
.dvtk50-chapters{background:var(--j-surface);border-bottom:1px solid var(--j-border)}
.dvtk50-chapters>div{display:flex;gap:10px 24px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px}
.dvtk50-chapters a{font-size:.9375rem;font-weight:730;text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
.dvtk50-chapters a:hover{border-color:#bd8c37}
.dvtk50-origin{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:start}
.dvtk50-origin h3{font-size:clamp(1.7rem,2.7vw,2.45rem);line-height:1.2;margin:20px 0;color:var(--j-text)}
.dvtk50-origin p,.dvtk50-origin li{font-size:1.0625rem;line-height:1.75;color:var(--j-muted)}
.dvtk50-origin p{margin:20px 0}
.dvtk50-origin ul{padding-left:24px;list-style:disc;margin:20px 0}
.dvtk50-origin li{margin:9px 0}
.dvtk50-origin__date{display:inline-block;font-size:1.4rem;font-weight:820;color:var(--j-accent);padding:10px 18px;background:var(--j-soft);border-left:4px solid #c69845}
.dvtk50-document{max-width:460px;margin:0 auto!important;background:var(--j-soft);padding:20px;border:1px solid var(--j-border);border-radius:14px;transform:rotate(1deg)}
.dvtk50-document img{display:block;width:100%;height:500px;object-fit:contain;background:#fff}
.dvtk50-page figcaption{line-height:1.5;color:var(--j-muted);font-size:.875rem}
.dvtk50-document figcaption{padding:14px 0 0}
.dvtk50-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.dvtk50-filters button{border:1px solid var(--j-border);background:var(--j-surface);color:var(--j-text);border-radius:999px;padding:11px 18px;font-size:.9375rem;min-height:44px;font-weight:650}
.dvtk50-filters button[aria-pressed=true]{color:#fff;background:#173d7a;border-color:#173d7a}
.dvtk50-filters button:hover{box-shadow:0 3px 12px rgba(24,55,109,.1)}
.dvtk50-page :is(button,summary):focus-visible{outline:3px solid #c69a49;outline-offset:4px}
.dvtk50-page .dvtk50-history__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.dvtk50-page .dvtk50-history__grid:before{display:none}
.dvtk50-page .dvtk50-history__point{padding:28px 25px;min-height:295px;gap:15px;border-top:3px solid #c39952}
.dvtk50-page .dvtk50-history__point:before{display:none}
.dvtk50-page .dvtk50-history__point p{font-size:1rem;line-height:1.65}
.dvtk50-page .dvtk50-history__year{font-size:1.1875rem;line-height:1.4}
.dvtk50-page .dvtk50-history__tag{font-size:.875rem;text-transform:none;letter-spacing:0;line-height:1.4;font-weight:650;display:block;color:#805b24}
.dvtk50-leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.dvtk50-leader{display:grid;grid-template-columns:155px minmax(0,1fr);gap:24px;padding:28px;background:var(--j-soft);border:1px solid var(--j-border);border-radius:18px;align-items:start}
.dvtk50-leader img{width:155px;height:215px;object-fit:cover;object-position:50% 20%;border-radius:10px}
.dvtk50-leader h3{font-size:1.5rem;line-height:1.25;color:var(--j-text);margin:12px 0 16px}
.dvtk50-leader p,.dvtk50-person p{font-size:1rem;line-height:1.7;color:var(--j-muted);margin:0}
.dvtk50-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.dvtk50-person{background:var(--j-surface);border:1px solid var(--j-border);border-radius:16px;overflow:hidden}
.dvtk50-person>img{width:100%;height:285px;object-fit:contain;background:var(--j-soft);padding:20px}
.dvtk50-person>div{padding:25px}
.dvtk50-person h3{color:var(--j-text);font-size:1.25rem;line-height:1.4;margin:0 0 10px}
.dvtk50-meta{font-size:.875rem!important;line-height:1.6;color:var(--j-muted);display:block}
.dvtk50-person .dvtk50-meta{margin-bottom:18px}
.dvtk50-growth{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:30px}
.dvtk50-growth article{padding:32px;border-left:3px solid #bf9345;background:var(--j-soft)}
.dvtk50-growth span{font-size:.875rem;line-height:1.5;color:var(--j-muted);font-weight:680}
.dvtk50-growth strong{display:block;font-size:clamp(2.25rem,3.8vw,3.6rem);line-height:1.3;letter-spacing:-.04em;color:var(--j-accent);margin:18px 0;font-weight:820}
.dvtk50-growth p{font-size:1rem;line-height:1.6;color:var(--j-muted);margin:0}
.dvtk50-source-link{display:inline-block;font-size:1rem;text-decoration:underline;text-underline-offset:5px;font-weight:700;line-height:1.5}
.dvtk50-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.dvtk50-gallery figure{border-radius:12px;overflow:hidden;background:var(--j-surface);border:1px solid var(--j-border)}
.dvtk50-gallery figure>a{display:block;position:relative;overflow:hidden;background:#dee5ef}
.dvtk50-gallery img{width:100%;height:250px;object-fit:cover;transition:transform .25s ease;display:block}
.dvtk50-gallery a:hover img{transform:scale(1.035)}
.dvtk50-gallery figcaption{padding:20px}
.dvtk50-gallery figcaption strong,.dvtk50-videos figcaption strong{display:block;font-size:1rem;line-height:1.4;color:var(--j-text);margin-bottom:7px}
.dvtk50-gallery figcaption span,.dvtk50-videos figcaption span{display:block;font-size:.875rem;line-height:1.6;color:var(--j-muted)}
.dvtk50-photo-open{position:absolute;bottom:12px;right:12px;padding:7px 12px;background:rgba(6,21,51,.88);color:#fff;font-size:.875rem;border-radius:6px}
.dvtk50-videos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.dvtk50-videos video{display:block;width:100%;aspect-ratio:16/9;background:#081b38;border-radius:12px;object-fit:contain}
.dvtk50-videos figcaption{padding:20px 0 0}
.dvtk50-page .dvtk50-tomorrow .dvtk50-section__head h2{color:#fff}
.dvtk50-page .dvtk50-tomorrow .dvtk50-section__head h2 span{color:#f6dd9a}
.dvtk50-page .dvtk50-tomorrow .dvtk50-section__head p{color:#d4e0f6}
.dvtk50-tomorrow .dvtk50-section__eyebrow{color:#e1bf78}
.dvtk50-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding:24px 0}
.dvtk50-stats article{border-left:1px solid rgba(240,211,150,.35);padding:8px 0 8px 22px}
.dvtk50-stats strong{display:block;font-size:clamp(2.5rem,4vw,3.75rem);line-height:1.2;font-weight:820;color:#f6dd9a;margin-bottom:14px}
.dvtk50-stats span{color:#d4e0f6;font-size:1rem;line-height:1.6}
.dvtk50-page .dvtk50-today-note{font-size:.875rem;line-height:1.7;color:#bbcdeb;margin:10px 0 40px}
.dvtk50-directions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0 0 36px}
.dvtk50-directions article{border:1px solid rgba(175,200,240,.25);padding:25px;border-radius:12px;background:rgba(255,255,255,.04)}
.dvtk50-directions article>span{font-size:.875rem;color:#eacb87;font-weight:750}
.dvtk50-directions h3{font-size:1.125rem;line-height:1.4;color:#fff;margin:16px 0}
.dvtk50-directions p{font-size:1rem;line-height:1.6;color:#d4e0f6;margin:0}
.dvtk50-sources{border:1px solid var(--j-border);border-radius:12px;background:var(--j-soft);color:var(--j-text)}
.dvtk50-sources summary{display:list-item;list-style:disclosure-closed;padding:22px 26px;cursor:pointer;font-size:1.0625rem;font-weight:740;line-height:1.5}
.dvtk50-sources[open] summary{list-style:disclosure-open}
.dvtk50-sources ul{list-style:disc;margin:0;padding:0 35px 25px 50px}
.dvtk50-sources li{font-size:1rem;line-height:1.8;margin:12px 0;color:var(--j-muted);overflow-wrap:anywhere}
.dvtk50-sources a{text-decoration:underline}
.dvtk50-next{margin:55px 0 0;border-top:1px solid var(--j-border);padding-top:40px;max-width:780px}
.dvtk50-next h3{color:var(--j-text);font-size:1.75rem;line-height:1.4;margin:16px 0}
.dvtk50-next p{color:var(--j-muted);font-size:1.0625rem;line-height:1.7;margin:0 0 20px}
.dvtk50-lightbox{border:1px solid #49617f;border-radius:14px;background:#07152b;color:#fff;padding:20px;width:min(1120px,94vw);max-width:94vw;max-height:94dvh;overflow:auto}
.dvtk50-lightbox::backdrop{background:rgba(0,7,20,.92)}
.dvtk50-lightbox__top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px;color:#d4e0f6;font-size:.9375rem}
.dvtk50-lightbox button,.dvtk50-lightbox__controls a{background:#17365b;border:1px solid #49617f;border-radius:8px;color:#fff;padding:10px 14px;font-size:.9375rem;min-height:44px;cursor:pointer;text-decoration:none}
.dvtk50-lightbox button:disabled{opacity:.45;cursor:default}
.dvtk50-lightbox>img{max-height:66dvh;max-width:100%;width:auto;margin:auto;object-fit:contain;display:block}
.dvtk50-lightbox>p{font-size:1rem;line-height:1.6;color:#e5edfb;margin:18px 0}
.dvtk50-lightbox__controls{display:flex;gap:10px;flex-wrap:wrap}
html.dark .dvtk50-page{--j-surface:#152948;--j-soft:#10213b;--j-border:#304564;--j-text:#f0f5ff;--j-muted:#c0cee7;--j-accent:#f0d396}
html.dark .dvtk50-page .dvtk50-history__tag{color:#f0d396}
html.dark .dvtk50-page .dvtk50-section__eyebrow{color:#efc981}
html.dark .dvtk50-filters button[aria-pressed=true]{background:#f0d396;color:#0b2243;border-color:#f0d396}
@media(max-width:1150px){.dvtk50-leader{grid-template-columns:120px minmax(0,1fr);padding:22px;gap:20px}.dvtk50-leader img{width:120px;height:175px}.dvtk50-directions{grid-template-columns:repeat(2,minmax(0,1fr))}.dvtk50-origin{gap:35px}.dvtk50-growth article{padding:24px}}
@media(max-width:900px){.dvtk50-leaders{grid-template-columns:1fr}.dvtk50-page .dvtk50-history__grid,.dvtk50-gallery,.dvtk50-people{grid-template-columns:repeat(2,minmax(0,1fr))}.dvtk50-leader{grid-template-columns:155px minmax(0,1fr)}.dvtk50-leader img{width:155px;height:205px}.dvtk50-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dvtk50-origin{grid-template-columns:1fr}.dvtk50-document{transform:none;width:100%}.dvtk50-growth{grid-template-columns:1fr}.dvtk50-growth article{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;align-items:center}.dvtk50-growth strong{margin:0;grid-row:span 2;grid-column:2}.dvtk50-growth p{grid-column:1}.dvtk50-videos{grid-template-columns:1fr}}
@media(max-width:560px){.dvtk50-page .dvtk50-history__grid,.dvtk50-gallery,.dvtk50-people,.dvtk50-directions{grid-template-columns:1fr}.dvtk50-chapters>div{gap:8px 18px}.dvtk50-chapters a{font-size:.875rem}.dvtk50-gallery img{height:245px}.dvtk50-leader{grid-template-columns:1fr}.dvtk50-leader img{width:150px;height:205px}.dvtk50-page .dvtk50-history__point{min-height:0}.dvtk50-stats{gap:18px}.dvtk50-stats article{padding-left:14px}.dvtk50-stats strong{font-size:2.5rem}.dvtk50-stats span{font-size:.9375rem}.dvtk50-growth article{display:block}.dvtk50-growth strong{margin:15px 0}.dvtk50-lightbox{padding:14px}.dvtk50-lightbox>img{max-height:56dvh}.dvtk50-document img{height:430px}.dvtk50-page .dvtk50-hero__content>p{font-size:1rem}.dvtk50-page .dvtk50-hero__dates{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.dvtk50-gallery img{transition:none}}

/* Countdown shared by the jubilee page and homepage banner. */
.dvtk50-countdown{max-width:530px;margin:0 0 30px;color:#fff}
.dvtk50-countdown [hidden]{display:none!important}
.dvtk50-countdown__heading{display:flex;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;align-items:center;margin-bottom:12px;font-size:.875rem;line-height:1.5}
.dvtk50-countdown__heading>span{font-weight:750;color:#f6dd9a}
.dvtk50-countdown__heading time{color:#d4e0f6}
.dvtk50-countdown__digits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dvtk50-countdown__digits>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:15px 8px;background:rgba(255,255,255,.06);border:1px solid rgba(240,211,150,.35);border-radius:12px;min-width:0}
.dvtk50-countdown__digits strong{font-size:2.625rem;font-weight:820;line-height:1.12;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:#f6dd9a}
.dvtk50-countdown__digits span{font-size:.875rem;line-height:1.4;color:#dae7fb}
.dvtk50-countdown .dvtk50-countdown__celebration{margin:0!important;padding:20px;border:1px solid rgba(240,211,150,.45);border-radius:12px;background:rgba(255,255,255,.07);color:#f6dd9a!important;font-size:clamp(1.5rem,3vw,2.1rem)!important;font-weight:820;line-height:1.35!important}
.dvtk50-hero__content .dvtk50-hero__actions{margin-bottom:26px}
.dvtk50-countdown--compact{max-width:390px;margin:0 0 22px}
.dvtk50-countdown--compact .dvtk50-countdown__digits{gap:8px}
.dvtk50-countdown--compact .dvtk50-countdown__digits>div{padding:10px 6px;border-radius:9px}
.dvtk50-countdown--compact .dvtk50-countdown__digits strong{font-size:1.875rem}
.dvtk50-countdown--compact .dvtk50-countdown__heading{margin-bottom:8px}
@media(max-width:760px){.dvtk50-countdown--compact .dvtk50-countdown__heading{display:block}.dvtk50-countdown--compact .dvtk50-countdown__heading time{display:block}.dvtk50-countdown--compact .dvtk50-countdown__digits{gap:5px}.dvtk50-countdown--compact .dvtk50-countdown__digits>div{padding:9px 3px}.dvtk50-countdown--compact .dvtk50-countdown__digits strong{font-size:1.5rem}.dvtk50-countdown--compact .dvtk50-countdown__digits span{font-size:.875rem}}
@media(max-width:490px){.dvtk50-countdown__digits{gap:7px}.dvtk50-countdown__digits>div{padding:13px 4px}.dvtk50-countdown__digits strong{font-size:2rem}.dvtk50-countdown--compact .dvtk50-countdown__digits strong{font-size:1.125rem}.dvtk50-countdown--compact .dvtk50-countdown__digits span{font-size:.875rem}.dvtk50-countdown--compact{margin-bottom:15px}.dvtk50-countdown--compact .dvtk50-countdown__heading{font-size:.8125rem}.dvtk50-countdown--compact .dvtk50-countdown__digits>div{border-radius:6px;padding:8px 2px}}

/* 0.0.86: lightweight photo transition and Ghost editor content. */
.dvtk50-era{background:#081d42;color:#fff;padding:0 0 32px}
.dvtk50-era__photos{display:grid;grid-template-columns:1fr 1fr;position:relative;border-radius:18px;overflow:hidden;isolation:isolate}
.dvtk50-era__photos figure{position:relative;min-width:0;margin:0}
.dvtk50-era__photos figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,17,42,.92),transparent 70%);pointer-events:none}
.dvtk50-era__photos img{display:block;width:100%;height:360px;object-fit:cover}
.dvtk50-era__photos figure:first-child img{filter:grayscale(1)}
.dvtk50-era__photos figcaption{position:absolute;z-index:1;bottom:32px;left:34px;color:#fff}
.dvtk50-era__photos strong{display:block;font-size:clamp(2.8rem,5vw,4rem);font-weight:850;color:#f5d798;line-height:1.2}
.dvtk50-era__photos span{font-size:1rem;color:#fff}
.dvtk50-era__photos .dvtk50-era__bridge{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#f5d798;color:#0a2148;font-size:2rem;border:5px solid #081d42}
.dvtk50-era p{margin:18px 0 0;color:#c7d7f0;font-size:.9375rem;line-height:1.6}
.dvtk50-awards__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.dvtk50-page .dvtk50-awards__grid .dvtk50-project-card{background:var(--j-soft);color:var(--j-text);border-color:var(--j-border);min-height:0;gap:18px}
.dvtk50-page .dvtk50-awards__grid h3{color:var(--j-text)}
.dvtk50-page .dvtk50-awards__grid p{color:var(--j-muted);font-size:1rem}
.dvtk50-gallery--feature{grid-template-columns:1fr 1fr;margin:30px 0}
.dvtk50-gallery--feature img{height:320px;object-fit:contain;background:var(--j-soft)}
.dvtk50-achievements{margin:30px 0 0}
.dvtk50-person--text{border-top:3px solid #c39952}
.dvtk50-sport__archive{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-bottom:35px}
.dvtk50-sport__archive img{width:100%;height:auto;border-radius:12px;display:block}
.dvtk50-sport__archive figcaption{padding:12px 0}
.dvtk50-sport__archive h3{font-size:1.65rem;color:var(--j-text);line-height:1.3;margin:14px 0}
.dvtk50-sport__archive p{font-size:1rem;color:var(--j-muted);line-height:1.7;margin:14px 0}
.dvtk50-sport__link{margin-top:30px}
.dvtk50-editor{display:block;max-width:100%;color:var(--j-text);font-size:1.0625rem;line-height:1.75;overflow-wrap:anywhere}
.dvtk50-editor--supplement{margin-top:40px;padding-top:35px;border-top:1px solid var(--j-border)}
.dvtk50-editor>:first-child{margin-top:0}
.dvtk50-editor :is(h2,h3,h4){color:var(--j-text);line-height:1.3;margin:1.6em 0 .7em}
.dvtk50-editor h2{font-size:2rem}.dvtk50-editor h3{font-size:1.5rem}
.dvtk50-editor p{margin:1em 0;color:var(--j-muted)}
.dvtk50-editor :is(ul,ol){padding-left:1.5em;list-style:revert;margin:1em 0}
.dvtk50-editor :is(img,video,iframe){max-width:100%}
.dvtk50-editor .kg-image{width:auto;height:auto;margin:auto;display:block;border-radius:12px}
.dvtk50-editor figure{margin:1.5em 0}
.dvtk50-editor figcaption{text-align:center;margin:10px 0}
.dvtk50-editor .kg-gallery-container{display:flex;flex-direction:column;gap:12px}
.dvtk50-editor .kg-gallery-row{display:flex;gap:12px}
.dvtk50-editor .kg-gallery-image{flex:1;min-width:0}
.dvtk50-editor .kg-gallery-image img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}
.dvtk50-editor .kg-width-wide,.dvtk50-editor .kg-width-full{width:100%;max-width:100%;margin-left:0;margin-right:0}
.dvtk50-editor .kg-video-container{position:relative;max-width:100%}
.dvtk50-editor video{width:100%;height:auto;border-radius:12px;background:#081b38}
.dvtk50-editor blockquote{border-left:3px solid #c39952;padding:8px 22px;margin:25px 0;background:var(--j-soft)}
@media(max-width:900px){.dvtk50-awards__grid{grid-template-columns:1fr}.dvtk50-sport__archive{grid-template-columns:1fr;gap:20px}.dvtk50-era__photos img{height:290px}}
@media(max-width:560px){.dvtk50-gallery--feature{grid-template-columns:1fr}.dvtk50-gallery--feature img{height:260px}.dvtk50-era__photos img{height:250px}.dvtk50-era__photos figcaption{left:16px;bottom:22px}.dvtk50-era__photos strong{font-size:2.3rem}.dvtk50-era__photos span{font-size:.875rem}.dvtk50-era__photos .dvtk50-era__bridge{width:42px;height:42px;font-size:1.4rem;border-width:3px}.dvtk50-editor h2{font-size:1.7rem}.dvtk50-editor .kg-gallery-row{gap:6px}}
.dvtk50-editor .kg-video-overlay,.dvtk50-editor .kg-video-player-container{display:none}
@supports(content-visibility:auto){.dvtk50-person,.dvtk50-project-card{content-visibility:auto;contain-intrinsic-size:auto 330px}}

/* Tables and expanded archive sections */
.dvtk50-subheading{margin:44px 0 14px;font-size:1.6rem;color:var(--j-text)}
.dvtk50-table-scroll{overflow-x:auto;max-width:100%;margin:20px 0}
.dvtk50-table{border-collapse:collapse;width:100%;text-align:left;font-size:.95rem;color:var(--j-text)}
.dvtk50-table th,.dvtk50-table td{border-bottom:1px solid var(--j-border);padding:14px 16px;vertical-align:top;line-height:1.6}
.dvtk50-table th{background:var(--j-soft);font-weight:700}.dvtk50-table th:first-child{min-width:95px}
.dvtk50-current-team img{object-fit:contain;object-position:center;background:var(--j-soft)}
#dvtk50-campus,#dvtk50-life,#dvtk50-alumni,#dvtk50-departments{scroll-margin-top:110px}
.dvtk50-sources{margin:18px 0}.dvtk50-sources>p{line-height:1.8;color:var(--j-muted)}
@supports(content-visibility:auto){#dvtk50-campus .dvtk50-gallery figure,#dvtk50-life .dvtk50-gallery figure,#dvtk50-gallery figure{content-visibility:auto;contain-intrinsic-size:auto 380px}}

/* Booklet portraits keep the original slide crop; the archive opens in batches. */
.dvtk50-team-head{margin-top:48px}
.dvtk50-team-head h3{font-size:clamp(1.45rem,3vw,2rem);color:var(--j-text);margin:0 0 14px}
.dvtk50-gallery-controls{text-align:center;margin-top:32px}
.dvtk50-gallery-count{color:var(--j-muted);font-size:.95rem;margin-bottom:16px}
.dvtk50-gallery-controls[hidden],.dvtk50-gallery-more[hidden]{display:none!important}

/* Event blocks and the complete photoarchive action. */
.dvtk50-era__photos strong.dvtk50-era__present{font-size:clamp(1.35rem,2.8vw,2.6rem);max-width:100%;line-height:1.16}
.dvtk50-era__photos figure:last-of-type img{object-position:50% 42%}
.dvtk50-archive-controls{text-align:center;margin:24px 0 32px}
.dvtk50-archive-all{display:inline-flex;align-items:center;justify-content:center;gap:18px;width:min(100%,640px);min-height:70px;padding:18px 28px;border:1px solid #c4973e;border-radius:16px;background:linear-gradient(115deg,#f5dca0,#deb35d);color:#102e58;font-family:inherit;font-weight:800;font-size:1.2rem;line-height:1.3;box-shadow:0 8px 22px rgba(17,43,88,.13);cursor:pointer}
.dvtk50-archive-all span{font-size:.9rem;font-weight:700;padding:7px 12px;background:rgba(255,255,255,.45);border-radius:999px;white-space:nowrap}
.dvtk50-archive-all:hover{background:linear-gradient(115deg,#ffe6aa,#e8bd65)}
.dvtk50-archive-all:focus-visible,.dvtk50-archive-event summary:focus-visible,.dvtk50-archive-event button:focus-visible{outline:3px solid #6489ca;outline-offset:4px}
.dvtk50-archive-count{font-size:.9rem;line-height:1.55;color:var(--j-muted);margin:14px 0 0}
.dvtk50-archive-blocks{display:grid;gap:16px}
.dvtk50-archive-event{background:var(--j-surface);border:1px solid var(--j-border);border-radius:16px;overflow:hidden}
.dvtk50-archive-event>summary{display:flex;align-items:center;gap:18px;padding:23px 26px;color:var(--j-text);font-size:1.15rem;font-weight:750;line-height:1.45;cursor:pointer;list-style:none}
.dvtk50-archive-event>summary::-webkit-details-marker{display:none}
.dvtk50-archive-event>summary:before{content:'+';flex:0 0 26px;color:var(--j-muted);font-size:1.6rem;font-weight:500}
.dvtk50-archive-event[open]>summary:before{content:'−'}
.dvtk50-archive-event__count{margin-left:auto;color:var(--j-muted);white-space:nowrap;font-size:.875rem;font-weight:600}
.dvtk50-archive-event>.dvtk50-gallery{padding:0 26px 24px}
.dvtk50-archive-event__controls{text-align:center;padding:0 26px 24px}
.dvtk50-archive-event__controls button{padding:13px 20px;min-height:48px;border:1px solid var(--j-border);border-radius:10px;color:var(--j-text);background:var(--j-soft);font-size:.95rem;font-weight:700;cursor:pointer}
.dvtk50-archive-controls[hidden],.dvtk50-archive-event[hidden],[data-event-all][hidden]{display:none!important}
@media(max-width:560px){.dvtk50-archive-all{font-size:1.05rem;padding:16px 18px;gap:10px}.dvtk50-archive-event>summary{padding:18px 15px;gap:10px;font-size:1rem}.dvtk50-archive-event>.dvtk50-gallery{padding:0 15px 18px}.dvtk50-archive-event__count{font-size:.8rem}.dvtk50-era__photos strong.dvtk50-era__present{font-size:1.25rem}}
