/* Dark Gym 3.29.0 — original vector architecture, stone and violet light. */
.dg-site .dg-portal{position:relative;isolation:isolate;overflow:hidden;background:var(--night);color:var(--paper)}
.dg-site .dg-portal>.dg-wrap{position:relative;z-index:1}
.dg-site .dg-portal-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 80% 40%,#6240a022,transparent 60%)}
.dg-site .dg-portal-halo{position:absolute;left:calc(76% - 180px);top:calc(36% - 140px);width:360px;height:280px;background:radial-gradient(ellipse,#73409a99,transparent 68%);opacity:.65}
.dg-site .dg-portal-halo--two{left:calc(73% - 140px);top:calc(58% - 110px);width:280px;height:220px;background:radial-gradient(ellipse,#c5a9f13d,transparent 66%);opacity:.5}
.dg-site .dg-portal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-block:34px 16px}
.dg-site .dg-portal-copy{position:relative;z-index:2;min-width:0}
.dg-site .dg-portal-eyebrow{display:flex;align-items:center;gap:12px;color:var(--violet);font-size:.6875rem;letter-spacing:.06em;line-height:1.7}
.dg-site .dg-portal-eyebrow img{width:22px;height:21px}
.dg-site .dg-portal-eyebrow>span>span{padding-inline:8px;color:#9e8dac}
.dg-site .dg-portal-kicker{margin-top:32px;color:var(--paper);font-size:.625rem;letter-spacing:.13em;line-height:1.8;text-transform:uppercase}
.dg-site .dg-portal h1{max-width:none;margin-top:14px;color:var(--paper);font-size:clamp(2.45rem,10vw,5rem);font-weight:500;letter-spacing:-.065em;line-height:1.08;text-wrap:initial;overflow-wrap:break-word}
.dg-site .dg-portal h1 em{color:var(--violet);font-style:normal}
.dg-site .dg-portal-lead{max-width:38ch;margin-top:24px;color:#d2cbd8;font-size:.875rem;line-height:1.9;text-wrap:pretty}
.dg-site .dg-portal-lead br{display:none}
.dg-site .dg-portal-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin-top:26px}
.dg-site .dg-portal .dg-portal-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:14px 20px;border:1px solid transparent;border-radius:var(--radius);background:var(--violet);color:var(--ink);font-size:.8125rem;line-height:1.6;white-space:normal;transform:none}
.dg-site .dg-portal-secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:10px 0;border-bottom:1px solid #c5a9f14d;color:var(--paper);font-size:.75rem;line-height:1.7}
.dg-site .dg-portal-note{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin-top:19px;color:#b6a9c3;font-size:.6875rem;line-height:1.8}
.dg-site .dg-portal-note>span{color:var(--violet)}
.dg-site .dg-portal-figure{min-width:0;width:min(100%,330px);margin:0 auto}
.dg-site .dg-portal-art{position:relative;isolation:isolate;aspect-ratio:620/650;width:100%;pointer-events:none}
.dg-site .dg-portal-architecture{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dg-site .dg-portal-ground{position:absolute;z-index:-1;left:10%;right:2%;bottom:2%;height:18%;background:radial-gradient(ellipse,#73409a55,transparent 68%)}
.dg-site .dg-portal-sigil{position:absolute;left:24%;top:7%;width:60%;aspect-ratio:31.353/29.313}
.dg-site .dg-portal-rim,.dg-site .dg-portal-extrusion,.dg-site .dg-portal-beam{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dg-site .dg-portal-extrusion{transform:translate(4px,5px)}
.dg-site .dg-portal-beam{opacity:.15}
.dg-site .dg-portal-art-index{position:absolute;left:2%;top:42%;font-size:.5625rem;line-height:1.5;letter-spacing:.2em;color:#b6a9c3;writing-mode:vertical-rl}
.dg-site .dg-portal-figure figcaption{position:relative;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 12px;margin-top:-6px;padding-top:6px;border-top:1px solid #c5a9f126;color:#b6a9c3;font-size:.625rem;line-height:1.8}
.dg-site .dg-portal-figure figcaption>a{display:flex;align-items:center;gap:12px;min-height:44px;color:var(--paper)}
.dg-site .dg-portal-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 16px;padding-block:8px 16px}
.dg-site .dg-portal-scroll{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#d2cbd8;font-size:.625rem;line-height:1.7}
.dg-site .dg-portal-scroll>span{color:var(--violet);font-size:1rem}
.dg-site .dg-portal-motion-slot{min-height:44px;display:flex;align-items:center;justify-content:flex-end}
.dg-site .dg-portal-motion{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;border:0;background:none;color:#b6a9c3;font:inherit;font-size:.625rem;line-height:1.7;cursor:pointer}
.dg-site .dg-portal-motion>span:first-child{width:12px;text-align:center;color:var(--violet)}
.dg-site .dg-portal :focus-visible{outline:3px solid var(--violet);outline-offset:5px}
@media(min-width:600px){
 .dg-site .dg-portal-layout{padding-block:44px 22px;gap:10px}
 .dg-site .dg-portal h1{font-size:clamp(4rem,9vw,6rem)}
 .dg-site .dg-portal-figure{width:min(76%,470px)}
 .dg-site .dg-portal-lead{font-size:1rem;max-width:42ch}
 .dg-site .dg-portal-lead br{display:initial}
 .dg-site .dg-portal-controls{padding-block:6px 22px}
 .dg-site .dg-portal-scroll,.dg-site .dg-portal-motion{font-size:.6875rem}
}
@media(min-width:1000px){
 .dg-site .dg-portal-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:0;padding-block:28px 10px;min-height:650px}
 .dg-site .dg-portal-copy{padding-bottom:34px}
 .dg-site .dg-portal h1{font-size:clamp(3.9rem,6vw,6.25rem);line-height:1.09}
 .dg-site .dg-portal-kicker{margin-top:44px}
 .dg-site .dg-portal-lead{margin-top:28px;font-size:.9375rem;max-width:39ch}
 .dg-site .dg-portal-actions{gap:26px;margin-top:32px}
 .dg-site .dg-portal-note{margin-top:24px}
 .dg-site .dg-portal-figure{width:100%;max-width:560px;margin-inline:auto;margin-top:0}
 .dg-site .dg-portal-figure figcaption{margin-inline:14%;font-size:.625rem}
 .dg-site .dg-portal-halo{width:400px;height:320px}
 .dg-site .dg-portal-halo--two{width:300px;height:240px}
 .dg-site .dg-portal-controls{border-top:1px solid #c5a9f126;padding-block:12px 18px}
}
@media(min-width:1480px){.dg-site .dg-portal-layout{min-height:710px}}
@media(hover:hover){.dg-site .dg-portal-primary:hover{background:var(--paper);color:var(--ink)}.dg-site .dg-portal-secondary:hover,.dg-site .dg-portal-scroll:hover,.dg-site .dg-portal-motion:hover,.dg-site .dg-portal-figure figcaption>a:hover{color:var(--violet)}}
@keyframes dg-portal-light-one{0%,100%{transform:translate3d(-24px,12px,0) scale(.98);opacity:.5}18%{opacity:.85}50%{transform:translate3d(28px,-22px,0) scale(1.05);opacity:.7}80%{opacity:.45}}
@keyframes dg-portal-light-two{0%,100%{transform:translate3d(24px,-12px,0);opacity:.6}35%{transform:translate3d(-28px,18px,0);opacity:.35}65%{opacity:.8}}
@keyframes dg-portal-edge{0%,100%{opacity:.15}8%{opacity:1}22%{opacity:.65}36%,88%{opacity:.15}}
@media(prefers-reduced-motion:no-preference){
 .dg-site .dg-portal-halo--one{animation:dg-portal-light-one 14s ease-in-out infinite}
 .dg-site .dg-portal-halo--two{animation:dg-portal-light-two 14s ease-in-out infinite}
 .dg-site .dg-portal-beam{animation:dg-portal-edge 14s ease-in-out infinite}
 .dg-site .dg-portal-beam--two{animation-delay:-9.333333s}
 .dg-site .dg-portal-beam--three{animation-delay:-4.666667s}
 .dg-site .dg-portal :is(.dg-portal-halo,.dg-portal-beam){animation-play-state:paused}
 .dg-site .dg-portal.dg-portal--playing :is(.dg-portal-halo,.dg-portal-beam){animation-play-state:running}
 .dg-site .dg-portal.dg-portal--playing .dg-portal-halo{will-change:transform,opacity}
 .dg-site .dg-portal.dg-portal--playing .dg-portal-beam{will-change:opacity}
}
@media(max-width:599px){.dg-site .dg-portal-halo{left:calc(50% - 140px);top:calc(69% - 110px);width:280px;height:220px}.dg-site .dg-portal-halo--two{left:calc(50% - 110px);top:calc(78% - 90px);width:220px;height:180px}}
@media(prefers-reduced-motion:reduce){.dg-site .dg-portal *{animation:none!important;transition:none!important;scroll-behavior:auto}.dg-site .dg-portal-beam{opacity:.25}}
/* 3.30.9: stacked hero starts with the existing artwork, then centered copy. */
@media(max-width:999px){
 .dg-site .dg-home--reference .dg-portal-layout{gap:24px;padding-top:12px}
 .dg-site .dg-home--reference .dg-portal-figure{grid-row:1;width:min(100%,320px)}
 .dg-site .dg-home--reference .dg-portal-copy{grid-row:2;text-align:center}
 .dg-site .dg-home--reference .dg-portal-eyebrow-space{display:none}
 .dg-site .dg-home--reference .dg-portal-kicker{margin-top:0}
 .dg-site .dg-home--reference .dg-portal h1,.dg-site .dg-home--reference .dg-portal-lead{margin-inline:auto}
 .dg-site .dg-home--reference .dg-portal-actions,.dg-site .dg-home--reference .dg-portal-note{justify-content:center}
 .dg-site .dg-home--reference .dg-portal-figure figcaption{justify-content:center;gap:0 16px;text-align:center}
 .dg-site .dg-home--reference .dg-portal-atmosphere{background:radial-gradient(ellipse at 50% 20%,#6240a022,transparent 60%)}
 .dg-site .dg-home--reference .dg-portal-halo{left:calc(50% - 140px);top:140px;width:280px;height:220px}
 .dg-site .dg-home--reference .dg-portal-halo--two{left:calc(50% - 110px);top:220px;width:220px;height:180px}
}
@media(forced-colors:active){.dg-site .dg-portal-atmosphere,.dg-site .dg-portal-figure{display:none}.dg-site .dg-portal h1 em{color:CanvasText}.dg-site .dg-portal-layout{display:block;min-height:0}.dg-site .dg-portal-primary{border-color:ButtonText}}
@media print{.dg-site .dg-portal{background:#fff;color:#111}.dg-site .dg-portal-atmosphere,.dg-site .dg-portal-figure,.dg-site .dg-portal-controls{display:none}.dg-site .dg-portal-layout{display:block;min-height:0;padding-block:24px}.dg-site .dg-portal :is(h1,p,em,a){color:#111!important}.dg-site .dg-portal h1{font-size:40pt}}
