/* Shared header for WordPress and the ordering page. */
.yorin-site-header{position:fixed;inset:0 0 auto;z-index:60;background:rgba(248,246,241,.97);border-bottom:1px solid #ddd5ca;color:#221d19;box-shadow:0 2px 12px rgba(34,29,25,.035);backdrop-filter:blur(10px);font-family:Inter,system-ui,sans-serif}
.yorin-site-header *{box-sizing:border-box}
.yorin-site-header a{color:inherit;text-decoration:none}
.yorin-header-inner{height:64px;max-width:1340px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:clamp(14px,2vw,28px)}
.yorin-header-brand{flex:none;font:20px/1 Marcellus,Georgia,serif;letter-spacing:.35em;color:#221d19;white-space:nowrap}
.yorin-desktop-nav,.yorin-header-actions{display:none;align-items:center}
.yorin-desktop-nav{margin-left:auto;gap:clamp(16px,2vw,28px)}
.yorin-desktop-nav a,.yorin-contact-phone{font-size:10px;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;color:#665e57;transition:color .2s}
.yorin-desktop-nav a:hover,.yorin-contact-phone:hover,.yorin-contact-icon:hover{color:#a04d38}
.yorin-header-actions{gap:10px}
.yorin-contact-phone,.yorin-contact-icon{display:none;align-items:center;gap:7px}
.yorin-site-header svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.yorin-site-header .yorin-nav-cta{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 17px;border:1px solid #221d19;white-space:nowrap;font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;transition:background .2s,border-color .2s,color .2s}
.yorin-site-header .yorin-nav-reserve{background:#221d19;color:#fffdf8}
.yorin-site-header .yorin-nav-order{background:#a04d38;border-color:#a04d38;color:#fffdf8}
.yorin-site-header .yorin-nav-cta:hover,.yorin-site-header .yorin-nav-cta:focus-visible{background:#803b2c;border-color:#803b2c;color:#fffdf8}
.yorin-header-account{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;min-width:44px;min-height:44px;padding:8px;color:#221d19}
.yorin-header-account svg{width:22px;height:22px}
.yorin-header-account-label{display:none;font-size:10px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.yorin-header-account[aria-current="page"],.yorin-mobile-menu a[aria-current="page"]:not(.yorin-nav-cta){color:#a04d38}
.yorin-menu-toggle,.yorin-header-cart{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:44px;min-height:44px;padding:8px;border:0;background:transparent;color:#221d19;cursor:pointer}
.yorin-menu-toggle{margin-left:auto}
.yorin-header-cart{gap:5px;font-size:11px;text-decoration:none}
.yorin-header-cart svg,.yorin-menu-toggle svg{width:22px;height:22px}
.yorin-site-header [hidden]{display:none!important}
.yorin-mobile-menu{position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 64px);overflow:auto;background:#f8f6f1;border-bottom:1px solid #ddd5ca;padding:18px 24px 24px;box-shadow:0 12px 20px rgba(34,29,25,.08)}
.yorin-mobile-menu>a{display:block;padding:10px 0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#514a43}
.yorin-mobile-ctas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.yorin-mobile-ctas .yorin-nav-cta{padding:0 8px;min-height:48px;font-size:9px;letter-spacing:.1em}
.yorin-mobile-contact{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px;font-size:12px;color:#756c63}
.yorin-site-header a:focus-visible,.yorin-site-header button:focus-visible{outline:2px solid #a04d38;outline-offset:3px}
.order-page .yorin-site-header{position:sticky;top:0;inset-inline:0}
.order-page .utility-row{top:64px}
@media (min-width:1100px){.yorin-desktop-nav,.yorin-header-actions{display:flex}.yorin-menu-toggle{display:none}.yorin-mobile-menu{display:none!important}}
@media (min-width:1320px){.yorin-contact-phone,.yorin-contact-icon{display:inline-flex}.yorin-header-actions{gap:12px}}
@media (max-width:760px){.yorin-header-inner{padding:0 20px;gap:8px}.yorin-header-brand{font-size:20px}.order-page .utility-row{top:64px}}
.admin-bar .yorin-site-header{top:32px}
@media(max-width:782px){.admin-bar .yorin-site-header{top:46px}}
/* Preserve the reservation section's existing call to action. */
.yorin-reservation-entry{padding:clamp(2rem,5vw,3.5rem)}
.yorin-reservation-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:48px;margin-top:2rem;padding:1rem 1.5rem;background:hsl(var(--cream));color:hsl(var(--ink));font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:background .2s,color .2s}
.yorin-reservation-button:hover{background:hsl(var(--terracotta));color:hsl(var(--cream))}

@media (min-width:1100px){.yorin-header-account-label{display:inline}}
