.kws-gastro{
  --kws:#00A591;
  --kws-dk:#00786A;
  --kws-lt:#4FC4B4;
  --kws-pale:#E4F5F2;
  --kws-line:#D9E8E5;
  --kws-ink:#16211F;
  --kws-muted:#647570;
  --kws-card:#FFFFFF;
  --kws-flag:#D98A1F;
  --kws-flag-bg:#FDF4E6;
  --kws-flag-line:#EBD3A8;

  --kws-serif:Georgia,'Times New Roman',serif;
  --kws-sans:'Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;

  font-family:var(--kws-sans); color:var(--kws-ink); line-height:1.6;
  max-width:1120px; margin:0 auto; padding:0 16px 56px; box-sizing:border-box;
}
.kws-gastro *,.kws-gastro *::before,.kws-gastro *::after{box-sizing:border-box;}

.kws-gastro .kws-hero{border-top:5px solid var(--kws);padding:30px 0 24px;margin-bottom:8px;}
.kws-gastro .kws-eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--kws);margin:0 0 10px;}
.kws-gastro .kws-hero h1{font-family:var(--kws-serif);font-size:clamp(28px,4.6vw,44px);line-height:1.16;font-weight:700;color:var(--kws-dk);margin:0 0 14px;letter-spacing:-.01em;}
.kws-gastro .kws-lead{font-size:clamp(16px,1.9vw,19px);color:#33403D;max-width:70ch;margin:0 0 20px;}
.kws-gastro .kws-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--kws-muted);padding-top:16px;border-top:1px solid var(--kws-line);}
.kws-gastro .kws-meta b{color:var(--kws-ink);font-weight:600;}

.kws-gastro .kws-filters{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 22px;}
.kws-gastro .kws-filter{font:inherit;font-size:14px;font-weight:600;padding:8px 16px;border-radius:999px;cursor:pointer;border:1.5px solid var(--kws-line);background:#fff;color:var(--kws-muted);transition:all .16s ease;}
.kws-gastro .kws-filter:hover{border-color:var(--kws-lt);color:var(--kws-dk);}
.kws-gastro .kws-filter[aria-pressed="true"]{background:var(--kws);border-color:var(--kws);color:#fff;}
.kws-gastro .kws-filter:focus-visible{outline:3px solid var(--kws-lt);outline-offset:2px;}

.kws-gastro .kws-list{display:grid;gap:16px;}
.kws-gastro .kws-item{background:var(--kws-card);border:1px solid var(--kws-line);border-left:5px solid var(--kws-lt);border-radius:4px;padding:22px 24px;display:grid;grid-template-columns:56px 1fr auto;gap:0 20px;align-items:start;transition:border-left-color .16s ease,box-shadow .16s ease;}
.kws-gastro .kws-item:hover{border-left-color:var(--kws);box-shadow:0 2px 14px rgba(0,165,145,.14);}
.kws-gastro .kws-item[hidden]{display:none;}

.kws-gastro .kws-rank{font-family:var(--kws-serif);font-size:32px;font-weight:700;line-height:1;color:var(--kws-lt);padding-top:2px;}
.kws-gastro .kws-item:nth-child(-n+3) .kws-rank{color:var(--kws);}

.kws-gastro .kws-body{min-width:0;}
.kws-gastro .kws-name{font-family:var(--kws-serif);font-size:21px;font-weight:700;color:var(--kws-ink);margin:0 0 6px;line-height:1.25;}
.kws-gastro .kws-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;}
.kws-gastro .kws-tag{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:3px 9px;border-radius:3px;background:var(--kws-pale);color:var(--kws-dk);}
.kws-gastro .kws-tag--price{background:var(--kws-flag-bg);color:#8A5E14;}

.kws-gastro .kws-facts{list-style:none;margin:0 0 14px;padding:0;font-size:14.5px;color:#3D4A47;display:grid;gap:5px;}
.kws-gastro .kws-facts li{display:grid;grid-template-columns:88px 1fr;gap:12px;}
.kws-gastro .kws-facts span{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--kws-muted);padding-top:3px;}
.kws-gastro .kws-facts a{color:var(--kws-dk);text-decoration:none;border-bottom:1px solid var(--kws-line);}
.kws-gastro .kws-facts a:hover{border-bottom-color:var(--kws);}

.kws-gastro .kws-prices{border-top:1px dashed var(--kws-line);padding-top:12px;margin-top:4px;}
.kws-gastro .kws-prices h4{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--kws-muted);margin:0 0 8px;}
.kws-gastro .kws-price-row{display:flex;align-items:baseline;gap:8px;font-size:14.5px;padding:3px 0;}
.kws-gastro .kws-price-row .dish{color:#3D4A47;}
.kws-gastro .kws-price-row .dots{flex:1;border-bottom:1px dotted #B8CFCB;transform:translateY(-3px);min-width:14px;}
.kws-gastro .kws-price-row .amount{font-weight:700;color:var(--kws-dk);white-space:nowrap;font-variant-numeric:tabular-nums;}
.kws-gastro .kws-price-note{font-size:12.5px;color:var(--kws-muted);font-style:italic;margin:8px 0 0;}
.kws-gastro .kws-todo{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#8A5E14;background:var(--kws-flag-bg);border:1px dashed var(--kws-flag-line);border-radius:3px;padding:8px 12px;}
.kws-gastro .kws-todo::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--kws-flag);}

.kws-gastro .kws-score{text-align:center;flex:none;min-width:92px;border-left:1px solid var(--kws-line);padding-left:20px;}
.kws-gastro .kws-score .val{font-family:var(--kws-serif);font-size:30px;font-weight:700;color:var(--kws);line-height:1;display:block;font-variant-numeric:tabular-nums;}
.kws-gastro .kws-score .stars{color:var(--kws-lt);font-size:13px;letter-spacing:1px;display:block;margin:5px 0 3px;}
.kws-gastro .kws-score .cnt{font-size:12px;color:var(--kws-muted);display:block;}
.kws-gastro .kws-score .src{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#93A5A1;display:block;margin-top:4px;}

.kws-gastro .kws-note{margin-top:24px;padding:18px 22px;background:var(--kws-flag-bg);border-left:5px solid var(--kws-flag);border-radius:4px;font-size:14.5px;color:#5C4715;}
.kws-gastro .kws-note b{color:#3D2F0C;}

.kws-gastro .kws-method{margin-top:32px;padding-top:20px;border-top:2px solid var(--kws-lt);font-size:13.5px;color:var(--kws-muted);}
.kws-gastro .kws-method h3{font-family:var(--kws-serif);font-size:16px;color:var(--kws-ink);margin:0 0 8px;}
.kws-gastro .kws-method p{margin:0 0 9px;max-width:78ch;}

.kws-gastro .kws-nav{margin-top:30px;padding:24px;background:var(--kws-pale);border-radius:4px;}
.kws-gastro .kws-nav h2{font-family:var(--kws-serif);font-size:19px;color:var(--kws-dk);margin:0 0 12px;}
.kws-gastro .kws-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.kws-gastro .kws-nav a{display:inline-block;font-size:13.5px;font-weight:600;padding:6px 14px;border-radius:999px;background:#fff;color:var(--kws-dk);text-decoration:none;border:1px solid var(--kws-line);transition:all .16s ease;}
.kws-gastro .kws-nav a:hover{background:var(--kws);color:#fff;border-color:var(--kws);}
.kws-gastro .kws-nav a[aria-current="page"]{background:var(--kws);color:#fff;border-color:var(--kws);}

.kws-gastro .kws-cta{margin-top:30px;padding:26px 28px;background:var(--kws);border-radius:4px;color:#fff;}
.kws-gastro .kws-cta h2{font-family:var(--kws-serif);font-size:21px;margin:0 0 8px;color:#fff;}
.kws-gastro .kws-cta p{margin:0 0 16px;font-size:15px;color:#DCF3EF;max-width:62ch;}
.kws-gastro .kws-btn{display:inline-block;background:#fff;color:var(--kws-dk);font-weight:700;font-size:15px;text-decoration:none;padding:12px 26px;border-radius:999px;transition:transform .16s ease;}
.kws-gastro .kws-btn:hover{transform:translateY(-2px);color:var(--kws-dk);}
.kws-gastro .kws-btn:focus-visible{outline:3px solid #fff;outline-offset:3px;}

@media (max-width:720px){
  .kws-gastro .kws-item{grid-template-columns:40px 1fr;padding:18px;}
  .kws-gastro .kws-rank{font-size:24px;}
  .kws-gastro .kws-score{grid-column:1/-1;border-left:0;padding-left:0;margin-top:14px;border-top:1px solid var(--kws-line);padding-top:12px;display:flex;align-items:baseline;gap:10px;text-align:left;}
  .kws-gastro .kws-score .val{font-size:22px;}
  .kws-gastro .kws-score .stars{margin:0;}
  .kws-gastro .kws-score .src{margin:0 0 0 auto;}
  .kws-gastro .kws-facts li{grid-template-columns:1fr;gap:0;}
  .kws-gastro .kws-facts span{padding-top:6px;}
}
@media (prefers-reduced-motion:reduce){ .kws-gastro *{transition:none !important;} }
