:root{--navy:#0b1a2e;--char:#1d2430;--paper:#fff;--soft:#f4f2ec;--gold:#b08d43;--gold2:#c9a85c;--line:#e0dbcd;--muted:#5a6573;--serif:'Fraunces',Georgia,serif;--sans:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font:400 1rem/1.65 var(--sans);color:var(--char);background:var(--paper)}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}
.w{width:min(1120px,92%);margin:auto}section{padding:clamp(3.2rem,7vw,5.5rem) 0}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;color:var(--navy)}
h2{font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:.6rem}h3{font-size:1.15rem;margin-bottom:.4rem}
.lead{color:var(--muted);max-width:62ch;margin-bottom:2rem}.dk{background:var(--navy);color:#e6ebf2}.dk h2,.dk h3{color:#fff}.dk .lead{color:#aebbcc}.sf{background:var(--soft)}
.btn{display:inline-block;padding:.85rem 1.5rem;background:var(--gold2);color:var(--navy);text-decoration:none;font:600 1rem var(--sans);border:1px solid var(--gold2);border-radius:3px;cursor:pointer}
.btn:hover{background:transparent;color:var(--gold2)}.btn.o{background:transparent;color:inherit;border-color:currentColor}.btn.o:hover{color:var(--gold2)}.btn.d{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.d:hover{background:transparent;color:var(--navy)}
header{position:sticky;top:0;z-index:50;background:rgba(11,26,46,.97);color:#fff}
.bar{display:flex;align-items:center;justify-content:space-between;height:64px;gap:.8rem}.logo{font:600 1.1rem var(--serif);text-decoration:none}
nav ul{display:flex;gap:1rem;list-style:none;padding:0;font-size:.85rem}nav a{text-decoration:none;color:#c9d3e0}nav a:hover{color:var(--gold2)}
.lang{display:flex;gap:.25rem}.lang button{background:none;border:1px solid #3a5577;color:#c9d3e0;padding:.25rem .6rem;cursor:pointer;border-radius:2px;font:.82rem var(--sans)}.lang button[aria-pressed=true]{background:var(--gold2);color:var(--navy);border-color:var(--gold2)}
#mb{display:none;background:none;border:1px solid #3a5577;color:#fff;padding:.4rem .7rem;border-radius:2px;font:inherit}
@media(max-width:1220px){#mb{display:block}nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--navy);padding:1rem 4%}nav.open{display:block}nav ul{flex-direction:column;gap:.9rem;font-size:1rem}}
.hero{background:var(--navy);color:#fff;padding:clamp(3rem,7vw,5.5rem) 0}.hero .w{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:center}
@media(max-width:820px){.hero .w{grid-template-columns:1fr}}
.hero h1{color:#fff;font-size:clamp(2rem,5vw,3.3rem);margin:.8rem 0 1rem}.role{color:var(--gold2);font-weight:500}.hero p.s{color:#c3cedc;max-width:54ch;margin-bottom:1.8rem}
.ph{max-width:380px;justify-self:center;border:1px solid var(--gold);padding:10px;border-radius:190px 190px 4px 4px}.ph img{aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;width:100%;border-radius:180px 180px 2px 2px}
.grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold2);padding:1.4rem;border-radius:3px}.dk .card{background:#12263f;border-color:#24405f;border-top-color:var(--gold2)}
.card ul{padding-left:1.1rem;color:var(--muted);font-size:.93rem}.dk .card ul{color:#aebbcc}.card li{margin:.15rem 0}
.tag{color:var(--gold);font-weight:600;margin-bottom:.6rem}.dk .tag{color:var(--gold2)}
.chain{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 1.5rem;font-size:.88rem}.chain span{background:#12263f;border:1px solid #24405f;padding:.3rem .7rem;border-radius:20px}
.vid{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:center;margin-top:2rem}@media(max-width:800px){.vid{grid-template-columns:1fr}}
.v{position:relative;aspect-ratio:16/9;background:#000;border:1px solid var(--gold);border-radius:4px;overflow:hidden}.v iframe,.v img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.v button{position:absolute;inset:0;width:100%;background:rgba(11,26,46,.45);border:0;cursor:pointer;color:#fff;font:600 1rem var(--sans)}.v button b{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--gold2);color:var(--navy);font-size:1.5rem;margin-bottom:.4rem}
.fw{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;position:relative}@media(max-width:820px){.fw{grid-template-columns:1fr}}
.fw div{border-top:2px solid var(--gold2);padding-top:.8rem;opacity:.25;transform:translateY(10px);transition:.6s}.fw.on div{opacity:1;transform:none}.fw.on div:nth-child(2){transition-delay:.15s}.fw.on div:nth-child(3){transition-delay:.3s}.fw.on div:nth-child(4){transition-delay:.45s}.fw.on div:nth-child(5){transition-delay:.6s}
.fw b{font:600 1.7rem var(--serif);color:var(--gold)}.fw p{font-size:.92rem;color:var(--muted)}
.tl{border-left:2px solid var(--gold2);padding-left:1.4rem;display:grid;gap:1.1rem}.tl div{position:relative}.tl div:before{content:"";position:absolute;left:-1.8rem;top:.5rem;width:.7rem;height:.7rem;background:var(--gold2);border-radius:50%}
.note{font-size:.88rem;color:var(--muted);border-left:3px solid var(--gold2);padding:.6rem 1rem;margin-top:1.5rem;background:rgba(201,168,92,.12)}.dk .note{color:#c3cedc}
.demo{font-size:.75rem;border:1px dashed var(--muted);padding:.1rem .5rem;border-radius:2px;color:var(--muted)}
.lk a{color:var(--navy);font-weight:500}.dk .lk a{color:var(--gold2)}
form{display:grid;gap:1rem}label{font-weight:500;font-size:.9rem;display:block;margin-bottom:.2rem}
input,textarea{width:100%;padding:.75rem;border:1px solid #3a5577;background:#0e2039;color:#fff;font:inherit;border-radius:3px}
.soc{display:flex;gap:.6rem;flex-wrap:wrap;list-style:none;padding:0}.soc a{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #3a5577;padding:.4rem .8rem;text-decoration:none;font-size:.88rem;border-radius:3px}.soc a:hover{border-color:var(--gold2);color:var(--gold2)}.soc svg{width:15px;height:15px;fill:currentColor}
footer{background:#0a1220;color:#a6b1c0;padding:3rem 0 1.5rem;font-size:.9rem}footer h2{font-size:1.3rem;color:#fff}footer ul{list-style:none;padding:0}footer .grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.disc{border:1px solid #26344a;padding:1rem;margin:2rem 0 1rem;font-size:.82rem;color:#c0c8d4}
.sk h3{font-size:1rem}.sk ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.sk li{border:1px solid var(--line);padding:.25rem .7rem;border-radius:20px;font-size:.85rem;background:#fff}
.notice{background:var(--gold2);color:var(--navy);text-align:center;padding:.6rem 4%;font-size:.92rem;font-weight:500}.notice a{font-weight:600}
.item{display:grid;gap:.35rem}.item .meta{font-size:.82rem;color:var(--muted)}.item img.pic{max-width:100%;max-height:380px;object-fit:contain;border:1px solid var(--line);border-radius:3px;background:#fff}.item a.src{font-weight:600;color:var(--navy);font-size:.92rem}
.crest{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:1rem}.crest img{height:56px;width:auto}.crest .fl{height:52px;border:1px solid rgba(255,255,255,.35);border-radius:2px}@media(min-width:700px){.crest img{height:68px}.crest .fl{height:62px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fw div{transition:none;opacity:1;transform:none}}

h1.ph1{font-size:clamp(1.9rem,4.5vw,2.8rem);margin-bottom:.6rem}.dk h1{color:#fff}main{min-height:62vh}
.logo{display:inline-flex;align-items:center;gap:.6rem}.logo svg{width:32px;height:32px;flex:none}
nav a[aria-current=page]{color:var(--gold2);font-weight:600}
@media(max-width:1220px){nav a[aria-current=page]{color:var(--gold2)}}

.crest{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:.8rem}
.cr{margin:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}
.cr:first-child{align-items:flex-start;text-align:left}.cr:last-child{align-items:flex-end;text-align:right}
.cap{font:600 .82rem/1.3 var(--sans);color:var(--gold2);position:relative;padding-bottom:.35rem;opacity:0;animation:capIn .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--d,0s)}
.cap:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--gold2);transform:scaleX(0);transform-origin:left;animation:capLine .8s ease forwards;animation-delay:calc(var(--d,0s) + .5s)}
.cr:last-child .cap:after{transform-origin:right}.cr:nth-child(2) .cap:after{transform-origin:center}
.cr:nth-child(2) .cap{color:#fff}
@keyframes capIn{from{opacity:0;transform:translateY(-12px);letter-spacing:.12em}to{opacity:1;transform:none;letter-spacing:0}}
@keyframes capLine{to{transform:scaleX(1)}}
@media(min-width:700px){.cap{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.cap{animation:none;opacity:1}.cap:after{animation:none;transform:none}}
