/* THE DARK MUSEUM — CASTLE AFTER DARK
   Visual identity: #000, graphite, silver, bone white, electric blood red.
   No gold, bronze, cream panels or warm paper surfaces. */
@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700&family=Cinzel:wght@400;500;600;700&family=Inter:wght@300;400;500;600&display=swap');
:root{
 --ink:#000!important;--ink2:#050505!important;--cream:#e9eaeb!important;--copper:#ff1535!important;--edge:#2f3034!important;--muted:#8f929a!important;
 --serif:'Cinzel',Georgia,serif!important;
 --display:'Cinzel Decorative','Cinzel',Georgia,serif!important;
 --sans:'Inter',Arial,sans-serif!important;
 --blood:#ff1334;--blood-bright:#ff264a;--pale:#f3f4f5;--silver:#c4c6cc;--ash:#8a8d94;--line:#26272a;
}
html{background:#000!important;scroll-padding-top:88px}
body{background:#000!important;color:var(--pale)!important;font-family:var(--sans);font-weight:300;letter-spacing:.01em}
a,button{transition:color .18s,border-color .18s,background .18s}
a:hover{color:#ff2545}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(255,255,255,.008) 4px);opacity:.38;z-index:1000}
.opening-line{background:#060606!important;border-top:3px solid var(--blood);border-bottom:1px solid #202023;color:#a4a6aa;height:34px;letter-spacing:.23em}
.opening-line .top-right{color:#b7b9be}
.site-header{position:sticky;top:0;height:92px;background:rgba(0,0,0,.96)!important;border-bottom:1px solid #2c2c30;backdrop-filter:blur(18px);padding:0 5vw}
.site-header::after{content:"";position:absolute;height:1px;bottom:-1px;left:5vw;width:145px;background:#ff1034}
.brand{gap:13px}
.brand-mark{width:46px;height:52px;border:0;border-left:1px solid #797b80;border-right:1px solid #797b80;border-radius:0;position:relative;font-size:19px;color:#f8f8f9}
.brand-mark::before{content:"";height:1px;position:absolute;top:3px;left:-8px;right:-8px;background:#ff1334}
.brand-mark::after{content:"";height:1px;position:absolute;bottom:2px;left:-8px;right:-8px;background:#585b60}
.brand-word{font:600 18px/1.07 'Cinzel',Georgia,serif;letter-spacing:.14em;color:#f4f4f5}
.brand-word em{font-style:normal;color:#f4f4f5}
.header-nav{display:flex;gap:40px}
.header-nav a{font:500 11px/1 'Cinzel',serif;letter-spacing:.1em;color:#c2c3c7;position:relative;padding:15px 0}
.header-nav a::after{content:"";position:absolute;bottom:7px;left:0;width:0;height:1px;background:var(--blood);transition:width .2s}
.header-nav a:hover{color:#fff}.header-nav a:hover::after{width:100%}
.header-inquire{border:1px solid #ff1535;background:transparent;color:#f2f2f2;font:600 10px 'Cinzel',serif;letter-spacing:.14em;padding:17px 22px}
.header-inquire span{color:#ff2343}
.header-inquire:hover{background:#ff1535;color:#fff}.header-inquire:hover span{color:#fff}
.menu-toggle span{background:#f3f3f3}
.hero,.castle-hero{isolation:isolate;min-height:740px;height:min(920px,calc(100svh - 125px));display:block;position:relative;background:#000!important;overflow:hidden}
.castle-backdrop{position:absolute;inset:0;z-index:-2;background:url('/assets/castle-night.svg') 52% center /cover no-repeat;filter:grayscale(.08) contrast(1.25)}
.castle-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.97) 18%,rgba(0,0,0,.74) 38%,rgba(0,0,0,.18) 70%,rgba(0,0,0,.07) 100%),linear-gradient(0deg,#000 0%,transparent 28%,rgba(0,0,0,.32) 100%)}
.castle-inner{height:100%;max-width:1600px;margin:0 auto;padding:80px 7vw 126px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative}
.castle-overline{display:flex;align-items:center;gap:16px;font:600 10px 'Cinzel',serif;letter-spacing:.3em;color:#e0e1e4;margin-bottom:27px}
.castle-overline::before{content:"";height:1px;width:45px;background:var(--blood)}
.castle-wordmark{font:400 clamp(68px,8.1vw,142px)/.9 'Cinzel Decorative',serif;letter-spacing:-.06em;color:#f6f6f7;text-shadow:0 8px 45px #000;max-width:900px;margin:0}
.castle-wordmark span{display:block}
.castle-wordmark .red-word{color:var(--blood);text-shadow:0 0 28px #ff002a44}
.castle-ribbon{font:600 clamp(10px,1.05vw,15px) 'Cinzel',serif;letter-spacing:.4em;color:#e5e5e8;margin-top:31px;border-top:1px solid #48484c;padding-top:17px}
.castle-copy{max-width:445px;font:300 14px/2 var(--sans);color:#a4a5ad;margin:32px 0 25px}
.castle-cta{display:inline-flex;align-items:center;gap:42px;border:1px solid #ff1a3c;background:#ee0b2c;color:#fff;font:600 11px 'Cinzel',serif;letter-spacing:.18em;padding:22px 25px}
.castle-cta:hover{background:#fff;border-color:#fff;color:#080808}
.castle-cta span{font:24px var(--sans)}
.castle-seal{position:absolute;right:7vw;bottom:84px;width:100px;height:100px;border:1px solid #9a9ca1;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#c1c3c8;font:500 12px 'Cinzel',serif;letter-spacing:.1em;background:#0006}
.castle-seal::before{content:"✥";position:absolute;top:-17px;font-size:24px;color:var(--blood)}
.castle-seal i{font-style:normal;font-size:28px}
.castle-foot{position:absolute;bottom:0;left:5vw;right:5vw;height:64px;border-top:1px solid #35363a;display:flex;align-items:center;justify-content:space-between;font:500 10px 'Cinzel',serif;letter-spacing:.19em;color:#898b91}
.castle-foot em{color:#ff1839;font-style:normal}
.manifesto-band{background:#000!important;color:#d8d9dc!important;border-top:1px solid #2c2c30;border-bottom:1px solid #2c2c30;padding:30px 4vw;gap:20px}
.manifesto-band>span:not(.ornament){font:500 11px 'Cinzel',serif;letter-spacing:.17em}
.manifesto-band .ornament{color:#ff1637!important;font-size:11px}
.section-number,.kicker,.eyebrow{color:var(--blood)!important;font-family:'Cinzel',serif;font-weight:600;letter-spacing:.22em}
.intro-section,.catalogue,.philosophy,.inquiries,.rooms-section,.quote-section,.interlude{background:#000!important;color:#e6e6e9!important}
.intro-section,.catalogue,.philosophy{max-width:none;padding:130px 8vw}
.intro-heading h2,.room-copy h2,.philosophy h2,.inquiries h2,.catalogue-head h2,.interlude h2{font-family:'Cinzel Decorative',Georgia,serif!important;color:#fafafa!important;font-weight:400;letter-spacing:-.05em}
.intro-heading h2 i,.room-copy h2 i,.philosophy h2 i,.inquiries h2 i,.catalogue-head h2 i,.interlude h2 i{font-family:'Cinzel',serif!important;font-style:normal;color:#f4f4f5!important}
.intro-heading h2 i::after,.room-copy h2 i::after,.philosophy h2 i::after,.inquiries h2 i::after{content:"";display:block;width:95px;border-bottom:2px solid #ff1437;margin:18px 0 0}
.intro-bottom p,.catalogue-head p,.room-copy>p:last-child,.philosophy-grid>div>p,.inquiries-head p{color:#91939b!important}
.text-link,.link-arrow{color:#e6e7e9;border-bottom-color:#ff1437!important;font-family:'Cinzel',serif;letter-spacing:.15em}
.text-link span,.link-arrow span{color:#ff1537!important}
.feature-pair{gap:36px}
.feature-second{margin-top:70px}
.feature-image,.feature-second .feature-image img,.obj-photo{background:#080809!important}
.feature-image{border:1px solid #292a2d;overflow:hidden}
.feature-image img{filter:grayscale(.15) contrast(1.04)}
.feature-second .feature-image img{background:radial-gradient(ellipse,#141519 0%,#030303 80%)!important}
.feature-image:hover{border-color:#ff1537}
.feature-caption{border-bottom:1px solid #34353a}
.feature-caption b{font:400 27px 'Cinzel',serif;color:#f2f2f2}
.feature-caption small{color:#8c8e95;letter-spacing:.12em}
.corner-motif{background:#000!important;color:#f5f5f5;border-left:2px solid #ff1637;font-family:'Cinzel',serif}
.round-arrow{border:1px solid #ff1537;background:transparent;color:#ff2444}
.round-arrow:hover{background:#ff1537;color:#fff}
.quote-section{border-block:1px solid #212226;padding:125px 20px 140px;background:radial-gradient(ellipse at center,#131316 0%,#000 65%)!important}
.quote-symbol{color:#ff1334;font-family:'Cinzel Decorative',serif}
.quote-section blockquote{font-family:'Cinzel',serif;font-size:clamp(34px,3.65vw,59px);letter-spacing:-.02em;color:#e7e7ea;line-height:1.4}
.quote-section blockquote i{font-family:'Cinzel',serif;color:#ff2444!important;font-style:normal}
.quote-credit{color:#7e8189}
.rooms-section{border-top:1px solid #232428;border-bottom:1px solid #232428;grid-template-columns:43% 52%;gap:5%;padding:135px 8vw}
.room{border-color:#303136!important;color:#e9e9eb}
.room:first-child{border-top-color:#303136}
.room>span,.room b{color:#ff1838!important}
.room strong{font-family:'Cinzel',serif;font-weight:400;color:#e8e8eb}
.room small{color:#858790!important}
.room:hover strong{color:#ff2444}
.catalogue-top{border-bottom:1px solid #26272b;padding-bottom:22px}
.catalogue-note{color:#9698a0}
.catalogue-head h2{font-size:clamp(65px,7vw,116px)}
.catalogue-controls{border-color:#26272a}
.filter{background:#000!important;border:1px solid #38393e;color:#e1e1e4;font:500 9px 'Cinzel',serif;padding:13px 17px}
.filter.active,.filter:hover{background:#ff1637!important;border-color:#ff1637;color:#fff!important}
.result-count{color:#a5a7ac}
.object-grid{row-gap:65px;column-gap:28px}
.obj-photo{border:1px solid #25262a;transition:border-color .22s}
.obj-photo:hover{border-color:#ff1537}
.obj-photo img{filter:contrast(1.1) saturate(.8);background:#050505}
.object-card.type-art .obj-photo img{filter:grayscale(.09) contrast(1.06)}
.obj-no{color:#fff;font:500 10px 'Cinzel',serif;background:#000a;padding:8px 12px}
.obj-expand{border:1px solid #ff1537;background:#090909;color:#ff2949}
.obj-info h3{color:#f2f2f2;font:400 23px/1.38 'Cinzel',serif}
.obj-info small{color:#f91838;font:600 9px 'Cinzel',serif}
.obj-info p{color:#91939b}
.obj-price{color:#eeeeef!important}
.obj-go{color:#ff2444}
.empty-state{border:1px solid #29292d}
.empty-state h3{font-family:'Cinzel',serif;color:#fff}
.empty-state p{color:#9799a0}
.empty-state a{color:#ff1537}
.catalogue-disclaimer{border-color:#292a30;color:#8e9097}
.interlude{border-block:1px solid #292a2c;grid-template-columns:1fr 1fr}
.interlude-left{background:#090909}
.interlude-left>img{filter:grayscale(.5) contrast(1.12) brightness(.66)}
.vertical-eyebrow{background:#000b;color:#e8e8ea;border-left:2px solid #ff1537}
.interlude-right{background:radial-gradient(circle at 100% 50%,#101115 0%,#000 72%);padding:70px 10%}
.interlude p:not(.kicker){color:#989aa0}
.light-button{background:#000;color:#fff;border:1px solid #ff1537;font-family:'Cinzel',serif}
.light-button:hover{background:#ff1537;color:#fff}
.philosophy-grid>div>p{color:#d5d6d9!important}
.principles{border-color:#28292d}
.principles>div{border-color:#26272a}
.principles span{color:#ff1537}
.principles strong{color:#eaeaed}
.principles p{color:#989ba2}
.inquiries{border-top:1px solid #292a2e;padding:130px 8vw}
.inquiries .section-number{color:#ff1537}
.inquiry-form{border-top:1px solid #36373b;padding-top:34px}
.inquiry-form label{color:#c1c3c9!important;font-family:'Cinzel',serif;font-size:10px}
.inquiry-form input:not([type=checkbox]),.inquiry-form select,.inquiry-form textarea{border:1px solid #292b2f!important;background:#070708!important;color:#f4f4f5!important;padding:17px 18px!important;border-radius:0;font-family:'Inter',sans-serif!important;font-size:13px}
.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{border-color:#ff1537!important;outline:1px solid #ff1537}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#777981!important}
.inquiry-form .consent{font-family:'Inter',sans-serif;color:#989ba2!important}
.consent input{accent-color:#ff1537}
.submit-button{background:#ff1235!important;color:#fff!important;border:1px solid #ff1235!important;font-family:'Cinzel',serif}
.submit-button:hover{background:#fff!important;color:#000!important;border-color:#fff!important}
.form-status{color:#d3d3d8}.form-status.error{color:#ff2545}.form-status.success{color:#bbbfc4}
.footer{background:#000!important;border-top:1px solid #292a2d;padding:100px 8vw 30px}
.footer-wordmark{color:#f1f2f4;font-family:'Cinzel Decorative',serif;font-size:clamp(65px,8.5vw,140px);line-height:1.04}
.footer-wordmark i{font-family:'Cinzel Decorative',serif;color:#ff1334!important;font-style:normal}
.footer-wordmark span{color:#ff1537}
.footer-info>span,.footer-info>div,.footer-bottom{color:#9a9da3}
.footer-info a:hover{color:#ff2545}
.footer-bottom{border-color:#27282c}
.object-dialog{background:#060607!important;color:#eee!important;border:1px solid #63656d}
.object-dialog::backdrop{background:#000e}
.dialog-close{background:#ff1334;color:#fff;border-color:#ff1334}
.dialog-content{background:#050505}
.detail-photo{background:#101114!important}
.detail-data{background:#070708}
.detail-data .micro{color:#ff1738}
.detail-data h2{color:#fff;font-family:'Cinzel',serif}
.detail-data h3{color:#aeb0b8;font-family:'Cinzel',serif}
.detail-data p{color:#9b9da4}
.detail-data .detail-price{color:#fff}
.detail-data button{background:#ff1334;color:#fff;font-family:'Cinzel',serif}
.detail-gallery{background:linear-gradient(0deg,#000f,#000a 78%,transparent)}
.detail-gallery-caption{color:#f3f3f3}
.detail-gallery-btn{background:#030303;border-color:#38393c}
.detail-gallery-btn.active,.detail-gallery-btn:hover{border-color:#ff1537}
.privacy-content{color:#e2e4e8}.privacy-content p{color:#9799a0}.privacy-content h1,.privacy-content h2{font-family:'Cinzel',serif}
@media(max-width:1100px){
 .header-nav{gap:19px}
 .castle-wordmark{font-size:clamp(62px,8.1vw,115px)}
 .feature-caption b{font-size:20px}
 .footer-wordmark{font-size:clamp(60px,8vw,112px)}
}
@media(max-width:760px){
 .opening-line{height:30px}
 .site-header{height:78px}
 .site-header::after{left:5vw;width:66px}
 .brand-word{font-size:12px;letter-spacing:.1em}
 .brand-mark{width:37px;height:43px;font-size:16px}
 .header-nav{top:78px!important;background:#050505!important;border-bottom:1px solid #ff1537!important}
 .header-nav a{font-size:13px;padding:12px 0}
 .header-inquire{font-size:8px;padding:13px 9px}
 .castle-hero{min-height:700px;height:87svh}
 .castle-backdrop{background-size:auto 100%;background-position:60% center;opacity:.9}
 .castle-hero::before{background:linear-gradient(0deg,#000 0%,#000b 25%,#0003 60%,#000a 100%),linear-gradient(90deg,#000a,transparent)}
 .castle-inner{padding:120px 6vw 113px;justify-content:flex-end}
 .castle-wordmark{font-size:clamp(51px,11vw,80px)}
 .castle-overline{font-size:9px;letter-spacing:.15em}
 .castle-ribbon{font-size:10px;letter-spacing:.15em}
 .castle-copy{font-size:13px;line-height:1.7;margin:21px 0}
 .castle-seal{display:none}
 .castle-foot{height:48px;font-size:8px;letter-spacing:.09em}
 .castle-foot span:last-child{display:none}
 .manifesto-band{gap:14px;padding:26px 5vw}
 .manifesto-band>span:not(.ornament){font-size:10px}
 .intro-section,.catalogue,.philosophy,.rooms-section,.inquiries{padding:85px 6vw}
 .intro-heading h2,.room-copy h2,.philosophy h2,.inquiries h2{font-size:clamp(43px,8.8vw,69px);line-height:1.08}
 .feature-second{margin-top:0}
 .feature-caption b{font-size:19px}
 .quote-section{padding:90px 5vw}
 .quote-section blockquote{font-size:clamp(27px,5.6vw,43px)}
 .rooms-section{grid-template-columns:1fr;gap:28px}
 .room{grid-template-rows:auto auto;min-height:100px}
 .room strong{font-size:20px}
 .catalogue-head h2{font-size:clamp(54px,10vw,82px)}
 .obj-info h3{font-size:20px}
 .interlude-right{padding:85px 6vw}
 .interlude h2{font-size:clamp(44px,9.5vw,73px)}
 .philosophy-grid h2{font-size:clamp(46px,9vw,76px)}
 .inquiries h2{font-size:clamp(44px,9vw,75px)}
 .inquiry-form{margin-top:40px}
 .footer{padding:70px 6vw 25px}
 .footer-wordmark{font-size:clamp(56px,11vw,87px)}
}
@media(max-width:480px){
 .castle-hero{min-height:680px}
 .castle-wordmark{font-size:clamp(48px,10.2vw,69px)}
 .castle-overline{font-size:8px}
 .castle-cta{padding:17px 18px;font-size:10px}
 .manifesto-band>span:not(.ornament){font-size:8px}
 .feature-image img,.feature-second .feature-image img{height:310px}
 .obj-photo img{height:370px}
 .footer-wordmark{font-size:60px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
