@import url("https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@400;500;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");:root{--bg:#f4eef4;--panel:#fff;--ink:#1c1622;--muted:#57515f;--faint:#9a93a3;--line:rgba(28,22,34,.1);--card:#fff;--card-soft:#faf5fa;--shadow:0 14px 36px -16px rgba(120,40,90,.22);--pink:#ff2d88;--pink2:#e0277a;--pink3:#d94f93;--cyan:#2bb6d6;--disp:"Chakra Petch",sans-serif;--jp:"Zen Kaku Gothic New",sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:auto;-webkit-text-size-adjust:100%;width:100%}body,html{overflow-x:hidden}body{background:linear-gradient(135deg,#fff,#f5eff5 55%,#ece5ee);color:var(--ink);font-family:var(--jp);font-weight:500;-webkit-font-smoothing:antialiased}::selection{background:var(--pink);color:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.webgl-stage{position:fixed;inset:0;z-index:0;pointer-events:none}.webgl-stage.boot{background:linear-gradient(135deg,#fff,#ece5ee)}.webgl-stage.css-bg{background:radial-gradient(60% 55% at 80% 12%,rgba(255,45,136,.12),transparent 62%),radial-gradient(55% 50% at 12% 95%,rgba(43,182,214,.08),transparent 62%),linear-gradient(135deg,#fff,#f5eff5 55%,#e9e2ec)}.webgl-stage.css-bg:after{content:"";position:absolute;inset:-10%;background:radial-gradient(38% 28% at 72% 22%,rgba(255,45,136,.1),transparent 70%);animation:cssBgPulse 6s ease-in-out infinite}@keyframes cssBgPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.content{position:relative;z-index:2}.nav{position:fixed;top:0;left:0;right:0;z-index:6;display:flex;align-items:center;justify-content:space-between;padding:12px clamp(18px,4vw,48px);background:#20202e;box-shadow:0 2px 14px -6px rgba(0,0,0,.4)}.brand{font-family:var(--disp);font-weight:700;font-size:19px;letter-spacing:.04em;display:inline-flex;align-items:baseline;gap:9px;color:var(--ink)}.brand em{font-style:normal;font-weight:500;font-size:11px;letter-spacing:.3em;color:var(--pink2)}.brand.sm{font-size:17px}.brand-logo{gap:0}.brand-logo img{height:44px;width:auto;display:block;filter:brightness(1.75) saturate(1.05)}@media (max-width:820px){.brand-logo img{height:36px}}.nav-links{display:flex;align-items:center;gap:clamp(12px,2vw,24px);font-family:var(--disp);font-size:12px;letter-spacing:.18em;color:#e7e3ee}.nav-links a:hover{color:var(--pink)}.nav-cta{color:#fff!important;background:var(--pink);padding:9px 18px;border-radius:2px;box-shadow:0 8px 24px -8px rgba(255,45,136,.55)}.panel{position:relative;max-width:1240px;margin:0 auto;padding:64px clamp(20px,5vw,60px)}.panel.wide{max-width:1320px}.panel.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:96px;padding-bottom:64px}.panel.foot-sec{padding:40px clamp(20px,5vw,60px) 44px}.eyebrow{font-family:var(--disp);font-size:13px;letter-spacing:.36em;color:var(--pink2);margin-bottom:14px}.eyebrow.sm{font-size:11px;letter-spacing:.3em;margin-bottom:8px}h2{font-family:var(--jp);font-weight:900;font-size:clamp(28px,4vw,46px);line-height:1.18;color:var(--ink)}h2 span{color:var(--pink2)}h2.big{font-size:clamp(34px,5vw,64px)}h2.huge{font-size:clamp(30px,4.6vw,54px);line-height:1.2;margin-bottom:26px}h2.en{font-family:var(--disp);font-weight:700;font-size:clamp(30px,4.4vw,52px);letter-spacing:.03em;color:var(--pink)}.gift-lead{font-family:var(--jp);font-weight:700;font-size:clamp(19px,2.6vw,28px);line-height:1.35;color:var(--ink);margin:12px 0 16px}.gift-lead span{color:var(--pink2)}h3{font-family:var(--jp);font-weight:700;font-size:22px;margin:4px 0 10px;color:var(--ink)}.sec-head{margin-bottom:30px}.sec-head.center{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}.sub{font-weight:500;font-size:15px;color:var(--muted);margin-top:14px}.scrolltag{font-family:var(--disp);font-size:11px;letter-spacing:.2em;color:var(--faint);margin-top:14px}.body{font-size:clamp(15px,1.5vw,17px);line-height:1.95;color:var(--muted);max-width:34em}.body.sm{font-size:14px;line-height:1.85}.note{font-size:12px;line-height:1.8;color:var(--faint);margin-top:18px}.hero-title{font-family:var(--disp);font-weight:700;line-height:.92;letter-spacing:-.01em;margin-bottom:6px}.hero-title .line{display:block}.hero-title .line.one{font-size:clamp(52px,8vw,118px);color:var(--ink)}.hero-title .line.two{font-size:clamp(26px,4.4vw,58px);color:var(--pink2)}.hero-title .ltr{display:inline-block;will-change:transform}.hero-title .ltr.space{width:.3em}.hero-heading{margin-bottom:14px;max-width:580px}.ptext{width:100%}.ptext.ph-main{height:clamp(56px,10.5vw,116px);max-width:580px}.ptext.ph-sub{height:clamp(38px,6.5vw,60px);max-width:470px}.ptext-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:30px;gap:30px;align-items:center;width:100%}.hero-slides{position:relative;width:100%;height:min(66vh,540px)}.hero-slides-glow{left:50%;top:50%;width:80%;height:80%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,45,136,.18),transparent 65%);filter:blur(26px);animation:cssBgPulse 5s ease-in-out infinite}.hero-slides-glow,.hs-img{position:absolute;pointer-events:none}.hs-img{inset:0;margin:auto;max-width:98%;max-height:100%;object-fit:contain;opacity:0;transition:opacity 1.1s ease;filter:drop-shadow(0 22px 40px rgba(60,30,50,.28))}.hs-img.on{opacity:1}.hs-img.flip{transform:scaleX(-1)}.hs-img.char{-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent 96%);mask-image:linear-gradient(180deg,#000 72%,transparent 96%)}@media (max-width:820px){.hero-grid{grid-template-columns:1fr;gap:6px}.hero-slides{height:44vh;min-height:300px}}.lead{font-weight:500;font-size:clamp(15px,1.55vw,18px);line-height:1.95;color:var(--muted);max-width:26em;margin:22px 0 32px}.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.btn-solid{font-family:var(--disp);font-weight:600;font-size:15px;letter-spacing:.08em;color:#fff;background:var(--pink);padding:16px 30px;border-radius:2px;box-shadow:0 14px 34px -12px rgba(255,45,136,.6);transition:transform .3s,background .3s}.btn-solid:hover{background:var(--pink2);transform:translateY(-2px)}.btn-solid.big{font-size:16px;padding:18px 44px;margin-top:8px}.btn-ghost{font-family:var(--disp);font-weight:500;font-size:14px;letter-spacing:.1em;color:var(--ink);padding:16px 26px;border:1px solid rgba(28,22,34,.22);border-radius:2px;transition:border-color .3s,color .3s}.btn-ghost:hover{border-color:var(--pink);color:var(--pink)}.stats{display:flex;gap:34px;margin-top:40px;flex-wrap:wrap}.stats strong{display:block;font-family:var(--disp);font-size:26px;font-weight:700;color:var(--ink)}.stats span{font-size:12px;letter-spacing:.2em}.scroll-hint,.stats span{font-family:var(--disp);color:var(--faint)}.scroll-hint{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);font-size:11px;letter-spacing:.4em}.hero-banner{position:relative;width:100%;min-height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff}.hero-banner:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(122deg,#d9d9d9 0 31%,transparent 31% 71%,#d9d9d9 71% 100%)}.banner-caption{position:absolute;left:0;right:0;bottom:0;z-index:5;padding:11px 14px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;background:#45444b;color:#fff;font-family:var(--jp)}.bc-title{font-weight:700;font-size:clamp(11px,1.5vw,18px);letter-spacing:.1em}.bc-period{font-weight:800;font-size:clamp(13px,3.3vw,26px);letter-spacing:.02em;white-space:nowrap}.banner-word{position:absolute;z-index:3;font-family:var(--disp);font-weight:700;color:#ff669a;line-height:.74;letter-spacing:-.02em;font-size:clamp(84px,21vw,330px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.banner-word.mike{top:12%;left:1%}.banner-word.neko{bottom:12%;right:1%}.hero-banner .hero-slides{position:absolute;z-index:1;left:50%;top:51%;transform:translate(-50%,-50%);width:clamp(380px,62vw,940px);height:106%}.banner-info{position:absolute;z-index:4;left:2.4%;top:50%;max-width:50%}.banner-tagline{font-family:var(--disp);font-weight:700;color:var(--ink);font-size:clamp(20px,3.2vw,46px);letter-spacing:.01em;line-height:1.1}@media (max-width:820px){.hero-banner{background:#fff}.hero-banner:before{background:linear-gradient(124deg,#d9d9d9 0 23%,transparent 23% 72%,#d9d9d9 72% 100%)}.banner-word{font-size:clamp(58px,20vw,150px)}.banner-word.mike{top:9%;left:4%}.banner-word.neko{bottom:12%;right:4%}.hero-banner .hero-slides{width:92%;height:52%;top:40%}.banner-info{left:50%;transform:translateX(-50%);top:auto;bottom:30%;max-width:92%;text-align:center}.banner-info .cta-row{justify-content:center}}.case-wrap{display:grid;grid-template-columns:1.55fr 1fr;grid-gap:44px;gap:44px;align-items:center}.case-visual{position:relative;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:40px;box-shadow:var(--shadow)}.toggle{position:absolute;top:18px;right:18px;z-index:2;display:inline-flex;padding:5px;border:1px solid var(--line);border-radius:3px;gap:4px;background:#fff}.toggle button{font-family:var(--disp);font-weight:600;font-size:12px;letter-spacing:.16em;color:#8a8492;background:transparent;border:none;padding:8px 16px;border-radius:2px;cursor:pointer;transition:.25s}.toggle button.on{color:#fff;background:var(--pink)}.features{list-style:none;display:flex;flex-direction:column;gap:12px;margin:24px 0}.features li{padding:14px 16px;background:var(--card-soft);border:1px solid var(--line);border-left:2px solid var(--pink);border-radius:3px;font-size:14px;line-height:1.6;color:var(--ink)}.features b{font-family:var(--disp);color:var(--pink2);font-size:13px;letter-spacing:.12em;margin-right:12px}.case-imgs{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;align-items:center}.case-imgs figure{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}.case-imgs img{width:100%;height:46vh;max-height:500px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(60,30,50,.22))}.case-imgs figcaption{font-family:var(--disp);font-size:10px;letter-spacing:.26em;color:var(--faint)}.special-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:22px;gap:22px}.sp-card{position:relative;overflow:hidden;min-height:320px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:28px 28px 26px;box-shadow:var(--shadow)}.sp-bar{position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--pink),transparent)}.sp-card .body,.sp-card .eyebrow,.sp-card .sp-play,.sp-card h3{position:relative;z-index:2;max-width:50%}.sp-card img{position:absolute;right:16px;bottom:16px;width:42%;max-width:240px;max-height:62%;object-fit:contain;object-position:right bottom;pointer-events:none;filter:drop-shadow(0 12px 24px rgba(60,30,50,.22))}.sp-play{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:9px 17px 9px 11px;background:var(--pink);color:#fff;border:none;border-radius:999px;cursor:pointer;font-family:var(--disp);font-weight:600;font-size:12px;letter-spacing:.07em;box-shadow:0 10px 24px -10px rgba(255,45,136,.7);transition:transform .25s,background .25s}.sp-play:hover{transform:translateY(-2px)}.sp-play.on,.sp-play:hover{background:var(--pink2)}.sp-play-ic{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:hsla(0,0%,100%,.22)}.sp-play-ic svg{width:13px;height:13px;fill:#fff}.lineup-scroll{display:flex;gap:20px;overflow-x:auto;padding:8px 4px 26px;scroll-snap-type:x proximity;scrollbar-color:var(--pink) rgba(28,22,34,.1);scrollbar-width:thin}.lineup-scroll::-webkit-scrollbar{height:9px}.lineup-scroll::-webkit-scrollbar-track{background:rgba(28,22,34,.08);border-radius:10px}.lineup-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg,var(--pink),var(--pink2));border-radius:10px;border:2px solid transparent;background-clip:padding-box}.model{flex:0 0 284px;scroll-snap-align:start;position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);transition:transform .35s,border-color .35s,box-shadow .35s}.model:hover{transform:translateY(-8px);box-shadow:0 26px 54px -22px rgba(255,45,136,.45)}.model.feat,.model:hover{border-color:rgba(255,45,136,.5)}.model.feat{box-shadow:0 0 0 1px rgba(255,45,136,.2),0 26px 54px -26px rgba(255,45,136,.4)}.model .pop{position:absolute;top:14px;right:14px;z-index:2;font-family:var(--disp);font-size:10px;letter-spacing:.18em;color:#fff;background:var(--pink);padding:4px 12px;border-radius:2px}.model-img{position:relative;padding:22px 22px 0;background:radial-gradient(78% 58% at 50% 26%,rgba(255,45,136,.1),transparent 70%)}.model-img img{width:100%;filter:drop-shadow(0 16px 26px rgba(60,30,50,.22))}.model-name{font-family:var(--disp);font-weight:700;font-size:16px;color:var(--ink);text-align:center;margin:16px 20px 12px}.model-price{text-align:center;margin:0 20px 16px;background:rgba(255,45,136,.07);border:1px solid rgba(255,45,136,.22);border-radius:6px;padding:9px;color:var(--muted);font-size:13px}.model-price b{font-size:25px}.model-price b,.model-price.soon{font-family:var(--disp);font-weight:700;color:var(--pink)}.model-price.soon{font-size:18px;letter-spacing:.08em}.model-sub{font-family:var(--disp);font-size:11px;letter-spacing:.1em;color:var(--pink3);margin:0 20px 8px}.model-spec{font-size:12.5px;line-height:1.85;color:var(--muted);margin:0 20px}.model-cta{margin:18px 20px 22px;text-align:center;font-family:var(--disp);font-weight:600;font-size:13px;letter-spacing:.06em;color:var(--pink);border:1px solid rgba(255,45,136,.55);padding:11px;border-radius:3px}.model.feat .model-cta{background:var(--pink);border-color:var(--pink);color:#fff}.gift-box{position:relative;overflow:hidden;border:1px solid rgba(255,45,136,.3);border-radius:14px;background:linear-gradient(120deg,#fff,#fdeef6);padding:clamp(30px,5vw,56px);display:grid;grid-template-columns:1.3fr 1fr;grid-gap:40px;gap:40px;align-items:center;box-shadow:var(--shadow)}.gift-img img{width:80%;margin:0 auto;filter:drop-shadow(0 16px 26px rgba(60,30,50,.2));animation:floatY 6s ease-in-out infinite}.profile-wrap{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:40px;gap:40px;align-items:center}.profile-img img{width:80%;margin:0 auto;filter:drop-shadow(0 22px 40px rgba(60,30,50,.25))}.vtuber{font-family:var(--disp);font-size:13px;letter-spacing:.24em;color:var(--faint);margin:6px 0 22px}.fan{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;background:var(--card-soft);border:1px solid var(--line);border-radius:4px;margin-top:24px}.fan span{font-family:var(--disp);font-size:11px;letter-spacing:.2em;color:var(--pink3)}.fan b{font-weight:700;font-size:18px;color:var(--ink)}.sns{display:flex;gap:12px;margin-top:22px}.sns a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 6px 16px -8px rgba(60,30,50,.3);transition:transform .25s,background .25s,border-color .25s,color .25s}.sns a svg{width:18px;height:18px;fill:currentColor}.sns a:hover{transform:translateY(-3px);color:#fff}.sns a.x:hover{background:#000;border-color:#000}.sns a.yt:hover{background:red;border-color:red}.sns a.tw:hover{background:#9146ff;border-color:#9146ff}.nzxt{height:54px;width:auto;margin:8px auto 0;border-radius:8px}.sponsor-wrap{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px;align-items:center}.sponsor-cases{display:flex;gap:18px}.sponsor-cases>div{flex:1 1;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:var(--shadow);transition:transform .4s}.sponsor-cases>div:hover{transform:translateY(-6px)}.sponsor-cases span{display:block;font-family:var(--disp);font-size:11px;letter-spacing:.2em;color:var(--faint);text-align:center;margin-top:10px}.foot{margin:0 auto;width:100%;max-width:1240px;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;padding-top:36px;border-top:1px solid var(--line)}.foot-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 30px}.foot-links a{font-size:13px;letter-spacing:.04em;color:var(--muted);transition:color .25s}.foot-links a:hover{color:var(--pink2)}.copyright{font-size:12px;letter-spacing:.14em}.copyright,.foot-note{font-family:var(--disp);color:var(--faint)}.foot-note{font-size:10px;letter-spacing:.2em}.legal{max-width:860px;margin:0 auto;padding:0 clamp(20px,5vw,40px) 80px}.legal-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0;position:-webkit-sticky;position:sticky;top:0;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;border-bottom:1px solid var(--line);margin-bottom:40px}.legal-back{font-size:13px;letter-spacing:.06em;color:var(--muted);transition:color .25s}.legal-back:hover{color:var(--pink2)}.legal-body h1{font-weight:900;font-size:clamp(26px,4vw,40px);margin-bottom:14px;padding-bottom:18px;border-bottom:2px solid var(--pink)}.legal-body h1,.legal-body h2{font-family:var(--jp);color:var(--ink)}.legal-body h2{font-weight:700;font-size:clamp(18px,2.4vw,24px);margin:40px 0 12px;padding-left:14px;border-left:3px solid var(--pink)}.legal-body h3{font-family:var(--jp);font-weight:700;font-size:16px;color:var(--pink2);margin:26px 0 8px}.legal-body p{font-size:14.5px;line-height:2;color:var(--muted);margin:0 0 12px}.legal-body ol,.legal-body ul{margin:4px 0 16px;padding-left:0;list-style:none}.legal-body .alpha-list li,.legal-body .plist li{font-size:14.5px;line-height:1.9;color:var(--muted);padding:6px 0}.legal-body .dot-list li{font-size:14.5px;line-height:1.9;color:var(--muted);padding:6px 0 6px 20px;position:relative}.legal-body .dot-list li:before{content:"・";position:absolute;left:0;color:var(--pink2)}.legal-body .num-list{counter-reset:ni}.legal-body .num-list li{counter-increment:ni;font-size:14.5px;line-height:1.9;color:var(--muted);padding:7px 0 7px 34px;position:relative}.legal-body .num-list li:before{content:counter(ni);position:absolute;left:0;top:7px;width:22px;height:22px;background:var(--pink);color:#fff;border-radius:50%;font-size:11px;font-family:var(--disp);display:grid;place-items:center}.legal-body .kv{display:grid;grid-template-columns:max-content 1fr;border-top:1px solid var(--line);margin:8px 0 24px}.legal-body .kv dt{font-weight:700;color:var(--ink);padding:16px 28px 16px 0}.legal-body .kv dd,.legal-body .kv dt{font-size:14px;border-bottom:1px solid var(--line)}.legal-body .kv dd{line-height:1.9;color:var(--muted);padding:16px 0}.legal-foot{margin-top:60px;padding-top:28px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}@media (max-width:600px){.legal-body .kv{grid-template-columns:1fr}.legal-body .kv dt{border-bottom:none;padding:14px 0 2px}.legal-body .kv dd{padding-top:0}}.sound-toggle{align-items:center;gap:10px;background:#fff;border:1px solid var(--line);color:var(--ink);padding:8px 14px;border-radius:2px;cursor:pointer;font-family:var(--disp);font-size:11px;letter-spacing:.2em}.eq,.sound-toggle{display:inline-flex}.eq{align-items:flex-end;gap:2px;height:12px}.eq i{width:2px;height:4px;background:var(--pink);display:block}.eq.on i{animation:eq 1s ease-in-out infinite}.eq.on i:nth-child(2){animation-delay:.2s}.eq.on i:nth-child(3){animation-delay:.4s}.theme-toggle{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:transform .25s,border-color .25s,color .25s,background .25s}.theme-toggle:hover{transform:translateY(-2px);border-color:var(--pink);color:var(--pink)}.theme-toggle svg{width:19px;height:19px;fill:currentColor}.theme-toggle svg g path{fill:none;stroke:currentColor}.order-fab{position:fixed;right:clamp(14px,2.4vw,32px);bottom:clamp(14px,2.4vw,32px);z-index:40;width:clamp(78px,8.5vw,104px);height:clamp(78px,8.5vw,104px);border:none;border-radius:50%;cursor:pointer;background:var(--pink);box-shadow:0 16px 40px -10px rgba(255,45,136,.65);display:grid;place-items:center;transition:transform .3s,background .3s,opacity .4s}.order-fab:hover{background:var(--pink2);transform:scale(1.06)}.order-fab.hide{opacity:0;pointer-events:none;transform:scale(.7)}.order-ring{position:absolute;inset:0;transform:rotate(var(--rot,0deg))}.order-ring svg{width:100%;height:100%;display:block}.order-ring text{font-family:var(--disp);font-weight:600;font-size:8.4px;letter-spacing:.03em;fill:#fff}.order-core{position:relative;display:grid;place-items:center;width:42%;height:42%;transition:transform .4s ease}.order-core svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.order-fab.up .order-core{transform:rotate(180deg)}@media (max-width:820px){.order-fab{width:64px;height:64px}.order-ring text{font-size:7px}}:root[data-theme=dark]{--bg:#0c0a10;--panel:#141019;--ink:#f3eef7;--muted:#b8b0c6;--faint:#79728a;--line:hsla(0,0%,100%,.11);--card:#181221;--card-soft:#1e1728;--shadow:0 18px 44px -18px rgba(0,0,0,.66);--pink:#ff4d9d;--pink2:#ff77b6;--pink3:#ff9ccb}[data-theme=dark] body{background:linear-gradient(135deg,#0d0a12,#120e1a 55%,#0a0810)}[data-theme=dark] .webgl-stage.css-bg{background:radial-gradient(60% 55% at 80% 12%,rgba(255,77,157,.16),transparent 62%),radial-gradient(55% 50% at 12% 95%,rgba(43,182,214,.1),transparent 62%),linear-gradient(135deg,#0d0a12,#130f1c 55%,#0a0810)}[data-theme=dark] .hero-banner{background:linear-gradient(118deg,#161020,#161020 21%,#0d0a14 39%,#0d0a14 60%,#161020 78%,#161020)}[data-theme=dark] .nav{background:linear-gradient(rgba(12,9,16,.86),rgba(12,9,16,0))}[data-theme=dark] .nav-links{color:#c5bdd3}[data-theme=dark] .brand-logo img{filter:brightness(1.55) saturate(1.05)}[data-theme=dark] .sns a,[data-theme=dark] .theme-toggle,[data-theme=dark] .toggle{background:var(--card)}[data-theme=dark] .gift-box{background:linear-gradient(120deg,#181221,#21162c);border-color:rgba(255,77,157,.32)}[data-theme=dark] .btn-ghost{border-color:hsla(0,0%,100%,.22)}[data-theme=dark] .legal-nav{background:rgba(12,9,16,.9)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .95s cubic-bezier(.2,.7,.2,1),transform .95s cubic-bezier(.2,.7,.2,1);will-change:transform,opacity}.reveal.from-up{transform:translateY(46px)}.reveal.from-left{transform:translateX(-72px)}.reveal.from-right{transform:translateX(72px)}.reveal.in{opacity:1;transform:none}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes floatY{0%,to{transform:translateY(-50%)}50%{transform:translateY(calc(-50% - 16px))}}@keyframes eq{0%,to{height:4px}50%{height:12px}}.gift-img img,.profile-img img{animation-name:floatYsimple}@keyframes floatYsimple{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@media (max-width:900px){.case-wrap,.profile-wrap,.sponsor-wrap{grid-template-columns:1fr;gap:28px}.gift-box{grid-template-columns:1fr}}@media (max-width:820px){.nav-links a:not(.nav-cta){display:none}.special-grid{grid-template-columns:1fr}.panel{padding:44px 20px}.panel.wide{padding-left:16px;padding-right:16px}.panel.hero{min-height:92vh;padding-top:92px;padding-bottom:40px}.scroll-hint{display:none}h2{font-size:clamp(26px,7vw,34px)}.stats{gap:22px}.case-visual{padding:20px;display:flex;flex-direction:column}.case-visual .toggle{position:static;align-self:flex-end;margin-bottom:14px}.case-imgs{grid-template-columns:1fr;gap:8px}.case-imgs img{height:42vh;max-height:none}.sp-card{min-height:220px;padding:24px}.reveal.from-left,.reveal.from-right{transform:translateY(40px)}.reveal.in{transform:none}}@media (prefers-reduced-motion:reduce){.reveal{transition-duration:.01ms;opacity:1;transform:none}.eq.on i,.gift-img img,.profile-img img{animation:none}}
/* Version 1.1 */
.banner-tagline{font-size:clamp(2.2rem,4.6vw,5.4rem)!important;letter-spacing:.035em}.hs-img.char{object-fit:contain!important;max-height:82%!important}

/* Version 1.1 supplied assets — 2026-08-12 */
.brand-logo{display:flex!important;align-items:center!important;gap:14px!important;width:auto!important}
.brand-logo .mikeneko-logo{width:auto!important;height:42px!important;object-fit:contain!important}
.brand-logo .brand-divider{width:1px;height:28px;background:rgba(255,255,255,.28);display:block}
.brand-logo .nos-logo{width:150px!important;height:38px!important;object-fit:contain!important}
.case-visual .toggle{display:flex!important}
.sp-card img[src$="mikeneko-square-sample-20260817.gif"]{object-fit:contain!important;max-height:210px!important}
@media(max-width:760px){.brand-logo{gap:8px!important}.brand-logo .mikeneko-logo{height:32px!important}.brand-logo .nos-logo{width:100px!important;height:28px!important}.brand-logo .brand-divider{height:22px}.nav .theme-toggle{display:none!important}}

/* Version 1.1 — enlarge PC samples in GAMING PC section */
@media(min-width:901px){
  .case-visual{padding:22px 18px 20px!important;overflow:hidden}
  .case-visual .toggle{right:18px!important;top:16px!important}
  .case-imgs{gap:0!important;margin:-8px -30px -2px!important}
  .case-imgs figure{gap:2px!important}
  .case-imgs img{width:124%!important;height:58vh!important;max-height:610px!important;transform:scale(1.04)}
}

#lineup .cpu-option-note{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1px;
  margin:0 20px 10px;
  padding:7px 10px;
  border:1px solid rgba(255,42,132,.34);
  border-radius:999px;
  background:rgba(255,42,132,.08);
  color:var(--pink3);
  font-size:clamp(10px,.75vw,12px);
  font-weight:700;
  line-height:1.35;
  letter-spacing:.035em;
  text-align:center;
  white-space:normal;
}
#lineup .cpu-option-note strong{font-size:1.05em;line-height:1.3}
#lineup .cpu-option-note span{font-size:.92em;line-height:1.3}

/* 2026-08-26: one stable tablet/mobile header; never replace theme control with a question mark */
@media(max-width:900px){
  .nav{
    min-height:72px!important;
    padding:0 clamp(12px,2.4vw,20px)!important;
    overflow:visible!important;
  }
  .nav-links{gap:clamp(8px,1.8vw,12px)!important}
  .nav .nav-contact{display:none!important}
  .nav .theme-toggle{
    display:inline-grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    border-color:rgba(255,255,255,.34)!important;
    background:rgba(255,255,255,.06)!important;
    color:#fff!important;
  }
  .nav .theme-toggle svg{display:block!important;width:19px!important;height:19px!important}
  .mobile-menu summary{width:40px!important;height:40px!important}
  .nav-cta{padding:10px clamp(12px,2vw,16px)!important;font-size:11px!important;white-space:nowrap!important}
}

@media(min-width:601px) and (max-width:760px){
  .brand-logo img{height:34px!important}
}
@media(max-width:900px){
  .case-visual{padding:16px 10px 18px!important}
  .case-imgs{gap:2px!important}
  .case-imgs img{width:108%!important;height:48vh!important;max-height:470px!important}
}

/* Version 1.1 mobile optimization pass */
@media(max-width:600px){
  .nav{height:64px!important;padding:0 12px!important;gap:8px!important}
  .brand-logo{gap:6px!important;min-width:0!important}
  .brand-logo .mikeneko-logo{height:27px!important;width:auto!important}
  .brand-logo .nos-logo{height:22px!important;width:82px!important}
  .brand-logo .brand-divider{height:19px!important}
  .nav-cta{font-size:10px!important;padding:11px 13px!important;white-space:nowrap!important}
  .hero-banner{min-height:calc(100svh - 64px)!important}
  .banner-tagline{font-size:clamp(2rem,10vw,2.85rem)!important;line-height:1.04!important;max-width:88vw!important;text-align:center!important}
  .banner-caption{padding:10px 52px 10px 10px!important}
  .bc-title{font-size:11px!important}.bc-period{font-size:12px!important;white-space:nowrap!important}
  .panel{padding-left:14px!important;padding-right:14px!important}
  .sec-head .en{font-size:clamp(2rem,12vw,3rem)!important}
  .case-wrap{gap:22px!important}
  .case-visual{border-radius:7px!important;padding:14px 6px 16px!important}
  .case-visual .toggle{align-self:center!important;margin-bottom:4px!important}
  .case-imgs img{width:100%!important;height:43vh!important;max-height:390px!important}
  .case-text .body{font-size:14px!important;line-height:1.85!important}
  .features li{padding:13px 10px!important;font-size:12px!important;gap:8px!important}
  .special-grid{grid-template-columns:1fr!important}
  .sp-card{min-height:0!important;padding:22px 18px!important}
  .profile-wrap{gap:18px!important}.profile-img img{max-height:58vh!important}
  .lineup-scroll{gap:14px!important;padding:4px 4px 22px!important;scroll-snap-type:x mandatory!important}
  .model{min-width:82vw!important;width:82vw!important;padding:16px!important;scroll-snap-align:center!important}
  .model-img{height:220px!important}.model-img img{max-height:210px!important}
  .model-name{font-size:16px!important;min-height:auto!important}
  .model-price b{font-size:25px!important}
  .model-spec{font-size:12px!important;line-height:1.75!important}
  .foot{padding-left:14px!important;padding-right:14px!important}
  .foot-links{gap:12px!important;flex-wrap:wrap!important;justify-content:center!important}
  .order-fab{width:66px!important;height:66px!important;right:10px!important;bottom:10px!important}
}


/* 2026-08-26: keep the mobile taskbar identical through the narrowest breakpoint */
@media(max-width:900px){
  .nav,[data-theme=dark] .nav{
    min-height:72px!important;
    background:#20202e!important;
    box-shadow:0 2px 14px -6px rgba(0,0,0,.4)!important;
  }
}

@media(max-width:360px){
  .nav{gap:clamp(7px,2.2vw,12px)!important;padding-inline:clamp(10px,3vw,18px)!important}
  .nav>.brand-logo img{max-width:clamp(78px,24vw,112px)!important;max-height:36px!important}
  .nav .theme-toggle,.mobile-menu,.mobile-menu summary{width:40px!important;height:40px!important;flex-basis:40px!important}
  .nav .nav-cta{padding:10px clamp(12px,2vw,16px)!important;font-size:11px!important}
}

/* 2026-08-26: supplied SIDE / FRONT assets already share a common canvas; keep visible case heights equal */
@media(min-width:601px){
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{transform:none!important;transform-origin:center bottom!important}
}


/* Sheet revisions — 2026-08-17 */
.banner-tagline{display:flex!important;flex-direction:column!important;gap:.04em!important;line-height:.88!important}
.banner-tagline span{display:block}
.hero-banner .hs-img.char{max-width:100%!important;max-height:94%!important}
.foot-brand-row{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.foot-brand-divider{width:1px;height:28px;background:var(--line);display:block}
.foot-nos-logo{display:block;width:160px;height:38px;object-fit:contain}
.model-img{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;overflow:hidden}
.model-img img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:820px){
  .banner-info{bottom:25%!important}
  .banner-tagline{font-size:clamp(2.1rem,10.5vw,3.1rem)!important}
  .case-imgs{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:thin!important;gap:10px!important;padding:0 4px 12px!important}
  .case-imgs figure{flex:0 0 calc(100% - 8px)!important;scroll-snap-align:center!important}
  .case-imgs img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important}
  .model-img{height:auto!important;min-height:0!important;padding:10px 10px 0!important}
  .model-img img{max-height:none!important}
}
@media(max-width:600px){
  .hero-banner .hero-slides{top:38%!important;height:50%!important}
  .banner-info{bottom:23%!important}
  .foot-brand-row{gap:10px}
  .foot-brand-divider{height:22px}
  .foot-nos-logo{width:118px;height:30px}
}

/* Hydration-safe two-line hero title */
.banner-tagline{display:block!important}

/* Balance, profile fade, and lineup hover — 2026-08-17 */
.profile-img{position:relative;overflow:hidden}
.profile-img img{width:108%!important;max-width:none;margin-left:-4%;max-height:740px;object-fit:contain;object-position:center center;-webkit-mask-image:radial-gradient(ellipse 76% 72% at 50% 45%,#000 0%,#000 48%,rgba(0,0,0,.92) 59%,rgba(0,0,0,.46) 76%,transparent 94%);mask-image:radial-gradient(ellipse 76% 72% at 50% 45%,#000 0%,#000 48%,rgba(0,0,0,.92) 59%,rgba(0,0,0,.46) 76%,transparent 94%)}
.profile-img img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.82) 3%,#000 7%,#000 88%,rgba(0,0,0,.82) 95%,transparent 100%),linear-gradient(to right,transparent 0%,rgba(0,0,0,.3) 5%,rgba(0,0,0,.78) 11%,#000 17%,#000 93%,rgba(0,0,0,.86) 97%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.82) 3%,#000 7%,#000 88%,rgba(0,0,0,.82) 95%,transparent 100%),linear-gradient(to right,transparent 0%,rgba(0,0,0,.3) 5%,rgba(0,0,0,.78) 11%,#000 17%,#000 93%,rgba(0,0,0,.86) 97%,transparent 100%);mask-composite:intersect}
.model-img{position:relative}
.model-img .model-side,.model-img .model-front{position:absolute;inset:10px 10px 0;width:calc(100% - 20px)!important;height:calc(100% - 10px)!important;object-fit:contain;transition:opacity .45s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
.model-img .model-side{opacity:1;transform:scale(1)}
.model-img .model-front{opacity:0;transform:scale(.96)}
@media(hover:hover) and (pointer:fine){
  .model:hover .model-side{opacity:0;transform:scale(1.035)}
  .model:hover .model-front{opacity:1;transform:scale(1)}
}
@media(min-width:901px){
  .case-imgs figure:first-child img{transform:translateX(7%) scale(1.04)!important}
  .case-imgs figure:last-child img{transform:translateX(-2%) scale(1.04)!important}
}
@media(max-width:820px){
  .profile-img img{width:112%!important;margin-left:-6%;max-height:76vh}
  .model-img .model-side,.model-img .model-front{inset:8px 8px 0;width:calc(100% - 16px)!important;height:calc(100% - 8px)!important}
}

/* Final mobile hero/navigation/case pass — 2026-08-18 */
@media(max-width:600px){
  html{scroll-padding-top:72px}
  .nav{position:fixed!important;top:0!important;left:0!important;right:0!important;height:72px!important;padding:0 12px!important;transform:translateZ(0);backface-visibility:hidden;will-change:transform;contain:layout paint;box-shadow:0 2px 14px -6px rgba(0,0,0,.5)!important}
  .brand-logo .mikeneko-logo{height:38px!important;max-width:118px!important}
  .nav-cta{font-size:11px!important;padding:12px 16px!important}
  .hero-banner{margin-top:72px!important;min-height:calc(100svh - 72px)!important;height:calc(100svh - 72px)!important}
  .hero-banner .hero-slides{top:40%!important;width:116%!important;height:64%!important}
  .hero-banner .hs-img{max-width:108%!important;max-height:108%!important}
  .hero-banner .hs-img.char{max-width:112%!important;max-height:112%!important}
  .banner-info{display:none!important}
  .banner-word.mike{top:4%!important;left:4%!important}
  .banner-word.neko{bottom:12%!important;right:3%!important}
  .banner-caption{left:0!important;right:0!important;padding:12px 14px!important;min-height:76px!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:5px!important}
  .bc-title{width:100%!important;font-size:14px!important;line-height:1.35!important;text-align:center!important}
  .bc-period{width:100%!important;font-size:15px!important;line-height:1.35!important;text-align:center!important;letter-spacing:.01em!important}
  #case .sec-head{margin-bottom:20px!important}
  #case .sub{font-size:15px!important;line-height:1.75!important;padding:0 8px!important}
  .case-imgs{display:grid!important;grid-template-columns:1fr 1fr!important;overflow:visible!important;scroll-snap-type:none!important;gap:4px!important;padding:0!important}
  .case-imgs figure{min-width:0!important;flex:none!important}
  .case-imgs img{width:112%!important;max-width:112%!important;height:auto!important;aspect-ratio:1/1!important;margin-left:-6%!important}
  .case-imgs figcaption{font-size:11px!important;letter-spacing:.2em!important}
  .case-text .body{font-size:15px!important;line-height:2!important;word-break:auto-phrase!important;line-break:strict!important;text-wrap:pretty!important}
  .model-img .model-side{opacity:0!important;transform:scale(.96)!important}
  .model-img .model-front{opacity:1!important;transform:scale(1)!important}
}

/* Mobile GAMING PC visual balance and readable content cards — 2026-08-18 */
@media(max-width:600px){
  #case{padding-top:54px!important;padding-bottom:54px!important}
  #case .sec-head{max-width:360px!important;margin-left:auto!important;margin-right:auto!important}
  #case .sec-head .en{font-size:clamp(36px,10.5vw,44px)!important;line-height:1.08!important;letter-spacing:.01em!important;margin-bottom:16px!important}
  #case .sub{max-width:330px!important;margin:0 auto!important;font-size:14px!important;line-height:1.8!important;color:#665e6e!important;text-wrap:pretty!important}
  #case .case-wrap{gap:18px!important}
  #case .case-visual{padding:14px 10px 18px!important;box-shadow:0 16px 38px -22px rgba(85,40,70,.34)!important}
  #case .case-visual .toggle{margin:0 auto 10px!important;padding:4px!important}
  #case .case-visual .toggle button{min-width:94px!important;padding:10px 13px!important;font-size:12px!important}
  #case .case-imgs{width:100%!important;margin:0 auto!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:8px!important;align-items:end!important}
  #case .case-imgs figure{width:100%!important;min-width:0!important;overflow:visible!important}
  #case .case-imgs img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0 auto!important;object-position:center center!important}
  #case .case-imgs figure:first-child img,#case .case-imgs figure:last-child img{transform:scale(.96)!important;transform-origin:center center!important}
  #case .case-imgs figcaption{margin-top:2px!important;font-size:10px!important;letter-spacing:.22em!important}
  #case .case-text{display:flex!important;flex-direction:column!important;gap:12px!important}
  #case .case-text .body{position:relative!important;max-width:none!important;margin:0!important;padding:43px 18px 19px!important;overflow:hidden!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,239,248,.9))!important;border:1px solid rgba(255,45,136,.22)!important;border-radius:14px!important;box-shadow:0 16px 34px -24px rgba(255,45,136,.46),inset 0 1px 0 rgba(255,255,255,.9)!important;font-size:14px!important;line-height:1.9!important;color:#514a58!important}
  #case .case-text .body:before{content:"DESIGN POINT  ♡";position:absolute;left:0;top:0;padding:8px 15px 8px 14px;border-radius:0 0 12px 0;background:linear-gradient(90deg,var(--pink),#ff6caf);color:#fff;font-family:var(--disp);font-size:9px;font-weight:700;line-height:1;letter-spacing:.14em;box-shadow:0 6px 16px -10px rgba(255,45,136,.7)}
  #case .case-text .body:after{content:"";position:absolute;right:-20px;top:-24px;width:76px;height:76px;border:12px solid rgba(255,45,136,.06);border-radius:50%;pointer-events:none}
  #case .features{gap:9px!important;margin:0!important}
  #case .features li{display:grid!important;grid-template-columns:70px minmax(0,1fr)!important;align-items:start!important;gap:7px!important;padding:13px 12px!important;border-left-width:3px!important;border-radius:7px!important;background:rgba(255,255,255,.82)!important;box-shadow:0 9px 24px -22px rgba(60,30,50,.42)!important;font-size:12.5px!important;line-height:1.65!important;word-break:auto-phrase!important;text-wrap:pretty!important}
  #case .features b{display:block!important;margin:1px 0 0!important;font-size:10px!important;letter-spacing:.08em!important}
  #case .case-image-note{align-self:center!important;margin:2px auto 0!important;padding:7px 11px!important;border-radius:999px!important;background:rgba(255,45,136,.07)!important;font-size:10px!important;line-height:1.5!important;text-align:center!important}
}

/* Desktop GAMING PC description card — 2026-08-18 */
@media(min-width:601px){
  #case .case-text .body{position:relative;max-width:none;margin:0 0 18px;padding:48px 22px 22px;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,239,248,.88));border:1px solid rgba(255,45,136,.22);border-radius:14px;box-shadow:0 16px 36px -25px rgba(255,45,136,.5),inset 0 1px 0 rgba(255,255,255,.9);font-size:15px;line-height:1.9;color:#514a58}
  #case .case-text .body:before{content:"DESIGN POINT  ♡";position:absolute;left:0;top:0;padding:9px 17px 9px 15px;border-radius:0 0 12px 0;background:linear-gradient(90deg,var(--pink),#ff6caf);color:#fff;font-family:var(--disp);font-size:10px;font-weight:700;line-height:1;letter-spacing:.14em;box-shadow:0 6px 16px -10px rgba(255,45,136,.7)}
  #case .case-text .body:after{content:"";position:absolute;right:-22px;top:-27px;width:88px;height:88px;border:14px solid rgba(255,45,136,.06);border-radius:50%;pointer-events:none}
}

/* Client copy, shipping notice, and centered mobile design card — 2026-08-18 */
.bc-ship{font-weight:700;font-size:clamp(12px,1.8vw,16px);letter-spacing:.03em}
.bc-notice{font-size:clamp(9px,1.25vw,12px);line-height:1.45;opacity:.86}
.image-disclaimer{max-width:none;margin:14px 0 0;padding:9px 12px;border:1px solid rgba(255,45,136,.16);border-radius:7px;background:rgba(255,255,255,.58);color:#756d7c;text-align:center}
.lineup-disclaimer{display:inline-block;margin-top:10px!important}
@media(max-width:600px){
  .banner-caption{min-height:116px!important;padding:10px 12px!important;gap:2px!important}
  .bc-title{font-size:13px!important}
  .bc-period,.bc-ship{font-size:12px!important;line-height:1.3!important}
  .bc-notice{max-width:340px;font-size:9px!important;line-height:1.35!important}
  #case .case-text .body{text-align:center!important;padding-left:20px!important;padding-right:20px!important}
  #case .case-text .body:before{left:50%!important;right:auto!important;transform:translateX(-50%)!important;white-space:nowrap!important;border-radius:0 0 12px 12px!important}
  #case .case-text .body:after{right:50%!important;transform:translateX(50%)!important;opacity:.7}
  .image-disclaimer{margin-top:2px!important;padding:8px 10px!important;font-size:10px!important;line-height:1.55!important}
  .lineup-disclaimer{margin-top:8px!important}
}
/* 2026-08-19 spreadsheet additions */
.lineup-shipping{display:inline-flex;align-items:center;justify-content:center;margin:12px auto 8px;padding:8px 18px;border:1px solid rgba(255,39,134,.35);border-radius:999px;background:rgba(255,255,255,.72);color:var(--pink);font-weight:800;letter-spacing:.08em}.lineup-notices{max-width:840px;margin:4px auto 14px;color:var(--muted);font-size:12px;line-height:1.75}.lineup-notices p{margin:0}.nav-contact{padding:8px 12px;border:1px solid rgba(255,255,255,.34);border-radius:999px}.nav-contact:hover{border-color:var(--pink)}html[data-theme=dark] .foot-nos-logo{content:url('/assets/next-one-step-logo-white.png')}#case .case-imgs img[alt^="ホワイト"]{filter:drop-shadow(0 20px 32px rgba(60,30,50,.26)) drop-shadow(0 0 14px rgba(126,92,140,.34))}.profile-img img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.78) 5%,#000 10%,#000 86%,rgba(0,0,0,.7) 94%,transparent 100%),linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 7%,rgba(0,0,0,.68) 15%,#000 23%,#000 91%,rgba(0,0,0,.78) 96%,transparent 100%)!important;-webkit-mask-composite:source-in!important;mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.78) 5%,#000 10%,#000 86%,rgba(0,0,0,.7) 94%,transparent 100%),linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 7%,rgba(0,0,0,.68) 15%,#000 23%,#000 91%,rgba(0,0,0,.78) 96%,transparent 100%)!important;mask-composite:intersect!important}
@media(min-width:901px){.hero-slides .hs-img.char{max-width:96%!important;max-height:96%!important;transform:translateX(2%)!important}}
@media(max-width:900px){html,body{overflow-x:clip!important}.hero-banner{overflow:hidden!important}.hero-slides .hs-img.char{max-width:104%!important;max-height:104%!important;transform:translateX(3%)!important}.lineup-shipping{font-size:15px;margin-top:10px}.lineup-notices{padding:0 12px;font-size:12px;text-align:left}.nav-links .nav-contact{display:inline-flex!important;font-size:0;width:38px;height:38px;padding:0;align-items:center;justify-content:center}.nav-links .nav-contact:before{content:'?';font-size:17px;font-family:Arial,sans-serif;font-weight:900}.banner-caption{min-height:82px!important}}
.mobile-menu{display:none;position:relative}.mobile-menu summary{list-style:none;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu-panel{position:absolute;right:0;top:46px;display:grid;min-width:190px;padding:10px;border:1px solid rgba(255,39,134,.28);border-radius:14px;background:rgba(25,23,36,.97);box-shadow:0 18px 42px rgba(15,10,25,.28)}.mobile-menu-panel a{display:block!important;padding:11px 13px;color:#fff;border-radius:9px}.mobile-menu-panel a:hover{background:rgba(255,39,134,.14)}
@media(max-width:900px){.mobile-menu{display:block}.mobile-menu summary{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.34);border-radius:10px;color:#fff;font-size:22px;line-height:1}.mobile-menu[open] summary{border-color:var(--pink);color:var(--pink)}}
/* 2026-08-19 hero transparent character */
.hero-slides .hs-img.char{-webkit-mask-image:none!important;mask-image:none!important;object-fit:contain!important;filter:drop-shadow(0 18px 30px rgba(115,55,100,.2))!important}
@media(min-width:901px){.hero-slides .hs-img.char{max-width:88%!important;max-height:92%!important;transform:translateX(4%)!important}}
@media(max-width:900px){.hero-slides .hs-img.char{max-width:98%!important;max-height:100%!important;transform:translateX(5%)!important}}

/* Equal-size case artwork, crisp outline shadow, and white visual box — 2026-08-21 */
#case .case-visual,
html[data-theme=dark] #case .case-visual{
  background:#fff!important;
  border-color:rgba(61,48,67,.14)!important;
}
#case .case-imgs img,
#case .case-imgs img[alt^="ホワイト"]{
  filter:drop-shadow(0 4px 3px rgba(52,38,58,.2)) drop-shadow(0 0 1px rgba(38,25,42,.24))!important;
}
@media(min-width:901px){
  #case .case-imgs figure:first-child img{transform:translateX(7%) scale(1.14)!important}
  #case .case-imgs figure:last-child img{transform:translateX(-2%) scale(1.04)!important}
}
@media(max-width:900px){
  #case .case-imgs figure:first-child img{transform:scale(1.055)!important}
  #case .case-imgs figure:last-child img{transform:scale(.96)!important}
}

/* Preserve the profile silhouette; soften only the supplied artwork's cut foot edge */
#profile .profile-img img{
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 87%,rgba(0,0,0,.96) 90%,rgba(0,0,0,.66) 95%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 87%,rgba(0,0,0,.96) 90%,rgba(0,0,0,.66) 95%,transparent 100%)!important;
  -webkit-mask-composite:initial!important;
  mask-composite:initial!important;
}

/* Discord-supplied LINE UP direction: show BLACK and WHITE together */
#lineup .model-img .model-side,
#lineup .model-img .model-front{
  opacity:1!important;
  inset:auto!important;
  top:7%!important;
  width:66%!important;
  height:86%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 7px 7px rgba(30,20,34,.2))!important;
}
#lineup .model-img .model-side{left:-2%!important;transform:translateY(-4%) scale(.96)!important;z-index:1}
#lineup .model-img .model-front{right:-2%!important;transform:translateY(7%) scale(.96)!important;z-index:2}
@media(hover:hover) and (pointer:fine){
  #lineup .model:hover .model-side{opacity:1!important;transform:translateY(-4%) scale(1)!important}
  #lineup .model:hover .model-front{opacity:1!important;transform:translateY(7%) scale(1)!important}
}
@media(max-width:600px){
  #lineup .model-img .model-side{opacity:1!important;transform:translateY(-4%) scale(.96)!important}
  #lineup .model-img .model-front{opacity:1!important;transform:translateY(7%) scale(.96)!important}
}

/* Type scale aligned to the prior KaguraMea collaboration page — 2026-08-21 */
@media(min-width:601px){
  .sec-head .en{font-size:40px!important;line-height:1.12!important}
  #case .case-text .body{font-size:18px!important;line-height:1.75!important}
  #case .features li{font-size:15px!important;line-height:1.65!important}
  #special .sp-card h3{font-size:28px!important;line-height:1.3!important}
  #special .sp-card .body{font-size:16px!important;line-height:1.75!important}
  #profile .profile-text .big{font-size:28px!important;line-height:1.25!important}
  #profile .profile-text .body{font-size:18px!important;line-height:1.75!important}
  #lineup .model-name{font-size:18px!important;line-height:1.4!important}
  #lineup .model-spec{font-size:13px!important;line-height:1.75!important}
}
@media(max-width:600px){
  .sec-head .en,#case .sec-head .en{font-size:35px!important;line-height:1.12!important}
  #case .sub{font-size:12px!important;line-height:1.7!important}
  #case .case-text .body{font-size:12px!important;line-height:1.8!important}
  #case .features li{font-size:11px!important;line-height:1.65!important}
  #special .sp-card h3{font-size:20px!important;line-height:1.35!important}
  #special .sp-card .body{font-size:14px!important;line-height:1.75!important}
  #profile .profile-text .big{font-size:20px!important;line-height:1.3!important}
  #profile .profile-text .body{font-size:12px!important;line-height:1.75!important}
  #lineup .model-name{font-size:14px!important;line-height:1.4!important}
  #lineup .model-price{font-size:13px!important}
  #lineup .model-spec{font-size:10.5px!important;line-height:1.7!important}
}

/* Final supplied hero / lineup assets and no-crop character framing — 2026-08-21 */
#lineup .model-img .lineup-composite{
  position:absolute!important;
  inset:4%!important;
  width:92%!important;
  height:92%!important;
  max-height:none!important;
  opacity:1!important;
  transform:none!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 8px rgba(30,20,34,.18))!important;
}
@media(hover:hover) and (pointer:fine){
  #lineup .model:hover .lineup-composite{opacity:1!important;transform:scale(1.015)!important}
}
#profile .profile-img{overflow:visible!important}
#profile .profile-img img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.bc-title{font-size:clamp(17px,1.7vw,22px)!important;line-height:1.35!important}
@media(min-width:901px){
  .hero-banner .hero-slides{width:min(78vw,1500px)!important;height:94%!important;top:48%!important}
  .hero-banner .hs-img{max-width:96%!important;max-height:92%!important;object-fit:contain!important}
  .hero-banner .hs-img.char{max-width:96%!important;max-height:94%!important;transform:none!important}
}
@media(max-width:900px){
  .hero-banner .hero-slides{left:50%!important;width:100%!important;height:62%!important;top:42%!important}
  .hero-banner .hs-img{max-width:98%!important;max-height:96%!important;object-fit:contain!important;transform:none!important}
  .hero-banner .hs-img.char{max-width:100%!important;max-height:96%!important;transform:none!important}
}
@media(max-width:600px){
  .bc-title{font-size:16px!important;letter-spacing:.06em!important}
  #profile .profile-img img{width:100%!important;max-width:100%!important;margin:0 auto!important}
}

/* Hero bar, clean profile artwork, and KaguraMea-aligned type scale — 2026-08-21 c */
.hero-banner{box-sizing:border-box!important;height:100svh!important;min-height:720px!important;margin-top:0!important;padding-top:72px!important;padding-bottom:clamp(106px,8.2vw,132px)!important}
.banner-caption{box-sizing:border-box!important;min-height:clamp(106px,8.2vw,132px)!important;padding:14px 18px 16px!important;gap:4px!important;overflow:visible!important}
.bc-title{font-size:clamp(26px,2.15vw,38px)!important;line-height:1.25!important}
.bc-period{font-size:clamp(22px,2.1vw,38px)!important;line-height:1.3!important}
#profile .profile-img img{-webkit-mask-image:none!important;mask-image:none!important;filter:drop-shadow(0 12px 18px rgba(90,55,85,.14))!important}
@media(min-width:601px){
  .panel{padding-top:76px!important;padding-bottom:76px!important}
  .sec-head .en{font-size:clamp(42px,3.25vw,56px)!important}
  .sec-head .sub{font-size:clamp(17px,1.35vw,21px)!important}
  #case .case-text .body,#profile .profile-text .body{font-size:20px!important}
  #case .features li{font-size:17px!important}
  #special .sp-card .body{font-size:17px!important}
  #lineup .model-name{font-size:20px!important}
  #lineup .model-spec{font-size:15px!important}
  #lineup .lineup-shipping{font-size:20px!important}
  #lineup .lineup-notices{font-size:16px!important}
}
@media(max-width:600px){
  .hero-banner{height:100svh!important;min-height:680px!important;padding-top:72px!important;padding-bottom:104px!important}
  .banner-caption{min-height:104px!important;padding:11px 12px 13px!important}
  .bc-title{font-size:19px!important;line-height:1.3!important}
  .bc-period{font-size:16px!important;line-height:1.35!important}
  .sec-head .en,#case .sec-head .en{font-size:38px!important}
  #case .sub,.sec-head .sub{font-size:15px!important;line-height:1.75!important}
  #case .case-text .body,#profile .profile-text .body{font-size:15px!important;line-height:1.8!important}
  #case .features li{font-size:13px!important}
  #special .sp-card .body{font-size:15px!important}
  #lineup .model-name{font-size:16px!important}
  #lineup .model-price{font-size:15px!important}
  #lineup .model-spec{font-size:12px!important}
  #lineup .lineup-shipping{font-size:17px!important}
  #lineup .lineup-notices{font-size:13px!important;line-height:1.65!important}
}

/* Final polish: 4K header, tablet PROFILE, mobile order button — 2026-08-21 d */
@media(min-width:2200px){
  .nav{height:84px!important;padding:0 56px!important}
  .brand-logo .mikeneko-logo{height:54px!important}
  .nav-links{gap:30px!important;font-size:15px!important}
  .nav-contact,.nav-cta{font-size:15px!important;padding:14px 22px!important}
  .theme-toggle{width:48px!important;height:48px!important}
  .hero-banner{padding-top:84px!important}
}
@media(min-width:661px) and (max-width:900px){
  #profile .profile-img img{width:88%!important;max-width:88%!important;max-height:62vh!important}
}
@media(max-width:600px){
  .order-fab{width:54px!important;height:54px!important;right:6px!important;bottom:6px!important;box-shadow:0 10px 28px -10px rgba(255,45,136,.58)!important}
  .order-core svg{width:23px!important;height:23px!important}
  .mobile-menu-panel{right:-10px!important;top:44px!important;min-width:200px!important}
  .mobile-menu-panel a{min-height:44px!important;display:flex!important;align-items:center!important}
}

/* 2026-08-21 mobile hero/navigation polish */
@media(max-width:600px){
  .nav{height:72px!important;padding:0 12px!important;background:rgba(24,23,35,.97)!important;box-shadow:0 8px 28px rgba(13,10,22,.18)!important;contain:none!important;overflow:visible!important}
  .hero-banner{box-sizing:border-box!important;height:100svh!important;min-height:700px!important;margin-top:0!important;padding:72px 0 104px!important;overflow:hidden!important}
  .banner-word{font-size:clamp(62px,19vw,78px)!important;line-height:.76!important;opacity:.92!important}
  .banner-word.mike{top:94px!important;left:14px!important}
  .banner-word.neko{right:12px!important;bottom:126px!important}
  .banner-info{display:block!important;left:50%!important;right:auto!important;top:162px!important;bottom:auto!important;width:calc(100% - 36px)!important;max-width:none!important;transform:translateX(-50%)!important;text-align:center!important;pointer-events:none!important}
  .banner-tagline{display:block!important;width:100%!important;max-width:none!important;margin:0!important;color:#1f1d28!important;font-family:var(--disp)!important;font-size:clamp(30px,9.2vw,38px)!important;font-weight:700!important;line-height:.9!important;letter-spacing:.035em!important;text-align:center!important;text-shadow:0 2px 0 rgba(255,255,255,.86),0 8px 22px rgba(255,45,136,.12)!important}
  .hero-slides{left:50%!important;top:54%!important;width:108%!important;height:55%!important;transform:translate(-50%,-50%)!important}
  .banner-caption{min-height:104px!important;padding:11px 14px 13px!important}
  .mobile-menu:not([open])>.mobile-menu-panel{display:none!important}
  .mobile-menu[open]>.mobile-menu-panel{position:fixed!important;top:72px!important;left:12px!important;right:12px!important;z-index:30!important;display:grid!important;width:auto!important;min-width:0!important;padding:10px!important;border:1px solid rgba(255,71,147,.35)!important;border-radius:0 0 16px 16px!important;background:rgba(25,23,36,.985)!important;box-shadow:0 20px 42px rgba(15,10,25,.32)!important}
  .mobile-menu-panel a{min-height:46px!important;justify-content:center!important;font-size:13px!important;letter-spacing:.08em!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
  .mobile-menu-panel a:last-child{border-bottom:0!important}
}

/* 2026-08-21 mobile character composition refinement */
@media(max-width:600px){
  .hero-slides:has(.hs-img.char.on){top:55%!important;height:68%!important;width:116%!important}
  .hero-slides .hs-img.char{max-width:112%!important;max-height:112%!important;transform:translate(3%,7%)!important;filter:drop-shadow(0 14px 22px rgba(115,55,100,.16))!important;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 87%,rgba(0,0,0,.92) 91%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 87%,rgba(0,0,0,.92) 91%,transparent 100%)!important;-webkit-mask-size:100% 100%!important;mask-size:100% 100%!important}
  .banner-word.neko{bottom:114px!important}
}

/* 2026-08-21 mobile character-centered layout */
@media(max-width:600px){
  .hero-banner:has(.hs-img.char.on){padding-bottom:92px!important}
  .hero-banner:has(.hs-img.char.on) .hero-slides{top:55.5%!important;height:74%!important;width:120%!important}
  .hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{max-width:116%!important;max-height:116%!important;transform:translate(-7%,6%)!important;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 88%,rgba(0,0,0,.96) 92%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 88%,rgba(0,0,0,.96) 92%,transparent 100%)!important}
  .hero-banner:has(.hs-img.char.on) .banner-word.neko{bottom:98px!important}
  .hero-banner:has(.hs-img.char.on) .banner-caption{min-height:92px!important;padding:9px 12px 11px!important}
}

/* 2026-08-21 mobile title below product/character */
@media(max-width:600px){
  .banner-info{top:auto!important;bottom:112px!important;left:50%!important;width:calc(100% - 32px)!important;transform:translateX(-50%)!important;z-index:4!important}
  .banner-tagline{font-size:clamp(28px,8.7vw,36px)!important;line-height:.9!important;text-align:center!important;text-shadow:0 2px 0 rgba(255,255,255,.94),0 8px 20px rgba(255,45,136,.13)!important}
  .banner-word.neko{bottom:166px!important;z-index:2!important;opacity:.28!important}
  .hero-banner:has(.hs-img.char.on) .hero-slides{top:53.5%!important;height:70%!important;width:118%!important}
  .hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{max-width:112%!important;max-height:112%!important;transform:translate(-7%,2%)!important;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.94) 87%,rgba(0,0,0,.45) 94%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.94) 87%,rgba(0,0,0,.45) 94%,transparent 100%)!important}
  .hero-banner:has(.hs-img.char.on) .banner-word.neko{bottom:166px!important}
}

/* PC slides keep the title directly below the product image */
@media(max-width:600px){
  .hero-banner:not(:has(.hs-img.char.on)) .banner-info{bottom:166px!important}
  .hero-banner:not(:has(.hs-img.char.on)) .banner-word.neko{bottom:94px!important;opacity:.36!important}
}

/* Resolution-safe mobile caption/title spacing */
@media(max-width:600px){
  .hero-banner{--mobile-caption-height:104px;--mobile-title-gap:62px;padding-bottom:calc(var(--mobile-caption-height) + env(safe-area-inset-bottom,0px))!important}
  .hero-banner:has(.hs-img.char.on){--mobile-caption-height:92px;--mobile-title-gap:20px}
  .banner-info,.hero-banner:not(:has(.hs-img.char.on)) .banner-info{bottom:calc(var(--mobile-caption-height) + var(--mobile-title-gap) + env(safe-area-inset-bottom,0px))!important}
  .banner-caption{box-sizing:border-box!important;min-height:calc(var(--mobile-caption-height) + env(safe-area-inset-bottom,0px))!important;padding-bottom:calc(13px + env(safe-area-inset-bottom,0px))!important}
  .hero-banner:has(.hs-img.char.on) .banner-caption{min-height:calc(var(--mobile-caption-height) + env(safe-area-inset-bottom,0px))!important;padding-bottom:calc(11px + env(safe-area-inset-bottom,0px))!important}
  .hero-banner:not(:has(.hs-img.char.on)) .banner-word.neko{bottom:calc(var(--mobile-caption-height) - 10px + env(safe-area-inset-bottom,0px))!important}
  .hero-banner:has(.hs-img.char.on) .banner-word.neko{bottom:calc(var(--mobile-caption-height) + 74px + env(safe-area-inset-bottom,0px))!important}
}

/* 2026-08-21 stable/lightweight mobile hero */
@media(max-width:600px){
  .hero-banner,.hero-banner:has(.hs-img.char.on){--mobile-caption-height:82px;--mobile-title-gap:20px;padding-bottom:calc(var(--mobile-caption-height) + env(safe-area-inset-bottom,0px))!important}
  .hero-banner .hero-slides,.hero-banner:has(.hs-img.char.on) .hero-slides{top:50%!important;width:110%!important;height:62%!important;transform:translate(-50%,-50%)!important}
  .hero-banner .hs-img{max-width:94%!important;max-height:92%!important;transition:opacity .72s ease!important;will-change:opacity}
  .hero-banner .hero-slides .hs-img.char,.hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{max-width:103%!important;max-height:98%!important;transform:translate(-4%,-3%)!important;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 74%,rgba(0,0,0,.45) 82%,transparent 90%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 74%,rgba(0,0,0,.45) 82%,transparent 90%,transparent 100%)!important}
  .banner-info,.hero-banner:not(:has(.hs-img.char.on)) .banner-info,.hero-banner:has(.hs-img.char.on) .banner-info{bottom:calc(var(--mobile-caption-height) + var(--mobile-title-gap) + env(safe-area-inset-bottom,0px))!important}
  .banner-caption,.hero-banner:has(.hs-img.char.on) .banner-caption{min-height:calc(var(--mobile-caption-height) + env(safe-area-inset-bottom,0px))!important;padding:7px 12px calc(9px + env(safe-area-inset-bottom,0px))!important;justify-content:center!important}
  .banner-word.neko,.hero-banner:not(:has(.hs-img.char.on)) .banner-word.neko,.hero-banner:has(.hs-img.char.on) .banner-word.neko{bottom:calc(var(--mobile-caption-height) + 72px + env(safe-area-inset-bottom,0px))!important;opacity:.2!important}
  .nav .nav-contact{display:none!important}
  .nav .theme-toggle{display:inline-grid!important;width:38px!important;height:38px!important;flex:0 0 38px!important;border-color:rgba(255,255,255,.34)!important;background:rgba(255,255,255,.06)!important;color:#fff!important}
  .nav .theme-toggle svg{display:block!important;width:19px!important;height:19px!important}
}

/* 2026-08-26 spreadsheet additions: responsive final pass */
.foot-rabbit-logo{content:url('/assets/rabbit0-dark-20260825.png')!important}
[data-theme=dark] .foot-rabbit-logo{content:url('/assets/rabbit0-light-20260825.png')!important}
#case .case-imgs figure{display:grid!important;grid-template-rows:1fr auto!important;align-items:end!important}
#case .case-imgs figcaption{width:100%!important;text-align:center!important;justify-self:center!important}
#case .case-imgs img{justify-self:center!important}
@media(max-width:360px){
  #case .case-imgs,#case .case-imgs:where(*){grid-template-columns:1fr!important;gap:22px!important}
  #case .case-imgs figure{width:min(100%,270px)!important;max-width:270px!important;margin-inline:auto!important}
  #case .case-imgs img,#case .case-imgs figure:first-child img,#case .case-imgs figure:last-child img{height:250px!important;max-height:250px!important;transform:none!important;object-fit:contain!important;object-position:center bottom!important}
  #case .case-imgs figure:first-child img{transform:translateY(3%) scale(1.06)!important;transform-origin:center bottom!important}
  .banner-tagline{color:#1c1622!important}
  [data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}
}
@media(min-width:361px) and (max-width:600px){.banner-tagline{color:#1c1622!important}[data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}}
@media(min-width:601px) and (max-width:900px){
  .banner-info{top:auto!important;bottom:clamp(118px,15vh,174px)!important;left:50%!important;right:auto!important;width:min(92%,520px)!important;max-width:none!important;transform:translateX(-50%)!important;text-align:center!important;z-index:4!important}
  .banner-tagline{font-size:clamp(34px,5.5vw,46px)!important;line-height:.94!important;text-align:center!important;color:#1c1622!important}
  [data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}
  .mobile-menu[open]>.mobile-menu-panel{position:fixed!important;top:72px!important;left:clamp(10px,2.5vw,20px)!important;right:clamp(10px,2.5vw,20px)!important;width:auto!important;max-width:none!important;transform:none!important;max-height:calc(100dvh - 84px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
}
@media(max-width:600px){.mobile-menu[open]>.mobile-menu-panel{position:fixed!important;top:64px!important;left:8px!important;right:8px!important;width:auto!important;max-width:none!important;transform:none!important;max-height:calc(100dvh - 72px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}}

/* Final tablet case lock: keep SIDE and FRONT visible together without a horizontal rail */
@media(min-width:601px) and (max-width:900px){
  #case .case-imgs,
  #case .case-imgs:where(*){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(10px,2vw,20px)!important;width:100%!important;margin:0 auto!important;padding:0!important;overflow:visible!important;scroll-snap-type:none!important}
  #case .case-imgs figure{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;flex:none!important}
  #case .case-imgs img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{width:100%!important;max-width:100%!important;height:clamp(230px,38vw,340px)!important;margin:0 auto!important;transform:none!important;object-fit:contain!important;object-position:center bottom!important}
  #case .case-imgs figure:first-child img{transform:translateY(5%) scale(1.09)!important;transform-origin:center bottom!important}
}

/* 2026-08-26 mobile header hierarchy: menu at far left, purchase CTA remains at far right */
@media(max-width:900px){
  .nav{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:clamp(7px,2.2vw,12px)!important;
    padding-inline:clamp(10px,3vw,18px)!important;
  }
  .nav-links{display:contents!important}
  .mobile-menu{display:block!important;order:0!important;flex:0 0 40px!important}
  .nav>.brand-logo{order:1!important;margin-right:auto!important;min-width:0!important}
  .nav>.brand-logo img{max-width:clamp(78px,24vw,112px)!important;height:auto!important;max-height:36px!important}
  .nav .theme-toggle{order:2!important}
  .nav .nav-cta{order:3!important;margin-left:0!important}
  .nav-links>a:not(.nav-cta),.nav .nav-contact{display:none!important}
}
@media(max-width:360px){
  .nav{gap:6px!important;padding-inline:8px!important}
  .nav>.brand-logo img{max-width:76px!important}
  .nav .theme-toggle{width:36px!important;height:36px!important;flex-basis:36px!important}
  .mobile-menu,.mobile-menu summary{width:36px!important;height:36px!important;flex-basis:36px!important}
  .nav .nav-cta{padding:10px 10px!important;font-size:9.5px!important}
}

/* Dark-mode disclosure: preserve readable contrast over the image section */
html[data-theme=dark] #case .image-disclaimer{
  color:#f6f0fa!important;
  background:rgba(28,22,36,.96)!important;
  border:1px solid rgba(255,119,182,.4)!important;
  border-left:4px solid var(--pink)!important;
  border-radius:8px!important;
  padding:11px 14px!important;
  text-shadow:none!important;
  box-shadow:0 10px 26px -18px rgba(0,0,0,.8)!important;
}
html[data-theme=dark] #case .features li{
  color:#f6f0fa!important;
  background:#1d1727!important;
  border-color:rgba(255,119,182,.25)!important;
  border-left-color:var(--pink)!important;
  text-shadow:none!important;
}
html[data-theme=dark] #case .features li b{color:#ff77b6!important}

/* PROFILE: preserve the artwork and fade only the cut-off feet */
#profile .profile-img img{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 86%,rgba(0,0,0,.92) 90%,rgba(0,0,0,.42) 96%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 86%,rgba(0,0,0,.92) 90%,rgba(0,0,0,.42) 96%,transparent 100%)!important}

/* 2026-08-21 mobile MIKE / NEKO emphasis */
@media(max-width:600px){
  .hero-banner .banner-word{font-size:clamp(100px,25vw,380px)!important;color:#ff669a!important;opacity:1!important}
  .hero-banner .banner-word.mike,.hero-banner .banner-word.neko,.hero-banner:has(.hs-img.char.on) .banner-word.neko{color:#ff669a!important;opacity:1!important}
  #top span.banner-word.mike,#top span.banner-word.neko{color:#ff669a!important;opacity:1!important}
  #top span.banner-word.neko{bottom:calc(var(--mobile-caption-height) + 100px + env(safe-area-inset-bottom,0px))!important}
}

/* 2026-08-25 supplied-sheet revisions */
.case-wrap{align-items:stretch!important}
.case-visual,.case-text{box-sizing:border-box!important;height:100%!important}
.case-text{display:flex!important;flex-direction:column!important;justify-content:center!important}
.foot-rabbit-logo{display:block;width:clamp(92px,9vw,150px);height:52px;object-fit:contain;content:url('/assets/rabbit0-light-20260825.png')}
[data-theme=dark] .foot-rabbit-logo{content:url('/assets/rabbit0-dark-20260825.png')}
@media(max-width:600px){
  .hero-slides{left:50%!important;right:auto!important;margin:0!important}
  .mobile-menu-panel a[href*="/pages/contact"]{color:#ff6da5!important;font-weight:700!important}
  .foot-brand-row{flex-wrap:wrap!important;justify-content:center!important}
  .foot-rabbit-logo{width:116px!important;height:46px!important}
}
@media(max-width:360px){
  #case .case-imgs{grid-template-columns:1fr!important;gap:18px!important}
  #case .case-imgs figure{width:100%!important;max-width:250px!important;margin-inline:auto!important}
  #case .case-imgs img{height:auto!important;max-height:260px!important}
}
#profile .profile-img img{filter:none!important}
.case-visual,.model-img{position:relative!important}
.case-visual:after,.model-img:after{content:"©2011mikeneko";position:absolute;z-index:4;right:10px;bottom:8px;color:#5f5867;font:600 10px/1.2 Arial,sans-serif;letter-spacing:.02em;pointer-events:none}
.model-img:after{right:8px;bottom:6px;font-size:9px}
[data-theme=dark] .case-visual:after,[data-theme=dark] .model-img:after{color:#453d49}

/* 2K / high-density desktop hero balance — 2026-08-25 */
@media(min-width:2000px){
  .hero-banner .banner-word{font-size:clamp(220px,11vw,280px)!important}
  .hero-banner .banner-word.mike{top:13%!important;left:2%!important}
  .hero-banner .banner-word.neko{right:2%!important;bottom:calc(132px + 3.5vh)!important}
  .hero-banner .hero-slides{width:min(58vw,1280px)!important;height:84%!important;top:48%!important}
  .hero-banner .hs-img{max-width:94%!important;max-height:88%!important}
  .hero-banner .banner-info{left:2.5%!important;top:52%!important;max-width:34%!important}
  .hero-banner .banner-tagline{font-size:clamp(48px,2.5vw,64px)!important;line-height:1.02!important}
}

/* Cross-resolution QA fixes — 2026-08-25 */
.model:hover{transform:none!important}
.reveal{transition-duration:.42s!important;transition-delay:0ms!important}
.order-fab{opacity:.84;transition:opacity .2s,transform .3s,box-shadow .3s!important}
.order-fab:hover,.order-fab:focus-visible{opacity:1}

@media(max-width:600px){
  #lineup .lineup-scroll{scroll-padding-inline:14px!important;padding-right:38px!important}
  #lineup .model{flex:0 0:min(82vw,320px)!important;scroll-snap-align:start!important}
  #lineup .model-img:after{right:10px!important;bottom:26px!important;font-size:8px!important}
  .order-fab{width:48px!important;height:48px!important;right:8px!important;bottom:10px!important;opacity:.76}
  .order-ring text{font-size:6.5px!important}
}

@media(min-width:2000px){
  .panel{width:min(76vw,1680px)!important;max-width:none!important}
  .panel.wide{width:min(84vw,1960px)!important;max-width:none!important}
  .hero-banner .hero-slides{width:min(64vw,1680px)!important;max-width:none!important}
  .sec-head .en{font-size:clamp(56px,3vw,78px)!important}
  .sec-head .sub{font-size:clamp(20px,1.12vw,28px)!important}
  #lineup .lineup-scroll{gap:24px!important}
  #lineup .model{flex:0 0:clamp(320px,15vw,390px)!important}
  #lineup .model-name{font-size:clamp(20px,1.05vw,27px)!important}
  #lineup .model-price{font-size:clamp(17px,.9vw,23px)!important}
  #lineup .model-spec{font-size:clamp(15px,.75vw,19px)!important}
  .foot{font-size:clamp(14px,.7vw,18px)!important}
}

@media(min-width:3000px){
  .panel{width:min(72vw,2300px)!important}
  .panel.wide{width:min(80vw,2800px)!important}
  .hero-banner .hero-slides{width:min(61vw,2050px)!important;height:86%!important}
  .hero-banner .hs-img{max-width:98%!important;max-height:91%!important}
  #lineup .model{flex-basis:clamp(390px,12.5vw,480px)!important}
  .nav-links{font-size:17px!important}
  .foot{max-width:1700px!important;width:60vw!important}
}

/* 2026-08-25 client follow-up: crisp partner logo and stable hero/case framing */
.foot-rabbit-logo{
  width:clamp(116px,9vw,158px)!important;
  height:54px!important;
  object-fit:cover!important;
  object-position:center 49%!important;
  border-radius:6px;
}
[data-theme=dark] .foot-rabbit-logo{
  padding:2px 5px;
  background:rgba(255,255,255,.94);
}
.hero-banner .banner-word{
  line-height:.88!important;
  max-width:96vw;
  white-space:nowrap;
}
#case .case-imgs{
  align-items:end!important;
}
#case .case-imgs figure{
  display:grid!important;
  grid-template-rows:1fr auto!important;
  align-items:end!important;
}
#case .case-imgs img,
#case .case-imgs figure:first-child img,
#case .case-imgs figure:last-child img{
  width:100%!important;
  max-width:100%!important;
  height:clamp(300px,34vw,520px)!important;
  margin:0 auto!important;
  transform:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
#case .case-imgs figure:first-child img{
  transform:translateY(6%) scale(1.11)!important;
  transform-origin:center bottom!important;
}
@media(max-width:600px){
  .foot-rabbit-logo{width:128px!important;height:46px!important}
  #case .case-imgs,
  #case .case-imgs:where(*){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;overflow:visible!important;padding:0!important}
  #case .case-imgs figure{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
  #case .case-imgs img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{height:clamp(190px,52vw,270px)!important;transform:none!important}
  #case .case-imgs figure:first-child img{height:clamp(190px,52vw,270px)!important;transform:translateY(6%) scale(1.11)!important}
  .hero-banner .banner-word{font-size:clamp(86px,23vw,112px)!important;line-height:.88!important}
  #top span.banner-word.mike{top:96px!important}
}
@media(min-width:2000px) and (max-width:2999px){
  .hero-banner .banner-word{font-size:clamp(230px,11vw,290px)!important;line-height:.9!important}
}
@media(min-width:3000px){
  .hero-banner .hs-img.char{
    max-height:88%!important;
    transform:translateY(-2%)!important;
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 76%,rgba(0,0,0,.92) 82%,rgba(0,0,0,.48) 91%,transparent 100%)!important;
    mask-image:linear-gradient(to bottom,#000 0%,#000 76%,rgba(0,0,0,.92) 82%,rgba(0,0,0,.48) 91%,transparent 100%)!important;
  }
}

/* 2026-08-26: keep the supplied character artwork's cut feet softly blended at every resolution */
.hero-banner .hero-slides .hs-img.char,
.hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.96) 73%,rgba(0,0,0,.76) 79%,rgba(0,0,0,.48) 86%,rgba(0,0,0,.2) 93%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.96) 73%,rgba(0,0,0,.76) 79%,rgba(0,0,0,.48) 86%,rgba(0,0,0,.2) 93%,transparent 100%)!important;
}

/* 2026-08-26: keep desktop hero typography proportional while the app window is resized */
@media(min-width:901px){
  .hero-banner .banner-word{
    font-size:clamp(150px,15svh,270px)!important;
    line-height:.88!important;
  }
  .hero-banner .banner-word.mike{
    top:clamp(92px,11svh,170px)!important;
    left:2.4%!important;
  }
  .hero-banner .banner-word.neko{
    right:2.4%!important;
    bottom:calc(clamp(106px,8.2vw,132px) + 2.5svh)!important;
  }
  .hero-banner .banner-tagline{
    font-size:clamp(40px,4.8svh,58px)!important;
    line-height:1!important;
  }
  [data-theme=dark] .hero-banner .banner-tagline{
    color:#1c1622!important;
    text-shadow:0 2px 0 rgba(255,255,255,.76),0 8px 20px rgba(255,45,136,.12)!important;
  }
}

/* 2026-08-26: enlarge MIKE / NEKO consistently without colliding with hero content */
@media(max-width:360px){
  .hero-banner .banner-word{font-size:clamp(102px,29vw,124px)!important}
}
@media(min-width:361px) and (max-width:600px){
  .hero-banner .banner-word{font-size:clamp(116px,30vw,134px)!important}
}
@media(min-width:601px) and (max-width:900px){
  .hero-banner .banner-word{font-size:clamp(172px,28vw,226px)!important}
}
@media(min-width:901px) and (max-width:1599px){
  .hero-banner .banner-word{font-size:clamp(178px,17.5svh,310px)!important}
}
@media(min-width:1600px) and (max-width:2999px){
  .hero-banner .banner-word{font-size:clamp(205px,min(12.8vw,17.5svh),328px)!important}
}
@media(min-width:3000px){
  .hero-banner .banner-word{font-size:clamp(315px,min(9.8vw,17.5svh),356px)!important}
}

/* Final cascade lock for tablet/mobile navigation */
@media(max-width:900px){
  .nav-links .nav-contact,.nav .nav-contact{display:none!important}
  .nav-links .theme-toggle,.nav .theme-toggle{
    display:inline-grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    border-color:rgba(255,255,255,.34)!important;
    background:rgba(255,255,255,.06)!important;
    color:#fff!important;
  }
  .nav .theme-toggle svg{display:block!important;width:19px!important;height:19px!important}
}

/* Final cascade lock for spreadsheet additions */
.foot-rabbit-logo{content:url('/assets/rabbit0-dark-20260825.png')!important}
[data-theme=dark] .foot-rabbit-logo{content:url('/assets/rabbit0-light-20260825.png')!important}
#case .case-imgs figure{display:grid!important;grid-template-rows:1fr auto!important;align-items:end!important}
#case .case-imgs figcaption{width:100%!important;text-align:center!important;justify-self:center!important}
#case .case-imgs img{justify-self:center!important}
@media(max-width:360px){
  #case .case-imgs,#case .case-imgs:where(*){grid-template-columns:1fr!important;gap:22px!important}
  #case .case-imgs figure{width:min(100%,270px)!important;max-width:270px!important;margin-inline:auto!important}
  #case .case-imgs img,#case .case-imgs figure:first-child img,#case .case-imgs figure:last-child img{height:250px!important;max-height:250px!important;transform:none!important;object-fit:contain!important;object-position:center bottom!important}
  #case .case-imgs figure:first-child img{transform:translateY(3%) scale(1.06)!important;transform-origin:center bottom!important}
  .banner-tagline{color:#1c1622!important}
  [data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}
}
@media(min-width:361px) and (max-width:600px){.banner-tagline{color:#1c1622!important}[data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}}
@media(min-width:601px) and (max-width:900px){
  .banner-info{top:auto!important;bottom:clamp(118px,15vh,174px)!important;left:50%!important;right:auto!important;width:min(92%,520px)!important;max-width:none!important;transform:translateX(-50%)!important;text-align:center!important;z-index:4!important}
  .banner-tagline{font-size:clamp(34px,5.5vw,46px)!important;line-height:.94!important;text-align:center!important;color:#1c1622!important}
  [data-theme=dark] .banner-tagline{color:#fff!important;text-shadow:0 2px 0 rgba(0,0,0,.55),0 8px 20px rgba(255,45,136,.28)!important}
  .mobile-menu[open]>.mobile-menu-panel{top:72px!important;left:clamp(10px,2.5vw,20px)!important;right:clamp(10px,2.5vw,20px)!important;max-height:calc(100dvh - 84px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
}
@media(max-width:600px){.mobile-menu[open]>.mobile-menu-panel{top:64px!important;left:8px!important;right:8px!important;max-height:calc(100dvh - 72px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}}

/* 2026-08-26: when the hero title moves below the artwork, keep it on one line */
@media(max-width:900px){
  .hero-banner .banner-tagline{white-space:nowrap!important;font-size:clamp(18px,5.25vw,40px)!important;line-height:1!important}
  .hero-banner .banner-tagline br{display:none!important}
}

/* 2026-08-26: slightly enlarge the MIKE / NEKO hero words at every breakpoint */
@media(max-width:360px){.hero-banner .banner-word{font-size:clamp(112px,31.5vw,136px)!important}}
@media(min-width:361px) and (max-width:600px){.hero-banner .banner-word{font-size:clamp(128px,32.5vw,148px)!important}}
@media(min-width:601px) and (max-width:900px){.hero-banner .banner-word{font-size:clamp(172px,min(25vw,19.6svh),224px)!important}}
@media(min-width:901px) and (max-width:1599px){.hero-banner .banner-word{font-size:clamp(195px,19svh,338px)!important}}
@media(min-width:1600px) and (max-width:2999px){.hero-banner .banner-word{font-size:clamp(224px,min(13.8vw,19svh),356px)!important}}
@media(min-width:3000px){.hero-banner .banner-word{font-size:clamp(340px,min(10.6vw,19svh),386px)!important}}

/* Reserve a separate row for the one-line title on tablet-sized hero layouts */
@media(min-width:601px) and (max-width:900px){
  .hero-banner .banner-word.neko{bottom:clamp(184px,21vh,238px)!important}
  .hero-banner .banner-info{bottom:clamp(118px,15vh,174px)!important}
}

/* 2026-08-26: show the Rabbit0 mark without a card background */
.foot-rabbit-logo,
[data-theme=dark] .foot-rabbit-logo{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* 2026-08-26: centered CASE labels and an explicit mobile SIDE / FRONT switch */
.case-view-switch{display:none}
#case .case-imgs figure{position:relative!important;grid-template-rows:minmax(0,1fr) auto!important}
#case .case-imgs figcaption{position:static!important;display:block!important;margin:10px auto 0!important;text-align:center!important;line-height:1!important}
@media(max-width:600px){
  #case .case-view-switch{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
    width:min(100%,320px)!important;
    margin:2px auto 18px!important;
    padding:5px!important;
    border:1px solid rgba(255,45,136,.24)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.78)!important;
    box-shadow:0 12px 28px -20px rgba(255,45,136,.65)!important;
  }
  [data-theme=dark] #case .case-view-switch{background:rgba(24,18,33,.9)!important;border-color:rgba(255,77,157,.35)!important}
  #case .case-view-switch button{
    min-height:44px!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    color:var(--muted)!important;
    font-family:var(--disp)!important;
    font-size:13px!important;
    font-weight:700!important;
    letter-spacing:.16em!important;
    cursor:pointer!important;
  }
  #case .case-view-switch button.on{background:var(--pink)!important;color:#fff!important;box-shadow:0 8px 18px -10px rgba(255,45,136,.9)!important}
  #case .case-imgs,#case .case-imgs:where(*){display:grid!important;grid-template-columns:1fr!important;overflow:visible!important}
  #case .case-imgs figure{display:none!important;width:min(100%,340px)!important;max-width:340px!important;margin-inline:auto!important}
  #case[data-case-view="side"] .case-imgs figure:first-of-type,
  #case[data-case-view="front"] .case-imgs figure:last-child{display:grid!important}
  #case .case-imgs img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{width:100%!important;height:min(78vw,340px)!important;max-height:340px!important;transform:none!important;object-fit:contain!important;object-position:center bottom!important}
  #case .case-imgs figcaption{font-size:11px!important;letter-spacing:.28em!important;margin-top:12px!important}
}

/* 2026-08-26 final narrow-width taskbar normalization */
@media(max-width:900px){
  .nav,[data-theme=dark] .nav{min-height:72px!important;background:#20202e!important;box-shadow:0 2px 14px -6px rgba(0,0,0,.4)!important}
}
@media(max-width:360px){
  .nav{gap:clamp(7px,2.2vw,12px)!important;padding-inline:clamp(10px,3vw,18px)!important}
  .nav>.brand-logo img{max-width:clamp(78px,24vw,112px)!important;max-height:36px!important}
  .nav .theme-toggle,.mobile-menu,.mobile-menu summary{width:40px!important;height:40px!important;flex-basis:40px!important}
  .nav .nav-cta{padding:10px clamp(12px,2vw,16px)!important;font-size:11px!important}
}

/* 2026-08-26 final desktop SIDE / FRONT visible-height alignment */
@media(min-width:601px){
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{transform:none!important;transform-origin:center bottom!important}
}
/* LP completion pass — 2026-08-27 */
.pc-image-note{display:block;color:#57505e;font-size:11px;line-height:1.45;letter-spacing:.04em;text-align:center;white-space:nowrap}
.hero-pc-note{position:absolute;z-index:5;top:clamp(84px,8vh,118px);right:clamp(12px,2vw,30px);padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 6px 18px rgba(52,37,60,.08);pointer-events:none}
.hero-banner:has(.hs-img.char.on) .hero-pc-note{display:none}
#case .case-imgs figure{grid-template-rows:minmax(0,1fr) auto auto!important}
#case .case-imgs .pc-image-note{margin-top:8px}
#lineup .model{display:flex;flex-direction:column}
#lineup .model-img{display:flex!important;align-items:center;justify-content:center;min-height:clamp(250px,25vw,360px);padding-bottom:28px!important}
#lineup .model-img .pc-image-note{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);z-index:6}
#lineup .model-name{min-height:2.6em;display:flex;align-items:center;justify-content:center;text-align:center}
#lineup .model-spec{flex:1}
.warranty-panel{padding-top:clamp(72px,8vw,132px)!important;padding-bottom:clamp(72px,8vw,132px)!important}
.warranty-accordion{width:min(1080px,calc(100% - 40px));margin:clamp(30px,4vw,54px) auto 0;border:1px solid rgba(255,45,136,.28);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 22px 65px rgba(76,47,76,.10);overflow:hidden}
.warranty-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px;padding:18px 26px;cursor:pointer;list-style:none;color:#24202b;font-weight:800;font-size:clamp(17px,1.5vw,22px);letter-spacing:.05em}
.warranty-accordion summary::-webkit-details-marker{display:none}
.warranty-accordion summary:focus-visible{outline:3px solid #ff2d88;outline-offset:-4px}
.warranty-icon{position:relative;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#ff2d88}
.warranty-icon:before,.warranty-icon:after{content:"";position:absolute;left:8px;right:8px;top:14px;height:2px;background:#fff;transition:transform .22s ease}
.warranty-icon:after{transform:rotate(90deg)}
.warranty-accordion[open] .warranty-icon:after{transform:rotate(0)}
.warranty-content{padding:4px clamp(22px,5vw,64px) clamp(32px,5vw,60px);border-top:1px solid rgba(255,45,136,.18);color:#4f4956;font-size:clamp(14px,1.15vw,17px);line-height:1.9}
.warranty-content section{padding-top:clamp(26px,3vw,40px)}
.warranty-content h3{margin:0 0 14px;color:#ff2d88;font-size:clamp(18px,1.6vw,24px);letter-spacing:.04em}
.warranty-content p{margin:0 0 14px}
.warranty-content ol,.warranty-content ul{margin:0;padding-left:1.65em}
.warranty-content li{padding-left:.3em;margin:.5em 0}
.warranty-content ol{list-style:decimal}
.warranty-content ul{list-style:disc}
[data-theme=dark] .pc-image-note{color:#d8d2dc}
[data-theme=dark] .hero-pc-note{background:rgba(20,16,28,.82);color:#fff}
[data-theme=dark] .warranty-accordion{background:rgba(30,24,39,.94);border-color:rgba(255,102,154,.42);box-shadow:0 22px 65px rgba(0,0,0,.28)}
[data-theme=dark] .warranty-accordion summary{color:#fff}
[data-theme=dark] .warranty-content{color:#e8e2ec;border-top-color:rgba(255,102,154,.24)}
@media(max-width:900px){
  .hero-pc-note{top:82px;right:10px;font-size:10px;padding:4px 8px}
  #case .case-imgs .pc-image-note{font-size:10px;margin-top:7px}
  #lineup .model-img{min-height:260px;padding-bottom:26px!important}
  .warranty-accordion{width:calc(100% - 28px);border-radius:16px}
  .warranty-accordion summary{min-height:64px;padding:15px 18px;font-size:16px}
  .warranty-content{padding:0 18px 32px;font-size:14px;line-height:1.82}
}
@media(max-width:360px){
  .hero-pc-note{font-size:9px}
  #lineup .model-img{min-height:230px}
  .warranty-accordion{width:calc(100% - 20px)}
  .warranty-content{padding-inline:15px}
}

/* 2026-08-27 CASE pair optical centering and shared disclaimer */
#case .case-imgs{
  position:relative!important;
  width:min(100%,1260px)!important;
  margin-inline:auto!important;
  padding:38px clamp(10px,1.2vw,18px) 0!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(14px,1.6vw,24px)!important;
  align-items:end!important;
}
#case .case-imgs figure{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  justify-items:center!important;
}
#case .case-imgs figure img,
#case .case-imgs figure:first-child img,
#case .case-imgs figure:last-child img{
  display:block!important;
  width:100%!important;
  height:clamp(340px,38vw,570px)!important;
  max-width:100%!important;
  margin:0 auto!important;
  transform:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
#case .case-imgs figcaption{
  width:100%!important;
  margin:14px auto 0!important;
  text-align:center!important;
  justify-self:center!important;
}
#case .case-shared-note{
  position:absolute!important;
  top:8px!important;
  left:clamp(10px,1.2vw,18px)!important;
  z-index:4!important;
  margin:0!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 6px 16px rgba(52,37,60,.07)!important;
}
@media(min-width:601px){
  #case .case-imgs figure{
    transform:translateX(clamp(18px,2.4vw,34px))!important;
  }
}
[data-theme=dark] #case .case-shared-note{
  color:#eeeaf2!important;
  background:rgba(24,18,33,.88)!important;
}
@media(max-width:600px){
  #case .case-imgs,#case .case-imgs:where(*){
    width:100%!important;
    padding:34px 0 0!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  #case .case-imgs figure{
    width:min(100%,340px)!important;
    max-width:340px!important;
    margin-inline:auto!important;
  }
  #case .case-imgs figure img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{
    height:min(78vw,340px)!important;
  }
  #case .case-shared-note{
    top:2px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
  }
}

/* 2026-08-27 final PC/mobile proportion and carousel pass */
@media(min-width:901px){
  #case.panel,
  #lineup.panel{
    width:min(calc(100% - clamp(64px,7vw,144px)),2200px)!important;
    max-width:2200px!important;
    padding-inline:clamp(28px,3vw,56px)!important;
  }
  #case .case-wrap{
    grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr)!important;
    gap:clamp(34px,3.2vw,54px)!important;
  }
  #case .case-imgs figure img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{
    transform:scale(1.16)!important;
    transform-origin:center bottom!important;
  }
  #lineup .lineup-scroll{
    display:flex!important;
    gap:clamp(16px,1.35vw,24px)!important;
    width:100%!important;
    max-width:none!important;
    margin-inline:auto!important;
    padding:8px 4px 28px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:4px!important;
  }
  #lineup .model{
    flex:0 0 calc((100% - clamp(48px,4.05vw,72px))/4)!important;
    width:calc((100% - clamp(48px,4.05vw,72px))/4)!important;
    min-width:280px!important;
    max-width:none!important;
    margin:0!important;
    scroll-snap-align:start!important;
  }
}

/* Shadow-free supplied character asset: keep the tail clean at every resolution. */
.hero-banner .hero-slides .hs-img.char,
.hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{
  filter:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 86%,rgba(0,0,0,.92) 90%,rgba(0,0,0,.42) 96%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 86%,rgba(0,0,0,.92) 90%,rgba(0,0,0,.42) 96%,transparent 100%)!important;
}
@media(max-width:600px){
  .hero-banner .hero-slides .hs-img.char,
  .hero-banner:has(.hs-img.char.on) .hero-slides .hs-img.char{
    max-width:90%!important;
    max-height:98%!important;
    transform:translate(0,-2%)!important;
  }
}

/* Mobile SIDE / FRONT controls: round horizontal arrows flanking the PC image. */
@media(max-width:600px){
  #case .case-visual{position:relative!important}
  #case .case-view-switch{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    position:absolute!important;
    z-index:8!important;
    top:54%!important;
    right:14px!important;
    left:14px!important;
    width:auto!important;
    transform:translateY(-50%)!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
  [data-theme=dark] #case .case-view-switch{
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #case .case-view-nav{
    display:grid!important;
    place-items:center!important;
    align-items:center!important;
    justify-content:center!important;
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0!important;
    border:2px solid rgba(255,45,136,.7)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.92)!important;
    color:var(--pink)!important;
    box-shadow:0 10px 24px -15px rgba(255,45,136,.95)!important;
    backdrop-filter:blur(8px)!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    transition:transform .18s ease,background .18s ease,box-shadow .18s ease!important;
  }
  #case .case-view-nav:active{transform:scale(.92)!important}
  [data-theme=dark] #case .case-view-nav{
    background:rgba(28,22,36,.9)!important;
    border-color:rgba(255,102,170,.9)!important;
    color:#ff83b7!important;
  }
  #case .case-view-arrow{
    display:block!important;
    margin-top:-3px!important;
    font-family:Arial,sans-serif!important;
    font-size:36px!important;
    font-weight:300!important;
    line-height:1!important;
    color:currentColor!important;
  }
  #case .case-imgs figure{
    width:min(100%,340px)!important;
    max-width:340px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* 2026-08-27 desktop section-width and 50/50 CASE balance */
@media(min-width:901px){
  .panel,
  .panel.wide,
  #case.panel,
  #lineup.panel{
    width:min(calc(100% - clamp(72px,8vw,160px)),1440px)!important;
    max-width:1440px!important;
    margin-inline:auto!important;
    padding-inline:clamp(28px,3vw,48px)!important;
  }
  #case .case-wrap{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:clamp(32px,3vw,48px)!important;
    align-items:stretch!important;
  }
  #case .case-visual,
  #case .case-text{
    width:100%!important;
    min-width:0!important;
  }
  #case .case-visual{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:clamp(28px,2.3vw,36px)!important;
  }
  #case .case-imgs{
    width:100%!important;
    max-width:100%!important;
    padding:32px 0 0!important;
    align-items:center!important;
    /* SIDE is visually wider than FRONT inside the square source canvas.
       Shift the pair so the visible silhouettes have equal outer spacing. */
    transform:translateX(6.5%)!important;
  }
  #case .case-imgs figure,
  #case .case-imgs figure:first-child,
  #case .case-imgs figure:last-child{
    transform:none!important;
  }
  #case .case-imgs figure img,
  #case .case-imgs figure:first-child img,
  #case .case-imgs figure:last-child img{
    width:100%!important;
    height:auto!important;
    max-height:360px!important;
    transform:scale(1.14)!important;
    transform-origin:center center!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  #lineup .lineup-scroll{
    width:100%!important;
    max-width:100%!important;
    gap:18px!important;
  }
  #lineup .model{
    flex:0 0 calc((100% - 54px)/4)!important;
    width:calc((100% - 54px)/4)!important;
    min-width:270px!important;
    max-width:340px!important;
  }
}
