@charset "UTF-8";
:root{color-scheme:light;--bg:#f8f9f7;--surface:#fff;--ink:#252a28;--muted:#707773;--line:#e3e7e3;--accent:#a74f4f;--soft:#edf0ec;--card-bg:#f9faf8;--scarf-fill:#f3e3df;--glow:rgba(162,180,163,.13);--shadow:0 10px 40px #263d2c06}
[data-theme=dark]{color-scheme:dark;--bg:#141817;--surface:#1c211f;--ink:#eef1eb;--muted:#a5ada7;--line:#303833;--accent:#d28b85;--soft:#252d28;--card-bg:#222b25;--scarf-fill:#4e3332;--glow:rgba(124,152,128,.1);--shadow:0 10px 40px #00000010}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .35s,color .35s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#d4b3ac;color:#242725}svg{display:block}button{background:none;border:0}button svg{width:20px;height:20px}.header{position:relative;z-index:5;width:min(1080px,calc(100% - 80px));height:100px;margin:auto;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:25px;font-weight:650;letter-spacing:-1.1px}.wordmark span{color:var(--accent)}nav{display:flex;gap:36px;margin-left:55px}nav a{font-size:13px;color:var(--muted);position:relative;padding:10px 0}nav a:after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .25s}nav a:hover{color:var(--ink)}nav a:hover:after{transform:scaleX(1)}.controls{display:flex;align-items:center;gap:13px}.controls button{min-width:36px;height:40px;display:grid;place-items:center;border-radius:10px;font-size:12px;font-weight:600;transition:background .2s}.controls button:hover{background:var(--soft)}.control-divider{width:1px;height:15px;background:var(--line)}.sun{display:none}[data-theme=dark] .sun{display:block}[data-theme=dark] .moon{display:none}.hero{position:relative;min-height:650px;padding:69px 24px 0;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}.hero-halo{position:absolute;z-index:-1;width:640px;height:480px;left:50%;top:0;transform:translateX(-50%);background:radial-gradient(ellipse,var(--glow),transparent 68%);pointer-events:none}.avatar{width:88px;height:88px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(140deg,var(--surface),var(--soft));box-shadow:0 8px 24px #263d2c08,inset 0 1px 1px #ffffff30;display:grid;place-items:center;position:relative;animation:enter .9s both}.avatar svg{width:65px;height:65px}.avatar>span{position:absolute;right:-3px;bottom:4px;width:14px;height:14px;border:3px solid var(--bg);border-radius:50%;background:#8da38e}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted)}.hero-intro{margin-top:31px;animation:enter .8s .08s both}h1{font-size:clamp(43px,5.8vw,72px);line-height:1.2;letter-spacing:-3px;font-weight:500;margin:21px 0 20px;animation:enter .8s .16s both}h1>span:first-child{font-size:.77em;font-weight:400;letter-spacing:-2px}.name{font-weight:600}.period{color:var(--accent)}.hero-description{font-size:18px;letter-spacing:1px;margin:0;line-height:1.8;animation:enter .8s .24s both}.hero-caption{font-size:13px;line-height:1.9;color:var(--muted);margin:11px 0 0;animation:enter .8s .32s both}.hero-actions{display:flex;gap:12px;margin-top:33px;animation:enter .8s .4s both}.button{height:46px;padding:0 23px;border-radius:9px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:22px;transition:transform .25s,box-shadow .25s,background .25s}.button svg{width:18px;height:18px}.button:hover{transform:translateY(-3px);box-shadow:0 5px 15px #00000010}.primary{background:var(--ink);color:var(--bg)}.secondary{background:var(--surface);border:1px solid var(--line)}.scroll-cue{margin:55px 0 25px;display:flex;align-items:center;flex-direction:column;gap:12px;color:var(--muted);font-size:10px;letter-spacing:2px;animation:enter 1s .6s both}.scroll-line{height:28px;width:1px;background:var(--line);position:relative;overflow:hidden}.scroll-line:after{content:"";height:10px;width:1px;background:var(--muted);position:absolute;animation:scroll 2.8s infinite}.section{width:min(1000px,calc(100% - 80px));margin:auto}.about{border-top:1px solid var(--line);padding:65px 0 72px}.section-label{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:2px;font-weight:600;color:var(--muted)}.tiny-dot{width:5px;height:5px;background:var(--accent);border-radius:50%;display:inline-block}.about-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;margin-top:27px}h2{font-size:30px;letter-spacing:-.8px;font-weight:500;line-height:1.65;margin:0;white-space:pre-line}.about-content p{font-size:14px;line-height:2.1;margin:2px 0 13px}.muted{color:var(--muted)}.about-notes{display:flex;gap:15px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:11px;margin-top:22px}.about-notes>span{display:flex;align-items:center;gap:7px}.about-notes svg{width:17px;height:17px}.note-location:before{content:"";width:3px;height:3px;background:var(--muted);border-radius:50%;margin-right:2px}.interests{padding:25px 0 79px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:29px}.section-heading h2{margin-top:15px;font-size:27px}.section-heading p{font-size:12px;color:var(--muted);margin:0 0 8px}.interest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.interest-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow);transition:transform .35s,border-color .35s,box-shadow .35s}.interest-card:hover{transform:translateY(-5px);border-color:#9aa99b;box-shadow:0 16px 36px #213b2d0a}.card-art{height:165px;margin:10px 10px 0;border-radius:9px;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 70%,var(--soft),var(--card-bg));color:#829284;overflow:hidden}.card-art svg{width:240px;max-width:100%;height:150px;transition:transform .5s}.interest-card:hover .card-art svg{transform:translateY(-4px) rotate(-3deg)}.gaming{color:#828b9c}.mikasa-art{color:var(--accent)}.card-content{padding:23px 24px 25px}.card-kicker{font-size:9px;letter-spacing:1.6px;color:var(--muted)}h3{font-size:18px;font-weight:500;margin:13px 0 10px;letter-spacing:-.3px}.card-content p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;min-height:46px}.tag{display:inline-block;border:1px solid var(--line);color:var(--muted);font-size:10px;padding:4px 9px;border-radius:5px;margin-top:21px}.tag.red{color:var(--accent)}.contact{padding:0 0 67px}.contact-panel{border-radius:16px;border:1px solid var(--line);background:var(--surface);padding:40px;display:grid;grid-template-columns:1.1fr 1fr;gap:45px;position:relative;overflow:hidden}.contact-copy h2{font-size:24px;margin-top:20px;max-width:300px}.contact-copy p{font-size:12px;color:var(--muted);line-height:1.9}.contact-links{display:flex;flex-direction:column;justify-content:center}.contact-row{display:flex;align-items:center;justify-content:space-between;padding:17px 0;gap:16px}.contact-row+ .contact-row{border-top:1px solid var(--line)}.contact-row a{flex:1}.contact-label{display:block;font-size:10px;color:var(--muted);letter-spacing:1px;margin-bottom:9px}.contact-value{font-size:17px;letter-spacing:.3px;display:flex;align-items:center;gap:15px}.contact-value>span{font-size:16px;color:var(--muted);transition:transform .2s}.contact-row a:hover .contact-value{color:var(--accent)}.contact-row a:hover .contact-value>span{transform:translate(2px,-2px)}.copy-button{padding:10px;border-radius:8px;color:var(--muted);transition:background .2s}.copy-button:hover{background:var(--soft);color:var(--ink)}.copy-button svg{width:17px;height:17px}footer{width:min(1000px,calc(100% - 80px));margin:auto;border-top:1px solid var(--line);padding:29px 0 33px;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .wordmark{font-size:21px}footer>span,.back-top{font-size:10px;color:var(--muted)}.footer-dot{padding:0 8px}.back-top:hover{color:var(--accent)}.pointer-glow{display:none;position:fixed;left:0;top:0;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,var(--glow),transparent 68%);pointer-events:none;z-index:0;opacity:0;transition:opacity .4s;will-change:transform}.pointer-ring{display:none;position:fixed;left:0;top:0;width:24px;height:24px;border:1px solid var(--accent);border-radius:50%;pointer-events:none;z-index:100;opacity:0;transition:opacity .3s,width .2s,height .2s;will-change:transform}main,footer{position:relative;z-index:1}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,15px);background:var(--ink);color:var(--bg);font-size:13px;padding:12px 21px;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:101;max-width:90vw;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.skip{position:fixed;top:-80px;left:20px;background:var(--ink);color:var(--bg);padding:12px;z-index:200}.skip:focus{top:10px}.motion-enabled .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.motion-enabled .reveal.visible{opacity:1;transform:translateY(0)}.motion-enabled .interest-card:nth-child(2){transition-delay:.08s}.motion-enabled .interest-card:nth-child(3){transition-delay:.16s}.motion-enabled .interest-card.visible:hover{transform:translateY(-5px);transition-delay:0s}@keyframes enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll{from{transform:translateY(-12px)}to{transform:translateY(30px)}}
.avatar{width:108px;height:108px;border-radius:32px}.avatar-portrait{position:absolute;inset:4px;border-radius:27px;overflow:hidden}.avatar-portrait img{width:100%;height:100%;object-fit:cover;object-position:72% 40%;transform:scale(1.5);transform-origin:72% 35%}.hero-alias{font-size:13px;line-height:1.7;color:var(--muted);letter-spacing:1.2px;margin:-7px 0 23px;animation:enter .8s .2s both}
.pointer-trail{display:none;position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:99;contain:strict}.pointer-echo{position:absolute;left:0;top:0;width:24px;height:24px;border:1px solid var(--accent);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 24%,transparent),transparent 68%);opacity:0;will-change:transform,opacity;pointer-events:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.pointer-glow,.pointer-ring,.pointer-trail{display:block}}
@media(min-width:1500px){.hero{padding-top:95px;min-height:710px}}
@media(max-width:760px){.header{width:calc(100% - 40px);height:80px}.wordmark{font-size:23px}nav{gap:20px;margin-left:0}nav a{font-size:12px}.controls{gap:4px}.hero{min-height:600px;padding-top:56px}.hero-caption{max-width:280px}.hero-description{font-size:16px}h1{letter-spacing:-2px}.section{width:calc(100% - 40px)}.about{padding:42px 0 45px}.about-layout{gap:25px;grid-template-columns:1fr;margin-top:21px}.about-layout h2{font-size:26px}.about-content p{font-size:13px}.about-notes{font-size:10px}.section-heading{align-items:flex-start;flex-direction:column;gap:9px}.section-heading h2{font-size:25px}.interest-grid{grid-template-columns:1fr;gap:16px}.interest-card{display:grid;grid-template-columns:125px 1fr;align-items:center}.card-art{margin:10px 0 10px 10px;height:calc(100% - 20px);min-height:165px}.card-art svg{width:180px;max-width:none}.card-content{padding:22px 18px}.card-kicker{font-size:8px;letter-spacing:1px}h3{font-size:17px}.card-content p{min-height:0}.tag{margin-top:14px}.interests{padding-bottom:45px}.contact-panel{padding:27px 24px;grid-template-columns:1fr;gap:12px}.contact-copy h2{font-size:23px;max-width:none}.contact-value{font-size:16px}.contact{padding-bottom:40px}footer{width:calc(100% - 40px);flex-wrap:wrap;padding:25px 0;gap:17px}footer>span{order:3;width:100%;font-size:10px}.back-top{margin-left:auto}.pointer-ring,.pointer-glow{display:none}}
@media(max-width:760px){.card-art svg{width:100%;max-width:100%;height:auto}.pointer-trail{display:none}}
@media(max-width:380px){nav{gap:12px}.header{width:calc(100% - 28px)}.controls button{min-width:30px}.interest-card{grid-template-columns:100px 1fr}.card-content{padding:20px 14px}.hero-actions .button{padding:0 18px}.contact-panel{padding:25px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-enabled .reveal{opacity:1;transform:none}.pointer-glow,.pointer-ring{display:none}}
.scroll-progress{position:fixed;z-index:210;left:0;right:0;top:0;height:2px;pointer-events:none}.scroll-progress span{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left center;will-change:transform}nav a[aria-current="location"]{color:var(--ink)}nav a[aria-current="location"]:after{transform:scaleX(1)}
@media print{.motion-enabled .reveal{opacity:1!important;transform:none!important}.pointer-glow,.pointer-ring,.pointer-trail,.scroll-progress{display:none!important}}
.interest-card{cursor:pointer;position:relative;outline:none}.interest-card:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.card-enter{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px;color:var(--muted);transition:color .25s}.card-enter i{font-size:14px;font-style:normal;transition:transform .25s}.interest-card:hover .card-enter,.interest-card:focus-visible .card-enter{color:var(--accent)}.interest-card:hover .card-enter i,.interest-card:focus-visible .card-enter i{transform:translate(2px,-2px)}
.dialog-open{overflow:hidden}.interest-dialog{width:min(820px,calc(100% - 36px));max-height:min(82vh,760px);padding:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);box-shadow:0 28px 90px #10181435;opacity:0;transform:translateY(16px) scale(.985);transition:opacity .22s ease,transform .22s ease;overflow:hidden}.interest-dialog.dialog-ready{opacity:1;transform:translateY(0) scale(1)}.interest-dialog::backdrop{background:rgba(18,24,21,.46);backdrop-filter:blur(8px);opacity:0;transition:opacity .22s ease}.interest-dialog.dialog-ready::backdrop{opacity:1}.dialog-shell{position:relative;max-height:min(82vh,760px);overflow:auto;padding:48px}.dialog-close{position:absolute;z-index:2;right:23px;top:23px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:color-mix(in srgb,var(--surface) 88%,transparent);display:grid;place-items:center;transition:background .2s,transform .2s}.dialog-close:hover{background:var(--soft);transform:rotate(5deg)}.dialog-close span{position:absolute;width:14px;height:1px;background:currentColor}.dialog-close span:first-child{transform:rotate(45deg)}.dialog-close span:last-child{transform:rotate(-45deg)}.dialog-view{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.85fr);gap:46px;align-items:center;min-height:390px}.detail-kicker{font-size:10px;letter-spacing:1.8px;color:var(--muted)}.detail-kicker span{color:var(--accent)}.detail-copy h2{font-size:31px;line-height:1.35;margin:18px 0 16px;white-space:normal}.detail-copy>p{font-size:13px;line-height:2;color:var(--muted);margin:0}.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.detail-tags span{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:7px 11px;font-size:10px;color:var(--muted)}.detail-scene{min-width:0}.game-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.game-list li{min-height:76px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);display:flex;flex-direction:column;justify-content:center;transition:transform .2s,border-color .2s}.game-list li:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}.game-list span{font-size:13px}.game-list small{font-size:9px;letter-spacing:.5px;color:var(--muted);margin-top:7px}.badminton-scene{height:330px;border-radius:17px;background:linear-gradient(145deg,#829887,#536e5c);position:relative;overflow:hidden;color:#f7faf6;box-shadow:inset 0 0 0 1px #ffffff25}.court-line{position:absolute;background:#ffffff80}.line-a{width:1px;height:100%;left:50%;top:0}.line-b{height:1px;width:100%;left:0;top:50%}.line-c{height:1px;width:74%;left:13%;top:23%;box-shadow:0 177px 0 #ffffff80}.shuttle-mark{position:absolute;width:36px;height:36px;border:1px solid #fff8;border-radius:50%;top:47px;right:44px}.shuttle-mark:after{content:"";position:absolute;width:6px;height:50px;border-radius:4px;background:#fff;transform:rotate(38deg);left:-10px;top:21px}.badminton-scene b{position:absolute;left:24px;bottom:22px;font-size:62px;font-weight:400;letter-spacing:-4px;opacity:.9}.badminton-scene small{position:absolute;right:20px;bottom:25px;font-size:8px;letter-spacing:1.4px}.aot-scene{height:285px;border-radius:17px;background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 26%,var(--soft)),var(--bg));position:relative;overflow:hidden;display:grid;place-items:center}.aot-scene:before,.aot-scene:after{content:"";position:absolute;left:0;right:0;height:18px;border-top:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));opacity:.75}.aot-scene:before{top:34px}.aot-scene:after{bottom:34px}.aot-scene svg{width:150px;color:var(--accent);fill:color-mix(in srgb,var(--accent) 20%,transparent);stroke:var(--accent);stroke-width:1}.aot-scene span{position:absolute;font-size:7px;letter-spacing:1.5px;color:var(--muted)}.aot-scene span:nth-of-type(1){left:17px;top:40px}.aot-scene span:nth-of-type(2){right:17px;top:40px}.aot-scene span:nth-of-type(3){left:50%;bottom:40px;transform:translateX(-50%)}.dialog-aot blockquote{margin:13px 0 0;padding:13px 16px;border-left:2px solid var(--accent);font-size:11px;line-height:1.8;color:var(--muted);background:var(--bg);border-radius:0 9px 9px 0}
@media(max-width:760px){.card-enter{margin-top:12px;padding-top:11px}.interest-dialog{width:calc(100% - 24px);max-height:88vh;border-radius:18px}.dialog-shell{padding:54px 23px 26px;max-height:88vh}.dialog-close{right:15px;top:14px;width:36px;height:36px}.dialog-view{grid-template-columns:1fr;gap:28px;min-height:0}.detail-copy h2{font-size:25px;margin:13px 0 12px}.detail-copy>p{font-size:12px;line-height:1.9}.detail-tags{margin-top:18px}.game-list{gap:8px}.game-list li{min-height:66px;padding:12px}.badminton-scene,.aot-scene{height:230px}}
@media(prefers-reduced-motion:reduce){.interest-dialog,.interest-dialog::backdrop{transition:none}.interest-card:hover .card-enter i{transform:none}}

/* Multi-page edition */
body{opacity:1;transition:background-color .35s,color .35s,opacity .17s ease}body.page-leaving{opacity:0}.photo-card{position:relative}.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease}.interest-card:hover .photo-card img{transform:scale(1.045)}.photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(18,25,21,.22));pointer-events:none}.aot-card .photo-card img{object-position:70% 37%;transform:scale(1.18)}.aot-card:hover .photo-card img{transform:scale(1.23)}.aot-card .scarf-stroke{position:absolute;z-index:2;width:160px;height:26px;border-radius:60% 20% 60% 30%;left:23px;bottom:23px;background:#8e3035;transform:rotate(-8deg);box-shadow:36px 12px 0 -7px #6f2029;opacity:.88}.interest-card{display:block}.interest-card:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.card-enter{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px;color:var(--muted);transition:color .25s}.card-enter i{font-size:14px;font-style:normal;transition:transform .25s}.interest-card:hover .card-enter,.interest-card:focus-visible .card-enter{color:var(--accent)}.interest-card:hover .card-enter i,.interest-card:focus-visible .card-enter i{transform:translate(2px,-2px)}

.pets-home{padding:0 0 80px}.pet-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;align-items:center;padding:46px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.pet-copy h2{font-size:27px;margin:18px 0 14px}.pet-copy p{font-size:13px;line-height:2;color:var(--muted);margin:0}.pet-note{display:inline-block;margin-top:24px;font-size:10px;color:var(--muted);letter-spacing:.6px}.pet-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;height:330px}.zoom-photo{position:relative;padding:0;border:0;border-radius:15px;overflow:hidden;background:var(--soft);color:#fff;display:block;cursor:zoom-in}.zoom-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .35s ease}.zoom-photo:hover img{transform:scale(1.035);filter:saturate(1.04)}.pet-photo span,.screenshot-pair button>span{position:absolute;left:15px;bottom:14px;font-size:9px;letter-spacing:1.4px;padding:7px 9px;border:1px solid #ffffff60;border-radius:6px;background:#16201c55;backdrop-filter:blur(8px)}.pet-photo.silver img{object-position:51% 42%}.pet-photo.calico img{object-position:50% 33%}

.dialog-open{overflow:hidden}.photo-lightbox{width:min(1000px,calc(100% - 34px));height:min(86vh,780px);padding:0;border:1px solid #ffffff28;border-radius:20px;background:#111513;color:#fff;box-shadow:0 30px 100px #0008;opacity:0;transform:translateY(12px) scale(.985);transition:opacity .18s,transform .18s;overflow:hidden}.photo-lightbox.lightbox-ready{opacity:1;transform:none}.photo-lightbox::backdrop{background:#090c0bbf;backdrop-filter:blur(9px)}.photo-lightbox figure{margin:0;width:100%;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto}.photo-lightbox img{width:100%;height:100%;object-fit:contain;min-height:0}.photo-lightbox figcaption{padding:14px 20px;color:#cfd5d1;font-size:11px;text-align:center}.lightbox-close{position:absolute;z-index:3;right:16px;top:16px;width:42px;height:42px;border-radius:50%;background:#101412b8;border:1px solid #ffffff38;color:#fff;display:grid;place-items:center}.lightbox-close span{position:absolute;width:15px;height:1px;background:currentColor}.lightbox-close span:first-child{transform:rotate(45deg)}.lightbox-close span:last-child{transform:rotate(-45deg)}

/* Shared detail page */
.detail-page .header{border-bottom:1px solid var(--line)}.detail-page .header nav{margin-left:auto;margin-right:40px}.detail-page main{overflow:hidden}.detail-page h1{font-size:clamp(38px,5.2vw,58px);line-height:1.2;letter-spacing:-2.4px;margin:22px 0 22px;animation:enter .7s .08s both}.detail-page h1:first-letter{font-size:1em}.detail-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);gap:64px;align-items:center;min-height:660px;padding:72px 0 86px}.detail-hero-copy{position:relative;z-index:2}.detail-hero-copy>p{font-size:14px;line-height:2;color:var(--muted);max-width:550px;margin:0}.back-link{display:inline-flex;align-items:center;gap:9px;font-size:11px;color:var(--muted);margin-bottom:48px;transition:color .2s,transform .2s}.back-link:hover{color:var(--accent);transform:translateX(-3px)}.detail-cover{height:520px;border-radius:24px;box-shadow:0 24px 70px #17211918;animation:enter .8s .14s both}.detail-cover img{object-position:center}.game-cover{height:430px}.photo-hint{position:absolute;right:17px;bottom:17px;padding:9px 11px;border:1px solid #ffffff60;background:#0d15116b;backdrop-filter:blur(10px);border-radius:7px;color:#fff;font-size:9px;letter-spacing:1.2px}.detail-chips{display:flex;gap:9px;margin-top:32px;flex-wrap:wrap}.detail-chips>span{min-width:100px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.detail-chips b{display:block;font-size:18px;font-weight:550}.detail-chips small{display:block;font-size:8px;color:var(--muted);letter-spacing:.8px;margin-top:5px}.detail-section{padding:83px 0}.detail-section+.detail-section{border-top:1px solid var(--line)}.detail-heading{max-width:610px;margin-bottom:34px}.detail-heading h2{font-size:30px;line-height:1.45;margin-top:16px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.principle-grid article{padding:28px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.principle-grid article>span,.game-number{font-size:10px;color:var(--accent);letter-spacing:1px}.principle-grid h3{margin-top:28px}.principle-grid p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.statement{display:flex;align-items:flex-start;gap:24px;padding:54px 64px;border-radius:18px;background:var(--ink);color:var(--bg)}.statement-mark{font-family:Georgia,serif;font-size:55px;line-height:.9;color:var(--accent)}.statement p{font-size:23px;line-height:1.7;letter-spacing:.2px;margin:0}.photo-gallery{display:grid;grid-template-columns:1.3fr .7fr 1fr;grid-template-rows:235px 235px;gap:12px}.photo-gallery .zoom-photo{border-radius:14px}.photo-gallery .wide{grid-row:1/3}.photo-gallery .tall{grid-column:2/3;grid-row:1/3}.photo-gallery button:nth-child(3){grid-column:3}.photo-gallery button:nth-child(4){grid-column:3}.photo-gallery img{object-position:center}.next-pages{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:58px 0 78px;border-top:1px solid var(--line)}.next-pages a{position:relative;padding:24px 28px;border:1px solid var(--line);border-radius:14px;background:var(--surface);transition:transform .25s,border-color .25s}.next-pages a:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.next-pages a:last-child{text-align:right}.next-pages small{display:block;font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-bottom:9px}.next-pages strong{font-size:15px;font-weight:500}.next-pages a>span{position:absolute;top:50%;transform:translateY(-50%);color:var(--accent)}.next-pages a:first-child>span{right:22px}.next-pages a:last-child>span{left:22px}

/* Gaming */
.games-page{--game-blue:#66758f}.games-page .tiny-dot,.games-page .scroll-progress span{background:var(--game-blue)}.games-page .detail-cover{box-shadow:0 24px 70px #2d385026}.game-library{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.game-library article{position:relative;min-height:235px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface);display:flex;flex-direction:column}.game-library .featured-game{grid-column:1/-1;min-height:210px;display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:22px;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--game-blue) 7%,var(--surface)))}.game-library article>small,.featured-game div>small{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.game-library h3{font-size:20px;margin:12px 0 11px}.game-library p{font-size:12px;line-height:1.9;color:var(--muted);max-width:600px;margin:0}.game-type{font-size:8px;letter-spacing:1px;color:var(--game-blue);margin-top:auto;padding-top:26px}.featured-game .game-type{padding:0;margin:0}.screenshot-section{padding-top:75px}.screenshot-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.screenshot-pair .zoom-photo{aspect-ratio:16/10;border-radius:16px}.play-modes{display:grid;grid-template-columns:1fr 100px 1fr;align-items:center;padding:50px 55px;border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-bottom:82px}.play-modes>div:not(.mode-divider){text-align:center}.play-modes>div>span{font-size:9px;color:var(--game-blue)}.play-modes h3{font-size:20px}.play-modes p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 auto;max-width:280px}.mode-divider{display:flex;flex-direction:column;align-items:center;gap:12px}.mode-divider i{height:40px;width:1px;background:var(--line)}.mode-divider b{font-size:8px;color:var(--muted);font-weight:500}

/* Attack on Titan */
.aot-page{--aot:#9c3038;--aot-deep:#321619;--aot-soft:#f3e6e4}.aot-page .tiny-dot,.aot-page .scroll-progress span{background:var(--aot)}.aot-page .wordmark span,.aot-page .period{color:var(--aot)}.aot-page .header{position:absolute;left:50%;transform:translateX(-50%);color:#f6eeea;border-color:#ffffff1e}.aot-page .header nav a{color:#ccb9b6}.aot-page .header nav a:hover{color:#fff}.aot-page .controls button:hover{background:#ffffff12}.aot-page .control-divider{background:#ffffff30}.aot-hero{position:relative;background:linear-gradient(120deg,#1c1011,#421a1e 56%,#1a0e10);color:#f7efec;min-height:720px;overflow:hidden}.aot-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 45%,#9b33333d,transparent 34%),linear-gradient(90deg,transparent 49.9%,#ffffff0c 50%,transparent 50.1%);pointer-events:none}.aot-hero-inner{display:grid;grid-template-columns:1.05fr .85fr;gap:70px;align-items:center;min-height:720px;padding-top:104px}.aot-hero .back-link,.aot-hero .detail-hero-copy>p{color:#cbbebb}.aot-hero .section-label{color:#bda7a4}.aot-hero h1{color:#fff}.aot-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.aot-keywords span{font-size:8px;letter-spacing:1px;border:1px solid #ffffff2d;border-radius:999px;padding:8px 11px;color:#d8c8c5;background:#ffffff08}.aot-portrait{height:490px;position:relative;border-radius:24px;overflow:hidden;border:1px solid #ffffff1f;box-shadow:0 40px 100px #0006;animation:enter .8s .14s both}.aot-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,#15090bcf)}.aot-portrait img{width:100%;height:100%;object-fit:cover;object-position:72% 40%;transform:scale(1.15)}.aot-portrait>span{position:absolute;z-index:2;left:25px;bottom:24px;font-size:11px;line-height:1.5;letter-spacing:3px}.portrait-lines{position:absolute;z-index:2;inset:17px;border:1px solid #ffffff26;border-radius:15px}.aot-ribbon{position:absolute;z-index:3;left:-8%;right:-8%;bottom:36px;height:58px;border-radius:50% 8% 46% 10%;background:linear-gradient(90deg,#54141b,#b13b43 45%,#671b22);transform:rotate(-4deg);box-shadow:0 12px 35px #0005;pointer-events:none;opacity:.9}.spoiler-note{display:flex;gap:18px;align-items:center;margin-top:46px;padding:22px 26px;border:1px solid color-mix(in srgb,var(--aot) 34%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--aot) 5%,var(--surface))}.spoiler-note>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--aot);color:#fff}.spoiler-note strong{font-size:10px;letter-spacing:1.2px}.spoiler-note p{font-size:11px;color:var(--muted);margin:5px 0 0}.mikasa-thought{display:grid;grid-template-columns:1.25fr .75fr;gap:45px;align-items:center}.mikasa-thought>p{font-size:14px;line-height:2.1;color:var(--muted);margin:0}.mikasa-thought blockquote{margin:0;padding:30px;border-left:3px solid var(--aot);background:color-mix(in srgb,var(--aot) 6%,var(--surface));border-radius:0 15px 15px 0;font-size:18px;line-height:1.8}.relation-map{position:relative;display:grid;grid-template-columns:1fr 220px 1fr;grid-template-rows:1fr 1fr;gap:14px 85px;align-items:stretch}.relation-map:before,.relation-map:after{content:"";position:absolute;left:50%;top:12%;bottom:12%;width:1px;background:color-mix(in srgb,var(--aot) 38%,var(--line))}.relation-map:after{left:18%;right:18%;top:50%;bottom:auto;width:auto;height:1px}.relation-center{grid-column:2;grid-row:1/3;z-index:2;align-self:center;justify-self:center;width:165px;height:165px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--aot-deep);color:#fff;border:7px solid var(--bg);box-shadow:0 0 0 1px var(--aot)}.relation-center>span{font-size:36px;font-weight:600}.relation-center strong{font-size:11px;margin-top:4px}.relation-center small{font-size:7px;letter-spacing:1.4px;color:#c8abaa;margin-top:4px}.relation{z-index:1;padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.relation>span{font-size:8px;color:var(--aot)}.relation h3{margin:12px 0 8px}.relation p{font-size:11px;line-height:1.8;color:var(--muted);margin:0}.relation.eren,.relation.armin{grid-column:1}.relation.levi,.relation.scouts{grid-column:3}.relation.eren,.relation.levi{grid-row:1}.relation.armin,.relation.scouts{grid-row:2}.walls-section{background:color-mix(in srgb,var(--aot) 5%,var(--soft));padding:88px 0}.walls-inner{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.walls-visual{grid-column:1;grid-row:2;width:340px;height:340px;display:grid;place-items:center;margin:auto}.wall{border:1px solid color-mix(in srgb,var(--aot) 65%,var(--line));border-radius:50%;display:grid;place-items:center;position:relative}.wall>span{position:absolute;top:13px;font-size:8px;letter-spacing:1.4px;color:var(--aot)}.wall-maria{width:330px;height:330px;background:color-mix(in srgb,var(--aot) 4%,var(--surface))}.wall-rose{width:235px;height:235px}.wall-sina{width:135px;height:135px}.wall-sina i{width:12px;height:12px;background:var(--aot);border-radius:50%;box-shadow:0 0 0 10px color-mix(in srgb,var(--aot) 12%,transparent)}.wall-cards{grid-column:2;grid-row:1/3;display:grid;gap:12px}.wall-cards article{padding:24px 26px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.wall-cards b{font-size:9px;color:var(--aot)}.wall-cards h3{margin:10px 0 7px}.wall-cards p{font-size:11px;line-height:1.8;color:var(--muted);margin:0}.story-timeline{position:relative;margin-top:12px}.story-timeline:before{content:"";position:absolute;left:44px;top:14px;bottom:20px;width:1px;background:color-mix(in srgb,var(--aot) 55%,var(--line))}.story-timeline article{position:relative;display:grid;grid-template-columns:90px 1fr;gap:24px;padding:0 0 35px}.story-timeline time{z-index:1;width:88px;height:34px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--aot) 45%,var(--line));border-radius:999px;background:var(--bg);color:var(--aot);font-size:10px;letter-spacing:1px}.story-timeline article>div{padding:0 0 34px;border-bottom:1px solid var(--line)}.story-timeline h3{margin:4px 0 9px}.story-timeline p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.story-timeline .final-choice time{background:var(--aot);color:#fff}.aot-closing{display:grid;grid-template-columns:180px 1fr;gap:40px;align-items:center;padding:48px 55px;border-radius:18px;background:var(--aot-deep);color:#fff;margin-bottom:82px}.aot-closing svg{width:160px;fill:#a53b42}.aot-closing span{font-size:9px;letter-spacing:1.6px;color:#c8acab}.aot-closing strong{display:block;font-size:29px;margin:10px 0}.aot-closing p{font-size:12px;color:#cdbfbc;line-height:1.8;margin:0}

@media(max-width:900px){.detail-hero{grid-template-columns:1fr;gap:35px;padding-top:52px}.detail-cover,.game-cover{height:430px}.aot-hero-inner{grid-template-columns:1fr .8fr;gap:35px}.relation-map{gap:14px 40px}.walls-inner{gap:35px}.pet-panel{grid-template-columns:1fr;gap:28px}.pet-copy{max-width:620px}}
@media(max-width:760px){.header nav a:nth-child(3){display:none}.home-page .header nav a:nth-child(3){display:block}.detail-page .header nav{margin:0 8px 0 auto}.detail-page h1{font-size:38px;letter-spacing:-1.7px}.detail-hero{min-height:auto;padding:35px 0 62px}.back-link{margin-bottom:34px}.detail-cover,.game-cover{height:380px}.detail-chips>span{flex:1;min-width:90px}.detail-section{padding:58px 0}.principle-grid{grid-template-columns:1fr}.statement{padding:35px 28px}.statement p{font-size:18px}.photo-gallery{grid-template-columns:1fr 1fr;grid-template-rows:230px 190px}.photo-gallery .wide{grid-row:1;grid-column:1}.photo-gallery .tall{grid-row:1;grid-column:2}.photo-gallery button:nth-child(3){grid-row:2;grid-column:1}.photo-gallery button:nth-child(4){grid-row:2;grid-column:2}.next-pages{padding-bottom:55px}.next-pages a{padding:20px}.next-pages a>span{display:none}.pet-panel{padding:28px}.pet-preview-grid{height:270px}.game-library{grid-template-columns:1fr}.game-library .featured-game{grid-column:auto;display:flex;min-height:260px}.featured-game .game-type{margin-top:auto;padding-top:26px}.screenshot-pair{grid-template-columns:1fr}.play-modes{grid-template-columns:1fr;padding:35px 25px;gap:24px}.mode-divider{flex-direction:row}.mode-divider i{width:40px;height:1px}.aot-page .header{width:calc(100% - 40px)}.aot-hero-inner{grid-template-columns:1fr;padding-top:130px;padding-bottom:80px}.aot-portrait{height:390px}.aot-ribbon{bottom:20px;height:40px}.mikasa-thought{grid-template-columns:1fr;gap:24px}.relation-map{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:12px}.relation-map:before,.relation-map:after{display:none}.relation-center{grid-column:1/-1;grid-row:auto;width:130px;height:130px;margin-bottom:12px}.relation.eren,.relation.armin,.relation.levi,.relation.scouts{grid-column:auto;grid-row:auto}.walls-inner{grid-template-columns:1fr}.walls-inner .detail-heading,.walls-visual,.wall-cards{grid-column:1;grid-row:auto}.walls-visual{width:280px;height:280px}.wall-maria{width:275px;height:275px}.wall-rose{width:195px;height:195px}.wall-sina{width:115px;height:115px}.aot-closing{grid-template-columns:1fr;text-align:center;padding:38px 28px}.aot-closing svg{margin:auto}.photo-lightbox{height:80vh}.pets-home{padding-bottom:55px}}
@media(max-width:520px){.header nav{gap:13px}.header nav a{font-size:11px}.detail-page .header .wordmark{font-size:20px}.pet-preview-grid{height:230px}.pet-panel{padding:23px}.photo-gallery{grid-template-rows:190px 155px}.next-pages{grid-template-columns:1fr}.detail-cover,.game-cover{height:330px}.relation-map{grid-template-columns:1fr}.relation-center{grid-column:1}.story-timeline article{grid-template-columns:70px 1fr;gap:15px}.story-timeline time{width:68px}.story-timeline:before{left:34px}.aot-page .header nav a:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){body.page-leaving{opacity:1}.zoom-photo img,.photo-lightbox{transition:none}.photo-lightbox{transform:none}.aot-ribbon{transform:rotate(-4deg)}}

/* Selected refinements */
.interest-card{transform-style:preserve-3d;will-change:transform;transition:transform .2s ease,border-color .35s,box-shadow .35s}.interest-card .card-art,.interest-card .card-content{transform:translateZ(0);transition:transform .25s ease}.interest-card:hover .card-art{transform:translateZ(13px)}.interest-card:hover .card-content{transform:translateZ(7px)}
.aot-card .photo-card{background:#121817}.aot-card .photo-card img,.aot-card:hover .photo-card img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;filter:none}.aot-card .photo-card:after{display:none}.aot-card .scarf-stroke{display:none!important}
.page-transition-visual{position:fixed;z-index:500;border-radius:9px;overflow:hidden;background:var(--surface);box-shadow:0 28px 100px #0d151250;pointer-events:none;transition:left .46s cubic-bezier(.2,.8,.2,1),top .46s cubic-bezier(.2,.8,.2,1),width .46s cubic-bezier(.2,.8,.2,1),height .46s cubic-bezier(.2,.8,.2,1),border-radius .46s,opacity .46s}.page-transition-visual img{width:100%;height:100%;display:block}.page-transition-visual.transition-ready{left:12vw!important;top:7vh!important;width:76vw!important;height:86vh!important;border-radius:24px;opacity:.96}.detail-page main{animation:page-arrive .55s cubic-bezier(.2,.8,.2,1) both}@keyframes page-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.wings-trace{position:absolute;z-index:0;left:-30px;top:125px;width:min(42vw,560px);height:auto;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.4;pointer-events:none;filter:drop-shadow(0 0 9px rgba(235,242,255,.38)) drop-shadow(0 0 30px rgba(112,139,190,.3));animation:wings-aura 3.8s 4.1s ease-in-out infinite alternate}.wings-trace path{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-wings 4.2s .25s cubic-bezier(.28,.72,.2,1) forwards}.wings-trace .badge-frame path{stroke:#eadfdb;stroke-width:1.65}.wings-trace .wing-stems path{stroke:#d8c9c6;stroke-width:1.5;animation-delay:.55s}.wings-trace .wing-left path{stroke:#e1ecea;stroke-width:1.7}.wings-trace .wing-right path{stroke:#8da3ca;stroke-width:1.7}.wings-trace .blade-cross path{stroke:#c5b0ac;stroke-width:1.45;animation-delay:1.4s}.wings-trace .wing-feathers path:nth-child(1){animation-delay:.55s}.wings-trace .wing-feathers path:nth-child(2){animation-delay:.72s}.wings-trace .wing-feathers path:nth-child(3){animation-delay:.89s}.wings-trace .wing-feathers path:nth-child(4){animation-delay:1.06s}.wings-trace .wing-feathers path:nth-child(5){animation-delay:1.23s}.wings-trace .wing-feathers path:nth-child(6){animation-delay:1.4s}@keyframes draw-wings{to{stroke-dashoffset:0}}@keyframes wings-aura{0%{opacity:.34;filter:drop-shadow(0 0 8px rgba(235,242,255,.32)) drop-shadow(0 0 24px rgba(112,139,190,.24))}100%{opacity:.56;filter:drop-shadow(0 0 15px rgba(245,248,255,.58)) drop-shadow(0 0 42px rgba(112,139,190,.42))}}.aot-hero-inner{position:relative;z-index:2}

.badminton-page .detail-hero{position:relative}.shuttle-flight{position:absolute;z-index:0;left:-80px;right:-40px;top:66px;height:260px;pointer-events:none;opacity:.2}.shuttle-flight svg{width:100%;height:100%;overflow:visible}.shuttle-flight path{fill:none;stroke:#718879;stroke-width:1.2;stroke-dasharray:7 10;stroke-dashoffset:280;animation:flight-line 2.8s .45s ease-out forwards}.mini-shuttle{position:absolute;left:0;top:0;width:22px;height:30px;offset-path:path("M18 232C186 37 414 20 730 188");offset-rotate:auto 90deg;animation:shuttle-fly 2.8s .45s cubic-bezier(.2,.7,.2,1) forwards}.mini-shuttle:before{content:"";position:absolute;left:7px;top:0;width:8px;height:10px;border:1px solid #718879;border-radius:50% 50% 35% 35%}.mini-shuttle:after{content:"";position:absolute;left:3px;top:8px;width:16px;height:18px;background:linear-gradient(72deg,transparent 43%,#718879 45% 50%,transparent 52%),linear-gradient(-72deg,transparent 43%,#718879 45% 50%,transparent 52%);border-bottom:1px solid #718879}.mini-shuttle i{position:absolute;left:4px;top:23px;width:14px;height:5px;border:1px solid #718879;border-radius:50%}@keyframes flight-line{to{stroke-dashoffset:0}}@keyframes shuttle-fly{from{offset-distance:0;opacity:0}10%{opacity:1}to{offset-distance:100%;opacity:1}}.badminton-page .detail-hero-copy,.badminton-page .detail-cover{z-index:1}
.motion-enabled .shuttle-flight.reveal,.motion-enabled .shuttle-flight.reveal.visible{opacity:.2;transform:translateY(var(--flight-scroll,0));transition:transform .18s linear}

.walls-visual{width:100%;height:auto;display:block;margin:0}.wall-map{width:100%;height:auto;display:block;overflow:visible}.map-rings circle{fill:color-mix(in srgb,var(--surface) 64%,transparent);stroke:color-mix(in srgb,var(--aot) 64%,var(--line));stroke-width:5}.map-rings circle:nth-child(2){stroke-width:4}.map-rings circle:nth-child(3){stroke-width:3}.map-districts{fill:color-mix(in srgb,var(--aot) 8%,var(--surface));stroke:color-mix(in srgb,var(--aot) 64%,var(--line));stroke-width:4;transition:fill .25s,opacity .25s}.rose-districts{stroke-width:3}.sina-districts{stroke-width:2.5}.map-districts:hover{fill:color-mix(in srgb,var(--aot) 24%,var(--surface))}.map-center circle:first-child{fill:color-mix(in srgb,var(--aot) 14%,var(--surface));stroke:var(--aot);stroke-width:1}.map-center circle:last-child{fill:var(--aot)}.map-labels text{font:600 11px Inter,"Segoe UI",sans-serif;letter-spacing:1.4px;text-anchor:middle;fill:var(--aot)}.map-labels .district-name{font-size:7px;letter-spacing:.7px;fill:var(--muted)}.map-labels .district-name.side{font-size:6px}.map-labels .capital{font-size:7px;fill:var(--ink);letter-spacing:1px}.map-scale path{stroke:var(--muted);stroke-width:1}.map-scale text{font:500 6px Inter,sans-serif;letter-spacing:1px;text-anchor:middle;fill:var(--muted)}.map-legend{display:flex;justify-content:center;gap:18px;margin-top:8px}.map-legend span{display:flex;align-items:center;gap:6px;font-size:7px;letter-spacing:1px;color:var(--muted)}.map-legend i{width:7px;height:7px;border-radius:50%;background:var(--aot)}.map-legend .rose-dot{opacity:.7}.map-legend .sina-dot{opacity:.42}.map-intro{font-size:11px;line-height:1.8;color:var(--muted);margin:14px 0 0}.wall-cards article>span{display:inline-block;margin-top:11px;font-size:8px;letter-spacing:.8px;color:var(--aot);padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--aot) 7%,var(--surface))}

@media(max-width:760px){.interest-card:hover .card-art,.interest-card:hover .card-content{transform:none}.page-transition-visual.transition-ready{left:5vw!important;top:5vh!important;width:90vw!important;height:90vh!important;border-radius:18px}.wings-trace{left:-90px;top:160px;width:520px;opacity:.08}.shuttle-flight{left:-190px;right:-180px;top:32px;opacity:.15}.walls-visual{max-width:430px;margin:0 auto}.map-labels .district-name{font-size:8px}.map-labels .district-name.side{font-size:7px}}
@media(prefers-reduced-motion:reduce){.interest-card{transform:none!important}.page-transition-visual{display:none}.detail-page main{animation:none}.wings-trace,.wings-trace path,.shuttle-flight path,.mini-shuttle{animation:none}.wings-trace path{stroke-dashoffset:0}.mini-shuttle{offset-distance:100%}}

/* Current additions: interactive map, guestbook, utility pages and easter egg */
.map-rings circle,.map-districts,.wall-cards article{cursor:pointer;transition:fill .28s,stroke .28s,stroke-width .28s,filter .28s,transform .28s,border-color .28s,box-shadow .28s,background .28s}.map-rings circle{pointer-events:stroke}
.map-rings circle:focus-visible,.map-districts:focus-visible,.wall-cards article:focus-visible{outline:none;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--aot) 55%,transparent))}
.map-rings circle.wall-active{fill:color-mix(in srgb,var(--aot) 12%,var(--surface));stroke:var(--aot);stroke-width:7;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--aot) 42%,transparent))}
.map-districts.wall-active{fill:color-mix(in srgb,var(--aot) 30%,var(--surface));stroke:var(--aot);filter:drop-shadow(0 0 4px color-mix(in srgb,var(--aot) 42%,transparent))}
.wall-cards article.wall-active{transform:translateX(7px);border-color:color-mix(in srgb,var(--aot) 55%,var(--line));background:color-mix(in srgb,var(--aot) 6%,var(--surface));box-shadow:0 14px 34px color-mix(in srgb,var(--aot) 10%,transparent)}
.wall-map-status{min-height:18px;margin:13px 0 0;text-align:center;font-size:9px;line-height:1.7;letter-spacing:.7px;color:var(--aot)}

.guestbook{padding:8px 0 78px}.guestbook-panel{display:grid;grid-template-columns:.78fr 1.22fr;gap:54px;padding:44px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.guestbook-copy{align-self:start}.guestbook-copy .section-label{margin-bottom:16px}.guestbook-copy h2{font-size:clamp(27px,3.2vw,40px);line-height:1.25;letter-spacing:-1.5px;margin:0 0 16px}.guestbook-copy p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.guestbook-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;position:relative}.guestbook-form label{display:grid;gap:8px;font-size:10px;letter-spacing:.5px;color:var(--muted)}.guestbook-form .message-field{grid-column:1/-1}.guestbook-form input,.guestbook-form textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;font-size:13px;line-height:1.6;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.guestbook-form textarea{min-height:128px;resize:vertical}.guestbook-form input:focus,.guestbook-form textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.guestbook-form input::placeholder,.guestbook-form textarea::placeholder{color:color-mix(in srgb,var(--muted) 70%,transparent)}.guestbook-form .button{justify-self:start;border:0}.submit-note{align-self:center;font-size:9px;line-height:1.6;color:var(--muted)}.form-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}

.utility-page{min-height:100vh;display:flex;flex-direction:column}.utility-page .header{flex:0 0 auto}.utility-main{width:min(760px,calc(100% - 40px));min-height:610px;flex:1;margin:auto;padding:70px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.utility-code{font-size:11px;letter-spacing:3px;color:var(--accent);margin-bottom:18px}.utility-main h1{font-size:clamp(40px,7vw,72px);line-height:1.1;letter-spacing:-3px;margin:0 0 20px;animation:none}.utility-main>p{max-width:580px;font-size:14px;line-height:1.9;color:var(--muted);margin:0}.utility-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}.lost-mark{position:relative;width:176px;height:126px;margin-bottom:34px}.lost-mark:before,.lost-mark:after{content:"";position:absolute;top:0;width:58px;height:70px;border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),var(--soft));transform:rotate(17deg);border-radius:28px 28px 11px 11px}.lost-mark:before{left:22px}.lost-mark:after{right:22px;transform:rotate(-17deg)}.lost-mark span{position:absolute;z-index:2;top:34px;width:58px;height:76px;border:1px solid var(--line);border-radius:26px;background:var(--surface);display:grid;place-items:center;font-size:34px;box-shadow:var(--shadow)}.lost-mark span:first-child{left:10px;transform:rotate(-8deg)}.lost-mark span:last-child{right:10px;transform:rotate(8deg)}.lost-mark i{position:absolute;z-index:3;left:50%;top:25px;width:62px;height:92px;transform:translateX(-50%);border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,var(--surface),var(--soft));box-shadow:var(--shadow)}.lost-mark i:before,.lost-mark i:after{content:"";position:absolute;top:29px;width:7px;height:9px;border-radius:50%;background:var(--ink)}.lost-mark i:before{left:16px}.lost-mark i:after{right:16px}.lost-mark i b:first-child{position:absolute;left:50%;top:48px;width:8px;height:6px;transform:translateX(-50%);border-radius:50%;background:var(--accent)}.lost-mark i b:last-child{position:absolute;left:50%;top:60px;width:25px;height:1px;transform:translateX(-50%);background:var(--line)}.thanks-icon{width:98px;height:98px;display:grid;place-items:center;margin-bottom:31px;border:1px solid var(--line);border-radius:31px;background:linear-gradient(145deg,var(--surface),var(--soft));font-size:37px;box-shadow:var(--shadow)}

.avatar[role=button]{cursor:pointer;user-select:none}.avatar[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:7px}.easter-burst{position:fixed;inset:0;z-index:300;pointer-events:none;overflow:hidden}.easter-burst span{--angle:calc(var(--i) * 25.72deg);position:absolute;left:50%;top:42%;font-size:22px;opacity:0;animation:paw-burst 1.65s cubic-bezier(.15,.75,.2,1) both;animation-delay:calc(var(--i) * 18ms)}@keyframes paw-burst{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.25)}14%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateY(-270px) scale(1.15)}}

@media(max-width:760px){.wall-cards article.wall-active{transform:translateY(-3px)}.guestbook{padding-bottom:52px}.guestbook-panel{grid-template-columns:1fr;gap:28px;padding:29px 24px}.guestbook-form{grid-template-columns:1fr}.guestbook-form .message-field{grid-column:1}.submit-note{max-width:220px}.utility-main{min-height:560px;padding:45px 0}.utility-main h1{letter-spacing:-2px}.easter-burst span{top:35%}}
@media(max-width:420px){.guestbook-form .button{width:100%}.submit-note{justify-self:center;text-align:center}.utility-actions{flex-direction:column;width:100%}.utility-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.easter-burst span{animation:none;display:none}.wall-cards article.wall-active{transform:none}}

/* Guestbook message stream */
.guestbook-panel{position:relative;overflow:hidden;isolation:isolate;background:color-mix(in srgb,var(--surface) 94%,transparent)}.guestbook-panel:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 66%,transparent),transparent 34% 70%,color-mix(in srgb,var(--surface) 38%,transparent))}.guestbook-copy,.guestbook-form{position:relative;z-index:2}.message-stream{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%)}.message-stream-lanes{position:absolute;inset:0}.message-bullet{position:absolute;left:100%;top:calc(8% + var(--lane) * 15.5%);display:inline-flex;align-items:center;max-width:440px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:8px 13px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--surface) 91%,transparent);color:color-mix(in srgb,var(--ink) 91%,var(--accent));font-size:11px;font-weight:520;letter-spacing:.25px;opacity:.78;box-shadow:0 7px 22px #263d2c18;animation:guestbook-fly var(--duration) linear forwards;will-change:transform}.message-bullet:before{content:"";width:6px;height:6px;flex:0 0 auto;margin-right:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}@keyframes guestbook-fly{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 1500px))}}.guestbook-form input,.guestbook-form textarea{background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(6px)}.guestbook-form.is-submitting{opacity:.72}.guestbook-form .submit-note:disabled{cursor:wait;transform:none;filter:saturate(.45)}
@media(max-width:760px){.message-bullet{max-width:300px;font-size:10px;opacity:.72;animation-duration:calc(var(--duration) * .78)}.guestbook-panel:after{background:color-mix(in srgb,var(--surface) 23%,transparent)}}
@media(prefers-reduced-motion:reduce){.message-stream{display:none}}

/* Private guestbook manager */
.admin-main{width:min(1060px,calc(100% - 40px));flex:1;margin:0 auto;padding:118px 0 72px}.admin-shell{padding:44px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:16px 0 30px;padding-bottom:28px;border-bottom:1px solid var(--line)}.admin-heading h1{font-size:clamp(38px,6vw,68px);letter-spacing:-3px;line-height:1;margin:0 0 16px}.admin-heading p{max-width:600px;color:var(--muted);font-size:13px;line-height:1.8;margin:0}.admin-count{flex:0 0 auto;padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px}.admin-login{display:flex;align-items:end;gap:12px}.admin-login label{display:grid;gap:8px;flex:1;max-width:480px;font-size:10px;letter-spacing:.6px;color:var(--muted)}.admin-login input{width:100%;height:48px;padding:0 15px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;outline:none}.admin-login input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.admin-login .button{height:48px;border:0}.admin-status{min-height:20px;margin:18px 0;color:var(--muted);font-size:11px}.admin-status.is-error{color:#a44343}.admin-message-list{display:grid;gap:10px}.admin-message-card{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:13px;background:var(--bg)}.admin-message-card p{font-size:13px;line-height:1.7;margin:0;overflow-wrap:anywhere}.admin-message-card>div{display:flex;align-items:center;gap:15px}.admin-message-card time{color:var(--muted);font-size:9px;white-space:nowrap}.admin-delete{padding:7px 12px;border:1px solid color-mix(in srgb,#a44343 35%,var(--line));border-radius:999px;background:transparent;color:#a44343;font-size:10px;cursor:pointer;transition:.2s}.admin-delete:hover{background:#a44343;color:#fff}.admin-delete:disabled{opacity:.55;cursor:wait}.admin-empty{padding:46px;text-align:center;border:1px dashed var(--line);border-radius:13px;color:var(--muted);font-size:12px}
@media(max-width:700px){.admin-main{padding-top:95px}.admin-shell{padding:28px 22px}.admin-heading{align-items:flex-start;flex-direction:column}.admin-heading h1{letter-spacing:-2px}.admin-login{align-items:stretch;flex-direction:column}.admin-login label{max-width:none}.admin-login .button{width:100%}.admin-message-card{grid-template-columns:1fr}.admin-message-card>div{justify-content:space-between}}

/* Attack on Titan mobile composition — desktop remains unchanged */
.mikasa-moments-section{position:relative}.mikasa-moments{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;grid-auto-flow:dense;gap:11px}.mikasa-moment{border:1px solid color-mix(in srgb,var(--aot) 30%,var(--line));border-radius:15px;background:#1a1012;box-shadow:0 14px 40px #32161912}.mikasa-moment.moment-wide{grid-column:span 2}.mikasa-moment.moment-tall{grid-row:span 2}.mikasa-moment:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(23,8,11,.72));pointer-events:none}.mikasa-moment img{object-position:center}.mikasa-moment>span{position:absolute;z-index:2;right:12px;bottom:10px;width:27px;height:27px;display:grid;place-items:center;border:1px solid #ffffff45;border-radius:50%;background:#1e0d10a8;color:#fff;font-size:7px;letter-spacing:.5px;backdrop-filter:blur(7px)}.moments-foot{display:flex;align-items:center;gap:13px;margin-top:15px;color:var(--muted)}.moments-foot span,.moments-foot small{font-size:8px;letter-spacing:1.2px}.moments-foot i{height:1px;flex:1;background:var(--line)}.moments-foot small{font-weight:400}
.mobile-wings-reveal{display:none}
@media(max-width:760px){
  .aot-page{overflow-x:hidden}
  .aot-page .header{width:calc(100% - 28px);height:68px;gap:10px}
  .aot-page .header .wordmark{font-size:20px}
  .aot-page .header nav{display:none}
  .aot-page .controls{gap:1px;margin-left:auto}
  .aot-page .controls button{width:31px;height:31px}
  .aot-page .control-divider{height:14px}
  .aot-page .section{width:calc(100% - 32px)}

  .aot-hero{min-height:auto}
  .aot-page main,.aot-page .aot-hero-inner,.aot-page .detail-hero-copy,.aot-page .walls-inner,.aot-page .relation-map{min-width:0;max-width:100%}
  .aot-page .detail-hero-copy>p,.mobile-wings-copy>*{overflow-wrap:anywhere}
  .aot-hero:before{background:radial-gradient(circle at 78% 66%,#9b333333,transparent 36%),linear-gradient(90deg,transparent 49.85%,#ffffff0b 50%,transparent 50.15%)}
  .aot-hero-inner{min-height:auto;grid-template-columns:1fr;gap:28px;padding-top:102px;padding-bottom:45px}
  .aot-page .back-link{margin-bottom:26px;font-size:10px}
  .aot-hero .section-label{font-size:8px;letter-spacing:1.4px}
  .aot-page .aot-hero h1{max-width:340px;font-size:clamp(32px,9.5vw,40px);line-height:1.18;letter-spacing:-2px;margin:16px 0 18px}
  .aot-hero .detail-hero-copy>p{font-size:12px;line-height:1.9}
  .aot-keywords{gap:7px;margin-top:22px}
  .aot-keywords span{padding:7px 9px;font-size:7px}
  .aot-portrait{height:clamp(320px,102vw,430px);border-radius:18px;box-shadow:0 24px 60px #0007}
  .aot-portrait img{object-position:70% 40%;transform:scale(1.1)}
  .portrait-lines{inset:11px;border-radius:12px}
  .aot-ribbon{left:-16%;right:-16%;bottom:14px;height:32px;opacity:.82}
  .wings-trace{left:auto;right:-185px;top:92px;width:430px;opacity:.055}

  .mobile-wings-reveal{position:relative;display:block;width:calc(100% - 32px);margin:22px auto 0;padding:25px 20px 16px;overflow:hidden;border:1px solid color-mix(in srgb,var(--aot) 32%,var(--line));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--aot-deep) 96%,#000),#241114);color:#f7efec;box-shadow:0 22px 55px #32161922}
  .mobile-wings-reveal:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 52%,#b13b4320,transparent 44%),linear-gradient(90deg,transparent 49.85%,#ffffff12 50%,transparent 50.15%);pointer-events:none}
  .mobile-wings-copy{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
  .mobile-wings-copy>span{font-size:7px;letter-spacing:1.7px;color:#bda7a4}
  .mobile-wings-copy>strong{max-width:145px;text-align:right;font-size:11px;line-height:1.55;font-weight:500;color:#eadfdb}
  .mobile-wings-draw{position:relative;z-index:1;display:block;width:100%;height:auto;margin:4px auto -2px;overflow:visible;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(238,245,255,.32)) drop-shadow(0 0 24px rgba(113,139,189,.24));animation:mobile-wings-aura 3.8s 4.1s ease-in-out infinite alternate}
  .mobile-wings-draw path{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
  .mobile-wings-draw .badge-frame path{stroke:#e4dfda;stroke-width:1.35}
  .mobile-wings-draw .wing-stems path{stroke:#d6c8c3;stroke-width:1.2}
  .mobile-wings-draw .blade-cross path{stroke:#a9948f;stroke-width:1.1}
  .mobile-wings-draw .wing-left path{stroke:#e1ecea;stroke-width:1.55}
  .mobile-wings-draw .wing-right path{stroke:#7188b2;stroke-width:1.55}
  .mobile-wings-reveal.visible .mobile-wings-draw path{animation:mobile-wing-draw 4.2s cubic-bezier(.28,.72,.2,1) forwards}
  .mobile-wings-reveal.visible .badge-frame path:nth-child(2){animation-delay:.15s}
  .mobile-wings-reveal.visible .badge-frame path:nth-child(3){animation-delay:.3s}
  .mobile-wings-reveal.visible .blade-cross path{animation-delay:.45s}
  .mobile-wings-reveal.visible .wing-stems path{animation-delay:.48s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(1){animation-delay:.62s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(2){animation-delay:.79s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(3){animation-delay:.96s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(4){animation-delay:1.13s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(5){animation-delay:1.3s}
  .mobile-wings-reveal.visible .wing-feathers path:nth-child(6){animation-delay:1.47s}
  .mobile-wings-number{position:absolute;right:17px;bottom:13px;font-size:6px;letter-spacing:1.4px;color:#8f7472}
  @keyframes mobile-wing-draw{0%{stroke-dashoffset:1;opacity:0}8%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}

  .aot-page .spoiler-note{margin-top:18px;padding:17px 18px;gap:13px;border-radius:12px}
  .aot-page .spoiler-note>span{width:28px;height:28px;flex:0 0 28px}
  .aot-page .spoiler-note p{font-size:10px;line-height:1.65}
  .aot-page .detail-section{padding:52px 0}
  .aot-page .detail-heading{margin-bottom:24px}
  .aot-page .detail-heading h2,.aot-page .section-heading h2{font-size:27px;line-height:1.3;letter-spacing:-1.1px}
  .aot-page .section-heading{gap:10px;margin-bottom:24px}
  .aot-page .section-heading>p{font-size:11px;line-height:1.75}
  .mikasa-thought{gap:16px}
  .mikasa-thought>p{font-size:13px;line-height:2}
  .mikasa-thought blockquote{padding:22px 20px;font-size:15px;line-height:1.75;border-radius:0 12px 12px 0}

  .relation-map{grid-template-columns:1fr;grid-template-rows:auto;gap:10px;padding-left:18px}
  .relation-map:before{display:block;left:0;top:58px;bottom:32px;background:linear-gradient(var(--aot),color-mix(in srgb,var(--aot) 12%,var(--line)))}
  .relation-map:after{display:none}
  .relation-center{grid-column:1;grid-row:auto;justify-self:start;width:112px;height:112px;margin:0 0 8px -17px;border-width:5px}
  .relation-center>span{font-size:29px}
  .relation{grid-column:1!important;grid-row:auto!important;padding:18px 19px;border-radius:12px}
  .relation h3{font-size:16px;margin:8px 0 5px}
  .relation p{font-size:10.5px;line-height:1.75}

  .walls-section{padding:55px 0 60px}
  .walls-inner{grid-template-columns:1fr;gap:25px}
  .walls-inner .detail-heading,.walls-visual,.wall-cards{grid-column:1;grid-row:auto}
  .walls-inner .detail-heading{margin-bottom:0}
  .map-intro{font-size:11px;line-height:1.8}
  .walls-visual{width:min(100%,350px);height:auto;padding:8px 0;margin:0 auto}
  .wall-map{overflow:visible}
  .map-labels text{font-size:12px}.map-labels .district-name{font-size:9px}.map-labels .district-name.side{font-size:8px}
  .map-legend{gap:13px}.map-legend span{font-size:6.5px}
  .wall-map-status{margin-top:8px;font-size:8px}
  .wall-cards{gap:9px}
  .wall-cards article{padding:20px;border-radius:12px}
  .wall-cards h3{font-size:17px;margin:8px 0 6px}
  .wall-cards p{font-size:10.5px;line-height:1.78}

  .timeline-section{padding-bottom:42px}
  .story-timeline article{grid-template-columns:62px 1fr;gap:14px;padding-bottom:25px}
  .story-timeline time{width:60px;height:30px;font-size:8px}
  .story-timeline:before{left:29px;top:13px}
  .story-timeline article>div{padding-bottom:25px}
  .story-timeline h3{font-size:15px;margin:3px 0 7px}
  .story-timeline p{font-size:10.5px;line-height:1.75}
  .aot-closing{width:calc(100% - 32px);grid-template-columns:92px 1fr;gap:20px;text-align:left;margin-bottom:50px;padding:27px 22px;border-radius:15px}
  .aot-closing svg{width:88px;margin:0}
  .aot-closing strong{font-size:24px;margin:7px 0}
  .aot-closing p{font-size:10px;line-height:1.65}
  .aot-page .next-pages{width:calc(100% - 32px);grid-template-columns:1fr;gap:10px;padding-bottom:45px}
  .aot-page .next-pages a{min-height:78px;padding:18px 20px}
  .aot-page footer{width:calc(100% - 32px)}
}
@media(max-width:390px){
  .aot-page .aot-hero h1{font-size:31px}
  .aot-portrait{height:330px}
  .mobile-wings-reveal{padding-left:15px;padding-right:15px}
  .mobile-wings-copy>strong{max-width:128px;font-size:10px}
  .aot-closing{grid-template-columns:1fr;text-align:center}
  .aot-closing svg{margin:auto}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
  .mobile-wings-draw{animation:none!important}.mobile-wings-draw path{animation:none!important;stroke-dashoffset:0;opacity:1}
}
@media(max-width:760px){
  .mikasa-moments{display:flex;gap:10px;margin-right:-16px;padding-right:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .mikasa-moments::-webkit-scrollbar{display:none}
  .mikasa-moment,.mikasa-moment.moment-wide,.mikasa-moment.moment-tall{flex:0 0 min(78vw,310px);height:345px;grid-column:auto;grid-row:auto;scroll-snap-align:center;border-radius:14px}
  .mikasa-moment:first-child{scroll-snap-align:start}
  .mikasa-moment img{object-position:center}
  .moments-foot{margin-top:13px}
  .moments-foot span,.moments-foot small{font-size:7px}
}
@media(max-width:390px){
  .mikasa-moment,.mikasa-moment.moment-wide,.mikasa-moment.moment-tall{flex-basis:82vw;height:320px}
}
/* Silver emblem: separate reading area and two balanced visual columns. */
.aot-page .aot-hero-silver{min-height:0;background:radial-gradient(ellipse at 12% 70%,#3d1b23 0,transparent 54%),linear-gradient(115deg,#211216,#110f14 72%,#111219);padding-bottom:54px}
.aot-hero-silver:before{display:none}
.aot-silver-inner{padding-top:113px}
.aot-hero-silver .silver-intro{display:grid;grid-template-columns:1.12fr 1fr;column-gap:65px;align-items:start;margin-bottom:32px}
.aot-hero-silver .back-link{grid-column:1/-1;justify-self:start;margin-bottom:27px}
.aot-hero-silver .section-label{grid-column:1/-1;margin-bottom:15px;font-size:9px;letter-spacing:2px}
.aot-page .aot-hero-silver h1{grid-column:1;grid-row:3/5;margin:0;max-width:500px;font-size:43px;line-height:1.35;letter-spacing:-1.6px;text-wrap:balance}
.aot-hero-silver .silver-intro>p{grid-column:2;font-size:12px;line-height:1.95;padding-top:3px;max-width:480px}
.aot-hero-silver .aot-keywords{grid-column:2;margin-top:18px;gap:7px}
.aot-hero-silver .aot-visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:stretch}
.aot-hero-silver .aot-portrait{height:460px;border-radius:18px;box-shadow:0 18px 50px #0004;margin:0}
.aot-hero-silver .aot-portrait img{transform:none;object-position:70% 42%}
.freedom-art{position:relative;min-width:0;height:460px;margin:0;display:flex;align-items:center;flex-direction:column;justify-content:flex-end}
.freedom-halo{position:absolute;z-index:0;inset:5% 3% 16%;background:radial-gradient(circle at 70% 20%,rgba(246,249,255,.14),transparent 9%),radial-gradient(ellipse at 50% 48%,rgba(126,153,207,.15),transparent 50%),radial-gradient(ellipse at 50% 54%,rgba(255,255,255,.045),transparent 68%);opacity:0;transform:scale(.88);animation:vector-halo-in 1.5s 3.35s ease-out forwards,vector-halo-pulse 5.5s 4.9s ease-in-out infinite alternate;pointer-events:none}
.freedom-emblem{position:relative;z-index:1;display:block;width:100%;max-width:390px;height:392px;overflow:visible;filter:drop-shadow(0 0 1px rgba(246,249,255,.18));animation:vector-emblem-bloom 1.6s 3.2s ease-out forwards}
.freedom-emblem path{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.emblem-frame path,.emblem-spines path,.emblem-blades path{stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:vector-line-draw 1.95s var(--delay) cubic-bezier(.22,.68,.25,1) forwards}
.emblem-frame path{stroke-width:1.8}.emblem-spines path{stroke-width:1.35}.emblem-blades path{stroke-width:1.55}
.emblem-wing path{fill:none!important;stroke-width:1.45;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:vector-feather-draw 1.85s var(--delay) cubic-bezier(.22,.7,.24,1) forwards,vector-line-glow 5.2s calc(var(--delay) + 2.1s) ease-in-out infinite alternate}
.emblem-sheen{display:none}
.emblem-sparks circle{fill:#fff;opacity:0;filter:drop-shadow(0 0 6px #eaf1ff);transform-box:fill-box;transform-origin:center;animation:vector-spark 6.8s 4s ease-in-out infinite}.emblem-sparks circle:nth-child(2){animation-delay:5.15s}.emblem-sparks circle:nth-child(3){animation-delay:6.25s}
.freedom-art figcaption{position:relative;text-align:center;margin-top:12px;display:grid;gap:7px}
.freedom-art figcaption span{font-size:8px;letter-spacing:3px;color:#a9acb9}
.freedom-art figcaption strong{font-size:19px;font-weight:400;letter-spacing:5px;color:#e6e7ec}
.freedom-art figcaption small{font-size:6px;letter-spacing:2.5px;color:#7d7d8b}
.freedom-glint{position:absolute;z-index:3;width:48px;height:48px;pointer-events:none;opacity:0;background:radial-gradient(circle,#fff 0,#edf1ffbd 2%,#d8e3ff24 13%,transparent 55%);animation:silver-glint 7.2s 4s ease-in-out infinite}
.freedom-glint:before,.freedom-glint:after{content:"";position:absolute;left:50%;top:50%;background:linear-gradient(90deg,transparent,#f4f6ffcf,transparent);width:100%;height:1px;transform:translate(-50%,-50%)}
.freedom-glint:after{width:1px;height:60%;background:linear-gradient(transparent,#f4f6ffcf,transparent)}
.glint-top{left:calc(50% + 85px);top:45px}
.glint-bottom{left:calc(50% - 115px);top:305px;animation-delay:6.5s;transform:scale(.65)}
@keyframes vector-line-draw{0%{stroke-dashoffset:1;opacity:0}7%{opacity:1}100%{stroke-dashoffset:0;opacity:.92}}
@keyframes vector-feather-draw{0%{stroke-dashoffset:1;opacity:0}8%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes vector-line-glow{0%{stroke-opacity:.76;filter:drop-shadow(0 0 0 rgba(238,244,255,0))}55%{stroke-opacity:1;filter:drop-shadow(0 0 2.5px rgba(232,240,255,.7))}100%{stroke-opacity:.86;filter:drop-shadow(0 0 1px rgba(155,181,232,.38))}}
@keyframes vector-emblem-bloom{0%{filter:drop-shadow(0 0 1px rgba(246,249,255,.12))}100%{filter:drop-shadow(0 0 5px rgba(230,237,255,.34)) drop-shadow(0 0 17px rgba(119,145,199,.16))}}
@keyframes vector-halo-in{to{opacity:1;transform:scale(1)}}
@keyframes vector-halo-pulse{to{opacity:.72;transform:scale(1.045)}}
@keyframes vector-light-sweep{0%,21%{stroke-dashoffset:1;opacity:0}30%{opacity:.72}53%{stroke-dashoffset:-1;opacity:0}100%{stroke-dashoffset:-1;opacity:0}}
@keyframes vector-spark{0%,34%,56%,100%{opacity:0;transform:scale(.45)}43%{opacity:.95;transform:scale(1.55)}48%{opacity:.28;transform:scale(.8)}}
@keyframes silver-glint{0%,25%,75%,100%{opacity:0}48%{opacity:.8}60%{opacity:.2}}
@media(prefers-reduced-motion:reduce){.freedom-emblem,.freedom-halo,.freedom-glint,.freedom-emblem *{animation:none!important}.freedom-halo{opacity:.65;transform:none}.emblem-frame path,.emblem-spines path,.emblem-blades path{stroke-dashoffset:0;opacity:.92}.emblem-wing path{stroke-dashoffset:0;fill:none;opacity:1}.emblem-sheen,.emblem-sparks,.freedom-glint{display:none}}

