/* R7.2 — Latest owner-approved revisions. Original photos, menu data and scripts retained. */
:root{--navy:#061b28;--ink:#f8f3e9;--font:'Be Vietnam Pro',Arial,sans-serif;--serif:'Lora',Georgia,serif}
/* Three distinct, complementary category surfaces; no extra search tile on home. */
.home-hero{height:304px}
.home-title{bottom:16px}
.home-title .eyebrow{color:#f1d6a7}
.home-actions{padding:10px 14px 17px;gap:9px}
.path-card{min-height:98px;border-radius:14px;grid-template-columns:46px minmax(0,1fr) 18px;padding:12px 13px;gap:11px;box-shadow:inset 0 1px 0 #ffffff25;transition:filter .15s}
.path-card.blue{background:linear-gradient(118deg,#076296 0%,#07527f 53%,#073454 100%);border:1px solid #4795b1}
.path-card.gold{background:linear-gradient(112deg,#ad8758 0%,#9f713f 51%,#78502f 100%);border:1px solid #d9ba8b}
.path-card.teal{background:linear-gradient(115deg,#12645f 0%,#124b50 59%,#0d393e 100%);border:1px solid #579c96}
.path-card.blue .path-icon{background:#abd6ee1c;border:1px solid #99cde584;color:#daeffb}
.path-card.gold .path-icon{background:#fff4d62b;border:1px solid #f7d8ac92;color:#fbe6bf}
.path-card.teal .path-icon{background:#b0eee51b;border:1px solid #a1d4cd80;color:#dcf5ee}
.path-card .path-label,.path-card .path-sub,.path-card .path-heading{color:#fffaf3;text-shadow:0 1px 3px #0003}
.path-card .path-label{font-size:11px;line-height:1.4;opacity:.9;margin-bottom:3px}
.path-card .path-heading{font-family:var(--serif);font-size:19px;line-height:1.24;font-weight:600;letter-spacing:-.025em}
.path-card .path-sub{font-family:var(--font);font-size:11px;line-height:1.5;opacity:.92;margin-top:5px}
.path-card>.icon{color:#fff3da}
.path-card:active{filter:brightness(1.09)}
/* Strong photography, keep important animal silhouette on detail. */
.detail-image-head.live-hero{height:310px;background:#06202e;isolation:isolate}
.live-hero>.hero-live-poster,.live-hero>.hero-seafood-video{display:block;width:100%;height:100%;object-fit:contain;background:#072633}
.live-hero::after{pointer-events:none;content:'';position:absolute;inset:0;background:linear-gradient(180deg,#02121c77 0%,transparent 27%,transparent 68%,#051b27b8 100%);z-index:1}
.live-hero>.detail-nav,.live-hero>.detail-bottom,.live-hero>.hero-video-control,.live-hero>.hero-video-retry{z-index:3;position:absolute}
.live-hero>.detail-nav{top:12px;left:12px;right:12px;display:flex}
.hero-video-control,.hero-video-retry{bottom:52px;left:15px;display:flex;align-items:center;gap:6px;border-radius:40px;border:1px solid #b0d0dcb7;background:#082e3ecb;backdrop-filter:blur(7px);color:#f4f4ef;font-family:var(--font);font-size:11px;min-height:36px;padding:7px 11px}
.hero-video-control .icon,.hero-video-retry .icon{width:15px;height:15px}
.hero-video-control[hidden],.hero-video-retry[hidden]{display:none!important}
.live-hero>.detail-bottom{bottom:0;left:0;right:0}
/* Full verified-photo gallery (no arbitrary first-three cutoff). */
.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.example-card img{width:100%;height:96px;object-fit:contain;background:#143947}
.example-card strong{font-size:11px;line-height:1.4}
.featured-preps h2{font-size:19px;margin:0 0 12px}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.featured-grid button{border:1px solid #496374;border-radius:10px;background:#103645;color:#faf2e6;text-align:left;overflow:hidden;padding:0}
.featured-grid .featured-thumb{width:100%;height:104px;object-fit:contain;background:#092b3a}
.featured-grid span{display:block;padding:9px;font-size:13px}
.jump-featured{display:flex;align-items:center;gap:8px;margin-top:12px;min-height:43px;padding:8px 12px;color:#eed4a9;background:#153945;border:1px solid #547187;border-radius:10px;font-size:13px}
.jump-featured>.icon:last-child{margin-left:auto}
/* All à-la-carte dishes: photo is part of a fully clickable row when linked by source. */
.portion-row{min-height:95px;padding:8px 0;gap:7px;align-items:center}
.portion-row-main{min-height:78px;width:100%;gap:12px;padding:0;align-items:center}
.portion-row-main .portion-row-photo{flex:0 0 82px;width:82px;height:102px;max-width:82px;display:block;border-radius:9px;object-fit:contain;background:#123a47;border:1px solid #34515d}
.portion-row-main .photo-absent.portion-row-photo{font-size:10px;line-height:1.5;padding:7px;background:#173746;color:#b1c1c8}
.portion-row-main strong{font-size:14px;line-height:1.46;overflow-wrap:break-word;color:#f9f5ea}
.portion-row-main .price{font-size:13px;line-height:1.5;font-weight:650;color:#eed09d}
.portion-row-main .arrow{width:17px;height:17px;flex:none}
.portion-row>.save-btn{border-color:#4d6974;background:transparent;color:#d9ba8e;padding:7px;min-width:36px;height:36px;flex:0 0 36px}
/* Original full-page dish detail — photo displayed only when source exists. */
.page-portion-detail{background:#061b28}
.portion-detail-hero{height:305px;position:relative;overflow:hidden;background:#0d303f}
.portion-detail-hero-image{width:100%;height:100%;display:block;object-fit:contain;object-position:center;background:#0d303f}
.portion-detail-hero::after{position:absolute;inset:0 0 auto;pointer-events:none;content:'';height:84px;background:linear-gradient(180deg,#081b28ac,transparent)}
.portion-detail-nav{position:absolute;top:12px;left:12px;right:12px;display:flex;align-items:center;gap:8px;z-index:4}
.portion-detail-nav>.icon-btn{display:grid;place-items:center;background:#082c3bdb;border:1px solid #ffffff5b;color:#f8f3eb;min-width:39px;width:39px;height:39px}
.portion-detail-nav>.icon-btn.lang-btn{margin-left:auto;width:auto;min-width:57px;display:inline-flex;gap:4px;padding:0 8px}
.portion-detail-nohero{position:relative;height:66px;background:#0b2a38}
.portion-photo-large{position:absolute;right:13px;bottom:12px;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:30px;border:1px solid #9cbbc2;background:#092e3ee3;color:#f2f3ee;font-size:11px;z-index:3}
.portion-detail{padding:22px 17px 32px;background:#061b28;border-radius:0}
.portion-detail.has-photo{margin-top:0}
.portion-detail.without-photo{padding-top:27px;min-height:0}
.portion-detail-heading{display:flex;align-items:start;gap:10px}
.portion-detail-heading .name{flex:1;min-width:0;font-size:25px;line-height:1.28;margin:0}
.portion-detail-heading .save-btn{border-radius:50%;flex:0 0 42px;min-width:42px;width:42px;height:42px;background:#143545;color:#f1c992}
.portion-detail .big-price{font:650 20px/1.4 var(--font);color:#f1ce98;margin:15px 0 3px}
.portion-detail .unit{font-size:13px}
.detail-field{margin-top:20px;padding-top:16px;border-top:1px solid #2b4754}
.detail-field h2{font:600 17px/1.35 var(--serif);color:#f9f2e5;margin:0 0 10px}
.detail-field p{font-size:13px;line-height:1.75;margin:0 0 5px;color:#cdd9db}
.detail-field.allergy-note p{font-size:13px;line-height:1.7}
.portion-detail .price-table{margin-top:10px}
.portion-detail .price-vat{margin-top:22px}
.global-result .global-thumb{object-fit:contain;background:#143647}
/* 320px phone should retain full dish title and tap targets. */
@media(max-width:360px){
 .home-hero{height:276px}.home-actions{padding:8px 10px 15px;gap:8px}
 .path-card{min-height:91px;grid-template-columns:40px minmax(0,1fr) 15px;gap:9px;padding:10px 11px}
 .path-card .path-icon{width:39px;height:39px}.path-card .path-heading{font-size:16px}.path-card .path-sub{font-size:10px}
 .portion-row-main{gap:8px}.portion-row-main .portion-row-photo{flex-basis:70px;width:70px;max-width:70px;height:88px}
 .portion-row-main strong{font-size:13px}.portion-row-main .price{font-size:12px}
 .portion-row>.save-btn{min-width:32px;flex-basis:32px;width:32px;height:34px;padding:5px}
 .portion-list{padding-inline:11px}.portion-detail-hero{height:260px}.portion-detail-heading .name{font-size:22px}
 .example-card img{height:82px}
}
@media(min-width:430px){.home-hero{height:335px}.path-card{min-height:105px}.portion-detail-hero{height:344px}}
@media(prefers-reduced-motion:reduce){.path-card{transition:none}}
/* Do not let the dark information panel cover the hero media caption. */
.live-hero+.white-detail{margin-top:0}
.live-hero>.detail-bottom{bottom:12px}
.live-hero>.detail-bottom .overline{font-size:9px;opacity:.85}
