/* Character orbits connect the photograph, service chapters and closing invitation. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.hero.hero-immersive {
  position:relative; isolation:isolate; display:flex; align-items:center; overflow:hidden;
  width:100%; max-width:none; min-height:760px; min-height:max(720px,calc(100svh - 135px));
  padding:76px max(56px,calc((100vw - 1328px)/2)) 112px;
  background:#0b2825; color:white;
}
.hero-photo, .hero-shade { position:absolute; inset:0; z-index:-2; }
.hero-photo { overflow:hidden; }
.hero-photo img { width:100%; height:100%; object-fit:cover; object-position:65% 46%; }
.hero-shade {
  z-index:-1; pointer-events:none;
  background:linear-gradient(90deg,rgba(7,32,29,.98) 0%,rgba(7,32,29,.92) 27%,rgba(7,32,29,.73) 42%,rgba(7,32,29,.18) 64%,rgba(7,32,29,.06) 100%),linear-gradient(0deg,rgba(7,32,29,.87),transparent 30%);
}
.hero-immersive .hero-copy { position:relative; z-index:2; width:57%; max-width:730px; padding:0; }
.hero-immersive .eyebrow { color:var(--lime); font-size:12px; gap:12px; letter-spacing:1.6px; }
.hero-immersive h1 { margin-top:30px; font-size:clamp(3.6rem,5.65vw,5.6rem); line-height:1.2; font-weight:900; letter-spacing:-3.5px; }
.hero-immersive .warm-underline { color:var(--lime); }
.hero-immersive .hero-english { margin-top:24px; font-size:12px; letter-spacing:1.7px; line-height:1.6; }
.hero-immersive .hero-description { max-width:465px; font-size:15px; line-height:1.95; color:#e1e9e5; margin-top:21px; }
.hero-immersive .hero-buttons { gap:30px; margin-top:30px; }
.hero-immersive .hero-buttons .button { min-width:164px; }
.hero-bottom { position:absolute; z-index:3; left:max(56px,calc((100vw - 1328px)/2)); right:max(56px,calc((100vw - 1328px)/2)); bottom:25px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:18px; border-top:1px solid #ffffff38; }
.hero-next { display:inline-flex; align-items:center; gap:15px; font-size:11px; font-weight:700; letter-spacing:1.4px; color:var(--lime); }
.scroll-arrow { font-size:25px; font-weight:400; }
.hero-image-credit { font-size:10px; letter-spacing:.5px; color:#dbe4de; }
html[lang=en] .hero-immersive h1 { font-size:clamp(3.5rem,5.55vw,5.5rem); letter-spacing:-4px; line-height:1.02; }
html[lang=en] .hero-immersive .hero-english { font-size:11px; }
html[lang=en] .hero-immersive .hero-description { font-size:15px; line-height:1.8; max-width:440px; }

.character-orbit {
  --orbit-size:112px; --orbit-radius:46px; --orbit-font:9px; --orbit-turn:0deg;
  width:var(--orbit-size); height:var(--orbit-size); display:block; position:relative;
  flex-shrink:0; color:var(--ink); pointer-events:none; user-select:none;
}
.orbit-ring { position:absolute; inset:0; transform:rotate(var(--orbit-turn)); transform-origin:50% 50%; }
.orbit-character { position:absolute; left:50%; top:50%; display:block; width:1em; text-align:center; font-family:var(--sans); font-size:var(--orbit-font); font-weight:800; line-height:1; letter-spacing:0; transform:translate(-50%,-50%) rotate(var(--character-angle)) translateY(calc(-1 * var(--orbit-radius))); }
.orbit-center { position:absolute; inset:0; display:grid; place-items:center; font-size:38px; font-weight:900; line-height:1; }
.character-orbit::after { content:''; position:absolute; inset:21%; border:1px solid currentColor; border-radius:50%; opacity:.18; }
.hero-orbit {
  --orbit-size:clamp(350px,39vw,600px); --orbit-radius:clamp(163px,18.2vw,280px); --orbit-font:clamp(13px,1.2vw,18px);
  position:absolute; top:5%; right:-4%; z-index:1; color:var(--lime);
}
.hero-orbit .orbit-center { display:none; }
.hero-orbit::after { inset:8%; opacity:.27; }
.about-note { gap:25px; }
.about-orbit { --orbit-size:122px; --orbit-radius:52px; --orbit-font:8.5px; color:#b94d22; }
.about-orbit .orbit-center { font-size:39px; }
.focus-card-top { min-height:110px; gap:12px; }
.focus-orbit { --orbit-size:112px; --orbit-radius:48px; --orbit-font:8px; }
.focus-orbit .orbit-center { font-size:32px; letter-spacing:-1.5px; }
.focus-card:nth-child(even) .focus-orbit { color:#ab431d; }
.focus-card-top > svg { margin-right:3px; }
.focus-card { transition:background-color .2s; }
.focus-card:hover { background:#f6f9ed; }
.media-orbit { --orbit-size:114px; --orbit-radius:49px; --orbit-font:9px; color:var(--lime); margin:24px 0 26px; }
.media-orbit .orbit-center { font-size:83px; padding-top:29px; }
.editorial-feature { min-height:495px; }
.editorial-feature h3 { margin-top:0; }
.resource-orbit { --orbit-size:96px; --orbit-radius:40px; --orbit-font:9px; margin-bottom:25px; }
.resource-orbit .orbit-center { font-size:32px; }
.join-inner { position:relative; }
.join-inner > div:not(.character-orbit) { position:relative; z-index:1; }
.join-orbit { --orbit-size:160px; --orbit-radius:70px; --orbit-font:11px; position:absolute; top:-10px; left:42%; opacity:.22; }
.join-orbit .orbit-center { font-size:62px; }
.footer-orbit { --orbit-size:108px; --orbit-radius:46px; --orbit-font:8px; color:var(--lime); }
.footer-orbit .orbit-center { font-size:34px; }
.back-top { display:block; width:108px; height:108px; flex-shrink:0; border-radius:50%; transition:background-color .2s; }
.back-top:hover { background:#ffffff0a; }

@media (min-width:1600px) {
  .hero-immersive .hero-copy { max-width:740px; }
  .hero-orbit { right:calc((100vw - 1536px)/2 - 50px); top:9%; }
}
@media (max-width:1190px) {
  .hero.hero-immersive { padding:65px 36px 105px; min-height:720px; }
  .hero-immersive h1 { font-size:clamp(3.4rem,5.8vw,4.5rem); }
  .hero-immersive .hero-copy { width:61%; }
  .hero-immersive .hero-description { max-width:400px; }
  .hero-orbit { right:-8%; top:12%; }
  .hero-bottom { left:36px; right:36px; }
  .join-orbit { left:36%; }
  .focus-orbit { --orbit-size:100px; --orbit-radius:43px; --orbit-font:7px; }
  .focus-card-top { min-height:100px; }
}
@media (max-width:1000px) and (min-width:721px) {
  .hero.hero-immersive { min-height:750px; }
  .hero-immersive .hero-copy { width:70%; }
  .hero-immersive h1 { font-size:3.75rem; }
  .hero-photo img { object-position:66% 50%; }
  .hero-orbit { --orbit-size:310px; --orbit-radius:144px; --orbit-font:12px; right:-100px; top:14%; opacity:.85; }
  html[lang=en] .hero-immersive h1 { font-size:4.25rem; }
  .media-orbit { position:absolute; right:32px; top:15px; margin:0; }
  .editorial-feature { min-height:350px; }
  .editorial-feature h3 { max-width:70%; margin-top:34px; }
}
@media (max-width:720px) {
  .hero.hero-immersive { display:block; min-height:0; padding:300px 20px 96px; }
  .hero-photo { bottom:auto; height:480px; }
  .hero-photo img { object-position:73% 35%; }
  .hero-shade { background:linear-gradient(0deg,#0b2825 0%,#0b2825 35%,rgba(11,40,37,.96) 49%,rgba(11,40,37,.25) 71%,rgba(11,40,37,.12) 100%); }
  .hero-immersive .hero-copy { width:100%; max-width:none; }
  .hero-immersive .eyebrow { font-size:10px; letter-spacing:1px; gap:8px; }
  .hero-immersive .little-cross { font-size:24px; }
  .hero-immersive h1 { font-size:clamp(2.7rem,11.4vw,4.6rem); letter-spacing:-2px; line-height:1.22; margin-top:20px; }
  .hero-immersive .hero-english { font-size:10px; letter-spacing:1.2px; margin-top:19px; }
  .hero-immersive .hero-description { font-size:15px; line-height:1.9; max-width:510px; margin-top:18px; }
  .hero-immersive .hero-buttons { margin-top:26px; gap:24px; }
  .hero-immersive .hero-buttons .button { min-width:150px; }
  .hero-immersive .hero-buttons .text-link { font-size:13px; }
  .hero-orbit { --orbit-size:222px; --orbit-radius:101px; --orbit-font:10px; top:26px; right:-28px; }
  .hero-orbit::after { opacity:.3; }
  .hero-bottom { left:20px; right:20px; bottom:18px; align-items:flex-end; gap:12px; padding-top:12px; }
  .hero-next { font-size:9px; gap:9px; letter-spacing:.5px; }
  .hero-image-credit { font-size:8px; letter-spacing:0; text-align:right; }
  html[lang=en] .hero-immersive h1 { font-size:clamp(2.8rem,12vw,4.75rem); letter-spacing:-2px; }
  html[lang=en] .hero-immersive .hero-english { font-size:10px; }
  html[lang=en] .hero-immersive .hero-description { font-size:15px; }
  .about-note { gap:20px; }
  .about-orbit { --orbit-size:108px; --orbit-radius:46px; --orbit-font:7.5px; }
  .focus-orbit { --orbit-size:110px; --orbit-radius:47px; --orbit-font:8px; }
  .focus-card-top { margin-bottom:21px; }
  .focus-card-top > svg { width:36px; height:36px; margin-right:8px; }
  .media-orbit { margin:23px 0; }
  .editorial-feature { min-height:470px; }
  .editorial-feature h3 { margin-top:0; }
  .resource-orbit { margin-bottom:22px; }
  .join-orbit { --orbit-size:112px; --orbit-radius:49px; --orbit-font:7.5px; left:auto; right:-5px; top:19px; opacity:.15; }
  .join-orbit .orbit-center { font-size:42px; }
  .footer-orbit { --orbit-size:90px; --orbit-radius:38px; --orbit-font:7px; }
  .back-top { width:90px; height:90px; }
}
@media (prefers-reduced-motion:reduce) {
  .orbit-ring { transform:rotate(0deg)!important; }
  .character-orbit { --orbit-turn:0deg!important; }
}
