:root{--color-surface: #f3f2ef;--color-surface-dim: #e8e6df;--color-surface-container-low: #f4f2ee;--color-surface-container-lowest: #ffffff;--color-primary: #0a66c2;--color-primary-hover: #0854a0;--color-primary-container: #004182;--color-on-primary: #ffffff;--color-tertiary: #0a66c2;.offer-banner{position:relative;z-index:1010;background:#004182;color:#fff;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.65rem 3rem .65rem 1.25rem;font-size:.875rem;font-weight:500;line-height:1.4;text-align:center;transition:max-height .35s ease,opacity .35s ease,padding .35s ease;overflow:hidden;max-height:120px;opacity:1}.offer-banner--hiding{max-height:0;opacity:0;padding-top:0;padding-bottom:0}.offer-banner__text{flex:1;max-width:780px}.offer-banner__close{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#fffc;cursor:pointer;padding:.3rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s,background .2s;flex-shrink:0}.offer-banner__close:hover{color:#fff;background:#ffffff26}--color-on-surface: #191919;--color-on-surface-variant: #595959;--color-outline-variant: #dce6f1;--color-focus-ring: rgba(10, 102, 194, .28);--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1.25rem;--radius-3xl: 1.75rem;--radius-full: 9999px;--shadow-ambient: 0 10px 30px rgba(84, 67, 60, .08);--shadow-soft: 0 8px 28px rgba(31, 42, 55, .07);--shadow-lift: 0 18px 36px rgba(31, 42, 55, .12);--dashboard-sidebar-bg: #004182;--dashboard-sidebar-text: #ffffff;--dashboard-active-bg: rgba(255, 255, 255, .15);--dashboard-active-text: #ffffff;--dashboard-card-bg: #ffffff;--dashboard-card-shadow: 0 4px 20px rgba(0, 0, 0, .04);--dashboard-trend-up: #10b981;--dashboard-trend-down: #ef4444}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip;background-color:var(--color-surface)}body{color:var(--color-on-surface);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-wrap:break-word;word-wrap:break-word}body.dashboard-menu-open{overflow:hidden}body:before{content:"";position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3e%3cfilter id='noiseFilter'%3e%3cfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3e%3c/filter%3e%3crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3e%3c/svg%3e")}h1,h2,h3,h4{font-family:var(--font-headline);line-height:1.1;margin:0;letter-spacing:-.01em}h1{font-size:clamp(2.5rem,7vw,4.4rem);letter-spacing:-.02em}p{margin:0;color:var(--color-on-surface-variant)}a{color:inherit;text-decoration:none;transition:.2s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.skip-link{position:fixed;left:1rem;top:-3rem;z-index:10001;background:#fff;color:var(--color-on-surface);border:1px solid var(--color-outline-variant);border-radius:.5rem;padding:.55rem .8rem;font-size:.85rem;font-weight:700;transition:top .2s ease}.skip-link:focus-visible{top:1rem}.back-to-top{position:fixed;right:1.5rem;bottom:1.5rem;z-index:999;border:1px solid var(--color-outline-variant);background:#fff;color:var(--color-on-surface);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:var(--shadow-soft);opacity:0;transform:translateY(10px);pointer-events:none;cursor:pointer;transition:opacity .25s ease,transform .25s ease,background-color .2s ease,border-color .2s ease}.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:hover{background-color:var(--color-surface-container-low);border-color:#bed0e4;transform:translateY(-2px);box-shadow:var(--shadow-lift)}img{max-width:100%;display:block;border-radius:var(--radius-lg)}.container{max-width:1340px;margin:0 auto;padding:0 2rem}.eyebrow{display:block;color:var(--color-tertiary);text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:.7rem;margin-bottom:1rem}.tac{text-align:center}.tal{text-align:left}.tar{text-align:right}.mb4{margin-bottom:4rem}.section-head-centered{text-align:center;margin-bottom:5rem;max-width:800px;margin-inline:auto}.section-head-centered h2{margin-bottom:1.5rem!important}.subtitle{font-size:1.25rem;line-height:1.6;color:var(--color-on-surface-variant);max-width:650px;margin-inline:auto}.badge-primary,.badge-secondary{display:inline-block;padding:.55rem 1.3rem;border-radius:100px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:1.5rem;line-height:1}.badge-primary{background:var(--color-primary);color:#fff}.badge-secondary{background:#fff;color:var(--color-primary);border:1px solid var(--color-outline-variant)}.reveal{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.hero-copy p,.hero-copy span,.hero-copy .eyebrow,.hero-content p,.hero-content span,.hero-content .eyebrow{color:#fff!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.9rem;line-height:1;border:0;border-radius:var(--radius-full);padding:1.1rem 2.2rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;cursor:pointer;transition:.3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-soft)}.btn-primary{color:var(--color-on-primary);background:linear-gradient(145deg,var(--color-primary),var(--color-primary-container))}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);filter:saturate(1.05)}.btn-ghost{color:var(--color-on-surface);background:var(--color-surface-container-lowest);border:1px solid var(--color-outline-variant);backdrop-filter:blur(8px)}.btn-ghost:hover{background:#fff;border-color:#bed0e4;transform:translateY(-2px)}.btn-line{border-bottom:1.5px solid var(--color-on-surface);border-radius:0;padding:0 0 .4rem;background:transparent;text-transform:uppercase;font-size:.75rem;font-weight:700;letter-spacing:.14em;box-shadow:none}.btn-line:hover{border-color:var(--color-tertiary);color:var(--color-tertiary)}.btn:active{transform:translateY(0)}.tone-block{background:var(--color-surface-container-low);border-radius:var(--radius-xl);padding:4rem 2rem}.section-padding{padding-block:clamp(4rem,7vw,6rem)}@media(max-width:768px){.section-padding{padding-block:3rem}.section-head-centered,.gallery-header{padding-inline:1rem}.section-head-centered .subtitle,.section-desc{padding-inline:.25rem}}.glass{background:#f3f2efbf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.cta-card{background:var(--color-surface-dim);padding:5rem 2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-ambient);text-align:center;border:1px solid rgba(10,102,194,.05)}.cta-card h2{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:1.5rem;color:var(--color-primary)}.cta-card p{max-width:600px;margin:0 auto 3rem;font-size:1.15rem;color:var(--color-on-surface-variant)}.cta-card .actions{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.fade-up{opacity:0;transform:translateY(24px);animation:fadeUp .8s cubic-bezier(.16,1,.3,1) forwards}.fade-up.delay{animation-delay:.2s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.section-padding{padding-block:6rem}}@media(max-width:768px){.container{padding:0 1.25rem}.section-padding{padding-block:4rem}.main-footer{padding-block:4rem 2rem}.tone-block{padding:3rem 1.25rem}}@media(max-width:480px){h1{font-size:2.2rem}}.premium-form-container{background:var(--color-surface-container-lowest);padding:4rem;border-radius:2rem;box-shadow:0 40px 80px #0000000a;max-width:800px;width:100%;box-sizing:border-box;margin:0 auto;border:1px solid var(--color-outline-variant)}.form-header{text-align:center;margin-bottom:3rem}.form-header h2{font-size:2.5rem;margin-bottom:1rem}.form-header p{color:var(--color-on-surface-variant);font-size:1.1rem}.modern-form{display:flex!important;flex-direction:column!important;gap:1rem;width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%}.form-field{display:flex;flex-direction:column;gap:.6rem;width:100%}.form-field label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary)}.form-field input,.form-field textarea,.form-field select{padding:1rem 1.25rem;border-radius:.75rem;border:1.5px solid var(--color-outline-variant);background:var(--color-surface);font-family:var(--font-body);font-size:1rem;transition:all .2s ease;width:100%;box-sizing:border-box}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{background:#fff;border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #0a66c21a}.full-width{grid-column:span 2}.status-msg{margin-top:1.5rem;padding:1rem;border-radius:.75rem;font-weight:700;text-align:center;transition:all .3s ease;display:none}.status-msg.show{display:block}.status-msg.error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.status-msg.success{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}@media(max-width:768px){.premium-form-container{padding:2.5rem 1.5rem}.form-row{grid-template-columns:1fr;gap:1.5rem}.full-width{grid-column:span 1}}.dash-layout{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background-color:#f3f2ef;align-items:start}.dash-sidebar{background-color:var(--dashboard-sidebar-bg);color:var(--dashboard-sidebar-text);padding:2.5rem 1.75rem;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;max-height:100vh;align-self:start;overflow-y:auto;z-index:9999;border-right:1px solid rgba(255,255,255,.05)}.dash-overlay{display:none}.sidebar-logo{height:48px;width:auto;margin-bottom:1rem;filter:brightness(0) invert(1);opacity:.9}.brand-text h1{font-size:1.25rem!important;color:#fff;margin-bottom:.15rem}.dash-main{padding:2.5rem;background:#f3f2ef;min-height:100vh;min-width:0}@media(min-width:769px){.dash-layout{display:block}.dash-sidebar{position:fixed;left:0;top:0;width:280px;height:100dvh;max-height:100dvh}.dash-main{margin-left:280px;min-height:100dvh}}.dash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.dash-card{background:var(--dashboard-card-bg);padding:1.5rem;border-radius:var(--radius-xl);box-shadow:var(--dashboard-card-shadow);display:flex;flex-direction:column;gap:.75rem;transition:transform .2s ease}.dash-card:hover{transform:translateY(-2px)}.dash-content-area{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.glass-card{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 24px #00000005;border-radius:var(--radius-xl)}@media(max-width:1200px){.dash-grid{grid-template-columns:repeat(2,1fr)}.dash-content-area{grid-template-columns:1fr}}@media(max-width:768px){.dash-layout{display:block;grid-template-columns:1fr}.dash-sidebar{position:fixed;top:0;left:0;width:min(86vw,320px);height:100dvh;max-height:100dvh;transform:translate(-105%);visibility:hidden;pointer-events:none;transition:transform .22s ease,visibility .22s ease}.dash-sidebar.mobile-open{display:flex;transform:translate(0);visibility:visible;pointer-events:auto;z-index:10001;box-shadow:4px 0 24px #00000026}.dash-overlay{display:block;position:fixed;inset:0;z-index:10000;border:0;background:#09090b70;opacity:0;pointer-events:none;transition:opacity .2s ease}.dash-overlay.visible{opacity:1;pointer-events:auto}.badge-function{background:#e0f2fe;color:#0369a1}.badge-general{background:#f3f4f6;color:#374151}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.05)}.menu-item-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f3f2ef;border-radius:var(--radius-lg);margin-bottom:.75rem;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.menu-item-row:hover{background:#fff;border-color:var(--dashboard-active-bg);transform:translate(4px);box-shadow:0 4px 12px #0000000d}.item-info{display:flex;flex-direction:column;gap:.25rem}.item-name{font-weight:700;font-size:.95rem}.item-desc{font-size:.8rem;opacity:.6;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.item-meta{display:flex;align-items:center;gap:1rem}.item-price{color:var(--color-tertiary);font-size:1rem}.enquiry-card{display:flex;flex-direction:column;gap:1rem}.enquiry-header{display:flex;justify-content:space-between;align-items:center}.enquiry-body h3{font-size:1.1rem;margin-bottom:.25rem}.enquiry-email{font-size:.85rem;color:var(--color-tertiary);margin-bottom:.75rem}.enquiry-meta{font-size:.8rem;background:#e1e9f1;padding:.5rem;border-radius:4px;margin:.5rem 0}.enquiry-message{font-size:.9rem;line-height:1.5;opacity:.8}.icon-btn.danger:hover{background:#fee2e2;color:#ef4444}.btn-sm{padding:.5rem 1rem;font-size:.75rem}.dash-main{padding:1rem}.dash-grid{grid-template-columns:1fr}.dash-card:hover,.category-card:hover,.menu-item-row:hover,.item-row-premium:hover{transform:none}}.category-card{background:#fff;border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-ambient);transition:all .3s cubic-bezier(.16,1,.3,1);border:1px solid rgba(10,102,194,.2)}.category-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #54433c1f}.category-badge{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:.35rem .75rem;border-radius:6px;background:var(--dashboard-sidebar-bg);color:#fff}.item-row-premium{display:grid;grid-template-columns:1fr auto;gap:1.5rem;padding:1.25rem;background:#f3f2ef;border-radius:var(--radius-lg);margin-bottom:1rem;border:1px solid transparent;transition:all .2s;cursor:pointer}.item-row-premium:hover{background:#fff;border-color:var(--dashboard-active-bg);box-shadow:0 8px 16px #00000008}.item-main-info h4{font-size:1.05rem;color:var(--dashboard-sidebar-bg);margin-bottom:.25rem}.item-main-info p{font-size:.85rem;opacity:.6}.price-chip{font-size:.95rem;font-weight:800;color:var(--color-tertiary);background:#fff;padding:.4rem .8rem;border-radius:var(--radius-full);border:1px solid var(--color-outline-variant);box-shadow:0 2px 4px #00000005}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal,.fade-up{opacity:1;transform:none}}.item-actions-premium{display:flex;gap:.5rem;margin-top:.75rem;justify-content:flex-end}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.sticky-action-bar[data-astro-cid-ibaba3qa]{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--color-outline-variant);box-shadow:0 -4px 20px #00000014;z-index:10000;display:none;padding-bottom:env(safe-area-inset-bottom);animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.action-grid[data-astro-cid-ibaba3qa]{display:grid;grid-template-columns:1fr 1.5fr 1fr;height:56px}.action-item[data-astro-cid-ibaba3qa]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;color:var(--color-on-surface-variant);text-decoration:none;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.action-item[data-astro-cid-ibaba3qa] svg[data-astro-cid-ibaba3qa]{opacity:.8}.action-item[data-astro-cid-ibaba3qa].featured{background:var(--color-primary);color:#fff}.action-item[data-astro-cid-ibaba3qa].featured svg[data-astro-cid-ibaba3qa]{opacity:1}.action-item[data-astro-cid-ibaba3qa]:active{background:var(--color-surface-dim);transform:scale(.96)}.action-item[data-astro-cid-ibaba3qa].featured:active{background:var(--color-primary-container)}@media(max-width:768px){.sticky-action-bar[data-astro-cid-ibaba3qa]{display:block}.back-to-top.visible{bottom:calc(56px + 1rem + env(safe-area-inset-bottom))!important}}
