:root {
    --cms-gold:#b87845;
    --cms-gold-light:#d9b47f;
    --cms-gold-dark:#704229;
    --cms-panel:rgba(35,25,22,.9);
    --cms-panel-soft:rgba(49,35,30,.76);
    --cms-muted:#bfb1a7;
    --cms-text:#eee2d5;
    --cms-line:rgba(184,120,69,.26);
    --cms-radius:18px;
    --cms-shadow:0 32px 90px rgba(0,0,0,.48);
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
html, body { max-width:100%; overflow-x:hidden; }
body.site-presentation { color:var(--cms-text); background:#120d0c; }
body.cms-lightbox-open { overflow:hidden; }
::selection { color:#16120c; background:var(--cms-gold); }

.cms-scroll-progress { position:fixed; z-index:1300; top:0; left:0; width:100%; height:2px; pointer-events:none; }
.cms-scroll-progress span { display:block; width:100%; height:100%; background:linear-gradient(90deg,var(--cms-gold-dark),var(--cms-gold-light)); box-shadow:0 0 15px rgba(223,183,108,.55); transform:scaleX(0); transform-origin:left; }
.cms-ambient { position:fixed; z-index:-1; inset:0; pointer-events:none; background:radial-gradient(circle at 18% 38%,rgba(141,67,40,.12),transparent 31%),radial-gradient(circle at 82% 64%,rgba(184,120,69,.08),transparent 28%); }
.hero-video-container { background-position:center; background-size:cover; filter:saturate(.72) sepia(.12) contrast(1.05); }
.hero-video-overlay { background:linear-gradient(180deg,rgba(21,13,11,.18) 0%,rgba(25,17,15,.64) 46%,#120d0c 96%) !important; }

.topbar { width:100%; height:72px; padding:0 42px; background:linear-gradient(180deg,rgba(28,19,17,.91),rgba(28,19,17,.7)); border-bottom:1px solid rgba(184,120,69,.19); box-shadow:0 10px 40px rgba(0,0,0,.2); backdrop-filter:blur(18px) saturate(1.15); transition:height .3s ease,background .3s ease,box-shadow .3s ease; }
.topbar.is-scrolled { height:58px; background:rgba(28,19,17,.96); box-shadow:0 14px 40px rgba(0,0,0,.4); }
.topbar-logo { display:flex; align-items:center; gap:12px; text-decoration:none; }
.logo-mark { display:grid; width:34px; height:34px; place-items:center; color:#17120a; font-family:Cinzel,serif; font-size:17px; font-weight:800; background:linear-gradient(145deg,var(--cms-gold-light),var(--cms-gold)); border-radius:50% 50% 46% 54%; box-shadow:0 0 0 1px rgba(255,255,255,.18),0 7px 22px rgba(223,183,108,.2); transform:rotate(-5deg); }
.logo-text { color:#f4ead7; text-shadow:0 1px 18px rgba(223,183,108,.12); }
.topbar-right { gap:10px; }
.nav-link { position:relative; overflow:hidden; border:1px solid transparent; border-radius:10px; }
.nav-link::after { content:""; position:absolute; right:14px; bottom:5px; left:14px; height:1px; background:var(--cms-gold); transform:scaleX(0); transition:transform .22s ease; }
.nav-link:hover { color:#f4ead7; background:rgba(223,183,108,.06); border-color:rgba(223,183,108,.12); }
.nav-link:hover::after { transform:scaleX(1); }
.cms-language-picker { position:relative; margin:0 0 0 8px; color:#eadbc9; font-family:Inter,system-ui,sans-serif; }
.cms-language-picker summary { display:grid; grid-template-columns:24px auto minmax(0,1fr) 10px; min-width:154px; height:38px; padding:0 10px; align-items:center; gap:7px; list-style:none; background:rgba(45,31,27,.92); border:1px solid rgba(184,120,69,.28); border-radius:9px; cursor:pointer; transition:border-color .2s ease,box-shadow .2s ease; }
.cms-language-picker summary::-webkit-details-marker { display:none; }
.cms-language-picker summary::after { content:""; width:6px; height:6px; border-right:1px solid #d9b47f; border-bottom:1px solid #d9b47f; transform:translateY(-2px) rotate(45deg); transition:transform .18s ease; }
.cms-language-picker[open] summary::after { transform:translateY(2px) rotate(225deg); }
.cms-language-picker summary:hover,.cms-language-picker summary:focus-visible,.cms-language-picker[open] summary { border-color:rgba(217,180,127,.62); box-shadow:0 0 0 3px rgba(184,120,69,.1); outline:none; }
.cms-language-picker img { display:block; width:24px; height:16px; object-fit:cover; border:1px solid rgba(255,255,255,.2); border-radius:3px; box-shadow:0 2px 5px rgba(0,0,0,.28); }
.cms-language-picker strong { font-size:11px; letter-spacing:.06em; }
.cms-language-picker summary span { overflow:hidden; color:#b9aa9e; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.cms-language-menu { position:absolute; z-index:1500; top:calc(100% + 8px); right:0; display:grid; width:210px; padding:7px; background:rgba(35,24,21,.98); border:1px solid rgba(184,120,69,.28); border-radius:11px; box-shadow:0 20px 50px rgba(0,0,0,.48); backdrop-filter:blur(16px); }
.cms-language-menu a { display:grid; grid-template-columns:24px 30px 1fr 16px; min-height:38px; padding:7px 9px; align-items:center; gap:7px; color:#bcaea2; text-decoration:none; border:1px solid transparent; border-radius:7px; transition:color .18s ease,background .18s ease,border-color .18s ease; }
.cms-language-menu a:hover { color:#f0e3d4; background:rgba(184,120,69,.09); border-color:rgba(184,120,69,.13); }
.cms-language-menu a.active { color:#f3e5d3; background:rgba(184,120,69,.14); }
.cms-language-menu a span { font-size:11px; }
.cms-language-menu a i { color:#d9b47f; font-size:12px; font-style:normal; }

.main-content { display:block; width:100%; max-width:1280px; margin:0 auto !important; padding:clamp(220px,22vw,280px) 28px 90px !important; }
.content-section { width:100%; max-width:1180px; margin:0 auto; }
.cms-intro { display:flex; align-items:center; justify-content:center; gap:18px; margin:0 0 34px; color:var(--cms-gold); font-family:Cinzel,serif; text-align:center; text-transform:uppercase; }
.cms-intro p { margin:0; font-size:12px; font-weight:600; letter-spacing:.28em; }
.cms-intro > span { width:54px; height:1px; background:linear-gradient(90deg,transparent,var(--cms-gold)); opacity:.72; }
.cms-intro > span:last-child { background:linear-gradient(90deg,var(--cms-gold),transparent); }
.cards-container { display:flex; flex-direction:column; width:100%; gap:54px; overflow:visible; background:transparent; border:0; }
.cards-container::before { display:none; }

.cms-card { position:relative; isolation:isolate; width:100%; max-width:1040px; margin:0 auto; padding:48px; overflow:visible; background:linear-gradient(145deg,rgba(41,29,25,.93),rgba(22,15,14,.96)); border:1px solid var(--cms-line); border-radius:var(--cms-radius); box-shadow:var(--cms-shadow),inset 0 1px 0 rgba(255,255,255,.035); }
.cms-card::before { display:none; }
.cms-card::after { content:""; position:absolute; top:-1px; left:42px; width:110px; height:1px; background:linear-gradient(90deg,var(--cms-gold),transparent); box-shadow:0 0 16px rgba(223,183,108,.35); }
.cms-card + .cms-card { margin-top:0; }
.cms-card + .cms-card::marker { display:none; }
.cms-card[data-reveal] { opacity:0; transform:translateY(14px); transition:opacity .34s ease-out,transform .38s cubic-bezier(.2,.75,.25,1); }
.cms-card[data-reveal].is-visible { opacity:1; transform:none; }
.cms-card-header { position:relative; width:100%; margin:0 0 34px; padding-bottom:26px; text-align:center; border-bottom:1px solid rgba(184,120,69,.17); }
.cms-card-header::after { content:""; position:absolute; bottom:-1px; left:50%; width:110px; height:1px; background:linear-gradient(90deg,transparent,var(--cms-gold),transparent); transform:translateX(-50%); }
.cms-card.align-center .cms-card-header,.cms-card.align-right .cms-card-header { text-align:center; }
.cms-card.align-center .cms-card-header::after,.cms-card.align-right .cms-card-header::after { right:auto; left:50%; background:linear-gradient(90deg,transparent,var(--cms-gold),transparent); transform:translateX(-50%); }
.cms-card .feature-title { display:flex; align-items:center; justify-content:center; gap:clamp(12px,2.4vw,26px); margin:0; color:#ead9c6; font-family:Cinzel,serif; font-size:clamp(25px,3.4vw,38px); font-weight:600; line-height:1.2; letter-spacing:.015em; text-align:center; text-wrap:balance; }
.cms-card .feature-title::before,.cms-card .feature-title::after { display:block; width:clamp(38px,8vw,92px); height:9px; flex:0 1 92px; content:""; background:linear-gradient(90deg,transparent 0 8%,rgba(184,120,69,.35) 8% 38%,transparent 38% 46%,var(--cms-gold) 46% 54%,transparent 54% 62%,rgba(184,120,69,.35) 62% 92%,transparent 92%); clip-path:polygon(0 44%,38% 44%,42% 0,46% 44%,50% 44%,54% 0,58% 44%,100% 44%,100% 56%,58% 56%,54% 100%,50% 56%,46% 56%,42% 100%,38% 56%,0 56%); opacity:.9; }
.cms-card .feature-title::after { transform:scaleX(-1); }
.cms-card-content { display:grid; align-items:center; gap:48px; min-width:0; }
.cms-card.ratio-40-60 .cms-card-content { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
.cms-card.ratio-50-50 .cms-card-content { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cms-card.ratio-60-40 .cms-card-content { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); }
.cms-copy { min-width:0; text-align:left; }
.cms-card.align-center .cms-copy { text-align:center; }
.cms-card.align-right .cms-copy { text-align:right; }
.cms-body { color:var(--cms-muted); font-family:Inter,system-ui,sans-serif; font-size:15px; line-height:1.85; }
.cms-body p { margin:0 0 19px; }
.cms-body p:last-child { margin-bottom:0; }
.cms-body strong { color:#eee2cc; font-weight:600; }
.cms-body h2,.cms-body h3,.cms-body h4 { margin:1.45em 0 .58em; color:#eee2cc; font-family:Cinzel,serif; line-height:1.3; }
.cms-body a { color:var(--cms-gold-light); text-decoration:none; background-image:linear-gradient(var(--cms-gold),var(--cms-gold)); background-position:0 100%; background-repeat:no-repeat; background-size:100% 1px; transition:color .2s ease,background-size .2s ease; }
.cms-body a:hover { color:#fff2d9; background-size:100% 2px; }
.cms-body blockquote { position:relative; margin:26px 0; padding:20px 22px 20px 58px; color:#d3d9e4; text-align:left; background:linear-gradient(110deg,rgba(223,183,108,.1),rgba(255,255,255,.018)); border:1px solid rgba(223,183,108,.18); border-radius:12px; box-shadow:inset 3px 0 0 var(--cms-gold); }
.cms-body blockquote::before { content:"✦"; position:absolute; top:19px; left:22px; color:var(--cms-gold); font-size:18px; text-shadow:0 0 15px rgba(223,183,108,.55); }
.cms-body hr { width:min(280px,70%); height:1px; margin:32px auto; border:0; background:linear-gradient(90deg,transparent,var(--cms-gold),transparent); opacity:.6; }
.cms-position-grid { display:grid; grid-template:"top top" auto "left right" auto "bottom bottom" auto/1fr 1fr; gap:clamp(18px,3vw,38px); width:100%; margin:30px 0; }
.cms-position-slot { min-width:0; }
.cms-position-top { grid-area:top; text-align:center; }
.cms-position-left { grid-area:left; text-align:left; }
.cms-position-right { grid-area:right; text-align:right; }
.cms-position-bottom { grid-area:bottom; text-align:center; }
.cms-position-slot > :first-child { margin-top:0; }
.cms-position-slot > :last-child { margin-bottom:0; }
.cms-content-box { margin:28px 0; padding:clamp(22px,4vw,34px); color:#d7d0ca; text-align:left; background:linear-gradient(135deg,rgba(223,183,108,.035),rgba(255,255,255,.012)); border:1px solid rgba(223,183,108,.16); border-radius:14px; box-shadow:0 14px 36px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.018); }
.cms-content-box > h2:first-child,.cms-content-box > h3:first-child,.cms-content-box > h4:first-child { margin-top:0; color:#eadcc8; }
.cms-content-box > :last-child { margin-bottom:0; }
.cms-content-box-row { margin:8px 0; padding:11px 14px; color:#d6d0cb; background:rgba(255,255,255,.018); border-left:2px solid rgba(223,183,108,.48); border-radius:5px; box-shadow:inset 0 1px 0 rgba(255,255,255,.012); }
.cms-content-box-row strong { color:#f1e6d8; }
.cms-stage-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; width:100%; margin:30px 0; text-align:left; }
.cms-stage-card { min-width:0; padding:22px 18px; color:#d7d0ca; background:linear-gradient(145deg,rgba(223,183,108,.045),rgba(255,255,255,.015)); border:1px solid rgba(223,183,108,.18); border-radius:12px; box-shadow:0 14px 34px rgba(0,0,0,.12); }
.cms-stage-card > h2:first-child,.cms-stage-card > h3:first-child,.cms-stage-card > h4:first-child { margin:0 0 13px; color:#eadcc8; font-size:16px; letter-spacing:.02em; }
.cms-stage-level { margin:0 0 14px; color:#cf7148; font-size:13px; }
.cms-stage-icons { display:flex; flex-wrap:wrap; justify-content:center; gap:7px; width:max-content; max-width:100%; margin:0 auto 22px; padding:10px; background:rgba(0,0,0,.11); border:1px solid rgba(223,183,108,.12); border-radius:8px; }
.cms-stage-icon { display:grid; width:43px; height:43px; padding:3px; place-items:center; overflow:hidden; color:#8f96a3; font-size:9px; line-height:1.15; text-align:center; background:rgba(5,7,10,.2); border:1px solid rgba(223,183,108,.13); border-radius:6px; }
.cms-stage-icon img { display:block; width:35px !important; max-width:35px !important; height:35px !important; max-height:35px !important; margin:0 !important; object-fit:contain; border:0 !important; border-radius:4px; box-shadow:none !important; }
.cms-stage-items { display:grid; gap:6px; }
.cms-stage-item { min-height:40px; padding:10px 13px; color:#d4d0cb; line-height:1.45; background:rgba(4,6,9,.19); border-left:2px solid rgba(207,92,48,.72); border-radius:5px; }
.cms-stage-item strong { color:#eee4d7; }

.cms-body ul,.cms-body ol { display:grid; gap:10px; margin:22px 0; padding:0; list-style:none; }
.cms-body ol { counter-reset:cms-list-item; }
.cms-body ul > li,.cms-body ol > li { position:relative; min-height:48px; margin:0; padding:13px 18px 13px 50px; overflow:hidden; color:#c3cad7; text-align:left; background:linear-gradient(105deg,rgba(223,183,108,.095),rgba(255,255,255,.018) 52%,rgba(0,0,0,.08)); border:1px solid rgba(223,183,108,.16); border-radius:9px; box-shadow:inset 3px 0 0 rgba(223,183,108,.55),0 8px 22px rgba(0,0,0,.12); transition:transform .2s ease,border-color .2s ease,background-color .2s ease; }
.cms-body ul > li::before { content:""; position:absolute; top:50%; left:22px; width:9px; height:9px; border:2px solid var(--cms-gold); border-radius:50%; box-shadow:0 0 0 4px rgba(223,183,108,.09),0 0 12px rgba(223,183,108,.35); transform:translateY(-50%); }
.cms-body ol > li { counter-increment:cms-list-item; }
.cms-body ol > li::before { content:counter(cms-list-item); position:absolute; top:10px; left:14px; display:grid; width:28px; height:28px; place-items:center; color:#16130d; font-size:12px; font-weight:800; line-height:1; background:linear-gradient(135deg,var(--cms-gold-light),var(--cms-gold)); border-radius:7px; box-shadow:0 4px 14px rgba(223,183,108,.22); }
.cms-body ul > li:hover,.cms-body ol > li:hover { border-color:rgba(223,183,108,.34); background-color:rgba(223,183,108,.045); transform:translateX(4px); }
.cms-body li > ul,.cms-body li > ol { margin:12px 0 2px; }

.cms-table-scroll { width:100%; margin:26px 0; overflow-x:auto; border:1px solid rgba(223,183,108,.16); border-radius:12px; box-shadow:0 14px 32px rgba(0,0,0,.14); }
.cms-body table { width:100%; min-width:540px; margin:0; border-collapse:collapse; background:rgba(0,0,0,.18); }
.cms-body th,.cms-body td { padding:14px 16px; text-align:left; vertical-align:top; border:0; border-bottom:1px solid rgba(223,183,108,.12); }
.cms-body tr:last-child td { border-bottom:0; }
.cms-body th { color:#f1dfbe; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; background:linear-gradient(180deg,rgba(223,183,108,.15),rgba(223,183,108,.08)); }
.cms-body tbody tr:nth-child(even) { background:rgba(255,255,255,.018); }
.cms-body tbody tr { transition:background .2s ease; }
.cms-body tbody tr:hover { background:rgba(223,183,108,.055); }

.cms-media-list { display:flex; flex-direction:column; align-items:center; gap:22px; min-width:0; }
.cms-media { width:100%; min-width:0; margin:0; text-align:center; }
.cms-image-static { position:relative; display:block; width:max-content; max-width:100%; margin:auto; }
.cms-lightbox-trigger { position:relative; display:block; width:100%; margin:0; padding:0; overflow:visible; color:inherit; background:transparent; border:0; border-radius:13px; cursor:zoom-in; }
.cms-media img,.cms-gallery img,.cms-slide img { display:block; width:auto; max-width:100%; height:auto; max-height:540px; margin:0 auto; object-fit:contain; image-rendering:auto; border:1px solid rgba(223,183,108,.17); border-radius:12px; box-shadow:0 20px 44px rgba(0,0,0,.28); transition:border-color .25s ease; }
.cms-lightbox-trigger:hover img { border-color:rgba(223,183,108,.38); }
.cms-lightbox-trigger:focus-visible { outline:2px solid var(--cms-gold); outline-offset:4px; }
.cms-body img { width:auto; max-width:100%; height:auto; object-fit:contain; image-rendering:auto; border:1px solid rgba(223,183,108,.16); border-radius:10px; cursor:default; box-shadow:0 16px 36px rgba(0,0,0,.25); }
.cms-body img[data-tooltip] { cursor:help; }
.cms-body img:focus-visible { outline:2px solid var(--cms-gold); outline-offset:4px; }
.cms-inline-click-tooltip { position:fixed; z-index:1900; top:0; left:0; width:max-content; max-width:min(360px,calc(100vw - 32px)); padding:10px 13px; visibility:hidden; color:#f5ead7; font-size:12px; font-weight:500; line-height:1.45; text-align:center; pointer-events:none; opacity:0; background:rgba(7,8,12,.96); border:1px solid rgba(223,183,108,.34); border-radius:9px; box-shadow:0 16px 40px rgba(0,0,0,.52); backdrop-filter:blur(10px); transform:translate(-50%,-100%) translateY(5px); transition:opacity .16s ease,transform .16s ease,visibility .16s ease; }
.cms-inline-click-tooltip.is-visible { visibility:visible; opacity:1; transform:translate(-50%,-100%); }
.cms-inline-click-tooltip.is-below { transform:translate(-50%,0) translateY(-5px); }
.cms-inline-click-tooltip.is-visible.is-below { transform:translate(-50%,0); }
.cms-body figure { margin:26px 0; }
.cms-body figcaption { margin-top:8px; color:#747e90; font-size:11px; text-align:center; }
.cms-video-block { position:relative; width:100%; margin:28px auto; overflow:hidden; background:linear-gradient(145deg,#100b0a,#211714); border:1px solid rgba(184,120,69,.24); border-radius:12px; box-shadow:0 20px 44px rgba(0,0,0,.3); }
.cms-video-ratio-16-9 { aspect-ratio:16/9; }.cms-video-ratio-4-3 { aspect-ratio:4/3; }.cms-video-ratio-1-1 { aspect-ratio:1; }.cms-video-ratio-9-16 { aspect-ratio:9/16; }
.cms-video-align-left { margin-left:0; margin-right:auto; }.cms-video-align-center { margin-right:auto; margin-left:auto; }.cms-video-align-right { margin-right:0; margin-left:auto; }
.cms-video-block video,.cms-video-block iframe { display:block; width:100%; height:100%; object-fit:contain; background:#070504; border:0; }
.cms-video-block iframe { object-fit:fill; }
.cms-video-block:focus-within { border-color:rgba(217,180,127,.55); box-shadow:0 20px 44px rgba(0,0,0,.3),0 0 0 3px rgba(184,120,69,.09); }
.layout-image-left .cms-media-list { grid-column:1; grid-row:1; }
.layout-image-left .cms-copy { grid-column:2; grid-row:1; }
.layout-image-right .cms-copy { grid-column:1; grid-row:1; }
.layout-image-right .cms-media-list { grid-column:2; grid-row:1; }
.layout-text-centered .cms-card-content,.layout-image-top .cms-card-content,.layout-image-bottom .cms-card-content,.layout-full-image .cms-card-content,.layout-gallery .cms-card-content,.layout-slideshow .cms-card-content { grid-template-columns:1fr !important; }
.layout-text-centered .cms-copy { width:100%; max-width:780px; margin:0 auto; text-align:center; }
.layout-image-top .cms-media-list,.layout-full-image .cms-media-list { grid-row:1; }
.layout-image-top .cms-copy,.layout-full-image .cms-copy { grid-row:2; }
.layout-image-bottom .cms-copy { grid-row:1; }
.layout-image-bottom .cms-media-list { grid-row:2; }
.layout-full-image .cms-copy { text-align:center; }

.cms-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr)); align-items:start; gap:16px; }
.cms-gallery-item { position:relative; display:flex; min-height:0; padding:0; overflow:visible; align-items:center; justify-content:center; background:transparent; border:0; border-radius:0; }
.cms-gallery-item img { width:auto; max-width:100%; height:auto; min-height:0; max-height:540px; object-fit:contain; border-radius:12px; }
.cms-gallery-index { position:absolute; right:12px; bottom:12px; display:grid; width:34px; height:28px; place-items:center; color:#f3dfba; font-size:10px; font-weight:700; letter-spacing:.08em; background:rgba(7,8,12,.78); border:1px solid rgba(223,183,108,.28); border-radius:8px; backdrop-filter:blur(8px); }
.cms-slider { min-width:0; }
.cms-slider-stage { position:relative; min-height:260px; overflow:hidden; background:linear-gradient(145deg,#160f0d,#2b1e1a); border:1px solid rgba(184,120,69,.22); border-radius:14px; }
.cms-slide { position:relative; display:none; width:100%; min-height:260px; overflow:hidden; place-items:center; text-align:left; border-radius:0; }
.cms-slide.active { display:grid; animation:cmsSlideIn .45s ease both; }
.cms-slide img { max-height:650px; border:0; border-radius:0; box-shadow:none; }
.cms-slide img.cms-configurable-image.is-custom { width:var(--cms-image-max-width,auto); max-width:100%; height:auto; aspect-ratio:var(--cms-image-custom-ratio,auto); justify-self:center; object-fit:contain; }
.cms-slide-overlay { position:absolute; z-index:2; right:0; bottom:0; left:0; display:block; padding:76px 30px 24px; color:#eee2d5; pointer-events:none; background:linear-gradient(180deg,transparent,rgba(28,18,15,.34) 30%,rgba(20,13,12,.94) 100%); }
.cms-slide-title { display:block; margin-bottom:10px; color:#f0dfbf; font-family:Cinzel,Georgia,serif; font-size:clamp(17px,2vw,25px); font-weight:700; line-height:1.2; letter-spacing:.02em; text-shadow:0 2px 12px rgba(0,0,0,.8); }
.cms-slide-details { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; font-size:clamp(11px,1.25vw,14px); font-weight:650; line-height:1.35; text-shadow:0 2px 9px rgba(0,0,0,.9); }
.cms-slide-details > span { display:inline-flex; align-items:center; gap:7px; }
.cms-slide-details > span::before { width:7px; height:7px; flex:0 0 7px; content:""; background:linear-gradient(145deg,var(--cms-gold-light),#b96d3e); border-radius:2px; box-shadow:0 0 10px rgba(223,183,108,.35); transform:rotate(45deg); }
.cms-media img.cms-configurable-image.is-custom,.cms-gallery img.cms-configurable-image.is-custom,.cms-slide img.cms-configurable-image.is-custom { max-width:min(100%,var(--cms-image-max-width,100%)); max-height:var(--cms-image-max-height,540px); }
.cms-image-tooltip { position:absolute; z-index:5; bottom:16px; left:50%; width:max-content; max-width:calc(100% - 28px); padding:9px 12px; visibility:hidden; color:#f4ead7; font-size:12px; font-weight:500; line-height:1.4; text-align:center; white-space:normal; pointer-events:none; opacity:0; background:rgba(7,8,12,.94); border:1px solid rgba(223,183,108,.3); border-radius:8px; box-shadow:0 12px 30px rgba(0,0,0,.42); backdrop-filter:blur(9px); transform:translate(-50%,6px); transition:opacity .18s ease,transform .18s ease,visibility .18s ease; }
.cms-slide > .cms-image-tooltip { top:16px; bottom:auto; }
.cms-lightbox-trigger:hover .cms-image-tooltip,.cms-lightbox-trigger:focus-visible .cms-image-tooltip,.cms-image-static:hover .cms-image-tooltip { visibility:visible; opacity:1; transform:translate(-50%,0); }
@keyframes cmsSlideIn { from { opacity:0; transform:scale(.985); } to { opacity:1; transform:none; } }
.cms-slider-stage > .slider-prev,.cms-slider-stage > .slider-next { position:absolute; z-index:3; top:50%; display:grid; width:44px; height:44px; padding:0; place-items:center; color:#f8ead0; font-size:20px; background:rgba(7,8,12,.72); border:1px solid rgba(223,183,108,.32); border-radius:50%; cursor:pointer; backdrop-filter:blur(9px); transform:translateY(-50%); transition:.2s ease; }
.cms-slider-stage > .slider-prev:hover,.cms-slider-stage > .slider-next:hover { color:#17120a; background:var(--cms-gold); transform:translateY(-50%) scale(1.06); }
.cms-slider-stage > .slider-prev { left:16px; }
.cms-slider-stage > .slider-next { right:16px; }
.cms-slider-footer { display:flex; align-items:center; justify-content:space-between; min-height:46px; padding:10px 4px 0; }
.cms-slider-dots { display:flex; align-items:center; gap:7px; }
.cms-slider-dots button { width:7px; height:7px; padding:0; background:#555d6d; border:0; border-radius:999px; cursor:pointer; transition:.22s ease; }
.cms-slider-dots button.active { width:26px; background:linear-gradient(90deg,var(--cms-gold-dark),var(--cms-gold-light)); }
.cms-slider-counter { color:#6f7889; font-size:11px; letter-spacing:.1em; }
.cms-slider-counter strong { color:var(--cms-gold-light); }

.cms-lightbox { position:fixed; z-index:2000; inset:0; display:grid; place-items:center; padding:34px; visibility:hidden; opacity:0; background:rgba(13,8,7,.92); backdrop-filter:blur(18px); transition:opacity .25s ease,visibility .25s ease; }
.cms-lightbox.is-open { visibility:visible; opacity:1; }
.cms-lightbox-frame { position:relative; display:grid; width:min(1200px,92vw); height:min(820px,84vh); min-height:0; place-items:center; }
.cms-lightbox-image { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100vh - 100px); object-fit:contain; border:1px solid rgba(223,183,108,.22); border-radius:12px; box-shadow:0 36px 100px rgba(0,0,0,.7); }
.cms-lightbox [hidden] { display:none !important; }
.cms-lightbox-close,.cms-lightbox-prev,.cms-lightbox-next { position:absolute; z-index:2; display:grid; place-items:center; color:#f4e5c8; background:rgba(12,14,21,.82); border:1px solid rgba(223,183,108,.25); cursor:pointer; backdrop-filter:blur(10px); transition:.2s ease; }
.cms-lightbox-close { top:12px; right:12px; width:46px; height:46px; font-size:23px; border-radius:50%; }
.cms-lightbox-prev,.cms-lightbox-next { top:50%; width:46px; height:58px; font-size:24px; border-radius:12px; transform:translateY(-50%); }
.cms-lightbox-prev { left:14px; }
.cms-lightbox-next { right:14px; }
.cms-lightbox-close:hover,.cms-lightbox-prev:hover,.cms-lightbox-next:hover { color:#17120a; background:var(--cms-gold); }
.cms-lightbox-caption { position:absolute; bottom:-26px; left:0; width:100%; color:#959fb0; font-size:12px; text-align:center; }

.cms-scroll-top { position:fixed; z-index:1100; right:26px; bottom:26px; display:grid; width:46px; height:46px; place-items:center; visibility:hidden; color:#17120a; font-size:18px; background:linear-gradient(145deg,var(--cms-gold-light),var(--cms-gold)); border:0; border-radius:50%; box-shadow:0 12px 28px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.14); cursor:pointer; opacity:0; transform:translateY(10px); transition:.24s ease; }
.cms-scroll-top.is-visible { visibility:visible; opacity:1; transform:none; }
.cms-scroll-top:hover { transform:translateY(-3px); box-shadow:0 16px 32px rgba(0,0,0,.4),0 0 20px rgba(223,183,108,.2); }
.cms-footer { display:flex; flex-direction:column; align-items:center; max-width:1040px; margin:0 auto; padding:44px 20px 38px; color:#6e7788; text-align:center; border-top:1px solid rgba(223,183,108,.1); }
.cms-footer-mark { display:grid; width:34px; height:34px; margin-bottom:12px; place-items:center; color:var(--cms-gold); font-family:Cinzel,serif; border:1px solid rgba(223,183,108,.25); border-radius:50%; }
.cms-footer p { margin:0 0 5px; color:#9ba4b4; font-family:Cinzel,serif; font-size:13px; letter-spacing:.08em; }
.cms-footer small { font-size:10px; letter-spacing:.08em; text-transform:uppercase; }

@media (max-width:992px) {
    .cms-card { padding:34px; }
    .cms-card-content,.cms-card.ratio-40-60 .cms-card-content,.cms-card.ratio-50-50 .cms-card-content,.cms-card.ratio-60-40 .cms-card-content { grid-template-columns:1fr; gap:32px; }
    .layout-image-left .cms-media-list { grid-column:1; grid-row:1; }
    .layout-image-left .cms-copy { grid-column:1; grid-row:2; }
    .layout-image-right .cms-copy { grid-column:1; grid-row:1; }
    .layout-image-right .cms-media-list { grid-column:1; grid-row:2; }
    .cms-stage-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .cms-lightbox-prev { left:10px; }
    .cms-lightbox-next { right:10px; }
}

@media (max-width:768px) {
    .topbar { height:62px; padding:0 14px; }
    .logo-mark { width:30px; height:30px; }
    .logo-text { font-size:18px; letter-spacing:1px; }
    .nav-link { padding:9px 10px; }
    .cms-language-picker { margin-left:2px; }
    .cms-language-picker summary { grid-template-columns:22px auto 9px; min-width:82px; padding:0 9px; }
    .cms-language-picker summary span { display:none; }
    .cms-language-picker img { width:22px; height:15px; }
    .cms-language-menu { position:fixed; top:68px; right:10px; width:min(230px,calc(100vw - 20px)); }
    .main-content { min-width:0; padding:200px 12px 54px !important; }
    .content-section,.cards-container,.cms-card { min-width:0; max-width:100%; }
    .cards-container { gap:32px; }
    .cms-intro { gap:10px; margin-bottom:22px; }
    .cms-intro > span { width:25px; }
    .cms-intro p { font-size:10px; letter-spacing:.18em; }
    .cms-card { padding:26px 18px; border-radius:14px; }
    .cms-card::after { left:24px; width:72px; }
    .cms-card-header { margin-bottom:26px; padding-bottom:21px; }
    .cms-card .feature-title { font-size:clamp(23px,8vw,30px); }
    .cms-card .feature-title::before,.cms-card .feature-title::after { width:28px; flex-basis:28px; }
    .cms-body { font-size:14px; line-height:1.78; }
    .cms-body ul > li,.cms-body ol > li { padding-right:14px; }
    .cms-body blockquote { padding:18px 16px 18px 48px; }
    .cms-body blockquote::before { left:18px; }
    .cms-position-grid { grid-template:"top" auto "left" auto "right" auto "bottom" auto/1fr; gap:22px; }
    .cms-content-box { padding:20px 17px; }
    .cms-stage-grid { grid-template-columns:1fr; }
    .cms-stage-card { padding:20px 16px; }
    .cms-gallery { grid-template-columns:1fr; }
    .cms-gallery-item { min-height:0; padding:0; }
    .cms-gallery-item img { min-height:0; max-height:70vh; }
    .cms-slider-stage > .slider-prev,.cms-slider-stage > .slider-next { width:38px; height:38px; }
    .cms-slider-stage > .slider-prev { left:9px; }
    .cms-slider-stage > .slider-next { right:9px; }
    .cms-slide-overlay { padding:58px 18px 17px; }
    .cms-slide-title { margin-bottom:8px; }
    .cms-slide-details { gap:6px 12px; }
    .cms-lightbox { padding:18px; }
    .cms-lightbox-frame { width:94vw; height:78vh; }
    .cms-lightbox-image { max-height:calc(100vh - 150px); }
    .cms-lightbox-close { top:8px; right:8px; }
    .cms-lightbox-prev,.cms-lightbox-next { top:auto; bottom:-52px; width:42px; height:42px; border-radius:50%; transform:none; }
    .cms-lightbox-prev { left:calc(50% - 52px); }
    .cms-lightbox-next { right:calc(50% - 52px); }
    .cms-lightbox-caption { bottom:-82px; }
    .cms-scroll-top { right:16px; bottom:16px; width:42px; height:42px; }
}

@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
    .cms-card[data-reveal] { opacity:1; transform:none; }
}
