/* DCAT shared chrome — linked by every page DC. Animations, dark mode,
   phone layout and the Newsreader/Figtree type system.

   Phone rules are authored ONCE against html[data-mob="1"] (set by each page DC
   when the manual preview toggle is on) and mirrored verbatim into a generated
   @media (max-width: 900px) block at the foot of this file, so a genuinely narrow
   window gets the identical layout with no JS involved. html[data-view="mobile"]
   is reserved for the 390px preview frame itself (desk background, page width,
   frame-relative slope drop). */
html[data-scheme="dark"] [data-sitefoot="1"] { background: #251D3D !important; }
[data-filmplayer="1"]:hover [data-playdot="1"] { background: #C4436A !important; transform: scale(1.07); }
html[data-mob="1"] [data-filmplayer="1"] { width: 100% !important; }
html[data-mob="1"] [data-filmstage="1"] { margin-top: 4px !important; }
@media (max-width: 1100px) { [data-filmplayer="1"] { width: 100% !important; } }
[data-page="1"] { position: relative; }
@keyframes heroWord { from { opacity: 0; transform: translateY(26px); filter: blur(7px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes ruleIn { from { opacity: 0; transform: scaleX(0); } to { opacity: 1; transform: none; } }
@keyframes bandIn { from { opacity: 0; transform: translateY(52px); } to { opacity: 1; transform: none; } }
[data-heroline="1"] { display: block; word-spacing: 0.04em; }
[data-filmoverlay="1"][data-hidden="1"] { opacity: 0; pointer-events: none; }
[data-filmoverlay="1"]:hover [data-playdot="1"] { background: #C4436A; transform: scale(1.06); }
[data-portrait="1"] { transition: transform .35s ease; }
[data-portrait="1"]:hover { transform: rotate(0deg) scale(1.02); }
@media (max-width: 900px) { [data-findus="1"], [data-page="1"] [data-portrait="1"] + div { }
  [data-portrait="1"] { max-width: 320px; }
}
@keyframes drawM { from { stroke-dashoffset: var(--slope-dash-mob); } to { stroke-dashoffset: 0; } }
@keyframes drawA { from { stroke-dashoffset: var(--slope-dash); } to { stroke-dashoffset: 0; } }
@keyframes drawCross { from { stroke-dashoffset: -220; } to { stroke-dashoffset: 0; } }
@keyframes drawC { from { stroke-dashoffset: 480; } to { stroke-dashoffset: 0; } }
@media (min-width: 901px) and (max-width: 1080px) {
  [data-sitehead="1"] > div { gap: 16px !important; }
  [data-sitehead="1"] nav { gap: 18px !important; font-size: 15px !important; }
  [data-sitehead="1"] [data-logo] { height: 46px !important; }
  [data-sitehead="1"] > div > div:last-child a { font-size: 14px !important; padding: 0 12px !important; }
}
svg[style*="ruleIn"] { transform-origin: left center; }

[data-sitehead="1"]:not([data-overlay="1"]) { background: rgba(251,248,243,0.94) !important; backdrop-filter: blur(8px); border-bottom: 1px solid rgba(59,47,90,0.12); }
[data-sitehead="1"] { transition: background .35s ease; }
[data-sitehead="1"][data-overlay="1"][data-scrolled="1"] { background: #18112A !important; }
[data-sitehead="1"] > div { box-sizing: content-box; will-change: padding-top; transition: padding-top .5s cubic-bezier(.33,1,.68,1); }
[data-sitehead="1"][data-overlay="1"]:not([data-scrolled="1"]) > div { padding-top: 52px !important; padding-bottom: 16px !important; }
[data-sitehead="1"] [data-logo] { transform-origin: left center; will-change: transform; transition: transform .5s cubic-bezier(.33,1,.68,1); }
@keyframes drawSquiggle { from { stroke-dashoffset: 132; } to { stroke-dashoffset: 0; } }
@keyframes drawSlope { from { stroke-dashoffset: 2600; } to { stroke-dashoffset: 0; } }
[data-sitehead="1"][data-overlay="1"]:not([data-scrolled="1"]) [data-logo] { transform: scale(1.42); }
[data-collage="1"] { filter: grayscale(1) sepia(0.32) hue-rotate(220deg) saturate(1.5) brightness(0.92); transition: filter .4s ease, transform .35s ease !important; }
[data-collage="1"]:hover { filter: none; }
[data-sitehead="1"][data-overlay="1"] nav a { color: rgba(255,255,255,0.82) !important; }
[data-sitehead="1"][data-overlay="1"] nav a[data-active="1"] { color: #fff !important; border-bottom-color: #EB5D78 !important; }
[data-sitehead="1"][data-overlay="1"] [data-logo="light"] { display: none !important; }
[data-sitehead="1"][data-overlay="1"] [data-logo="dark"] { display: block !important; }
[data-sitehead="1"][data-overlay="1"] [data-burger="1"] { border-color: rgba(255,255,255,0.4) !important; }
[data-sitehead="1"][data-overlay="1"] [data-burger="1"] [data-bar] { background: #F4EFE3 !important; }
[data-sitehead="1"][data-overlay="1"] a[style*="1.5px solid rgb(101, 83, 158)"] { border-color: rgba(255,255,255,0.55) !important; color: #fff !important; }
[data-sitehead="1"][data-overlay="1"] a[style*="1.5px solid rgb(101, 83, 158)"]:hover { background: rgba(255,255,255,0.14) !important; }

html[data-mob="1"] [data-hero="1"] [data-heroshot="1"] { aspect-ratio: 3 / 4 !important; }
html[data-mob="1"] [data-herotext="1"] { top: auto !important; bottom: 130px !important; max-width: none !important; gap: 14px !important; }
html[data-mob="1"] [data-slopepath="full"] { display: none !important; }
html[data-mob="1"] [data-slopepath="mob"] { display: block !important; }
html[data-mob="1"] [data-slopeline="1"] { height: 15vw !important; }
html[data-mob="1"] [data-vv="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 8px !important; font-size: 30px !important; }
html[data-mob="1"] [data-heroline="1"] br { display: none; }
html[data-mob="1"] [data-heroline="1"] { font-size: 27px !important; line-height: 1.22 !important; max-width: none !important; }
@media (max-width: 900px) {
  [data-hero="1"] [data-heroshot="1"] { aspect-ratio: 4 / 5 !important; }
  [data-herotext="1"] { top: auto !important; bottom: 126px !important; max-width: none !important; gap: 16px !important; }
  [data-slopepath="full"] { display: none !important; }
  [data-slopepath="mob"] { display: block !important; }
  [data-slopeline="1"] { height: 15vw !important; }
  [data-vv="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 8px !important; font-size: 30px !important; }
  [data-heroline="1"] br { display: none; }
  [data-heroline="1"] { font-size: clamp(25px, 6.2vw, 36px) !important; line-height: 1.22 !important; max-width: none !important; }
}
[data-sitehead="1"] nav a[data-active="1"] { color: #3B2F5A !important; border-bottom-color: #EB5D78 !important; }
  :root {
    --g: clamp(20px, 4.4vw, 64px); --m: max(var(--g), calc((100vw - 1400px) / 2));
    /* ONE slope for every angled edge on the site. --slope-tan must be tan(--slope). */
    --slope: 3deg; --slope-tan: 0.0524;
    --slope-drop: calc(100vw * var(--slope-tan));
    --slope-inset: 34px;
    --slope-cut: calc(86px * var(--slope-tan));
    --slope-dash: 150vw;
    --slope-dash-mob: 140vw;
  }
  body { margin: 0; background: #FBF8F3; -webkit-font-smoothing: antialiased; }
  a { color: #65539E; }
  a:hover { color: #EB5D78; }
  @keyframes fadeIn { from { opacity: 0 } to { opacity: 1 } }
  @keyframes riseIn { from { opacity: 0; transform: translateY(14px) } to { opacity: 1; transform: none } }
  @keyframes riseInB { from { opacity: 0; transform: translateY(14px) } to { opacity: 1; transform: none } }
  @keyframes tileIn { from { opacity: 0; transform: translateY(12px) scale(0.94) } to { opacity: 1; transform: none } }
  @keyframes tintFlash { 0% { opacity: 0.62 } 55% { opacity: 0.42 } 100% { opacity: 0 } }

  html[data-reveal-on="1"] [data-quilt="1"] [data-tile="1"] { opacity: 0; }
  [data-reveal="1"][data-in] [data-quilt="1"] [data-tile="1"] {
    animation-name: tileIn; animation-duration: .5s; animation-timing-function: cubic-bezier(.2,.8,.2,1); animation-fill-mode: both;
  }
  [data-tile="1"] > span:first-child { animation-delay: inherit; }
  [data-tile="1"] > span:first-child::after { content: ""; position: absolute; inset: 0; background: #65539E; opacity: 0; pointer-events: none; animation-delay: inherit; }
  [data-reveal="1"][data-in] [data-quilt="1"] [data-tile="1"] > span:first-child::after {
    animation-name: tintFlash; animation-duration: .72s; animation-timing-function: ease-out; animation-fill-mode: both;
  }
  [data-tile="1"]:hover > span:first-child::after { opacity: 0 !important; }

  @keyframes kenburns { from { transform: scale(1) translate(0,0) } to { transform: scale(1.1) translate(-1.5%, -1%) } }
  @keyframes floaty { from { transform: translateY(0) rotate(0deg) } to { transform: translateY(-18px) rotate(6deg) } }
  @keyframes slowspin { to { transform: rotate(360deg) } }


  html[data-reveal-on="1"] [data-reveal="1"] > * { opacity: 0; transform: translateY(34px); transition: opacity .9s cubic-bezier(.2,.8,.2,1), transform .9s cubic-bezier(.2,.8,.2,1); }
  html[data-reveal-on="1"] [data-reveal="1"] > *:nth-child(2) { transition-delay: .12s; }
  html[data-reveal-on="1"] [data-reveal="1"] > *:nth-child(3) { transition-delay: .24s; }
  html[data-reveal-on="1"] [data-reveal="1"] > *:nth-child(4) { transition-delay: .36s; }
  html[data-reveal-on="1"] [data-reveal="1"] > *:nth-child(5) { transition-delay: .48s; }
  html[data-reveal-on="1"] [data-reveal="1"] > *:nth-child(6) { transition-delay: .60s; }
  html[data-reveal-on="1"] [data-reveal="1"][data-in="1"] > * { opacity: 1; transform: none; }

  [data-band="1"] [data-arrow="1"] { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
  [data-band="1"]:hover [data-arrow="1"] { transform: translateX(10px); }
  [data-band="1"] [data-zoom="1"] { transition: transform 1.2s cubic-bezier(.2,.8,.2,1); }
  [data-band="1"]:hover [data-zoom="1"] { transform: scale(1.07); }

  [data-tile="1"] > span:first-child { transition: background .3s ease, transform .4s cubic-bezier(.2,.8,.2,1); }
  [data-tile="1"]:hover > span:first-child { transform: translateY(-6px); }

  [data-news="1"] { transition: border-color .3s ease; }
  [data-news="1"]:hover { border-color: #EB5D78; }
  [data-news="1"] > span:last-child { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
  [data-news="1"]:hover > span:last-child { transform: translateX(6px); }

  [data-nav="1"] { opacity: 0; visibility: hidden; clip-path: inset(0 0 100% 0); transition: opacity .4s ease, visibility .4s, clip-path .55s cubic-bezier(.76,0,.24,1); }
  [data-nav="1"][data-open="1"] { opacity: 1 !important; visibility: visible !important; clip-path: inset(0 0 0 0) !important; }
  [data-nav="1"] [data-navcol="1"] { opacity: 0; transform: translateY(28px); transition: opacity .5s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
  [data-nav="1"][data-open="1"] [data-navcol="1"] { opacity: 1; transform: none; }
  [data-nav="1"][data-open="1"] [data-navcol="1"]:nth-child(2) { transition-delay: .1s; }
  [data-nav="1"][data-open="1"] [data-navcol="1"]:nth-child(3) { transition-delay: .18s; }
  [data-nav="1"][data-open="1"] [data-navcol="1"]:last-child { transition-delay: .26s; }

  [data-reveal="1"][data-in] > *:nth-child(2) { transition-delay: .07s; }
  [data-reveal="1"][data-in] > *:nth-child(3) { transition-delay: .14s; }
  [data-reveal="1"][data-in] > *:nth-child(4) { transition-delay: .21s; }
  [data-reveal="1"][data-in] > *:nth-child(5) { transition-delay: .28s; }
  [data-reveal="1"][data-in] > *:nth-child(6) { transition-delay: .35s; }

  html[data-reveal-on="1"] [data-newsgrid="1"] > a,
  html[data-reveal-on="1"] [data-news="1"] { opacity: 0; transform: translateY(22px); transition: opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1); }
  [data-reveal="1"][data-in] [data-newsgrid="1"] > a,
  [data-reveal="1"][data-in] [data-news="1"] { opacity: 1; transform: none; }
  [data-reveal="1"][data-in] [data-news="1"]:nth-child(1) { transition-delay: .12s; }
  [data-reveal="1"][data-in] [data-news="1"]:nth-child(2) { transition-delay: .22s; }
  [data-reveal="1"][data-in] [data-news="1"]:nth-child(3) { transition-delay: .32s; }
  [data-reveal="1"][data-in] [data-news="1"]:nth-child(4) { transition-delay: .42s; }

  [data-burger="1"][data-open="1"] { border-color: rgba(255,255,255,0.4); }
  [data-burger="1"][data-open="1"] [data-bar] { background: #FBF8F3; }
  [data-burger="1"][data-open="1"] [data-bar="1"] { transform: translateY(5.5px) rotate(45deg); }
  [data-burger="1"][data-open="1"] [data-bar="2"] { opacity: 0; transform: scaleX(0.4); }
  [data-burger="1"][data-open="1"] [data-bar="3"] { transform: translateY(-5.5px) rotate(-45deg); }

  [data-nav="1"] { overflow-y: auto; }

  [data-navslope] { display: none !important; }
  [data-nav="1"] [data-navrule] { transform-origin: left center; transform: scaleX(0); transition: transform .75s cubic-bezier(.2,.8,.2,1); }
  [data-nav="1"][data-open="1"] [data-navrule] { transform: scaleX(1); }
  [data-navgrid] > div:nth-child(1) [data-navrule] { transition-delay: .10s; }
  [data-navgrid] > div:nth-child(2) [data-navrule] { transition-delay: .17s; }
  [data-navgrid] > div:nth-child(3) [data-navrule] { transition-delay: .24s; }
  [data-navgrid] > div:nth-child(4) [data-navrule] { transition-delay: .31s; }

  [data-nav="1"] [data-navitem] { opacity: 0; transform: translateY(16px); transition: opacity .5s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
  [data-nav="1"][data-open="1"] [data-navitem] { opacity: 1; transform: none; }
  [data-navgrid] > div:nth-child(1) > [data-navhrow="1"] > [data-navitem] { transition-delay: .14s; }
  [data-navgrid] > div:nth-child(2) > [data-navhrow="1"] > [data-navitem] { transition-delay: .21s; }
  [data-navgrid] > div:nth-child(3) > [data-navhrow="1"] > [data-navitem] { transition-delay: .28s; }
  [data-navgrid] > div:nth-child(4) > [data-navhrow="1"] > [data-navitem] { transition-delay: .35s; }
  [data-navgrid] > div:nth-child(1) > [data-navacc2="1"] > div > a:nth-child(1) { transition-delay: .26s; }
  [data-navgrid] > div:nth-child(1) > [data-navacc2="1"] > div > a:nth-child(2) { transition-delay: .31s; }
  [data-navgrid] > div:nth-child(1) > [data-navacc2="1"] > div > a:nth-child(3) { transition-delay: .36s; }
  [data-navgrid] > div:nth-child(1) > [data-navacc2="1"] > div > a:nth-child(4) { transition-delay: .41s; }
  [data-navgrid] > div:nth-child(1) > [data-navacc2="1"] > div > a:nth-child(5) { transition-delay: .46s; }
  [data-navgrid] > div:nth-child(2) > [data-navacc2="1"] > div > a:nth-child(1) { transition-delay: .33s; }
  [data-navgrid] > div:nth-child(2) > [data-navacc2="1"] > div > a:nth-child(2) { transition-delay: .38s; }
  [data-navgrid] > div:nth-child(2) > [data-navacc2="1"] > div > a:nth-child(3) { transition-delay: .43s; }
  [data-navgrid] > div:nth-child(2) > [data-navacc2="1"] > div > a:nth-child(4) { transition-delay: .48s; }
  [data-navgrid] > div:nth-child(2) > [data-navacc2="1"] > div > a:nth-child(5) { transition-delay: .53s; }
  [data-navgrid] > div:nth-child(3) > [data-navacc2="1"] > div > a:nth-child(1) { transition-delay: .40s; }
  [data-navgrid] > div:nth-child(3) > [data-navacc2="1"] > div > a:nth-child(2) { transition-delay: .45s; }
  [data-navgrid] > div:nth-child(3) > [data-navacc2="1"] > div > a:nth-child(3) { transition-delay: .50s; }
  [data-navgrid] > div:nth-child(3) > [data-navacc2="1"] > div > a:nth-child(4) { transition-delay: .55s; }
  [data-navgrid] > div:nth-child(3) > [data-navacc2="1"] > div > a:nth-child(5) { transition-delay: .60s; }
  [data-navgrid] > div:nth-child(4) > [data-navacc2="1"] > div > a:nth-child(1) { transition-delay: .47s; }
  [data-navgrid] > div:nth-child(4) > [data-navacc2="1"] > div > a:nth-child(2) { transition-delay: .52s; }
  [data-navgrid] > div:nth-child(4) > [data-navacc2="1"] > div > a:nth-child(3) { transition-delay: .57s; }
  [data-navgrid] > div:nth-child(4) > [data-navacc2="1"] > div > a:nth-child(4) { transition-delay: .62s; }
  [data-navgrid] > div:nth-child(4) > [data-navacc2="1"] > div > a:nth-child(5) { transition-delay: .67s; }
  [data-nav="1"] [data-navfoot="1"] { margin-top: 0 !important; padding: 26px 0 30px !important; opacity: 0; transform: translateY(16px); transition: opacity .5s ease .72s, transform .6s cubic-bezier(.2,.8,.2,1) .72s; }
  [data-nav="1"][data-open="1"] [data-navfoot="1"] { opacity: 1; transform: none; }
  html[data-mob="1"] [data-nav="1"] [data-navbody="1"], html[data-mob="1"] [data-nav="1"] [data-navfoot="1"] { padding-left: 20px !important; padding-right: 20px !important; }
  [data-navacc2="1"] { display: block; }
  html[data-mob="1"] [data-navacc2="1"], html[data-mob="1"] [data-navacc2="1"] { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s cubic-bezier(.2,.8,.2,1); }
  html[data-mob="1"] [data-navacc2="1"] > div { overflow: hidden; }
  html[data-mob="1"] [data-navsec2="1"][data-open="1"] > [data-navacc2="1"] { grid-template-rows: 1fr; }
  html[data-mob="1"] [data-navtoggle="1"] { display: grid !important; }
  html[data-mob="1"] [data-navsec2="1"][data-open="1"] [data-navtoggle="1"] svg { transform: rotate(180deg); }
  html[data-mob="1"] [data-navhrow="1"] [data-navarrow] { display: none; }
  html[data-mob="1"] [data-navsec2="1"] { gap: 12px !important; }
  @media (max-width: 900px) {
    [data-navacc2="1"] { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s cubic-bezier(.2,.8,.2,1); }
    [data-navacc2="1"] > div { overflow: hidden; }
    [data-navsec2="1"][data-open="1"] > [data-navacc2="1"] { grid-template-rows: 1fr; }
    [data-navtoggle="1"] { display: grid !important; }
    [data-navsec2="1"][data-open="1"] [data-navtoggle="1"] svg { transform: rotate(180deg); }
    [data-navhrow="1"] [data-navarrow] { display: none; }
    [data-navsec2="1"] { gap: 12px !important; }
  }
  [data-navtail="1"] > * { transition-delay: .62s; }
  [data-navtail="1"] > *:last-child { transition-delay: .70s; }

  @keyframes navNudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(5px); } }
  [data-nav="1"] [data-navarrow] { opacity: 0; transform: translateX(-7px); transition: opacity .25s ease, transform .3s cubic-bezier(.2,.8,.2,1); }
  [data-nav="1"] a:hover [data-navarrow], [data-nav="1"] [data-navlink="1"]:hover [data-navarrow] { opacity: 1; transform: translateX(0); animation: navNudge 1.15s ease-in-out .32s infinite; }

  html[data-mob="1"] [data-navgrid] { grid-template-columns: 1fr !important; gap: 30px !important; }
  html[data-mob="1"] [data-navcta="1"] { flex-direction: column !important; }
  html[data-mob="1"] [data-navgrid] a[data-navitem] { font-size: 30px !important; }
  @media (max-width: 900px) {
    [data-navgrid] { grid-template-columns: 1fr !important; gap: 30px !important; }
    [data-navcta="1"] { flex-direction: column !important; }
    [data-navgrid] a[data-navitem] { font-size: 30px !important; }
  }
  @media (min-width: 901px) and (max-height: 860px) {
    [data-navgrid] a[data-navitem] { font-size: 31px !important; }
    [data-navgrid] [data-navacc2="1"] a { padding: 8px 0 !important; }
  }

  html[data-scheme="dark"] { background: #2F2549; }
  html[data-scheme="dark"] body { background: #2F2549; }
  html[data-scheme="dark"] [data-page="1"] { background: #3B2F5A !important; color: #F4EFE3 !important; }

  html[data-scheme="dark"] [data-page="1"] [style*="background: rgb(251, 248, 243)"],
  html[data-scheme="dark"] [data-page="1"] [style*="background: #FBF8F3"] { background: #3B2F5A !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(251, 248, 243, 0.94)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(251,248,243,0.94)"] { background: rgba(59,47,90,0.94) !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="background: rgb(241, 236, 226)"],
  html[data-scheme="dark"] [data-page="1"] [style*="background: rgb(245, 241, 230)"],
  html[data-scheme="dark"] [data-page="1"] [style*="background: rgb(247, 243, 236)"],
  html[data-scheme="dark"] [data-page="1"] [style*="background: #F1ECE2"] { background: #4A3C71 !important; }

  html[data-scheme="dark"] [data-page="1"] [style*="color: rgb(59, 47, 90)"],
  html[data-scheme="dark"] [data-page="1"] [style*="color: #3B2F5A"] { color: #F4EFE3 !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="color: rgb(92, 82, 102)"],
  html[data-scheme="dark"] [data-page="1"] [style*="color: #5C5266"] { color: rgba(244,239,227,0.74) !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="color: rgb(107, 98, 115)"],
  html[data-scheme="dark"] [data-page="1"] [style*="color: #6B6273"] { color: rgba(244,239,227,0.55) !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="color: rgb(138, 117, 38)"],
  html[data-scheme="dark"] [data-page="1"] [style*="color: #8A7526"] { color: #C4B361 !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="color: rgb(101, 83, 158)"],
  html[data-scheme="dark"] [data-page="1"] [style*="color: #65539E"] { color: #C4B361 !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="1.5px solid rgb(101, 83, 158)"] { border-color: #C4B361 !important; color: #C4B361 !important; }

  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.12)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.14)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.16)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.2)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.22)"],
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(59, 47, 90, 0.25)"] { border-color: rgba(244,239,227,0.2) !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(101, 83, 158, 0.07)"] { background: rgba(244,239,227,0.08) !important; }
  html[data-scheme="dark"] [data-page="1"] [style*="rgba(101, 83, 158, 0.3)"] { color: rgba(244,239,227,0.3) !important; }
  html[data-scheme="dark"] [data-page="1"] [data-deep="1"] { background: #251D3D !important; }
  html[data-scheme="dark"] [data-page="1"] header[data-deep="1"]:not([data-overlay="1"]) { background: rgba(37,29,61,0.95) !important; }
  html[data-scheme="dark"] [data-page="1"] header[data-sitehead="1"][data-overlay="1"] { background: transparent !important; }
  html[data-scheme="dark"] [data-page="1"] header[data-sitehead="1"][data-overlay="1"][data-scrolled="1"] { background: #18112A !important; }
  html[data-scheme="dark"] [data-page="1"] [data-hband="g"] { background: #251D3D !important; }
  html[data-scheme="dark"] [data-page="1"] [data-deep="1"] [style*="background: rgb(241, 236, 226)"],
  html[data-scheme="dark"] [data-page="1"] [data-deep="1"] [style*="background: rgb(245, 241, 230)"],
  html[data-scheme="dark"] [data-page="1"] [data-deep="1"] [style*="background: rgb(247, 243, 236)"],
  html[data-scheme="dark"] [data-page="1"] [data-deep="1"] [style*="background: rgb(251, 248, 243)"] { background: #4A3C71 !important; }
  [data-triptych="1"] > div { box-shadow: 0 18px 40px rgba(59,47,90,0.32); }
  html[data-scheme="dark"] [data-triptych="1"] > div { box-shadow: 0 22px 46px rgba(10,6,24,0.62), 0 3px 10px rgba(10,6,24,0.45) !important; }
  html[data-scheme="dark"] [data-burger="1"] { border-color: rgba(244,239,227,0.3) !important; }
  html[data-scheme="dark"] [data-burger="1"] [data-bar] { background: #F4EFE3 !important; }
  html[data-scheme="dark"] [data-heropanel="1"] { box-shadow: 0 26px 64px rgba(10,6,24,0.66), 0 4px 14px rgba(10,6,24,0.5) !important; }
  html[data-scheme="dark"] [data-collage="1"], html[data-scheme="dark"] [data-filmplayer="1"] { box-shadow: 0 22px 46px rgba(10,6,24,0.62), 0 3px 10px rgba(10,6,24,0.45) !important; }
  html[data-scheme="dark"] [data-logo="light"] { display: none !important; }
  html[data-scheme="dark"] [data-logo="dark"] { display: block !important; }

  @media (max-width: 1360px) {
    [data-collage="1"] { display: none; }
  }
  @media (min-width: 1361px) {
    [data-heropanel="1"] { width: min(668px, calc(100vw - var(--m) - 640px)) !important; }
  }
  @media (max-width: 1100px) {
    [data-heropanel="1"] { width: min(88vw, 560px) !important; box-sizing: border-box !important; }
  }
  @media (max-width: 900px) {
    [data-reveal="1"], [data-band="1"] { grid-template-columns: 1fr !important; }
    [data-reveal="1"] { gap: 40px !important; }
    [data-band="1"] > div:first-child, [data-band="1"] > div:last-child, [data-bandimg="1"] { min-height: 300px !important; }
    [data-band="1"] > div:first-child[style*="padding"] { padding: 56px var(--m) 60px !important; }
    [data-band="1"] span[style*="font-size: 68px"] { font-size: 44px !important; }
    [data-quilt="1"] { grid-template-columns: repeat(3, 1fr) !important; }
    [data-triptych="1"] { grid-template-columns: 1fr !important; }
    [data-triptych="1"] > div { margin-top: 0 !important; }
    [data-heropanel="1"] { position: static !important; width: auto !important; margin: -60px var(--g) 0 !important; }
    [data-statgrid="1"] { grid-template-columns: 1fr !important; gap: 44px !important; }
    [data-newsgrid="1"] { grid-template-columns: 1fr !important; gap: 34px !important; }
  }
  @media (max-height: 820px) {
    [data-nav="1"] [data-navsec="1"] { font-size: 36px !important; }
    [data-nav="1"] [data-navlist="1"] span[style*="font-size: 28px"] { font-size: 24px !important; }
  }

  @media (min-width: 901px) {
    html:not([data-mob="1"]) [data-statgrid="1"] > div:last-child span[style*="font-size: 16.5px"] { font-size: 19.5px; }
    html:not([data-mob="1"]) [data-statgrid="1"] > div:last-child span[style*="font-size: 13.5px"] { font-size: 15.5px; line-height: 1.55; }
  }

  [data-navacc="1"] { display: none; }
  html[data-mob="1"] [data-navpane="1"] { display: none !important; }
  html[data-mob="1"] [data-navacc="1"] { display: block; }
  [data-navlist="1"] > a:nth-child(1) { animation-delay: .02s; }
  [data-navlist="1"] > a:nth-child(2) { animation-delay: .08s; }
  [data-navlist="1"] > a:nth-child(3) { animation-delay: .14s; }
  [data-navlist="1"] > a:nth-child(4) { animation-delay: .2s; }
  [data-navlist="1"] > a:nth-child(5) { animation-delay: .26s; }
  [data-navlist="1"] > a:nth-child(6) { animation-delay: .32s; }
  html[data-mob="1"] [data-navslope] { display: none !important; }
  @media (max-width: 900px) {
    [data-navslope] { display: none !important; }
    [data-navpane="1"] { display: none !important; }
    [data-navbody="1"] { display: block !important; }
    [data-navacc="1"] { display: block; }
    [data-nav="1"] [data-navcol="1"] { width: auto !important; }
    [data-nav="1"] [data-navcol="1"] > div { margin-right: 0 !important; }
    [data-navcta="1"] { margin-right: 0 !important; }
    [data-nav="1"] [data-navsec="1"] { font-size: 34px !important; }
  }

  /* ---- typography systems ---- */
  [style*="Instrument Serif"] { font-family: 'Newsreader', serif !important; }
  [style*="Instrument Sans"] { font-family: var(--sans, 'Figtree'), sans-serif !important; }
  [style*="Instrument Serif"][style*="font-size: 216px"] { font-size: 190px !important; line-height: 0.94 !important; }
  [style*="Instrument Serif"][style*="font-size: 76px"] { font-size: 66px !important; }
  [style*="Instrument Serif"][style*="font-size: 68px"] { font-size: 59px !important; }
  [style*="Instrument Serif"][style*="font-size: 62px"] { font-size: 54px !important; }
  [style*="Instrument Serif"][style*="font-size: 58px"] { font-size: 50px !important; }
  [style*="Instrument Serif"][style*="font-size: 52px"] { font-size: 45px !important; }
  [style*="Instrument Serif"][style*="font-size: 40px"] { font-size: 35px !important; }
  [style*="Instrument Serif"][style*="font-size: 27px"] { font-size: 25px !important; }

  /* ---- mobile preview (forced, independent of real viewport) ---- */
  html[data-mob="1"] { --g: 20px; --m: 20px; }
  html[data-view="mobile"] { background: #DEDBD5; }
  html[data-view="mobile"] body { background: #DEDBD5; }
  html[data-view="mobile"][data-scheme="dark"], html[data-view="mobile"][data-scheme="dark"] body { background: #1B1530; }
  html[data-view="mobile"] [data-page="1"] { width: 390px !important; margin: 26px auto !important; box-shadow: 0 0 0 1px rgba(0,0,0,0.14), 0 26px 70px rgba(0,0,0,0.22) !important; }

  html[data-mob="1"] [data-page="1"] header > div { height: 66px !important; }
  html[data-mob="1"] [data-page="1"] header nav { display: none !important; }
  html[data-mob="1"] [data-page="1"] header a[style*="background: rgb(235, 93, 120)"] { display: none !important; }
  html[data-mob="1"] [data-page="1"] header a[style*="height: 42px"] { padding: 0 14px !important; }
  html[data-mob="1"] [data-page="1"] header img { height: 38px !important; }
  html[data-mob="1"] [data-page="1"] header > div > div:last-child { margin-left: auto !important; }

  html[data-mob="1"] [data-collage="1"] { display: none !important; }
  html[data-mob="1"] [data-page="1"]:not([data-subpage="1"]) [style*="aspect-ratio: 16 / 9"] { aspect-ratio: 4 / 5 !important; }
  html[data-mob="1"] [style*="padding-bottom: 122px"] { padding-bottom: 44px !important; }
  html[data-mob="1"] [data-heropanel="1"] { position: static !important; width: auto !important; margin: -104px 20px 0 !important; padding: 26px 22px 30px !important; box-sizing: border-box !important; gap: 18px !important; }
  html[data-mob="1"] [data-heropanel="1"] h1 { font-size: 32px !important; }
  html[data-mob="1"] [data-heropanel="1"] p { font-size: 15.5px !important; }
  html[data-mob="1"] [data-heropanel="1"] > div:last-child { flex-wrap: wrap !important; gap: 16px !important; }

  html[data-mob="1"] [data-reveal="1"] { grid-template-columns: 1fr !important; gap: 34px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding-right: 60px"] { padding-right: 0 !important; }
  html[data-mob="1"] [data-statgrid="1"] { grid-template-columns: 1fr !important; gap: 40px !important; }
  html[data-mob="1"] [data-page="1"] [style*="font-size: 216px"] { font-size: 104px !important; }
  html[data-mob="1"] [data-statgrid="1"] [style*="font-size: 62px"] { font-size: 42px !important; min-width: 62px !important; }
  html[data-mob="1"] [data-statgrid="1"] [style*="padding: 26px 30px"] { padding: 20px 22px !important; }

  html[data-mob="1"] [data-band="1"] { grid-template-columns: 1fr !important; }
  html[data-mob="1"] [data-band="1"] > div:not([data-bandimg="1"]) { padding: 46px 20px 50px !important; gap: 20px !important; }
  html[data-mob="1"] [data-bandimg="1"] { min-height: 240px !important; }
  html[data-mob="1"] [data-band="1"] span[style*="font-size: 68px"] { font-size: 34px !important; }
  html[data-mob="1"] [data-band="1"] span[style*="font-size: 18px"] { font-size: 16px !important; }

  html[data-mob="1"] [data-page="1"] [style*="justify-content: space-between"][style*="gap: 40px"] { flex-direction: column !important; align-items: flex-start !important; gap: 22px !important; }
  html[data-mob="1"] [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] { align-items: flex-start !important; }
  html[data-mob="1"] [data-page="1"] [style*="font-size: 58px"] { font-size: 32px !important; }
  html[data-mob="1"] [data-quilt="1"] { grid-template-columns: repeat(3, 1fr) !important; gap: 22px 4px !important; }
  html[data-mob="1"] [data-tile="1"] span[style*="font-size: 13.5px"] { font-size: 12px !important; }
  html[data-mob="1"] [data-tile="1"] span[style*="font-size: 12.5px"] { font-size: 11px !important; }

  html[data-mob="1"] [data-page="1"] [style*="font-size: 76px"] { font-size: 36px !important; }
  html[data-mob="1"] [data-page="1"] [style*="width: 150px"][style*="height: 75px"] { width: 100px !important; height: 50px !important; border-radius: 100px 100px 0 0 !important; }
  html[data-mob="1"] [data-triptych="1"] { grid-template-columns: 1fr !important; }
  html[data-mob="1"] [data-triptych="1"] > div { margin-top: 0 !important; height: 220px !important; }

  html[data-mob="1"] [data-newsgrid="1"] { grid-template-columns: 1fr !important; gap: 30px !important; }
  html[data-mob="1"] [data-page="1"] [style*="height: 430px"] { height: 240px !important; }
  html[data-mob="1"] [data-page="1"] [style*="font-size: 52px"] { font-size: 30px !important; }
  html[data-mob="1"] [data-page="1"] [style*="font-size: 40px"] { font-size: 26px !important; }
  html[data-mob="1"] [data-page="1"] [style*="font-size: 27px"] { font-size: 20px !important; }

  html[data-mob="1"] [data-page="1"] [style*="padding: 96px var(--m) 132px"] { padding: 54px 20px 62px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding: 0px var(--m) 140px"],
  html[data-mob="1"] [data-page="1"] [style*="padding: 0 var(--m) 140px"] { padding: 0 20px 66px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding: 120px var(--m) 128px"] { padding: 62px 20px 66px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding: 140px var(--m) 44px"] { padding: 70px 20px 30px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding: 70px var(--m) 130px"] { padding: 30px 20px 62px !important; }
  html[data-mob="1"] [data-page="1"] [style*="padding: 0px var(--m) 120px"],
  html[data-mob="1"] [data-page="1"] [style*="padding: 0 var(--m) 120px"] { padding: 0 20px 62px !important; }

  html[data-mob="1"] [data-page="1"] footer { flex-direction: column !important; align-items: flex-start !important; gap: 14px !important; }
  html[data-mob="1"] [data-sitefoot="1"] { padding: 48px 20px 32px !important; gap: 34px !important; }
  html[data-mob="1"] [data-sitefoot="1"] > div:first-child { grid-template-columns: 1fr !important; gap: 34px !important; }
  html[data-mob="1"] [data-sitefoot="1"] span[style*="font-size: 40px"] { font-size: 27px !important; flex-direction: column !important; gap: 6px !important; }
  html[data-mob="1"] [data-sitefoot="1"] > div:last-child > span:last-child { margin-left: 0 !important; }
  @media (max-width: 900px) {
    [data-sitefoot="1"] > div:first-child { grid-template-columns: 1fr !important; gap: 34px !important; }
    [data-sitefoot="1"] span[style*="font-size: 40px"] { font-size: 28px !important; }
  }

  html[data-mob="1"] [data-nav="1"] { overflow-y: auto !important; }
  html[data-view="mobile"] [data-nav="1"] { left: calc(50% - 195px) !important; right: auto !important; width: 390px !important; }
  html[data-mob="1"] [data-nav="1"] [data-navwrap="1"] { margin: 0 !important; }
  html[data-mob="1"] [data-nav="1"] [data-navhead="1"] { height: auto !important; padding: 20px 20px 8px !important; }
  html[data-mob="1"] [data-nav="1"] [data-navhead="1"] img { height: 44px !important; }
  html[data-mob="1"] [data-nav="1"] [data-navbody="1"] { display: block !important; }
  html[data-mob="1"] [data-nav="1"] [data-navcol="1"] { width: auto !important; padding: 0 20px !important; }
  html[data-mob="1"] [data-nav="1"] [data-navcol="1"] > div { margin-right: 0 !important; }
  html[data-mob="1"] [data-navcta="1"] { margin-right: 0 !important; }
  html[data-mob="1"] [data-nav="1"] [data-navsec="1"] { font-size: 28px !important; }
  html[data-mob="1"] [data-nav="1"] [data-navfoot="1"] { margin: 22px 0 0 !important; flex-wrap: wrap !important; gap: 10px 18px !important; padding-bottom: 26px !important; }
  html[data-mob="1"] [data-filmmodal="1"] { width: min(340px, calc(100vw - 32px)) !important; }
  html[data-view="mobile"] [data-filmmodal="1"] { width: 340px !important; }

  /* mobile refinements */
  html[data-mob="1"] [data-heropanel="1"] { position: relative !important; left: auto !important; right: auto !important; bottom: auto !important; z-index: 3 !important; }

  html[data-mob="1"] [data-statgrid="1"] > div:last-child > div { align-items: flex-start !important; gap: 14px !important; }
  html[data-mob="1"] [data-statgrid="1"] [style*="font-size: 62px"] { min-width: 44px !important; line-height: 0.82 !important; margin-top: 7px !important; }
  html[data-mob="1"] [data-statgrid="1"] > div:last-child > div > span:last-child { padding-bottom: 0 !important; flex: 1 !important; }

  html[data-mob="1"] [data-band="1"] > div:not([data-bandimg="1"]) { order: -1 !important; }

  html[data-mob="1"] [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] { width: 100% !important; }
  html[data-mob="1"] [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"] { width: 100% !important; flex-wrap: nowrap !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important; padding-bottom: 2px !important; }
  html[data-mob="1"] [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"]::-webkit-scrollbar { display: none; }
  html[data-mob="1"] [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"] > button { flex: none !important; white-space: nowrap !important; }

  html[data-mob="1"] [data-quilt="1"] { grid-template-columns: repeat(2, 1fr) !important; gap: 26px 6px !important; }
  html[data-mob="1"] [data-tile="1"] span[style*="font-size: 13.5px"] { font-size: 13px !important; }
  html[data-mob="1"] [data-tile="1"] span[style*="font-size: 12.5px"] { font-size: 11.5px !important; }

  html[data-mob="1"] [data-triptych="1"] { gap: 4px !important; }
  html[data-mob="1"] [data-triptych="1"] > div { position: relative !important; height: 190px !important; width: 78% !important; justify-self: center !important; margin: 0 !important; box-shadow: none !important; }
  html[data-mob="1"] [data-triptych="1"] > div:nth-child(1) { justify-self: start !important; }
  html[data-mob="1"] [data-triptych="1"] > div:nth-child(3) { justify-self: end !important; }

  html[data-mob="1"] [data-page="1"] [style*="align-items: baseline"][style*="gap: 12px"],
  html[data-mob="1"] [data-page="1"] [style*="align-items: baseline"][style*="gap: 14px"] { flex-direction: column !important; align-items: flex-start !important; gap: 4px !important; }

/* light chrome (sub pages): cream scrolled header, cream footer */
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] { background: rgba(251,248,243,0.97) !important; border-bottom: 1px solid rgba(59,47,90,0.12); }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] nav a { color: #5C5266 !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] nav a[data-active="1"] { color: #3B2F5A !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] [data-logo="light"] { display: block !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] [data-logo="dark"] { display: none !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] [data-burger="1"] { border-color: rgba(59,47,90,0.2) !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] [data-burger="1"] [data-bar] { background: #3B2F5A !important; }
html[data-chrome="light"] [data-sitehead="1"][data-overlay="1"][data-scrolled="1"] a[style*="1.5px solid rgb(101, 83, 158)"] { border-color: #65539E !important; color: #65539E !important; }
html[data-chrome="light"] [data-sitefoot="1"] { background: #F1ECE2 !important; color: #3B2F5A !important; }
html[data-chrome="light"] [data-sitefoot="1"] [style*="rgba(255, 255, 255, 0.86)"],
html[data-chrome="light"] [data-sitefoot="1"] [style*="rgba(255, 255, 255, 0.72)"],
html[data-chrome="light"] [data-sitefoot="1"] [style*="rgba(255, 255, 255, 0.5)"] { color: #5C5266 !important; }
html[data-chrome="light"] [data-sitefoot="1"] [style*="rgb(196, 179, 97)"] { color: #8A7526 !important; }
html[data-chrome="light"] [data-sitefoot="1"] a[style*="rgba(255, 255, 255, 0.35)"] { border-color: rgba(59,47,90,0.28) !important; color: #3B2F5A !important; }
html[data-chrome="light"] [data-sitefoot="1"] a[style*="rgba(255, 255, 255, 0.35)"]:hover { background: #C4B361 !important; border-color: #C4B361 !important; color: #3B2F5A !important; }
html[data-chrome="light"] [data-sitefoot="1"] [style*="border-top: 1px solid rgba(255, 255, 255, 0.18)"] { border-top-color: rgba(59,47,90,0.18) !important; }

/* sub pages: static header, light footer separation, side-by-side hero */
html[data-chrome="light"] [data-sitehead="1"] { position: sticky !important; top: 0; z-index: 40; }
html[data-chrome="light"] [data-sitefoot="1"] { background: #FBF8F3 !important; border-top: 1px solid rgba(59,47,90,0.14); }
@media (max-width: 900px) {
  [data-schoolhero="1"] { grid-template-columns: 1fr !important; }
  [data-schoolhero="1"] > div:first-child { padding: 46px var(--g) 40px !important; }
  [data-schoolhero="1"] [data-heroshot="1"] { min-height: 320px !important; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important; }
  [data-findus="1"] { grid-template-columns: 1fr !important; gap: 40px !important; }
  [data-portrait="1"] { max-width: 320px; }
}
html[data-mob="1"] [data-schoolhero="1"] { grid-template-columns: 1fr !important; }
html[data-mob="1"] [data-schoolhero="1"] > div:first-child { padding: 40px 20px 34px !important; }
html[data-mob="1"] [data-schoolhero="1"] [data-heroshot="1"] { min-height: 280px !important; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important; }
html[data-mob="1"] [data-findus="1"] { grid-template-columns: 1fr !important; gap: 36px !important; }

/* arrow nudge on hover, anywhere */
[data-arrow="1"] { display: inline-block; transition: transform .3s cubic-bezier(.2,.8,.2,1); will-change: transform; }
a:hover [data-arrow="1"] { transform: translateX(6px); }
[data-arrow="1"]:hover { transform: translateX(6px); }
/* keep the sub-page sticky header above content and opaque */
html[data-chrome="light"] [data-sitehead="1"] { position: relative !important; z-index: 60; background: #FBF8F3 !important; }

/* school page — mobile refinements */
html[data-mob="1"] [data-schoolhero="1"] > div:first-child { align-items: center; text-align: center; }
html[data-mob="1"] [data-schoolhero="1"] img { margin: 0 auto; width: 104px; }
html[data-mob="1"] [data-schoolhero="1"] [data-schoolname="1"] { font-size: 25px !important; max-width: 24ch; }
html[data-mob="1"] [data-schoolhero="1"] > div:first-child > div { justify-content: center; }
html[data-mob="1"] [data-longlabel="1"] { display: none; }
html[data-mob="1"] [data-factrow="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 7px !important; padding: 16px 20px !important; }
html[data-mob="1"] [data-factrow="1"] > span:first-child { width: auto !important; }
html[data-mob="1"] [data-filmtitle="1"] { font-size: 27px !important; }
html[data-mob="1"] [data-headquote="1"] { font-size: 24px !important; }
html[data-mob="1"] [data-filmwrap="1"] { width: 100% !important; }
@media (max-width: 900px) {
  [data-schoolhero="1"] > div:first-child { align-items: center; text-align: center; }
  [data-schoolhero="1"] img { margin: 0 auto; }
  [data-schoolhero="1"] [data-schoolname="1"] { font-size: 26px !important; }
  [data-schoolhero="1"] > div:first-child > div { justify-content: center; }
  [data-longlabel="1"] { display: none; }
  [data-factrow="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 7px !important; }
  [data-factrow="1"] > span:first-child { width: auto !important; }
  [data-filmtitle="1"] { font-size: 28px !important; }
  [data-headquote="1"] { font-size: 25px !important; }
  [data-filmwrap="1"] { width: 100% !important; }
}

/* school page — mobile type nudges */
html[data-mob="1"] [data-schoolhero="1"] [data-schoolname="1"] { font-size: 29px !important; }
html[data-mob="1"] [data-filmtitle="1"] { font-size: 31px !important; }
html[data-mob="1"] [data-headquote="1"] { font-size: 27px !important; }
html[data-mob="1"] [data-address="1"] { font-size: 21px !important; line-height: 1.32 !important; }
html[data-mob="1"] [data-factrow="1"] > span:last-child { font-size: 15px !important; }
@media (max-width: 900px) {
  [data-schoolhero="1"] [data-schoolname="1"] { font-size: 30px !important; }
  [data-filmtitle="1"] { font-size: 32px !important; }
  [data-headquote="1"] { font-size: 28px !important; }
  [data-address="1"] { font-size: 22px !important; line-height: 1.32 !important; }
  [data-factrow="1"] > span:last-child { font-size: 15px !important; }
}

/* ============ unified slope ============ */
/* horizontal edge: hero bottoms (full-bleed, so the drop is exact) */
[data-hero="1"] [data-heroshot="1"] { clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--slope-drop)), 0 100%) !important; }
/* vertical edges: masks hold a true constant angle at any box size */
[data-bandimg="1"], [data-schoolhero="1"] [data-heroshot="1"] { clip-path: none !important; }
[data-band="1"] > [data-bandimg="1"]:last-child,
[data-schoolhero="1"] [data-heroshot="1"] {
  -webkit-mask-image: linear-gradient(calc(90deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px));
  mask-image: linear-gradient(calc(90deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px));
}
[data-band="1"] > [data-bandimg="1"]:first-child {
  -webkit-mask-image: linear-gradient(calc(270deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px));
  mask-image: linear-gradient(calc(270deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px));
}
/* nav overlay CTA pair: flush, interlocking angled edge */
[data-navcta="1"] { gap: 0 !important; }
[data-navcta="1"] > a:first-child { clip-path: polygon(0 0, 100% 0, calc(100% - var(--slope-cut)) 100%, 0 100%); }
[data-navcta="1"] > a:last-child { margin-left: calc(-1 * var(--slope-cut)); clip-path: polygon(var(--slope-cut) 0, 100% 0, 100% 100%, 0 100%); }

/* bands: both edges land on the same x so consecutive bands line up.
   The image-left band is widened past the column, then cut back to the same line. */
[data-band="1"] > [data-bandimg="1"] { --slope-inset: 34px; }
/* image-left band: mirrored axis (same tilt), inset measured from its right edge.
   Maths: with a 3deg tilt the upper band's edge runs 462+34 -> 462+34-H1*tan;
   this one starts at 462+34-H2*0 ... i.e. both meet at ~462.8 at the join, and
   nothing here depends on the viewport width, so it holds with or without a scrollbar. */
[data-band="1"] > [data-bandimg="1"]:first-child {
  margin-right: 0;
  -webkit-mask-image: linear-gradient(calc(270deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px)) !important;
  mask-image: linear-gradient(calc(270deg + var(--slope)), transparent calc(var(--slope-inset) - 0.5px), #000 calc(var(--slope-inset) + 0.5px)) !important;
}

/* mobile: no slanted vertical edges (hero bottom slope stays) */
html[data-mob="1"] [data-band="1"] > [data-bandimg="1"],
html[data-mob="1"] [data-schoolhero="1"] [data-heroshot="1"] {
  -webkit-mask-image: none !important; mask-image: none !important; clip-path: none !important;
}
html[data-mob="1"] [data-navcta="1"] > a:first-child,
html[data-mob="1"] [data-navcta="1"] > a:last-child { clip-path: none !important; margin-left: 0 !important; }
html[data-mob="1"] [data-navcta="1"] { gap: 4px !important; }
@media (max-width: 900px) {
  [data-band="1"] > [data-bandimg="1"],
  [data-schoolhero="1"] [data-heroshot="1"] {
    -webkit-mask-image: none !important; mask-image: none !important; clip-path: none !important;
  }
  [data-navcta="1"] > a:first-child,
  [data-navcta="1"] > a:last-child { clip-path: none !important; margin-left: 0 !important; }
  [data-navcta="1"] { gap: 4px !important; }
}

/* mobile preview: slope drop must follow the 390px frame, not the real viewport */
html[data-view="mobile"] { --slope-drop: calc(390px * var(--slope-tan)); }
/* one underline weight everywhere, matching the header nav */
[style*="border-bottom: 3px solid"] { border-bottom-width: 2px !important; }

html[data-mob="1"] [data-band="1"] > [data-bandimg="1"]:first-child { margin-right: 0 !important; }
@media (max-width: 900px) { [data-band="1"] > [data-bandimg="1"]:first-child { margin-right: 0 !important; } }

html[data-mob="1"] [data-band="1"] > [data-bandimg="1"]:first-child + div,
html[data-mob="1"] [data-band="1"] > [data-bandimg="1"]:first-child { margin-left: 0 !important; margin-right: 0 !important; -webkit-mask-image: none !important; mask-image: none !important; }
@media (max-width: 900px) {
  [data-band="1"] > [data-bandimg="1"]:first-child + div,
  [data-band="1"] > [data-bandimg="1"]:first-child { margin-left: 0 !important; margin-right: 0 !important; -webkit-mask-image: none !important; mask-image: none !important; }
}

/* 28-schools grid: knock the logo plates back to ~50% (plate only, not the text) */
html[data-scheme="dark"] [data-page="1"] [data-quilt="1"] [data-tile="1"] > span:first-child { background: rgba(74,60,113,0.5) !important; }
html[data-scheme="dark"] [data-page="1"] [data-quilt="1"] [data-tile="1"]:hover > span:first-child { background: rgba(74,60,113,0.78) !important; }
[data-quilt="1"] [data-tile="1"] > span:not(:first-child) { background: transparent !important; }

/* school tiles: ease the hover lift */
[data-quilt="1"] [data-tile="1"] > span:first-child { transition: transform .32s cubic-bezier(.2,.8,.2,1), background .25s ease !important; will-change: transform; }

/* give each band image room outside its column so the slant never runs off the box
   (the visible edge is the mask line, not the box edge) */
[data-band="1"] > [data-bandimg="1"]:first-child { margin-right: -72px; }
[data-band="1"] > [data-bandimg="1"]:not(:first-child) { margin-left: -72px; }
html[data-mob="1"] [data-band="1"] > [data-bandimg="1"] { margin-left: 0 !important; margin-right: 0 !important; }
@media (max-width: 900px) { [data-band="1"] > [data-bandimg="1"] { margin-left: 0 !important; margin-right: 0 !important; } }

/* mobile: stacked blocks get the same angle as a horizontal edge on the image */
html[data-mob="1"] [data-band="1"] > [data-bandimg="1"],
html[data-mob="1"] [data-schoolhero="1"] [data-heroshot="1"] {
  clip-path: polygon(0 var(--slope-drop), 100% 0, 100% 100%, 0 100%) !important;
}
@media (max-width: 900px) {
  [data-band="1"] > [data-bandimg="1"],
  [data-schoolhero="1"] [data-heroshot="1"] {
    clip-path: polygon(0 var(--slope-drop), 100% 0, 100% 100%, 0 100%) !important;
  }
}

html[data-mob="1"] [data-schoolhero="1"] > div:first-child { padding: 58px 20px 52px !important; }
@media (max-width: 900px) { [data-schoolhero="1"] > div:first-child { padding: 62px var(--g) 56px !important; } }

/* sans-serif switcher (Tweaks) */
html[data-sans="Manrope"] { --sans: 'Manrope'; }
html[data-sans="Montserrat"] { --sans: 'Montserrat'; }
html[data-sans="Figtree"] { --sans: 'Figtree'; }
html[data-sans="Archivo"] { --sans: 'Archivo'; }

[data-sitehead="1"] > div { transition: padding-top .5s cubic-bezier(.33,1,.68,1), padding-bottom .5s cubic-bezier(.33,1,.68,1); }


/* ---- leadership & vacancy pages ---- */
html[data-mob="1"] [data-schoolhero="1"][data-align="left"] > div:first-child { align-items: flex-start !important; text-align: left !important; }
html[data-mob="1"] [data-schoolhero="1"][data-align="left"] > div:first-child > div { justify-content: flex-start !important; }
html[data-mob="1"] [data-secttitle="1"] { font-size: 30px !important; }
html[data-mob="1"] [data-peoplegrid="1"] { grid-template-columns: repeat(2, 1fr) !important; gap: 30px 18px !important; }
html[data-mob="1"] [data-personname="1"] { font-size: 20px !important; }
html[data-mob="1"] [data-lead="1"] { grid-template-columns: 1fr !important; gap: 30px !important; padding: 26px !important; }
html[data-mob="1"] [data-lead="1"] [data-portrait="1"] { max-width: 220px !important; }
html[data-mob="1"] [data-rolegrid="1"] { grid-template-columns: 1fr !important; }
html[data-mob="1"] [data-lgbcard="1"] { grid-template-columns: 1fr !important; gap: 30px !important; padding: 40px 24px !important; }
html[data-mob="1"] [data-vacstrip="1"] > div { grid-template-columns: 1fr 1fr !important; }
html[data-mob="1"] [data-vaccell="1"] { padding: 20px 18px 22px 0 !important; }
html[data-mob="1"] [data-vaccell="1"] > span:last-child { font-size: 15.5px !important; }
html[data-mob="1"] [data-vacbody="1"] { grid-template-columns: 1fr !important; gap: 56px !important; }
html[data-mob="1"] [data-vacaside="1"] { position: static !important; top: auto !important; }
html[data-mob="1"] [data-vacactions="1"] { flex-direction: column !important; align-items: stretch !important; }
html[data-mob="1"] [data-vacactions="1"] > a { justify-content: center !important; }
html[data-mob="1"] [data-vaclede="1"] { font-size: 27px !important; }
html[data-mob="1"] [data-weekgrid="1"], html[data-mob="1"] [data-benefitgrid="1"], html[data-mob="1"] [data-stepgrid="1"] { grid-template-columns: 1fr !important; }
html[data-mob="1"] [data-stepgrid="1"] { gap: 26px !important; }
html[data-mob="1"] [data-headblock="1"] { grid-template-columns: 1fr !important; gap: 26px !important; padding: 26px !important; }
html[data-mob="1"] [data-headblock="1"] [data-portrait="1"] { max-width: 200px !important; }
html[data-mob="1"] [data-vacfact="1"] > span:first-child { width: 92px !important; }
html[data-mob="1"] [data-grouphead="1"] > span:first-child { white-space: normal !important; }

/* ---- tablet / small-laptop band: the vacancy sidebar can't hold a fixed
   track here, or the main column starves and every 3-up grid collapses ---- */
@media (min-width: 901px) and (max-width: 1180px) {
  [data-vacbody="1"] { grid-template-columns: 1fr !important; gap: 54px !important; }
  [data-vacaside="1"] { position: static !important; top: auto !important; display: grid !important; grid-template-columns: repeat(2, 1fr) !important; grid-auto-rows: min-content !important; align-items: start !important; }
  [data-vacaside="1"] > * { align-self: stretch !important; }
  [data-schoolhero="1"] > div:first-child { padding-right: 46px !important; }
  [data-headblock="1"] { grid-template-columns: 0.3fr 0.7fr !important; }
}


/* ============================================================
   Real narrow viewports get the identical phone layout as the
   manual preview toggle. GENERATED from the html[data-mob="1"]
   rules above — if you change one of those, regenerate this block
   rather than editing it by hand.
   ============================================================ */
@media (max-width: 900px) {
  /* DCAT shared chrome — linked by every page DC. Animations, dark mode,
   phone layout and the Newsreader/Figtree type system.

   Phone rules are authored ONCE against html:root (set by each page DC
   when the manual preview toggle is on) and mirrored verbatim into a generated
   @media (max-width: 900px) block at the foot of this file, so a genuinely narrow
   window gets the identical layout with no JS involved. html[data-view="mobile"]
   is reserved for the 390px preview frame itself (desk background, page width,
   frame-relative slope drop). */
html[data-scheme="dark"] [data-sitefoot="1"] { background: #251D3D !important; }
  html:root [data-filmplayer="1"] { width: 100% !important; }
  html:root [data-filmstage="1"] { margin-top: 4px !important; }
  html:root [data-hero="1"] [data-heroshot="1"] { aspect-ratio: 3 / 4 !important; }
  html:root [data-herotext="1"] { top: auto !important; bottom: 130px !important; max-width: none !important; gap: 14px !important; }
  html:root [data-slopepath="full"] { display: none !important; }
  html:root [data-slopepath="mob"] { display: block !important; }
  html:root [data-slopeline="1"] { height: 15vw !important; }
  html:root [data-vv="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 8px !important; font-size: 30px !important; }
  html:root [data-heroline="1"] br { display: none; }
  html:root [data-heroline="1"] { font-size: 27px !important; line-height: 1.22 !important; max-width: none !important; }
  html:root [data-nav="1"] [data-navbody="1"], html:root [data-nav="1"] [data-navfoot="1"] { padding-left: 20px !important; padding-right: 20px !important; }
  html:root [data-navacc2="1"], html:root [data-navacc2="1"] { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s cubic-bezier(.2,.8,.2,1); }
  html:root [data-navacc2="1"] > div { overflow: hidden; }
  html:root [data-navsec2="1"][data-open="1"] > [data-navacc2="1"] { grid-template-rows: 1fr; }
  html:root [data-navtoggle="1"] { display: grid !important; }
  html:root [data-navsec2="1"][data-open="1"] [data-navtoggle="1"] svg { transform: rotate(180deg); }
  html:root [data-navhrow="1"] [data-navarrow] { display: none; }
  html:root [data-navsec2="1"] { gap: 12px !important; }
  html:root [data-navgrid] { grid-template-columns: 1fr !important; gap: 30px !important; }
  html:root [data-navcta="1"] { flex-direction: column !important; }
  html:root [data-navgrid] a[data-navitem] { font-size: 30px !important; }
  html:root [data-navpane="1"] { display: none !important; }
  html:root [data-navacc="1"] { display: block; }
  html:root [data-navslope] { display: none !important; }
  /* ---- mobile preview (forced, independent of real viewport) ---- */
  html:root { --g: 20px; --m: 20px; }
  html:root [data-page="1"] header > div { height: 66px !important; }
  html:root [data-page="1"] header nav { display: none !important; }
  html:root [data-page="1"] header a[style*="background: rgb(235, 93, 120)"] { display: none !important; }
  html:root [data-page="1"] header a[style*="height: 42px"] { padding: 0 14px !important; }
  html:root [data-page="1"] header img { height: 38px !important; }
  html:root [data-page="1"] header > div > div:last-child { margin-left: auto !important; }
  html:root [data-collage="1"] { display: none !important; }
  html:root [data-page="1"]:not([data-subpage="1"]) [style*="aspect-ratio: 16 / 9"] { aspect-ratio: 4 / 5 !important; }
  html:root [style*="padding-bottom: 122px"] { padding-bottom: 44px !important; }
  html:root [data-heropanel="1"] { position: static !important; width: auto !important; margin: -104px 20px 0 !important; padding: 26px 22px 30px !important; box-sizing: border-box !important; gap: 18px !important; }
  html:root [data-heropanel="1"] h1 { font-size: 32px !important; }
  html:root [data-heropanel="1"] p { font-size: 15.5px !important; }
  html:root [data-heropanel="1"] > div:last-child { flex-wrap: wrap !important; gap: 16px !important; }
  html:root [data-reveal="1"] { grid-template-columns: 1fr !important; gap: 34px !important; }
  html:root [data-page="1"] [style*="padding-right: 60px"] { padding-right: 0 !important; }
  html:root [data-statgrid="1"] { grid-template-columns: 1fr !important; gap: 40px !important; }
  html:root [data-page="1"] [style*="font-size: 216px"] { font-size: 104px !important; }
  html:root [data-statgrid="1"] [style*="font-size: 62px"] { font-size: 42px !important; min-width: 62px !important; }
  html:root [data-statgrid="1"] [style*="padding: 26px 30px"] { padding: 20px 22px !important; }
  html:root [data-band="1"] { grid-template-columns: 1fr !important; }
  html:root [data-band="1"] > div:not([data-bandimg="1"]) { padding: 46px 20px 50px !important; gap: 20px !important; }
  html:root [data-bandimg="1"] { min-height: 240px !important; }
  html:root [data-band="1"] span[style*="font-size: 68px"] { font-size: 34px !important; }
  html:root [data-band="1"] span[style*="font-size: 18px"] { font-size: 16px !important; }
  html:root [data-page="1"] [style*="justify-content: space-between"][style*="gap: 40px"] { flex-direction: column !important; align-items: flex-start !important; gap: 22px !important; }
  html:root [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] { align-items: flex-start !important; }
  html:root [data-page="1"] [style*="font-size: 58px"] { font-size: 32px !important; }
  html:root [data-quilt="1"] { grid-template-columns: repeat(3, 1fr) !important; gap: 22px 4px !important; }
  html:root [data-tile="1"] span[style*="font-size: 13.5px"] { font-size: 12px !important; }
  html:root [data-tile="1"] span[style*="font-size: 12.5px"] { font-size: 11px !important; }
  html:root [data-page="1"] [style*="font-size: 76px"] { font-size: 36px !important; }
  html:root [data-page="1"] [style*="width: 150px"][style*="height: 75px"] { width: 100px !important; height: 50px !important; border-radius: 100px 100px 0 0 !important; }
  html:root [data-triptych="1"] { grid-template-columns: 1fr !important; }
  html:root [data-triptych="1"] > div { margin-top: 0 !important; height: 220px !important; }
  html:root [data-newsgrid="1"] { grid-template-columns: 1fr !important; gap: 30px !important; }
  html:root [data-page="1"] [style*="height: 430px"] { height: 240px !important; }
  html:root [data-page="1"] [style*="font-size: 52px"] { font-size: 30px !important; }
  html:root [data-page="1"] [style*="font-size: 40px"] { font-size: 26px !important; }
  html:root [data-page="1"] [style*="font-size: 27px"] { font-size: 20px !important; }
  html:root [data-page="1"] [style*="padding: 96px var(--m) 132px"] { padding: 54px 20px 62px !important; }
  html:root [data-page="1"] [style*="padding: 0px var(--m) 140px"],
  html:root [data-page="1"] [style*="padding: 0 var(--m) 140px"] { padding: 0 20px 66px !important; }
  html:root [data-page="1"] [style*="padding: 120px var(--m) 128px"] { padding: 62px 20px 66px !important; }
  html:root [data-page="1"] [style*="padding: 140px var(--m) 44px"] { padding: 70px 20px 30px !important; }
  html:root [data-page="1"] [style*="padding: 70px var(--m) 130px"] { padding: 30px 20px 62px !important; }
  html:root [data-page="1"] [style*="padding: 0px var(--m) 120px"],
  html:root [data-page="1"] [style*="padding: 0 var(--m) 120px"] { padding: 0 20px 62px !important; }
  html:root [data-page="1"] footer { flex-direction: column !important; align-items: flex-start !important; gap: 14px !important; }
  html:root [data-sitefoot="1"] { padding: 48px 20px 32px !important; gap: 34px !important; }
  html:root [data-sitefoot="1"] > div:first-child { grid-template-columns: 1fr !important; gap: 34px !important; }
  html:root [data-sitefoot="1"] span[style*="font-size: 40px"] { font-size: 27px !important; flex-direction: column !important; gap: 6px !important; }
  html:root [data-sitefoot="1"] > div:last-child > span:last-child { margin-left: 0 !important; }
  html:root [data-nav="1"] { overflow-y: auto !important; }
  html:root [data-nav="1"] [data-navwrap="1"] { margin: 0 !important; }
  html:root [data-nav="1"] [data-navhead="1"] { height: auto !important; padding: 20px 20px 8px !important; }
  html:root [data-nav="1"] [data-navhead="1"] img { height: 44px !important; }
  html:root [data-nav="1"] [data-navbody="1"] { display: block !important; }
  html:root [data-nav="1"] [data-navcol="1"] { width: auto !important; padding: 0 20px !important; }
  html:root [data-nav="1"] [data-navcol="1"] > div { margin-right: 0 !important; }
  html:root [data-navcta="1"] { margin-right: 0 !important; }
  html:root [data-nav="1"] [data-navsec="1"] { font-size: 28px !important; }
  html:root [data-nav="1"] [data-navfoot="1"] { margin: 22px 0 0 !important; flex-wrap: wrap !important; gap: 10px 18px !important; padding-bottom: 26px !important; }
  html:root [data-filmmodal="1"] { width: min(340px, calc(100vw - 32px)) !important; }
  /* mobile refinements */
  html:root [data-heropanel="1"] { position: relative !important; left: auto !important; right: auto !important; bottom: auto !important; z-index: 3 !important; }
  html:root [data-statgrid="1"] > div:last-child > div { align-items: flex-start !important; gap: 14px !important; }
  html:root [data-statgrid="1"] [style*="font-size: 62px"] { min-width: 44px !important; line-height: 0.82 !important; margin-top: 7px !important; }
  html:root [data-statgrid="1"] > div:last-child > div > span:last-child { padding-bottom: 0 !important; flex: 1 !important; }
  html:root [data-band="1"] > div:not([data-bandimg="1"]) { order: -1 !important; }
  html:root [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] { width: 100% !important; }
  html:root [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"] { width: 100% !important; flex-wrap: nowrap !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important; padding-bottom: 2px !important; }
  html:root [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"]::-webkit-scrollbar { display: none; }
  html:root [data-page="1"] [style*="align-items: flex-end"][style*="flex-direction: column"] > div[style*="gap: 8px"] > button { flex: none !important; white-space: nowrap !important; }
  html:root [data-quilt="1"] { grid-template-columns: repeat(2, 1fr) !important; gap: 26px 6px !important; }
  html:root [data-tile="1"] span[style*="font-size: 13.5px"] { font-size: 13px !important; }
  html:root [data-tile="1"] span[style*="font-size: 12.5px"] { font-size: 11.5px !important; }
  html:root [data-triptych="1"] { gap: 4px !important; }
  html:root [data-triptych="1"] > div { position: relative !important; height: 190px !important; width: 78% !important; justify-self: center !important; margin: 0 !important; box-shadow: none !important; }
  html:root [data-triptych="1"] > div:nth-child(1) { justify-self: start !important; }
  html:root [data-triptych="1"] > div:nth-child(3) { justify-self: end !important; }
  html:root [data-page="1"] [style*="align-items: baseline"][style*="gap: 12px"],
  html:root [data-page="1"] [style*="align-items: baseline"][style*="gap: 14px"] { flex-direction: column !important; align-items: flex-start !important; gap: 4px !important; }
  html:root [data-schoolhero="1"] { grid-template-columns: 1fr !important; }
  html:root [data-schoolhero="1"] > div:first-child { padding: 40px 20px 34px !important; }
  html:root [data-schoolhero="1"] [data-heroshot="1"] { min-height: 280px !important; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important; }
  html:root [data-findus="1"] { grid-template-columns: 1fr !important; gap: 36px !important; }
  /* school page — mobile refinements */
html:root [data-schoolhero="1"] > div:first-child { align-items: center; text-align: center; }
  html:root [data-schoolhero="1"] img { margin: 0 auto; width: 104px; }
  html:root [data-schoolhero="1"] [data-schoolname="1"] { font-size: 25px !important; max-width: 24ch; }
  html:root [data-schoolhero="1"] > div:first-child > div { justify-content: center; }
  html:root [data-longlabel="1"] { display: none; }
  html:root [data-factrow="1"] { flex-direction: column !important; align-items: flex-start !important; gap: 7px !important; padding: 16px 20px !important; }
  html:root [data-factrow="1"] > span:first-child { width: auto !important; }
  html:root [data-filmtitle="1"] { font-size: 27px !important; }
  html:root [data-headquote="1"] { font-size: 24px !important; }
  html:root [data-filmwrap="1"] { width: 100% !important; }
  /* school page — mobile type nudges */
html:root [data-schoolhero="1"] [data-schoolname="1"] { font-size: 29px !important; }
  html:root [data-filmtitle="1"] { font-size: 31px !important; }
  html:root [data-headquote="1"] { font-size: 27px !important; }
  html:root [data-address="1"] { font-size: 21px !important; line-height: 1.32 !important; }
  html:root [data-factrow="1"] > span:last-child { font-size: 15px !important; }
  /* mobile: no slanted vertical edges (hero bottom slope stays) */
html:root [data-band="1"] > [data-bandimg="1"],
html:root [data-schoolhero="1"] [data-heroshot="1"] {
  -webkit-mask-image: none !important; mask-image: none !important; clip-path: none !important;
}
  html:root [data-navcta="1"] > a:first-child,
html:root [data-navcta="1"] > a:last-child { clip-path: none !important; margin-left: 0 !important; }
  html:root [data-navcta="1"] { gap: 4px !important; }
  html:root [data-band="1"] > [data-bandimg="1"]:first-child { margin-right: 0 !important; }
  html:root [data-band="1"] > [data-bandimg="1"]:first-child + div,
html:root [data-band="1"] > [data-bandimg="1"]:first-child { margin-left: 0 !important; margin-right: 0 !important; -webkit-mask-image: none !important; mask-image: none !important; }
  html:root [data-band="1"] > [data-bandimg="1"] { margin-left: 0 !important; margin-right: 0 !important; }
  /* mobile: stacked blocks get the same angle as a horizontal edge on the image */
html:root [data-band="1"] > [data-bandimg="1"],
html:root [data-schoolhero="1"] [data-heroshot="1"] {
  clip-path: polygon(0 var(--slope-drop), 100% 0, 100% 100%, 0 100%) !important;
}
  html:root [data-schoolhero="1"] > div:first-child { padding: 58px 20px 52px !important; }
  /* ---- leadership & vacancy pages ---- */
html:root [data-schoolhero="1"][data-align="left"] > div:first-child { align-items: flex-start !important; text-align: left !important; }
  html:root [data-schoolhero="1"][data-align="left"] > div:first-child > div { justify-content: flex-start !important; }
  html:root [data-secttitle="1"] { font-size: 30px !important; }
  html:root [data-peoplegrid="1"] { grid-template-columns: repeat(2, 1fr) !important; gap: 30px 18px !important; }
  html:root [data-personname="1"] { font-size: 20px !important; }
  html:root [data-lead="1"] { grid-template-columns: 1fr !important; gap: 30px !important; padding: 26px !important; }
  html:root [data-lead="1"] [data-portrait="1"] { max-width: 220px !important; }
  html:root [data-rolegrid="1"] { grid-template-columns: 1fr !important; }
  html:root [data-lgbcard="1"] { grid-template-columns: 1fr !important; gap: 30px !important; padding: 40px 24px !important; }
  html:root [data-vacstrip="1"] > div { grid-template-columns: 1fr 1fr !important; }
  html:root [data-vaccell="1"] { padding: 20px 18px 22px 0 !important; }
  html:root [data-vaccell="1"] > span:last-child { font-size: 15.5px !important; }
  html:root [data-vacbody="1"] { grid-template-columns: 1fr !important; gap: 56px !important; }
  html:root [data-vacaside="1"] { position: static !important; top: auto !important; }
  html:root [data-vacactions="1"] { flex-direction: column !important; align-items: stretch !important; }
  html:root [data-vacactions="1"] > a { justify-content: center !important; }
  html:root [data-vaclede="1"] { font-size: 27px !important; }
  html:root [data-weekgrid="1"], html:root [data-benefitgrid="1"], html:root [data-stepgrid="1"] { grid-template-columns: 1fr !important; }
  html:root [data-stepgrid="1"] { gap: 26px !important; }
  html:root [data-headblock="1"] { grid-template-columns: 1fr !important; gap: 26px !important; padding: 26px !important; }
  html:root [data-headblock="1"] [data-portrait="1"] { max-width: 200px !important; }
  html:root [data-vacfact="1"] > span:first-child { width: 92px !important; }
  html:root [data-grouphead="1"] > span:first-child { white-space: normal !important; }
}

/* leadership: two-column intro paragraphs stack on phone */
html[data-mob="1"] [data-twocol="1"] { grid-template-columns: 1fr !important; gap: 22px !important; }
@media (max-width: 900px) { [data-twocol="1"] { grid-template-columns: 1fr !important; gap: 22px !important; } }
