/* Approved compact storefront header, 2026-10-27. */
.storefront.compact-header { --compact-gutter: clamp(18px, 4.8vw, 70px); }
.compact-header .site-header { min-height:76px; padding-block:10px; }
.compact-header .brand-logo { width:140px; max-height:46px; }
.compact-header .main-nav { gap:clamp(12px,1.4vw,22px); font-size:13px; }
.compact-header .phone-link { font-size:13px; }
.mobile-menu-toggle { display:none; }
.compact-header .hero { min-height:250px; padding:16px var(--compact-gutter); }
.compact-header .hero::before { background:linear-gradient(90deg,rgba(30,22,15,.91),rgba(30,22,15,.60) 44%,rgba(30,22,15,.12) 85%); }
.compact-header .hero::after { display:none; }
.compact-header .hero-bg-image { transform:none; object-position:50% 47%; }
.compact-header .hero-content { max-width:560px; }
.compact-header .hero .eyebrow { margin:0 0 8px; font-size:10px; }
.compact-header .hero h1 { font-size:clamp(52px,5vw,64px); line-height:1.02; }
.compact-header .hero-quality { margin:6px 0 0; color:#f1d7a1; font-size:13px; line-height:1.4; font-weight:500; letter-spacing:.01em; }
.compact-header .hero-copy { max-width:465px; margin:8px 0 0; font-size:16px; line-height:1.5; }
.compact-header .hero-actions { margin-top:16px; gap:13px; }
.compact-header .hero-actions :is(.primary-link,.secondary-link) { width:auto; min-height:44px; padding:0 20px; font-size:13px; }
.compact-header .news-section { display:flex; align-items:center; gap:24px; padding:12px var(--compact-gutter); background:#ece7de; border-bottom:1px solid #d8cfc1; }
.compact-header .news-section[hidden] { display:none; }
.compact-header .news-section-head { flex:0 0 auto; margin:0; }
.compact-header .news-section-head .eyebrow { margin:0; font-size:10px; letter-spacing:.08em; color:#837368; }
.compact-header .news-section-head h2 { display:none; }
.compact-header .news-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); flex:1; border:0; }
.compact-header .news-grid.is-single { grid-template-columns:1fr; }
.compact-header .news-card { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; column-gap:11px; min-height:32px; padding:5px 23px; border:0; border-left:1px solid #d8cfc1; background:transparent; box-shadow:none; transition:color 150ms ease; }
.compact-header .news-card:first-child { padding-left:0; border-left:0; }
.compact-header .news-card:last-child { padding-right:0; }
.compact-header .news-card::after { content:'↗'; position:static; color:#aa8a62; font-size:17px; transform:none; opacity:1; }
.compact-header .news-card:hover { transform:none; background:transparent; color:var(--tomato); }
.compact-header .news-date { margin:0; font-size:10px; font-weight:650; color:var(--tomato); letter-spacing:.02em; white-space:nowrap; }
.compact-header .news-card h3 { margin:0; max-width:none; font-family:inherit; font-size:13px; line-height:1.45; font-weight:600; letter-spacing:0; color:inherit; }
.storefront.compact-header .news-card :is(img,p,.news-card-link) { display:none; }
.compact-header .menu-section { padding:24px var(--compact-gutter) 90px; background:#ece7de; scroll-margin-top:85px; }
.compact-header .menu-section > .section-head { display:flex; align-items:center; justify-content:space-between; gap:22px; max-width:1360px; margin:0 auto 12px; }
.compact-header .menu-section > .section-head .eyebrow { margin:0 0 6px; font-size:10px; }
.compact-header .menu-section > .section-head h2 { font-size:clamp(34px,3.5vw,40px); line-height:1.05; }
.compact-header .menu-section > .section-head .search-box { width:240px; flex:0 0 240px; gap:0; }
.compact-header .menu-section > .section-head .search-box > span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.compact-header .menu-section > .section-head .search-box input { height:44px; border:1px solid #d6cbbc; border-radius:11px; background:#f8f5ee; font-size:13px; box-shadow:none; }
.compact-header .pizza-builder-entry { flex-direction:row; align-items:center; gap:18px; margin:0 auto 14px; padding:8px 16px; min-height:56px; background:#f6f1e5; border-color:#d9cbb7; border-radius:12px; }
.compact-header .pizza-builder-entry h3 { font-family:inherit; font-size:14px; font-weight:650; line-height:1.3; letter-spacing:0; }
.compact-header .pizza-builder-entry p { margin:4px 0 0; font-size:12px; line-height:1.4; }
.compact-header .pizza-builder-entry-action { min-height:40px; padding:7px 0 7px 16px; gap:20px; background:transparent; color:var(--deep); font-size:13px; }
.compact-header .pizza-builder-entry-action > span:last-child { font-size:18px; color:#aa7b31; }
.compact-header .category-filters { flex-wrap:nowrap; overflow-x:auto; gap:7px; max-width:1360px; margin:0 auto 14px; padding:0 0 2px; border:0; scrollbar-width:none; }
.compact-header .category-filters::-webkit-scrollbar { display:none; }
.compact-header .category-filters button { flex:0 0 auto; min-height:40px; padding:8px 15px; border:1px solid #dcd2c4; border-radius:25px; background:#f6f2e9; color:#6d5e50; font-size:12px; font-weight:540; box-shadow:none; white-space:nowrap; }
.compact-header .category-filters button.active { border-color:var(--deep); background:var(--deep); color:#fffdf7; box-shadow:none; }
.compact-header .category-filters button:hover { border-color:#b89c7c; }
.compact-header #productGrid > .product-section:first-child { gap:12px; }
.compact-header #productGrid > .product-section:first-child .product-section-head { gap:0; padding:0; }
.compact-header #productGrid > .product-section:first-child .product-section-head .eyebrow { display:none; }
.compact-header #productGrid > .product-section:first-child .product-section-head h3 { font-size:25px; line-height:1.1; }
.compact-header #productGrid > .bundles-section:first-child { padding:14px; margin-inline:0; border:1px solid #dcd2c4; border-radius:14px; background:#e5ded3; }
@media(min-width:1061px) and (max-width:1180px) {
  .compact-header .site-header { gap:15px; padding-inline:28px; }
  .compact-header .brand-logo { width:125px; }
  .compact-header .main-nav { gap:12px; font-size:12px; }
  .compact-header .header-actions { gap:8px; }
  .compact-header .phone-link { font-size:12px; }
}
@media(max-width:1060px) {
  .compact-header .site-header { row-gap:0; padding-top:8px; padding-bottom:0; }
  .compact-header .main-nav { min-width:0; min-height:44px; gap:24px; align-items:center; padding:0; scrollbar-width:none; }
  .compact-header .main-nav::-webkit-scrollbar { display:none; }
  .compact-header .main-nav a { flex:0 0 auto; display:inline-flex; align-items:center; min-height:44px; padding:0; white-space:nowrap; }
  .compact-header .hero { min-height:250px; }
  .compact-header .news-section { gap:15px; }
  .compact-header .news-card { padding-inline:15px; }
  .compact-header .news-card h3 { font-size:12px; }
  .compact-header .menu-section { scroll-margin-top:118px; }
}
@media(max-width:720px) {
  .storefront.compact-header { --compact-gutter:18px; }
  .compact-header .site-header { grid-template-columns:auto 1fr auto; padding:8px 14px; column-gap:8px; row-gap:0; }
  .compact-header .brand-logo { width:108px; max-height:42px; }
  .compact-header .mobile-menu-toggle { grid-column:2; grid-row:1; align-self:center; justify-self:end; display:inline-flex; width:42px; height:42px; padding:0; border:1px solid #ded4c7; border-radius:12px; background:#fffdf8; flex-direction:column; align-items:center; justify-content:center; gap:5px; color:var(--deep); cursor:pointer; }
  .compact-header .mobile-menu-toggle span { display:block; width:19px; height:2px; border-radius:2px; background:currentColor; transition:transform 180ms ease,opacity 180ms ease; }
  .compact-header .mobile-menu-toggle.is-open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .compact-header .mobile-menu-toggle.is-open span:nth-child(2) { opacity:0; }
  .compact-header .mobile-menu-toggle.is-open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  .compact-header .header-actions { grid-column:3; grid-row:1; }
  .compact-header .header-actions { gap:8px; }
  .compact-header .cart-button { min-height:44px; padding:7px 10px; font-size:12px; gap:7px; }
  .compact-header .cart-button span { display:inline; }
  .compact-header .cart-button strong { min-width:25px; height:25px; }
  .compact-header .language-switcher { padding:3px; gap:0; }
  .compact-header .language-switcher button { min-width:29px; height:34px; font-size:11px; }
  .compact-header .main-nav { grid-column:1 / -1; grid-row:2; display:none; width:100%; min-height:0; margin-top:8px; padding:6px; border:1px solid #e1d8cc; border-radius:14px; background:#fffdf8; box-shadow:0 12px 28px rgba(48,32,20,.12); flex-direction:column; align-items:stretch; gap:2px; overflow:visible; font-size:14px; }
  .compact-header .main-nav.is-open { display:flex; }
  .compact-header .main-nav a { width:100%; min-height:44px; padding:0 14px; border-radius:10px; white-space:normal; }
  .compact-header .main-nav a:hover,.compact-header .main-nav a:focus-visible { background:#f3ede3; }
  .compact-header .hero { min-height:210px; padding:18px var(--compact-gutter); }
  .compact-header .hero-bg-image { object-position:63% 50%; }
  .compact-header .hero::before { background:linear-gradient(90deg,rgba(30,22,15,.92),rgba(30,22,15,.57) 65%,rgba(30,22,15,.25)); }
  .compact-header .hero-content { max-width:330px; }
  .compact-header .hero .eyebrow { font-size:9px; margin-bottom:8px; }
  .compact-header .hero h1 { font-size:46px; }
  .compact-header .hero-quality { margin-top:5px; font-size:12px; }
  .compact-header .hero-copy { max-width:320px; font-size:13px; line-height:1.5; margin-top:8px; }
  .compact-header .hero-actions { flex-direction:row; flex-wrap:nowrap; gap:10px; margin-top:13px; }
  .compact-header .hero-actions :is(.primary-link,.secondary-link) { flex:0 1 auto; width:auto; min-height:44px; padding:0 13px; font-size:11px; }
  .compact-header .news-section { display:block; padding:8px var(--compact-gutter); }
  .compact-header .news-section-head { display:none; }
  .compact-header .news-grid { grid-template-columns:1fr; gap:0; }
  .compact-header .news-card { min-height:32px; border:0; padding:5px 0; gap:10px; }
  .compact-header .news-date { font-size:9px; }
  .compact-header .news-card h3 { font-size:11px; line-height:1.4; }
  .compact-header .news-card::after { font-size:15px; }
  .compact-header .menu-section { padding-top:18px; }
  .compact-header .menu-section > .section-head { flex-wrap:wrap; gap:12px; margin-bottom:13px; }
  .compact-header .menu-section > .section-head > div { width:100%; }
  .compact-header .menu-section > .section-head .eyebrow { font-size:8px; margin-bottom:5px; }
  .compact-header .menu-section > .section-head h2 { font-size:32px; }
  .compact-header .menu-section > .section-head .search-box { width:100%; flex-basis:100%; }
  .compact-header .menu-section > .section-head .search-box input { height:42px; font-size:12px; }
  .compact-header .pizza-builder-entry { min-height:60px; padding:8px 12px; gap:8px; margin-bottom:12px; }
  .compact-header .pizza-builder-entry h3 { font-size:12px; }
  .compact-header .pizza-builder-entry p { font-size:10px; margin-top:3px; max-width:210px; }
  .compact-header .pizza-builder-entry-action { flex:0 0 90px; padding:4px 0 4px 6px; gap:8px; font-size:11px; line-height:1.35; }
  .compact-header .pizza-builder-entry-action > span:last-child { font-size:17px; }
  .compact-header .category-filters { gap:6px; margin:0 -18px 12px; padding:0 18px 2px; }
  .compact-header .category-filters button { min-height:44px; font-size:11px; padding:9px 13px; }
  .compact-header #productGrid > .bundles-section:first-child { margin:0 -4px; padding:11px 10px; border-radius:12px; }
  .compact-header #productGrid > .product-section:first-child .product-section-head h3 { font-size:22px; }
  .compact-header #productGrid > .product-section:first-child { gap:12px; }
}
@media(max-width:360px) {
  .compact-header .site-header { padding-inline:10px; }
  .compact-header .brand-logo { width:93px; }
  .compact-header .cart-button span { display:none; }
  .compact-header .cart-button { padding:7px 9px; }
  .compact-header .header-actions { gap:6px; }
  .compact-header .hero h1 { font-size:46px; }
  .compact-header .hero-copy { font-size:12px; }
  .compact-header .hero-actions :is(.primary-link,.secondary-link) { padding-inline:10px; font-size:10px; }
  .compact-header .menu-section > .section-head h2 { font-size:30px; }
  .compact-header .pizza-builder-entry p { max-width:170px; }
}
