
@font-face{font-family:'Playfair Display';src:url('/assets/fonts/playfair-display-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Playfair Display';src:url('/assets/fonts/playfair-display-latin-400-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap;}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;background:#120d19;}
body{margin:0;color:#e8e4ef;font-family:'Inter','Helvetica Neue',Arial,'Noto Sans',sans-serif;
 background:radial-gradient(1200px 620px at 50% -6%, rgba(150,110,190,.20), transparent 62%),
            radial-gradient(900px 520px at 50% 104%, rgba(120,80,160,.13), transparent 60%),
            linear-gradient(170deg,#231a2b 0%,#191223 38%,#120d19 100%);
 background-repeat:no-repeat;background-size:100% 1400px,100% 1000px,100% 100%;
 background-position:top center,bottom center,top center;min-height:100vh;}
a{color:#e3bd7c;text-decoration:none;}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px;}
header.top{padding:30px 0 8px;text-align:center;}
.brand{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:#e3bd7c;
 font-size:19px;letter-spacing:.02em;opacity:.9;}
h1{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:400;color:#e3bd7c;
 text-align:center;line-height:1.1;letter-spacing:.004em;margin:26px 0 0;
 font-size:clamp(28px,5.4vw,54px);text-shadow:0 2px 26px rgba(0,0,0,.55);}
.lede{text-align:center;max-width:660px;margin:16px auto 0;color:#bdb5cc;
 font-size:clamp(14px,1.6vw,17px);line-height:1.65;}
.badge{margin:24px auto 0;width:250px;max-width:80%;height:46px;border:1px solid rgba(200,165,110,.42);
 display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.018);
 font-size:14px;font-weight:600;color:#e3bd7c;letter-spacing:.28em;padding-left:.28em;}
.specs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:22px 0 0;padding:0;list-style:none;}
.specs li{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);
 padding:8px 14px;font-size:13px;color:#cfc7dc;letter-spacing:.04em;}
.hero{margin:38px auto 0;max-width:1000px;}
.hero img{width:100%;height:auto;display:block;border:1px solid rgba(200,165,110,.20);
 box-shadow:0 18px 60px rgba(0,0,0,.55);}
h2{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:400;color:#e3bd7c;
 text-align:center;font-size:clamp(21px,3vw,30px);margin:64px 0 6px;}
.sub{text-align:center;color:#9a92aa;font-size:13.5px;letter-spacing:.06em;margin:0 0 26px;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px;padding:0;list-style:none;margin:0;}
.grid li{display:flex;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.075);
 background:rgba(255,255,255,.022);padding:10px 12px;}
.grid img{width:32px;height:21px;object-fit:cover;flex:none;box-shadow:0 1px 5px rgba(0,0,0,.5);}
.grid .n{font-size:14px;color:#efeaf6;line-height:1.25;}
.grid .c{font-size:10.5px;color:#8f88a0;letter-spacing:.09em;margin-top:2px;}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;padding:0;list-style:none;margin:0;}
.cards a{display:block;border:1px solid rgba(200,165,110,.20);background:rgba(255,255,255,.025);
 padding:18px 16px;transition:border-color .2s,background .2s;}
.cards a:hover{border-color:rgba(200,165,110,.55);background:rgba(255,255,255,.05);}
.cards .t{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:20px;color:#e3bd7c;}
.cards .d{font-size:12.5px;color:#a99fbb;margin-top:7px;line-height:1.5;}
.note{max-width:720px;margin:26px auto 0;text-align:center;color:#a99fbb;font-size:14px;line-height:1.7;
 border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);padding:20px 22px;}
nav.other{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:34px 0 0;}
nav.other a{border:1px solid rgba(255,255,255,.10);padding:9px 15px;font-size:13px;color:#cfc7dc;letter-spacing:.05em;}
nav.other a:hover{border-color:rgba(200,165,110,.5);color:#e3bd7c;}
nav.other a[aria-current]{border-color:rgba(200,165,110,.6);color:#e3bd7c;}
footer{text-align:center;color:#7d7590;font-size:12.5px;padding:66px 0 42px;letter-spacing:.04em;}
footer a{color:#a99fbb;}
@media(max-width:640px){.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;}
 .grid li{padding:9px 10px;gap:9px;} .grid .n{font-size:13px;}}
