/* auto-generated by f2b-importer vtenant-motion-derive-v1; tenant=goban-bbq; review at /admin/platform/tenants/goban-bbq/content/preview; see ADR-027 */
@layer tenant {
  @keyframes --f2b-motion-goban-bbq-goban-steam-rise {
    0% {
      opacity: 0;
      transform: translate(0, .4rem) scaleY(.5);
    }
    30% {
      opacity: .9;
      transform: translate(.02rem, -.05rem) scaleY(1);
    }
    65% {
      opacity: .35;
      transform: translate(-.06rem, -.42rem) scaleY(1.12);
    }
    100% {
      opacity: 0;
      transform: translate(.05rem, -.75rem) scaleY(1.2);
    }
  }
  @keyframes --f2b-motion-goban-bbq-fadeup {
    from {
      opacity: 0;
      transform: translateY(28px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes --f2b-motion-goban-bbq-fadein {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes --f2b-motion-goban-bbq-scalein {
    from {
      opacity: 0;
      transform: scale(.94);
    }
    to {
      opacity: 1;
      transform: scale(1);
    }
  }
  @keyframes --f2b-motion-goban-bbq-blink {
    0%, 100% {
      opacity: 1;
    }
    50% {
      opacity: .3;
    }
  }
  @keyframes --f2b-motion-goban-bbq-emberbreath {
    0%, 100% {
      opacity: .42;
      transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
      opacity: .68;
      transform: translate3d(0, -12px, 0) scale(1.03);
    }
  }
  @keyframes --f2b-motion-goban-bbq-lightsweep {
    0% {
      transform: translateX(-120%) skewX(-18deg);
    }
    100% {
      transform: translateX(140%) skewX(-18deg);
    }
  }
  @keyframes --f2b-motion-goban-bbq-grainshift {
    0%, 100% {
      transform: translate(0);
    }
    25% {
      transform: translate(-1%, 1%);
    }
    50% {
      transform: translate(1%, -1%);
    }
    75% {
      transform: translate(-.5%, -.5%);
    }
  }
  @keyframes --f2b-motion-goban-bbq-pagefadein {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  .hero:before {
    animation: none;
    opacity: .55;
  }
  .set-card, .drink-category {
    backdrop-filter: none;
  }
  .goban-bbq-reveal {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity .7s var(--ease-out),
            transform .7s var(--ease-out);
  }
  .goban-bbq-reveal.visible {
    opacity: 1;
    transform: translateY(0);
  }
  .goban-bbq-reveal-left {
    opacity: 0;
    transform: translateX(-32px);
    transition: opacity .7s var(--ease-out),
            transform .7s var(--ease-out);
  }
  .goban-bbq-reveal-left.visible {
    opacity: 1;
    transform: translateX(0);
  }
  .goban-bbq-reveal-right {
    opacity: 0;
    transform: translateX(32px);
    transition: opacity .7s var(--ease-out),
            transform .7s var(--ease-out);
  }
  .goban-bbq-reveal-right.visible {
    opacity: 1;
    transform: translateX(0);
  }
  .goban-bbq-reveal-scale {
    opacity: 0;
    transform: scale(.93);
    transition: opacity .65s var(--ease-out),
            transform .65s var(--ease-out);
  }
  .goban-bbq-reveal-scale.visible {
    opacity: 1;
    transform: scale(1);
  }
  .goban-bbq-stagger > * {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .5s var(--ease-out),
            transform .5s var(--ease-out);
  }
  .goban-bbq-stagger.visible > :first-child {
    opacity: 1;
    transform: none;
    transition-delay: 0s;
  }
  .goban-bbq-stagger.visible > :nth-child(2) {
    opacity: 1;
    transform: none;
    transition-delay: .1s;
  }
  .goban-bbq-stagger.visible > :nth-child(3) {
    opacity: 1;
    transform: none;
    transition-delay: .2s;
  }
  .goban-bbq-stagger.visible > :nth-child(4) {
    opacity: 1;
    transform: none;
    transition-delay: .3s;
  }
  .goban-bbq-stagger.visible > :nth-child(5) {
    opacity: 1;
    transform: none;
    transition-delay: .4s;
  }
  .goban-bbq-stagger.visible > :nth-child(6) {
    opacity: 1;
    transform: none;
    transition-delay: .5s;
  }
  .nav-connect {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--fog2);
    text-decoration: none;
    font-family: Barlow Condensed, sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .12em;
    transition: color .2s var(--ease-out);
  }
  .nav-bi {
    height: 56px;
    object-fit: contain;
    transition: transform .3s, filter .3s;
    filter: drop-shadow(0 0 12px #bf3b1a26);
  }
  .nav-brand:hover .nav-bi {
    transform: scale(1.03);
  }
  .nav-tab {
    background: none;
    border: none;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--fog);
    padding: 10px 26px;
    cursor: pointer;
    transition: color .2s;
    text-decoration: none;
    display: inline-block;
    position: relative;
    white-space: nowrap;
  }
  .nav-tab:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 20px;
    right: 20px;
    height: 2px;
    background: var(--ember);
    transform: scaleX(0);
    transition: transform .25s;
  }
  .nav-tab.active:after {
    transform: scaleX(1);
  }
  .nav-hire {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    background: none;
    color: var(--ember);
    border: 1px solid #bf3b1a73;
    padding: 5px 12px;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    transition: border-color .2s, color .2s;
    white-space: nowrap;
  }
  .nav-actions a[data-f2b="chat"] {
    background: var(--ember);
    color: var(--cream2);
    border-color: var(--ember);
    box-shadow: 0 6px 18px #bf3b1a59;
    transition: background .2s, box-shadow .2s, transform .15s;
  }
  .nav-actions a[data-f2b="chat"]:hover {
    background: var(--ember2);
    border-color: var(--ember2);
    color: var(--cream2);
    transform: translateY(-1px);
    box-shadow: 0 9px 24px #bf3b1a73;
  }
  .goban-bbq-page.fade-in {
    animation: .25s both --f2b-motion-goban-bbq-pagefadein;
  }
  .hero:before {
    content: "";
    position: absolute;
    inset: -20% -10%;
    z-index: 1;
    pointer-events: none;
    background: radial-gradient(80% 38% at 50% 105%, #bf3b1a5c, #0000 68%), linear-gradient(90deg, #0000 0%, #b8943e17 48%, #0000 100%);
    filter: blur(2px);
    animation: 7s ease-in-out infinite --f2b-motion-goban-bbq-emberbreath;
  }
  .hero:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(90deg, #0c0b0994, #0000 22% 78%, #0c0b0994), repeating-linear-gradient(90deg, #faf6ee05 0 1px, #0000 1px 110px);
    opacity: .7;
  }
  .global-brush-left, .global-brush-right {
    position: fixed;
    top: 0;
    bottom: 0;
    z-index: 5;
    pointer-events: none;
    opacity: .006;
    animation: 2s .5s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-body {
    position: relative;
    z-index: 10;
    max-width: 850px;
    margin: 0 auto;
    animation: 1s .1s both --f2b-motion-goban-bbq-fadeup;
    padding: 60px 80px;
    text-shadow: 0 20px 60px #0c0b09b8, 0 2px 18px #0c0b09cc;
  }
  .hero-body:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: min(720px, 82vw);
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, #0000, #d4ad5ad1, #0000);
  }
  .hero-body:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 12px;
    width: min(560px, 70vw);
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, #0000, #b8943e6b, #0000);
  }
  .hero-seal {
    width: 90px;
    height: 90px;
    border-radius: 0;
    display: block;
    margin: 0 auto 28px;
    filter: drop-shadow(0 0 40px #bf3b1a80) drop-shadow(0 0 80px #bf3b1a40);
    animation: .9s .2s both --f2b-motion-goban-bbq-scalein;
    transition: transform .4s, filter .4s;
    background: none;
  }
  .hero-seal:hover {
    transform: scale(1.06) rotate(-3deg);
    filter: drop-shadow(0 0 50px #bf3b1aa6) drop-shadow(0 0 100px #bf3b1a59);
  }
  .hero-coming-soon {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--rule2);
    padding: 6px 18px;
    margin-bottom: 32px;
    animation: .8s .5s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-coming-soon-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--ember);
    animation: 2s ease-in-out infinite --f2b-motion-goban-bbq-blink;
  }
  .hero-coming-soon-text {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: var(--gold);
  }
  .hero-title-pre {
    display: flex;
    justify-content: center;
    gap: 1.2em;
    flex-wrap: wrap;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: clamp(13px, 1.5vw, 17px);
    letter-spacing: .55em;
    text-transform: uppercase;
    color: var(--fog);
    margin-bottom: 12px;
    animation: .8s .6s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-title {
    font-family: DM Serif Display, Playfair Display, serif;
    font-weight: 400;
    font-size: clamp(88px, 15vw, 168px);
    line-height: .88;
    letter-spacing: .06em;
    color: var(--cream2);
    margin-bottom: 12px;
    animation: 1s .4s both --f2b-motion-goban-bbq-fadeup;
    text-shadow: 0 4px #0c0b098a, 0 24px 80px #0c0b09d6;
  }
  .hero-title-rule {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 20px auto;
    max-width: 480px;
    animation: 1s .9s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-korean {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: clamp(15px, 2.2vw, 21px);
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--fog2);
    margin-bottom: 8px;
    animation: .8s 1s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-meaning {
    font-family: Playfair Display, serif;
    font-weight: 700;
    font-style: italic;
    font-size: clamp(14px, 1.7vw, 19px);
    color: var(--gold2);
    margin-bottom: 44px;
    animation: .8s 1.1s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 48px;
    flex-wrap: wrap;
    animation: .8s 1.2s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-meta-item {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--fog2);
    padding: 0 22px;
  }
  .hero-ctas {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    animation: .8s 1.3s both --f2b-motion-goban-bbq-fadeup;
  }
  .btn-fill {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .25em;
    text-transform: uppercase;
    background: var(--ember);
    color: var(--cream2);
    border: none;
    padding: 14px 36px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: background .2s, transform .15s, box-shadow .2s;
    position: relative;
    overflow: hidden;
    box-shadow: 0 12px 32px #bf3b1a47;
  }
  .btn-fill:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #0000, #faf6ee38, #0000);
    transform: translateX(-120%) skewX(-18deg);
    transition: transform .45s;
  }
  .btn-fill:hover {
    background: var(--ember2);
    transform: translateY(-2px);
    box-shadow: 0 16px 44px #bf3b1a5c;
  }
  .btn-fill:hover:after {
    animation: .75s both --f2b-motion-goban-bbq-lightsweep;
  }
  .btn-outline {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .25em;
    text-transform: uppercase;
    background: none;
    color: var(--cream);
    border: 1px solid var(--rule2);
    padding: 14px 36px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: border-color .2s, color .2s, transform .15s;
  }
  .btn-outline:hover {
    border-color: var(--gold2);
    color: var(--gold2);
    transform: translateY(-2px);
  }
  .btn-forest {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .25em;
    text-transform: uppercase;
    background: var(--forest);
    color: var(--cream2);
    border: 1px solid var(--moss);
    padding: 14px 36px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: background .2s, color .2s, transform .15s;
  }
  .btn-forest:hover {
    background: var(--forest2);
    color: var(--gold2);
    transform: translateY(-2px);
  }
  .about-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: var(--ember);
  }
  .pull-quote {
    border: 1px solid #b8943e4d;
    padding: 40px 44px;
    background: #232019cc;
    margin-bottom: 40px;
    transition: border-color .3s;
    position: relative;
  }
  .pull-quote-attr {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .25em;
    text-transform: uppercase;
    color: var(--fog2);
  }
  .story-inspiration-kicker {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: var(--ember);
    margin-bottom: 12px;
  }
  .fact-box {
    border: 1px solid #b8943e33;
    padding: 28px 24px;
    position: relative;
    transition: border-color .25s, transform .25s;
    cursor: default;
    background: #23201966;
  }
  .fact-box:hover {
    border-color: #b8943e59;
    transform: translateY(-3px);
  }
  .fact-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--fog2);
  }
  .menu-masthead-sub {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--fog2);
    margin-bottom: clamp(16px, 2vw, 24px);
  }
  .menu-sticky-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    background: #0c0b09f7;
    border-bottom: 1px solid var(--rule);
    display: none;
    transition: top .1s;
  }
  .menu-nav-tab {
    background: none;
    border: none;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--fog2);
    padding: 0 24px;
    height: var(--menu-sticky-h);
    cursor: pointer;
    white-space: nowrap;
    border-bottom: 2px solid #0000;
    transition: color .2s, border-color .2s;
    display: flex;
    align-items: center;
  }
  .menu-sec-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: var(--ember);
  }
  .menu-value-kicker {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: var(--ember);
    margin-bottom: 10px;
  }
  .cut {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    padding: 24px 0;
    border-bottom: 1px solid #b8943e1a;
    transition: background .2s;
  }
  .cut-tag {
    display: inline-block;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: .2em;
    text-transform: uppercase;
    background: #bf3b1a2e;
    color: var(--ember2);
    padding: 3px 9px;
    margin-top: 7px;
  }
  .cut-price {
    font-family: Playfair Display, serif;
    font-weight: 700;
    font-size: 22px;
    color: var(--gold2);
    white-space: nowrap;
    padding-top: 2px;
    transition: color .2s;
  }
  .set-card {
    border: 1px solid #b8943e40;
    padding: 40px 36px;
    position: relative;
    transition: border-color .25s, transform .25s;
    background: #2320194d;
    backdrop-filter: blur(5px);
  }
  .set-card:hover {
    border-color: #b8943e73;
    transform: translateY(-4px);
  }
  .set-badge {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: .2em;
    text-transform: uppercase;
    background: var(--ember);
    color: var(--cream2);
    display: inline-block;
    padding: 4px 10px;
    margin-bottom: 16px;
  }
  .set-per {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 11px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--fog2);
  }
  .set-guests {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--fog2);
  }
  .simple {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 0;
    border-bottom: 1px solid #b8943e1a;
    transition: background .2s;
  }
  .drink-category {
    border: 1px solid #b8943e40;
    padding: 32px 28px;
    transition: border-color .25s, transform .25s;
    background: #2320194d;
    backdrop-filter: blur(5px);
  }
  .drink-category:hover {
    border-color: #b8943e73;
    transform: translateY(-3px);
  }
  .drink-cat-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .25em;
    text-transform: uppercase;
    color: var(--ember);
    margin-bottom: 12px;
  }
  .priv-opt {
    border: 1px solid #b8943e40;
    padding: 56px 52px;
    transition: border-color .3s, transform .3s;
    background: #2320194d;
    position: relative;
  }
  .priv-opt:hover {
    border-color: #b8943e73;
    transform: translateY(-4px);
  }
  .priv-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: var(--ember);
  }
  .priv-stat-key {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--fog2);
    margin-top: 4px;
  }
  .visit-sec-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: var(--ember);
    padding-bottom: 18px;
    border-bottom: 1px solid #b8943e33;
    margin-bottom: 28px;
  }
  .hours-row {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 1px solid #b8943e1a;
    transition: background .2s;
  }
  .footer-links a {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: #f2ece073;
    text-decoration: none;
    transition: color .2s;
  }
  .legal-back {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--gold2);
    text-decoration: none;
    transition: color .2s var(--ease-out);
  }
  .legal-date {
    margin-top: 16px;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--fog);
  }
  .highlight-card {
    border: 1px solid var(--rule);
    padding: 48px 40px;
    background: #1f302826;
    transition: border-color .3s, background .3s;
  }
  .vent-photo {
    width: 100%;
    height: 280px;
    object-fit: cover;
    display: block;
    transition: transform .6s;
  }
  .vent-photo-item:hover .vent-photo {
    transform: scale(1.03);
  }
  .vent-photo-caption {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--fog);
    padding: 12px 16px;
    border-top: 1px solid var(--rule);
  }
  .storefront-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s;
    min-height: 280px;
  }
  .storefront-item:hover .storefront-photo {
    transform: scale(1.03);
  }
  .signup-section:before {
    content: "✦";
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 16px;
    color: var(--gold);
    background: var(--ink);
    padding: 0 16px;
    line-height: 1;
  }
  .signup-label {
    font-family: Barlow Condensed, sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .25em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 16px;
  }
  .signup-input {
    flex: 1;
    padding: 14px 20px;
    font-family: Barlow, sans-serif;
    font-size: 15px;
    background: #f2ece00f;
    border: 1px solid var(--rule2);
    color: var(--cream2);
    border-radius: 2px;
    outline: none;
    transition: border-color .3s;
  }
  .signup-input::placeholder {
    color: var(--fog2);
    opacity: .6;
  }
  .signup-btn {
    padding: 14px 28px;
    font-family: Bebas Neue, Barlow Condensed, sans-serif;
    font-size: 16px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--ink);
    background: var(--gold);
    border: none;
    cursor: pointer;
    border-radius: 2px;
    transition: background .3s, transform .2s;
    white-space: nowrap;
  }
  .signup-btn:hover {
    background: var(--gold2);
    transform: translateY(-1px);
  }
  .signup-note {
    margin-top: 16px;
    font-family: Barlow, sans-serif;
    font-size: 13px;
    color: var(--fog2);
    opacity: .5;
  }
  .hero-tagline {
    font-family: Barlow, sans-serif;
    font-weight: 300;
    font-size: clamp(15px, 1.8vw, 20px);
    letter-spacing: .12em;
    color: var(--fog);
    margin-top: 8px;
    margin-bottom: 24px;
    animation: .8s 1.3s both --f2b-motion-goban-bbq-fadein;
  }
  .hero-meaning-block {
    margin-bottom: 36px;
    animation: .8s 1.1s both --f2b-motion-goban-bbq-fadein;
    text-align: center;
  }
  .why-card {
    text-align: center;
    padding: 36px 20px;
    border: 1px solid var(--rule);
    background: #f2ece005;
    transition: background .3s, border-color .3s;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .why-icon {
    font-size: 36px;
    margin-bottom: 20px;
    filter: drop-shadow(0 0 12px #bf3b1a66);
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }
  .why-icon svg {
    transition: transform .35s, filter .35s;
  }
  .why-card:hover .why-icon svg {
    transform: scale(1.1);
    filter: drop-shadow(0 0 8px #b8943e80);
  }
  .why-title {
    font-family: Bebas Neue, Barlow Condensed, sans-serif;
    font-size: 18px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--cream2);
    margin-bottom: 10px;
  }
  .photo-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    background: linear-gradient(135deg, var(--ink2), var(--ink3));
    border: 1px dashed var(--rule);
    color: var(--fog2);
    font-family: Barlow Condensed, sans-serif;
    font-size: 14px;
    letter-spacing: .15em;
    text-transform: uppercase;
  }
  .nav-hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--cream2);
    border-radius: 1px;
    transition: transform .3s, opacity .3s;
  }
  .nav-hamburger.open span:first-child {
    transform: translateY(11px) rotate(45deg);
  }
  .nav-hamburger.open span:nth-child(2) {
    opacity: 0;
  }
  .nav-hamburger.open span:nth-child(3) {
    transform: translateY(-11px) rotate(-45deg);
  }
  .goban-bbq-mobile-menu a {
    font-family: Bebas Neue, Barlow Condensed, sans-serif;
    font-weight: 400;
    font-size: 32px;
    letter-spacing: .12em;
    color: var(--cream);
    text-decoration: none;
    padding: 14px 0;
    text-transform: uppercase;
    transition: color .2s;
  }
  .hero-brush-left {
    width: 25%;
    opacity: .08;
  }
  .hero-brush-right {
    width: 28%;
    opacity: .08;
  }
  .chat-fab {
    position: fixed;
    bottom: 28px;
    right: 28px;
    z-index: 300;
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--ember);
    color: var(--cream2);
    border: none;
    cursor: pointer;
    padding: 14px 22px 14px 18px;
    border-radius: 0;
    box-shadow: 0 8px 32px #bf3b1a73, 0 2px 8px #0c0b0966;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .2em;
    text-transform: uppercase;
    transition: background .2s, transform .2s, box-shadow .2s;
    outline: none;
  }
  .chat-fab:hover {
    background: var(--ember2);
    transform: translateY(-3px);
    box-shadow: 0 14px 40px #bf3b1a8c;
  }
  .chat-fab-pulse {
    position: absolute;
    top: -4px;
    right: -4px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--gold);
    animation: 2s ease-in-out infinite --f2b-motion-goban-bbq-blink;
  }
  .goban-bbq-mobile-menu { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 199; background: #0c0b09f7; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 40px 24px }
  .goban-bbq-mobile-menu[data-f2b-menu-open="true"] { display: flex }
  .goban-bbq-mobile-menu a:hover, .goban-bbq-mobile-menu a.active { color: var(--gold2) }
  .goban-bbq-mobile-menu .nav-hire { font-size: 16px; letter-spacing: .18em; margin-top: 0; padding: 13px 28px }
}
