@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdf8;color:#17201b;font:16px/1.6 'DM Sans',sans-serif}header{position:fixed;z-index:20;top:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 6vw;background:#fffdf8ee;backdrop-filter:blur(10px);box-shadow:0 1px 0 #ddd6ca}header img{height:48px;width:auto}nav{display:flex;gap:24px;align-items:center}nav a{color:#17201b;text-decoration:none;font-size:14px}nav a:hover{color:#b34a2e}.pill,.btn{border-radius:999px;padding:11px 18px;text-decoration:none;font-weight:700}.pill{background:#17201b;color:white}.menu{display:none;border:0;background:none;font-size:26px}.hero{height:780px;position:relative;display:flex;align-items:center;overflow:hidden}.heroimg{position:absolute;width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#0d1416c7,#0d141633)}.herotxt{position:relative;color:white;padding:140px 8vw;max-width:850px}.herotxt small,section>small{letter-spacing:.18em;font-weight:700;font-size:12px}.herotxt h1,h2{font-family:'Playfair Display',serif;font-weight:500}.herotxt h1{font-size:clamp(50px,7vw,88px);line-height:1;margin:20px 0}.herotxt p{font-size:18px;margin-bottom:30px}.red{background:#b34a2e;color:white}.white{background:white;color:#17201b}.intro,section:not(.hero):not(.cta):not(footer){padding:100px 8vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#f7f3ea}.intro p{font-size:20px;color:#68716b;align-self:end}.intro h2,h2{font-size:clamp(38px,4vw,58px);line-height:1.05;margin:10px 0 35px}.lead{max-width:800px;color:#68716b;font-size:18px}.menu-highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:40px 0 55px}.menu-highlights article{padding:26px;border:1px solid #ded9cf;background:#fff;min-height:190px}.menu-highlights span{font-size:11px;letter-spacing:.13em;font-weight:700;color:#b34a2e}.menu-highlights h3{font:23px/1.15 'Playfair Display',serif;margin:13px 0 8px}.menu-highlights p{color:#68716b;font-size:14px}.menu-highlights strong{font-size:18px}.menu-highlights .soon{background:#f7f3ea;border:1px solid #cbbca9}.menu-highlights .soon span{color:#1e6331}.starter-card{background:#f7f3ea;border:1px solid #ded9cf;padding:28px 30px;margin:0 0 28px}.starter-card small{letter-spacing:.13em;font-weight:700;color:#1e6331}.starter-card h3{font:28px/1.2 'Playfair Display',serif;margin:10px 0 20px}.starter-card p{margin:12px 0;padding-bottom:10px;border-bottom:1px solid #ded9cf;color:#48524c}.starter-card strong{float:right;color:#17201b}.menu-book{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}.menu-book figure{margin:0}.menu-book img{width:100%;display:block;background:#ead0ad;box-shadow:0 12px 30px #4a352015}.menu-book figcaption{text-align:center;padding:12px 5px;font-weight:700;color:#1e6331}.about{display:block!important;background:#f7f3ea}.about-copy{max-width:900px;margin:0 auto}.about-copy p{color:#48524c;margin:0 0 17px}.about-image img{width:100%;height:auto;display:block;box-shadow:0 12px 30px #4a352015}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:250px 250px;gap:14px}.gallery img{width:100%;height:100%;object-fit:cover}.gallery img:first-child{grid-row:span 2}.cta{text-align:center;background:#17201b;color:white;padding:100px 8vw}.cta h2{max-width:750px;margin:10px auto 30px}.contact{display:grid!important;grid-template-columns:1fr 1fr;gap:8vw}.contact p{border-bottom:1px solid #ded9cf;padding:15px 0}.map{background:#f7f3ea;padding:55px;min-height:350px}.dark{background:#17201b;color:white;display:inline-block}footer{background:#101612;color:#c7cec8;padding:35px 8vw;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}footer img{height:44px;width:auto}footer small{font-size:12px}@media(max-width:1000px){nav{display:none}.menu{display:block;color:#17201b}.menu.open+nav{display:flex;position:absolute;right:5vw;top:66px;background:#fffdf8;padding:16px;box-shadow:0 12px 30px #0002;border-radius:14px;flex-direction:column;align-items:stretch;gap:12px;min-width:190px}.menu-highlights{grid-template-columns:repeat(2,1fr)}.menu-book{grid-template-columns:repeat(2,1fr)}.intro,.about,.contact{grid-template-columns:1fr!important}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px}.gallery img:first-child{grid-row:span 2}}@media(max-width:560px){header{padding:8px 5vw}header img{height:42px}.hero{height:700px}.herotxt{padding:130px 6vw 50px}.herotxt h1{font-size:52px}.intro,section:not(.hero):not(.cta):not(footer){padding:75px 6vw}.menu-highlights,.menu-book{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-template-rows:220px 220px 220px 220px}.gallery img:first-child{grid-row:auto}.contact{grid-template-columns:1fr!important}.map{padding:35px}footer{display:block;padding:40px 6vw}footer span,footer small{display:block;margin-top:10px}}

/* TEXT MENU — no menu-page screenshots */
.menu-section{background:#fbf4e7}.menu-section>.lead{margin-bottom:48px}.category-head{display:flex;align-items:baseline;gap:16px;border-bottom:1px solid #b9a98f;padding-bottom:12px;margin-bottom:4px}.category-head>span{font-family:'Playfair Display',serif;font-size:22px;color:#b34a2e;font-weight:600}.category-head h3{margin:0;color:#1e6331;font:600 25px/1.2 'Playfair Display',serif;letter-spacing:.04em}.menu-category{margin:0 0 58px}.menu-list{display:grid;grid-template-columns:1fr 1fr;column-gap:46px}.menu-item{display:flex;justify-content:space-between;gap:25px;padding:22px 0;border-bottom:1px solid #dfd4c2;min-height:94px}.menu-item h4{font:600 19px/1.25 'DM Sans',sans-serif;margin:0 0 5px;color:#17201b}.menu-item h4 em{font-style:normal;color:#b34a2e;margin-left:5px}.menu-item p{margin:0;color:#5d655f;font-size:14px;line-height:1.45}.menu-item small{display:block;color:#74766f;font-size:12px;line-height:1.45;margin-top:7px;max-width:650px}.menu-item>strong{white-space:nowrap;font-size:16px;font-weight:700;color:#17201b;padding-top:2px}.menu-item.featured{background:rgba(255,255,255,.38);padding-left:14px;padding-right:14px}.menu-item.soon{background:#f0eadf;border:1px solid #d1c2ac;padding:19px 14px;margin:4px 0}.menu-item.soon h4{color:#1e6331}.menu-item.soon span{display:inline-block;margin-top:8px;font-size:10px;letter-spacing:.13em;font-weight:800;color:#b34a2e}.tag{display:inline-block;font-size:9px;line-height:1;padding:5px 7px;border-radius:20px;background:#b34a2e;color:#fff;letter-spacing:.06em;vertical-align:middle;margin-left:5px}.menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:46px}.menu-columns .menu-item{min-height:100px}.signature-menu{background:#f5ecdc;padding:35px 38px;margin-left:-38px;margin-right:-38px}.drinks-menu{background:#f3eadb;padding:35px 38px;margin-left:-38px;margin-right:-38px}.drink-group{display:grid;grid-template-columns:1fr;gap:0;border-bottom:1px solid #d9cbb7;padding:22px 0}.drink-group:last-child{border-bottom:0}.drink-group h4{margin:0 0 10px;color:#1e6331;font:700 17px/1.2 'DM Sans',sans-serif;letter-spacing:.06em}.drink-group p{margin:6px 0;display:flex;justify-content:space-between;gap:20px;color:#48524c;font-size:14px}.drink-group p strong{white-space:nowrap;color:#17201b;font-weight:700}@media(max-width:1000px){.menu-list{grid-template-columns:1fr}.menu-columns{grid-template-columns:1fr}.signature-menu,.drinks-menu{margin-left:0;margin-right:0;padding:28px 24px}}@media(max-width:560px){.category-head{gap:9px}.category-head h3{font-size:21px}.menu-item{gap:12px;padding:18px 0}.menu-item h4{font-size:17px}.menu-item p{font-size:13px}.menu-item>strong{font-size:14px}.drink-group p{display:block}.drink-group p strong{display:block;margin-top:2px}.signature-menu,.drinks-menu{padding:24px 18px}}


/* TONKIN PROFESSIONAL MENU V4 */
.menu-section{position:relative;background:#f6ead8;padding-top:110px!important;overflow:hidden}.menu-section:before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,#b51f49 0 24%,#1f5b31 24% 76%,#b51f49 76%)}.menu-intro{max-width:920px;margin:0 auto 38px;text-align:center}.menu-kicker{font-size:11px;letter-spacing:.24em;font-weight:800;color:#1f5b31}.menu-intro h2{font-family:'Playfair Display',serif;font-size:clamp(46px,6vw,78px);line-height:.98;color:#1c231e;margin:15px 0 20px}.menu-intro h2 i{color:#b51f49;font-weight:500}.menu-intro .lead{margin:0 auto;max-width:720px;font-size:17px;color:#5c625d}.menu-nav{position:sticky;top:67px;z-index:8;display:flex;justify-content:center;gap:7px;flex-wrap:wrap;padding:13px 10px;margin:0 auto 38px;background:rgba(246,234,216,.94);backdrop-filter:blur(10px);border-top:1px solid #d8c7ad;border-bottom:1px solid #d8c7ad}.menu-nav a{text-decoration:none;color:#293129;border:1px solid #cdbda6;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:700;letter-spacing:.04em;background:#fffaf2}.menu-nav a:hover{background:#1f5b31;color:#fff;border-color:#1f5b31}.chef-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1180px;margin:0 auto 65px}.chef-pick{min-height:135px;padding:24px 25px;background:#fffaf2;border:1px solid #d7c6ab;box-shadow:0 12px 30px rgba(72,49,25,.06);display:flex;flex-direction:column;justify-content:space-between}.chef-pick span{font-size:9px;letter-spacing:.18em;color:#b51f49;font-weight:900}.chef-pick strong{font-family:'Playfair Display',serif;font-size:22px;line-height:1.12;font-weight:500;color:#1c231e}.chef-pick em{font-style:normal;font-weight:800;color:#1f5b31;font-size:14px}.chef-pick.soon-pick{background:#1f5b31;color:#fff;border-color:#1f5b31}.chef-pick.soon-pick span,.chef-pick.soon-pick strong,.chef-pick.soon-pick em{color:#fff}.menu-category{max-width:1180px;margin:0 auto 66px}.category-head{border-bottom:2px solid #1f5b31;padding:0 0 12px;margin-bottom:10px}.category-head>span{font-size:13px;color:#b51f49;letter-spacing:.15em}.category-head h3{font-size:27px;color:#1f5b31;letter-spacing:.02em}.menu-list{column-gap:60px}.menu-item{padding:20px 0;border-bottom:1px solid #d8c8b0;min-height:102px}.menu-item:hover{background:rgba(255,250,242,.55);padding-left:12px;padding-right:12px;transition:.2s}.menu-item h4{font-size:18px;color:#18211b}.menu-item p{font-size:13px;color:#686c66}.menu-item>strong{color:#1c231e}.menu-item.featured{border-left:3px solid #b51f49;padding-left:14px;background:rgba(255,250,242,.55)}.menu-item.soon{background:#eee2d0;border:1px solid #cdbb9e;border-left:4px solid #1f5b31;padding:20px 16px}.menu-item.soon span{color:#1f5b31}.tag{background:#b51f49}.signature-menu,.drinks-menu{max-width:none;padding:55px max(38px,calc((100vw - 1180px)/2));margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-top:1px solid #d7c6ab;border-bottom:1px solid #d7c6ab}.signature-menu{background:#f1e2cd}.drinks-menu{background:#eadbc4}.signature-menu .category-head,.drinks-menu .category-head{max-width:1180px;margin-left:auto;margin-right:auto}.signature-menu .menu-list,.drinks-menu .drink-group{max-width:1180px;margin-left:auto;margin-right:auto}.drink-group{padding:18px 0}.drink-group h4{color:#1f5b31;font-size:15px;letter-spacing:.1em}.drink-group p{padding:6px 0;margin:0;border-bottom:1px dotted #cbbba4}.drink-group p:last-child{border-bottom:0}.about-page{border-top:1px solid #ded2c0}.about-page .about-copy h2{color:#1f5b31}.about-page .about-copy h2 br{display:none}.about-page .about-copy>p:first-of-type{font-family:'Playfair Display',serif;font-size:22px;color:#b51f49}.gallery{max-width:1200px;margin-top:30px}.contact{background:#fffdf8}.map{border:1px solid #ded2c0}.btn.red{background:#b51f49}.pill{background:#1f5b31}@media(max-width:900px){.chef-picks{grid-template-columns:1fr}.menu-nav{top:58px;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.menu-nav a{flex:0 0 auto}.menu-section{padding-top:90px!important}.signature-menu,.drinks-menu{padding-left:24px;padding-right:24px}}@media(max-width:560px){.menu-intro h2{font-size:46px}.menu-intro .lead{font-size:15px}.chef-pick strong{font-size:20px}.category-head h3{font-size:21px}.menu-item h4{font-size:16px}.menu-item p{font-size:12.5px}.signature-menu,.drinks-menu{padding-left:18px;padding-right:18px}.menu-nav{margin-bottom:28px}}

/* TONKIN RESERVATION */
.reservation-section{background:#f6ead8;border-top:1px solid #d8c7ad;border-bottom:1px solid #d8c7ad;padding:90px 24px}.reservation-wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.reservation-intro small{font-size:11px;letter-spacing:.2em;font-weight:800;color:#1f5b31}.reservation-intro h2{font-family:'Playfair Display',serif;font-size:clamp(44px,5vw,68px);line-height:1;color:#1c231e;margin:14px 0 22px}.reservation-intro h2 i{color:#b51f49;font-weight:500}.reservation-intro>p{font-size:16px;line-height:1.7;color:#5d625d;max-width:520px}.reservation-info{display:flex;flex-direction:column;gap:7px;margin-top:28px;padding-left:18px;border-left:3px solid #b51f49;color:#303832}.reservation-info strong{font-family:'Playfair Display',serif;font-size:22px}.reservation-info a{color:#1f5b31;font-weight:800;text-decoration:none}.reservation-form{background:#fffaf2;border:1px solid #d7c6ab;padding:34px;box-shadow:0 16px 40px rgba(72,49,25,.08)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reservation-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;letter-spacing:.06em;font-weight:800;color:#374039}.reservation-form input,.reservation-form select,.reservation-form textarea{font:inherit;font-size:15px;letter-spacing:0;font-weight:400;color:#222a24;background:#fff;border:1px solid #cdbda6;border-radius:2px;padding:13px 14px;outline:none}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{border-color:#1f5b31;box-shadow:0 0 0 2px rgba(31,91,49,.08)}.reservation-form textarea{resize:vertical}.reservation-form .full{grid-column:1/-1}.reservation-submit{border:0;cursor:pointer;width:100%;margin-top:24px;font-size:12px;letter-spacing:.08em}.reservation-note{font-size:11px;line-height:1.5;color:#777066;text-align:center;margin:12px 0 0}.reservation-success{margin-top:14px;padding:12px 14px;background:#e6f0e5;color:#1f5b31;font-size:13px}.reservation-error{margin-top:14px;padding:12px 14px;background:#f7e5e5;color:#9a2036;font-size:13px}@media(max-width:900px){.reservation-wrap{grid-template-columns:1fr;gap:35px}.reservation-section{padding:70px 20px}}@media(max-width:560px){.reservation-form{padding:22px 18px}.form-grid{grid-template-columns:1fr;gap:16px}.reservation-form .full{grid-column:auto}.reservation-intro h2{font-size:44px}.reservation-section{padding:60px 16px}}

/* Dish photos in the online menu */
.menu-item{align-items:flex-start}
.menu-item .dish-thumb{display:block;flex:0 0 112px;width:112px;height:86px;object-fit:cover;border-radius:5px;background:#e9dfd0}
.menu-item>div{flex:1;min-width:0}
@media(max-width:560px){
  .menu-item .dish-thumb{flex-basis:82px;width:82px;height:72px}
}


/* TONKIN weekday lunch menu */
.lunch-menu-panel{max-width:1180px;margin:0 auto 64px;padding:38px 42px 30px;background:#fffaf2;border:1px solid #d7c6ab;box-shadow:0 14px 36px rgba(72,49,25,.07);scroll-margin-top:110px}
.lunch-menu-heading{text-align:center;margin-bottom:22px}
.lunch-eyebrow{font-size:10px;font-weight:900;letter-spacing:.18em;color:#b51f49}
.lunch-menu-heading h2{font:600 clamp(32px,4vw,48px)/1.1 'Playfair Display',serif;color:#1f5b31;margin:10px 0 8px}
.lunch-menu-heading h2 i{font-size:.62em;font-weight:500;color:#b51f49}
.lunch-hours{margin:0;color:#555f57;font-size:15px}.lunch-hours strong{color:#1f5b31}
.lunch-tagline{margin:0 0 8px;color:#252b24;font-size:19px;font-style:italic;font-weight:600}
.lunch-description{margin:0 auto 14px;color:#555f57;font-size:15px}
.lunch-local-label{display:inline-block;margin:2px 0 7px;padding:5px 14px;border:1px solid #1f5b31;border-radius:30px;color:#1f5b31;font-weight:700;letter-spacing:.04em}
.lunch-benefits{max-width:650px;margin:14px auto 0;padding-left:22px;text-align:left;color:#555f57;font-size:14px;line-height:1.7}

.lunch-menu-list{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.lunch-menu-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #e0d4c2}
.lunch-menu-item h3{font:600 17px/1.3 'DM Sans',sans-serif;color:#18211b;margin:0 0 4px}
.lunch-menu-item p{font-size:13px;line-height:1.45;color:#626a63;margin:0}
.lunch-menu-item small{display:block;color:#77766e;font-size:11px;margin-top:3px}
.lunch-menu-item>strong{white-space:nowrap;color:#1f5b31;font-size:15px;padding-top:2px}
.lunch-menu-note{text-align:center;color:#7a7063;font-size:11px;font-style:italic;line-height:1.6;margin:22px 0 0}
@media(max-width:760px){.lunch-menu-panel{padding:28px 22px}.lunch-menu-list{grid-template-columns:1fr;column-gap:0}.lunch-menu-item h3{font-size:16px}}
@media(max-width:560px){.lunch-menu-panel{padding:24px 16px}.lunch-eyebrow{font-size:9px}.lunch-menu-heading h2{font-size:34px}.lunch-hours{font-size:13px}.lunch-menu-item{gap:10px}.lunch-menu-item h3{font-size:15px}.lunch-menu-item>strong{font-size:14px}}

/* TONKIN responsive corrections – November 2026 */
html,body{max-width:100%;overflow-x:hidden}
header{min-height:68px}
section[id]{scroll-margin-top:82px}
#about.about-page{padding-top:58px!important;padding-bottom:64px!important}
.about-page .about-copy{max-width:900px}
.lunch-menu-panel{width:min(100%,1180px);min-width:0}
.lunch-menu-heading{max-width:100%;min-width:0}
.lunch-menu-heading h2{font-size:clamp(27px,4vw,48px);overflow-wrap:anywhere}
.lunch-description,.lunch-benefits{max-width:700px}
.lunch-benefits{padding-left:22px}
.menu-category,.menu-list,.menu-item{min-width:0;max-width:100%}
.menu-item>div{min-width:0;overflow-wrap:anywhere}
.menu-item h4,.menu-item p{overflow-wrap:anywhere}
.menu-item>strong{flex:0 0 auto}
.menu-item .dish-thumb{object-fit:cover;max-width:100%}
@media(max-width:760px){
  .lunch-menu-panel{padding:26px 18px}
  .lunch-menu-heading h2{font-size:clamp(26px,7vw,36px);line-height:1.12}
  .lunch-hours{line-height:1.5}
  .lunch-benefits{font-size:13px}
  .menu-item{gap:10px}
  .menu-item .dish-thumb{flex-basis:82px;width:82px;height:72px}
}
@media(max-width:560px){
  #about.about-page{padding-top:42px!important;padding-bottom:48px!important}
  .about-copy h2{font-size:clamp(36px,10vw,48px)}
  .menu-item>strong{white-space:nowrap;font-size:13px}
  .category-head h3{overflow-wrap:anywhere}
}
