/*
Theme Name: Tbili NYC
Description: A warm, editorial WordPress theme for Tbili NYC. Companion: Tbili Manager.
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: tbili-nyc
License: GPL-2.0-or-later
*/
@font-face{font-family:"DM Sans";src:url(assets/dm-sans.woff2) format("woff2");font-display:swap;font-weight:400 700}
@font-face{font-family:"Playfair Display";src:url(assets/playfair.woff2) format("woff2");font-display:swap;font-weight:400 700}
:root{--tb-cream:#f8f3e8;--tb-paper:#fffdf8;--tb-wine:#682638;--tb-ink:#28221e;--tb-muted:#635650;--tb-line:#ded3c6;--tb-blush:#f0e1dc;--tb-serif:"Playfair Display",Georgia,serif;--tb-sans:"DM Sans",system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}body{margin:0;background:var(--tb-cream);color:var(--tb-ink);font:1rem/1.6 var(--tb-sans)}img{max-width:100%;height:auto}a{color:var(--tb-wine);text-underline-offset:.19em}button,input,select,textarea{font:inherit}h1,h2,h3{font-family:var(--tb-serif);line-height:1.12;margin:.25em 0 .45em}h1{font-size:clamp(2.6rem,6vw,5.2rem);letter-spacing:-.045em}h2{font-size:clamp(1.8rem,3.3vw,3rem);letter-spacing:-.03em}h3{font-size:1.35rem}p{margin:0 0 1em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9a4b22;outline-offset:3px}.tb-shell{width:min(1200px,calc(100% - 64px));margin-inline:auto}.tb-skip{position:absolute;left:1rem;top:0;transform:translateY(-130%);background:white;padding:.75rem;z-index:50}.tb-skip:focus{transform:translateY(0)}.tb-site-header{border-bottom:1px solid var(--tb-line);background:var(--tb-paper)}.tb-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:24px}.tb-brand{font:700 2.05rem/1 var(--tb-serif);color:var(--tb-ink);text-decoration:none;white-space:nowrap}.tb-nav ul{display:flex;align-items:center;gap:clamp(.8rem,2.3vw,2rem);padding:0;margin:0;list-style:none}.tb-nav a{font-weight:600;color:var(--tb-ink);text-decoration:none}.tb-nav a:hover,.tb-nav [aria-current=page]{color:var(--tb-wine);text-decoration:underline}.tb-nav-toggle{display:none}.tb-button,.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce button.button.alt{background:var(--tb-wine);color:white;border:1px solid var(--tb-wine);border-radius:5px;padding:.72rem 1.1rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.35;min-height:44px;cursor:pointer;transition:background .18s,color .18s,transform .18s}.tb-button:hover,.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover{background:#501727;color:white;transform:translateY(-1px)}.tb-button--outline,.is-style-outline>.wp-block-button__link{background:transparent;color:var(--tb-wine);border:1px solid var(--tb-wine)}.tb-main{min-height:55vh}.tb-page{padding:clamp(34px,7vw,82px) 0}.tb-page-title{max-width:900px;margin-bottom:1.5rem}.tb-page-content>p,.tb-page-content>ul{max-width:72ch}.tb-page-content>.wp-block-group{margin-block:1.5rem}.tb-home{padding-top:clamp(20px,3vw,40px)}.tb-hero{display:grid!important;grid-template-columns: .88fr 1.12fr;align-items:center;gap:clamp(20px,4vw,56px);margin-block:0 3rem!important}.tb-hero h1{font-size:clamp(2.5rem,5.1vw,4.85rem)}.tb-hero p:not(.tb-eyebrow){font-size:clamp(1rem,2vw,1.2rem);color:var(--tb-muted)}.tb-hero figure{margin:0}.tb-hero img{display:block;width:100%;aspect-ratio:1.36;object-fit:cover;border-radius:4px}.tb-eyebrow{font-size:.77rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--tb-wine);margin-bottom:1rem}.tb-home-section{padding:clamp(24px,4vw,48px);background:var(--tb-blush);border-radius:6px}.tb-visit-strip{margin:2rem 0 3rem;padding:1.2rem 0;border-top:1px solid var(--tb-line)}.tb-site-footer{padding:2.3rem 0;background:#2d171d;color:#fbf3e6}.tb-site-footer .tb-brand,.tb-site-footer a{color:#fbf3e6}.tb-footer-grid{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}.tb-footer-grid p{margin:.6rem 0 0}.tb-footer-links{display:flex;flex-wrap:wrap;gap:1rem}.tb-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tb-menu-card{background:var(--tb-paper);border:1px solid var(--tb-line);border-radius:7px;overflow:hidden;display:flex;flex-direction:column}.tb-menu-card img{width:100%;aspect-ratio:1.65;object-fit:cover;display:block}.tb-menu-card-copy{padding:1rem;flex:1;display:flex;flex-direction:column;align-items:flex-start}.tb-menu-card-copy p{color:var(--tb-muted)}.tb-menu-card-copy .tb-menu-action{margin-top:auto}.tb-menu-section{margin:1.5rem 0 2.2rem}.tb-menu-nav{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.1rem}.tb-menu-nav a{border:1px solid var(--tb-line);border-radius:99px;padding:.3rem .85rem;text-decoration:none;background:var(--tb-paper)}.tb-chip{display:inline-block;font:700 .8rem/1.35 var(--tb-sans);border-radius:99px;padding:.27rem .65rem;background:#ece7e0;color:#42332d}.tb-chip--good{background:#e1eddc;color:#25462c}.tb-chip--warn{background:#fff0ce;color:#664209}.tb-note{border-left:4px solid var(--tb-wine);background:var(--tb-paper);padding:.85rem 1rem;margin:1rem 0}.tb-form{max-width:750px;background:var(--tb-paper);border:1px solid var(--tb-line);border-radius:8px;padding:clamp(16px,4vw,30px)}.tb-form label{display:block;font-weight:700}.tb-form input:not([type=checkbox]),.tb-form select,.tb-form textarea,.woocommerce form .input-text,.woocommerce form select,.tb-field{width:100%;padding:.58rem .72rem;color:var(--tb-ink);background:white;border:1px solid #b7aaa1;border-radius:5px;min-height:42px}.tb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.tb-hidden{position:absolute;left:-10000px}.tb-footer-meta{font-size:.91rem;color:#e1cdc7}.woocommerce div.product p.price{color:var(--tb-wine)}.woocommerce div.product form.cart .button{margin-top:0}.woocommerce table.shop_table{background:var(--tb-paper)}.tb-wc{padding-block:2.8rem}
@media(max-width:900px){.tb-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-header-inner{flex-wrap:wrap;gap:12px;padding-block:14px;min-height:65px}.tb-nav{width:100%;order:3}.tb-nav ul{flex-wrap:wrap;padding:.4rem 0}.tb-header-cta{margin-left:auto}.tb-nav-toggle{display:block;background:transparent;color:var(--tb-wine);border:1px solid var(--tb-line);padding:.42rem .7rem;border-radius:5px;font-weight:700;cursor:pointer}.tb-nav[hidden]{display:none}.tb-hero{grid-template-columns:1fr;gap:1.2rem}.tb-hero img{aspect-ratio:1.45}.tb-shell{width:min(1200px,calc(100% - 36px))}}
@media(max-width:480px){.tb-card-grid,.tb-form-grid{grid-template-columns:1fr}.tb-brand{font-size:1.65rem}.tb-header-cta{display:none}.tb-nav-toggle{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.tb-hero>div{animation:tb-enter .4s ease-out both}@keyframes tb-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
