@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{--bg-950: #0b0b0b;--bg-900: #111111;--bg-850: #171717;--glass-700: rgba(29, 29, 29, .82);--glass-650: rgba(36, 36, 36, .75);--glass-stroke: rgba(176, 141, 87, .34);--gold-400: #caa067;--gold-500: #b08d57;--gold-700: #8c6a3e;--text-main: #ede2cd;--text-soft: #d1c3a8;--text-dark: #17120f;--accent-light: #efe0c5;--danger: #d86161;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 28px;--shadow-soft: 0 20px 42px rgba(0, 0, 0, .34);--shadow-card: 0 16px 30px rgba(0, 0, 0, .3);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.6rem;--space-8: 3.2rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text-main);font-family:Manrope,Segoe UI,sans-serif;background:radial-gradient(circle at 18% 8%,rgba(176,141,87,.2),transparent 32%),radial-gradient(circle at 84% 6%,rgba(55,55,55,.26),transparent 35%),linear-gradient(148deg,#090909,#141414 48%,#0f0f0f);line-height:1.55}h1,h2,h3{margin:0;font-family:Cormorant Garamond,serif;line-height:1.08}h1{color:#f2ddb4;font-size:clamp(2.2rem,5.8vw,4.3rem)}h2{color:#f4dfbc;font-size:clamp(1.8rem,3.2vw,2.8rem)}h3{color:#f4dfbc;font-size:clamp(1.28rem,2.2vw,1.95rem)}h4{margin:0;font-size:1.02rem;color:#f0dec0}a{color:inherit}.public-app,.admin-app{width:min(1240px,calc(100% - 1.15rem));margin:0 auto;padding-bottom:var(--space-8)}.site-nav-wrap{position:sticky;top:0;z-index:50;margin-top:.6rem;background:#0c0c0ce0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-stroke);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-soft)}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.8rem 1.15rem}.brand-lockup{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;font-size:1.12rem;font-weight:700}.brand-logo{width:52px;height:52px;border-radius:50%;border:1px solid rgba(176,141,87,.45);background:#ffffff0a;object-fit:contain;padding:5px}.desktop-nav{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.desktop-nav a,.mobile-nav a{text-decoration:none;font-size:1.08rem;font-weight:700;color:#f0e5d1;padding:.62rem .86rem;border-radius:999px;transition:.18s ease;transition-property:color,background-color,box-shadow}.desktop-nav a:hover,.desktop-nav a.is-active,.mobile-nav a:hover,.mobile-nav a.is-active{color:#fff;background:#b08d5733;box-shadow:inset 0 0 0 1px #b08d5759}.mobile-toggle,.mobile-nav{display:none}.hero-grid{margin-top:1.2rem;display:grid;grid-template-columns:1.3fr .7fr;gap:1rem;scroll-margin-top:7.5rem}.hero-photo{position:relative;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--glass-stroke);min-height:465px;box-shadow:var(--shadow-soft);background:linear-gradient(110deg,#0a0a0ac7,#0f0f0fe0),radial-gradient(circle at 78% 30%,rgba(176,141,87,.26),transparent 42%);background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem}.skeleton-surface{overflow:hidden}.skeleton-line,.skeleton-pill,.skeleton-chip{position:relative;border-radius:999px;background:#ffffff14}.skeleton-line:after,.skeleton-pill:after,.skeleton-chip:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-tag{width:180px;height:16px;margin-bottom:1rem}.skeleton-title{width:min(760px,100%);height:38px;border-radius:14px;margin-bottom:.7rem}.skeleton-title-lg{height:56px}.skeleton-title-md{width:min(520px,92%)}.skeleton-text{width:min(680px,100%);height:18px;border-radius:10px;margin-top:.9rem}.skeleton-text-short{width:min(420px,70%)}.skeleton-pill{width:230px;height:52px}.skeleton-chip{width:260px;height:42px}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.hero-copy{background:#0a0a0a75;border:1px solid rgba(176,141,87,.28);border-radius:var(--radius-md);padding:1.25rem;max-width:620px}.section-tag{margin:0 0 .45rem;color:var(--gold-400);letter-spacing:.08em;text-transform:uppercase;font-weight:700;font-size:.78rem}.hero-copy>p{margin:.8rem 0 0;max-width:43ch;font-size:1.17rem}.hero-cta-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.1rem}.btn{border:0;cursor:pointer;font:inherit;font-weight:700;border-radius:999px;padding:.82rem 1.35rem;font-size:1.04rem;transition:transform .17s ease,filter .17s ease}.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}.btn-primary{color:#fff;background:linear-gradient(140deg,var(--gold-500),var(--gold-700))}.btn-secondary{color:#f3e7d0;border:1px solid rgba(176,141,87,.5);background:#00000052}.btn-danger{color:#fff0ec;border:1px solid rgba(216,97,97,.48);background:#65242470}.opening-chip-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.9rem}.opening-chip-row p{margin:0;padding:.48rem .72rem;border-radius:999px;background:#efe0c51f;border:1px solid rgba(176,141,87,.3);color:var(--text-soft);font-weight:600}.hero-visual{border-radius:var(--radius-lg);border:1px solid var(--glass-stroke);background:radial-gradient(circle at 50% 45%,rgba(176,141,87,.24),transparent 52%),linear-gradient(160deg,#141414e6,#080808f0);box-shadow:var(--shadow-soft);display:grid;place-items:center;padding:1.1rem}.hero-visual img{width:min(78%,340px);max-height:300px;object-fit:contain;filter:drop-shadow(0 16px 28px rgba(0,0,0,.42))}.section-shell{margin-top:1rem;scroll-margin-top:7.5rem}.section-card{border-radius:var(--radius-md);border:1px solid var(--glass-stroke);background:linear-gradient(160deg,var(--glass-700),rgba(16,16,16,.85)),radial-gradient(circle at 78% 20%,rgba(176,141,87,.14),transparent 46%);box-shadow:var(--shadow-card);color:var(--text-main);padding:1.35rem}.section-card>p{color:var(--text-soft)}.section-highlight{background:linear-gradient(145deg,#2b2113b3,#101010eb),radial-gradient(circle at 75% 15%,rgba(176,141,87,.18),transparent 40%)}.room-grid,.menu-categories,.gallery-grid,.news-grid{margin-top:1rem;display:grid;gap:.8rem}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-card,.menu-card,.news-card,.gallery-tile{border-radius:var(--radius-sm);border:1px solid rgba(176,141,87,.25);background:linear-gradient(165deg,var(--glass-650),rgba(18,18,18,.82));padding:.95rem}.room-card h3,.menu-card h3,.news-card h3{margin-bottom:.3rem}.menu-card ul{list-style:none;margin:0;padding:0}.menu-card li{display:grid;grid-template-columns:1fr auto;gap:.6rem;padding:.65rem 0;border-bottom:1px solid rgba(176,141,87,.2)}.menu-card li:last-child{border-bottom:0}.menu-card li p{margin:.2rem 0 0;color:var(--text-soft)}.menu-download-card{margin-top:1rem;margin-bottom:1rem;border-radius:var(--radius-sm);border:1px solid rgba(176,141,87,.28);background:linear-gradient(165deg,#2d2213b8,#141414e0);padding:.95rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.menu-download-card p{margin:.2rem 0 0;color:var(--text-soft)}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-tile{min-height:150px;display:grid;place-items:center;text-align:center;overflow:hidden;position:relative}.gallery-tile small,.news-meta{color:var(--text-soft)}.gallery-tile-image{min-height:240px;padding:0;align-items:end}.gallery-tile-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.gallery-tile-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#08080814,#080808b8)}.gallery-caption{position:relative;z-index:1;width:100%;display:grid;gap:.2rem;padding:1rem;text-align:left}.gallery-caption span{font-weight:700;color:#f2e8d6}.gallery-caption small{color:#f2e8d6d1}.reservation-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}label{display:grid;gap:.36rem;font-weight:700;color:#f0dec0}input,textarea,button,select{font:inherit}button{cursor:pointer}input,textarea,select{width:100%;border-radius:10px;border:1px solid rgba(176,141,87,.38);background:#0e0e0ebf;color:#f2e8d6;padding:.72rem .8rem}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--gold-400);outline-offset:2px}textarea{min-height:102px;resize:vertical}.full-width{grid-column:1 / -1}.field-error{margin:0;font-size:.9rem;color:var(--danger)}.status-text{margin-top:.9rem;border-radius:10px;border:1px solid rgba(176,141,87,.4);background:#b08d571f;padding:.7rem .85rem;color:#f3e6d0}.public-status{background:#b08d5726}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.contact-socials{margin-top:1rem;display:grid;gap:.65rem}.social-link-row{display:flex;flex-wrap:wrap;gap:.6rem}.site-footer{margin-top:1.8rem;text-align:center;color:var(--text-soft)}.admin-hero{margin-top:1rem;border-radius:var(--radius-md);border:1px solid var(--glass-stroke);background:linear-gradient(145deg,#1e1e1ef2,#0c0c0ce6);padding:1.5rem}.admin-hero h1{font-size:clamp(1.9rem,3vw,2.8rem)}.admin-version{margin:.55rem 0 0;color:var(--text-soft);font-size:.96rem;font-weight:700}.admin-section{margin-top:1rem}.admin-layout,.admin-dashboard-grid,.admin-dashboard-stack{display:grid;gap:.8rem}.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card{border-radius:var(--radius-md);border:1px solid var(--glass-stroke);background:linear-gradient(160deg,#282828d9,#121212e0);color:var(--text-main);padding:1rem}.admin-card h2,.admin-card h3{color:#f3dfbe}.admin-card-head{display:flex;justify-content:space-between;gap:.6rem;align-items:center}.admin-form{display:grid;gap:.7rem}.admin-list-stack{display:grid;gap:.7rem;margin-top:1.1rem}.admin-helper-text{margin:0;color:var(--text-soft)}.admin-status-banner{position:sticky;top:5.5rem;z-index:20;border-radius:12px;border:1px solid rgba(176,141,87,.35);padding:.8rem 1rem;box-shadow:var(--shadow-card)}.admin-status-banner.is-success{background:#416946e0;color:#f5f4ea}.admin-status-banner.is-error{background:#6e2a2ae6;color:#fff0ec}.inline-edit-row{display:grid;gap:.35rem;border-bottom:1px solid rgba(176,141,87,.24);padding:.55rem 0}.admin-entity-row{gap:.75rem;padding:.85rem 0}.admin-entity-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid-span-2{grid-column:1 / -1}.opening-hours-row{gap:.75rem;padding:.8rem 0}.toggle-group{display:inline-flex;gap:.5rem;flex-wrap:wrap}.toggle-pill{border:1px solid rgba(176,141,87,.35);background:#00000047;color:var(--text-soft);padding:.5rem .95rem;border-radius:999px;cursor:pointer}.toggle-pill.is-active{background:linear-gradient(140deg,var(--gold-500),var(--gold-700));color:#fff}.time-select-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.admin-row-meta{display:grid;gap:.15rem}.admin-row-meta span,.admin-row-meta a{color:var(--text-soft)}.admin-card-span-2{grid-column:1 / -1}.reservation-list,.compact-list{list-style:none;margin:.7rem 0 0;padding:0}.reservation-list li,.compact-list li{border-bottom:1px solid rgba(176,141,87,.24);padding:.55rem 0}.reservation-list li span{color:var(--text-soft)}.reservation-summary{display:block;margin-top:.2rem}.hours-list{display:grid;gap:.75rem;margin-top:1rem}.hours-row{display:grid;gap:.18rem;padding-bottom:.75rem;border-bottom:1px solid rgba(176,141,87,.18)}.hours-row:last-child{border-bottom:0;padding-bottom:0}.hours-row span,.hours-row small{color:var(--text-soft)}.reservation-note{margin-top:.8rem;color:var(--text-soft)}@media (max-width: 1120px){.public-app,.admin-app{width:min(1240px,calc(100% - .9rem))}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:220px}.gallery-grid,.contact-grid,.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 860px){.desktop-nav{display:none}.mobile-toggle{display:inline-block;border:1px solid rgba(176,141,87,.42);border-radius:999px;color:var(--text-main);background:#0000004d;padding:.55rem 1rem;font-size:1.02rem;font-weight:700}.mobile-nav{display:none;padding:0 1rem .95rem}.mobile-nav.is-open{display:grid;gap:.2rem}.mobile-nav a{font-size:1.15rem;padding:.78rem}.site-nav{padding:.72rem .92rem}.brand-lockup{font-size:.96rem}.brand-logo{width:45px;height:45px}.hero-photo{min-height:430px;padding:1rem}.hero-copy{padding:1rem}.opening-chip-row{margin-top:1.1rem}.hero-copy>p{font-size:1.08rem}.section-card,.admin-card,.admin-hero{padding:1rem}.reservation-grid,.gallery-grid,.contact-grid,.admin-dashboard-grid,.room-grid,.menu-download-card,.time-select-grid,.admin-entity-grid{grid-template-columns:1fr}.menu-download-card{display:grid}}
