:root{color-scheme:dark;--bg:#07101f;--deep:#040b17;--panel:#0b182c;--panel2:#10243c;--text:#eef5ff;--muted:#a2b8d0;--ice:#a6d7ff;--ice2:#d9f2ff;--line:rgba(161,209,249,.22);--gold:#d3dee7;--ease:cubic-bezier(.2,.8,.2,1);--radius:10px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.7 Georgia,'Times New Roman',serif;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 70% 45% at 15% 0%,rgba(47,93,154,.15),transparent 80%),radial-gradient(ellipse 60% 50% at 93% 32%,rgba(24,70,130,.13),transparent 80%),#07101f}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}::selection{background:#5294ce;color:white}:focus-visible{outline:2px solid #b1e5ff;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.25}h1,h2{letter-spacing:.08em}p{color:var(--muted)}.container{width:min(1400px,calc(100% - 80px));margin:0 auto}.site-header{position:sticky;top:0;z-index:90;background:rgba(5,13,27,.96);border-bottom:1px solid var(--line)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:13px;min-width:250px}.brand-symbol{font-size:38px;line-height:1;color:#d7edff;text-shadow:0 0 15px #a9d6f7aa}.brand strong{font-size:20px;letter-spacing:.17em;line-height:1.12;display:block;font-weight:500}.brand small{display:block;letter-spacing:.18em;font-size:10px;color:var(--muted);white-space:nowrap;margin-top:5px}.main-nav{display:flex;gap:clamp(15px,2.8vw,47px);align-items:center;justify-content:center}.main-nav a{font:13px/1.5 Georgia,serif;letter-spacing:.14em;color:#cbd7e7;text-transform:uppercase;padding:30px 0;position:relative;transition:color .2s}.main-nav a:after{content:"";position:absolute;bottom:19px;left:50%;right:50%;height:1px;background:#9bd0ff;transition:left .22s,right .22s;box-shadow:0 0 10px #a2e1ff}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a:hover:after,.main-nav a.active:after{left:2px;right:2px}.header-actions{display:flex;gap:10px;align-items:center}.icon-btn{display:inline-grid;place-items:center;background:rgba(11,27,50,.85);color:#d7efff;border:1px solid rgba(169,219,255,.35);border-radius:50%;width:42px;height:42px;flex:0 0 42px;transition:background .2s,border-color .2s}.icon-btn:hover{background:#14385b;border-color:#b6e3ff}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:11px 23px;border:1px solid #9fc9ed7c;background:linear-gradient(90deg,#132c48e3,#0e1f36e3);color:#e8f4ff;font-family:Georgia,serif;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;box-shadow:inset 0 0 0 1px #d5edff12;transition:background .2s,border-color .2s,transform .2s}.btn:hover{border-color:#c3ebff;background:#1c3d5d;transform:translateY(-1px)}.btn.small{min-height:37px;padding:8px 17px;font-size:11px}.btn.ghost{background:rgba(3,11,23,.42)}.btn.arrow:after{content:'→';font-size:18px;line-height:1;font-weight:400}.eyebrow{display:flex;align-items:center;gap:12px;font:11px/1.5 Arial,sans-serif;letter-spacing:.27em;color:#a9d3f2;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:1px;background:var(--ice)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{font-size:clamp(25px,2.4vw,36px);margin:6px 0 0}.section-heading .section-link{font-size:11px;letter-spacing:.14em;color:#c1ddf2;text-transform:uppercase;white-space:nowrap}.section-link:hover{color:white}.panel{background:linear-gradient(145deg,rgba(13,29,51,.91),rgba(6,15,31,.95));border:1px solid var(--line);position:relative;box-shadow:0 5px 24px #020a18b0;min-width:0}.panel:before,.panel:after{content:"";position:absolute;width:16px;height:16px;border-color:rgba(183,223,255,.65);border-style:solid;pointer-events:none}.panel:before{left:-1px;top:-1px;border-width:1px 0 0 1px}.panel:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}.page-wrap{padding-bottom:100px}.hero{position:relative;min-height:min(740px,calc(100vh - 82px));overflow:hidden;border-bottom:1px solid #99c8f144;background:linear-gradient(90deg,#06101f,#0d2541)}.hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,13,28,.18) 0%,rgba(4,13,28,.24) 34%,rgba(4,13,28,.55) 54%,rgba(4,13,28,.21) 100%),url('assets/hero-scene.webp') center /cover no-repeat}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#07101f 0%,transparent 22%,transparent 83%,rgba(3,9,19,.42) 100%)}.hero-art{position:absolute;z-index:1;left:max(0px,calc((100vw - 1500px)/2 - 70px));bottom:0;width:min(56vw,800px);max-height:calc(100% - 8px);height:100%;object-fit:contain;object-position:left bottom;filter:saturate(.84) contrast(1.03);pointer-events:none}.hero-inner{position:relative;z-index:2;min-height:670px;display:grid;grid-template-columns:46% minmax(300px,1fr) 140px;align-items:center;gap:15px;padding-top:35px;padding-bottom:90px}.hero-copy{grid-column:2;max-width:655px;text-align:center;margin:0 auto;text-shadow:0 2px 20px #020915}.hero-mark{font-size:44px;color:#ccecff;line-height:1;margin:0 0 17px;text-shadow:0 0 25px #75bbf9}.hero-copy h1{font-size:clamp(52px,5.7vw,92px);line-height:1.02;letter-spacing:.075em;text-transform:uppercase;color:#eaf5ff;margin:0 0 20px;text-shadow:0 0 20px rgba(127,202,255,.48),0 4px 20px #031222}.hero-copy h1 span{display:block}.hero-subtitle{font-size:clamp(13px,1.3vw,17px);letter-spacing:.22em;color:#e8f4ff;text-transform:uppercase;line-height:1.8}.ornament{display:flex;align-items:center;justify-content:center;gap:20px;margin:24px 0;color:var(--ice)}.ornament:before,.ornament:after{content:"";width:82px;height:1px;background:linear-gradient(90deg,transparent,#a6d7ff88)}.ornament:after{transform:rotate(180deg)}.hero-description{font-size:clamp(15px,1.3vw,18px);max-width:490px;margin:0 auto 27px;line-height:1.85;color:#d1deef}.hero-side{grid-column:3;justify-self:end;align-self:center;border-left:1px solid #adcffa44;padding-left:20px}.vertical-kanji{font-size:63px;color:#dcefff;line-height:1.1;margin-bottom:22px}.hero-side small{display:block;font-size:11px;letter-spacing:.22em;line-height:2.5;color:#c1d1e5}.hero-caption{position:absolute;z-index:3;left:4%;bottom:34px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.2em;color:#b7cfe7}.hero-caption:before{content:"";height:1px;width:30px;background:#cbe5ff}.quick-panels{display:grid;grid-template-columns:1.05fr 1.6fr 1fr;gap:14px;position:relative;z-index:5;margin-top:-66px}.quick-panels .panel{padding:21px}.about-preview{display:grid;grid-template-columns:42% 1fr;gap:19px;min-height:276px}.about-preview img{height:100%;width:100%;object-fit:cover;border:1px solid var(--line);filter:saturate(.73)}.mini-label{font:10px/1.6 Arial,sans-serif;color:#8fb5d8;letter-spacing:.2em;text-transform:uppercase}.about-preview h2{font-size:28px;line-height:1.13;margin:4px 0 12px}.about-preview p{font-size:13px;line-height:1.7;margin-bottom:18px}.quick-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px;gap:12px}.quick-topline h2{font-size:20px;margin:0}.preview-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.preview-member{position:relative;height:214px;border:1px solid rgba(177,216,249,.29);background:#142a47;overflow:hidden}.preview-member img{height:100%;width:100%;object-fit:cover;filter:saturate(.75) brightness(.72);transition:transform .35s var(--ease)}.preview-member:hover img{transform:scale(1.05)}.preview-member:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#061124ef)}.preview-meta{position:absolute;bottom:9px;left:9px;right:6px;z-index:1;font-size:10px;line-height:1.3;color:#e2f0ff}.preview-meta b{font-size:13px;display:block;font-weight:400;margin-bottom:3px}.moment-preview img{height:157px;width:100%;object-fit:cover;display:block;filter:saturate(.8)}.moment-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.moment-thumbs img{height:61px;border:1px solid #8dbbde33}.content-section{padding:105px 0 10px}.intro-block{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.intro-block h2{font-size:clamp(35px,3.5vw,54px);margin:12px 0 16px}.intro-block p{font-size:16px;line-height:1.95}.virtues{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.virtue{padding:27px;border:1px solid var(--line);background:linear-gradient(145deg,#112843,#091526);position:relative}.virtue .number{font-size:11px;color:#8fc1e9}.virtue h3{font-size:21px;margin:12px 0 5px}.virtue p{font-size:13px;margin:0}.library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.library-card{display:flex;flex-direction:column;min-height:171px;padding:23px;gap:14px;background:linear-gradient(145deg,#0c1e35,#091425);border:1px solid var(--line);transition:border-color .2s,transform .2s}.library-card:hover{border-color:#a9dcff8c;transform:translateY(-3px)}.library-card .glyph{font-size:27px;color:#a6dcff}.library-card h3{font-size:19px;margin:0}.library-card p{font-size:13px;margin:0;line-height:1.6}.library-card .go{margin-top:auto;color:#a8d8fb;font-size:13px;align-self:flex-end}.site-footer{border-top:1px solid var(--line);background:#040b17;padding:35px 0 45px;margin-top:60px}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-row p{font-size:12px;margin:0}.footer-links{display:flex;gap:20px;font-size:12px;color:#abc2dc}.inner-hero{min-height:295px;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,#071020d9,#07102088),url('assets/hero-scene.webp') center 41% / cover;border-bottom:1px solid var(--line);padding:68px 0}.inner-hero:after{content:'氷';position:absolute;right:12%;top:10%;color:#c3e9ff14;font-size:200px;line-height:1;pointer-events:none}.inner-hero h1{font-size:clamp(43px,5vw,76px);margin:10px 0 9px}.inner-hero p{max-width:660px;font-size:17px;color:#b9ccdf;margin:0}.inner-content{padding:60px 0 0}.content-lead{max-width:750px;font-size:16px;line-height:1.8}.filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:25px 0 30px}.filter-btn{background:#0d2139;color:#b8cfe6;border:1px solid var(--line);padding:9px 16px;font:12px Arial,sans-serif;letter-spacing:.04em}.filter-btn.active,.filter-btn:hover{background:#183e60;color:#fff;border-color:#a4ccec}.search{background:#08182c;color:white;padding:10px 14px;border:1px solid var(--line);min-width:235px;max-width:100%;margin-left:auto}.group-title{font-size:28px;margin:55px 0 22px;border-bottom:1px solid var(--line);padding-bottom:15px}.roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.member-card{background:#0b1b30;border:1px solid var(--line);overflow:hidden;position:relative;min-width:0;transition:transform .2s,border-color .2s}.member-card:hover{transform:translateY(-3px);border-color:#a6dcff88}.member-banner{height:115px;background:#112d4d center/cover}.member-avatar{position:relative;margin:-58px auto 0;display:grid;place-items:center;width:126px;height:126px;border:3px solid #88bbdf99;border-radius:50%;background:#162e4b;color:#e6f4ff;box-shadow:0 3px 18px #030d1b;overflow:hidden;font-size:31px}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-info{text-align:center;padding:17px 13px 23px;min-height:116px}.member-info small{font-size:11px;letter-spacing:.1em;color:#91c3e6}.member-info h3{font-size:18px;margin:8px 0 0;overflow-wrap:anywhere}.member-info p{font-size:12px;margin:10px 0 0}.empty-state{padding:35px;color:var(--muted);border:1px dashed var(--line);text-align:center}.album-head{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.album-head p{max-width:720px;margin:0}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.photo-card{position:relative;min-width:0;border:1px solid var(--line);background:#0b192c;overflow:hidden}.photo-card .photo-trigger{display:block;width:100%;border:0;padding:0;background:#0d1c32;aspect-ratio:1.48;overflow:hidden}.photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease);filter:saturate(.88)}.photo-card:hover img{transform:scale(1.05)}.photo-caption{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:15px 17px}.photo-caption strong{display:block;font-size:17px;font-weight:400;line-height:1.35}.photo-caption small{font:11px Arial,sans-serif;color:#89a9c9}.delete-photo{width:33px;height:33px;border:1px solid var(--line);background:transparent;color:#c3d5e7;border-radius:50%;font-size:20px;flex:0 0 33px}.delete-photo:hover{color:#ffd6d6;border-color:#f3a6a6}.note{background:#0c2038;border:1px solid #85b4d24d;padding:17px 21px;color:#bcd0e3;font-size:13px}.note strong{color:white}.timeline{border-left:1px solid #91c6ef66;margin:30px 0 0 12px;display:grid;gap:27px;padding-left:32px}.timeline-item{position:relative;padding:5px 0 5px}.timeline-item:before{content:"✦";position:absolute;left:-43px;top:5px;color:#b8e2ff;font-size:19px;background:var(--bg);width:20px;text-align:center}.timeline-item small{color:#89bde7;letter-spacing:.15em}.timeline-item h2{font-size:28px;margin:7px 0 10px}.timeline-item p{max-width:850px}.quote{border-left:2px solid #b1ddfc;padding:20px 30px;background:#0c2137;color:#d7e9f8;font-size:24px;line-height:1.6;font-style:italic}.document-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px}.doc-side{align-self:start;position:sticky;top:105px;padding:19px}.doc-side h3{font-size:18px;margin:0 0 15px}.doc-menu{display:grid;gap:5px}.doc-menu a{font:13px/1.5 Arial,sans-serif;padding:12px 13px;color:#a9bbd3;border-left:2px solid transparent}.doc-menu a:hover,.doc-menu a.active{color:#fff;background:#152b46;border-color:#9bd7ff}.doc-article{padding:28px clamp(20px,3vw,45px);min-height:500px}.doc-article h2{font-size:28px;margin:30px 0 15px}.doc-article h3{font-size:20px}.doc-content>section,.doc-content>article{margin-bottom:22px}.doc-content p,.doc-content li{font-size:15px;line-height:1.8;color:#bacce2}.doc-content b,.doc-content strong{color:#e6f4ff}.doc-content details{border:1px solid #91b8d541;margin:10px 0;background:#081729}.doc-content details summary{padding:17px 18px;cursor:pointer;font-size:19px;color:#e3f0fc}.doc-content details[open] summary{border-bottom:1px solid var(--line)}.doc-content details>div{padding:13px 21px}.doc-content table{width:100%;border-collapse:collapse;margin:15px 0;font-family:Arial,sans-serif;font-size:13px}.doc-content th,.doc-content td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.doc-content th{color:#e8f6ff;background:#112a45}.doc-content img{display:block;max-width:100%;height:auto;margin:16px auto;border:1px solid var(--line)}.doc-content .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.doc-content .steps>div{border:1px solid var(--line);padding:17px}.doc-content form{display:grid;gap:16px;max-width:700px}.doc-content form label{display:grid;gap:5px;color:#d0e3f7}.doc-content input,.doc-content textarea{width:100%;background:#071626;border:1px solid var(--line);color:#fff;padding:12px}.doc-content form button{width:max-content}.doc-content .specialoffer{display:flex;gap:25px;align-items:center}.doc-content .specialoffer b{font-size:32px;color:#a7d9ff}dialog{border:1px solid #a1cdec80;background:#0b1b30;color:#f4faff;padding:0;width:min(520px,calc(100vw - 26px));max-height:90vh;box-shadow:0 22px 90px #000c}dialog::backdrop{background:rgba(1,7,16,.85)}.dialog-head{padding:17px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-head h2{font-size:22px;margin:0}.dialog-close{border:0;background:transparent;color:#e0f0ff;font-size:27px;line-height:1}.dialog-body{padding:22px 23px;max-height:72vh;overflow:auto}.dialog-body label{display:grid;gap:8px;margin-bottom:15px;font-size:14px;color:#d9ecfe}.dialog-body input[type=text],.dialog-body input[type=file],.dialog-body textarea{width:100%;border:1px solid #85afd35e;background:#071323;padding:11px;color:white}.toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:13px 0}.toggle input{accent-color:#8dc8f3;width:19px;height:19px}.dialog-body .hint{font-size:12px;margin:8px 0 19px}.toast{position:fixed;bottom:20px;right:20px;z-index:200;background:#15314c;color:white;border:1px solid #9cd8ff;padding:12px 18px;max-width:min(430px,90vw);box-shadow:0 12px 30px #020a17;transition:opacity .2s;pointer-events:none}.toast[hidden]{display:none}.lightbox{width:min(1100px,94vw);max-height:94vh}.lightbox .dialog-body{padding:0;max-height:calc(94vh - 68px);overflow:auto}.lightbox img{width:100%;max-height:75vh;object-fit:contain;background:#050b15;display:block}.lightbox p{padding:15px 18px;margin:0}.snowflake{position:fixed;top:-16px;z-index:80;pointer-events:none;color:#dff3ff;opacity:.55;font-size:11px;animation:snowfall linear infinite;will-change:transform}@keyframes snowfall{from{transform:translate3d(0,-15px,0)}to{transform:translate3d(35px,105vh,0)}}body.hide-snow .snowflake{display:none}body.page-hidden .snowflake{animation-play-state:paused}body.no-glow .brand-symbol,body.no-glow .hero-copy h1,body.no-glow .hero-mark{box-shadow:none;text-shadow:none}body.no-motion *,body.no-motion *:before,body.no-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(max-width:1220px){.container{width:min(100% - 48px,1400px)}.brand{min-width:215px}.brand strong{font-size:17px}.brand small{font-size:9px}.hero-inner{grid-template-columns:43% 1fr 90px}.hero-art{width:57vw}.hero-side{padding-left:12px}.hero-copy h1{font-size:64px}.quick-panels{grid-template-columns:1fr 1.4fr}.moment-panel{grid-column:1/-1;display:none}.library-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.header-inner{min-height:68px}.main-nav{position:fixed;top:68px;left:0;right:0;display:none;background:#071323;border-bottom:1px solid var(--line);padding:8px 22px 20px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 25px 35px #02060e}.main-nav.open{display:flex}.main-nav a{padding:12px 8px;border-bottom:1px solid #b6d9ff22}.main-nav a:after{bottom:0}.menu-toggle{display:inline-grid}.hero{min-height:660px}.hero-art{width:73vw;left:-6vw;opacity:.7}.hero-inner{min-height:660px;grid-template-columns:29% minmax(0,1fr);padding-bottom:100px}.hero-copy{grid-column:2;text-align:center}.hero-copy h1{font-size:clamp(47px,7vw,68px)}.hero-side{display:none}.quick-panels{grid-template-columns:1fr 1fr}.about-preview{grid-template-columns:1fr 1.4fr}.preview-roster{grid-template-columns:repeat(2,1fr)}.preview-member{height:148px}.content-section{padding-top:70px}.roster{grid-template-columns:repeat(3,minmax(0,1fr))}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-layout{grid-template-columns:1fr}.doc-side{position:static}.doc-menu{grid-template-columns:repeat(4,1fr)}.doc-menu a{padding:8px}.library-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.container{width:calc(100% - 30px)}.brand{min-width:0;gap:8px}.brand-symbol{font-size:28px}.brand strong{font-size:14px}.brand small{font-size:8px;letter-spacing:.08em}.header-actions{gap:7px}.icon-btn{width:37px;height:37px;flex-basis:37px}.hero{min-height:725px}.hero-backdrop{background-position:70% 30%}.hero-art{width:128vw;max-height:none;height:630px;top:-9px;bottom:auto;left:-45vw;opacity:.63}.hero-inner{display:flex;align-items:flex-end;justify-content:center;min-height:725px;padding:120px 0 112px}.hero-copy{margin:0;text-align:center;max-width:420px;padding:0 6px}.hero-copy h1{font-size:clamp(43px,12vw,67px);line-height:1.07}.hero-mark{font-size:34px}.hero-subtitle{font-size:11px}.hero-description{font-size:14px;line-height:1.7}.hero-caption{left:18px;bottom:15px;font-size:9px}.quick-panels{margin-top:-58px;grid-template-columns:1fr}.quick-panels .panel{padding:18px}.about-preview{min-height:220px}.about-preview h2{font-size:24px}.preview-member{height:170px}.preview-roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.preview-meta{font-size:8px;left:5px;bottom:4px}.preview-meta b{font-size:10px}.intro-block{grid-template-columns:1fr;gap:25px}.virtues{gap:9px}.virtue{padding:17px}.virtue h3{font-size:19px}.library-grid{grid-template-columns:1fr 1fr;gap:9px}.library-card{padding:15px;min-height:170px}.library-card h3{font-size:16px}.library-card p{font-size:12px}.library-card .glyph{font-size:22px}.roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.member-banner{height:87px}.member-avatar{width:98px;height:98px;margin-top:-45px}.member-info h3{font-size:16px}.member-info{min-height:112px}.search{width:100%;margin-left:0}.album-head{align-items:flex-start;flex-direction:column;gap:17px}.album-grid{grid-template-columns:1fr}.inner-hero{min-height:250px;padding:44px 0}.inner-hero h1{font-size:43px}.inner-content{padding-top:38px}.content-section{padding-top:60px}.footer-row{flex-direction:column;align-items:flex-start}.doc-menu{grid-template-columns:repeat(2,1fr)}.doc-article{padding:18px 14px}.doc-content .steps{grid-template-columns:1fr}.quote{font-size:20px;padding:18px}.section-heading{align-items:flex-start}.section-heading h2{font-size:27px}.section-heading .section-link{font-size:10px}}@media(max-width:390px){.brand small{display:none}.brand strong{font-size:13px}.brand-symbol{font-size:25px}.hero-copy h1{font-size:42px}.quick-topline h2{font-size:17px}.preview-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-member{height:154px}.hero-description{max-width:300px}.library-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Дыхание Льда — V2. Авторские карточки, чистый альбом и более выразительная главная.
   Все эффекты статичные; постоянные тяжёлые размытия отсутствуют. */
:root{--bg:#060d1b;--panel:#09172a;--panel2:#0d233c;--ice:#aedcff;--line:rgba(147,204,251,.26)}
body{background:linear-gradient(180deg,#050d1a,#071221 54%,#050c18)}
.container{width:min(1510px,calc(100% - 94px))}
.site-header{background:#050d1beD;border-bottom:1px solid rgba(172,215,251,.23);box-shadow:0 6px 40px rgba(0,0,0,.17)}
.header-inner{min-height:76px}
.brand-symbol{font-size:36px}
.brand strong{font-size:19px}
.main-nav a{font-size:13px;letter-spacing:.18em}
.panel{border-color:rgba(162,216,253,.30);background:linear-gradient(155deg,rgba(15,32,56,.97),rgba(6,16,34,.98));box-shadow:0 12px 37px rgba(0,2,12,.25)}
.panel:before,.panel:after{width:12px;height:12px;border-color:#bee2fc88}
.btn{border-color:#aedfff9f;min-height:49px;background:linear-gradient(105deg,#183e64,#0b233c);padding:12px 22px;box-shadow:inset 0 0 0 1px #dcf3ff17,0 7px 30px #07112444;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.btn.ghost{background:rgba(3,15,31,.56)}
/* Главный экран */
.hero{min-height:680px;height:min(735px,calc(100svh - 75px));background:#071323;border-bottom-color:#a6d0f950;isolation:isolate}
.hero-backdrop{background:linear-gradient(90deg,rgba(2,8,19,.05) 0%,rgba(4,10,24,.02) 34%,rgba(4,13,31,.28) 47%,rgba(2,10,25,.42) 76%,rgba(1,7,20,.26) 100%),url('assets/hero-scene.webp') center 44%/cover no-repeat}
.hero:after{background:linear-gradient(0deg,#061122 0%,#06112212 20%,transparent 80%,#040d1b6e 100%)}
.hero:before{content:'';position:absolute;inset:18px;z-index:2;border:1px solid #b5dfff20;pointer-events:none}
.hero-halo{position:absolute;top:12%;left:47%;z-index:1;width:clamp(290px,30vw,475px);height:clamp(290px,30vw,475px);border:1px solid #c9e9ff22;border-radius:50%;background:radial-gradient(circle,#a9d8ff08 6%,transparent 58%);box-shadow:0 0 0 24px #b5ddff08,0 0 0 68px #93caff06;pointer-events:none}
.hero-art{width:min(57vw,900px);height:100%;max-height:none;object-fit:contain;object-position:left bottom;left:max(-35px,calc((100vw - 1500px)/2 - 72px));bottom:-1px;filter:drop-shadow(0 20px 22px rgba(0,0,0,.26));z-index:1}
.hero-inner{min-height:100%;height:100%;grid-template-columns:44% minmax(330px,1fr) 120px;padding:38px 0 100px;gap:10px;align-items:center}
.hero-copy{max-width:660px;align-self:center;margin-top:-14px}
.hero-kicker{color:#beddf5;font:11px/1.5 Georgia,serif;letter-spacing:.26em;margin:0 0 22px;display:flex;align-items:center;justify-content:center;gap:14px;text-transform:uppercase}
.hero-kicker span:first-child{font-size:19px;color:#d5eeff}
.kicker-line{width:30px;height:1px;background:#d9efff7d}
.hero-seal{font-size:52px;line-height:1;color:#ebf8ff;text-shadow:0 0 28px #81c4ffbd;margin:0 0 12px}
.hero-copy h1{font-size:clamp(72px,7.15vw,112px);line-height:.95;letter-spacing:.025em;color:#e8f6ff;text-shadow:0 0 14px #a3d5ff6a,0 4px 30px #020b1e;position:relative;margin-bottom:24px}
.hero-copy h1 span:last-child{font-size:1.09em}
.hero-subtitle{font-size:clamp(12px,1.07vw,16px);letter-spacing:.18em;line-height:1.8;white-space:nowrap}
.hero-subtitle span{color:#bce2ff;padding:0 7px}
.ornament{margin:24px 0 19px}
.hero-description{max-width:515px;font-size:clamp(14px,1.2vw,17px);margin:0 auto 27px;line-height:1.67;color:#deecfa}
.hero-actions{display:flex;gap:13px;justify-content:center;flex-wrap:wrap}
.hero-side{margin-top:48px;margin-right:6px;justify-self:end;border-left:1px solid rgba(190,227,253,.36)}
.vertical-kanji{font-size:62px}
.hero-side small{font-size:10px;line-height:2.7;letter-spacing:.16em}
.hero-sideword{position:absolute;left:28px;top:23%;writing-mode:vertical-rl;letter-spacing:.45em;font-size:14px;color:#c6e4fb74;z-index:3}
.hero-bottom{position:absolute;bottom:16px;left:4%;right:4%;z-index:4;display:flex;justify-content:space-between;gap:18px;align-items:center;color:#b3c9db;font-size:10px;letter-spacing:.21em;pointer-events:none}
.hero-scroll{color:#e4f3ff}
.hero-scroll span{font-size:21px;vertical-align:middle;margin-left:8px}
/* Превью-разделы как единая нижняя полоса */
.quick-panels{grid-template-columns:1.04fr 1.6fr 1fr;gap:16px;margin-top:-81px;align-items:stretch;z-index:6}
.quick-panels .panel{padding:22px 23px 24px;min-height:292px}
.quick-panels .panel:before{border-top-color:#d2eeffcc;border-left-color:#d2eeffcc}
.quick-topline{align-items:end;padding-bottom:15px;margin-bottom:15px}
.quick-topline h2{font-size:26px;letter-spacing:.06em;margin:3px 0 0}
.mini-label{color:#89bae1;letter-spacing:.21em;font-size:10px}
.section-link{font:11px/1.5 Georgia,serif;color:#bddfff;letter-spacing:.09em;transition:color .2s}
.section-link:hover{color:#fff}
.about-panel{overflow:hidden}
.about-panel .panel-mark{position:absolute;top:-40px;right:15px;color:#9fcfff13;font-size:145px;line-height:1;pointer-events:none}
.about-preview{grid-template-columns:39% 1fr;gap:18px;min-height:216px;margin-top:15px}
.about-preview img{object-position:36% center;border-color:#a4d4f95c;box-shadow:0 0 0 4px #041424}
.about-preview h2{font-size:29px;letter-spacing:.04em;margin:2px 0 15px}
.about-preview p{font-size:13px;line-height:1.7;margin-bottom:19px}
.preview-roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.preview-member{height:202px;background:radial-gradient(circle at 50% 24%,#28517a 0%,#102843 40%,#071429 100%);border-color:#b0d8fb54;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:18px 7px 11px;gap:10px;overflow:hidden}
.preview-member:before{content:'';position:absolute;top:-48px;right:-45px;width:145px;height:145px;border:1px solid #d0e9ff1d;border-radius:50%;pointer-events:none}
.preview-member:after{inset:auto 0 0;height:46%;background:linear-gradient(0deg,#071325,transparent);pointer-events:none}
.preview-avatar{z-index:1;width:79px;height:92px;border:1px solid #c0e3fd6b;background:linear-gradient(135deg,#173956,#0b1d36);display:grid;place-items:center;clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);overflow:hidden;flex:0 0 92px}
.preview-avatar img{height:100%;width:100%;object-fit:cover;filter:none}
.preview-avatar .avatar-placeholder{font-size:38px;color:#bddfffbb;text-shadow:0 0 23px #86ceff60}
.preview-meta{position:relative;bottom:auto;left:auto;right:auto;z-index:1;width:100%;text-align:center;line-height:1.38}
.preview-meta .preview-rank{font-size:9px;color:#b5dbf7;display:block;min-height:11px}
.preview-meta b{font-size:12px;line-height:1.3;margin:5px 0 0;display:block;font-weight:400;overflow-wrap:anywhere}
.preview-member:hover{border-color:#d3f2ff;box-shadow:inset 0 0 24px #3472a44b}
.preview-member:hover img{transform:none}
.moments-soon{height:207px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;border:1px dashed #9dcdf458;background:radial-gradient(ellipse at 50% 100%,#1640665c,transparent 78%),linear-gradient(135deg,#0c243f,#08182f);padding:14px}
.moments-glyph{font-size:43px;color:#c4e7ffb8;line-height:1;text-shadow:0 0 16px #9bd8ff69}
.moments-soon strong{font-size:16px;font-weight:400;line-height:1.27}
.moments-soon>span:nth-last-child(2){font-size:12px;color:#a7bed4;line-height:1.45}
.moments-arrow{font-size:10px;color:#c6e7ff;text-transform:uppercase;letter-spacing:.13em;margin-top:5px}
/* Редизайн каталога состава: banner + портрет 4:5 (позже заменяются своими). */
.roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}
.group-title{font-size:31px;margin:62px 0 24px;padding-bottom:16px}
.group-title:before{content:'❅';font-size:23px;margin-right:15px;color:#a5d9ff}
.member-card{background:linear-gradient(158deg,#10263e,#081a2f 67%,#081729);border-color:#a1cef845;min-height:337px;box-shadow:0 9px 24px #0003;overflow:hidden}
.member-card:before,.member-card:after{content:'';position:absolute;width:13px;height:13px;border:1px solid #bfe5ff85;pointer-events:none;z-index:4}
.member-card:before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.member-card:after{bottom:-1px;right:-1px;border-top:0;border-left:0}
.member-banner{position:relative;height:144px;background:radial-gradient(ellipse 110% 140% at 38% 5%,#315779 0%,#153351 38%,transparent 72%),repeating-linear-gradient(140deg,#0d223b 0 15px,#122c48 15px 16px,#0d223b 16px 32px);border-bottom:1px solid #a2d7fb44;overflow:hidden}
.member-banner:before{content:'';position:absolute;top:-96px;right:-25px;width:240px;height:240px;border:1px solid #c5e7ff1b;border-radius:50%;box-shadow:0 0 0 24px #b9defb09,0 0 0 47px #b9defb08}
.member-banner:after{content:'';position:absolute;bottom:15px;left:19px;width:60px;height:1px;background:linear-gradient(90deg,#c2ebff8e,transparent)}
.member-banner img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;z-index:1}
.banner-emblem{position:absolute;right:23px;bottom:16px;color:#d0eaff3f;font-size:48px;line-height:1;z-index:2}
.member-banner:has(img) .banner-emblem{opacity:.35}
.member-avatar{width:114px;height:132px;border:2px solid #a5d8fc96;background:linear-gradient(145deg,#1e476e,#0d2540 70%);border-radius:12px;box-shadow:0 7px 17px rgba(1,8,21,.48),0 0 0 5px #091b30;overflow:hidden;z-index:3;margin:-80px auto 0;display:grid;place-items:center;position:relative}
.member-avatar .avatar-placeholder{font-size:52px;line-height:1;color:#d8f2ffb5;text-shadow:0 0 25px #b8e4ffa0}
.member-avatar:after{content:'';position:absolute;inset:8px;border:1px solid #c4eaff1b;pointer-events:none;border-radius:6px}
.member-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.member-info{padding:20px 16px 28px;min-height:125px}
.member-info small{display:block;color:#a1c9e9;letter-spacing:.14em;text-transform:uppercase;font:10px/1.5 Georgia,serif}
.member-info h3{font-size:20px;line-height:1.32;margin:10px 0 0}
.member-card:hover{transform:translateY(-2px)}
.filterbar{gap:9px}
.filter-btn{border-radius:0;padding:10px 17px}
/* Альбом без фальшивых изображений */
.album-grid:has(.album-empty){display:block}
.album-empty{text-align:center;min-height:390px;border:1px solid #9bcaf257;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;background:radial-gradient(ellipse at 50% 28%,#1a416156,transparent 53%),linear-gradient(145deg,#0e233b,#071525)}
.album-empty-symbol{font-size:84px;line-height:1;color:#b7e6ff91;text-shadow:0 0 45px #7abcf782;margin-bottom:12px}
.album-empty .eyebrow:before{display:none}
.album-empty h2{font-size:clamp(26px,3vw,43px);margin:13px 0}
.album-empty p{max-width:485px;margin:0;line-height:1.75}
.album-head{align-items:center}
/* Полировка внутренних блоков */
.inner-hero{min-height:290px;background:linear-gradient(90deg,rgba(5,14,28,.94),rgba(8,26,45,.64)),url('assets/hero-scene.webp') center 43%/cover}
.inner-hero h1{color:#e6f5ff;text-shadow:0 0 18px #8cceff50}
.content-section{padding-top:95px}
.virtue{background:linear-gradient(140deg,#122a47,#081729);border-color:#a1cced3f}
.library-card{background:linear-gradient(145deg,#112b48,#081528);border-color:#afd6f43b}
/* Переключение эффектов работает и при отсутствии анимаций */
body.no-glow .hero-seal,body.no-glow .member-avatar .avatar-placeholder,body.no-glow .moments-glyph{text-shadow:none}
@media(max-width:1400px){
 .container{width:min(100% - 62px,1510px)}
 .hero-inner{grid-template-columns:42% minmax(330px,1fr) 98px}
 .hero-art{width:58vw}
 .hero-copy h1{font-size:clamp(65px,6.8vw,98px)}
 .quick-panels{grid-template-columns:1fr 1.4fr}
 .moment-panel{display:block;grid-column:1/-1;min-height:auto!important}
 .moment-panel .moments-soon{height:126px;flex-direction:row;gap:20px}
 .moment-panel .moments-soon .moments-glyph{font-size:32px}
 .moments-soon strong{font-size:17px}
}
@media(max-width:1080px){
 .hero-inner{grid-template-columns:39% 1fr 64px}
 .hero-copy h1{font-size:clamp(58px,7vw,79px)}
 .hero-subtitle{white-space:normal}
 .hero-kicker{font-size:10px;gap:8px}
 .hero-art{width:62vw;left:-9%}
 .hero-side{padding-left:12px}
 .hero-side small{font-size:9px}
 .quick-panels{grid-template-columns:1fr 1.25fr}
 .preview-member{height:196px}
 .about-preview{gap:15px}
 .roster{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
 .container{width:min(100% - 36px,1510px)}
 .site-header .header-inner{min-height:68px}
 .hero{min-height:720px;height:auto}
 .hero-inner{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:720px;padding:35px 18px 65px}
 .hero-art{left:-7%;width:78vw;height:75%;bottom:0;opacity:.79;object-position:left bottom}
 .hero-halo{left:33%;top:15%;width:320px;height:320px}
 .hero-copy{margin:0 0 0 auto;max-width:min(550px,83%);width:100%;z-index:2;text-align:center;align-self:flex-end}
 .hero-copy h1{font-size:clamp(56px,8vw,88px)}
 .hero-side{display:none}
 .hero-sideword{left:16px;top:22%;font-size:12px}
 .hero-bottom{left:3%;right:3%}
 .quick-panels{margin-top:-53px;grid-template-columns:1fr}
 .quick-panels .panel{min-height:unset;padding:23px}
 .about-preview{min-height:190px}
 .moment-panel{grid-column:auto}
 .moment-panel .moments-soon{height:150px}
 .preview-roster{gap:11px}
 .preview-member{height:205px}
 .roster{grid-template-columns:repeat(2,minmax(0,1fr))}
 .content-section{padding-top:70px}
}
@media(max-width:640px){
 .container{width:calc(100% - 28px)}
 .hero{min-height:700px}
 .hero-inner{min-height:700px;padding-top:35px}
 .hero-backdrop{background-position:58% center}
 .hero-art{height:65%;width:103vw;left:-34%;opacity:.73}
 .hero-halo{left:20%;top:9%;width:270px;height:270px}
 .hero-copy{max-width:100%;align-self:center;margin:0;padding:9px 4px 0;text-shadow:0 3px 18px #030919}
 .hero-copy h1{font-size:clamp(52px,12vw,78px);line-height:1.02}
 .hero-kicker{margin-bottom:23px;font-size:9px}
 .hero-seal{font-size:40px}
 .hero-subtitle{font-size:11px;letter-spacing:.11em}
 .hero-subtitle span{padding:0 3px}
 .hero-description{font-size:14px;line-height:1.7}
 .hero-actions{flex-direction:column;align-items:center}
 .hero-actions .btn{width:min(100%,260px)}
 .hero-sideword{display:none}
 .hero-bottom{font-size:9px;letter-spacing:.06em}
 .hero-bottom span:last-child{display:none}
 .quick-panels{margin-top:-31px;gap:13px}
 .quick-panels .panel{padding:18px}
 .about-preview{grid-template-columns:34% 1fr;gap:15px;min-height:195px}
 .about-preview h2{font-size:25px}
 .about-preview p{font-size:12px}
 .preview-roster{grid-template-columns:repeat(2,minmax(0,1fr))}
 .preview-member{height:178px}
 .preview-avatar{width:68px;height:79px;flex-basis:79px}
 .preview-meta b{font-size:13px}
 .moment-panel .moments-soon{height:180px;flex-direction:column;gap:7px}
 .moments-soon strong{font-size:15px}
 .roster{grid-template-columns:1fr;gap:17px}
 .member-card{max-width:410px;width:100%;margin:auto}
 .member-banner{height:152px}
 .member-info{min-height:105px}
 .album-head{display:flex;flex-direction:column;align-items:stretch}
 .album-head .btn{align-self:start}
 .album-empty{min-height:320px}
}
@media(max-width:370px){.hero-copy h1{font-size:50px}.brand strong{font-size:13px}.brand small{font-size:7px}.hero-kicker .kicker-line{display:none}.hero-kicker{letter-spacing:.11em}.about-preview{grid-template-columns:1fr}.about-preview img{height:135px}}
/* Prevent a one-pixel document overflow caused by nested legacy tables. */
html{overflow-x:clip}
.doc-article,.doc-content,.document-layout{min-width:0}
.doc-content table{display:block;max-width:100%;overflow-x:auto;white-space:normal}
.doc-content td,.doc-content th{overflow-wrap:anywhere}
@media(max-width:900px){.doc-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){.doc-menu{grid-template-columns:1fr 1fr}}

/* ==================== CINEMATIC HOME V3 ==================== */
:root { --midnight:#040b1a; --ice-accent:#b8ddff; }
.site-header {background:rgba(3,11,26,.94); border-bottom:1px solid rgba(174,220,255,.22);}
.header-inner {min-height:69px;}
.brand {min-width:315px;}
.brand-symbol {font-size:37px;}
.brand strong {font-size:18px; letter-spacing:.15em;}
.brand small {font-size:9px;}
.main-nav a {padding:21px 0; letter-spacing:.19em;}
.main-nav a:after {bottom:9px;}
.header-actions {gap:11px;}
.header-actions .icon-btn {background:rgba(5,17,37,.59);width:38px;height:38px;flex-basis:38px;font-size:20px;}
.ambient-toggle{display:inline-flex;align-items:center;gap:0;border:1px solid rgba(167,215,255,.35);padding:3px;width:84px;height:36px;border-radius:24px;background:rgba(4,17,38,.72);color:#9cb2cf;cursor:pointer;flex-shrink:0}
.ambient-toggle span{display:grid;place-items:center;flex:1;font:20px/1 Arial,sans-serif;height:28px;border-radius:50%}
.ambient-toggle .ambient-moon{background:linear-gradient(125deg,#34628d,#719de2);color:#fff;box-shadow:0 0 12px #8fcdff90}
.is-dawn .ambient-toggle .ambient-moon{background:none;color:#a0b5cf;box-shadow:none}
.is-dawn .ambient-toggle .ambient-sun{background:linear-gradient(125deg,#c9deec,#fff);color:#346081;box-shadow:0 0 14px #b4dfff75}
.snow-shortcut[aria-pressed="true"]{box-shadow:0 0 16px #9bddff85;color:white}
body[data-page="home"] .site-header {position:absolute;top:0;left:0;right:0;z-index:70;background:rgba(3,9,22,.70);border-color:#c5e7ff29;}
body[data-page="home"] .header-inner{width:min(1530px,calc(100% - 110px));}
body[data-page="home"] .page-wrap{padding-bottom:65px;}
/* Hero is an independent section: no content under the cards. */
body[data-page="home"] .cinematic-hero{height:clamp(600px,68vh,745px);min-height:600px;overflow:hidden;position:relative;isolation:isolate;border:0;background:#07172d;}
.cinematic-hero .hero-backdrop{z-index:-3;background-image:linear-gradient(90deg,rgba(2,9,22,.40) 0%,rgba(5,13,31,.18) 44%,rgba(5,13,31,.08) 75%,rgba(2,8,19,.34) 100%),url('assets/hero-scene.webp');background-position:center;background-size:cover;transform:none;}
.cinematic-hero[data-slide="2"] .hero-backdrop{background-image:linear-gradient(90deg,rgba(2,9,22,.60) 0%,rgba(5,13,31,.38) 48%,rgba(5,13,31,.32) 85%),url('assets/temple-scene.webp');background-position:center 46%;}
.cinematic-hero .hero-mist{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(3,10,22,.30),transparent 26%,transparent 70%,rgba(6,15,30,.48) 100%),linear-gradient(90deg,transparent 20%,rgba(5,14,28,.22) 52%,rgba(5,14,28,.08) 85%);pointer-events:none}
.cinematic-hero:after{z-index:1;background:linear-gradient(0deg,rgba(4,10,24,.18) 0%,transparent 23%,transparent 85%,rgba(2,8,17,.25) 100%)}
.cinematic-hero .hero-art{position:absolute;z-index:0;left:max(-3%,calc((100vw - 1648px)/2 - 38px));bottom:0;width:min(55vw,785px);height:calc(100% - 57px);max-height:none;object-fit:cover;object-position:center bottom;filter:saturate(.86) contrast(1.03);-webkit-mask-image:linear-gradient(to right,black 0%,black 80%,transparent 100%),linear-gradient(to bottom,black 0%,black 88%,transparent 100%);mask-image:linear-gradient(to right,black 0%,black 80%,transparent 100%);mask-composite:intersect;pointer-events:none}
.cinematic-hero .hero-copy{position:absolute;z-index:3;top:47%;left:50.5%;width:min(36vw,585px);max-width:none;transform:translate(-11%,-50%);text-align:center;margin:0;color:#eef7ff;text-shadow:0 2px 18px #010714,0 0 20px #061c35;}
.cinematic-hero .hero-seal{font-size:61px;line-height:1;color:#d8f3ff;text-shadow:0 0 21px rgba(119,197,255,.55);margin:0 auto 18px;}
.cinematic-hero .hero-copy h1{font-size:clamp(61px,5.6vw,94px);line-height:.99;letter-spacing:.075em;font-weight:400;margin:0 0 20px;text-shadow:0 0 18px #8cc8ff7e,0 3px 18px #001124;}
.cinematic-hero .hero-copy h1 span:last-child{font-size:1.13em;margin-top:3px}
.cinematic-hero .hero-subtitle{font-size:clamp(10px,.91vw,14px);letter-spacing:.16em;white-space:nowrap;color:#d5e8fb;margin:0}
.cinematic-hero .ornament{margin:19px 0 17px;font-size:21px;gap:17px}
.cinematic-hero .ornament:before,.cinematic-hero .ornament:after{width:90px}
.cinematic-hero .hero-description{font-size:clamp(13px,1.03vw,17px);line-height:1.6;max-width:480px;margin:0 auto;color:#d0e0f2;text-shadow:0 2px 12px #01060f}
.cinematic-hero .hero-sideword{position:absolute;z-index:3;top:19%;left:4.2%;writing-mode:vertical-rl;color:#bcdaf8b7;letter-spacing:.4em;font-size:16px;text-shadow:0 0 12px #60b7ff8c}
.cinematic-hero .hero-side-decoration{position:absolute;right:3.6%;top:5%;font-size:55px;line-height:1;color:#d1eaff7a;text-shadow:0 0 20px #80bbff60;pointer-events:none}
.cinematic-hero .hero-side{position:absolute;right:3.6%;top:26%;z-index:3;display:flex;flex-direction:column;padding:0;border:none;text-align:left;align-items:flex-start;min-width:102px}
.cinematic-hero .vertical-kanji{font-size:64px;margin:0 0 16px}
.cinematic-hero .hero-side small{font-size:10px;line-height:2;letter-spacing:.09em}
.hero-story-link{position:absolute;z-index:3;bottom:34px;left:5.4%;display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.12em;color:#e2effe;text-transform:uppercase;text-shadow:0 0 9px #000;}
.hero-story-link>span:last-child{display:flex;flex-direction:column;line-height:1.5}
.hero-story-link small{display:block;font-size:8px;letter-spacing:.19em;color:#aabed8}
.hero-play{display:grid;place-items:center;font:22px/1 Georgia,serif;width:46px;height:46px;border:1px solid #b5e8ff9c;border-radius:50%;transform:rotate(-45deg);box-shadow:0 0 16px #8ac2fca6}
.hero-story-link:hover .hero-play{background:#113858}
.hero-switcher{position:absolute;z-index:3;right:3.6%;bottom:27px;min-width:300px;max-width:350px;padding:15px 17px 12px 57px;background:linear-gradient(120deg,rgba(5,16,35,.92),rgba(5,12,29,.79));border:1px solid rgba(188,220,247,.40);box-shadow:inset 0 0 0 3px #b8e8ff09,0 5px 25px #0009}
.hero-switcher-glyph{position:absolute;top:16px;left:19px;font-size:26px;color:#c4e9ff}
.hero-switcher-title{letter-spacing:.13em;font-size:10px;margin:4px 0 12px;color:#eaf5ff;white-space:nowrap}
.hero-switcher-bottom{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.19em;color:#b6d3ed}
.hero-slide-buttons{display:flex;gap:12px}
.hero-slide-buttons button{width:34px;height:30px;border:1px solid #aedcff66;background:#1b3754ba;color:#e5f5ff;font:23px/1 Georgia,serif;cursor:pointer}
.hero-slide-buttons button:hover{background:#315a81}
/* Panels start AFTER the hero; a deliberate 0px seam prevents any overlap. */
body[data-page="home"] .quick-panels{width:min(1575px,calc(100% - 64px));max-width:none;position:relative;z-index:4;display:grid;grid-template-columns:1.32fr 1.91fr 1.04fr;gap:13px;margin:-1px auto 0;padding:0 0 1px;align-items:stretch;}
body[data-page="home"] .quick-panels .panel{padding:17px;background:linear-gradient(165deg,rgba(7,19,38,.96),rgba(5,13,29,.98));border:1px solid rgba(159,202,239,.35);box-shadow:inset 0 0 0 2px #badcff0a;min-height:276px;}
body[data-page="home"] .quick-panels .panel:before,body[data-page="home"] .quick-panels .panel:after{border-color:#b6e3ffa8}
body[data-page="home"] .about-panel{display:grid;grid-template-columns:43% 1fr;gap:18px;}
.about-image-link{display:block;overflow:hidden;border:1px solid #c2e4ff80;height:100%;min-height:236px;position:relative;background:#112540}
.about-image-link img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(.8)}
.about-copy{padding:5px 0 0;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
body[data-page="home"] .about-panel .mini-label{letter-spacing:.22em;font-size:10px;color:#9fbadd}
body[data-page="home"] .about-panel h2{font-size:clamp(19px,1.8vw,29px);margin:5px 0 9px;white-space:nowrap;letter-spacing:.075em}
body[data-page="home"] .about-panel p{font-size:clamp(11px,.86vw,14px);line-height:1.59;color:#b1c2da;margin:0 0 14px}
.panel-action{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid #a7cbef91;font-size:11px;line-height:1.1;letter-spacing:.1em;color:#e4f4ff;margin-top:auto;min-width:153px}
.panel-action:hover{background:#213b58}
.panel-action span{font-size:20px}
body[data-page="home"] .quick-topline{min-height:24px;padding:0 0 10px;margin:0 0 11px;gap:7px;align-items:center}
body[data-page="home"] .quick-topline h2{font:400 clamp(15px,1.23vw,21px)/1.2 Georgia,serif;letter-spacing:.055em;white-space:nowrap;color:#e7f1fc;margin:0}
body[data-page="home"] .quick-topline .section-link{font-size:10px;letter-spacing:.10em;color:#c5d9ec;white-space:nowrap;display:inline-flex;gap:8px}
body[data-page="home"] .preview-roster{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;}
body[data-page="home"] .preview-member{height:214px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:16px 5px 10px;border:1px solid #96badb66;background:linear-gradient(160deg,#233b60 0%,#102642 45%,#08152b 88%);position:relative;isolation:isolate;overflow:hidden;transition:transform .2s,border-color .2s;}
body[data-page="home"] .preview-member:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 32%,rgba(171,218,255,.14),transparent),linear-gradient(to top,#071326a0,transparent 60%);pointer-events:none}
body[data-page="home"] .preview-member:after{content:"";position:absolute;inset:9px;border:1px solid #9dbddd30;pointer-events:none;background:none}
body[data-page="home"] .preview-avatar{position:relative;z-index:1;flex:0 0 auto;width:min(87%,90px);height:135px;border:1px solid #9fc7e365;background:linear-gradient(140deg,#294d74,#0c2544);clip-path:polygon(0 0,100% 0,100% 92%,91% 100%,0 100%);box-shadow:inset 0 0 18px #badfff18}
body[data-page="home"] .preview-avatar .avatar-placeholder{font-size:35px;}
body[data-page="home"] .preview-avatar img{height:100%;width:100%;object-fit:cover;object-position:top}
body[data-page="home"] .preview-meta{z-index:2;display:block;line-height:1.1;min-height:39px;bottom:auto;left:auto;right:auto;position:relative;text-align:center;width:100%}
body[data-page="home"] .preview-rank{min-height:10px;display:block;font-size:8px;color:#a9c8e6;margin-bottom:3px}
body[data-page="home"] .preview-meta b{display:block;font-size:clamp(9px,.77vw,12px);margin:0;overflow-wrap:anywhere;font-weight:400}
body[data-page="home"] .preview-member:hover{transform:translateY(-2px);border-color:#d6ecff}
body[data-page="home"] .moment-panel{display:flex;flex-direction:column;}
.panel-next{width:27px;height:27px;flex-shrink:0;border:1px solid #b8e9ff7d;border-radius:50%;font:19px/23px Georgia,serif;text-align:center}
body[data-page="home"] .moments-soon{flex:1;height:auto;min-height:210px;border:1px dashed #a6d5fc78;background:radial-gradient(ellipse at 50% 90%,#1b40635e,transparent 75%),linear-gradient(140deg,#0a203b,#081829);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:17px;gap:7px}
body[data-page="home"] .moments-glyph{font-size:39px;line-height:1;color:#bddfff}
body[data-page="home"] .moments-soon strong{font-size:16px;line-height:1.25;color:#eaf5ff}
body[data-page="home"] .moments-soon>span:nth-last-child(2){max-width:250px;font-size:12px;line-height:1.45;color:#9bb6ce}
body[data-page="home"] .moments-arrow{letter-spacing:.14em;font-size:9px;color:#c2e4ff;margin-top:6px}
/* Slight atmosphere changes. No filters or continuously redrawn backgrounds. */
body.is-dawn .cinematic-hero .hero-mist{background:linear-gradient(90deg,rgba(13,37,74,.07),rgba(7,20,40,.13)),linear-gradient(180deg,rgba(8,24,52,.08),transparent 70%,rgba(28,50,76,.25))}
body.is-dawn .cinematic-hero .hero-art{filter:saturate(1.05) brightness(1.14)}
body.no-glow .hero-copy h1,body.no-glow .hero-seal,body.no-glow .hero-play{box-shadow:none;text-shadow:0 2px 10px #010714}
body[data-page="home"] .content-section:first-of-type{padding-top:96px}
@media (max-width:1330px){
 body[data-page="home"] .header-inner{width:calc(100% - 60px)}
 .brand{min-width:255px}.brand strong{font-size:16px}.brand small{font-size:8px}
 .cinematic-hero .hero-copy{left:50%;width:min(41vw,570px);transform:translate(-5%,-50%)}
 .cinematic-hero .hero-art{width:60vw}
 .cinematic-hero .hero-side{right:2%;top:27%}
 body[data-page="home"] .quick-panels{grid-template-columns:1fr 1.43fr;width:calc(100% - 40px)}
 body[data-page="home"] .quick-panels .moment-panel{grid-column:1/-1;min-height:180px;}
 body[data-page="home"] .moments-soon{min-height:110px;flex-direction:row;gap:16px}
 body[data-page="home"] .moments-soon>span:nth-last-child(2){max-width:none}
}
@media(max-width:1020px){
 .cinematic-hero .hero-art{width:67vw;left:-12%}
 .cinematic-hero .hero-copy{left:51%;width:46vw;transform:translate(-8%,-50%)}
 .cinematic-hero .hero-copy h1{font-size:clamp(60px,7vw,84px)}
 .cinematic-hero .hero-side{display:none}
 .hero-switcher{right:3%;min-width:255px;padding-left:52px}
 .hero-switcher-title{font-size:9px}
 body[data-page="home"] .quick-panels{grid-template-columns:1fr 1.25fr}
 body[data-page="home"] .preview-member{height:192px;padding:11px 4px}
 body[data-page="home"] .preview-avatar{height:115px}
 .main-nav{gap:23px}
}
@media(max-width:900px){
 body[data-page="home"] .site-header {position:relative;background:#061222}
 body[data-page="home"] .header-inner{width:calc(100% - 36px)}
 body[data-page="home"] .cinematic-hero{height:auto;min-height:640px;}
 .cinematic-hero .hero-art{left:-24%;bottom:0;width:100vw;height:100%;opacity:.55;}
 .cinematic-hero .hero-copy{top:42%;left:50%;transform:translate(-50%,-50%);width:min(580px,90%);}
 .cinematic-hero .hero-copy h1{font-size:clamp(56px,9vw,85px)}
 .cinematic-hero .hero-story-link{bottom:40px;left:5%;}
 .hero-switcher{bottom:40px;right:5%}
 body[data-page="home"] .quick-panels{grid-template-columns:1fr;width:calc(100% - 36px);margin-top:16px;gap:15px}
 body[data-page="home"] .quick-panels .moment-panel{grid-column:auto;min-height:0}
 body[data-page="home"] .about-panel{grid-template-columns:32% 1fr;min-height:260px}
 body[data-page="home"] .roster-panel{min-height:278px}
 body[data-page="home"] .preview-member{height:208px}
 body[data-page="home"] .preview-avatar{height:133px}
}
@media(max-width:640px){
 .brand{min-width:0}
 .ambient-toggle{width:64px;height:32px}.ambient-toggle span{font-size:16px;height:24px}
 .snow-shortcut{display:none!important}
 body[data-page="home"] .cinematic-hero{min-height:660px;}
 .cinematic-hero .hero-art{left:-65%;height:85%;width:160vw;opacity:.48;object-fit:cover;object-position:center bottom;}
 .cinematic-hero .hero-copy{top:37%;width:94%;}
 .cinematic-hero .hero-copy h1{font-size:clamp(51px,12vw,75px)}
 .cinematic-hero .hero-seal{font-size:41px;margin-bottom:14px}
 .cinematic-hero .hero-subtitle{white-space:normal;font-size:10px;letter-spacing:.09em}
 .cinematic-hero .hero-description{font-size:14px;line-height:1.7}
 .cinematic-hero .hero-sideword{font-size:10px;left:9px}
 .cinematic-hero .hero-story-link{bottom:131px;left:50%;transform:translateX(-50%);white-space:nowrap}
 .hero-switcher{right:50%;transform:translateX(50%);bottom:18px;width:280px;min-width:0;max-width:none}
 body[data-page="home"] .quick-panels{width:calc(100% - 24px);margin-top:12px}
 body[data-page="home"] .quick-panels .panel{padding:14px}
 body[data-page="home"] .about-panel{grid-template-columns:32% 1fr;gap:14px;min-height:222px}
 .about-image-link{min-height:180px}
 body[data-page="home"] .about-panel h2{font-size:21px}
 body[data-page="home"] .about-panel p{font-size:12px;line-height:1.45}
 .panel-action{padding:9px 11px;font-size:10px;min-width:0}
 body[data-page="home"] .preview-roster{grid-template-columns:repeat(3,minmax(0,1fr));}
 body[data-page="home"] .preview-member{height:183px}
 body[data-page="home"] .preview-avatar{height:116px}
 body[data-page="home"] .moments-soon{min-height:155px;flex-direction:column;gap:7px}
 .cinematic-hero .hero-side-decoration{display:none}
}
@media(max-width:400px){
 body[data-page="home"] .about-panel{grid-template-columns:1fr}
 .about-image-link{min-height:130px;height:130px}
 body[data-page="home"] .quick-topline h2{font-size:14px}
 body[data-page="home"] .preview-roster{grid-template-columns:repeat(2,minmax(0,1fr))}
 body[data-page="home"] .preview-member{height:198px}
}
/* Final optical alignment to the approved desktop concept. */
@media(min-width:1331px){
  .cinematic-hero .hero-copy{left:50%;top:54%;width:min(38vw,575px);transform:translate(-50%,-50%)}
  .cinematic-hero .hero-copy h1{font-size:clamp(64px,4.8vw,80px)}
}
@media(min-width:1021px) and (max-width:1330px){
  .cinematic-hero .hero-copy{left:52%;top:53%;width:min(40vw,545px);transform:translate(-40%,-50%)}
  .cinematic-hero .hero-copy h1{font-size:clamp(61px,5vw,72px)}
}
@media(min-width:1331px) and (max-width:1480px){
  .cinematic-hero .hero-copy{left:54%}
}
