:root{--ink:#30322b;--soft:#64665c;--pink:#8a4c75;--cream:#fbf8ef;--green:#ccdf9b;--purple:#9c82bf}
body{background:var(--cream);font-size:18px;line-height:1.55}
h1,h2,h3,.lg{font-family:Fredoka,sans-serif;font-weight:500;letter-spacing:-.025em;line-height:1.1}
header{padding:22px max(4vw,20px);background:#fbf8eff5;box-shadow:none;border-bottom:1px solid #e4e4d7;gap:24px;backdrop-filter:blur(16px)}
header .logo{font-family:Fredoka,sans-serif;font-weight:700;font-size:27px;letter-spacing:-1.5px}header .logo b{color:#809653}nav{display:flex;align-items:center;gap:28px}nav a{font-size:14px;margin:0;color:var(--ink);font-weight:500;white-space:nowrap}nav a:hover{color:#8a4c75}.nav-studio{border:1px solid #969c84;border-radius:30px;padding:10px 18px}
main{max-width:1480px;padding:0 5vw 40px}section{padding:90px 0 0;scroll-margin-top:110px}.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;text-align:left;padding:64px 0 40px;align-items:center}.eyebrow,.hero .eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:#69734c;text-transform:uppercase}.hero h1{font-size:clamp(40px,4.7vw,72px);line-height:.98;margin:22px 0 24px}.hero h1 .p1{color:#34432f}.hero h1 .p2{color:#82964c}.hero .hook{font-family:Fredoka,sans-serif;font-size:clamp(24px,2.35vw,36px);color:#414337;line-height:1.2;letter-spacing:-.5px;margin:0 0 20px}.hero p.lede{font-size:17px;max-width:390px;margin:0;line-height:1.65;color:var(--soft)}.hero-art{position:relative;margin:0;align-self:stretch;min-height:540px}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:48% center;border-radius:150px 150px 28px 28px;display:block}.hero-art figcaption{position:absolute;bottom:20px;left:20px;right:20px;color:#fff;background:#221b418c;backdrop-filter:blur(12px);padding:14px 18px;border:1px solid #ffffff30;border-radius:14px;font-size:13px}.hero-art figcaption span{display:block;font-size:9px;letter-spacing:2px;color:#d7d0ed;margin-bottom:3px}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:28px 0}.cta{font-family:Fredoka,sans-serif;font-size:15px;font-weight:500;background:#364c35;color:#fff;border-radius:50px;padding:15px 22px;margin:0;box-shadow:none;line-height:1.3}.cta:hover{background:#526747}.cta:active{box-shadow:none;transform:translateY(1px)}.text-link{font-size:14px;color:#364c35;text-underline-offset:6px}.dev-note{font-size:11px;color:#72776a;max-width:330px}.dev-note i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#92a861;margin-right:6px}.welcome-strip{border-block:1px solid #dcded0;padding:23px 0;display:flex;justify-content:space-around;gap:20px;text-align:center;font-size:15px;color:#6e775f}.welcome-strip span:before{content:'✳';color:#9cab76;margin-right:13px}
h2.sec{font-size:clamp(28px,3.3vw,48px);margin-bottom:17px;font-weight:500;color:var(--ink);line-height:1.07}h2.sec .accent{color:#81924f}.secsub{font-size:17px;line-height:1.7;max-width:720px;margin-bottom:30px}.studio-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding-top:80px}.studio-visual{position:relative}.studio-visual img{width:100%;display:block;border-radius:24px;aspect-ratio:1.2;object-fit:cover}.art-label{position:absolute;left:20px;bottom:18px;font-size:9px;letter-spacing:1.7px;color:#fff}.studio-copy .eyebrow{margin-bottom:17px}.studio-copy>p{max-width:460px}.studio-copy>p:not(.eyebrow){color:var(--soft);font-size:17px;margin:18px 0}.studio-copy .studio-small{font-size:14px!important}.studio-copy .cta{margin-top:8px}.free-note{display:block;color:#7b7e72;font-size:11px;margin-top:12px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:26px}.section-heading .eyebrow{margin-bottom:15px}.section-heading>p{max-width:370px;font-size:16px;color:var(--soft);padding-bottom:15px}.night-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px}.night-grid figure{margin:0}.night-grid img{display:block;width:100%;height:280px;object-fit:cover;border-radius:18px}.night-grid figure:first-child img{height:350px}.night-grid figure:nth-child(2){padding-top:42px}.night-grid figcaption{font-size:16px;padding-top:14px}.night-grid figcaption span{display:block;font-size:9px;letter-spacing:1.5px;color:#7f846e;margin-bottom:6px}
.cast{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.mate{box-shadow:none;padding:0;background:transparent}.mate img.pic,.mate img.sheet{aspect-ratio:1;object-fit:cover;border-radius:18px;box-shadow:none;margin-bottom:16px}.mate h3{font-size:24px;margin-bottom:7px}.mate .job{color:#788451;font-size:10px;letter-spacing:1px;min-height:30px}.mate .where{font-size:12px;line-height:1.5;margin:8px 0}.mate p{font-size:14px;line-height:1.6;color:var(--soft)}.mate:nth-child(n+5){display:none}.cast.expanded .mate{display:block}.cast-toggle{display:block;margin:32px auto 0;padding:13px 24px;border:1px solid #bdc4ab;border-radius:30px;background:transparent;color:#47533a;font-family:inherit;font-size:14px;cursor:pointer}.card{box-shadow:none;background:#f2f1e7;border:1px solid #e5e4d7;border-radius:20px}.games{grid-template-columns:repeat(3,1fr);gap:20px}.game{background:#e9eddf;box-shadow:none;border-radius:20px;padding:28px}.game:nth-child(2){background:#f2e4d8}.game:nth-child(3){background:#e9e3f2}.game h3{font-size:24px;line-height:1.2}.game p{font-size:15px;line-height:1.6;margin:17px 0 24px}.playbtn{font-family:Fredoka,sans-serif;font-size:14px;font-weight:500;background:#344b35;color:white;box-shadow:none;padding:12px 20px}.playbtn:active{box-shadow:none}.arcadeimg{max-height:380px;object-fit:cover}.tv{max-width:950px;background:#353b31;padding:18px;box-shadow:none}.tv .row{font-size:12px}.tv .knob{width:14px;height:14px;background:#cbda94}.tile{border:2px solid transparent;background:#efefe6;border-radius:17px;padding:7px;font-family:inherit;color:inherit}.tile.sel{border-color:#81924f;box-shadow:none}.tile .nm{font-size:15px}.tile .no{font-size:10px}.tile img{border-radius:12px}.detail{margin-top:26px}.detail img{max-height:300px;object-fit:cover}.detail p{font-size:18px}.detail .tag{background:#e3eacf;color:#53653d;font-size:11px}.photo{box-shadow:0 8px 22px #353c2810;border:1px solid #e5e5d9;padding:12px 12px 5px}.photo img{aspect-ratio:1.2;object-fit:cover}.photo figcaption{font-size:14px;padding:12px 2px}.worlds{gap:18px}.world{box-shadow:none;background:#f0f0e5;border-radius:18px;padding:24px}.world h3{font-size:20px;line-height:1.2;margin-bottom:12px}.world p{font-size:15px;line-height:1.65}.notebook-intro{margin:100px 0 30px}.notebook-intro .eyebrow{margin-bottom:13px}.notebook-intro p:last-child{font-size:16px;color:var(--soft)}.world-notebook{border-top:1px solid #d9decc;scroll-margin-top:110px}.world-notebook:last-of-type{border-bottom:1px solid #d9decc}.world-notebook summary{display:flex;justify-content:space-between;gap:20px;list-style:none;padding:23px 2px;cursor:pointer;font-size:19px}.world-notebook summary::-webkit-details-marker{display:none}.world-notebook summary span{color:#81924f}.world-notebook[open] summary span{transform:rotate(45deg)}.world-notebook section{padding:12px 0 36px}.world-notebook h2.sec{font-size:30px}.diary-note{padding:12px 18px;border-left:3px solid #b2bd98;font-size:14px;margin-bottom:18px;color:var(--soft)}footer{margin:80px -5vw -40px;padding:70px 5vw;background:#e9eddf;border-radius:40px 40px 0 0}footer p{font-size:15px;line-height:1.7}.socials a{font-family:inherit;background:transparent;border:1px solid #bec8ae;box-shadow:none;color:#42543b;font-size:14px;padding:12px 24px}.skip-link{position:absolute;left:15px;top:-70px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #a15882;outline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}
@media(min-width:1500px){main{padding-inline:60px}.hero-art{min-height:620px}}
@media(max-width:1050px){nav{gap:16px}nav a{font-size:12px}nav a:first-child{display:none}.hero{gap:26px}.hero-art{min-height:510px}.hero-actions{gap:14px}.hero .lede{font-size:16px}.night-grid img{height:230px}.night-grid figure:first-child img{height:290px}}
@media(max-width:820px){header{padding:15px 5vw}nav{display:flex}nav a:not(.nav-studio){display:none}.nav-studio{font-size:12px;padding:9px 14px}header .logo{font-size:24px}.hero{grid-template-columns:1fr;gap:30px;padding-top:35px}.hero-copy{max-width:600px}.hero h1{font-size:clamp(44px,8.5vw,66px)}.hero .hook br{display:none}.hero-art{min-height:0}.hero-art img{height:auto;aspect-ratio:1.5;border-radius:70px 70px 20px 20px;object-fit:cover}.hero .lede{max-width:480px}.hero-actions{margin:22px 0}.dev-note{max-width:none}.welcome-strip{font-size:12px;gap:12px}.welcome-strip span:before{margin-right:5px}.studio-feature{gap:30px}.studio-copy>p:not(.eyebrow){font-size:15px}.cast{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.games{grid-template-columns:1fr}.night-grid{grid-template-columns:1fr 1fr;gap:24px}.night-grid figure:first-child{grid-column:1/-1}.night-grid figure:nth-child(2){padding:0}.night-grid figure:first-child img{height:auto;aspect-ratio:1.8}.night-grid img{height:auto;aspect-ratio:1.25}.section-heading{display:block}.section-heading>p{max-width:560px}.section-heading h2 br{display:none}section{padding-top:65px}}
@media(max-width:560px){main{padding-inline:5vw}.hero{padding-top:28px}.hero h1{font-size:45px}.hero .hook{font-size:24px}.hero-art img{aspect-ratio:1.12;border-radius:45px 45px 18px 18px}.hero-art figcaption{left:12px;right:12px;bottom:12px;padding:10px 13px;font-size:11px}.welcome-strip{display:block;padding:17px 0}.welcome-strip span{display:inline-block;margin:5px 8px}.studio-feature{grid-template-columns:1fr;padding-top:50px;gap:26px}.studio-visual img{aspect-ratio:1.45}.studio-copy .eyebrow{margin-bottom:12px}.studio-copy .studio-small{font-size:14px!important}h2.sec{font-size:34px}.secsub{font-size:16px}.night-grid{gap:22px 13px}.night-grid figcaption{font-size:13px}.night-grid figcaption span{font-size:8px;letter-spacing:1px}.mate h3{font-size:21px}.mate .job{font-size:9px}.mate p{font-size:13px}.mate .where{font-size:11px}.card{padding:16px}.world-notebook summary{font-size:17px;padding:20px 0}.selectgrid{grid-template-columns:repeat(3,1fr)}.photos{grid-template-columns:1fr}.photo{max-width:430px;margin:auto}.tv{padding:10px}.tv .row{gap:10px}.tv .row>span:first-child{display:none}.detail{grid-template-columns:1fr}.detail img{max-width:260px}.notebook-intro{margin-top:70px}.socials{gap:8px}.socials a{padding:10px 16px}.worlds,.soon{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
