:root{color-scheme:dark;--wine:#7f1f28;--wine-deep:#3b1210;--gold:#f1b564;--cream:#fff4df}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{background:#20100c;color:var(--cream);font-family:Georgia,"Times New Roman",serif}
.splash{min-height:100svh;display:grid;grid-template-columns:minmax(320px,1.12fr) minmax(420px,.88fr);overflow:hidden;background:radial-gradient(circle at 70% 12%,#6b3b25 0,#321914 45%,#1e0e0b 100%)}
.splash-photo{min-height:100svh;background-image:linear-gradient(90deg,transparent 72%,#2e160f 100%),url('/assets/palermo-main-hero.webp');background-position:center;background-size:cover;box-shadow:inset -20px 0 40px #1b0d0977}
.splash-content{min-height:100svh;display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(26px,4vw,70px) clamp(24px,4.5vw,74px) 24px;position:relative}
.splash-content:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,#8b553128,transparent 40%);pointer-events:none}
.brand-mark,.splash-copy,.splash-contacts{position:relative;z-index:1}
.brand-mark{display:flex;flex-direction:column;align-items:center;color:#ffd290}
.brand-arch{width:126px;height:39px;border:2px solid currentColor;border-bottom:0;border-radius:70px 70px 0 0;font:24px/37px Georgia}
.brand-mark strong{font-size:clamp(44px,5vw,74px);font-weight:400;letter-spacing:.06em;line-height:1;margin-top:8px}
.brand-mark small{font:600 11px/1.2 system-ui,sans-serif;letter-spacing:.26em;color:#fff5e9;margin-top:12px}
.splash-copy{margin:auto 0;max-width:590px}
.eyebrow{font:700 11px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 19px}
.splash-copy h1{font-size:clamp(40px,4vw,64px);font-weight:400;line-height:1.05;margin:0 0 22px}
.splash-copy>p:not(.eyebrow){font-size:clamp(24px,2.5vw,40px);line-height:1.14;margin:0 auto 34px;max-width:580px;text-wrap:balance}
.delivery-cta{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-width:min(100%,390px);min-height:94px;border:2px solid #e3a149;border-radius:999px;padding:14px 28px;background:linear-gradient(180deg,#9d2935,#681822);box-shadow:0 16px 45px #10060588,inset 0 1px #ffffff33;color:#fff8e7;text-decoration:none;transition:transform .18s,filter .18s}
.delivery-cta:hover{transform:translateY(-2px);filter:brightness(1.08)}
.delivery-cta:focus-visible{outline:4px solid #ffd28a;outline-offset:5px}
.cta-icon{display:grid;place-items:center;width:47px;height:47px;border:1px solid #ffdaa5;border-radius:50%;font:34px/1 system-ui;color:#ffd29a}
.delivery-cta>span:last-child{text-align:left}
.delivery-cta strong{display:block;font-size:31px;font-weight:400;letter-spacing:.03em}
.delivery-cta small{display:block;font:500 13px/1.4 system-ui,sans-serif;margin-top:2px;color:#f9ddc3}
.splash-contacts{width:100%;display:flex;justify-content:space-between;gap:22px;padding-top:22px;border-top:1px solid #f8c37f55;font-style:normal;font-size:clamp(16px,1.4vw,22px)}
.splash-contacts span,.splash-contacts a{display:flex;align-items:center;gap:10px;color:#fff2dc;text-decoration:none}
.splash-contacts b{color:var(--gold);font-family:system-ui,sans-serif;font-size:17px}
@media(max-width:880px){.splash{display:block;min-height:100svh;position:relative}.splash-photo{position:absolute;inset:0;min-height:100%;background-position:center 38%}.splash-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#160a0755 0,#190b09a8 38%,#190b09fa 74%)}.splash-content{min-height:100svh;padding:26px 18px 18px;justify-content:flex-end}.brand-mark{margin-bottom:auto}.brand-mark strong{font-size:43px}.brand-mark small{font-size:8px}.brand-arch{width:90px;height:27px;font-size:18px;line-height:26px}.splash-copy{margin:44svh 0 30px}.eyebrow{margin-bottom:12px}.splash-copy h1{font-size:38px;margin-bottom:13px}.splash-copy>p:not(.eyebrow){font-size:23px;line-height:1.2;margin-bottom:24px}.delivery-cta{min-height:76px;padding:10px 22px}.delivery-cta strong{font-size:25px}.splash-contacts{flex-direction:column;align-items:center;gap:10px;font-size:15px;padding-top:16px}}
@media(max-width:390px){.splash-copy{margin-top:41svh}.splash-copy h1{font-size:33px}.splash-copy>p:not(.eyebrow){font-size:20px}.delivery-cta{width:100%;min-width:0}.splash-contacts{font-size:14px}}
@media(prefers-reduced-motion:reduce){.delivery-cta{transition:none}}

.admin-cta{display:flex;align-items:center;justify-content:center;gap:12px;width:min(100%,390px);margin:14px auto 0;padding:11px 20px;border:1px solid #f1b56466;border-radius:18px;background:#12090766;color:#efd9bd;text-decoration:none;backdrop-filter:blur(8px);transition:background .18s,border-color .18s,transform .18s}.admin-cta:hover{background:#24110ddd;border-color:#f1b564aa;transform:translateY(-1px)}.admin-cta:focus-visible{outline:3px solid #ffd28a;outline-offset:4px}.admin-lock{display:grid;place-items:center;width:30px;height:30px;border:1px solid #f1b56477;border-radius:50%;font:18px/1 system-ui;color:#f1b564}.admin-cta>span:last-child{text-align:left}.admin-cta strong{display:block;font:700 12px/1.2 system-ui,sans-serif;letter-spacing:.12em}.admin-cta small{display:block;margin-top:3px;font:500 11px/1.25 system-ui,sans-serif;color:#d6bfa7}@media(max-width:880px){.admin-cta{width:min(100%,360px);margin-top:12px}}


/* v1.3 mobile polish: less photo dominance and all CTAs visible without excessive scrolling. */
@media(max-width:880px){
  .splash-content{padding:18px 14px 12px}
  .brand-mark strong{font-size:36px;margin-top:5px}
  .brand-mark small{font-size:7px;margin-top:7px}
  .brand-arch{width:76px;height:23px;font-size:15px;line-height:22px}
  .splash-copy{margin:30svh 0 14px;max-width:430px}
  .eyebrow{font-size:9px;margin-bottom:8px}
  .splash-copy h1{font-size:31px;line-height:1.02;margin-bottom:8px}
  .splash-copy>p:not(.eyebrow){font-size:17px;line-height:1.18;margin-bottom:15px;max-width:360px}
  .delivery-cta{min-height:61px;padding:8px 16px;gap:11px}
  .cta-icon{width:38px;height:38px;font-size:26px}
  .delivery-cta strong{font-size:21px}
  .delivery-cta small{font-size:10px}
  .admin-cta{min-height:48px;margin-top:8px;padding:7px 14px;border-radius:15px}
  .admin-lock{width:26px;height:26px;font-size:15px}
  .admin-cta strong{font-size:10.5px}
  .admin-cta small{font-size:9.5px}
  .splash-contacts{gap:5px;padding-top:10px;font-size:12px}
}
@media(max-width:390px){
  .splash-copy{margin-top:27svh;margin-bottom:10px}
  .splash-copy h1{font-size:28px}
  .splash-copy>p:not(.eyebrow){font-size:16px}
  .delivery-cta{min-height:58px}
  .splash-contacts{font-size:11px}
}
