/* CLIENT PORTAL FRONT PAGE V2 (switch Portal_Front_V2).
   Every colour and font is a --pf-* variable set from the owner's settings (or the
   built-in defaults) in the partial — nothing here names a business or a colour.
   Phone-first at 390px; on wider screens the page is a centred 480px column.
   Touch targets are at least 44px. */

body.pf2-out{background:var(--pf-dark);}
body.pf2-out .topbar{display:none;}
body.pf2-out #loginView{background:var(--pf-light);min-height:100vh;padding-bottom:110px;}

.pf2-home{max-width:480px;width:100%;margin:0 auto;background:var(--pf-light);font-family:var(--pf-body);color:var(--pf-dark);}
.pf2-home h1,.pf2-home h2,.pf2-home h3,.pf2-page h1,.pf2-page h2{font-family:var(--pf-head);font-weight:400;margin:0;}

/* 1 — hero */
.pf2-hero{position:relative;height:580px;background:var(--pf-dark);background-size:cover;background-repeat:no-repeat;display:flex;flex-direction:column;justify-content:space-between;color:var(--pf-light);overflow:hidden;}
.pf2-hero-fade{position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--pf-dark) 78%,transparent) 0%,transparent 28%,transparent 45%,color-mix(in srgb,var(--pf-dark) 92%,transparent) 100%);pointer-events:none;}
.pf2-hero-top,.pf2-hero-bottom{position:relative;padding:18px 18px 0;}
.pf2-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.pf2-word-name{font-family:var(--pf-head);font-size:22px;letter-spacing:.04em;line-height:1.1;}
.pf2-word-tag{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--pf-accent);margin-top:4px;}
.pf2-hero-actions{display:flex;align-items:center;gap:8px;}
.pf2-cart{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid color-mix(in srgb,var(--pf-light) 35%,transparent);background:color-mix(in srgb,var(--pf-dark) 45%,transparent);color:var(--pf-light);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.pf2-cart svg,.pf2-saved-ico svg,.pf2-search svg,.pf2-bar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf2-badge{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--pf-accent);color:var(--pf-dark);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.pf2-badge[hidden]{display:none;}
.pf2-pill{min-height:44px;padding:0 18px;border-radius:22px;border:1px solid var(--pf-accent);background:transparent;color:var(--pf-light);font:500 13px var(--pf-body);letter-spacing:.06em;cursor:pointer;}
.pf2-hero-bottom{padding:0 22px 26px;}
.pf2-eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--pf-accent);margin-bottom:10px;}
.pf2-headline{font-family:var(--pf-head);font-size:38px;line-height:1.08;margin:0 0 10px;}
.pf2-sub{font-size:14.5px;line-height:1.45;margin:0 0 20px;color:color-mix(in srgb,var(--pf-light) 82%,transparent);}
.pf2-hero-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.pf2-btn-gold,.pf2-btn-line{min-height:52px;border-radius:26px;font:600 13px var(--pf-body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;}
.pf2-btn-gold{border:0;background:var(--pf-grad);color:var(--pf-dark);box-shadow:0 6px 20px color-mix(in srgb,var(--pf-accent) 35%,transparent);}
.pf2-btn-line{border:1px solid var(--pf-accent);background:color-mix(in srgb,var(--pf-dark) 35%,transparent);color:var(--pf-light);}

/* 2 — saved cart strip */
.pf2-saved{display:flex;align-items:center;gap:12px;width:calc(100% - 32px);margin:18px 16px 0;min-height:64px;padding:12px 16px;border-radius:18px;background:var(--pf-dark);color:var(--pf-light);border:1px solid var(--pf-accent);text-align:left;cursor:pointer;font-family:var(--pf-body);}
.pf2-saved[hidden]{display:none;}
.pf2-saved-ico{width:40px;height:40px;border-radius:50%;border:1px solid var(--pf-accent);display:flex;align-items:center;justify-content:center;color:var(--pf-accent);flex:0 0 40px;}
.pf2-saved-txt{flex:1;display:flex;flex-direction:column;gap:2px;font-size:14px;}
.pf2-saved-txt small{font-size:12px;color:color-mix(in srgb,var(--pf-light) 70%,transparent);}
.pf2-arrow{color:var(--pf-accent);font-size:18px;}

/* sections */
.pf2-sec{padding:26px 16px 4px;}
.pf2-sec[hidden]{display:none;}
.pf2-sec-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px;}
.pf2-sec-head h2,.pf2-h2{font-size:24px;}
.pf2-h2{margin-bottom:4px;}
.pf2-help{font-size:13px;margin:0 0 12px;color:color-mix(in srgb,var(--pf-dark) 62%,transparent);}
.pf2-link{background:none;border:0;min-height:44px;padding:0 4px;color:var(--pf-accent);font:500 13px var(--pf-body);cursor:pointer;}
.pf2-empty{grid-column:1/-1;font-size:13px;padding:14px 0;color:color-mix(in srgb,var(--pf-dark) 55%,transparent);}

/* 3 — offers */
.pf2-swipe{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:2px 2px 10px;scrollbar-width:none;}
.pf2-swipe::-webkit-scrollbar{display:none;}
.pf2-card{position:relative;flex:0 0 300px;height:210px;border-radius:22px;border:1px solid var(--pf-accent);overflow:hidden;scroll-snap-align:start;cursor:pointer;text-align:left;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;font-family:var(--pf-body);}
.pf2-card.pf2-dark{background:var(--pf-dark);color:var(--pf-light);}
.pf2-card.pf2-light{background:var(--pf-card);color:var(--pf-dark);}
.pf2-card.pf2-photo{background:var(--pf-dark) right center / cover no-repeat;color:var(--pf-light);}
.pf2-card.pf2-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--pf-dark) 0%,color-mix(in srgb,var(--pf-dark) 85%,transparent) 42%,transparent 78%);}
.pf2-card > *{position:relative;max-width:78%;}
.pf2-tag{align-self:flex-start;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:4px 10px;border-radius:12px;border:1px solid var(--pf-accent);color:var(--pf-accent);}
.pf2-card-title{font-family:var(--pf-head);font-size:22px;line-height:1.15;}
.pf2-card-short{font-size:13px;opacity:.82;}
.pf2-card-act{font-size:12.5px;font-weight:600;letter-spacing:.06em;color:var(--pf-accent);}
.pf2-card.pf2-light .pf2-card-act,.pf2-card.pf2-light .pf2-tag{color:color-mix(in srgb,var(--pf-accent) 70%,var(--pf-dark));border-color:color-mix(in srgb,var(--pf-accent) 70%,var(--pf-dark));}
.pf2-dots{display:flex;justify-content:center;gap:6px;}
.pf2-dots i{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--pf-dark) 22%,transparent);}
.pf2-dots i.on{background:var(--pf-accent);width:16px;border-radius:3px;}

/* 4 — the menu */
.pf2-search{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border-radius:24px;background:var(--pf-paper);border:1px solid color-mix(in srgb,var(--pf-accent) 55%,transparent);margin-bottom:14px;color:color-mix(in srgb,var(--pf-dark) 55%,transparent);}
.pf2-search input{flex:1;border:0;background:transparent;font:15px var(--pf-body);color:var(--pf-dark);outline:none;min-height:44px;}
.pf2-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.pf2-tile{height:104px;border-radius:20px;background:var(--pf-dark);border:1.5px solid var(--pf-accent);color:var(--pf-light);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:8px 6px;cursor:pointer;}
/* every icon sits in the same fixed, centred box — the same size, the same middle */
.pf2-ico{width:32px;height:32px;flex:0 0 32px;display:flex;align-items:center;justify-content:center;color:var(--pf-accent);}
.pf2-ico svg{width:28px;height:28px;display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.pf2-ico img{width:28px;height:28px;object-fit:contain;display:block;}
.pf2-tile-label{font:500 12px var(--pf-body);letter-spacing:.12em;text-transform:uppercase;text-align:center;line-height:1.25;color:var(--pf-light);max-width:100%;overflow-wrap:anywhere;}

/* 5 — shelf */
.pf2-shelf{gap:12px;}
.pf2-prod{flex:0 0 150px;scroll-snap-align:start;cursor:pointer;background:none;border:0;padding:0;text-align:left;font-family:var(--pf-body);color:var(--pf-dark);}
.pf2-prod-img{width:150px;height:150px;border-radius:18px;background:var(--pf-paper) center / contain no-repeat;border:1px solid color-mix(in srgb,var(--pf-dark) 10%,transparent);}
.pf2-prod-name{font-size:13.5px;margin-top:8px;line-height:1.3;}
.pf2-prod-price{font-size:13.5px;font-weight:600;color:var(--pf-accent);margin-top:2px;}
.pf2-btn-wide{width:100%;min-height:52px;margin-top:10px;border-radius:26px;border:1px solid var(--pf-dark);background:transparent;color:var(--pf-dark);font:600 12.5px var(--pf-body);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;}

/* 6 — returning client */
.pf2-return{background:var(--pf-paper);border-radius:22px;padding:22px 18px;box-shadow:0 6px 24px color-mix(in srgb,var(--pf-dark) 8%,transparent);}
.pf2-return h3{font-size:21px;margin:0 0 6px;}
.pf2-return p{font-size:13.5px;margin:0 0 16px;color:color-mix(in srgb,var(--pf-dark) 65%,transparent);}
.pf2-return-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.pf2-btn-dark,.pf2-btn-outline{min-height:48px;border-radius:24px;font:600 12.5px var(--pf-body);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;}
.pf2-btn-dark{background:var(--pf-dark);color:var(--pf-light);border:0;}
.pf2-btn-outline{background:transparent;color:var(--pf-dark);border:1px solid var(--pf-dark);}

/* 7 — visit us */
.pf2-visit{background:var(--pf-dark);color:var(--pf-light);padding:30px 22px 26px;margin-top:28px;font-size:14px;}
.pf2-visit h2{font-family:var(--pf-head);font-size:24px;font-weight:400;margin:0 0 14px;color:var(--pf-light);}
.pf2-visit a{color:var(--pf-light);}
.pf2-v-line{margin:0 0 8px;line-height:1.5;white-space:pre-line;}
.pf2-hours{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:13.5px;}
.pf2-hours td{padding:5px 0;border-bottom:1px solid color-mix(in srgb,var(--pf-light) 10%,transparent);}
.pf2-hours td:last-child{text-align:right;color:color-mix(in srgb,var(--pf-light) 80%,transparent);}
.pf2-hours tr.pf2-closed td:last-child{color:color-mix(in srgb,var(--pf-light) 45%,transparent);}
.pf2-v-btns{display:flex;gap:12px;margin:8px 0 18px;}
.pf2-round{width:48px;height:48px;border-radius:50%;border:1px solid var(--pf-accent);display:flex;align-items:center;justify-content:center;color:var(--pf-accent);text-decoration:none;}
.pf2-round svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf2-powered{font-size:10px;letter-spacing:.3em;text-align:center;color:color-mix(in srgb,var(--pf-light) 45%,transparent);}
.pf2-bar-space{height:96px;background:var(--pf-dark);}

/* pinned bottom bar */
.pf2-bar{display:none;}
body.pf2-out .pf2-bar{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;position:fixed;left:0;right:0;bottom:0;margin:0 auto;max-width:480px;height:78px;padding-bottom:env(safe-area-inset-bottom);background:var(--pf-dark);border-top:1px solid color-mix(in srgb,var(--pf-accent) 55%,transparent);z-index:860;}
.pf2-bar button{background:none;border:0;min-height:56px;height:100%;color:color-mix(in srgb,var(--pf-light) 55%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:500 10.5px var(--pf-body);letter-spacing:.08em;cursor:pointer;}
.pf2-bar button.on{color:var(--pf-accent);}
.pf2-bar .pf2-bar-book{justify-content:flex-end;padding-bottom:8px;color:var(--pf-accent);}
.pf2-bar-book-c{width:64px;height:64px;margin-top:-30px;border-radius:50%;background:var(--pf-grad);border:4px solid var(--pf-dark);display:flex;align-items:center;justify-content:center;color:var(--pf-dark);box-shadow:0 6px 18px color-mix(in srgb,var(--pf-accent) 40%,transparent);}
.pf2-bar-book-c svg{width:24px;height:24px;}

/* the Brea bubble on signed-out screens (her chat itself is unchanged) */
body.pf2-out #breaFab{width:62px;height:62px;border-radius:50%;right:16px;bottom:calc(92px + env(safe-area-inset-bottom));font-family:var(--pf-head);font-size:26px;color:var(--pf-accent);border:3px solid transparent;background:linear-gradient(var(--pf-dark),var(--pf-dark)) padding-box,var(--pf-grad) border-box;box-shadow:0 0 0 1px color-mix(in srgb,var(--pf-accent) 30%,transparent),0 6px 22px color-mix(in srgb,var(--pf-accent) 45%,transparent);z-index:870;}
body.pf2-out #breaFab .brea-ring2{border-radius:50%;}
body.pf2-out .brea-float-panel{bottom:calc(92px + 70px);}

/* full-screen pages (category, offer, all offers, shop, menu search) */
.pf2-pages{position:relative;}
.pf2-page{position:fixed;top:0;bottom:78px;left:0;right:0;margin:0 auto;max-width:480px;background:var(--pf-light);color:var(--pf-dark);font-family:var(--pf-body);overflow-y:auto;transform:translateX(100vw);transition:transform .28s ease;z-index:800;}
.pf2-page.in{transform:none;}
.pf2-page-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:6px;min-height:58px;padding:6px 10px;background:var(--pf-dark);color:var(--pf-light);}
.pf2-back{width:44px;height:44px;border:0;background:none;color:var(--pf-accent);font-size:22px;cursor:pointer;}
.pf2-page-head h1{font-size:20px;}
.pf2-page-body{padding:16px;}
.pf2-promo-img{width:100%;height:240px;border-radius:20px;background:var(--pf-dark) center / cover no-repeat;margin-bottom:16px;}
.pf2-promo-dates{font-size:12.5px;color:color-mix(in srgb,var(--pf-dark) 60%,transparent);margin:6px 0 14px;}
.pf2-promo-details{font-size:14.5px;line-height:1.55;white-space:pre-line;margin-bottom:20px;}
.pf2-stack{display:flex;flex-direction:column;gap:12px;}
.pf2-stack .pf2-card{flex:none;width:100%;}
.pf2-gift{margin-top:18px;padding:18px;border-radius:20px;background:var(--pf-dark);color:var(--pf-light);border:1px solid var(--pf-accent);}
.pf2-gift h2{font-size:20px;margin-bottom:6px;}
.pf2-gift p{font-size:13px;margin:0 0 12px;opacity:.8;}

/* branded dialog (never the browser's own pop-ups) */
.pf2-dialog{position:fixed;inset:0;background:color-mix(in srgb,var(--pf-dark) 60%,transparent);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;}
.pf2-dialog[hidden]{display:none;}
.pf2-dialog-box{max-width:360px;width:100%;background:var(--pf-light);color:var(--pf-dark);border:1px solid var(--pf-accent);border-radius:22px;padding:22px;font-family:var(--pf-body);}
.pf2-dialog-box p{font-size:15px;line-height:1.5;margin:0 0 16px;}
.pf2-dialog-btns{display:flex;flex-direction:column;gap:8px;}

/* a category on its own page: its header row is the page header */
.pf2-catpage > .catalog-category > .catalog-category-row{display:none;}
.pf2-catpage > .catalog-category{border:0;}

/* ── fix round (Oct 3) ──────────────────────────────────────────────────── */
/* header: the wordmark shrinks to fit two lines; the buttons never get pushed or wrap */
.pf2-word{min-width:0;flex:1 1 auto;}
.pf2-word-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.15;overflow-wrap:anywhere;}
.pf2-hero-actions{flex:0 0 auto;}
.pf2-pill{white-space:nowrap;min-width:92px;flex:0 0 auto;}

/* compact product cards: photo, name, gold price — 2 columns on the shop page */
.pf2-pgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;}
.pf2-pcard{background:none;border:0;padding:0;text-align:left;cursor:pointer;font-family:var(--pf-body);color:var(--pf-dark);min-width:0;}
.pf2-pgrid .pf2-prod-img{width:100%;height:auto;aspect-ratio:1/1;}
.pf2-shelf .pf2-pcard{flex:0 0 150px;scroll-snap-align:start;}
.pf2-noimg{display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--pf-accent) 75%,transparent);background-color:var(--pf-paper);}
.pf2-noimg svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}

/* product page */
.pf2-pp-img{width:100%;aspect-ratio:1/1;border-radius:22px;background:var(--pf-paper) center / contain no-repeat;border:1px solid color-mix(in srgb,var(--pf-dark) 10%,transparent);margin-bottom:16px;}
.pf2-pp-price{font-size:18px;font-weight:600;color:var(--pf-accent);margin:4px 0 16px;}
.pf2-pp-buy{display:flex;gap:10px;align-items:center;margin-bottom:18px;}
.pf2-pp-buy .pf2-add{flex:1;}
.pf2-add:disabled{opacity:.85;cursor:default;}
.pf2-qty{display:flex;align-items:center;border:1px solid color-mix(in srgb,var(--pf-dark) 25%,transparent);border-radius:26px;height:52px;}
.pf2-qty button{width:44px;height:100%;border:0;background:none;font-size:20px;color:var(--pf-dark);cursor:pointer;}
.pf2-qty span{min-width:26px;text-align:center;font-weight:600;}
.pf2-qty-sm{height:40px;margin-top:6px;align-self:flex-start;}
.pf2-qty-sm button{width:40px;}
.pf2-info{border-top:1px solid color-mix(in srgb,var(--pf-dark) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--pf-dark) 12%,transparent);}
.pf2-info-head{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:52px;background:none;border:0;font:500 14px var(--pf-body);color:var(--pf-dark);cursor:pointer;padding:0;}
.pf2-info-sign{font-size:20px;color:var(--pf-accent);}
.pf2-info-body{font-size:14px;line-height:1.55;white-space:pre-line;padding:0 0 16px;}
.pf2-info-body[hidden]{display:none;}

/* service cards on the front page's pages: no empty photo box; a one-line description + See more */
.pf2-clamp{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:2px;}
.pf2-clamp.open{display:block;-webkit-line-clamp:unset;}
.pf2-more{margin-bottom:10px;}
.pf2-more-btn{background:none;border:0;padding:0;min-height:32px;color:var(--pf-accent);font:500 12.5px var(--pf-body);cursor:pointer;}
.pf2-more-btn[hidden]{display:none;}

/* the bag */
.pf2-bag-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--pf-dark) 10%,transparent);}
.pf2-bag-img{width:72px;height:72px;flex:0 0 72px;border-radius:14px;background:var(--pf-paper) center / contain no-repeat;}
.pf2-bag-img svg{width:26px;height:26px;}
.pf2-bag-mid{flex:1;display:flex;flex-direction:column;min-width:0;}
.pf2-bag-sub{display:flex;justify-content:space-between;align-items:center;font-size:16px;margin:16px 0 4px;}

/* toast (above the bottom bar) + the badge's pulse */
.pf2-toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;
  max-width:calc(100% - 32px);background:var(--pf-dark);color:var(--pf-light);border:1px solid var(--pf-accent);border-radius:24px;padding:12px 18px;
  font:500 14px var(--pf-body);display:flex;align-items:center;gap:6px;transition:opacity .2s,transform .2s;z-index:950;white-space:nowrap;}
.pf2-toast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
.pf2-toast-act{background:none;border:0;color:var(--pf-accent);font:600 14px var(--pf-body);min-height:32px;cursor:pointer;padding:0 2px;}
@keyframes pf2pulse{0%{transform:scale(1);}40%{transform:scale(1.35);}100%{transform:scale(1);}}
.pf2-badge.pf2-pulse{animation:pf2pulse .45s ease;}

/* ── Media & details + shop categories (switch Portal_Media_Details_On) ── */
.pf2-gal{position:relative;margin-bottom:16px;}
.pf2-gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:22px;}
.pf2-gal-track::-webkit-scrollbar{display:none;}
.pf2-gal-img{flex:0 0 100%;aspect-ratio:1/1;scroll-snap-align:start;background:var(--pf-paper) center / cover no-repeat;}
.pf2-gal-count{position:absolute;top:12px;right:12px;padding:3px 10px;border-radius:12px;background:color-mix(in srgb,var(--pf-dark) 70%,transparent);color:var(--pf-light);font:500 12px var(--pf-body);}
.pf2-gal-thumbs{display:flex;gap:8px;overflow-x:auto;padding-top:10px;scrollbar-width:none;}
.pf2-gal-th{flex:0 0 52px;height:52px;border-radius:10px;border:2px solid transparent;background:var(--pf-paper) center / cover no-repeat;cursor:pointer;padding:0;opacity:.7;}
.pf2-gal-th.on{border-color:var(--pf-accent);opacity:1;}
.pf2-summary{font-size:14px;line-height:1.55;}
.pf2-giftban{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;margin:4px 0 18px;padding:18px 20px;border-radius:20px;background:var(--pf-dark);border:1.5px solid var(--pf-accent);color:var(--pf-light);text-align:left;cursor:pointer;font-family:var(--pf-body);}
.pf2-giftban-t{font:500 20px var(--pf-head);color:var(--pf-light);}
.pf2-giftban-x{font-size:13px;opacity:.8;}
.pf2-giftban-pill{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:12px;padding:0 28px;border-radius:24px;background:var(--pf-grad);color:var(--pf-dark);font:600 13px var(--pf-body);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 6px 20px color-mix(in srgb,var(--pf-accent) 35%,transparent);}
.pf2-chips,.pf2-sort{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 10px;}
.pf2-chips::-webkit-scrollbar,.pf2-sort::-webkit-scrollbar{display:none;}
.pf2-chip{flex:0 0 auto;min-height:36px;padding:0 14px;border-radius:18px;border:1px solid color-mix(in srgb,var(--pf-dark) 20%,transparent);background:var(--pf-paper);color:var(--pf-dark);font:500 13px var(--pf-body);cursor:pointer;white-space:nowrap;}
.pf2-chip.on{background:var(--pf-dark);color:var(--pf-light);border-color:var(--pf-dark);}
.pf2-chip-sm{min-height:30px;font-size:12px;padding:0 12px;}
.pf2-pickmode{padding:10px 12px;border-radius:12px;background:var(--pf-card);margin-bottom:10px;}
.pf2-picked .pf2-prod-img{border:2px solid var(--pf-accent);}
.pf2-picks{margin:18px 0;}
.pf2-pick{flex:0 0 150px;scroll-snap-align:start;display:flex;flex-direction:column;gap:6px;}
.pf2-pick-btn{min-height:36px;border-radius:18px;border:1px solid var(--pf-dark);background:var(--pf-paper);color:var(--pf-dark);font:500 13px var(--pf-body);cursor:pointer;}
.pf2-pick-btn.on{background:var(--pf-dark);color:var(--pf-light);}
.pf2-browse{display:block;margin-top:6px;}
.pf2-opts{display:flex;flex-direction:column;margin-bottom:12px;}
.pf2-opt{display:flex;justify-content:space-between;gap:10px;min-height:44px;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--pf-dark) 10%,transparent);font-size:14px;}
.pf2-opt b{color:var(--pf-accent);font-weight:500;}
.pf2-svc-addons{margin:10px 0;}
.pf2-book-wide{width:100%;margin-top:14px;}
.pf2-details{display:block;margin:4px 0 8px;}
.pf2-gw{flex:0 0 200px;scroll-snap-align:start;padding:14px;border-radius:16px;background:var(--pf-card);display:flex;flex-direction:column;gap:6px;}
.pf2-gw-name{background:none;border:0;padding:0;text-align:left;font:500 15px var(--pf-body);color:var(--pf-dark);cursor:pointer;}
.pf2-gw-book{min-height:40px;border-radius:20px;cursor:pointer;font:500 13px var(--pf-body);}
.pf2-cut{display:none !important;}
.pf2-showall{display:block;margin:6px 0;}
.pf2-showall-anchor{display:none;}
