:root,[data-theme="light"]{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);--text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);--text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);--text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-hero:clamp(2.5rem,1rem + 5vw,5rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;
  --space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;
  --color-bg:#faf8f4;--color-surface:#fdfcf9;--color-surface-2:#fff;
  --color-surface-offset:#f3efe8;--color-surface-dynamic:#e8e2d8;
  --color-divider:#ddd8ce;--color-border:#d0c9bc;
  --color-text:#2a2118;--color-text-muted:#6b5f52;--color-text-faint:#b0a89e;
  --color-text-inverse:#faf8f4;
  --color-primary:#9a7c3a;--color-primary-hover:#7d6228;--color-primary-active:#5e4a1c;
  --color-primary-highlight:#e8dfc8;
  --color-error:#8b2635;--color-success:#4a7c59;
  --radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;
  --shadow-sm:0 1px 3px oklch(0.2 0.02 60/.08);--shadow-md:0 4px 16px oklch(0.2 0.02 60/.10);
  --shadow-lg:0 12px 40px oklch(0.2 0.02 60/.14);
  --content-narrow:640px;--content-default:960px;--content-wide:1200px;
  --font-display:'Cormorant Garamond',Georgia,serif;--font-body:'Inter','Helvetica Neue',sans-serif;
  --tr:180ms cubic-bezier(0.16,1,0.3,1);
}
[data-theme="dark"]{
  --color-bg:#19160f;--color-surface:#1f1b13;--color-surface-2:#252019;
  --color-surface-offset:#2c2619;--color-surface-dynamic:#35301f;
  --color-divider:#2e2a20;--color-border:#3a3528;
  --color-text:#ede8df;--color-text-muted:#a09080;--color-text-faint:#6a5e50;
  --color-text-inverse:#19160f;--color-primary:#c9a55a;--color-primary-hover:#d8b870;
  --color-primary-highlight:#3a2f18;--color-error:#c95a6a;--color-success:#72b882;
  --shadow-sm:0 1px 3px oklch(0 0 0/.25);--shadow-md:0 4px 16px oklch(0 0 0/.35);
  --shadow-lg:0 12px 40px oklch(0 0 0/.45);
}
@media(prefers-color-scheme:dark){:root:not([data-theme]){
  --color-bg:#19160f;--color-surface:#1f1b13;--color-surface-2:#252019;
  --color-surface-offset:#2c2619;--color-border:#3a3528;--color-divider:#2e2a20;
  --color-text:#ede8df;--color-text-muted:#a09080;--color-text-faint:#6a5e50;
  --color-text-inverse:#19160f;--color-primary:#c9a55a;--color-primary-hover:#d8b870;
  --color-primary-highlight:#3a2f18;--color-error:#c95a6a;--color-success:#72b882;
  --shadow-sm:0 1px 3px oklch(0 0 0/.25);--shadow-md:0 4px 16px oklch(0 0 0/.35);--shadow-lg:0 12px 40px oklch(0 0 0/.45);
}}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:5rem}
body{min-height:100dvh;line-height:1.65;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg)}
img,svg{display:block;max-width:100%;height:auto}
input,button,select{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6{text-wrap:balance;line-height:1.2;font-family:var(--font-display)}
p,li{text-wrap:pretty;max-width:72ch}
button{cursor:pointer;background:none;border:none}
::selection{background:oklch(from var(--color-primary) l c h/.2);color:var(--color-text)}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
a,button,[role="button"]{transition:color var(--tr),background var(--tr),border-color var(--tr),box-shadow var(--tr),transform var(--tr)}

/* TOPBAR */
.topbar{position:sticky;top:0;z-index:100;background:#22333B;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,0.1);padding:var(--space-3) var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
.topbar-logo{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;flex-shrink:0}
.topbar-brand{font-family:var(--font-display);font-size:var(--text-lg);color:#ffffff;font-weight:500;letter-spacing:.02em;white-space:nowrap}
.topbar-brand span{color:var(--color-primary)}

.nav-container{display:flex;align-items:center;gap:var(--space-4)}
.nav-tabs{display:flex;gap:var(--space-1);flex-wrap:wrap;list-style:none}
.nav-tabs a{text-decoration:none;color:rgba(255,255,255,0.8);font-size:var(--text-xs);font-weight:500;letter-spacing:.05em;text-transform:uppercase;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}
.nav-tabs a:hover{background:rgba(255,255,255,0.1);color:#ffffff}

.hamburger{display:none;padding:var(--space-2);color:rgba(255,255,255,0.8);background:transparent;border:1px solid rgba(255,255,255,0.2);border-radius:var(--radius-md);cursor:pointer}
.hamburger:hover{background:rgba(255,255,255,0.1);color:#ffffff}

.ctrls{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}

.theme-toggle{padding:var(--space-2);border-radius:var(--radius-full);color:rgba(255,255,255,0.8);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,0.2)}
.theme-toggle:hover{background:rgba(255,255,255,0.1);color:#ffffff}

/* LANGUAGE SWITCHER */
.lang-switcher {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--radius-full);
  padding: 2px var(--space-3);
  font-size: var(--text-xs);
  font-weight: 600;
  height: 32px;
}
.lang-btn {
  color: rgba(255, 255, 255, 0.5);
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 2px 4px;
  cursor: pointer;
  font-size: var(--text-xs);
  font-weight: 600;
  transition: color var(--tr);
}
.lang-btn:hover {
  color: #ffffff;
}
.lang-btn.active {
  color: var(--color-primary);
}
.lang-divider {
  color: rgba(255, 255, 255, 0.2);
  user-select: none;
  font-size: 10px;
}

/* MOBILE NAV OVERLAY */
@media(max-width:1080px){
  .hamburger{display:flex}
  .nav-tabs{position:fixed;top:5rem;right:var(--space-4);background:#22333B;flex-direction:column;padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,0.1);box-shadow:var(--shadow-lg);gap:var(--space-2);opacity:0;pointer-events:none;transform:translateY(-10px);transition:all .3s cubic-bezier(0.16,1,0.3,1);z-index:200}
  .nav-tabs.is-open{opacity:1;pointer-events:all;transform:translateY(0)}
  .nav-tabs a{font-size:var(--text-sm);padding:var(--space-2) var(--space-6);width:100%;text-align:center;border-radius:var(--radius-md)}
}
@media(max-width:480px){
  .topbar-brand{display:none}
}

/* HERO */
.hero{position:relative;overflow:hidden;min-height:clamp(380px,52vw,580px);display:flex;flex-direction:column;justify-content:flex-end}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,oklch(.12 .02 50/.88) 0%,oklch(.12 .02 50/.32) 55%,transparent 100%)}
.hero-content{position:relative;z-index:1;max-width:var(--content-wide);margin-inline:auto;padding:var(--space-16) var(--space-8) var(--space-12);width:100%}
.hero-eyebrow{font-size:var(--text-xs);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-3)}
.hero-title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;color:#faf8f4;line-height:1.05;font-style:italic;margin-bottom:var(--space-4)}
.hero-sub{font-size:var(--text-base);color:rgba(250,248,244,.82);font-weight:300;max-width:55ch}

/* QUICK STRIP */
.quick-strip{background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-4) var(--space-6)}
.quick-inner{max-width:var(--content-wide);margin-inline:auto;display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center;justify-content:center}
.qi{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500}
.qi svg{opacity:.85;flex-shrink:0}

/* PAGE */
.page{max-width:var(--content-wide);margin-inline:auto;padding:var(--space-16) var(--space-6);display:grid;gap:var(--space-16)}

/* SECTION HEADER */
.sh{margin-bottom:var(--space-8)}
.sh.centered{text-align:center}
.sh.centered .sd{margin-inline:auto}
.sey{font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}
.st{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;color:var(--color-text);font-style:italic}
.st strong{font-style:normal}
.sd{width:3rem;height:1.5px;background:var(--color-primary);margin-top:var(--space-4);opacity:.6}

/* CARDS */
.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:var(--space-4)}
.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:box-shadow var(--tr),transform var(--tr)}
.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.card-icon{width:36px;height:36px;color:var(--color-primary);margin-bottom:var(--space-4)}
.card-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;color:var(--color-text);margin-bottom:var(--space-2)}
.card-body{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.65}
.card-body strong{color:var(--color-text)}
.card-body a{color:var(--color-primary);text-decoration:none}
.card-body a:hover{text-decoration:underline}
.card-body p+p{margin-top:var(--space-2)}

/* HIGHLIGHT */
.hl-card{background:color-mix(in oklch,var(--color-primary) 8%,var(--color-surface));border:1px solid color-mix(in oklch,var(--color-primary) 25%,var(--color-border));border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}

/* SERVICES */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--space-3)}
.svc{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);box-shadow:var(--shadow-sm)}
.svc svg{color:var(--color-primary);flex-shrink:0;margin-top:1px}
.svc-t{color:var(--color-text-muted)}
.svc-t strong{display:block;color:var(--color-text);margin-bottom:2px}

/* RISTORANTE SECTION INTEGRATION */
.menu-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);height:75vh;min-height:600px}
.menu-card iframe{width:100%;height:100%;border:none}

/* ATTRACTIONS */
.attr-grid{display:grid;gap:var(--space-6);grid-template-columns:1fr}
@media(min-width:680px){.attr-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.attr-grid{grid-template-columns:repeat(3,1fr)}}
.attr-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--tr),transform var(--tr)}
.attr-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.attr-img{width:100%;height:160px;object-fit:cover;display:block}
.attr-body{padding:var(--space-5)}
.attr-tag{display:inline-block;font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}
.attr-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;color:var(--color-text);margin-bottom:var(--space-2)}
.attr-desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6}

/* RULES */
.rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:var(--space-4)}
.rule{display:flex;gap:var(--space-4);align-items:flex-start;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.rule-ic{width:34px;height:34px;color:var(--color-text-faint);flex-shrink:0}
.rule-ic.no{color:color-mix(in oklch,var(--color-error) 75%,var(--color-text-faint))}
.rule-t strong{display:block;font-size:var(--text-sm);color:var(--color-text);margin-bottom:var(--space-1)}
.rule-t span{font-size:var(--text-xs);color:var(--color-text-muted)}

/* WIFI */
.wifi-box{background:linear-gradient(135deg,color-mix(in oklch,var(--color-primary) 12%,var(--color-surface)),var(--color-surface));border:1.5px solid color-mix(in oklch,var(--color-primary) 30%,var(--color-border));border-radius:var(--radius-xl);padding:var(--space-8);text-align:center;box-shadow:var(--shadow-md)}
.wifi-ssid{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-text);letter-spacing:.02em;margin:var(--space-3) 0 var(--space-2)}
.wifi-pw{font-size:var(--text-xl);font-weight:700;color:var(--color-primary);font-family:'Courier New',monospace;letter-spacing:.15em;background:var(--color-surface-offset);padding:var(--space-2) var(--space-6);border-radius:var(--radius-lg);display:inline-block;margin:var(--space-2) 0}
.wifi-lbl{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}

/* 2 COLS */
.two-col{display:grid;grid-template-columns:1fr;gap:var(--space-8)}
@media(min-width:700px){.two-col{grid-template-columns:1fr 1fr}}

.order-instruction {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  margin: var(--space-2) auto var(--space-4);
  max-width: 600px;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .order-instruction {
    font-size: var(--text-xs);
    padding: 0 var(--space-4);
  }
}

/* SUITE ORDER GRID */
.order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:var(--space-4)}
.order-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center;text-decoration:none;transition:box-shadow var(--tr),transform var(--tr)}
.order-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.order-qr{position:relative;overflow:hidden;border-radius:var(--radius-md);background:#ffffff;display:flex;align-items:center;justify-content:center;padding:8px;box-shadow:0 2px 8px rgba(0,0,0,0.08)}
.order-qr img{width:200px;height:200px;display:block}
.qr-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.45);backdrop-filter:blur(1.5px);color:#ffffff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;opacity:0;transition:opacity .25s ease;border-radius:var(--radius-md);pointer-events:none}
.order-card:hover .qr-overlay{opacity:1}
.order-card.focused-suite:hover .qr-overlay{opacity:0}
.qr-overlay svg{width:24px;height:24px;transform:scale(0.8);transition:transform .25s ease;color:#ffffff}
.order-card:hover .qr-overlay svg{transform:scale(1)}
.qr-overlay span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#ffffff}
@media (max-width: 768px) {
  .qr-overlay { display: none !important; }
}
.order-name{font-family:var(--font-body);font-size:var(--text-base);font-weight:600;color:var(--color-text);line-height:1.4;margin:var(--space-1) 0;text-decoration:none}
.order-name small{display:block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);margin-top:4px}
.btn-order{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-decoration:none;letter-spacing:.02em;white-space:nowrap;width:100%;margin-top:auto;transition:background var(--tr)}
.btn-order:hover{background:var(--color-primary-hover)}

/* Grid Focus Mode to prevent accidental wrong QR scans on desktop/tablet */
.order-grid {
  transition: all 0.4s ease;
}

/* Dim and blur all other cards */
.order-grid.grid-has-focus .order-card:not(.focused-suite) {
  opacity: 0.08;
  filter: blur(5px) grayscale(60%);
  pointer-events: none;
  transform: scale(0.95);
  box-shadow: none;
}

/* Highlight the focused card */
.order-card {
  position: relative;
  transition: opacity 0.3s ease, filter 0.3s ease, transform 0.35s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}

.order-card.focused-suite {
  transform: scale(1.08) !important;
  border-color: var(--color-primary) !important;
  box-shadow: var(--shadow-lg), 0 0 0 1px var(--color-primary) !important;
  z-index: 10;
  background: var(--color-surface-offset) !important;
}

/* Close button for focused card */
.focus-close-btn {
  display: none;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 28px;
  height: 28px;
  border-radius: var(--radius-full);
  background: color-mix(in oklch, var(--color-primary) 20%, #000000);
  color: var(--color-text-inverse);
  border: 1px solid var(--color-border);
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, background var(--tr);
  z-index: 12;
}
.focus-close-btn:hover {
  background: var(--color-primary-hover);
}
.order-card.focused-suite .focus-close-btn {
  display: flex;
  opacity: 1;
  pointer-events: auto;
}


/* Stili per il selettore di suite (Dropdown) */
.suite-selector-container {
  display: none; /* Nascosto per impostazione predefinita su Desktop */
  margin-bottom: var(--space-6);
  text-align: center;
  max-width: 400px;
  margin-inline: auto;
  padding: 0 var(--space-4);
}
.suite-select-label {
  display: block;
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--color-text-muted);
  margin-bottom: var(--space-2);
  font-family: var(--font-body);
  font-weight: 600;
}
.suite-select {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--text-sm);
  font-weight: 500;
  outline: none;
  cursor: pointer;
  box-shadow: var(--shadow-sm);
  transition: border-color var(--tr), box-shadow var(--tr);
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%239a7c3a' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1.25rem;
  padding-right: 2.5rem;
}
.suite-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px color-mix(in oklch, var(--color-primary) 15%, transparent);
}

/* Regole responsive per Mobile */
@media (max-width: 768px) {
  .suite-selector-container {
    display: block; /* Visibile su Mobile */
  }
  
  /* Nascondiamo tutte le card tranne quella selezionata */
  .order-grid.mobile-filtered .order-card {
    display: none !important;
  }
  .order-grid.mobile-filtered .order-card.selected-suite {
    display: flex !important;
    max-width: 320px;
    margin-inline: auto;
  }
}

/* CONTACT */
.cta-bar{background:color-mix(in oklch,var(--color-text) 5%,var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);box-shadow:var(--shadow-md)}
.cta-bar h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;color:var(--color-text);font-style:italic;margin-bottom:var(--space-2)}
.cta-bar p{font-size:var(--text-sm);color:var(--color-text-muted)}
.btns{display:flex;flex-direction:row;align-items:center;gap:var(--space-2);flex-wrap:nowrap}
.btn-p{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-decoration:none;letter-spacing:.02em;white-space:nowrap}
.btn-p:hover{background:var(--color-primary-hover)}
.btn-s{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:transparent;color:var(--color-text);border:1px solid var(--color-border);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;text-decoration:none;white-space:nowrap}
.btn-s:hover{background:var(--color-surface-offset);border-color:var(--color-primary)}

/* FOOTER */
footer{background:#22333B;border-top:1px solid rgba(255,255,255,0.1);padding:var(--space-12) var(--space-6);text-align:center;color:#ffffff}
.ft-brand{display:flex;align-items:baseline;justify-content:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3);text-align:center}
.ft-logo{font-family:var(--font-display);font-size:var(--text-xl);font-style:italic;color:#ffffff;opacity:0.9;line-height:1.1;text-align:center}
.ft-tagline{font-family:var(--font-display);font-size:var(--text-sm);font-style:italic;color:rgba(255,255,255,0.75);line-height:1.2;text-align:center}
.ft-sub{font-size:var(--text-xs);color:rgba(255,255,255,0.7);text-align:center;display:block;margin-inline:auto}
.ft-links{display:flex;gap:var(--space-6);justify-content:center;margin-top:var(--space-4);flex-wrap:wrap;text-align:center}
.ft-links a{font-size:var(--text-xs);color:rgba(255,255,255,0.8);text-decoration:none}
.ft-links a:hover{color:var(--color-primary)}

/* RESPONSIVE */
@media(max-width:640px){
  .topbar{padding:var(--space-3) var(--space-4)}
  .hero-content{padding:var(--space-12) var(--space-4) var(--space-8)}
  .page{padding:var(--space-10) var(--space-4);gap:var(--space-12)}
  .cta-bar{text-align:center;justify-content:center;padding:var(--space-5) var(--space-4);gap:var(--space-4)}
  .btns{width:100%;justify-content:center}
  .btns .btn-p, .btns .btn-s{flex:1;max-width:180px}
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

/* COMPACT STICKY TOPBAR FOR STANDALONE ORDERING PAGE */
.mini-topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #22333B;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 4px var(--space-4);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  height: 40px; /* Extremely compact */
  box-sizing: border-box;
}
.mini-back-link {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  text-decoration: none;
  color: rgba(255, 255, 255, 0.85);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .02em;
  transition: color var(--tr);
}
.mini-back-link:hover {
  color: #ffffff;
}
.mini-back-link svg {
  width: 14px;
  height: 14px;
  stroke-width: 3px;
}
.mini-controls {
  display: flex;
  align-items: center;
  gap: var(--space-4);
}
.mini-controls .theme-toggle {
  border: none;
  background: transparent;
  cursor: pointer;
  padding: var(--space-1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.8);
  transition: color var(--tr);
}
.mini-controls .theme-toggle:hover {
  color: #ffffff;
}

