@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--c-indigo-deep: #1e1b4b;--c-indigo-royal: #312e81;--c-indigo-mid: #4338ca;--c-amber: #d97706;--c-amber-deep: #92400e;--c-amber-soft: #f59e0b;--c-stone: #b5a082;--c-stone-soft: #d4c5a9;--c-stone-deep: #6b5f4b;--c-parchment: #faf7f2;--c-parchment-deep: #f0ead8;--c-forest: #166534;--c-ink: #1c1917;--c-ink-soft: #44403c;--c-ink-mute: #78716c;--c-line: rgba(28, 25, 23, .08);--c-line-strong: rgba(28, 25, 23, .16);--bg: var(--c-parchment);--bg-alt: #fffdf8;--bg-deep: var(--c-indigo-deep);--bg-panel: #ffffff;--fg: var(--c-ink);--fg-soft: var(--c-ink-soft);--fg-mute: var(--c-ink-mute);--brand: var(--c-indigo-royal);--accent: var(--c-amber);--accent-deep: var(--c-amber-deep);--grad-cta: linear-gradient(135deg, #1e1b4b 0%, #312e81 40%, #d97706 100%);--grad-cta-hover: linear-gradient(135deg, #312e81 0%, #4338ca 40%, #f59e0b 100%);--grad-hero-overlay: linear-gradient(180deg, rgba(28,25,23,0) 0%, rgba(28,25,23,.25) 60%, rgba(28,25,23,.75) 100%);--grad-parchment: radial-gradient(ellipse at top left, #fffdf8 0%, #faf7f2 50%, #f0ead8 100%);--font-display: "Cinzel", Georgia, serif;--font-serif: "Lora", Georgia, "Times New Roman", serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--t-xs: 11px;--t-sm: 13px;--t-base: 15px;--t-md: 17px;--t-lg: 20px;--t-xl: 26px;--t-2xl: 34px;--t-3xl: 46px;--t-4xl: 62px;--t-5xl: 84px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--s-10: 128px;--r-sm: 4px;--r-md: 8px;--r-lg: 14px;--r-xl: 20px;--r-full: 999px;--sh-sm: 0 1px 2px rgba(28,25,23,.06), 0 1px 1px rgba(28,25,23,.04);--sh-md: 0 4px 12px rgba(28,25,23,.08), 0 2px 4px rgba(28,25,23,.04);--sh-lg: 0 16px 40px rgba(28,25,23,.12), 0 4px 12px rgba(28,25,23,.06);--sh-xl: 0 32px 80px rgba(28,25,23,.18), 0 8px 24px rgba(28,25,23,.08);--sh-inset-gold: inset 0 0 0 1px rgba(217,119,6,.3);--tr-fast: .15s cubic-bezier(.4, 0, .2, 1);--tr-med: .25s cubic-bezier(.4, 0, .2, 1);--tr-slow: .4s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-ui);font-size:var(--t-base);line-height:1.55;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--fg);margin:0;letter-spacing:-.01em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}.stone-ph{position:relative;overflow:hidden;color:#3d3222;background:repeating-linear-gradient(135deg,rgba(107,95,75,.08) 0px,rgba(107,95,75,.08) 2px,transparent 2px,transparent 8px),repeating-linear-gradient(45deg,rgba(181,160,130,.12) 0px,rgba(181,160,130,.12) 3px,transparent 3px,transparent 14px),radial-gradient(ellipse at 30% 30%,#d4c5a9,#b5a082 45%,#8a7860);box-shadow:inset 0 0 0 1px #3d322226,inset 0 0 60px #3d32221a;width:100%;height:100%}.section-label{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-amber-deep);font-weight:600}.section-label:before{content:"";display:inline-block;width:24px;height:1px;background:currentColor;opacity:.5}.btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:var(--r-full);font-family:var(--font-ui);font-weight:600;letter-spacing:.01em;cursor:pointer;text-transform:uppercase;font-size:12px;transition:var(--tr-med);white-space:nowrap;padding:12px 22px;text-decoration:none}.btn-primary{background:var(--grad-cta);color:#fff;box-shadow:0 4px 14px #312e814d,0 1px #fff3 inset}.btn-primary:hover{background:var(--grad-cta-hover)}.btn-ghost{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1px var(--c-line-strong)}.btn-ghost-light{background:transparent;color:#faf7f2;box-shadow:inset 0 0 0 1px #fff6}.btn-gold{background:var(--c-amber);color:#fff;box-shadow:0 4px 14px #d977064d}.btn-gold:hover{background:var(--c-amber-soft)}.btn-lg{padding:16px 30px;font-size:14px}.btn-sm{padding:8px 14px;font-size:12px}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--r-full);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-ui)}.badge-indigo{background:#312e811a;color:#312e81;border:1px solid rgba(49,46,129,.2)}.badge-amber{background:#d977061f;color:#92400e;border:1px solid rgba(217,119,6,.3)}.badge-stone{background:#6b5f4b1a;color:#6b5f4b;border:1px solid rgba(107,95,75,.25)}.badge-dark{background:#1c1917e6;color:#faf7f2;border:1px solid transparent}.badge-mono{font-family:var(--font-mono);letter-spacing:.08em}.divider{display:flex;align-items:center;gap:8px;justify-content:center}.divider:before,.divider:after{content:"";width:40px;height:1px;background:var(--c-amber);opacity:.4}.site-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 40px;background:#faf7f2eb;backdrop-filter:blur(16px) saturate(160%);border-bottom:1px solid var(--c-line);font-family:var(--font-ui);position:sticky;top:0;z-index:100}.nav-logo{display:flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none}.nav-logo-img{width:52px;height:52px;object-fit:contain;flex-shrink:0}.nav-logo-name{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.02em;color:var(--c-indigo-deep);line-height:1}.nav-logo-sub{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;color:var(--c-ink-mute);margin-top:3px;text-transform:uppercase}.nav-items{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}.nav-item{position:relative}.nav-link{display:inline-flex;align-items:center;gap:4px;padding:10px 14px;font-size:13px;font-weight:500;color:var(--fg-soft);text-decoration:none;cursor:pointer;letter-spacing:.01em;position:relative;transition:color var(--tr-fast)}.nav-link:hover,.nav-link.active{color:var(--c-indigo-royal)}.nav-link.active:after{content:"";position:absolute;bottom:4px;left:14px;right:14px;height:2px;background:var(--c-amber);border-radius:1px}.nav-chevron{font-size:9px;opacity:.6}.nav-dropdown{position:absolute;top:100%;left:0;min-width:300px;background:var(--bg-alt);border:1px solid var(--c-line);box-shadow:var(--sh-lg);border-radius:10px;padding:8px;margin-top:2px;display:none;z-index:200}.nav-item:hover .nav-dropdown{display:block}.nav-dropdown-header{padding:8px 12px;border-bottom:1px solid var(--c-line);margin-bottom:4px;font-size:12px;color:var(--c-indigo-royal);font-weight:600;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.nav-dropdown-item{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background var(--tr-fast);text-decoration:none;color:inherit}.nav-dropdown-item:hover{background:var(--c-parchment-deep)}.nav-dropdown-item-icon{font-size:18px}.nav-dropdown-item-label{font-size:13px;font-weight:600;color:var(--fg)}.nav-dropdown-item-sub{font-size:11.5px;color:var(--fg-mute);margin-top:2px}.nav-cta{margin-left:18px}.mobile-nav-bar{display:none;align-items:center;justify-content:space-between;padding:12px 18px;background:var(--bg-alt);border-bottom:1px solid var(--c-line);position:sticky;top:0;z-index:100}.hamburger{width:36px;height:36px;border:none;background:transparent;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;cursor:pointer;padding:0}.hamburger span{width:20px;height:2px;background:var(--fg);transition:var(--tr-fast);transform-origin:center}.hamburger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;inset:57px 0 0;background:var(--bg);z-index:99;padding:20px;overflow-y:auto}.mobile-menu.open{display:block}.mobile-menu-item{padding:16px 8px;border-bottom:1px solid var(--c-line);font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--fg);display:flex;justify-content:space-between;align-items:center;text-decoration:none}.mobile-menu-item span{color:var(--c-amber);font-size:18px}.mobile-menu-footer{margin-top:32px;padding-top:20px;border-top:1px solid var(--c-line);font-family:var(--font-mono);font-size:10.5px;color:var(--fg-mute);letter-spacing:.1em;text-transform:uppercase;line-height:1.8}@media (max-width: 900px){.site-nav{display:none}.mobile-nav-bar{display:flex}}.site-footer{background:var(--c-ink);color:#faf7f2b3;padding:64px 80px 32px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:36px;margin-bottom:48px}.footer-brand-name{font-family:var(--font-display);color:#faf7f2;font-size:20px;font-weight:700;letter-spacing:.02em}.footer-brand-desc{font-family:var(--font-serif);font-size:13px;margin-top:12px;line-height:1.6;max-width:280px;margin-bottom:0}.footer-col-title{color:#faf7f2;font-size:12px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px}.footer-col a{display:block;font-size:13px;padding:6px 0;color:#faf7f2b3;text-decoration:none;transition:color var(--tr-fast)}.footer-col a:hover{color:#faf7f2}.footer-bottom{border-top:1px solid rgba(250,247,242,.1);padding-top:24px;display:flex;justify-content:space-between;font-size:11px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#faf7f266}@media (max-width: 900px){.site-footer{padding:48px 24px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-bottom{flex-direction:column;gap:8px}}@media (max-width: 600px){.footer-grid{grid-template-columns:1fr}}.tour-card{background:#fff;border:1px solid var(--c-line);overflow:hidden;cursor:pointer;transition:var(--tr-med)}.tour-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}.tour-card-img{position:relative;height:280px;overflow:hidden}.tour-card-tag{position:absolute;top:14px;left:14px;background:var(--c-ink);color:var(--c-amber-soft);padding:5px 10px;font-size:10px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-weight:600}.tour-card-body{padding:24px 24px 28px}.tour-card-title{font-family:var(--font-display);font-size:24px;font-weight:600;margin-bottom:4px}.tour-card-sub{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--fg-mute);margin-bottom:20px}.tour-card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--c-line)}.tour-card-meta-label{font-family:var(--font-mono);font-size:10px;color:var(--fg-mute);letter-spacing:.1em;margin-bottom:2px}.tour-card-meta-value{font-size:13px;font-weight:600}.castle-card{background:#fff;border:1px solid var(--c-line);overflow:hidden;cursor:pointer;transition:var(--tr-med)}.castle-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}.castle-card-img{position:relative;aspect-ratio:4/3}.castle-card-num{position:absolute;top:16px;left:16px;width:52px;height:52px;border-radius:50%;background:var(--c-ink);color:var(--c-amber-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:20px;font-weight:600;border:2px solid var(--c-amber);z-index:1}.castle-card-body{padding:24px 24px 28px}.castle-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.castle-card-name{font-family:var(--font-display);font-size:22px;font-weight:600;line-height:1.2}.castle-card-pl{font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--fg-mute);margin-top:4px}.castle-card-desc{font-family:var(--font-serif);font-size:14px;line-height:1.55;color:var(--fg-soft);margin-bottom:20px}.castle-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--c-line);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-mute)}.castle-card-footer span:last-child{color:var(--c-indigo-royal);font-weight:600}.ink-section{background:var(--c-indigo-deep);color:#faf7f2}.parchment-section{background:var(--grad-parchment)}.alt-section{background:var(--bg-alt)}.container{max-width:1320px;margin:0 auto;padding:0 80px}@media (max-width: 900px){.container{padding:0 24px}}
