/* Malhi's — banquet builder (also used by set menus) */
.banq-band .spec,.thali-band .spec{color:var(--on-dark-2)}
.banq-band .spec b,.thali-band .spec b{color:var(--on-dark)}
.bq-wrap{display:grid;grid-template-columns:1fr 380px;gap:clamp(28px,4vw,64px);padding-top:48px;padding-bottom:96px;align-items:start}
.bq-step{margin-bottom:44px}
.bq-step h2{font-size:clamp(1.7rem,3vw,2.4rem);display:flex;gap:14px;align-items:baseline}
.bq-n{color:var(--pom);font-size:.9rem}
.bq-guests{display:flex;flex-wrap:wrap;gap:16px 28px}
.stepper{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:999px;background:var(--paper)}
.stepper button{width:44px;height:44px;border:0;background:none;font-size:1.3rem;cursor:pointer;border-radius:50%}
.stepper button:hover{background:var(--sand)}
.stepper input{width:58px;min-height:44px;border:0;background:none;text-align:center;font-family:var(--f-mono);font-size:1rem;padding:0;-moz-appearance:textfield}
.stepper input::-webkit-inner-spin-button{-webkit-appearance:none}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tier{position:relative;cursor:pointer}
.tier input{position:absolute;opacity:0;inset:0;cursor:pointer}
.tier-in{display:flex;flex-direction:column;gap:8px;height:100%;padding:20px;border:1px solid var(--line-2);border-radius:6px;background:var(--paper)}
.tier-name{font-family:var(--f-disp);font-size:1.45rem;line-height:1.1}
.tier .price-big small{font-family:var(--f-text);font-size:.9rem;color:var(--ink-3)}
.tier .mono{color:var(--ink-3)}
.tier-inc{font-size:.9rem;color:var(--ink-2)}
.tier input:checked+.tier-in{border-color:var(--pom);box-shadow:inset 0 0 0 1px var(--pom);background:#fff}
.tier input:focus-visible+.tier-in{outline:2px solid var(--pom);outline-offset:2px}
.pick-g{border:0;padding:0;margin:0 0 26px}
.pick-g legend{display:flex;gap:14px;align-items:baseline;margin-bottom:10px;width:100%}
.pick-l{font-family:var(--f-disp);font-size:1.5rem}
.pick-c{color:var(--ink-3)}
.pick-c.full{color:var(--pom)}
.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.pk{position:relative;cursor:pointer}
.pk input{position:absolute;opacity:0;inset:0;cursor:pointer}
.pk>span{display:flex;flex-direction:column;gap:4px;height:100%;padding:12px 14px 12px 42px;border:1px solid var(--line-2);border-radius:6px;background:var(--paper);position:relative}
.pk>span::before{content:"";position:absolute;left:14px;top:14px;width:18px;height:18px;border:1.5px solid var(--ink-3);border-radius:3px;background:#fff}
.pk input:checked+span{border-color:var(--ink);background:#fff}
.pk input:checked+span::before{background:var(--pom);border-color:var(--pom);box-shadow:inset 0 0 0 3px #fff}
.pk input:focus-visible+span{outline:2px solid var(--pom);outline-offset:2px}
.pk input:disabled+span{opacity:.45;cursor:not-allowed}
.pk b{font-weight:600}
.pk-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.bq-side{position:sticky;top:96px;display:grid;gap:14px}
.bq-sum .mono{color:var(--pom-lt);margin:0 0 6px}
.bq-total{display:flex;flex-direction:column;gap:4px;margin:0 0 10px;font-size:.88rem;color:var(--on-dark-2)}
.bq-sum .price-big{color:var(--on-dark)}
.bq-sh{font-size:.72rem!important;color:var(--on-dark-2)!important;margin:14px 0 4px!important}
.bq-sum ul{margin:0;padding-left:1.1em;font-size:.94rem}
.bq-sum .dim{color:var(--on-dark-2);font-size:.88rem;margin:0}
.bq-checks ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.bq-checks li{display:flex;gap:10px;font-size:.92rem;padding:8px 12px;border-radius:4px;background:var(--paper);border:1px solid var(--line)}
.bq-checks li span{font-weight:700;flex:none;width:16px}
.bq-checks li.ok span{color:#2E5229}
.bq-checks li.no{border-color:var(--pom-lt);background:var(--pom-wash)}
.bq-checks li.no span{color:var(--pom-d)}
.bq-act{display:grid;gap:8px}
.bq-act .tlist-clear{justify-self:start;margin:4px 0 0}
.tlist-clear{background:none;border:0;padding:0;color:var(--pom);font-weight:600;text-decoration:underline;cursor:pointer;font-size:.9rem}
@media (max-width:1100px){ .tiers{grid-template-columns:1fr} }
@media (max-width:1000px){ .bq-wrap{grid-template-columns:1fr} .bq-side{position:static} }
