:root{
    --black:#141313;
    --charcoal:#242220;
    --steel:#8a8580;
    --steel-light:#c9c4bd;
    --off-white:#f3efe7;
    --paper:#ece6d9;
    --red:#891b1a;
    --red-dark:#6f1615;
    --red-bright:#b01d1b;
    --rivet:#3a3733;
    --steel-text:#6b6763; /* WCAG-AA text variant of --steel, 4.5:1+ on off-white/paper */
    --red-glow:#dd3836; /* WCAG-AA text variant of --red-bright for use on dark backgrounds */
    --nav-height:80px;
    --status-open:#2f5d34;
    --status-closed:var(--red-dark);
    /* Roughens vector letterforms with an SVG turbulence displacement, mimicking
       the worn stencil edges in the logo. Applied only to logo-style text
       (brand mark, hero title, footer mark) so body headings stay crisp/legible.
       References the inline <svg><filter id="wh319-rough"> in each page's markup
       rather than a data-URI: iOS Safari frequently fails to resolve filter
       data-URIs, silently rendering the filtered text invisible.
       The displacement is an absolute pixel value, so the same filter reads much
       stronger on small mobile-sized text than on the large desktop hero title;
       --distress-filter-mobile (swapped in below 600px) uses a lighter displacement
       so it doesn't turn into illegible fuzz on phones. */
    --distress-filter:url(#wh319-rough);
    --distress-filter-mobile:url(#wh319-rough-sm);
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;scroll-padding-top:var(--nav-height);}
  body{
    background:var(--off-white);
    color:var(--black);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1,.display{
    font-family:'Anton',sans-serif;
    text-transform:uppercase;
    letter-spacing:0.5px;
    line-height:0.95;
  }
  /* h2/h3 use Oswald instead of Anton: Anton is a tight, heavy display face that's
     hard to read at body-heading sizes. Reserved for the hero (h1) and the brand
     mark only. */
  h2,h3{
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    letter-spacing:0.5px;
    font-weight:700;
    line-height:1.2;
  }
  /* Day names in the weekly schedule use the .display class on the closed-Monday
     card too; keep those in the readable Oswald heading font like the other days. */
  .day-card .display{
    font-family:'Oswald',sans-serif;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.5px;
  }
  .field-label{
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    letter-spacing:1px;
    font-size:0.75rem;
    font-weight:600;
    color:var(--red);
  }
  .meta-line{
    font-family:'Oswald',sans-serif;
    font-size:0.85rem;
    color:var(--steel-light);
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  ::selection{background:var(--red);color:var(--off-white);}

  /* texture */
  .grain{
    position:relative;
  }
  .grain::before{
    content:"";
    position:absolute;inset:0;
    pointer-events:none;
    opacity:0.05;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    mix-blend-mode:overlay;
  }

  /* NAV */
  header{
    position:sticky;top:0;z-index:500;
    background:var(--black);
    border-bottom:4px solid var(--red);
  }
  .nav-wrap{
    max-width:1280px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;
    padding:0.7rem 1.5rem;
  }
  .brand{
    display:flex;align-items:center;gap:0.7rem;
    color:var(--off-white);
  }
  .brand .mark{
    font-family:'Anton',sans-serif;
    font-size:1.5rem;
    line-height:0.85;
    letter-spacing:1px;
    filter:var(--distress-filter);
  }
  .brand .mark span{color:var(--red-bright);}
  .brand small{
    display:block;font-family:'Oswald',sans-serif;
    font-size:0.6rem;letter-spacing:3px;color:var(--steel-light);
    margin-top:2px;
  }
  nav{display:flex;gap:0.3rem;}
  nav a{
    background:none;border:none;color:var(--steel-light);
    font-family:'Oswald',sans-serif;font-weight:600;
    letter-spacing:1.5px;font-size:0.82rem;text-transform:uppercase;
    padding:0.7rem 0.85rem;cursor:pointer;
    border-bottom:3px solid transparent;
    transition:all .2s;
  }
  nav a:hover{color:#fff;}
  nav a.active{color:#fff;border-bottom-color:var(--red-bright);}
  .nav-toggle{display:none;background:none;border:none;color:#fff;font-size:1.6rem;cursor:pointer;padding:0.5rem;line-height:1;}

  @media(max-width:920px){
    nav{
      display:none;
      position:absolute;top:100%;left:0;right:0;
      background:var(--black);
      flex-direction:column;
      border-top:1px solid var(--rivet);
    }
    nav.open{display:flex;}
    nav a{text-align:left;padding:0.9rem 1.5rem;border-bottom:1px solid var(--rivet);border-left:3px solid transparent;}
    nav a.active{border-left-color:var(--red-bright);border-bottom-color:var(--rivet);}
    .nav-toggle{display:block;}
  }

  main{animation:fade .4s ease;}
  @keyframes fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}

  /* HERO */
  .hero{
    position:relative;
    background:
      linear-gradient(100deg, rgba(10,9,9,0.94) 0%, rgba(10,9,9,0.86) 35%, rgba(10,9,9,0.55) 70%, rgba(10,9,9,0.4) 100%),
      url("../img/storefront.jpg");
    background-size:cover;
    background-position:center 38%;
    color:var(--off-white);
    padding:6.5rem 1.5rem 5.5rem;
    overflow:hidden;
  }
  .hero-inner{max-width:1280px;margin:0 auto;position:relative;z-index:2;}
  .hero h1{
    font-size:clamp(2.6rem,7vw,5.2rem);
    margin:0.4rem 0 1rem;
    filter:var(--distress-filter);
    text-shadow:0 2px 18px rgba(0,0,0,0.55);
  }
  .hero h1 .accent{color:var(--red-bright);}
  .hero p.lead{
    font-family:'Oswald',sans-serif;
    font-size:1.15rem;font-weight:400;
    max-width:560px;color:var(--steel-light);
    margin-bottom:2rem;
    text-shadow:0 1px 10px rgba(0,0,0,0.6);
  }
  .hero p.meta-line{text-shadow:0 1px 8px rgba(0,0,0,0.6);}
  .hero-ctas{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:0.5rem;}
  .btn{
    font-family:'Oswald',sans-serif;font-weight:600;
    letter-spacing:1.5px;text-transform:uppercase;font-size:0.85rem;
    padding:0.95rem 1.7rem;
    border:2px solid var(--red-bright);
    cursor:pointer;
    display:inline-flex;align-items:center;gap:0.5rem;
    transition:all .2s;
  }
  .btn-solid{background:var(--red-bright);color:#fff;}
  .btn-solid:hover{background:var(--red-dark);border-color:var(--red-dark);}
  .btn-outline{background:transparent;color:#fff;}
  .btn-outline:hover{background:rgba(255,255,255,0.1);}

  .map-hero{
    display:grid;grid-template-columns:1.3fr 1fr;
    gap:0;
    border:1px solid var(--rivet);
    background:var(--charcoal);
  }
  .map-section{
    background:
      repeating-linear-gradient(115deg, #1c1a19 0px, #1c1a19 2px, #201e1c 2px, #201e1c 40px);
    padding:3rem 1.5rem;
  }
  .map-section .map-hero{max-width:1280px;margin:0 auto;}
  .map-hero iframe{width:100%;height:100%;min-height:320px;border:0;filter:grayscale(0.35) contrast(1.1);}
  .map-info{padding:2rem;display:flex;flex-direction:column;justify-content:center;gap:1.1rem;}
  .map-info h3{font-size:1.4rem;color:var(--off-white);}
  .info-row{display:flex;gap:0.9rem;font-family:'Oswald',sans-serif;}
  .info-row .k{color:var(--red-glow);font-weight:600;min-width:78px;font-size:0.82rem;letter-spacing:1px;text-transform:uppercase;padding-top:0.15rem;}
  .info-row .v{color:var(--steel-light);line-height:1.5;font-size:0.95rem;}
  .hours-list{list-style:none;font-family:'Oswald',sans-serif;font-size:0.92rem;color:var(--steel-light);}
  .hours-list li{display:flex;justify-content:space-between;padding:0.25rem 0;border-bottom:1px dotted var(--rivet);}
  .hours-list li span:last-child{color:#fff;font-weight:500;}
  .hours-list li.closed span:last-child{color:var(--red-glow);}

  /* live open/closed status badge */
  .status-badge{
    display:inline-flex;align-items:center;gap:0.4rem;
    font-family:'Oswald',sans-serif;font-weight:600;
    font-size:0.78rem;letter-spacing:1px;text-transform:uppercase;
    color:#fff;padding:0.35rem 0.75rem;
    white-space:nowrap;
  }
  .status-badge::before{
    content:"";width:8px;height:8px;background:#fff;border-radius:50%;flex:none;
  }
  .status-badge.is-open{background:var(--status-open);}
  .status-badge.is-closed{background:var(--status-closed);}
  .hours-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:0.8rem;}
  .hours-head h3,.hours-head h4{margin-bottom:0;}
  .footer-status{margin-top:0.6rem;}

  @media(max-width:800px){
    .map-hero{grid-template-columns:1fr;}
  }

  /* generic section shell */
  .shell{max-width:1280px;margin:0 auto;padding:4.5rem 1.5rem;}
  .shell.narrow{max-width:900px;}
  .section-head{margin-bottom:2.8rem;}
  .section-head h2{font-size:clamp(2rem,4.5vw,3.1rem);}
  .section-head p{
    font-family:'Oswald',sans-serif;color:var(--steel-text);
    font-size:1.05rem;max-width:640px;margin-top:0.6rem;
  }
  .rule{
    height:4px;width:60px;background:var(--red-bright);margin-top:0.9rem;
  }

  /* ABOUT */
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;}
  .about-grid p{font-size:1.05rem;line-height:1.85;color:var(--charcoal);margin-bottom:1.3rem;font-family:'Inter',sans-serif;}
  .about-quote{
    background:var(--black);color:var(--off-white);
    padding:2.5rem;position:relative;
    border-left:5px solid var(--red-bright);
  }
  .about-quote .display{font-size:2rem;color:var(--red-bright);line-height:1.15;}
  .about-quote p{font-family:'Oswald',sans-serif;color:var(--steel-light);margin-top:1.2rem;font-size:1rem;}
  .stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem;}
  .stat{border-top:3px solid var(--red-bright);padding-top:0.8rem;}
  .stat .num{font-family:'Anton',sans-serif;font-size:2.3rem;}
  .stat .lbl{font-family:'Oswald',sans-serif;font-size:0.78rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--steel-text);}
  @media(max-width:800px){.about-grid{grid-template-columns:1fr;}}

  /* EVENTS */
  .week-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
  .day-card{
    background:var(--black);color:var(--off-white);
    padding:1.6rem 1.5rem;position:relative;
    border-top:5px solid var(--steel);
    min-height:210px;
  }
  .day-card.featured{border-top-color:var(--red-bright);background:linear-gradient(150deg,var(--red-dark),#5c1517);}
  .day-card.closed{background:transparent;border:2px dashed var(--rivet);color:var(--steel-text);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:210px;}
  .day-card.closed .display{color:var(--steel-text);font-size:1.6rem;}
  .day-card h3{font-size:1.5rem;margin-bottom:0.2rem;}
  .day-card .time{font-family:'Oswald',sans-serif;font-size:0.78rem;letter-spacing:1px;color:var(--red-glow);text-transform:uppercase;margin-bottom:0.9rem;font-weight:600;}
  .day-card.featured .time{color:#ffd7d3;}
  .day-card ul{list-style:none;font-family:'Oswald',sans-serif;font-size:0.9rem;line-height:1.7;}
  .day-card ul li b{color:#fff;}
  .day-card ul li{color:var(--steel-light);}
  @media(max-width:900px){.week-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:600px){.week-grid{grid-template-columns:1fr;}}

  /* MENU */
  .menu-toggle{display:flex;gap:0.7rem;margin-bottom:3rem;flex-wrap:wrap;}
  .menu-toggle button{
    font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:1.5px;
    text-transform:uppercase;font-size:0.85rem;
    padding:0.75rem 1.6rem;border:2px solid var(--black);background:transparent;cursor:pointer;
  }
  .menu-toggle button.active{background:var(--black);color:#fff;}
  .menu-panel{display:none;}
  .menu-panel.active{display:block;animation:fade .3s ease;}

  .cat-group{margin-bottom:3rem;}
  .cat-group h3{
    font-size:1.6rem;color:var(--red);
    border-bottom:3px solid var(--black);
    padding-bottom:0.5rem;margin-bottom:1.4rem;
    display:flex;align-items:baseline;justify-content:space-between;
  }
  .cat-group h3 .sub{font-family:'Oswald',sans-serif;font-size:0.7rem;letter-spacing:2px;color:var(--steel-text);text-transform:uppercase;font-weight:600;}
  .item-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem 3rem;}
  .item{
    display:flex;justify-content:space-between;gap:1rem;
    padding:0.7rem 0;border-bottom:1px dotted var(--steel-light);
  }
  .item .name{font-family:'Oswald',sans-serif;font-weight:600;font-size:1rem;}
  .item .desc{font-size:0.85rem;color:var(--steel-text);margin-top:0.15rem;line-height:1.4;}
  .item .price{font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:0.3px;color:var(--red);font-size:1rem;white-space:nowrap;padding-top:0.1rem;}
  .heart::after{
    content:"";
    display:inline-block;
    width:0.85em;height:0.85em;
    margin-left:0.35em;
    vertical-align:-0.08em;
    background-color:var(--red-bright);
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
    -webkit-mask-size:contain;mask-size:contain;
  }
  .menu-note-heart{
    display:inline-block;width:0.85em;height:0.85em;
    vertical-align:-0.08em;margin-right:0.15em;
  }
  .spicy-tag{background:transparent;color:var(--red);border:1px solid var(--red);font-family:'Oswald',sans-serif;font-size:0.6rem;letter-spacing:1px;text-transform:uppercase;padding:0.1rem 0.4rem;margin-left:0.4rem;vertical-align:middle;}
  @media(max-width:750px){.item-grid{grid-template-columns:1fr;}}

  .drink-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2.5rem;}
  @media(max-width:900px){.drink-cols{grid-template-columns:1fr;}}
  .drink-cols h4{font-family:'Oswald',sans-serif;font-weight:700;letter-spacing:1px;text-transform:uppercase;font-size:0.9rem;color:var(--black);margin:1.3rem 0 0.5rem;border-left:3px solid var(--red-bright);padding-left:0.6rem;}
  .drink-cols ul{list-style:none;font-size:0.92rem;}
  .drink-cols li{display:flex;justify-content:space-between;padding:0.28rem 0;color:var(--charcoal);}
  .drink-cols li span:last-child{color:var(--red);font-weight:600;font-family:'Oswald',sans-serif;}
  .cocktail{margin-bottom:0.9rem;}
  .cocktail .cname{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:0.9rem;}
  .cocktail .cname span{color:var(--red);}
  .cocktail .cdesc{font-size:0.82rem;color:var(--steel-text);line-height:1.4;}

  .menu-note{
    margin-top:3rem;padding:1.2rem 1.5rem;background:var(--paper);
    font-family:'Oswald',sans-serif;font-size:0.85rem;color:var(--charcoal);
    border-left:4px solid var(--red-bright);
  }

  /* CATERING */
  .cater-hero{background:var(--black);color:var(--off-white);padding:3rem 2rem;margin-bottom:3rem;position:relative;}
  .cater-hero h2{font-size:2.2rem;}
  .cater-hero p{font-family:'Oswald',sans-serif;color:var(--steel-light);margin-top:0.6rem;max-width:600px;}
  .cater-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem 3rem;}
  @media(max-width:750px){.cater-grid{grid-template-columns:1fr;}}
  .cater-item{padding:0.9rem 0;border-bottom:1px dotted var(--steel-light);}
  .cater-item .top{display:flex;justify-content:space-between;gap:1rem;font-family:'Oswald',sans-serif;font-weight:600;}
  .cater-item .price{color:var(--red);font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:0.3px;white-space:nowrap;}
  .cater-item .desc{font-size:0.85rem;color:var(--steel-text);margin-top:0.2rem;line-height:1.4;}

  .breakfast-pkgs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:1rem;}
  @media(max-width:900px){.breakfast-pkgs{grid-template-columns:1fr;}}
  .pkg{border:2px solid var(--black);padding:1.6rem;position:relative;background:var(--off-white);}
  .pkg .pname{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.3px;font-size:1.15rem;margin-bottom:0.3rem;}
  .pkg .pprice{font-family:'Oswald',sans-serif;color:var(--red-bright);font-weight:700;margin-bottom:0.8rem;}
  .pkg p{font-size:0.88rem;line-height:1.55;color:var(--steel-text);}

  .cater-cta{
    margin-top:3rem;text-align:center;padding:3rem 1.5rem;
    background:var(--paper);
  }
  .cater-cta h3{
    font-family:'Oswald',sans-serif;text-transform:none;font-weight:700;
    letter-spacing:0.3px;line-height:1.3;color:var(--black);
  }
  .cater-cta p{font-family:'Oswald',sans-serif;margin-bottom:1.3rem;color:var(--charcoal);}

  /* CONTACT */
  .contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:3.5rem;align-items:start;}
  @media(max-width:850px){.contact-grid{grid-template-columns:1fr;}}

  .quick-actions{display:flex;flex-direction:column;gap:0.8rem;margin-bottom:2.2rem;}
  .btn-outline-dark{background:transparent;color:var(--black);border-color:var(--black);}
  .btn-outline-dark:hover{background:var(--black);color:#fff;}

  .contact-info .info-block{margin-bottom:2rem;}
  .contact-info .field-label{display:block;margin-bottom:0.3rem;}
  .contact-info a.big{font-family:'Oswald',sans-serif;font-weight:700;font-size:1.35rem;color:var(--black);}
  .contact-info a.big:hover{color:var(--red);}
  .info-block .btn{margin-top:0.7rem;padding:0.55rem 1.1rem;font-size:0.78rem;}

  .contact-form-card{
    background:#fff;border-top:4px solid var(--red-bright);
    padding:2.2rem 2rem;
  }
  .form-card-title{font-size:1.6rem;margin-bottom:0.4rem;}
  .form-card-sub{font-family:'Oswald',sans-serif;color:var(--steel-text);font-size:0.92rem;margin-bottom:1.6rem;}

  form{display:flex;flex-direction:column;gap:1.3rem;}
  .field{display:flex;flex-direction:column;gap:0.45rem;}
  form label{font-family:'Oswald',sans-serif;font-size:0.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;color:var(--charcoal);}
  form label .req{color:var(--red);}
  form input,form select,form textarea{
    padding:0.8rem 1rem;border:1.5px solid var(--rivet);background:#fff;
    font-family:'Inter',sans-serif;font-size:0.95rem;color:var(--black);
    border-radius:0;transition:border-color .15s;
  }
  form input::placeholder,form textarea::placeholder{color:var(--steel);}
  form input:hover,form select:hover,form textarea:hover{border-color:var(--black);}
  form input:focus,form select:focus,form textarea:focus{
    outline:none;border-color:var(--red-bright);box-shadow:0 0 0 3px rgba(195,48,54,0.18);
  }
  form select{
    appearance:none;-webkit-appearance:none;-moz-appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23141313' stroke-width='2' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 1rem center;
    padding-right:2.4rem;cursor:pointer;
  }
  form textarea{resize:vertical;min-height:130px;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;}
  @media(max-width:500px){.row2{grid-template-columns:1fr;}}

  .form-actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:0.2rem;}
  .form-note{font-size:0.78rem;color:var(--steel-text);font-family:'Oswald',sans-serif;}
  .form-success{display:none;background:var(--black);color:#fff;padding:1.2rem;font-family:'Oswald',sans-serif;margin-top:0.5rem;border-left:4px solid var(--red-bright);}
  .form-success.show{display:block;}

  /* footer */
  footer{
    background:var(--black);color:var(--steel-light);
    padding:3rem 1.5rem 1.5rem;
  }
  .footer-inner{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:2rem;}
  footer .mark{font-family:'Anton',sans-serif;font-size:1.6rem;color:#fff;filter:var(--distress-filter);}
  footer .mark span{color:var(--red-bright);}
  footer .fcol{font-family:'Oswald',sans-serif;font-size:0.88rem;line-height:2;}
  footer .fcol h4{font-family:'Oswald',sans-serif;color:#fff;letter-spacing:1.5px;font-size:0.78rem;text-transform:uppercase;margin-bottom:0.6rem;}
  .footer-bottom{max-width:1280px;margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--rivet);font-family:'Oswald',sans-serif;font-size:0.75rem;color:var(--steel);text-align:center;}

  .btn-block{width:100%;justify-content:center;}

  /* MOBILE PASS */
  @media(max-width:600px){
    .shell{padding:3rem 1.25rem;}
    .hero{padding:4rem 1.25rem 3rem;}
    .cater-hero{padding:2.2rem 1.25rem;}
    .contact-form-card{padding:1.6rem 1.25rem;}
    .cat-group h3{flex-direction:column;align-items:flex-start;gap:0.3rem;}
    .stat-strip{grid-template-columns:1fr;gap:1.1rem;}
    .info-block .btn{padding:0.75rem 1.1rem;font-size:0.8rem;}
    .form-actions{flex-direction:column;align-items:flex-start;gap:0.7rem;}
    .form-actions .btn{width:100%;justify-content:center;}
    .map-info{padding:1.5rem 1.25rem;}
    .about-quote{padding:1.75rem;}
    .day-card,.day-card.closed{min-height:0;}
    :root{--distress-filter:var(--distress-filter-mobile);}
  }
