:root{--pink:#ff1493;--pink-deep:#d90075;--blood:#a10022;--sky:#20c9ff;--sky-dark:#039fda;--midnight:#170a28;--paper:#fff8ed;--white:#fff;--yellow:#ffe14a;--line:4px solid var(--midnight)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--midnight);margin:0;font-family:Nunito Sans,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-transform:uppercase;font-family:Barlow Condensed,sans-serif}.announcement{background:var(--midnight);color:var(--white);text-align:center;letter-spacing:.24em;text-transform:uppercase;padding:11px 24px;font-size:.72rem;font-weight:900}.site-header{background:var(--sky);border-bottom:var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:108px;padding:12px clamp(20px,4vw,70px);display:flex}.header-game-brand{flex:none}.brand-item{position:relative}.brand-item>span{z-index:30;background:var(--pink);width:max-content;max-width:230px;color:var(--white);border:3px solid var(--midnight);box-shadow:5px 5px 0 var(--midnight);letter-spacing:.05em;text-transform:uppercase;opacity:0;pointer-events:none;padding:10px 13px;font-size:.7rem;font-weight:900;transition:opacity .2s,transform .2s;position:absolute;top:calc(100% + 12px);left:0;transform:translateY(-8px)}.brand-item:hover>span,.brand-item:focus-within>span{opacity:1;transform:translateY(0)}.site-logo{background:var(--paper);border:var(--line);width:190px;box-shadow:6px 6px 0 var(--blood);text-transform:uppercase;flex-direction:column;padding:8px 14px 10px;font-family:Barlow Condensed,sans-serif;font-weight:900;line-height:.78;transition:transform .2s;display:flex;transform:rotate(-1deg)}.site-logo:hover,.site-logo:focus-visible{transform:rotate(1deg)translateY(-3px)}.site-logo span{color:var(--pink);font-size:1.45rem}.site-logo strong{font-size:1.1rem}.site-nav{letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:clamp(16px,2vw,32px);font-size:.75rem;font-weight:900;display:flex}.site-nav a{border-bottom:4px solid #0000;padding:8px 0}.site-nav a:hover,.site-nav a:focus-visible{border-color:var(--pink)}.header-cta{background:var(--pink);color:var(--white);border:var(--line);box-shadow:5px 5px 0 var(--midnight);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:9px;padding:13px 19px;font-size:.8rem;font-weight:900;transition:transform .18s,box-shadow .18s;display:inline-flex}.header-cta svg{font-size:1.15rem}.header-cta:hover,.header-cta:focus-visible{box-shadow:2px 2px 0 var(--midnight);transform:translate(3px,3px)}.home-hero{isolation:isolate;background-color:var(--sky);border-bottom:var(--line);background-image:radial-gradient(#ffffffeb 2px,#0000 2.2px),linear-gradient(112deg,#0000 0 47%,#ffffff38 47% 49%,#0000 49%);background-size:27px 27px,215px 215px;grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(45px,6vw,100px);min-height:820px;padding:72px clamp(24px,5.5vw,92px) 110px;animation:22s linear infinite heroPatternDrift;display:grid;position:relative;overflow:hidden}.hero-sunburst{z-index:-1;background:repeating-conic-gradient(from 10deg, #d90075e0 0 11deg, transparent 11deg 23deg);filter:drop-shadow(0 14px #170a2838);pointer-events:none;border-radius:50%;width:980px;height:980px;animation:42s linear infinite sunburstTurn;position:absolute;top:-25px;right:-240px}.hero-copy{z-index:2;position:relative}.label{border:3px solid var(--midnight);width:fit-content;box-shadow:5px 5px 0 var(--midnight);letter-spacing:.13em;text-transform:uppercase;margin-bottom:22px;padding:9px 14px;font-size:.72rem;font-weight:900}.yellow-label{background:var(--yellow)}.pink-label{background:var(--pink);color:var(--white)}.blue-label{background:var(--sky);color:var(--midnight)}.hero-copy h1{letter-spacing:-.04em;margin-bottom:30px;font-size:clamp(4.6rem,7.2vw,8.2rem);line-height:.72}.hero-copy h1>span{width:fit-content;display:block}.hero-copy .pink-line{color:var(--pink);text-shadow:5px 5px 0 var(--white)}.hero-copy .red-line{background:var(--blood);color:var(--white);box-shadow:8px 8px 0 var(--midnight);margin-top:13px;padding:4px 12px 10px;line-height:.8}.hero-intro{background:var(--white);border-left:10px solid var(--pink);max-width:660px;margin-bottom:28px;padding:18px 22px;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:800;line-height:1.55;box-shadow:8px 8px #170a2838}.gameplay-video-button{background:var(--midnight);color:var(--white);border:var(--line);box-shadow:7px 7px 0 var(--pink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;margin:-5px 0 28px;padding:12px 17px;font:900 .78rem Nunito Sans,sans-serif;transition:transform .2s,box-shadow .2s,color .2s;display:block}.gameplay-video-button:hover,.gameplay-video-button:focus-visible{color:var(--yellow);box-shadow:3px 3px 0 var(--pink);transform:translate(4px,4px)rotate(-1deg)}.story-gameplay-button{margin:24px 0 0}.store-buttons{flex-wrap:wrap;gap:14px;display:flex}.store-button{border:var(--line);min-width:220px;min-height:74px;box-shadow:7px 7px 0 var(--midnight);grid-template-columns:1fr;align-items:center;padding:12px 18px;transition:transform .18s,box-shadow .18s;display:grid}.store-button:hover,.store-button:focus-visible{box-shadow:3px 3px 0 var(--midnight);transform:translate(4px,4px)}.store-button small{letter-spacing:.13em;text-transform:uppercase;grid-column:1/-1;font-size:.62rem;font-weight:900}.store-button strong{text-transform:uppercase;font-size:.95rem}.steam-button{background:var(--midnight);color:var(--white);box-shadow:7px 7px 0 var(--pink)}.itch-button{background:var(--white);color:var(--blood)}.hero-visual{z-index:2;min-height:0;padding:26px 0 38px;position:relative}.key-art-frame{z-index:3;background:var(--white);border:6px solid var(--midnight);width:100%;box-shadow:16px 16px 0 var(--blood);cursor:pointer;padding:0;animation:7s ease-in-out infinite keyArtFloat;display:block;position:relative;overflow:hidden;transform:rotate(1.5deg)}.key-art-frame img{aspect-ratio:auto;object-fit:contain;filter:saturate(1.18)contrast(1.05);width:100%;height:auto}.hover-play{z-index:8;background:var(--pink);width:92px;height:92px;color:var(--white);border:5px solid var(--white);box-shadow:9px 9px 0 var(--midnight);opacity:0;border-radius:50%;place-items:center;transition:opacity .25s,transform .25s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-40%)scale(.6)}.hover-play svg{margin-left:5px;font-size:2.4rem}.key-art-frame:hover .hover-play,.key-art-frame:focus-visible .hover-play{opacity:1;animation:1.1s ease-in-out infinite playBounce;transform:translate(-50%,-50%)scale(1)}.collage-tape{z-index:4;background:#ffe14ae6;width:135px;height:35px;position:absolute;top:5px;left:28%;transform:rotate(-8deg);box-shadow:0 3px 4px #0003}.chibi-collage{z-index:4;width:100%;margin-top:18px;padding-bottom:50px;position:relative}.hero-chibi-girls{z-index:5;object-fit:contain;aspect-ratio:1000/562;filter:saturate(1.2)contrast(1.04)drop-shadow(9px 11px #170a287a);width:min(650px,94%);height:auto;max-height:none;margin-left:auto;animation:6.5s ease-in-out infinite chibiBob;position:relative}.collage-badge{z-index:7;background:var(--blood);color:var(--white);border:var(--line);box-shadow:6px 6px 0 var(--midnight);text-align:center;text-transform:uppercase;place-items:center;font-family:Barlow Condensed,sans-serif;font-size:1.15rem;font-weight:900;line-height:.9;display:grid;position:absolute}.clock-badge{border-radius:50%;width:108px;height:108px;animation:5.8s ease-in-out infinite badgeWiggle;top:18%;left:-18px;transform:rotate(-8deg)}.heart-badge{background:var(--pink);clip-path:polygon(50% 94%,7% 50%,4% 29%,15% 9%,36% 4%,50% 20%,64% 4%,85% 9%,96% 29%,93% 50%);width:124px;height:108px;filter:drop-shadow(6px 6px 0 var(--midnight));box-shadow:none;border:0;padding-top:3px;animation:5.4s ease-in-out infinite heartPulse;top:auto;bottom:58px;right:-12px}.collage-stamp{z-index:8;background:var(--yellow);color:var(--blood);border:4px dashed var(--blood);box-shadow:5px 5px 0 var(--midnight);text-transform:uppercase;padding:11px 17px;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;font-weight:900;animation:7s ease-in-out infinite stampRock;position:absolute;bottom:0;right:8px;transform:rotate(-5deg)}.hero-note{z-index:6;background:var(--pink);width:min(300px,64%);color:var(--white);border:var(--line);box-shadow:7px 7px 0 var(--midnight);padding:17px 20px;position:absolute;bottom:24px;left:8px;transform:rotate(-2deg)}.hero-note strong,.hero-note span{display:block}.hero-note strong{text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:1.65rem}.hero-note span{margin-top:3px;font-size:.78rem;font-weight:800}.hero-ticker{z-index:10;white-space:nowrap;background:var(--pink);height:58px;color:var(--white);border-block:var(--line);clip-path:polygon(0 14%,100% 0,100% 86%,0 100%);letter-spacing:.18em;text-transform:uppercase;align-items:center;margin:-18px 0 0;font-size:.75rem;font-weight:900;display:flex;position:relative;overflow:hidden}.hero-ticker span{min-width:max-content;padding-left:3%;animation:28s linear infinite tickerRun}.stat-band{background:var(--white);border-bottom:var(--line);grid-template-columns:repeat(4,1fr);display:grid}.stat-block{text-align:center;border-right:var(--line);flex-direction:column;justify-content:center;align-items:center;min-height:145px;padding:24px;transition:transform .25s;display:flex}.stat-block:hover{z-index:2;position:relative;transform:translateY(-8px)}.stat-block:last-child{border-right:0}.stat-block:nth-child(2){background:var(--pink);color:var(--white)}.stat-block:nth-child(3){background:var(--blood);color:var(--white)}.stat-block:nth-child(4){background:var(--yellow)}.stat-block strong{font-family:Barlow Condensed,sans-serif;font-size:clamp(3.4rem,5vw,5.5rem);line-height:.75}.stat-block span{letter-spacing:.08em;text-transform:uppercase;margin-top:12px;font-size:.72rem;font-weight:900}.content-shell{padding:110px clamp(24px,7vw,112px)}.story-section{grid-template-columns:.78fr 1.22fr;align-items:center;gap:clamp(50px,7vw,115px);display:grid}.story-heading h2,.section-title h2,.teaser-copy h2,.home-final h2,.characters-final h2{letter-spacing:-.035em;margin-bottom:22px;font-size:clamp(3.4rem,5.5vw,6.2rem);line-height:.85}.pink-text{color:var(--pink)}.story-heading>.story-copy,.section-title>p:last-child,.teaser-copy>p,.home-final>div>p:last-child{color:#4d4057;max-width:660px;font-size:1.08rem;font-weight:700;line-height:1.7}.story-photo{padding-bottom:28px;position:relative}.story-photo img{aspect-ratio:1.7;object-fit:cover;border:6px solid var(--midnight);width:100%;box-shadow:13px 13px 0 var(--sky);animation:8s ease-in-out infinite storyPhotoFloat}.story-photo span{background:var(--blood);color:var(--white);border:var(--line);box-shadow:5px 5px 0 var(--midnight);letter-spacing:.1em;text-transform:uppercase;padding:12px 17px;font-size:.74rem;font-weight:900;position:absolute;bottom:0;left:-20px}.gameplay-carousel{padding-bottom:68px;position:relative}.gameplay-frame{aspect-ratio:16/9;border:6px solid var(--midnight);box-shadow:13px 13px 0 var(--sky);background:var(--midnight);position:relative;overflow:hidden}.gameplay-shot{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s,transform 1.1s;position:absolute;inset:0;transform:scale(1.025)}.gameplay-shot.active{opacity:1;transform:scale(1)}.gameplay-caption{z-index:3;background:var(--blood);color:var(--white);border:var(--line);box-shadow:5px 5px 0 var(--midnight);text-transform:uppercase;align-items:center;gap:16px;padding:10px 15px;display:flex;position:absolute;bottom:36px;left:-18px}.gameplay-caption strong{font-family:Barlow Condensed,sans-serif;font-size:1.35rem}.gameplay-caption span{font-size:.7rem;font-weight:900}.screenshot-selectors{gap:9px;display:flex;position:absolute;bottom:0;right:0}.screenshot-arrow{background:var(--yellow);width:43px;height:39px;color:var(--blood);border:3px solid var(--midnight);cursor:pointer;place-items:center;transition:transform .18s,background .18s;display:grid;box-shadow:5px 5px #ef7b00}.screenshot-arrow:hover,.screenshot-arrow:focus-visible{transform:translateY(-5px)rotate(-4deg)}.screenshot-arrow.selected{background:var(--pink);color:var(--white);transform:translateY(-7px)}.process-section{background:var(--midnight);color:var(--white);border-block:8px solid var(--pink)}.center-title{text-align:center;max-width:900px;margin:0 auto 55px}.center-title .label{margin-inline:auto}.center-title>p:last-child{color:#d9ccdf;margin-inline:auto}.process-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.process-card{background:var(--white);min-height:330px;color:var(--midnight);border:4px solid var(--sky);box-shadow:8px 8px 0 var(--pink);padding:28px;transition:transform .25s,box-shadow .25s}.process-card:hover{box-shadow:12px 15px 0 var(--pink);transform:translateY(-10px)rotate(-.4deg)}.process-number{background:var(--blood);color:var(--white);padding:8px 12px;font-family:Barlow Condensed,sans-serif;font-size:1.5rem;font-weight:900;display:inline-block}.process-kicker{color:var(--pink-deep);letter-spacing:.15em;text-transform:uppercase;margin:27px 0 7px;font-size:.7rem;font-weight:900}.process-card h3{margin-bottom:15px;font-size:2.5rem;line-height:.9}.process-card>p:last-child{color:#584b61;margin:0;font-weight:700;line-height:1.65}.tour-cta-wrap{justify-content:center;margin-top:48px;display:flex}.tour-cta-button{width:fit-content;margin:0}.character-teaser{z-index:2;isolation:isolate;background:var(--sky);clip-path:polygon(0 0,100% 0,100% calc(100% - 72px),0 100%);grid-template-columns:minmax(0,760px) 1fr;align-items:center;gap:40px;min-height:720px;margin-bottom:-72px;padding-bottom:155px;display:grid;position:relative;overflow:hidden}.office-backgrounds,.office-background,.office-blue-overlay{position:absolute;inset:0}.office-backgrounds{z-index:-3;overflow:hidden}.office-background{object-fit:cover;width:116%;max-width:none;height:100%;animation-duration:24s;animation-timing-function:linear;animation-iteration-count:infinite;left:-16%}.office-reception{animation-name:receptionCycle}.office-meeting{opacity:0;animation-name:meetingCycle}.office-blue-overlay{z-index:-2;background-color:#039fda33;background-image:radial-gradient(circle,#fffffffa 0 10px,#0000 10.5px);background-size:72px 72px;animation:26s linear infinite officeDotsDrift}.teaser-copy{z-index:2;color:var(--white);border:5px solid var(--white);box-shadow:12px 12px 0 var(--pink);background:#170a28e6;align-self:center;padding:52px;position:relative}.teaser-copy>p{color:var(--white)}.page-link{background:var(--blood);color:var(--white);border:var(--line);box-shadow:6px 6px 0 var(--midnight);letter-spacing:.08em;text-transform:uppercase;margin-top:16px;padding:15px 20px;font-size:.85rem;font-weight:900;transition:transform .18s,box-shadow .18s;display:inline-flex}.page-link:hover,.page-link:focus-visible{box-shadow:3px 3px 0 var(--midnight);transform:translate(3px,3px)}.teaser-art img{object-fit:contain;object-position:bottom;filter:saturate(1.14)drop-shadow(12px 8px #a10022cc);width:100%;max-height:560px}.home-final,.characters-final{background:var(--pink);color:var(--white);border-bottom:var(--line);justify-content:space-between;align-items:center;gap:50px;padding:85px clamp(24px,7vw,112px);display:flex}.home-final{padding-top:150px}.home-final h2,.characters-final h2{margin-bottom:10px}.home-final>div>p:last-child{color:var(--white);margin-bottom:0}.compact{justify-content:flex-end}.site-footer{background:var(--paper);border-top:var(--line);grid-template-columns:1.5fr 1fr .8fr;align-items:start;gap:48px;min-height:245px;padding:42px clamp(24px,6vw,90px);display:grid}.footer-brand{align-items:center;gap:20px;display:flex}.footer-brand>a img{object-fit:contain;width:82px;height:82px;transition:transform .2s}.footer-brand>a:hover img{transform:rotate(-7deg)scale(1.08)}.footer-logo{width:165px}.footer-logo span{font-size:1.2rem}.footer-logo strong{font-size:.92rem}.site-footer p{margin:18px 0 0;font-size:.75rem;font-weight:800}.footer-sitemap{text-transform:uppercase;flex-direction:column;align-items:flex-start;gap:8px;font-size:.77rem;font-weight:850;display:flex}.footer-sitemap>strong{color:var(--blood);margin-bottom:5px;font-family:Barlow Condensed,sans-serif;font-size:1.5rem}.footer-sitemap>a{border-bottom:3px solid #0000}.footer-sitemap>a:hover,.footer-sitemap>a:focus-visible{border-color:var(--pink)}.social-links{gap:12px;margin-top:8px;display:flex}.social-links a{background:var(--midnight);width:42px;height:42px;color:var(--white);border:3px solid var(--pink);box-shadow:4px 4px 0 var(--pink);place-items:center;font-size:1.1rem;transition:transform .2s;display:grid}.social-links a:hover,.social-links a:focus-visible{transform:translateY(-4px)rotate(-3deg)}.footer-social-row{flex-wrap:nowrap}.characters-hero{background:var(--sky);border-bottom:var(--line);grid-template-columns:.82fr 1.18fr;align-items:center;gap:clamp(45px,6vw,100px);padding:70px clamp(24px,6vw,96px) 85px;display:grid}.characters-hero h1{letter-spacing:-.04em;max-width:780px;margin-bottom:26px;font-size:clamp(4.5rem,7vw,7.8rem);line-height:.78}.characters-hero>div:first-child>p:last-child{background:var(--white);border-left:9px solid var(--pink);max-width:690px;margin-bottom:0;padding:18px 22px;font-size:1.08rem;font-weight:800;line-height:1.6}.characters-hero-photo{padding:0 0 30px;position:relative}.characters-hero-photo img{aspect-ratio:1.7;object-fit:cover;border:6px solid var(--midnight);width:100%;box-shadow:15px 15px 0 var(--blood);transform:rotate(1deg)}.characters-hero-photo span{background:var(--yellow);border:var(--line);box-shadow:6px 6px 0 var(--midnight);letter-spacing:.1em;text-transform:uppercase;padding:13px 18px;font-size:.75rem;font-weight:900;position:absolute;bottom:0;right:-10px}.romance-section .section-title{max-width:880px;margin-bottom:55px}.romance-grid{grid-template-columns:repeat(6,1fr);gap:26px;display:grid}.romance-card{background:var(--white);border:var(--line);box-shadow:9px 9px 0 var(--midnight);grid-column:span 2;overflow:hidden}.romance-card:nth-child(4){grid-column:2/span 2}.romance-card .character-image-wrap{border-bottom:var(--line);background-color:#9ee7ff;background-image:radial-gradient(circle,#fffffffa 0 4px,#0000 4.5px);background-size:30px 30px;height:390px;animation:22s linear infinite characterDotsDrift;position:relative;overflow:hidden}.romance-card .character-image-wrap img{z-index:1;object-fit:contain;object-position:center bottom;mix-blend-mode:normal;filter:saturate(1.08)contrast(1.02)drop-shadow(9px 10px #170a2873);width:100%;height:100%;transition:transform .5s;position:relative}.romance-card:first-child .character-image-wrap img{transform-origin:bottom;transform:scale(1.9224)}.romance-card:hover .character-image-wrap img{transform:scale(1.035)}.romance-card:first-child:hover .character-image-wrap img{transform:scale(1.9872)}.romance-card:nth-child(2) .character-image-wrap img,.romance-card:nth-child(5) .character-image-wrap img{transform-origin:bottom;transform:scale(1.08)}.romance-card:nth-child(2):hover .character-image-wrap img,.romance-card:nth-child(5):hover .character-image-wrap img{transform:scale(1.134)}.romance-card:nth-child(4) .character-image-wrap img{transform-origin:bottom;transform:scale(1.2)}.romance-card:nth-child(4):hover .character-image-wrap img{transform:scale(1.26)}.romance-card:nth-child(3) .character-image-wrap img{transform-origin:bottom;transform:scale(1.5)}.romance-card:nth-child(3):hover .character-image-wrap img{transform:scale(1.56)}.modal-open{overflow:hidden}.video-modal{z-index:1000;background:#080210e6;place-items:center;padding:28px;animation:.22s both modalFade;display:grid;position:fixed;inset:0}.video-modal-panel{background:var(--pink);border:5px solid var(--white);width:min(1100px,94vw);box-shadow:14px 14px 0 var(--blood);padding:12px;position:relative}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{border:0;width:100%;height:100%}.video-modal-close{z-index:3;background:var(--yellow);width:52px;height:52px;color:var(--midnight);border:var(--line);box-shadow:5px 5px 0 var(--blood);cursor:pointer;place-items:center;font-size:1.35rem;display:grid;position:absolute;top:-22px;right:-20px}.ratings-hero{background-color:var(--sky);border-bottom:var(--line);background-image:radial-gradient(circle,#ffffffe6 0 4px,#0000 4.5px);background-size:35px 35px;grid-template-columns:1fr auto;align-items:center;gap:70px;min-height:560px;padding:90px clamp(24px,7vw,112px);animation:24s linear infinite characterDotsDrift;display:grid}.ratings-hero h1,.tour-intro h1{letter-spacing:-.04em;margin-bottom:25px;font-size:clamp(4.8rem,8vw,8.5rem);line-height:.78}.ratings-hero>div:first-child>p:last-child,.tour-intro>p:last-child{background:var(--white);border-left:10px solid var(--pink);max-width:780px;padding:19px 24px;font-size:1.1rem;font-weight:800;line-height:1.65;box-shadow:8px 8px #170a2840}.rating-stamp{background:var(--blood);width:250px;height:250px;color:var(--white);border:8px solid var(--midnight);box-shadow:15px 15px 0 var(--pink);text-align:center;border-radius:50%;align-content:center;place-items:center;padding:28px;display:grid;transform:rotate(5deg)}.rating-stamp strong{font-family:Barlow Condensed,sans-serif;font-size:6.2rem;line-height:.8}.rating-stamp span{letter-spacing:.1em;text-transform:uppercase;margin-top:14px;font-size:.75rem;font-weight:900}.rating-source-note{background:var(--midnight);color:var(--white);border:4px solid var(--pink);box-shadow:8px 8px 0 var(--pink);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px 24px;display:grid}.rating-source-note>svg{font-size:2rem}.rating-source-note div{flex-direction:column;display:flex}.rating-source-note span{color:#d9ccdf;font-size:.8rem}.rating-source-note a{background:var(--yellow);color:var(--midnight);border:3px solid var(--white);text-transform:uppercase;padding:10px 13px;font-size:.72rem;font-weight:900}.regional-ratings{grid-template-columns:repeat(3,1fr);gap:22px;margin:50px 0;display:grid}.regional-ratings article{overflow-wrap:anywhere;background:var(--white);border:var(--line);min-width:0;min-height:235px;box-shadow:8px 8px 0 var(--sky);flex-direction:column;justify-content:center;padding:25px;display:flex}.regional-ratings article:nth-child(2){box-shadow-color:var(--pink)}.regional-ratings .restricted-rating{background:var(--blood);color:var(--white);box-shadow-color:var(--midnight)}.regional-ratings p{letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-size:.7rem;font-weight:900}.regional-ratings strong{text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:4.5rem;line-height:.9}.regional-ratings span{margin-top:14px;font-weight:750}.suitability-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.suitability-card{background:var(--white);border:var(--line);box-shadow:10px 10px 0 var(--midnight);grid-template-columns:auto 1fr;gap:22px;padding:32px;display:grid}.suitability-card>svg{color:var(--sky-dark);margin-top:5px;font-size:2.6rem}.suitability-card.inappropriate>svg{color:var(--blood)}.suitability-card h2,.content-note-panel h2{margin-bottom:20px;font-size:3.2rem;line-height:.86}.suitability-card ul{margin:0;padding-left:20px}.suitability-card li{margin-bottom:12px;font-weight:700;line-height:1.55}.content-note-panel{background:var(--pink);color:var(--white);border:var(--line);box-shadow:12px 12px 0 var(--blood);margin-top:60px;padding:45px}.content-note-panel blockquote{background:var(--white);color:var(--midnight);border-left:12px solid var(--yellow);margin:30px 0;padding:25px;font-size:1.35rem;font-weight:850;line-height:1.6}.content-note-panel cite{color:#584b61;letter-spacing:.08em;text-transform:uppercase;margin-top:12px;font-size:.7rem;font-style:normal;display:block}.content-note-panel>p:last-child{max-width:1000px;margin-bottom:0;font-weight:750;line-height:1.7}.tour-page{background:var(--midnight)}.tour-intro{background:var(--sky);border-bottom:8px solid var(--pink);padding:75px clamp(24px,7vw,112px)}.tour-experience{background-color:var(--midnight);background-image:radial-gradient(circle,#ff149380 0 3px,#0000 3.5px);background-size:30px 30px;padding:55px clamp(16px,5vw,70px) 80px}.tour-stage{isolation:isolate;border:6px solid var(--white);width:min(1392px,100%);min-height:min(760px,100vh - 100px);box-shadow:15px 15px 0 var(--pink);background-position:50%;background-size:cover;margin:0 auto;position:relative;overflow:hidden}.tour-stage:after{content:"";z-index:-1;pointer-events:none;background:#170a280d;position:absolute;inset:0}.tour-topbar{z-index:8;justify-content:space-between;gap:20px;display:flex;position:absolute;top:18px;left:22px;right:22px}.tour-topbar span,.tour-topbar strong{background:var(--midnight);color:var(--white);border:3px solid var(--white);box-shadow:5px 5px 0 var(--pink);letter-spacing:.09em;text-transform:uppercase;padding:9px 13px;font-size:.67rem}.tour-character{z-index:2;object-fit:contain;object-position:bottom;filter:drop-shadow(11px 12px #170a2894);width:min(520px,42vw);max-width:none;max-height:78%;animation:.45s both characterEnter;position:absolute;bottom:125px}.tour-character.left{left:1%}.tour-character.right{right:1%}.tour-character.speaker-cathy{width:min(780px,60vw);left:-7%}.tour-character.speaker-gg-greg{width:min(560px,42vw)}.tour-character.speaker-cindy{width:min(690px,52vw);left:-3%}.tour-character.speaker-pauline,.tour-character.speaker-paige,.tour-character.speaker-sarah{width:min(610px,46vw)}.dialogue-box{z-index:6;min-height:185px;color:var(--midnight);border:5px solid var(--speaker-color,var(--midnight));box-shadow:9px 9px 0 var(--speaker-color,var(--pink));background:#fffffff5;padding:35px 42px 24px;position:absolute;bottom:26px;left:13%;right:4%}.speaker-name{background:var(--white);min-width:210px;color:var(--midnight);border:5px solid var(--speaker-color,var(--midnight));text-align:center;text-shadow:2px 2px 0 var(--speaker-color,#ff6060);border-bottom:0;padding:11px 20px 13px;font-family:"Press Start 2P",monospace;font-size:1rem;position:absolute;top:-50px;left:39%}.dialogue-box>p{max-width:980px;margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(.72rem,1.15vw,1rem);line-height:1.75}.dialogue-box .store-buttons{margin-top:20px}.dialogue-box .store-button{min-height:60px}.dialogue-controls{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.dialogue-controls button{background:var(--yellow);color:var(--midnight);border:3px solid var(--midnight);box-shadow:4px 4px 0 var(--blood);text-transform:uppercase;cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-weight:900;display:inline-flex}.dialogue-controls button:disabled{opacity:.35;cursor:not-allowed}.dialogue-controls button:not(:disabled):hover{box-shadow:2px 2px 0 var(--blood);transform:translate(2px,2px)}.romance-card .character-image-wrap span{z-index:2;background:var(--midnight);color:var(--white);letter-spacing:.1em;text-transform:uppercase;padding:8px 11px;font-size:.65rem;font-weight:900;position:absolute;bottom:14px;left:14px}.romance-card .character-copy{min-height:285px;padding:24px}.romance-card .character-copy>p{color:var(--blood);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:.68rem;font-weight:900}.romance-card h3,.support-card h3{margin-bottom:11px;font-size:2.8rem;line-height:.85}.romance-card h3{background:var(--midnight);width:fit-content;color:var(--white);border:4px solid var(--pink);box-shadow:7px 7px 0 var(--pink);padding:5px 11px 8px}.romance-card .character-copy>span,.support-card div>span{color:#584b61;font-size:.9rem;font-weight:700;line-height:1.6}.romance-card.green{box-shadow:9px 9px #c57b32}.romance-card.pink{box-shadow:9px 9px #efc5e4}.romance-card.blue{box-shadow:9px 9px #bdefef}.romance-card.ink{box-shadow:9px 9px #9abef0}.romance-card.red{box-shadow:9px 9px #ff7c7c}.support-section{background:var(--midnight);color:var(--white);border-top:8px solid var(--pink)}.light-title{max-width:900px;margin-bottom:55px}.support-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.support-card{background:var(--white);min-height:300px;color:var(--midnight);border:4px solid var(--sky);box-shadow:7px 7px 0 var(--pink);grid-template-columns:42% 58%;display:grid;overflow:hidden}.support-card>img{object-fit:cover;object-position:center top;border-right:var(--line);width:100%;height:100%}.support-card>div:last-child{align-self:center;padding:25px}.support-card div>p{color:var(--blood);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.65rem;font-weight:900}.support-card h3{font-size:2.35rem}.owners-card{grid-column:1/-1;grid-template-columns:55% 45%}.owner-images{border-right:var(--line);grid-template-columns:1fr 1fr;display:grid;padding:0!important}.owner-images img{object-fit:cover;object-position:center top;width:100%;height:100%;min-height:330px}.owner-images img:first-child{border-right:var(--line)}.contact-page{background-color:var(--midnight);min-height:900px;color:var(--white);border-bottom:8px solid var(--pink);background-image:radial-gradient(circle,#ff14938c 0 3px,#0000 3.5px);background-size:34px 34px;grid-template-columns:minmax(300px,.78fr) minmax(520px,1.22fr);align-items:start;gap:clamp(48px,6vw,100px);padding:90px clamp(24px,6vw,96px);display:grid;position:relative;overflow:hidden}.contact-intro{position:sticky;top:32px}.contact-intro h1{letter-spacing:-.035em;margin-bottom:28px;font-size:clamp(4.5rem,7vw,7.5rem);line-height:.78}.contact-intro>p:not(.label){background:var(--white);max-width:650px;color:var(--midnight);border-left:10px solid var(--sky);box-shadow:8px 8px 0 var(--pink);padding:19px 22px;font-size:1.05rem;font-weight:800;line-height:1.65}.contact-art{background:var(--sky);border:var(--line);box-shadow:11px 11px 0 var(--pink);margin-top:38px;padding:18px 18px 0;position:relative;transform:rotate(-1deg)}.contact-art img{filter:drop-shadow(7px 8px #170a286b);width:100%;height:auto}.contact-art span{background:var(--yellow);color:var(--midnight);border:var(--line);box-shadow:5px 5px 0 var(--blood);letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;font-size:.72rem;font-weight:900;position:absolute;bottom:-18px;right:-12px}.contact-form{min-width:0;color:var(--midnight);border:5px solid var(--sky);box-shadow:14px 14px 0 var(--pink);background:#fff8edfa;flex-direction:column;gap:22px;padding:clamp(26px,4vw,46px);display:flex}.contact-field-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:9px;min-width:0;font-size:.72rem;font-weight:900;display:flex}.contact-form input,.contact-form select,.contact-form textarea{background:var(--white);width:100%;min-width:0;color:var(--midnight);border:3px solid var(--midnight);border-radius:0;outline:0;padding:14px 15px;font:750 1rem/1.45 Nunito Sans,sans-serif;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:4px 4px #bdefef}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--pink);box-shadow:6px 6px 0 var(--pink);transform:translate(-2px,-2px)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#7b6f83;opacity:1}.honeypot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-submit-row{align-items:center;gap:22px;display:flex}.contact-submit-row button{background:var(--midnight);min-width:190px;color:var(--white);border:var(--line);box-shadow:7px 7px 0 var(--pink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:15px 22px;font:900 .82rem Nunito Sans,sans-serif;transition:transform .18s,box-shadow .18s;display:inline-flex}.contact-submit-row button:hover:not(:disabled),.contact-submit-row button:focus-visible:not(:disabled){box-shadow:3px 3px 0 var(--pink);color:var(--yellow);transform:translate(4px,4px)}.contact-submit-row button:disabled{opacity:.65;cursor:wait}.contact-status{min-height:32px}.contact-status p{margin:0;font-size:.85rem;font-weight:900}.success-message{color:#087d4b}.error-message{color:var(--blood)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.office-background{animation:none!important}.office-meeting{display:none}}@keyframes heroPatternDrift{0%{background-position:0 0,0 0}to{background-position:54px 27px,215px 0}}@keyframes sunburstTurn{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes keyArtFloat{0%,to{transform:rotate(1.5deg)translateY(0)}50%{transform:rotate(.5deg)translateY(-8px)}}@keyframes chibiBob{0%,to{transform:translateY(0)rotate(-.5deg)}50%{transform:translateY(-9px)rotate(.5deg)}}@keyframes badgeWiggle{0%,to{transform:rotate(-8deg)translateY(0)}50%{transform:rotate(-3deg)translateY(-7px)}}@keyframes heartPulse{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.06)rotate(2deg)}}@keyframes stampRock{0%,to{transform:rotate(-5deg)}50%{transform:rotate(-1deg)translateY(-5px)}}@keyframes tickerRun{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes storyPhotoFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(.35deg)}}@keyframes playBounce{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-55%)scale(1.06)}}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes characterEnter{0%{opacity:0;transform:translateY(30px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes officeDotsDrift{0%{background-position:0 0}to{background-position:144px 72px}}@keyframes characterDotsDrift{0%{background-position:0 0}to{background-position:60px 30px}}@keyframes receptionCycle{0%{opacity:1;transform:translate(0)}42%{opacity:1}50%{opacity:0;transform:translate(13%)}92%{opacity:0}to{opacity:1;transform:translate(0)}}@keyframes meetingCycle{0%{opacity:0;transform:translate(0)}42%{opacity:0}50%{opacity:1;transform:translate(7%)}92%{opacity:1}to{opacity:0;transform:translate(13%)}}@media (max-width:1100px){.site-header{flex-wrap:wrap}.site-nav{order:3;justify-content:center;width:100%}.home-hero,.characters-hero,.story-section{grid-template-columns:1fr}.hero-copy{max-width:820px}.hero-visual{width:100%;max-width:900px;margin-inline:auto}.process-grid{grid-template-columns:1fr}.process-card{min-height:0}.character-teaser{grid-template-columns:1fr}.teaser-art{max-width:900px;margin-inline:auto}.romance-grid{grid-template-columns:repeat(2,1fr)}.romance-card,.romance-card:nth-child(4){grid-column:auto}.romance-card:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 13px)}.support-grid{grid-template-columns:1fr}.owners-card{grid-column:auto}.site-footer{grid-template-columns:1.5fr 1fr 1fr}.ratings-hero{grid-template-columns:1fr}.rating-stamp{width:210px;height:210px}.regional-ratings,.suitability-grid,.contact-page{grid-template-columns:1fr}.contact-intro{position:static}.contact-art{max-width:720px}}@media (max-width:720px){.announcement{letter-spacing:.12em;font-size:.58rem}.site-header{gap:12px;min-height:76px}.brand-item>span{display:none}.site-logo{width:145px}.site-logo span{font-size:1.12rem}.site-logo strong{font-size:.82rem}.header-cta{padding:10px 11px;font-size:.64rem}.site-nav{flex-wrap:wrap;gap:7px 15px;font-size:.62rem}.home-hero,.characters-hero{padding-top:50px;padding-bottom:65px}.characters-hero{overflow:hidden}.characters-hero>*{min-width:0}.characters-hero h1{overflow-wrap:anywhere}.hero-copy h1{font-size:clamp(4rem,19vw,6rem)}.characters-hero h1{font-size:4rem}.store-buttons,.compact{flex-direction:column;align-items:stretch}.store-button{width:100%}.hero-sunburst{width:720px;height:720px;top:48%;right:-360px}.hero-visual{min-height:0;padding-bottom:50px}.chibi-collage{margin-top:20px;padding-bottom:118px}.hero-chibi-girls{width:100%;margin:0;right:auto}.clock-badge{width:92px;height:92px;top:13%;left:-8px}.heart-badge{width:105px;height:94px;top:auto;bottom:92px;right:-8px}.hero-note{width:62%;bottom:42px;left:0}.collage-stamp{font-size:.95rem;bottom:5px;right:0}.key-art-frame,.characters-hero-photo img{box-shadow:9px 9px 0 var(--blood)}.stat-band{grid-template-columns:repeat(2,1fr)}.stat-block{border-bottom:var(--line);min-height:125px}.stat-block:nth-child(2){border-right:0}.stat-block:nth-child(n+3){border-bottom:0}.content-shell{padding:78px 22px}.story-heading h2,.section-title h2,.teaser-copy h2,.home-final h2,.characters-final h2{font-size:3.35rem}.story-photo span{left:-7px}.character-teaser{clip-path:polygon(0 0,100% 0,100% calc(100% - 44px),0 100%);min-height:690px;margin-bottom:-44px;padding:78px 22px 120px}.teaser-copy{padding:32px 24px}.home-final{padding-top:115px}.home-final,.characters-final{flex-direction:column;align-items:stretch;padding:65px 22px}.site-footer{grid-template-columns:1fr 1fr;gap:35px 24px}.footer-brand{grid-column:1/-1;align-items:flex-start}.site-footer>.footer-sitemap:last-child{grid-column:1/-1}.romance-grid{grid-template-columns:1fr}.romance-card:last-child{grid-column:auto;width:auto}.romance-card .character-image-wrap{height:360px}.support-card{grid-template-columns:1fr}.support-card>img{border-right:0;border-bottom:var(--line);height:300px}.owners-card{grid-template-columns:1fr}.owner-images{border-right:0;border-bottom:var(--line)}.owner-images img{min-height:220px}.gameplay-carousel{padding-bottom:92px}.gameplay-caption{bottom:48px;left:-7px}.screenshot-selectors{flex-wrap:wrap;left:0;right:auto}.screenshot-arrow{width:38px}.video-modal{padding:14px}.video-modal-close{top:-38px;right:-8px}.ratings-hero,.tour-intro{padding:60px 22px}.ratings-hero{overflow:hidden}.ratings-hero h1{overflow-wrap:anywhere;max-width:100%;font-size:3.45rem}.tour-intro h1{font-size:4.2rem}.rating-stamp{width:175px;height:175px}.rating-stamp strong{font-size:4.4rem}.rating-source-note{grid-template-columns:auto 1fr}.rating-source-note a{text-align:center;grid-column:1/-1}.suitability-card{grid-template-columns:1fr;padding:25px 20px}.content-note-panel{padding:30px 22px}.tour-experience{padding:25px 12px 55px}.tour-stage{background-position:50%;min-height:720px}.tour-topbar{top:10px;left:10px;right:10px}.tour-topbar span,.tour-topbar strong{font-size:.54rem}.tour-character,.tour-character.speaker-cathy,.tour-character.speaker-gg-greg,.tour-character.speaker-cindy,.tour-character.speaker-pauline,.tour-character.speaker-paige,.tour-character.speaker-sarah{width:88vw;max-height:64%;bottom:240px;left:-22%}.tour-character.right{left:auto;right:-22%}.dialogue-box{min-height:235px;padding:34px 18px 16px;bottom:12px;left:10px;right:10px}.speaker-name{min-width:165px;padding:10px;font-size:.78rem;top:-40px;left:22px}.dialogue-box>p{font-size:.62rem;line-height:1.8}.dialogue-box .store-buttons{gap:8px}.dialogue-box .store-button{min-width:0;min-height:52px;padding:8px 10px}.dialogue-box .store-button small{display:none}.dialogue-controls{margin-top:12px}.contact-page{padding:60px 22px 80px}.contact-intro h1{font-size:4rem}.contact-field-row{grid-template-columns:1fr}.contact-form{padding:28px 20px}.contact-submit-row{flex-direction:column;align-items:stretch}.contact-submit-row button{width:100%}}
