/* RH studio: citron / aubergine / lilac. Explicit art-directed color theme. */
:root{--blue:#553060;--lemon:#ddfb54;--ink:#301638;--paper:#faf8ff;--lilac:#cdc3ff;--aubergine:#301638;--muted:#67596d;--line:#d7ccde;--blue-tint:#eee9fb;--yellow-tint:#f0f7c9;--hero-butter:#eee9fb}
body{background:var(--paper)}
::selection{background:var(--lemon);color:var(--aubergine)}
body .site-nav.global-nav{background:var(--paper);border-bottom:1px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none}
body .site-nav.global-nav nav{background:none;box-shadow:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
body .site-nav.global-nav .logo{color:var(--aubergine)}
body:not(.examples-page) .site-nav.global-nav{background:var(--aubergine);border-bottom:1px solid #cdc3ff30}
body:not(.examples-page) .site-nav.global-nav .logo,body:not(.examples-page) .site-nav.global-nav nav>a,body:not(.examples-page) .site-nav.global-nav nav>button,body:not(.examples-page) .nav-group>summary{color:var(--paper)}
body:not(.examples-page) .site-nav.global-nav nav .nav-contact{color:var(--aubergine);border-color:var(--lemon)}
body:not(.examples-page) .site-nav.global-nav .logo{color:var(--lemon)}
.global-nav .nav-submenu{background:var(--paper);border-color:var(--aubergine);box-shadow:5px 5px 0 var(--lilac)}
body:not(.examples-page) .global-nav .nav-group[open]>summary{color:var(--lemon)}
body:not(.examples-page) .global-nav summary:focus-visible,body:not(.examples-page) .global-nav a:focus-visible,body:not(.examples-page) .global-nav button:focus-visible{outline-color:var(--lemon)}
.rh-opening{background:var(--aubergine);color:var(--paper);padding:110px 5% 0;overflow:clip}
.rh-hero-inner{max-width:1400px;margin:auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:3%;align-items:center;min-height:620px;padding:30px 0 42px}
.rh-kicker{font-size:12px;letter-spacing:.13em;line-height:1.6;font-weight:600}
.rh-kicker span{display:block;color:var(--lilac);letter-spacing:.06em;margin-top:5px}
.rh-copy h1{font:400 clamp(64px,7.2vw,108px)/.94 'Lilita One',sans-serif;letter-spacing:-.035em;margin:28px 0}
.rh-copy h1 em{font-style:normal;color:var(--lemon)}
.rh-copy .rh-intro{font-size:clamp(18px,1.7vw,22px);line-height:1.55;max-width:34ch;color:#eee7f5}
.rh-current{font-size:13px;color:var(--lilac);margin:20px 0 30px;line-height:1.7}
.rh-button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;min-height:52px;padding:14px 22px;background:var(--lemon);color:var(--aubergine);border:1.5px solid var(--aubergine);border-radius:8px;font:600 15px/1.4 'DM Sans',sans-serif;box-shadow:4px 4px 0 var(--lilac);cursor:pointer;transition:transform .2s,box-shadow .2s}
.rh-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--lilac)}
.rh-copy a:focus-visible,.rh-hotspot:focus-visible{outline:3px solid var(--lemon);outline-offset:6px}
.rh-world{min-width:0;position:relative}
.rh-art{position:relative;max-width:720px;margin:auto;transform-origin:50% 80%}
.rh-art>img{width:100%;height:auto;filter:drop-shadow(0 24px 14px #140a2045)}
.rh-world-caption{font-size:13px;line-height:1.7;color:var(--lilac);text-align:center;margin-top:8px}
.rh-world-caption span{display:block;font-size:11px;opacity:.85}
.rh-hotspot{position:absolute;display:flex;align-items:center;gap:7px;background:none;border:0;padding:0;color:var(--aubergine);font:600 12px/1.2 'DM Sans',sans-serif;cursor:pointer;min-height:44px}
.rh-hotspot[hidden]{display:none}
.rh-dot{display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--aubergine);border-radius:50%;background:var(--lemon);box-shadow:3px 3px 0 var(--aubergine)}
.rh-tag{padding:10px 12px;border:1.5px solid var(--aubergine);border-radius:6px;background:var(--paper);box-shadow:3px 3px 0 var(--aubergine);white-space:nowrap;transition:transform .2s}
.rh-hotspot:hover .rh-tag,.rh-hotspot:focus-visible .rh-tag{transform:translateY(-4px);background:var(--lemon)}
.rh-desk{top:42%;right:0}.rh-printer{top:70%;right:0}.rh-arcade{top:61%;left:4%}
.rh-directory{max-width:1400px;margin:auto;border-top:1px solid #cdc3ff40;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:13px}
.rh-directory>span{font-size:10px;letter-spacing:.14em;color:var(--lilac)}
.rh-directory a{padding:8px 0}.rh-directory a:hover{color:var(--lemon)}
body .work-section{padding-top:90px}
body .project{border:1.5px solid var(--aubergine);box-shadow:8px 8px 0 var(--lilac);border-radius:16px;overflow:hidden}
body .project:nth-of-type(2){box-shadow:8px 8px 0 var(--lemon)}
body .home-resources{border-top:1px solid var(--line);padding-top:80px}
body .home-resource-preview,body .examples-page .index-art,body .pack-index-preview{border:1.5px solid var(--aubergine);border-radius:8px;box-shadow:6px 6px 0 var(--lilac)}
body .home-resource-preview{background:var(--yellow-tint);transition:transform .2s}
body .home-resource-preview:hover{transform:translateY(-5px)}
body .kit-feature{background:var(--aubergine);color:var(--paper);border:1px solid var(--aubergine);border-radius:8px;box-shadow:6px 6px 0 var(--lilac)}
body .kit-feature h3 a{color:var(--paper)}body .kit-feature .category{color:var(--lemon)}
body .kit-hero h1,body .kit-body legend{color:var(--aubergine)}
body .kit-cover{background:var(--aubergine);border-color:var(--aubergine);color:var(--lemon);box-shadow:12px 12px 0 var(--lilac)}
body .kit-body fieldset{border-color:var(--aubergine)}body .kit-field textarea:focus{outline-color:var(--aubergine)}body .kit-save{background:var(--blue-tint);border-color:var(--aubergine)}
body .practice-section{background:var(--lilac)}
body .glass-card{background:var(--paper);border:2px solid var(--aubergine);box-shadow:8px 8px 0 var(--aubergine);backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:16px;transform:none}
body .glass-light{display:none}body .glass-stage::before,body .glass-stage::after{display:none}
body .glass-tabs button[aria-pressed=true]{background:var(--lemon);color:var(--aubergine)}
body .collaboration-panel{border:1px solid var(--aubergine);box-shadow:7px 7px 0 var(--lilac);border-radius:12px}
body .contact-section,body .closing{background:var(--aubergine);color:var(--paper)}
body .contact-section h2,body .closing h2{color:var(--paper)}body .contact-section h2 em,body .closing h2 em{color:var(--lemon)}
body .contact-section .eyebrow,body .contact-section>a{color:var(--lilac)}
body .reveal{opacity:1;transform:none}
body.rh-motion .rh-copy,body.rh-motion .rh-art{animation:rh-arrive .85s cubic-bezier(.2,.7,.2,1) backwards}body.rh-motion .rh-art{animation-delay:.15s}
body.rh-motion .rh-hotspot{animation:rh-arrive .4s .75s both}
@keyframes rh-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
#rh-arcade{width:min(92vw,480px);max-height:90svh;overflow:auto;padding:30px;background:var(--aubergine);color:var(--paper);border:2px solid var(--lilac);border-radius:16px;box-shadow:10px 10px 0 #cdc3ff44}
#rh-arcade::backdrop{background:#160d20d9}#rh-arcade h2{font:400 42px/1.05 'Lilita One',sans-serif;margin:25px 0 15px;color:var(--lemon)}#rh-arcade p{line-height:1.6}.rh-close{display:block;margin-left:auto;background:none;border:0;color:var(--paper);padding:8px;cursor:pointer}#arcade-status{color:var(--lilac);margin-top:20px;min-height:26px}
#arcade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0 22px}#arcade-grid button{font-size:30px;min-height:74px;background:var(--lilac);color:var(--aubergine);border:2px solid var(--paper);border-radius:6px;cursor:pointer}#arcade-grid button:disabled{opacity:.65;cursor:default}#rh-arcade .arcade-note{font-size:12px;margin-top:20px;color:var(--lilac)}
@media(min-width:1600px){.rh-hero-inner{min-height:730px}}
@media(max-width:900px){
 .rh-opening{padding-top:95px}.rh-hero-inner{grid-template-columns:1fr 1.1fr;gap:10px;min-height:540px}.rh-copy h1{font-size:65px}.rh-tag{font-size:11px;padding:8px}.rh-directory{flex-wrap:wrap}.rh-directory>span{width:100%}
 body:not(.examples-page) .site-nav.global-nav nav{background:var(--aubergine);border-bottom-color:var(--lilac)}body:not(.examples-page) .nav-menu-toggle{color:var(--lemon);border-color:var(--lilac)}body:not(.examples-page) .nav-shell[open]>.nav-menu-toggle{color:var(--aubergine)}
 .global-nav .nav-submenu{background:var(--paper)}
}
@media(max-width:650px){
 .rh-opening{padding:92px 6% 0}.rh-hero-inner{grid-template-columns:1fr;padding-top:18px;gap:32px;min-height:0}.rh-copy h1{font-size:clamp(62px,14vw,88px);margin:22px 0}.rh-copy .rh-intro{font-size:18px;max-width:34ch}.rh-current{font-size:12px;margin:16px 0 24px}.rh-kicker{font-size:11px}.rh-world{margin:0 -3%}.rh-desk{top:42%;right:2%}.rh-printer{top:75%;right:1%}.rh-arcade{left:0;top:60%}.rh-dot{width:28px;height:28px}.rh-directory{gap:5px;align-items:flex-start;flex-direction:column;padding:20px 0}.rh-directory a{font-size:13px;min-height:44px}.rh-directory>span{margin-bottom:5px}
 body .project{box-shadow:4px 4px 0 var(--lilac)}body .collaboration-panel{margin-left:6%;margin-right:6%}body .glass-card{box-shadow:4px 4px 0 var(--aubergine)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.rh-motion .rh-copy,body.rh-motion .rh-art,body.rh-motion .rh-hotspot{animation:none}.rh-art,.rh-button,.rh-tag,.home-resource-preview{transition:none!important;transform:none!important}}
body.rh-motion-off{scroll-behavior:auto}body.rh-motion-off .rh-art{transform:none!important}
body .kit-option[open] summary{color:var(--aubergine)}body .kit-body summary:focus-visible,body .kit-body button:focus-visible{outline-color:var(--aubergine)}body .kit-disclosure,body .kit-sources blockquote{border-color:var(--aubergine)}
body .practice-section,body .practice-section h2 em,body .demo-caption,body .demo-caption span,body .skills-list>div>span{color:var(--aubergine)}
body .skills-list>div{border-bottom-color:#30163840}body .practice-section .skill-step:focus-visible{outline-color:var(--aubergine)}
body .glass-stage{background:none;border:0;box-shadow:none;padding:0;overflow:visible}body .glass-tabs{background:var(--blue-tint);border:1px solid var(--line);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
