/* Aurora-4 · Premium layer (loads last). Visual polish + order box fix. */
:root{
 --font-serif:'Playfair Display',Georgia,serif;
 --gold-grad:linear-gradient(135deg,oklch(.86 .12 85),oklch(.72 .14 60));
 --red-grad:linear-gradient(135deg,oklch(.66 .23 22),oklch(.55 .22 15));
 --glass-bg:oklch(.15 .012 30 / .75);
 --radius:14px;
 --shadow-glow:0 18px 50px -18px oklch(.63 .225 20 / .55);
 --ease-out:cubic-bezier(.16,1,.3,1);
}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 20px)}
body{background:radial-gradient(1200px 600px at 80% -10%,oklch(.63 .225 20 / .08),transparent 60%),radial-gradient(900px 500px at -10% 30%,oklch(.83 .12 85 / .05),transparent 60%),var(--bg);background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3{font-family:var(--font-serif);font-weight:700;line-height:1.12}
.section-title,.cta-big-title{letter-spacing:-.01em!important}
.text-gradient,.text-gradient-red{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}

/* Glass navbar */
.navbar{background:var(--glass-bg)!important;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid var(--border)}

/* Buttons */
.btn-primary,.cta-phone-btn,.float-order-btn,.wp-send-btn{position:relative;overflow:hidden;background:var(--red-grad)!important;border-color:transparent!important;border-radius:999px!important;box-shadow:var(--shadow-glow);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.btn-ghost,.btn-outline{border-radius:999px!important;backdrop-filter:blur(8px)}
.btn-primary:hover,.cta-phone-btn:hover,.float-order-btn:hover,.wp-send-btn:hover{transform:translateY(-2px);box-shadow:0 24px 60px -18px oklch(.63 .225 20 / .75)}
.btn-primary:active,.float-order-btn:active,.wp-send-btn:active{transform:scale(.97)}
.btn-primary::after,.wp-send-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,oklch(1 0 0 / .25) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease-out)}
.btn-primary:hover::after,.wp-send-btn:hover::after{transform:translateX(120%)}

/* Cards */
.menu-item,.sig-card,.gal-cell,.branch-card{border-radius:var(--radius)!important;border:1px solid var(--border)!important;background:linear-gradient(180deg,oklch(.22 .006 260),oklch(.19 .005 260))!important;transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out),border-color .3s!important;will-change:transform}
.menu-item:hover,.sig-card:hover,.branch-card:hover{transform:translateY(-6px);border-color:oklch(.83 .12 85 / .35)!important;box-shadow:0 30px 60px -28px oklch(0 0 0 / .8),0 0 0 1px oklch(.83 .12 85 / .12)}
.menu-item-photo{overflow:hidden;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0}
.menu-item-photo img,.sig-card img,.gal-cell img{transition:transform .9s var(--ease-out)!important}
.menu-item:hover .menu-item-photo img,.sig-card:hover img,.gal-cell:hover img{transform:scale(1.07)}
.menu-item-price,.sig-card-price{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cat-tab{border-radius:999px!important;transition:all .3s var(--ease-out)!important}
.cat-tab.active{background:var(--red-grad)!important;color:var(--on-primary)!important;border-color:transparent!important;box-shadow:var(--shadow-glow)}
.qty-btn,.pizza-size{border-radius:10px!important}
.pizza-size.active{border-color:var(--accent)!important;background:oklch(.83 .12 85 / .12)!important}

/* Smooth reveal */
@media (prefers-reduced-motion:no-preference){
 .reveal{animation:pFade .8s var(--ease-out) both}
 @keyframes pFade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
}


/* Richer warm palette */
:root{--bg:oklch(.14 .012 30);--bg-card:oklch(.19 .014 30);--bg-elev:oklch(.24 .016 30);--fg-muted:oklch(.76 .015 60);--border:oklch(.9 .03 70 / .1);--border-strong:oklch(.9 .03 70 / .2)}
.menu-item,.sig-card,.gal-cell,.branch-card{background:linear-gradient(180deg,oklch(.21 .016 30),oklch(.17 .012 30))!important}

/* ============ ORDER BOX: FIXED ============
   Header, total, form and send button never move.
   Only the food list scrolls inside its own area. */
.order-sidebar{display:flex!important;flex-direction:column!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;background:linear-gradient(180deg,oklch(.19 .016 30),oklch(.14 .012 30))!important;border-left:1px solid oklch(.83 .12 85 / .18)!important;transition:transform .45s var(--ease-out)!important}
.order-sidebar .sidebar-scroll{display:contents}
.order-sidebar .sidebar-head{position:relative!important;flex:0 0 auto!important;padding:14px 20px!important;background:transparent!important}
.order-sidebar .sidebar-head-left h2{font-size:22px!important}
.order-sidebar .sidebar-items{flex:1 1 auto!important;min-height:110px!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 18px!important;display:flex;flex-direction:column;gap:10px;scrollbar-width:thin;scrollbar-color:oklch(.83 .12 85 / .35) transparent;mask-image:linear-gradient(180deg,#000 calc(100% - 18px),transparent)}
.order-sidebar .sidebar-total,.order-sidebar .sidebar-form,.order-sidebar .sidebar-footer{flex:0 0 auto!important;position:relative!important;max-height:none!important;overflow:visible!important;margin-top:0!important}
.order-sidebar .sidebar-total{padding:12px 20px!important;background:oklch(.63 .225 20 / .08)!important}
.order-sidebar .total-val{font-family:var(--font-serif);font-size:22px;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.order-sidebar .sidebar-form{padding:12px 20px!important;gap:10px!important}
.order-sidebar .form-field input{min-height:44px;padding:10px 14px}
.order-sidebar .sidebar-footer{padding:12px 20px calc(14px + var(--safe-b))!important;border-top:1px solid var(--border);background:oklch(.15 .012 30)!important}
.order-sidebar .wp-send-btn{width:100%;min-height:50px}
@media (max-height:700px){.order-sidebar .sidebar-form label{font-size:10px}.order-sidebar .form-field input{min-height:40px;padding:8px 12px}.order-sidebar .order-type-label{display:none}.order-sidebar .sidebar-items{min-height:90px!important}}
.order-line{border-radius:12px!important;background:oklch(.24 .016 30 / .6)!important;animation:pFade .35s var(--ease-out) both}
.order-line-name{white-space:normal!important}
.form-field input{border-radius:12px!important;transition:border-color .2s,box-shadow .2s}
.form-field input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px oklch(.83 .12 85 / .15)}
.type-btn.active{background:var(--red-grad)!important;color:var(--on-primary)!important}

/* View Order icon/button back in original place: bottom-right */
.float-order-btn{position:fixed!important;left:auto!important;right:calc(24px + var(--safe-r))!important;bottom:calc(24px + var(--safe-b))!important;width:auto!important}
@media (max-width:600px){.float-order-btn{right:16px!important;bottom:calc(16px + var(--safe-b))!important}}

/* Premium hover & click effects */
.ripple-host{position:relative;overflow:hidden}
.p-ripple{position:absolute;border-radius:50%;pointer-events:none;background:oklch(1 0 0 / .35);transform:scale(0);animation:pRipple .6s var(--ease-out) forwards}
@keyframes pRipple{to{transform:scale(1);opacity:0}}
button,.btn-primary,.btn-ghost,.cat-tab,.qty-btn,.pizza-size,.type-btn{transition:transform .25s var(--ease-out),box-shadow .3s,background-color .25s,border-color .25s,color .25s!important}
button:active,.cat-tab:active,.qty-btn:active{transform:scale(.95)!important}
.btn-ghost:hover,.btn-outline:hover{border-color:var(--accent)!important;color:var(--accent)!important;box-shadow:0 0 0 4px oklch(.83 .12 85 / .1)}
.cat-tab:hover:not(.active){border-color:oklch(.83 .12 85 / .5)!important;color:var(--accent)!important;transform:translateY(-2px)}
.nav-links a,.nav-desktop a{position:relative}
.nav-links a::after,.nav-desktop a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--gold-grad);transform:scaleX(0);transition:transform .35s var(--ease-out)}
.nav-links a:hover::after,.nav-desktop a:hover::after{transform:scaleX(1)}
.order-line:hover{border-color:oklch(.83 .12 85 / .3)!important;transform:translateX(-3px)}
.gal-cell:hover{box-shadow:0 26px 60px -24px oklch(.63 .225 20 / .6)}
.float-badge{animation:pBump .4s var(--ease-out)}
@keyframes pBump{50%{transform:scale(1.35)}}

/* Responsive */
@media (max-width:900px){:root{--container-pad:22px}}
@media (max-width:600px){
 :root{--container-pad:16px;--radius:12px}
 .order-sidebar{width:100vw!important}
 .menu-item:hover,.sig-card:hover,.branch-card:hover{transform:none}
 .section-title{font-size:clamp(28px,8vw,40px)!important}
}
@media (hover:none){.menu-item:hover .menu-item-photo img{transform:none}}

/* ===== Footer bottom bar (exclusive) ===== */
.footer-bottom{position:relative;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap;gap:12px 24px;padding-block:22px!important;border-top:none!important}
.footer-bottom::before{content:"";position:absolute;top:0;left:var(--container-pad);right:var(--container-pad);height:1px;background:linear-gradient(90deg,transparent,oklch(.83 .12 85 / .45),oklch(.63 .225 20 / .45),transparent)}
.footer-bottom p{margin:0;font-size:13px!important;color:var(--fg-muted)}
.footer-credit{display:inline-flex;align-items:center;gap:14px}
.credit-badge{position:relative;display:inline-flex;align-items:center;gap:9px;padding:9px 20px 9px 15px;border-radius:999px;border:1px solid oklch(.83 .12 85 / .35);background:linear-gradient(120deg,oklch(.83 .12 85 / .12),oklch(.63 .225 20 / .12));color:var(--accent)!important;font-weight:600;font-size:12.5px;letter-spacing:.03em;overflow:hidden;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),border-color .3s}
.credit-badge .credit-icon{width:15px;height:15px;flex-shrink:0;color:var(--accent);transition:color .3s}
.credit-badge .credit-text{opacity:.72;font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.16em}
.credit-badge .credit-name{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;font-family:var(--font-serif);font-size:15px;letter-spacing:.02em}
.credit-badge::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,oklch(1 0 0 / .3) 50%,transparent 75%);transform:translateX(-130%);transition:transform .9s var(--ease-out)}
.credit-badge:hover::after{transform:translateX(130%)}
.credit-badge:hover{transform:translateY(-2px);border-color:oklch(.83 .12 85 / .65);box-shadow:0 14px 34px -12px oklch(.83 .12 85 / .55),0 0 0 1px oklch(.83 .12 85 / .18)}
.footer a:not(.btn-primary):not(.credit-badge){transition:color .25s,padding-left .3s var(--ease-out)}
.footer-col a:hover,.footer-links a:hover{color:var(--accent)!important;padding-left:4px}
@media (max-width:600px){.footer-bottom{flex-direction:column;justify-content:center!important;text-align:center}.footer-credit{flex-direction:column;gap:10px}}

/* Smoother global feel */
*{scroll-margin-top:90px}
a,button{transition-timing-function:var(--ease-out)!important}
.menu-item,.sig-card,.branch-card,.gal-cell{transition-duration:.55s!important}
.info-row,.stat-icon,.chip-tag{transition:transform .35s var(--ease-out),border-color .3s,background .3s}
.info-row:hover .info-icon,.stat-icon:hover{transform:scale(1.1) rotate(-6deg)}
.chip-tag:hover{transform:translateY(-2px);border-color:oklch(.83 .12 85 / .45)!important}

/* ===== UI refinement layer (v6) ===== */
::selection{background:oklch(.63 .225 20 / .45);color:oklch(.98 0 0)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:oklch(.12 .01 30)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,oklch(.63 .225 20 / .6),oklch(.83 .12 85 / .4));border-radius:99px;border:2px solid oklch(.12 .01 30)}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.eyebrow{gap:8px}
.eyebrow span{letter-spacing:.22em;text-transform:uppercase;font-size:11px;font-weight:700}
.section-head .rule{background:linear-gradient(90deg,transparent,oklch(.83 .12 85 / .55),transparent)}
.section-title{position:relative}
.footer-heading{position:relative;padding-bottom:10px;letter-spacing:.18em;text-transform:uppercase;font-size:11.5px}
.footer-heading::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:2px;border-radius:2px;background:var(--gold-grad)}
.footer-brand h3{font-family:var(--font-serif);font-size:26px;letter-spacing:.02em}
.footer{position:relative}
.footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,oklch(.63 .225 20 / .5),oklch(.83 .12 85 / .5),transparent)}
.gal-cap{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600;background:linear-gradient(180deg,transparent,oklch(.1 .01 30 / .88))}
.sig-card-tag{letter-spacing:.18em}
.nav-links a.active{color:var(--accent)}
.info-row{padding:14px;border-radius:14px;border:1px solid transparent;transition:background .35s var(--ease-out),border-color .35s}
.info-row:hover{background:oklch(1 0 0 / .025);border-color:oklch(.83 .12 85 / .18)}
@media (max-width:600px){.credit-badge{padding:8px 16px 8px 12px}.footer-credit{gap:10px}}
