/* tokens.css */
:root {
  --coffee-ink:#341b13;
  --coffee-copper:#a9431f;
  --coffee-copper-dark:#803016;
  --coffee-surface:#f7f5f2;
  --coffee-cream:#f7f2eb;
  --coffee-line:#e8ddd2;
  --cream:#eee9e1;
  --cream-deep:#e2dccc;
  --paper:#f5f0e8;
  --espresso:#442b23;
  --espresso-soft:#624c40;
  --terracotta:#f3c344;
  --terracotta-dark:#805712;
  --caramel:#f3c344;
  --sand:#c8b9a0;
  --ink:#33261e;
  --muted:#72665b;
  --line:#cfc5b7;
  --success:#37624a;
  --sage:#34432e;
  --pink:#efc6b8;
  --lavender:#d9d4e8;
  --max:1600px;
  --gutter:clamp(20px,4.2vw,68px);
  --font-display:"Helvetica Neue",Arial,sans-serif;
  --font-body:"Helvetica Neue",Arial,sans-serif;
  --radius:2px;
  --radius-sm:2px;
  --shadow:0 10px 30px rgb(40 26 19 / 8%);
  --shadow-strong:0 22px 60px rgb(40 26 19 / 24%);
  --ease:200ms cubic-bezier(.2,.7,.3,1);
}

/* styles.css */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}body:has(.drawer.is-open){overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.container{width:min(100%,var(--max));margin-inline:auto;padding-inline:var(--gutter)}.section-band{width:100%}.section-band--cream{background:#f1eadf}.section-band--soft{background:#faf7f1}.section-band--dark{background:var(--espresso);color:#fff8f0}.prototype-notice{position:relative;z-index:20;background:#2a140d;color:#fbe8cd;text-align:center;font-size:11px;font-weight:700;letter-spacing:.04em;padding:7px 12px}.prototype-notice--strong{background:var(--terracotta)}
.eyebrow{margin:0 0 9px;color:var(--terracotta);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.section-heading--compact{align-items:center;margin-bottom:16px}.section-heading h2,.page-hero h1,.product-detail h1,.checkout h2{margin:0;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif;line-height:1.05;letter-spacing:-.045em}.section-heading h2{font-size:clamp(28px,3vw,46px)}.section-heading p{margin:7px 0 0;color:var(--muted);font-size:14px}.text-link{display:inline-flex;align-items:center;gap:7px;border:0;background:none;color:var(--terracotta-dark);font-size:13px;font-weight:800;padding:7px 0;transition:color var(--ease)}.text-link:hover{color:var(--espresso)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:9px;padding:12px 21px;font-size:13px;font-weight:800;transition:transform var(--ease),background var(--ease),border var(--ease);min-height:44px}.button:hover{transform:translateY(-2px)}.button:focus-visible,.text-link:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid rgba(216,139,72,.45);outline-offset:3px}.button--primary{background:var(--terracotta);color:#fff}.button--primary:hover{background:var(--terracotta-dark)}.button--secondary{background:rgba(255,255,255,.6);border-color:#c28b67;color:var(--espresso)}.button--outline{padding:9px 16px;border-color:#c28b67;color:var(--terracotta-dark);font-size:12px;background:transparent}.button--light{background:#ffd174;color:var(--espresso)}.button--light:hover{background:#ffe19f}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.icon--large{width:25px;height:25px;color:var(--terracotta)}
.site-header{position:relative;z-index:10;background:#fffdfb;color:var(--espresso);box-shadow:0 1px 0 rgba(62,34,18,.05)}.utility-bar{background:var(--espresso);color:#f4d9b6;font-size:11px}.utility-bar__inner{display:flex;align-items:center;justify-content:space-between;min-height:30px;gap:18px}.utility-bar span{display:flex;align-items:center;gap:6px}.nav-main{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:76px}.wordmark{font-family:Trebuchet MS,Arial,sans-serif;font-size:26px;font-weight:900;line-height:.9;letter-spacing:-.06em;color:var(--espresso)}.wordmark em{color:var(--terracotta);font-style:normal}.wordmark small{display:block;margin-top:7px;color:#8a786d;font-family:Arial,sans-serif;font-size:7px;letter-spacing:.1em;text-align:center}.nav-links{display:flex;align-items:center;gap:28px;margin-left:auto}.nav-links a{font-size:13px;font-weight:700}.nav-links a:hover,.nav-links a.is-active{color:var(--terracotta)}.header-actions{display:flex;align-items:center;gap:12px}.search-box{display:flex;align-items:center;gap:8px;width:220px;padding:8px 12px;border:1px solid #d9cec2;border-radius:22px;color:var(--muted)}.search-box input{width:100%;border:0;outline:0;background:none;font-size:11px}.cart-button,.icon-button{position:relative;display:grid;place-items:center;width:38px;height:38px;border:0;background:none;color:var(--espresso)}.cart-count{position:absolute;top:0;right:-2px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:20px;background:var(--terracotta);color:#fff;font-size:10px;font-weight:800}.mobile-menu-button{display:none}.mobile-nav{display:none}.hero{background:linear-gradient(104deg,#fbf9f5 0%,#fbf8f3 43%,#e7d9c8 100%);overflow:hidden}.hero__inner{display:grid;grid-template-columns:minmax(360px,1fr) minmax(460px,1.18fr);min-height:505px}.hero__copy{align-self:center;padding-block:76px;position:relative;z-index:1}.hero h1{margin:0;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(50px,5.7vw,88px);font-weight:900;line-height:.94;letter-spacing:-.07em}.hero h1 em{color:var(--terracotta);font-style:normal}.hero__lead{max-width:520px;margin:22px 0;color:var(--espresso-soft);font-size:16px;line-height:1.5}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 25px}.hero__proof{display:flex;gap:20px;flex-wrap:wrap}.hero__proof span{display:grid;grid-template-columns:22px auto;column-gap:6px;line-height:1.1}.hero__proof .icon{grid-row:span 2;color:var(--terracotta);width:19px}.hero__proof b{font-size:10px}.hero__proof small{color:var(--muted);font-size:9px}.hero__media{position:relative;min-height:505px;overflow:hidden}.hero__media:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#fbf9f5 0%,transparent 22%)}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.95)}.hero__stamp{position:absolute;z-index:2;left:50%;top:52%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:126px;height:126px;border:1px solid rgba(58,29,18,.65);border-radius:50%;color:var(--espresso);transform:rotate(-10deg);text-align:center;background:rgba(252,246,233,.34)}.hero__stamp span{font-family:cursive;font-size:14px}.hero__stamp strong{font-size:17px;line-height:.9}.hero__stamp small{margin-top:9px;font-size:7px;letter-spacing:.12em}.hero__scribble{position:absolute;z-index:2;font-family:cursive;color:var(--espresso);font-size:20px;line-height:1.05;text-align:center}.hero__scribble--top{right:7%;top:14%;transform:rotate(-10deg)}.hero__scribble--bottom{right:6%;bottom:16%;transform:rotate(-7deg)}
.category-rail{padding-block:24px}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.category-card{position:relative;min-height:142px;padding:12px 12px 13px;background:#f7f1e8;border:1px solid #eee4d7;border-radius:10px;box-shadow:0 3px 12px rgba(61,31,13,.04);transition:transform var(--ease),box-shadow var(--ease)}.category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.category-card__image{display:block;height:78px;margin:-4px auto 5px;mix-blend-mode:multiply}.category-card__image img{width:100%;height:100%;object-fit:contain}.category-card strong,.category-card small{display:block;padding-right:22px}.category-card strong{font-size:12px}.category-card small{color:var(--muted);font-size:10px}.circle-arrow{position:absolute;right:10px;bottom:13px;display:grid;place-items:center;width:25px;height:25px;border:1px solid #d88b63;border-radius:50%;color:var(--terracotta);font-weight:700}.brand-strip{background:#fffdfb;border-bottom:1px solid var(--line);padding-block:21px}.brand-strip__inner{display:flex;align-items:center;gap:34px}.brand-strip h2{margin:0;white-space:nowrap;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif;font-size:16px}.brand-list{display:flex;align-items:center;justify-content:space-around;flex:1;gap:20px}.brand-logo{display:inline-block;text-align:center;font-weight:900;line-height:.85}.brand-logo small{font-size:8px}.brand-logo--dark{font-family:Georgia,serif;font-size:15px}.brand-logo--blue{color:#20457a;font-family:Georgia,serif;font-size:14px}.brand-logo--red{color:#d92e2b;font-family:Georgia,serif;font-size:34px;letter-spacing:-.12em}.brand-logo--kimbo{color:#d52d28;font-size:21px;letter-spacing:-.07em}.brand-logo--green{color:#4c4938;font-size:13px;letter-spacing:.05em}.product-section{padding-block:40px}.product-grid{display:grid;gap:14px}.product-grid--five{grid-template-columns:repeat(5,1fr)}.product-grid--four{grid-template-columns:repeat(4,1fr)}.product-card{position:relative;display:flex;flex-direction:column;min-width:0;background:#fffdfa;border:1px solid #eadfd3;border-radius:10px;box-shadow:0 4px 14px rgba(59,33,18,.04);overflow:hidden;transition:transform var(--ease),box-shadow var(--ease)}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-card__media{position:relative;display:grid;place-items:center;min-height:205px;padding:18px;background:#f1ece4}.product-card__media img{width:100%;height:170px;object-fit:contain;mix-blend-mode:multiply}.product-card__badge{position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:20px;background:#94601d;color:#fff;font-size:9px;font-weight:800}.product-card__badge--new{background:var(--success)}.product-card__body{display:flex;flex:1;flex-direction:column;padding:14px}.product-card__brand{color:var(--muted);font-size:10px}.product-card h3{margin:3px 0 2px;font-size:14px;line-height:1.2}.product-card__size{color:var(--muted);font-size:11px}.product-card__bottom{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px}.price{color:var(--espresso);font-size:16px;font-weight:900}.price small{display:block;color:var(--muted);font-size:9px;font-weight:400}.add-button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:6px;background:var(--terracotta);color:#fff}.add-button:disabled{background:#c4b9ad;cursor:not-allowed}.offer-section{padding-block:18px 43px}.offer-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.offer-card{position:relative;min-height:206px;border-radius:10px;overflow:hidden}.offer-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.offer-card--photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,18,11,.83),rgba(38,18,11,.12))}.offer-card__overlay,.offer-card--cream>div{position:relative;z-index:1;padding:28px;max-width:460px}.offer-card h2{margin:4px 0 15px;color:#fff;font-family:Trebuchet MS,Arial,sans-serif;font-size:28px;line-height:1.04;letter-spacing:-.04em}.offer-card--cream{background:#e9d8c3;color:var(--espresso)}.offer-card--cream:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(238,221,201,.98) 0%,rgba(238,221,201,.76) 55%,rgba(238,221,201,0) 100%)}.offer-card--cream h2{color:var(--espresso)}.offer-card--cream p:not(.eyebrow){max-width:320px;margin:0 0 18px;color:var(--espresso-soft);font-size:13px}.offer-card--cream img{left:auto;width:55%;object-position:center}.benefits{padding-block:25px}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.benefits-grid>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:center}.benefits-grid .icon{grid-row:span 2}.benefits-grid strong{font-size:13px}.benefits-grid span{color:var(--muted);font-size:11px}.club{background:#eee5d7}.club__inner{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:70px;min-height:215px}.club__inner>img{width:100%;height:215px;object-fit:cover;object-position:center}.club__inner h2{margin:0;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif;font-size:31px;line-height:1.02;letter-spacing:-.05em}.club__inner h2 em{color:var(--terracotta);font-style:normal}.club__inner p:not(.eyebrow){max-width:500px;margin:10px 0 15px;color:var(--espresso-soft);font-size:13px}.club__beans{position:absolute;right:7%;bottom:25px;color:#6a3e28;font-size:22px;line-height:.8;transform:rotate(-25deg)}.editorial{padding-block:40px}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.editorial-grid article{padding:9px 9px 15px;background:#fffdfa;border:1px solid var(--line);border-radius:10px}.editorial-grid img{width:100%;height:135px;object-fit:cover;border-radius:7px;margin-bottom:12px}.editorial-grid small{color:var(--terracotta);font-size:9px;font-weight:800;letter-spacing:.1em}.editorial-grid h3{margin:4px 0 7px;font-family:Trebuchet MS,Arial,sans-serif;font-size:17px;line-height:1.1}.newsletter{padding-block:27px}.newsletter__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.newsletter h2{margin:0;font-family:Trebuchet MS,Arial,sans-serif;font-size:32px;letter-spacing:-.05em}.newsletter p:not(.eyebrow){margin:4px 0 0;color:#e4cfc0;font-size:13px}.newsletter .eyebrow{color:#e6a069}.newsletter-form{width:min(100%,540px)}.newsletter-form label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.newsletter-form>div{display:flex;border-radius:8px;background:#fff;overflow:hidden}.newsletter-form input{min-width:0;flex:1;border:0;padding:13px 14px;outline:0;font-size:12px}.newsletter-form .button{border-radius:0}.newsletter-form small{display:block;margin-top:6px;color:#c8a994;font-size:10px}
.site-footer{background:#f6f1e9;color:var(--espresso);border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px;padding-block:40px}.footer-main h3{margin:2px 0 12px;font-size:13px}.footer-main ul{list-style:none;margin:0;padding:0;color:var(--muted);font-size:12px;line-height:1.9}.footer-wordmark{font-size:30px}.footer-wordmark small{font-size:7px}.footer-note{color:var(--muted);font-size:11px;max-width:230px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;padding-block:14px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.footer-bottom a{color:var(--espresso)}
.drawer-backdrop{position:fixed;z-index:30;inset:0;background:rgba(35,17,10,.42);opacity:0;pointer-events:none;transition:opacity var(--ease)}.drawer-backdrop.is-open{opacity:1;pointer-events:auto}.drawer{position:fixed;z-index:31;top:0;right:0;display:flex;flex-direction:column;width:min(100%,430px);height:100dvh;background:#fffdf9;box-shadow:var(--shadow-strong);transform:translateX(105%);transition:transform 240ms ease}.drawer.is-open{transform:translateX(0)}.drawer__header{display:flex;align-items:center;justify-content:space-between;padding:22px;border-bottom:1px solid var(--line)}.drawer__header h2{margin:0;font-family:Trebuchet MS,Arial,sans-serif}.drawer__content{flex:1;overflow:auto;padding:18px 22px}.drawer__footer{padding:18px 22px;border-top:1px solid var(--line)}.drawer__line{display:flex;justify-content:space-between;margin-bottom:15px;font-weight:800}.drawer__item{display:grid;grid-template-columns:66px 1fr auto;align-items:center;gap:10px;padding-block:12px;border-bottom:1px solid var(--line)}.drawer__item img{width:66px;height:66px;padding:5px;background:#f0ebe3;object-fit:contain}.drawer__item h3{margin:0;font-size:13px;line-height:1.2}.drawer__item p{margin:4px 0;color:var(--muted);font-size:11px}.qty-control{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden}.qty-control button{width:27px;height:27px;border:0;background:#f6f0e8;color:var(--espresso)}.qty-control span{min-width:25px;text-align:center;font-size:12px}.drawer__remove{border:0;background:none;color:var(--muted);font-size:18px}.drawer__empty{text-align:center;padding:60px 10px;color:var(--muted)}.drawer__empty strong{display:block;margin-bottom:6px;color:var(--espresso)}.toast{position:fixed;z-index:50;right:20px;bottom:20px;max-width:360px;padding:13px 16px;border-radius:8px;background:var(--espresso);color:#fff;font-size:13px;box-shadow:var(--shadow-strong);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity var(--ease),transform var(--ease)}.toast.is-visible{opacity:1;transform:translateY(0)}
.page-hero{padding-block:55px 50px;background:linear-gradient(110deg,#eee3d5,#faf6ef)}.page-hero h1{font-size:clamp(42px,5vw,72px)}.page-hero p:not(.eyebrow){max-width:550px;margin:15px 0 0;color:var(--muted)}.shop-layout{padding-block:28px 70px}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.shop-toolbar>div{display:flex;align-items:center;gap:20px}.result-count{font-size:13px;font-weight:800}.sort-control{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.sort-control select{min-width:180px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fffdfa;color:var(--espresso)}.shop-body{display:grid;grid-template-columns:230px 1fr;gap:25px}.filter-panel{align-self:start;padding:19px;background:#fffdfa;border:1px solid var(--line);border-radius:10px}.filter-panel__head{display:flex;justify-content:space-between;align-items:center}.filter-panel h2{margin:0 0 15px;font-family:Trebuchet MS,Arial,sans-serif;font-size:22px}.filter-close{display:none}.filter-panel>label,.filter-panel legend{display:block;margin:17px 0 7px;font-size:12px;font-weight:800}.field-with-icon{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid var(--line);border-radius:7px}.field-with-icon input{width:100%;border:0;background:none;outline:0;font-size:12px}.filter-panel fieldset{border:0;margin:0;padding:0}.filter-panel fieldset label{display:block;margin:9px 0;color:var(--muted);font-size:12px}.filter-panel input[type=checkbox]{accent-color:var(--terracotta)}.mobile-filter-button{display:none}.empty-state{padding:70px 20px;text-align:center}.empty-state__icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border-radius:50%;background:#ede1d0;color:var(--terracotta);font-size:30px}.empty-state h2{margin:0;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif}.empty-state p{margin:8px 0 18px;color:var(--muted)}
.product-detail{min-height:520px;padding-block:50px}.product-detail__grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,.9fr);gap:clamp(30px,7vw,110px);align-items:center}.product-detail__media{display:grid;place-items:center;min-height:440px;padding:35px;background:#f0e9de;border-radius:12px}.product-detail__media img{width:100%;height:365px;object-fit:contain;mix-blend-mode:multiply}.product-detail__info h1{margin:0;color:var(--espresso);font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(37px,5vw,68px);line-height:1;letter-spacing:-.06em}.product-detail__brand{margin:0 0 8px;color:var(--terracotta);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.product-detail__desc{margin:18px 0;color:var(--muted);font-size:16px}.product-detail__meta{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0;color:var(--muted);font-size:12px}.meta-chip{padding:6px 10px;border:1px solid var(--line);border-radius:20px;background:#fffdfa}.product-detail__buy{display:flex;align-items:center;gap:12px;margin-top:24px}.product-detail__buy .qty-control{height:44px}.product-detail__buy .qty-control button{height:42px;width:35px}.product-detail__buy .qty-control span{min-width:35px}.product-detail__buy .button{min-height:44px}.not-found{padding-block:100px;text-align:center}.not-found h1{font-size:42px}.not-found p{color:var(--muted)}
.checkout{padding-block:35px 80px}.checkout-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:25px;align-items:start}.checkout-card{padding:25px;background:#fffdfa;border:1px solid var(--line);border-radius:12px}.checkout-card h2{margin-bottom:20px;font-size:26px}.checkout-form{display:grid;gap:15px}.checkout-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.checkout-form input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:#fff}.checkout-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.payment-options{display:grid;gap:10px;margin:20px 0}.payment-option{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.payment-option:has(input:checked){border-color:var(--terracotta);background:#fff8f1}.payment-option input{accent-color:var(--terracotta)}.payment-option span{font-weight:800;font-size:13px}.payment-option small{display:block;color:var(--muted);font-size:11px;font-weight:400}.demo-callout{margin:15px 0;padding:12px 14px;border-left:3px solid var(--terracotta);background:#fff4e8;color:var(--espresso-soft);font-size:12px}.order-lines{display:grid;gap:12px;margin-bottom:20px}.order-line{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center}.order-line img{width:52px;height:52px;padding:4px;background:#f0ebe3;object-fit:contain}.order-line strong{display:block;font-size:12px;line-height:1.2}.order-line small{color:var(--muted);font-size:10px}.order-line>span{font-size:12px;font-weight:800}.order-total{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid var(--line);font-weight:900}.order-total small{display:block;color:var(--muted);font-weight:400;font-size:10px}.checkout-success{max-width:660px;margin:25px auto;padding:55px 25px;text-align:center;background:#fffdfa;border:1px solid #d3e3d7;border-radius:12px}.checkout-success__icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 16px;border-radius:50%;background:#dff0e3;color:var(--success);font-size:30px}.checkout-success h2{font-size:34px}.checkout-success p{color:var(--muted)}
@media (max-width:1100px){.nav-links{gap:15px}.search-box{width:165px}.hero__inner{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(48px,5.6vw,68px)}.product-grid--five{grid-template-columns:repeat(3,1fr)}.brand-strip__inner{gap:18px}.brand-strip h2{font-size:14px}.brand-logo{transform:scale(.88)}}
@media (max-width:800px){.utility-bar__inner{justify-content:center}.utility-bar__inner span:nth-child(2){display:none}.nav-main{min-height:67px}.mobile-menu-button{display:grid}.nav-links{display:none}.header-actions{margin-left:auto}.search-box{width:min(40vw,190px)}.mobile-nav{display:none;padding:8px var(--gutter) 18px;border-top:1px solid var(--line);background:#fff}.mobile-nav.is-open{display:grid}.mobile-nav a{padding:10px 0;border-bottom:1px solid var(--line);font-weight:700}.hero__inner{grid-template-columns:1fr;min-height:auto}.hero__copy{padding-block:52px 34px}.hero__media{min-height:370px;margin-inline:calc(var(--gutter) * -1)}.hero__media:before{background:linear-gradient(180deg,#fbf9f5 0%,transparent 23%)}.hero__stamp{left:auto;right:23%;top:42%}.category-grid{grid-template-columns:repeat(3,1fr)}.category-card:nth-child(4),.category-card:nth-child(5){display:none}.brand-strip__inner{flex-wrap:wrap}.brand-strip h2{width:100%}.brand-list{gap:8px;width:100%}.brand-strip__inner>.button{margin-left:auto}.product-grid--five{grid-template-columns:repeat(2,1fr)}.product-card__media{min-height:170px}.product-card__media img{height:135px}.offer-grid{grid-template-columns:1fr}.offer-card{min-height:220px}.benefits-grid{grid-template-columns:repeat(2,1fr);gap:22px}.club__inner{grid-template-columns:1fr;gap:18px;padding-block:26px}.club__inner>img{height:220px;order:2}.club__inner>div:nth-child(2){order:1}.club__beans{display:none}.editorial-grid{grid-template-columns:repeat(2,1fr)}.editorial-grid article:last-child{display:none}.newsletter__inner{display:grid;gap:18px}.newsletter-form{max-width:none}.footer-main{grid-template-columns:repeat(3,1fr);gap:22px}.footer-main>div:first-child{grid-column:1/-1}.shop-body{grid-template-columns:1fr}.filter-panel{position:fixed;z-index:25;top:0;left:0;width:min(88vw,340px);height:100dvh;overflow:auto;border-radius:0;transform:translateX(-105%);transition:transform 220ms ease}.filter-panel.is-open{transform:translateX(0)}.filter-close{display:grid}.mobile-filter-button{display:inline-flex;margin-bottom:15px}.shop-results .product-grid--four{grid-template-columns:repeat(3,1fr)}.checkout-grid{grid-template-columns:1fr}.checkout-grid .checkout-card:first-child{order:2}.checkout-grid .checkout-card:last-child{order:1}}
@media (max-width:520px){body{font-size:15px}.prototype-notice{font-size:10px}.search-box{position:absolute;top:73px;left:var(--gutter);right:var(--gutter);width:auto;z-index:2;background:#fff;display:none}.site-header:focus-within .search-box,.search-box:focus-within{display:flex}.header-actions{gap:3px}.hero h1{font-size:clamp(43px,12vw,59px)}.hero__lead{font-size:14px}.hero__proof{gap:12px}.hero__proof span{grid-template-columns:18px auto}.hero__proof b{font-size:9px}.hero__proof small{font-size:8px}.hero__media{min-height:300px}.hero__scribble{font-size:15px}.hero__stamp{width:90px;height:90px;right:14%;top:39%}.hero__stamp strong{font-size:12px}.hero__stamp span{font-size:10px}.hero__stamp small{font-size:5px}.category-rail{padding-block:20px}.category-grid{grid-template-columns:repeat(2,1fr);gap:9px}.category-card:nth-child(3){display:none}.category-card{min-height:127px}.category-card__image{height:65px}.section-heading{align-items:start;flex-direction:column;gap:4px}.brand-list{overflow:hidden;justify-content:space-between}.brand-logo{font-size:10px;transform:scale(.82)}.brand-logo--red{font-size:26px}.brand-strip__inner>.button{margin-left:0}.product-section{padding-block:32px}.product-card__media{min-height:145px;padding:10px}.product-card__media img{height:116px}.product-card__body{padding:10px}.product-card h3{font-size:12px}.product-card__size{font-size:10px}.price{font-size:14px}.product-card__bottom{padding-top:9px}.add-button{width:30px;height:30px}.offer-card__overlay,.offer-card--cream>div{padding:22px}.offer-card h2{font-size:25px}.benefits-grid{gap:16px 12px}.benefits-grid strong{font-size:11px}.benefits-grid span{font-size:10px}.club__inner h2{font-size:29px}.editorial-grid{grid-template-columns:1fr}.editorial-grid article:last-child{display:block}.footer-main{grid-template-columns:1fr 1fr;padding-block:30px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:grid}.shop-toolbar{align-items:start;flex-direction:column}.shop-toolbar>div{justify-content:space-between;width:100%}.sort-control{width:100%;justify-content:space-between}.sort-control select{flex:1}.shop-results .product-grid--four{grid-template-columns:repeat(2,1fr)}.product-detail{padding-block:26px 55px}.product-detail__grid{grid-template-columns:1fr;gap:28px}.product-detail__media{min-height:300px}.product-detail__media img{height:260px}.product-detail__info h1{font-size:43px}.product-detail__buy{flex-wrap:wrap}.product-detail__buy .button{flex:1}.checkout-form__row{grid-template-columns:1fr}.page-hero{padding-block:40px}.page-hero h1{font-size:43px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
.wordmark span{color:var(--terracotta)}

/* Cart drawer must cover the sticky header and its menus. */
.drawer-backdrop{z-index:70}
.drawer{z-index:71}

/* catalog-marketplace.css */
/* Coffeedeal catalogue: warm editorial identity, marketplace structure. */
.conversion-page[data-page=shop]{--catalog-espresso:var(--coffee-ink);--catalog-ink:#2e211a;--catalog-copper:var(--coffee-copper);--catalog-copper-dark:var(--coffee-copper-dark);--catalog-cream:var(--coffee-cream);--catalog-line:var(--coffee-line);--catalog-text:var(--catalog-ink);background:#fff;color:var(--catalog-text);font-family:var(--font-commerce)}
.conversion-page[data-page=shop] .container{width:min(90%,2400px);padding-inline:0}
.conversion-page[data-page=shop] .conversion-utility{display:none}
.conversion-page[data-page=shop] .site-header{background:var(--catalog-espresso);color:#fffaf5;border-bottom:3px solid var(--catalog-copper);box-shadow:0 5px 18px rgba(52,27,19,.12)}
.conversion-page[data-page=shop] .nav-main{display:flex;gap:clamp(22px,3vw,58px);min-height:92px}
.conversion-page[data-page=shop] .wordmark{flex:0 0 auto;font-size:23px;color:#fffaf5}
.conversion-page[data-page=shop] .nav-links,.conversion-page[data-page=shop] .header-shop-link{display:none}
.catalog-header-search{display:flex;align-items:center;gap:12px;flex:1;min-width:180px;max-width:1200px;height:48px;margin-inline:auto;padding:0 17px;border:1px solid #d3bda9;border-radius:25px;background:#fffaf5;box-shadow:inset 0 1px 2px rgba(52,27,19,.08)}
.catalog-header-search:focus-within{border-color:#d87947;box-shadow:0 0 0 3px rgba(216,121,71,.24)}
.catalog-header-search .icon{flex:0 0 auto;width:18px;height:18px;color:var(--catalog-copper)}
.catalog-header-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--catalog-ink);font-size:16px}
.catalog-header-search input::placeholder{color:#796f69}
.conversion-page[data-page=shop] .header-actions{flex:0 0 auto;gap:12px}
.conversion-page[data-page=shop] .cart-button,.conversion-page[data-page=shop] .icon-button{color:#fffaf5}
.conversion-page[data-page=shop] .cart-count{background:var(--catalog-copper);color:#fff}

.catalog-page{min-height:75vh;background:#fff}
.catalog-shell{display:grid;grid-template-columns:clamp(215px,16vw,285px) minmax(0,1fr);column-gap:clamp(30px,3.4vw,68px);padding-top:36px;padding-bottom:100px}
.catalog-sidebar{position:sticky;top:110px;align-self:start;min-width:0;max-height:calc(100dvh - 130px);padding:23px 22px 27px;border:1px solid var(--catalog-line);border-radius:12px;background:var(--catalog-cream);color:var(--catalog-espresso);font-size:16px;overflow-y:auto;overscroll-behavior:contain}
.catalog-sidebar__all{display:flex;align-items:center;gap:10px;margin-bottom:27px;padding:0 7px 16px;border-bottom:1px solid var(--catalog-line);color:var(--catalog-espresso);font-weight:700}
.catalog-sidebar__all .catalog-sidebar__label{flex:1;font-size:16px;font-weight:700;line-height:1.25}
.catalog-sidebar__all .catalog-sidebar__arrow{font-size:22px;font-weight:400;line-height:1}
.catalog-sidebar__section,.catalog-sidebar h2{margin:0 0 16px;font-family:var(--font-ui);font-size:17px;font-weight:600;line-height:1.25;letter-spacing:.04em;text-transform:uppercase}
.catalog-sidebar__section{color:var(--catalog-copper-dark)}
.catalog-sidebar h2{margin-bottom:11px}
.catalog-sidebar nav{display:grid;gap:3px}
.catalog-sidebar nav a{display:flex;align-items:center;gap:10px;width:100%;max-width:100%;padding:7px;border-radius:6px;font-size:16px;line-height:1.35;color:var(--catalog-espresso)}
.catalog-sidebar nav a:hover,.catalog-sidebar nav a.is-active{background:#efdccf;color:var(--catalog-copper-dark);text-decoration:none}
.catalog-sidebar__icon{flex:0 0 42px;width:42px;height:34px;margin:0;color:var(--catalog-copper-dark);transition:transform .18s ease}
.catalog-sidebar a:hover .catalog-sidebar__icon,.catalog-sidebar a.is-active .catalog-sidebar__icon{transform:translateX(2px)}
.catalog-sidebar__description{margin-top:22px;padding:20px 7px 0;border-top:1px solid var(--catalog-line);color:#66534a;font-size:14px;line-height:1.55}
.catalog-sidebar .catalog-sidebar__description h2{margin:0 0 10px;color:var(--catalog-espresso);font-family:var(--font-body);font-size:16px;font-weight:700;line-height:1.3;letter-spacing:0;text-transform:none}
.catalog-sidebar__description p{margin:0}
.catalog-sidebar__description p+p,.catalog-sidebar__description ul,.catalog-sidebar__description ol{margin-top:10px}
.catalog-content{min-width:0}
.catalog-content h1{margin:0 0 26px;font-family:var(--font-display);font-size:clamp(38px,3vw,52px);font-weight:400;line-height:1.05;letter-spacing:-.015em;text-transform:none;color:var(--catalog-espresso)}
.catalog-category-intro{max-width:980px;margin:-8px 0 28px;padding:22px 26px;border:1px solid var(--catalog-line);border-radius:16px;background:linear-gradient(135deg,#fffaf5 0%,#f7eee6 100%);font-size:17px;line-height:1.65;color:#5f4d45;white-space:pre-line}
.catalog-category-intro h2{margin:0 0 9px;font-family:var(--font-display);font-size:clamp(24px,2vw,34px);font-weight:400;line-height:1.1;color:var(--catalog-espresso)}
.catalog-category-details{margin-top:72px;padding:clamp(28px,4vw,58px);border:1px solid var(--catalog-line);border-radius:20px;background:#fbf7f2;font-size:17px;line-height:1.7;color:#5f4d45;white-space:pre-line}
.catalog-category-details h3{margin:34px 0 12px;font-family:var(--font-display);font-size:clamp(26px,2.2vw,38px);font-weight:400;line-height:1.12;color:var(--catalog-espresso)}
.catalog-category-details h3:first-child{margin-top:0}
.catalog-category-details h4{margin:24px 0 7px;font-size:20px;line-height:1.25;color:var(--catalog-espresso)}
.catalog-category-details ul,.catalog-category-details ol{padding-left:22px}
.catalog-result-count{margin:0 0 19px;padding-left:12px;border-left:4px solid var(--catalog-copper);font-size:clamp(21px,1.55vw,26px);font-weight:750;line-height:1.2;letter-spacing:-.025em;color:var(--catalog-espresso)}
.catalog-discovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:3px}
.catalog-popular{min-width:0}
.catalog-popular h2{margin:0 0 10px;font-family:var(--font-commerce);font-size:16px;font-weight:600;line-height:1.3;color:#5d4a3e}
.catalog-popular__chips{display:flex;flex-wrap:wrap;gap:7px}
.catalog-popular__chips button{min-height:38px;padding:6px 15px;border:1px solid #d9c8b8;border-radius:22px;background:var(--catalog-cream);color:var(--catalog-espresso);font-size:15px;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.catalog-popular__chips button:hover,.catalog-popular__chips button.is-active{border-color:var(--catalog-copper);background:var(--catalog-copper);color:#fff}
.catalog-popular--searches .catalog-popular__chips button{border-style:dashed;background:#fff}
.catalog-popular--searches .catalog-popular__chips button:hover,.catalog-popular--searches .catalog-popular__chips button.is-active{border-style:solid;background:var(--catalog-copper);color:#fff}
.catalog-visual-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:18px;margin-top:28px}
.catalog-system-filter{min-width:0;scroll-margin-top:108px}
.catalog-system-filter__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:12px}
.catalog-system-filter__heading h2{margin:0;color:var(--catalog-ink);font-family:var(--font-commerce);font-size:20px;font-weight:700;line-height:1.2;text-transform:none}
.catalog-system-filter__heading span{color:#786960;font-size:13px}
.catalog-system-filter__options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.catalog-system-filter__options button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:92px;padding:8px 10px;border:1px solid #d8c7b7;border-radius:12px;background:#fffaf5;color:var(--catalog-espresso);font:inherit;font-size:13px;font-weight:650;line-height:1.2;text-align:center;cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .18s}
.catalog-system-filter__options button:hover{border-color:var(--catalog-copper);background:#fff2e9;color:var(--catalog-copper-dark);transform:translateY(-1px)}
.catalog-system-filter__options button:focus-visible{outline:3px solid rgba(188,91,53,.28);outline-offset:2px}
.catalog-system-filter__options button.is-active{border-color:var(--catalog-espresso);background:var(--catalog-espresso);color:#fffaf5}
.catalog-system-filter__options .category-illustration{width:62px;height:48px;margin:0;color:currentColor}
.catalog-system-filter.is-guided .catalog-system-filter__options{padding:10px;border-radius:14px;background:#fff7f0;box-shadow:0 8px 24px rgba(83,42,27,.12)}
.catalog-product-type-filter__options{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:1101px){.catalog-visual-filters .catalog-system-filter__heading span{display:none}}
.catalog-facets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.catalog-facet,.catalog-more{display:flex;align-items:center;width:100%;height:42px;min-width:0;border:1px solid #d8c7b7;border-radius:22px;background:var(--catalog-cream);color:var(--catalog-ink);font-size:15px}
.catalog-facet:focus-within,.catalog-more:focus-visible{outline:2px solid var(--catalog-copper);outline-offset:2px}
.catalog-facet.is-guided{grid-column:span 2;height:50px;border-color:var(--catalog-copper);background:#fff7f0;box-shadow:0 8px 24px rgba(83,42,27,.12)}
.catalog-facet.is-guided select{font-size:16px;font-weight:700}
.catalog-facet select{width:100%;height:100%;min-width:0;padding:0 37px 0 15px;border:0;outline:0;border-radius:22px;background:transparent;color:var(--catalog-ink);font-size:15px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23854b32' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px}
.catalog-facet select:not(:has(option[value=""]:checked)){font-weight:600;background-color:#f1ddd0}
.catalog-facet--search{gap:8px;padding:0 13px;border-color:#bc8a68;background:#fffaf5}
.catalog-facet--search .icon{width:17px;height:17px;flex:0 0 auto;color:var(--catalog-copper)}
.catalog-facet--search input{width:100%;height:100%;min-width:0;border:0;outline:0;background:transparent;color:#111;font-size:15px}
.catalog-facet--search input::placeholder{color:#343434;opacity:1}
.catalog-more{justify-content:center;border-color:var(--catalog-copper);background:#fffaf5;color:var(--catalog-copper-dark);font-weight:650;cursor:pointer}
.catalog-more:hover,.catalog-more[aria-expanded=true]{background:var(--catalog-copper);color:#fff}
.catalog-advanced[hidden]{display:none!important}
.catalog-advanced{margin-top:12px;padding:18px 22px;border:1px solid var(--catalog-line);border-radius:12px;background:var(--catalog-cream)}
.catalog-price-range{width:min(100%,760px)}
.catalog-price-range__summary{display:flex;align-items:baseline;justify-content:space-between;gap:20px;color:var(--catalog-ink)}
.catalog-price-range__summary>span{font-size:14px;font-weight:650}
.catalog-price-range__summary output{color:var(--catalog-copper-dark);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
.catalog-price-range__control{position:relative;height:32px;margin-top:12px}
.catalog-price-range__track{position:absolute;top:50%;right:0;left:0;height:6px;border-radius:999px;background:#ddcfc4;transform:translateY(-50%)}
.catalog-price-range__track i{position:absolute;top:0;bottom:0;left:var(--price-start);right:calc(100% - var(--price-end));border-radius:inherit;background:var(--catalog-copper)}
.catalog-price-range input[type=range]{position:absolute;inset:0;width:100%;height:32px;margin:0;padding:0;border:0;outline:0;background:transparent;appearance:none;pointer-events:none}
.catalog-price-range input[type=range]::-webkit-slider-runnable-track{height:6px;background:transparent}
.catalog-price-range input[type=range]::-webkit-slider-thumb{width:22px;height:22px;margin-top:-8px;border:3px solid #fff;border-radius:50%;background:var(--catalog-copper);box-shadow:0 0 0 1px var(--catalog-copper-dark),0 3px 9px rgba(58,29,18,.2);appearance:none;pointer-events:auto;cursor:grab}
.catalog-price-range input[type=range]::-moz-range-track{height:6px;background:transparent}
.catalog-price-range input[type=range]::-moz-range-thumb{width:16px;height:16px;border:3px solid #fff;border-radius:50%;background:var(--catalog-copper);box-shadow:0 0 0 1px var(--catalog-copper-dark),0 3px 9px rgba(58,29,18,.2);pointer-events:auto;cursor:grab}
.catalog-price-range input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid rgba(174,71,37,.3);outline-offset:3px}
.catalog-price-range input[type=range]:focus-visible::-moz-range-thumb{outline:3px solid rgba(174,71,37,.3);outline-offset:3px}
.catalog-price-range input[type=range]:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.08)}
.catalog-price-range input[type=range]:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.08)}
.catalog-price-range__scale{display:flex;justify-content:space-between;margin-top:1px;color:#786960;font-size:12px;font-variant-numeric:tabular-nums}
.catalog-active-filters{margin:14px 0 0;min-height:0}
.catalog-active-filters:empty{display:none}
.catalog-active-filters .active-filter{border-color:#c78968;background:#fff5ef;color:var(--catalog-copper-dark)}
.catalog-toolbar{display:flex;align-items:center;gap:0;min-height:58px;margin-top:12px;border-bottom:1px solid var(--catalog-line)}
.catalog-toolbar__select{display:flex;align-items:center;gap:4px;padding-right:14px;color:#333;font-size:15px;white-space:nowrap}
.catalog-toolbar__select+.catalog-toolbar__select{padding-left:14px;border-left:1px solid var(--catalog-line)}
.catalog-toolbar__select select{min-width:0;max-width:180px;padding:5px 22px 5px 0;border:0;outline:0;background:transparent;color:#333;font-size:15px;cursor:pointer}
.catalog-view{display:flex;margin-left:auto;border:1px solid var(--catalog-line);border-radius:6px;overflow:hidden}
.catalog-view button{display:flex;align-items:center;justify-content:center;gap:5px;width:48px;height:36px;padding:7px 6px;border:0;border-right:1px solid var(--catalog-line);background:#fff;color:#847064;cursor:pointer}
.catalog-view button:last-child{border-right:0}
.catalog-view button[aria-pressed=true]{background:var(--catalog-espresso);color:#fff}
.catalog-view button:hover{background:#f7efe9;color:var(--catalog-copper-dark)}
.catalog-view button[aria-pressed=true]:hover{background:var(--catalog-espresso);color:#fff}
.catalog-view__grid-icon{display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);gap:2px;width:12px;height:12px}
.catalog-view__grid-icon i{display:block;border-radius:1.5px;background:currentColor}
.catalog-view__number{font-size:12px;font-weight:800;line-height:1}
.catalog-view__list-icon{display:grid;gap:3px;width:19px}
.catalog-view__list-icon i{display:grid;grid-template-columns:3px 1fr;align-items:center;gap:3px;height:3px}
.catalog-view__list-icon i::before,.catalog-view__list-icon i::after{content:"";display:block;background:currentColor}
.catalog-view__list-icon i::before{width:3px;height:3px;border-radius:50%}
.catalog-view__list-icon i::after{height:2px;border-radius:2px}

.catalog-products{display:grid;margin-top:28px}
.catalog-products.is-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.catalog-products.is-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.catalog-products.is-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.catalog-card{display:flex;flex-direction:column;min-width:0;padding:0 18px 24px;border-right:1px solid var(--catalog-line);border-bottom:1px solid var(--catalog-line);background:#fff}
.catalog-products.is-grid-4 .catalog-card:nth-child(4n),.catalog-products.is-grid-5 .catalog-card:nth-child(5n),.catalog-products.is-grid-6 .catalog-card:nth-child(6n){border-right:0}
.catalog-card__media{position:relative;display:grid;place-items:center;height:clamp(220px,18vw,330px);padding:10px 10px 20px;border-radius:8px;background:var(--coffee-surface);overflow:hidden}
.catalog-card__media img{position:absolute;top:12%;left:12%;display:block;width:76%;height:76%;object-fit:contain;mix-blend-mode:multiply;transition:transform .24s ease,opacity .24s ease}
.catalog-card:hover .catalog-card__media img{transform:scale(1.035)}
.catalog-card__media img.catalog-card__image--secondary{opacity:0}
.product-card__media img.product-card__image--primary,.product-card__media img.product-card__image--secondary{grid-area:1/1;transition:transform .24s ease,opacity .24s ease}
.product-card__media img.product-card__image--secondary{opacity:0}
.catalog-card.is-unavailable .catalog-card__media img.catalog-card__image--secondary,.product-card.is-unavailable .product-card__media img.product-card__image--secondary{opacity:0}
@media(hover:hover){.catalog-card__media.has-secondary-image:hover img.catalog-card__image--primary,.product-card__media.has-secondary-image:hover img.product-card__image--primary{opacity:0}.catalog-card__media.has-secondary-image:hover img.catalog-card__image--secondary,.product-card__media.has-secondary-image:hover img.product-card__image--secondary{opacity:1}.catalog-card.is-unavailable .catalog-card__media.has-secondary-image:hover img.catalog-card__image--secondary,.product-card.is-unavailable .product-card__media.has-secondary-image:hover img.product-card__image--secondary{opacity:.48}}
.catalog-card__media.has-secondary-image:focus-visible img.catalog-card__image--primary,.product-card__media.has-secondary-image:focus-visible img.product-card__image--primary{opacity:0}
.catalog-card__media.has-secondary-image:focus-visible img.catalog-card__image--secondary,.product-card__media.has-secondary-image:focus-visible img.product-card__image--secondary{opacity:1}
.catalog-card.is-unavailable .catalog-card__media.has-secondary-image:focus-visible img.catalog-card__image--secondary,.product-card.is-unavailable .product-card__media.has-secondary-image:focus-visible img.product-card__image--secondary{opacity:.48}
.catalog-card__badge{position:absolute;z-index:1;top:10px;left:10px;padding:5px 8px;border-radius:3px;background:var(--catalog-copper);color:#fff;font-size:11px;line-height:1.2}
.catalog-card__body{position:relative;display:flex;flex:1;flex-direction:column;align-items:stretch;min-width:0;padding-top:14px}
.catalog-card__category{margin-bottom:7px;font-size:14px;font-weight:600;line-height:1.3;color:var(--catalog-copper-dark)}
.catalog-card__category:hover{text-decoration:underline;text-underline-offset:3px}
.catalog-card__status{position:absolute;z-index:4;top:2px;right:-3px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#347644;cursor:help;outline:none}
.catalog-card__status-dot{display:block;width:12px;height:12px;border:2px solid currentColor;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #fff}
.catalog-card__status.is-unavailable{color:#9b9b9b}
.catalog-card__status.is-unavailable .catalog-card__status-dot{background:#fff}
.catalog-card__status-tooltip{--tooltip-x:0;position:absolute;right:0;bottom:calc(100% + 9px);display:grid;gap:3px;width:max-content;max-width:min(285px,calc(100vw - 32px));padding:11px 13px;border-radius:8px;background:#321c15;color:#fffaf5;box-shadow:0 10px 28px rgba(50,28,21,.2);font-size:13px;font-weight:450;line-height:1.35;text-align:left;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transform:translate(var(--tooltip-x),4px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.catalog-card__status-tooltip:after{position:absolute;right:9px;top:100%;border:6px solid transparent;border-top-color:#321c15;content:""}
.catalog-card__status-tooltip strong{color:#fff;font-size:13px;font-weight:750}
.catalog-card__status-tooltip span{color:#ead9d0}
.catalog-card__status:hover .catalog-card__status-tooltip,.catalog-card__status:focus .catalog-card__status-tooltip,.catalog-card__status:focus-visible .catalog-card__status-tooltip{opacity:1;visibility:visible;transform:translate(var(--tooltip-x),0)}
.catalog-card__status:focus-visible{box-shadow:0 0 0 3px rgba(188,91,53,.28)}
.catalog-card__price{margin-bottom:13px;font-size:22px;font-weight:750;line-height:1.2;color:var(--catalog-copper-dark)}
.catalog-card__coffee-price{display:block;margin:-7px 0 13px;color:#67584f;font-size:12px;font-weight:650;line-height:1.35;font-variant-numeric:tabular-nums}
.catalog-card h3{margin:3px 0 6px;font-family:var(--font-commerce);font-size:18px;font-weight:650;line-height:1.3;text-transform:none;color:var(--catalog-ink)}
.catalog-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.catalog-card__size{margin:0 0 14px;font-size:14px;line-height:1.4;color:#777}
.catalog-card__actions{display:flex;align-items:center;justify-content:flex-end;width:100%;gap:4px;margin-top:auto;padding-top:6px}
.catalog-card__quick-action{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:#685a53;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease}
.catalog-card__quick-action .icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.catalog-card__quick-action:hover,.catalog-card__quick-action:focus-visible{border-color:#dfcfc4;background:#f7efe9;color:var(--catalog-copper-dark)}
.catalog-card__quick-action:active{transform:scale(.94)}
.catalog-card__quick-action:focus-visible{outline:3px solid rgba(188,91,53,.22);outline-offset:1px}
.catalog-card__quick-action.is-active{border-color:#d9b7a7;background:#f2ddd2;color:var(--catalog-copper-dark)}
.catalog-card__quick-action.is-active .icon{fill:rgba(188,91,53,.16)}
.catalog-card__quick-action--cart{margin-left:3px;background:var(--catalog-copper);color:#fff}
.catalog-card__quick-action--cart:hover,.catalog-card__quick-action--cart:focus-visible{border-color:var(--catalog-copper-dark);background:var(--catalog-copper-dark);color:#fff}
.catalog-card__quick-action--alternatives{margin-left:3px;border-color:#b8d1bd;background:#edf6ef;color:#34791f}
.catalog-card__quick-action--alternatives:hover,.catalog-card__quick-action--alternatives:focus-visible{border-color:#79aa84;background:#dfeee2;color:#245f34}
.catalog-card__quick-action:disabled{border-color:#ddd;background:#eee;color:#999;cursor:not-allowed;transform:none}
.catalog-card__quick-action:after{position:absolute;right:0;bottom:calc(100% + 8px);z-index:6;width:max-content;max-width:180px;padding:6px 8px;border-radius:5px;background:#321c15;color:#fffaf5;box-shadow:0 6px 18px rgba(50,28,21,.18);content:attr(data-label);font-size:12px;font-weight:650;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(3px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}
.catalog-card__quick-action:hover:after,.catalog-card__quick-action:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}
.catalog-products.is-grid-5 .catalog-card{padding-inline:13px}
.catalog-products.is-grid-5 .catalog-card__media{height:clamp(205px,14vw,285px)}
.catalog-products.is-grid-5 .catalog-card h3{font-size:16px}
.catalog-products.is-grid-5 .catalog-card__price{font-size:20px}
.catalog-products.is-grid-5 .catalog-card__quick-action{width:37px;height:37px}
.catalog-products.is-grid-6 .catalog-card{padding-inline:10px}
.catalog-products.is-grid-6 .catalog-card__media{height:clamp(180px,12vw,250px)}
.catalog-products.is-grid-6 .catalog-card__body{padding-top:12px}
.catalog-products.is-grid-6 .catalog-card__category{font-size:13px}
.catalog-products.is-grid-6 .catalog-card h3{font-size:15px;line-height:1.28}
.catalog-products.is-grid-6 .catalog-card__size{font-size:13px}
.catalog-products.is-grid-6 .catalog-card__price{font-size:18px}
.catalog-products.is-grid-6 .catalog-card__coffee-price{font-size:11px}
.catalog-products.is-grid-6 .catalog-card__actions{gap:1px}
.catalog-products.is-grid-6 .catalog-card__quick-action{width:34px;height:34px}
.catalog-products.is-grid-6 .catalog-card__quick-action .icon{width:19px;height:19px}
.catalog-products.is-list{display:grid;grid-template-columns:1fr}
.catalog-products.is-list .catalog-card{display:grid;grid-template-columns:minmax(180px,25%) minmax(0,1fr);gap:24px;min-height:220px;padding:12px 18px;border-right:0}
.catalog-products.is-list .catalog-card__media{height:200px}
.catalog-products.is-list .catalog-card__body{justify-content:center}
.catalog-products.is-list .catalog-card h3{font-size:20px}

@media(max-width:1100px){.catalog-visual-filters{grid-template-columns:1fr}.catalog-product-type-filter__options{max-width:660px}.catalog-products.is-grid-4,.catalog-products.is-grid-5,.catalog-products.is-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-products.is-grid-4 .catalog-card:nth-child(4n),.catalog-products.is-grid-5 .catalog-card:nth-child(5n),.catalog-products.is-grid-6 .catalog-card:nth-child(6n){border-right:1px solid var(--catalog-line)}.catalog-products:not(.is-list) .catalog-card:nth-child(3n){border-right:0}.catalog-card__media,.catalog-products.is-grid-5 .catalog-card__media,.catalog-products.is-grid-6 .catalog-card__media{height:260px}.catalog-products.is-grid-5 .catalog-card,.catalog-products.is-grid-6 .catalog-card{padding-inline:16px}.catalog-products.is-grid-5 .catalog-card h3,.catalog-products.is-grid-6 .catalog-card h3{font-size:17px}.catalog-products.is-grid-5 .catalog-card__price,.catalog-products.is-grid-6 .catalog-card__price{font-size:21px}}
@media(max-width:950px){.catalog-shell{grid-template-columns:170px minmax(0,1fr);gap:25px}.catalog-discovery{grid-template-columns:1fr}.catalog-system-filter__options{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-facets{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-products.is-grid-4,.catalog-products.is-grid-5,.catalog-products.is-grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-products:not(.is-list) .catalog-card:nth-child(3n){border-right:1px solid var(--catalog-line)}.catalog-products:not(.is-list) .catalog-card:nth-child(2n){border-right:0}.catalog-card__media,.catalog-products.is-grid-5 .catalog-card__media,.catalog-products.is-grid-6 .catalog-card__media{height:240px}.conversion-page[data-page=shop] .nav-main{gap:18px}.conversion-page[data-page=shop] .wordmark{font-size:20px}}
@media(max-width:700px){.conversion-page[data-page=shop] .nav-main{min-height:76px;flex-wrap:wrap;gap:4px 12px;padding-block:12px}.conversion-page[data-page=shop] .mobile-menu-button{display:grid;color:#fffaf5}.conversion-page[data-page=shop] .wordmark{font-size:18px}.catalog-header-search{order:3;flex:0 0 100%;max-width:none;height:44px}.conversion-page[data-page=shop] .header-actions{margin-left:auto}.conversion-page[data-page=shop] .mobile-nav{background:var(--catalog-espresso);border-top:1px solid rgba(255,250,245,.2)}.conversion-page[data-page=shop] .mobile-nav a{color:#fffaf5}.catalog-shell{display:block;padding-top:22px}.catalog-sidebar{position:static;max-height:none;padding:13px 15px 12px;border-radius:10px;box-shadow:none;overflow:visible;overscroll-behavior:auto}.catalog-sidebar__all{margin-bottom:8px;padding:0 7px 8px}.catalog-sidebar__all .catalog-sidebar__label{font-size:14px}.catalog-sidebar__section,.catalog-sidebar h2{display:none}.catalog-sidebar nav{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.catalog-sidebar nav a{flex:0 0 auto;width:auto;padding:6px 10px 6px 7px;font-size:14px}.catalog-sidebar__icon{flex-basis:31px;width:31px;height:25px}.catalog-sidebar__description{margin-top:12px;padding:13px 7px 2px;font-size:13px;white-space:normal}.catalog-sidebar .catalog-sidebar__description h2{display:block;margin-bottom:7px;font-size:15px}.catalog-content{padding-top:27px}.catalog-content h1{margin-bottom:24px;font-size:36px}.catalog-category-intro{margin-top:-8px;padding:18px 19px;font-size:15px}.catalog-category-intro h2{font-size:25px}.catalog-category-details{margin-top:48px;padding:24px 20px;font-size:15px}.catalog-category-details h3{font-size:27px}.catalog-category-details h4{font-size:18px}.catalog-result-count{font-size:22px}.catalog-popular__chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:3px}.catalog-system-filter__heading{display:block}.catalog-system-filter__heading span{display:block;margin-top:4px}.catalog-system-filter__options{display:flex;gap:7px;margin-inline:-1px;padding-bottom:5px;overflow-x:auto;scrollbar-width:none}.catalog-system-filter__options button{flex:0 0 146px}.catalog-system-filter.is-guided .catalog-system-filter__options{margin-inline:0}.catalog-facets{margin-top:18px}.catalog-toolbar{flex-wrap:wrap;gap:8px;padding-block:12px}.catalog-toolbar__select{font-size:13px}.catalog-toolbar__select select{max-width:128px;font-size:13px}.catalog-view{margin-left:auto}.catalog-products{margin-top:22px}.catalog-card{padding-inline:10px}.catalog-card__media{height:190px}.catalog-card h3{font-size:16px}.catalog-card__price{font-size:18px}.catalog-card__size{font-size:13px}.catalog-card__actions{flex-wrap:nowrap;gap:2px}.catalog-card__quick-action{width:36px;height:36px}.catalog-card__quick-action .icon{width:20px;height:20px}.catalog-products:not(.is-list) .catalog-card:nth-child(odd) .catalog-card__status-tooltip{--tooltip-x:-50%;right:auto;left:50%}.catalog-products:not(.is-list) .catalog-card:nth-child(odd) .catalog-card__status-tooltip:after{right:auto;left:calc(50% - 6px)}}
@media(max-width:390px){.catalog-header-search input{font-size:14px}.catalog-facets{gap:8px}.catalog-facet,.catalog-more{font-size:13px}.catalog-facet select,.catalog-facet--search input{font-size:13px}.catalog-view button{width:43px}.catalog-card__media,.catalog-products.is-grid-5 .catalog-card__media,.catalog-products.is-grid-6 .catalog-card__media{height:160px}.catalog-card__actions button{font-size:13px;padding:6px 9px}.catalog-products.is-list .catalog-card{grid-template-columns:36% minmax(0,1fr);gap:12px}.catalog-products.is-list .catalog-card__media{height:160px}}
@media(prefers-reduced-motion:reduce){.catalog-card__status-tooltip,.catalog-card__quick-action,.catalog-card__quick-action:after,.catalog-card__media img,.product-card__media img{transition:none!important}}

/* product-editorial.css */
/* Product detail: editorial gallery and purchase flow. Scoped to produkt.html. */
.conversion-page[data-page="product"]{--max:2400px;--gutter:5vw;background:#fff;color:#321c15}
.conversion-page[data-page="product"] .container{width:min(90%,2400px);padding-inline:0}
.conversion-page[data-page="product"] .conversion-product-detail{padding:0 0 100px;background:#fff}
.conversion-page[data-page="product"] .product-detail__breadcrumb-wrap{padding-top:25px}
.conversion-page[data-page="product"] .conversion-breadcrumbs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;line-height:1.4;color:#89766e}
.conversion-page[data-page="product"] .conversion-breadcrumbs a{color:#63473a}
.conversion-page[data-page="product"] .conversion-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.conversion-page[data-page="product"] .product-detail__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(36px,4.6vw,108px);align-items:start;padding-top:22px}

.product-gallery{min-width:0}
.product-gallery__main{position:relative;display:grid;place-items:center;height:clamp(460px,41vw,760px);overflow:hidden;border-radius:5px;background:#f2eee9}
.product-gallery__main img{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;padding:clamp(24px,3vw,64px);object-fit:contain;mix-blend-mode:multiply}
.product-gallery__main img[src$="product-mokambo.jpg"]{transform:scale(1.18)}
.product-gallery__thumbs{display:flex;gap:11px;margin-top:12px}
.product-gallery__thumb{display:grid;place-items:center;width:clamp(74px,7.4vw,112px);height:clamp(74px,7.4vw,112px);padding:0;border:1px solid #e2dad3;border-radius:4px;background:#f5f2ee;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}
.product-gallery__thumb:hover,.product-gallery__thumb.is-active{border-color:#ad492a;box-shadow:inset 0 0 0 1px #ad492a}
.product-gallery__thumb img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.product-gallery__masonry{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:clamp(112px,8.2vw,165px);gap:12px}
.product-gallery__masonry-item{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;border:1px solid #e8dfd8;border-radius:8px;background:#f1ece7}
.product-gallery__masonry-item:nth-child(even){background:#f7f3ef}
.product-gallery__masonry-item:nth-child(5n+1),.product-gallery__masonry-item:nth-child(5n+4){grid-row:span 3}
.product-gallery__masonry-item:nth-child(5n+2),.product-gallery__masonry-item:nth-child(5n+3),.product-gallery__masonry-item:nth-child(5n+5){grid-row:span 2}
.product-gallery__masonry[data-count="1"] .product-gallery__masonry-item{grid-column:1/-1;grid-row:span 4}
.product-gallery__masonry[data-count="2"] .product-gallery__masonry-item{grid-row:span 3}
.product-gallery__masonry-item img{display:block;width:100%;height:100%;padding:clamp(14px,1.5vw,28px);object-fit:contain;mix-blend-mode:multiply;transition:transform .3s ease}
.product-gallery__masonry-item:hover img{transform:scale(1.025)}

.conversion-page[data-page="product"] .product-detail__info{min-width:0;padding-top:4px}
.conversion-page[data-page="product"] .product-detail__brand{margin:0 0 9px;color:#a44223;font-family:var(--font-ui);font-size:clamp(17px,1.5vw,22px);font-weight:500;line-height:1.1;letter-spacing:.035em;text-transform:uppercase}
.conversion-page[data-page="product"] .product-detail__info h1{max-width:12ch;margin:0;color:#3b1d12;font-family:var(--font-display);font-size:clamp(43px,4.4vw,77px);font-weight:400;line-height:.99;letter-spacing:0;text-wrap:balance}
.product-detail__subtitle{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:13px 0 0;color:#695b53;font-size:clamp(15px,1.2vw,19px);line-height:1.45}
.product-detail__subtitle a{display:inline-flex;align-items:center;gap:5px;color:#9d4023;font-weight:700;text-decoration-line:underline;text-decoration-thickness:1px;text-decoration-color:rgba(157,64,35,.45);text-underline-offset:.22em;transition:color .18s ease,text-decoration-color .18s ease}
.product-detail__subtitle a::after{content:"↗";font-size:.72em;line-height:1;text-decoration:none;transform:translateY(-1px)}
.product-detail__subtitle a:hover{color:#74301b;text-decoration-color:currentColor}
.product-detail__subtitle a:focus-visible{border-radius:2px;outline:2px solid #a44223;outline-offset:3px;text-decoration-color:currentColor}
.product-detail__subtitle span{color:#b59f92}
.conversion-page[data-page="product"] .product-detail__desc{max-width:59ch;margin:31px 0 0;color:#50433c;font-size:clamp(16px,1.1vw,19px);line-height:1.6;text-wrap:pretty}
.conversion-page[data-page="product"] .product-detail__price{display:block;margin-top:32px;padding-top:28px;border-top:1px solid #e8e0da}
.conversion-page[data-page="product"] .product-detail__price .price{display:block;color:#3b1d12;font-family:var(--font-display);font-size:clamp(34px,3vw,49px);font-weight:400;line-height:1}
.conversion-page[data-page="product"] .product-detail__price small{display:block;margin-top:7px;color:#84736a;font-family:var(--font-body);font-size:13px;font-weight:400;line-height:1.4}
.conversion-page[data-page="product"] .product-detail__buy{display:flex;gap:12px;margin-top:22px}
.conversion-page[data-page="product"] .product-detail__buy .qty-control{display:flex;align-items:center;justify-content:space-between;flex:0 0 142px;height:56px;border:1px solid #d9cec6;border-radius:5px;background:#fff}
.conversion-page[data-page="product"] .product-detail__buy .qty-control button{display:grid;place-items:center;width:42px;height:54px;padding:0;border:0;background:transparent;color:#3b1d12;font-size:23px;font-weight:400}
.conversion-page[data-page="product"] .product-detail__buy .qty-control span{min-width:24px;text-align:center;color:#3b1d12;font-size:17px;font-weight:700}
.conversion-page[data-page="product"] .product-detail__buy .button{flex:1;min-height:56px;border-radius:5px;background:#a94321;color:#fff;font-family:var(--font-body);font-size:17px;font-weight:700;letter-spacing:0;text-transform:none}
.conversion-page[data-page="product"] .product-detail__buy .button:hover{background:#873215}
.conversion-page[data-page="product"] .product-detail__buy .button:disabled{background:#b9aba3;cursor:not-allowed}
.product-detail__buy .icon{width:19px;height:19px}
.product-detail__status-line{display:flex;align-items:center;gap:9px;margin:19px 0 5px;color:#37624a;font-size:14px;font-weight:700}
.product-detail__status-line span{display:block;width:9px;height:9px;border-radius:50%;background:#3f8754}
.product-detail__status-line.is-unavailable{color:#8a5143}
.product-detail__status-line.is-unavailable span{background:#a85d46}
.product-detail__disclaimer{max-width:58ch;margin:0;color:#81756d;font-size:13px;line-height:1.55}
.conversion-page[data-page="product"] .product-detail__reassurance{display:flex;gap:16px 24px;flex-wrap:wrap;margin-top:34px;padding-top:22px;border-top:1px solid #e8e0da}
.conversion-page[data-page="product"] .product-detail__reassurance span{display:flex;align-items:center;gap:9px;padding:0;border:0;border-radius:0;background:none;color:#74635a;font-size:13px;line-height:1.35;text-align:left}
.conversion-page[data-page="product"] .product-detail__reassurance .icon{width:19px;height:19px;color:#a94321}

.product-detail__below{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(36px,4.6vw,108px);margin-top:72px}
.product-information,.product-related{min-width:0}
.product-information h2,.product-related h2{margin:0 0 20px;color:#3b1d12;font-family:var(--font-display);font-size:clamp(26px,2.5vw,36px);font-weight:400;line-height:1.1}
.product-information__panel{padding-top:26px;color:#51453f;font-size:16px;line-height:1.65}
.product-information__panel h3{margin:0 0 13px;color:#3b1d12;font-family:var(--font-ui);font-size:22px;font-weight:500;line-height:1.15;text-transform:uppercase}
.product-information__panel p{max-width:65ch;margin:0;text-wrap:pretty}
.product-information__panel dl{margin:0}
.product-information__panel dl div{display:grid;grid-template-columns:minmax(130px,32%) 1fr;gap:16px;padding:12px 0;border-bottom:1px solid #ebe4de}
.product-information__panel dt{color:#81736a}
.product-information__panel dd{margin:0;color:#382218;font-weight:600}
.product-related__heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px}
.product-related__heading a{display:inline-flex;align-items:center;gap:6px;color:#a94321;font-family:var(--font-ui);font-size:16px;text-transform:uppercase;white-space:nowrap}
.product-related__heading .icon{width:16px;height:16px}
.product-related__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.product-related__card{min-width:0}
.product-related__image{display:grid;place-items:center;height:clamp(130px,10vw,220px);padding:12px;overflow:hidden;border-radius:4px;background:#f4f0eb}
.product-related__image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .2s ease}
.product-related__image:hover img{transform:scale(1.04)}
.product-related__body{padding:12px 0 0}
.product-related__body>span{display:block;color:#9a4830;font-family:var(--font-ui);font-size:12px;line-height:1.25;text-transform:uppercase}
.product-related__body h3{margin:5px 0 4px;color:#3b1d12;font-size:15px;font-weight:700;line-height:1.25}
.product-related__body p{margin:0 0 7px;color:#82746b;font-size:12px;line-height:1.3}
.product-related__body strong{display:block;color:#3b1d12;font-size:16px;line-height:1.25}
.product-related__body small{color:#82746b;font-size:11px}
.conversion-page[data-page="product"] .mobile-purchase-bar{display:none}

@media(max-width:1100px){
  .conversion-page[data-page="product"] .product-detail__grid{gap:34px}
  .conversion-page[data-page="product"] .product-detail__price{flex-wrap:wrap}
  .product-detail__unit-pricing{min-width:max-content}
  .product-gallery__main{height:clamp(380px,44vw,540px)}
  .product-detail__below{grid-template-columns:1fr;gap:55px}
  .product-related__image{height:190px}
}
@media(max-width:760px){
  .conversion-page[data-page="product"] .container{width:calc(100% - 36px)}
  .conversion-page[data-page="product"] .conversion-product-detail{padding-bottom:120px}
  .conversion-page[data-page="product"] .product-detail__breadcrumb-wrap{padding-top:17px}
  .conversion-page[data-page="product"] .conversion-breadcrumbs{gap:7px;font-size:11px}
  .conversion-page[data-page="product"] .conversion-breadcrumbs span[aria-current="page"]{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .conversion-page[data-page="product"] .product-detail__grid{grid-template-columns:1fr;gap:25px;padding-top:18px}
  .product-gallery__main{height:clamp(310px,88vw,580px)}
  .product-gallery__main img{padding:25px}
  .product-gallery__thumb{width:75px;height:75px}
  .product-gallery__masonry{grid-auto-rows:92px;gap:8px}
  .product-gallery__masonry-item{border-radius:6px}
  .product-gallery__masonry-item img{padding:13px}
  .conversion-page[data-page="product"] .product-detail__brand{font-size:17px}
  .conversion-page[data-page="product"] .product-detail__info h1{font-size:clamp(41px,10vw,58px)}
  .product-detail__subtitle{gap:7px;font-size:15px}
  .conversion-page[data-page="product"] .product-detail__desc{margin-top:20px;font-size:16px}
  .conversion-page[data-page="product"] .product-detail__price{margin-top:23px;padding-top:20px}
  .conversion-page[data-page="product"] .product-detail__price .price{font-size:37px}
  .conversion-page[data-page="product"] .product-detail__buy{display:flex;gap:9px}
  .conversion-page[data-page="product"] .product-detail__buy .qty-control{flex-basis:110px;height:51px}
  .conversion-page[data-page="product"] .product-detail__buy .qty-control button{width:34px;height:49px}
  .conversion-page[data-page="product"] .product-detail__buy .button{min-height:51px;padding:9px;font-size:14px}
  .product-detail__buy .icon{width:17px;height:17px}
  .conversion-page[data-page="product"] .product-detail__reassurance{gap:12px;margin-top:25px;padding-top:20px}
  .conversion-page[data-page="product"] .product-detail__reassurance span{flex-basis:100%}
  .product-detail__below{gap:47px;margin-top:58px}
  .product-information h2,.product-related h2{font-size:29px}
  .product-related__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .product-related__image{height:190px}
  .product-related__heading{align-items:start}
  .product-related__heading a{font-size:13px}
  .conversion-page[data-page="product"] .mobile-purchase-bar{position:fixed;z-index:12;left:0;right:0;bottom:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:center;padding:10px 18px max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e3d8d0;box-shadow:0 -8px 22px rgba(61,30,15,.1)}
  .conversion-page[data-page="product"] .mobile-purchase-bar .price{font-family:var(--font-display);font-size:24px;font-weight:400;white-space:nowrap}
  .conversion-page[data-page="product"] .mobile-purchase-bar .price small{display:block;font-family:var(--font-body);font-size:10px}
  .conversion-page[data-page="product"] .mobile-purchase-bar .button{min-height:46px;padding:8px 12px;border-radius:4px;background:#a94321;font-family:var(--font-body);font-size:13px;font-weight:700;text-transform:none}
}
@media(max-width:390px){
  .product-related__heading{display:block}
  .product-related__heading a{margin-bottom:15px}
  .product-related__image{height:155px}
  .conversion-page[data-page="product"] .mobile-purchase-bar{gap:8px;padding-inline:12px}
  .conversion-page[data-page="product"] .mobile-purchase-bar .button{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .product-gallery__thumb,.product-related__image img{transition:none}
}

/* PDP mockup layout: existing catalogue photography is intentionally unchanged. */
.conversion-page[data-page="product"] .pdp-header{background:#fff;color:#321c15;box-shadow:0 1px 0 #ece7e3}
.pdp-utility{height:30px;background:#3a180d;color:#fff7f0;font-size:11px}
.pdp-utility__inner,.pdp-utility__inner>div{display:flex;align-items:center;gap:13px;height:100%}
.pdp-utility__inner{justify-content:space-between}
.pdp-utility a{color:inherit;text-decoration:none;text-underline-offset:3px}
.pdp-utility a:hover,.pdp-utility a:focus-visible{text-decoration:underline}
.pdp-utility button{padding:0;border:0;background:none;color:inherit;font-size:inherit}
.pdp-utility button:hover{text-decoration:underline}
.pdp-utility__inner>div>span[aria-hidden]{opacity:.45}
.pdp-header__main{display:flex;align-items:center;justify-content:space-between;gap:clamp(15px,2.25vw,42px);min-height:61px}
.conversion-page[data-page="product"] .pdp-wordmark{display:inline-flex;align-items:center;flex:none;gap:6px;margin:0;color:#381a10;font-family:var(--font-display);font-size:clamp(28px,2.3vw,39px);font-weight:400;line-height:1;letter-spacing:-.025em;text-transform:none;white-space:nowrap}
.conversion-page[data-page="product"] .pdp-wordmark span{color:#381a10}
.conversion-page[data-page="product"] .pdp-wordmark em{color:#ad4b2b;font-style:normal}
.conversion-page[data-page="product"] .pdp-wordmark .icon{width:29px;height:29px;fill:#ad4b2b;stroke:#ad4b2b;stroke-width:1.2}
.pdp-header__nav,.pdp-header__actions{display:flex;align-items:center}
.pdp-header__nav{gap:clamp(14px,1.8vw,31px);margin-inline:auto}
.pdp-header__nav a{font-size:clamp(12px,.9vw,15px);font-weight:650;white-space:nowrap}
.pdp-header__nav a:hover{color:#a94321}
.pdp-header__nav a span{margin-left:2px;font-size:18px;line-height:0}
.pdp-header__search{display:flex;align-items:center;gap:8px;flex:0 1 260px;height:35px;min-width:145px;padding:0 13px;border:1px solid #e7e0dc;border-radius:22px;background:#faf9f8;color:#5e4034}
.pdp-header__search .icon{width:17px;height:17px;order:2}
.pdp-header__search input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:#321c15;font-size:12px}
.pdp-header__actions{gap:clamp(4px,.7vw,12px)}
.pdp-header__actions .icon-button,.pdp-header__actions .cart-button{width:34px;height:38px;color:#3b1d12}
.pdp-header__actions .icon{width:21px;height:21px}
.pdp-header__actions .cart-count{top:1px;right:0;background:#ae4c2b}
.pdp-header .mobile-menu-button{color:#3b1d12}
.conversion-page[data-page="product"] .pdp-header .mobile-nav{background:#fff;border-top:1px solid #ece4df}
.conversion-page[data-page="product"] .pdp-header .mobile-nav a{color:#3b1d12;border-color:#ece4df}

.conversion-page[data-page="product"] .conversion-product-detail{padding-bottom:31px}
.conversion-page[data-page="product"] .product-detail__breadcrumb-wrap{padding-top:12px}
.conversion-page[data-page="product"] .conversion-breadcrumbs{gap:11px;color:#77706d;font-family:var(--font-body);font-size:11px;text-transform:none}
.conversion-page[data-page="product"] .conversion-breadcrumbs a{color:#77706d}
.conversion-page[data-page="product"] .conversion-breadcrumbs span[aria-current="page"]{color:#34241e}
.conversion-page[data-page="product"] .product-detail__grid{grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:clamp(42px,4vw,88px);padding-top:24px}
.product-gallery__main{height:clamp(370px,25vw,610px);background:#eee9e4;border-radius:5px}
.product-gallery__main img{padding:clamp(10px,1.5vw,35px)}
.product-gallery__main img[src$="product-mokambo.jpg"]{transform:scale(1.12)}
.product-gallery__thumbs{justify-content:center;gap:11px;margin-top:10px}
.product-gallery__thumb{width:clamp(70px,5.8vw,95px);height:clamp(70px,5.8vw,95px);background:#f5f1ee}
.conversion-page[data-page="product"] .product-detail__info{padding-top:8px}
.conversion-page[data-page="product"] .product-detail__brand{margin-bottom:9px;color:#a74626;font-family:var(--font-ui);font-size:19px;font-weight:500;letter-spacing:.01em}
.conversion-page[data-page="product"] .product-detail__info h1{max-width:none;font-size:clamp(40px,3.45vw,63px);line-height:1.01;white-space:normal}
.product-detail__subtitle{gap:9px;margin-top:14px;color:#6b6461;font-size:15px;line-height:1.4}
.product-detail__subtitle span{color:#98908a}
.conversion-page[data-page="product"] .product-detail__desc{max-width:61ch;margin-top:30px;color:#494340;font-size:clamp(15px,1.03vw,17px);line-height:1.62}
.conversion-page[data-page="product"] .product-detail__price{margin-top:31px;padding-top:0;border:0}
.conversion-page[data-page="product"] .product-detail__price .price{font-size:clamp(30px,2.5vw,43px);line-height:.95}
.conversion-page[data-page="product"] .product-detail__price small{margin-top:5px;color:#77706d;font-size:12px}
.conversion-page[data-page="product"] .product-detail__price{display:flex;align-items:flex-end;gap:clamp(18px,2vw,34px)}
.product-detail__unit-pricing{display:grid;gap:6px;min-width:0;margin-bottom:1px;padding-left:clamp(16px,1.5vw,24px);border-left:1px solid #dfd5ce;color:#3b1d12;font-family:var(--font-body)}
.product-detail__unit-pricing dl{display:flex;gap:clamp(17px,1.8vw,30px);margin:0}
.product-detail__unit-pricing dl>div{display:grid;grid-template-columns:19px max-content;column-gap:6px;row-gap:2px;align-items:center;min-width:max-content}
.product-detail__unit-pricing dl>div>.icon{grid-column:1;grid-row:1/3;width:19px;height:19px;color:#9d4023;stroke-width:1.5}
.product-detail__unit-pricing dt,.product-detail__unit-pricing dd{grid-column:2}
.product-detail__unit-pricing dt{color:#81736a;font-size:10px;font-weight:650;line-height:1.2;letter-spacing:.035em;text-transform:uppercase}
.product-detail__unit-pricing dd{margin:0;color:#3b1d12;font-size:15px;font-weight:750;line-height:1.25;font-variant-numeric:tabular-nums}
.product-detail__unit-pricing p{margin:0;color:#81736a;font-size:10px;line-height:1.35}
.product-pack-switcher{display:grid;gap:16px;margin-top:20px;padding:20px;border:1px solid #ded3cb;border-radius:9px;background:#faf7f4}
.product-pack-switcher.is-prominent{border-color:#9fc3a8;background:#f1f8f2;box-shadow:0 10px 28px rgba(52,121,31,.09)}
.product-pack-switcher__heading{display:grid;gap:4px}
.product-pack-switcher__heading>span{color:#9d4023;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.product-pack-switcher.is-prominent .product-pack-switcher__heading>span{color:#34791f}
.product-pack-switcher__heading strong{color:#3b1d12;font-size:21px;line-height:1.25}
.product-pack-switcher__heading p{margin:2px 0 0;color:#607260;font-size:14px;line-height:1.45}
.product-pack-switcher__options{display:flex;gap:9px;flex-wrap:wrap}
.product-pack-switcher__option{position:relative;display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 12px;min-width:155px;padding:14px 42px 14px 16px;border:1px solid #cfc2b9;border-radius:7px;background:#fff;color:#3b1d12;line-height:1.25;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.product-pack-switcher__option b{font-size:18px}
.product-pack-switcher__option small{grid-column:1;color:#7d7068;font-size:14px;font-weight:500}
.product-pack-switcher__option>span{position:absolute;right:14px;color:#34791f;font-size:20px}
a.product-pack-switcher__option:hover{border-color:#4f8f5f;box-shadow:0 5px 16px rgba(52,121,31,.12);transform:translateY(-1px)}
a.product-pack-switcher__option:focus-visible{outline:2px solid #34791f;outline-offset:2px}
.product-pack-switcher__option.is-current{padding-right:16px;border-color:#6a301f;background:#f2e9e3;box-shadow:inset 0 0 0 1px #6a301f}
.product-pack-switcher__option.is-unavailable{border-color:#d8d1cc;background:#f4f2f0;color:#877d77;box-shadow:none}
.product-pack-switcher__option.is-unavailable small{color:#9b6253}
.conversion-page[data-page="product"] .product-detail__buy{gap:18px;flex-wrap:wrap;margin-top:18px}
.conversion-page[data-page="product"] .product-detail__buy .qty-control{flex-basis:148px;height:47px}
.conversion-page[data-page="product"] .product-detail__buy .qty-control button{height:45px}
.conversion-page[data-page="product"] .product-detail__buy .button{min-height:47px;background:#ae4829;font-size:17px}
.product-detail__checkout-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:0 0 100%;min-height:47px;padding:11px 16px;border:1px solid #6a301f;border-radius:5px;background:#fff;color:#6a301f;font-family:var(--font-body);font-size:16px;font-weight:700;cursor:pointer;transition:border-color .18s ease,background-color .18s ease}
.product-detail__checkout-button:hover{border-color:#8b462f;background:#f7eeea}
.product-detail__checkout-button:focus-visible{outline:3px solid rgba(106,48,31,.3);outline-offset:2px}
.product-detail__checkout-button:disabled{opacity:.55;cursor:not-allowed}
.product-detail__checkout-button .icon{width:18px;height:18px}
.product-detail__free-shipping-shortcut{display:inline-flex;align-items:center;gap:9px;min-height:39px;margin-top:10px;padding:7px 12px;border:1px solid #a8caae;border-radius:7px;background:#f1f8f2;color:#34791f;font-family:var(--font-body);font-size:12px;line-height:1.2;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}
.product-detail__free-shipping-shortcut .icon{flex:0 0 auto;width:18px;height:18px}
.product-detail__free-shipping-shortcut span{display:inline-flex;gap:4px;align-items:baseline}
.product-detail__free-shipping-shortcut strong{font-size:13px;font-weight:800}
.product-detail__free-shipping-shortcut small{padding-left:9px;border-left:1px solid #c8ddcc;color:#617063;font-size:10px;font-weight:600}
.product-detail__free-shipping-shortcut:hover{border-color:#6da278;background:#e7f4e9;box-shadow:0 5px 16px rgba(52,121,31,.1);transform:translateY(-1px)}
.product-detail__free-shipping-shortcut:focus-visible{outline:2px solid #34791f;outline-offset:2px}
.product-detail__free-shipping-shortcut[aria-pressed="true"]{border-color:#4f8f5f;background:#def0e1;box-shadow:inset 0 0 0 1px #4f8f5f}
.product-detail__selling-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px;border:1px solid #cfe0d3;border-radius:12px;background:#f5faf6;overflow:hidden}
.product-detail__selling-points>span{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:start;min-width:0;padding:14px 15px}
.product-detail__selling-points>span:nth-child(odd){border-right:1px solid #dce9df}
.product-detail__selling-points>span:nth-child(n+3){border-top:1px solid #dce9df}
.product-detail__selling-points>span:last-child:nth-child(odd){grid-column:1/-1;border-right:0}
.product-detail__selling-points i{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#e1f1e5;color:#277844;font-style:normal}
.product-detail__selling-points .icon{width:20px;height:20px}
.product-detail__selling-points b{display:grid;gap:3px;min-width:0;color:#2f211c;font-size:14px;font-weight:750;line-height:1.3}
.product-detail__selling-points small{color:#667069;font-size:12px;font-weight:450;line-height:1.35}
.product-payment-methods{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:10px;padding:10px 0 10px 14px;border:1px solid #cfe0d3;border-radius:12px;background:#fff;overflow:hidden}
.product-payment-methods__heading{display:flex;align-items:center;gap:9px;padding-right:13px;border-right:1px solid #dce9df;color:#2f211c}
.product-payment-methods__heading>.icon{flex:0 0 auto;width:22px;height:22px;color:#277844}
.product-payment-methods__heading>span{display:grid;gap:1px;min-width:132px}
.product-payment-methods__heading strong{font-size:13px;line-height:1.2}
.product-payment-methods__heading small{color:#667069;font-size:10px;line-height:1.3}
.product-payment-methods ul{display:flex;gap:0;margin:0;padding:0 12px 3px 0;overflow-x:auto;list-style:none;scroll-snap-type:x proximity;scrollbar-color:#b8cdbd #edf5ef;scrollbar-width:thin}
.product-payment-methods ul::-webkit-scrollbar{height:5px}
.product-payment-methods ul::-webkit-scrollbar-track{background:#edf5ef}
.product-payment-methods ul::-webkit-scrollbar-thumb{border-radius:5px;background:#b8cdbd}
.product-payment-methods li{display:grid;grid-template-rows:24px auto;gap:4px;align-items:center;justify-items:center;flex:0 0 104px;min-height:48px;padding:4px 9px;border-right:1px solid #e3ece5;color:#49372f;font-size:9px;font-weight:650;line-height:1.15;text-align:center;scroll-snap-align:start}
.product-payment-methods li:last-child{border-right:0}
.product-payment-methods li>span:last-child{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-payment-methods__logos{display:flex;align-items:center;justify-content:center;gap:3px;width:100%;max-width:96px}
.product-payment-methods__logos img{display:block;width:auto;max-width:42px;height:22px;object-fit:contain}
.product-payment-methods__logos img:nth-child(n+3){max-width:25px;height:18px}
.product-payment-methods__logos>.icon{width:22px;height:22px;color:#277844}
.product-detail__status-line{margin:19px 0 5px;color:#34791f;font-size:15px;font-weight:650}
.product-detail__status-line span{width:9px;height:9px;background:#4b9d2d}
.product-detail__reservation{display:grid;gap:12px;margin-top:14px;padding:17px;border:1px solid #e4cbbd;border-radius:9px;background:#fff8f3}
.product-detail__reservation p{margin:0;color:#49372f;font-size:14px;line-height:1.5}
.product-detail__reservation .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:100%;min-height:48px;padding:10px 18px;text-align:center}
.product-detail__reservation .icon{width:17px;height:17px}
.product-availability-alternatives{display:grid;gap:16px;margin-top:16px;padding:18px;border:1px solid #c7dacb;border-radius:10px;background:linear-gradient(145deg,#f4f9f5 0%,#edf6ef 100%);box-shadow:0 10px 26px rgba(52,121,31,.06)}
.product-availability-alternatives__heading{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center}
.product-availability-alternatives__heading>span{display:inline-flex;grid-row:1/3;align-items:center;gap:7px;align-self:stretch;padding:0 15px;border-right:1px solid #ccdece;color:#34791f;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.product-availability-alternatives__heading>span i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#34791f;color:#fff;font-size:13px;font-style:normal;letter-spacing:0}
.product-availability-alternatives__heading h2{margin:0;color:#2f1b14;font-family:var(--font-body);font-size:24px;font-weight:750;line-height:1.18}
.product-availability-alternatives__heading p{margin:1px 0 0;color:#526456;font-size:14px;line-height:1.45}
.product-availability-alternatives__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.product-availability-alternatives__item{display:grid;grid-template-columns:minmax(0,1fr) 32px;grid-template-rows:clamp(160px,11vw,220px) auto 1fr auto;gap:8px;padding:10px;border:1px solid #d8e5da;border-radius:8px;background:#fff;color:#2f1b14;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.product-availability-alternatives__item:hover{border-color:#79aa84;box-shadow:0 7px 18px rgba(52,121,31,.12);transform:translateY(-2px)}
.product-availability-alternatives__item:focus-visible{outline:2px solid #34791f;outline-offset:2px}
.product-availability-alternatives__media{position:relative;display:grid;grid-column:1/-1;place-items:center;width:100%;height:clamp(160px,11vw,220px);border-radius:6px;background:#f6f3f0;overflow:hidden}
.product-availability-alternatives__media img{position:absolute;inset:0;width:100%;height:100%;padding:12px;object-fit:contain;mix-blend-mode:multiply}
.product-availability-alternatives__copy{display:grid;grid-column:1/-1;gap:5px;min-width:0}
.product-availability-alternatives__copy strong{display:-webkit-box;overflow:hidden;min-height:42px;font-size:16px;font-weight:750;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.product-availability-alternatives__copy small{display:inline-flex;align-items:center;gap:6px;color:#45634d;font-size:13px;font-weight:650;line-height:1.35}
.product-availability-alternatives__copy small i{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:#4b9d2d}
.product-availability-alternatives__price{align-self:end;color:#3b1d12;font-size:18px;font-weight:750;line-height:1.25;white-space:nowrap}
.product-availability-alternatives__price .product-price__tax-note{font-size:12px}
.product-availability-alternatives__arrow{display:grid;align-self:end;justify-self:end;width:30px;height:30px;place-items:center;border-radius:50%;background:#edf5ef;color:#34791f;transition:background-color .18s ease,transform .18s ease}
.product-availability-alternatives__arrow .icon{width:15px;height:15px}
.product-availability-alternatives__item:hover .product-availability-alternatives__arrow{background:#34791f;color:#fff;transform:translateX(2px)}
.product-availability-alternatives__empty{margin:0;padding:12px;border-radius:7px;background:#fff;color:#526456;font-size:14px;line-height:1.5}
.product-availability-alternatives__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid #d2e1d5}
.product-availability-alternatives__all{display:inline-flex;align-items:center;gap:7px;width:max-content;color:#34791f;font-size:15px;font-weight:750}
.product-availability-alternatives__all:hover{text-decoration:underline;text-underline-offset:3px}
.product-availability-alternatives__all .icon{width:14px;height:14px}
.product-detail__wishlist.product-detail__wishlist--unavailable{display:inline-flex;align-items:center;gap:7px;flex-basis:auto;width:max-content;min-height:38px;padding:7px 12px;border:1px solid #cddbcf;border-radius:6px;background:#fff;color:#5d6c60}
.product-detail__wishlist.product-detail__wishlist--unavailable .icon{width:17px;height:17px}
.product-detail__wishlist.product-detail__wishlist--unavailable span{position:static;width:auto;height:auto;overflow:visible;clip:auto;font-size:14px;font-weight:650}
.product-detail__disclaimer{max-width:none;margin-left:18px;color:#85807b;font-size:11px;line-height:1.45}
.product-detail__below{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:clamp(42px,4vw,82px);margin-top:84px}
.product-information__content{display:grid;grid-template-columns:minmax(0,1fr);gap:42px;padding-top:32px}
.product-information__panel{padding:0;color:#68635f;font-size:12px;line-height:1.7}
.product-information__panel h3{margin-bottom:18px;font-family:var(--font-display);font-size:21px;font-weight:400;line-height:1.15;text-transform:none}
.product-information__panel p+p{margin-top:18px}
.product-information__panel dl div{padding:7px 0}
.product-information__accordions{padding-left:30px;border-left:1px solid #eee7e2}
.product-information__accordions details{border-bottom:1px solid #e9e4e0}
.product-information__accordions summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;cursor:pointer;color:#322923;font-size:12px;font-weight:650;list-style:none}
.product-information__accordions summary::-webkit-details-marker{display:none}
.product-information__accordions summary:after{content:'⌄';font-size:19px;font-weight:400;line-height:1}
.product-information__accordions details[open] summary:after{transform:rotate(180deg)}
.product-information__accordions p{margin:0 0 16px;color:#77706d;font-size:12px;line-height:1.55}
.product-specifications{margin-top:34px;border-top:1px solid #d9cec6}
.product-specifications>summary{display:flex;align-items:center;justify-content:space-between;min-height:78px;color:#3b1d12;cursor:pointer;font-family:var(--font-display);font-size:clamp(24px,2vw,32px);font-weight:400;line-height:1.1;list-style:none}
.product-specifications>summary::-webkit-details-marker{display:none}
.product-specifications>summary:after{content:'⌄';font-family:var(--font-body);font-size:24px;font-weight:400;line-height:1;transition:transform .18s ease}
.product-specifications[open]>summary:after{transform:rotate(180deg)}
.product-specifications dl{margin:0}
.product-specifications dl div{display:grid;grid-template-columns:minmax(145px,36%) minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid #d9cec6}
.product-specifications dt{color:#4e443f;font-size:15px;font-weight:650;line-height:1.4}
.product-specifications dd{margin:0;color:#2f2520;font-size:16px;font-weight:500;line-height:1.4}
.product-related__heading{align-items:center;margin-bottom:22px}
.product-related__heading h2{margin:0;font-family:var(--font-display);font-size:21px;font-weight:400}
.product-related__heading a{font-family:var(--font-body);font-size:11px;font-weight:500;text-transform:none}
.product-related__heading .icon{width:14px;height:14px}
.product-related__grid{gap:18px}
.product-related__image{height:clamp(150px,11vw,210px);padding:10px;background:#f4f1ee}
.product-related__body{padding-top:12px}
.product-related__body h3{margin:0 0 3px;font-size:11px;line-height:1.25}
.product-related__body p{margin-bottom:5px;font-size:10px}
.product-related__body strong{font-size:12px}
.product-related__body small{font-size:9px}

@media(min-width:761px){
  .conversion-page[data-page="product"] .product-gallery:not(.product-gallery--machine){position:sticky;top:112px;align-self:start}
}

.conversion-page[data-page="product"] .pdp-footer{background:#f7f2ed;color:#3b1d12;border-top:0}
.pdp-footer__inner{display:grid;grid-template-columns:1.2fr .85fr .85fr 1.5fr;gap:clamp(20px,4vw,80px);align-items:start;padding-block:19px 22px}
.pdp-footer .pdp-wordmark{font-size:29px}
.pdp-footer .pdp-wordmark .icon{width:25px;height:25px}
.pdp-footer p{margin:4px 0 0;color:#6f5c53;font-size:11px}
.pdp-footer h3{margin:0 0 6px;font-size:11px;font-weight:700}
.pdp-footer ul{margin:0;padding:0;list-style:none}
.pdp-footer li{line-height:1.35}
.pdp-footer li button,.pdp-footer li a{padding:0;border:0;background:none;color:#77706d;font-size:10px;text-align:left}
.pdp-footer li button:hover,.pdp-footer li a:hover{color:#a94321;text-decoration:underline}
.pdp-footer .newsletter-form{width:100%;margin-top:8px}
.pdp-footer .newsletter-form>div{gap:8px;overflow:visible;background:transparent}
.pdp-footer .newsletter-form input{height:30px;padding:5px 11px;border:1px solid #ded6d1;border-radius:4px;background:#fff;font-size:11px}
.pdp-footer .newsletter-form .button{min-height:30px;padding:4px 16px;border-radius:4px;background:#ad4b2b;color:#fff;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none}
.pdp-footer .newsletter-form small{margin-top:4px;color:#8c817a;font-size:9px}

@media(max-width:1180px){
  .pdp-header__nav{display:none}
  .pdp-header .mobile-menu-button{display:grid}
  .pdp-header__main{justify-content:flex-start}
  .pdp-header__search{margin-left:auto}
  .product-detail__below{grid-template-columns:1fr;gap:58px}
  .product-related__image{height:160px}
}
@media(max-width:950px){
  .conversion-page[data-page="product"] .product-detail__grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .conversion-page[data-page="product"] .product-gallery:not(.product-gallery--machine){position:static}
  .conversion-page[data-page="product"] .site-header .cart-checkout-hint{display:none}
}
@media(max-width:760px){
  .pdp-utility{height:26px}
  .pdp-utility__inner>div{display:none}
  .pdp-header__main{min-height:58px;gap:7px}
  .conversion-page[data-page="product"] .pdp-wordmark{font-size:27px}
  .conversion-page[data-page="product"] .pdp-wordmark .icon{width:22px;height:22px}
  .pdp-header__search{display:none}
  .pdp-header__actions{margin-left:auto;gap:0}
  .pdp-header__actions .icon-button:first-child,.pdp-header__actions .icon-button:nth-child(2){display:none}
  .conversion-page[data-page="product"] .product-detail__grid{grid-template-columns:1fr;gap:30px;padding-top:18px}
  .product-gallery__main{height:clamp(300px,83vw,480px)}
  .product-gallery__thumbs{justify-content:flex-start}
  .product-detail__subtitle{margin-top:11px;font-size:13px}
  .conversion-page[data-page="product"] .product-detail__desc{margin-top:24px}
  .conversion-page[data-page="product"] .product-detail__price{margin-top:27px;padding:0}
  .conversion-page[data-page="product"] .product-detail__price{align-items:flex-end;gap:15px}
  .product-detail__unit-pricing{gap:4px;padding-left:13px}
  .product-detail__unit-pricing dl{gap:14px}
  .product-detail__unit-pricing dl>div{grid-template-columns:16px max-content;column-gap:4px}
  .product-detail__unit-pricing dl>div>.icon{width:16px;height:16px}
  .product-detail__unit-pricing dt{font-size:9px}
  .product-detail__unit-pricing dd{font-size:13px}
  .product-detail__unit-pricing p{max-width:26ch;font-size:9px}
  .product-pack-switcher{padding:14px}
  .product-pack-switcher__options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-pack-switcher__option{min-width:0}
  .conversion-page[data-page="product"] .product-detail__buy{margin-top:16px}
  .product-detail__free-shipping-shortcut{width:100%;justify-content:center}
  .product-detail__selling-points{grid-template-columns:1fr}
  .product-detail__selling-points>span:nth-child(odd){border-right:0}
  .product-detail__selling-points>span:last-child:nth-child(odd){grid-column:auto}
  .product-detail__selling-points>span:nth-child(n+2){border-top:1px solid #dce9df}
  .product-payment-methods{grid-template-columns:1fr;padding:12px 0 9px}
  .product-payment-methods__heading{padding:0 13px 10px;border-right:0;border-bottom:1px solid #dce9df}
  .product-payment-methods__heading>span{min-width:0}
  .product-payment-methods ul{padding-left:4px}
  .product-payment-methods li{flex-basis:96px;padding-inline:7px}
  .product-availability-alternatives{padding:15px}
  .product-availability-alternatives__heading{grid-template-columns:1fr}
  .product-availability-alternatives__heading>span{grid-row:auto;width:max-content;padding:0;border-right:0}
  .product-availability-alternatives__heading h2{margin-top:3px}
  .product-availability-alternatives__list{grid-template-columns:1fr}
  .product-availability-alternatives__item{grid-template-columns:58px minmax(0,1fr) auto 30px;grid-template-rows:auto;gap:10px;align-items:center;padding:8px 9px}
  .product-availability-alternatives__media{grid-column:auto;width:58px;height:58px}
  .product-availability-alternatives__copy{grid-column:auto}
  .product-availability-alternatives__copy strong{min-height:0;font-size:15px}
  .product-availability-alternatives__copy small{font-size:12px}
  .product-availability-alternatives__price{align-self:center;font-size:16px;text-align:right}
  .product-availability-alternatives__price .product-price__tax-note{font-size:11px}
  .product-availability-alternatives__arrow{align-self:center}
  .product-availability-alternatives__actions{align-items:stretch}
  .product-detail__status-line{margin-top:17px}
  .product-detail__below{margin-top:62px}
  .product-information__content{grid-template-columns:1fr;gap:30px;padding-top:27px}
  .product-information__accordions{padding-left:0;border-left:0}
  .product-information__accordions summary{min-height:52px}
  .product-specifications{margin-top:36px}
  .product-specifications>summary{min-height:66px;font-size:24px}
  .product-specifications dl div{grid-template-columns:minmax(115px,40%) minmax(0,1fr);gap:16px;padding:16px 0}
  .product-specifications dt,.product-specifications dd{font-size:14px}
  .product-related__image{height:190px}
  .pdp-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding-block:27px 100px}
  .pdp-footer__newsletter{grid-column:1/-1}
  .mobile-purchase-bar--alternatives>span{display:grid;color:#5f514a;font-family:var(--font-body);line-height:1.2}
  .mobile-purchase-bar--alternatives>span strong{font-size:13px}
  .mobile-purchase-bar--alternatives>span small{font-size:10px}
  .conversion-page[data-page="product"] .mobile-purchase-bar--alternatives .button{display:flex;align-items:center;justify-content:center;text-align:center}
}
@media(max-width:520px){
  .conversion-page[data-page="product"] .product-detail__price{display:grid;justify-items:start;gap:14px}
  .product-detail__unit-pricing{width:100%;min-width:0;margin:0;padding:12px 0 0;border-top:1px solid #dfd5ce;border-left:0}
  .product-detail__unit-pricing dl{flex-wrap:wrap;gap:12px 24px}
  .product-pack-switcher__options{grid-template-columns:1fr}
}
@media(max-width:400px){
  .conversion-page[data-page="product"] .pdp-wordmark{font-size:24px}
  .product-related__image{height:155px}
  .product-gallery__masonry{grid-auto-rows:82px}
  .product-availability-alternatives__item{grid-template-columns:48px minmax(0,1fr) 30px}
  .product-availability-alternatives__media{width:48px;height:48px}
  .product-availability-alternatives__price{display:none}
  .product-availability-alternatives__actions{display:grid}
  .product-availability-alternatives__all{justify-content:center;width:100%;min-height:38px}
  .product-detail__wishlist.product-detail__wishlist--unavailable{justify-content:center;width:100%}
}
@media(prefers-reduced-motion:reduce){
  .product-gallery__masonry-item img{transition:none}
}

/* Desktop product-image magnifier. Pointer movement is written to CSS variables
   so the high-frequency interaction does not trigger React renders. */
.product-image-zoom{--zoom-factor:2.35;isolation:isolate}
.product-image-zoom__hint,.product-image-zoom__lens{display:none}
@media(hover:hover) and (pointer:fine){
  .product-image-zoom{cursor:zoom-in}
  .product-image-zoom__source{z-index:0}
  .product-image-zoom__hint{position:absolute;z-index:2;right:18px;bottom:18px;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(59,29,18,.14);border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 7px 24px rgba(59,29,18,.12);color:#3b1d12;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
  .product-image-zoom__hint .icon{width:20px;height:20px}
  .product-image-zoom__lens{position:absolute;z-index:3;left:0;top:0;display:block;width:clamp(255px,18vw,330px);height:clamp(255px,18vw,330px);overflow:hidden;border:3px solid #fff;border-radius:50%;background:#eee9e4;box-shadow:0 14px 38px rgba(50,28,21,.24);opacity:0;pointer-events:none;transform:translate3d(var(--zoom-lens-x,0),var(--zoom-lens-y,0),0) scale(.92);transition:opacity .14s ease,transform .14s ease}
  .product-image-zoom.is-zooming .product-image-zoom__hint{opacity:0;transform:scale(.88)}
  .product-image-zoom.is-zooming .product-image-zoom__lens{opacity:1;transform:translate3d(var(--zoom-lens-x,0),var(--zoom-lens-y,0),0) scale(1)}
  .product-image-zoom__lens img{position:absolute!important;inset:auto!important;left:var(--zoom-image-x,0)!important;top:var(--zoom-image-y,0)!important;width:var(--zoom-source-width)!important;height:var(--zoom-source-height)!important;max-width:none!important;max-height:none!important;object-fit:contain;transform:scale(var(--zoom-factor))!important;transform-origin:0 0!important;transition:none!important}
  .product-gallery__main .product-image-zoom__lens img{padding:clamp(10px,1.5vw,35px)}
  .product-gallery__masonry-item .product-image-zoom__lens img{padding:clamp(14px,1.5vw,28px)}
}

/* side-cart.css */
.drawer-backdrop{z-index:100;background:rgba(31,20,16,.5);backdrop-filter:blur(2px);transition:opacity .22s ease}
.drawer{z-index:101;width:min(100%,700px);background:#fff;color:#2f1b14;box-shadow:-18px 0 55px rgba(42,24,17,.2);transition:transform .28s cubic-bezier(.22,.61,.36,1)}
.drawer__header{display:block;padding:31px 34px 23px;border-bottom:0;background:#fff}
.drawer__header>div{display:flex;align-items:baseline;gap:10px;padding-right:52px}
.drawer__header h2,.conversion-page .drawer__header h2{position:static;margin:0;padding:0;color:#2f1b14;font-family:var(--font-body);font-size:36px;font-weight:750;line-height:1.1;letter-spacing:-.035em;text-transform:none}
.drawer__count{color:#8a7a72;font-size:18px;font-weight:650}
.drawer__close{position:absolute;top:20px;right:22px;width:42px;height:42px;border-radius:50%;color:#3c271e;transition:background .18s ease,transform .18s ease}
.drawer__close:hover{background:#f5f0ec;transform:rotate(4deg)}
.drawer__close .icon{width:20px;height:20px;stroke-width:1.8}
.drawer__shipping{padding:0 34px 25px;border-bottom:1px solid #ece4de;background:#fff}
.drawer__shipping p{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:#695b54;font-size:18px;line-height:1.4}
.drawer__shipping p strong{color:#2f1b14}
.drawer__shipping .icon{width:18px;height:18px;color:#a94321;stroke-width:1.8}
.drawer__shipping-track{height:3px;border-radius:20px;background:#eee8e4;overflow:hidden}
.drawer__shipping-track span{display:block;height:100%;border-radius:inherit;background:#4a281c;transition:width .25s ease}
.drawer__warehouse-plan{display:grid;gap:8px;padding:18px 34px;border-bottom:1px solid #ece4de;background:#f8f4f0;color:#5e514a}
.drawer__warehouse-plan.is-blocked{background:#fff2ed;color:#7e3020}
.drawer__warehouse-plan-title{display:flex;align-items:center;gap:9px;color:#35231b;font-size:18px}
.drawer__warehouse-plan-title .icon{width:17px;height:17px;color:#a94321}
.drawer__warehouse-plan p{margin:0;font-size:16px;line-height:1.5}
.drawer__warehouse-chips{display:flex;flex-wrap:wrap;gap:5px}
.drawer__warehouse-chips span{padding:5px 10px;border:1px solid #e0d5cd;border-radius:20px;background:#fff;color:#6e6058;font-size:15px;line-height:1.35}
.drawer__warehouse-plan.is-blocked .drawer__warehouse-chips span{border-color:#edcfc4;color:#7e3020}
.drawer__content{flex:1;padding:0 34px;background:#fff;overflow-y:auto;overscroll-behavior:contain}
.drawer__item,.conversion-page .drawer__item{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:start;gap:16px;padding:18px 0;border-bottom:1px solid #ece4de}
.drawer__item-media{display:grid;place-items:center;width:88px;height:92px;border-radius:10px;background:#f7f4f1;overflow:hidden}
.drawer .drawer__item-media img,.conversion-page .drawer .drawer__item-media img{width:82px;height:86px;padding:6px;border-radius:0;background:transparent;object-fit:contain;mix-blend-mode:multiply}
.drawer__item-main{display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;column-gap:14px}
.drawer__item-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
.drawer__item-heading{grid-column:1/-1}
.drawer .drawer__item h3{min-width:0;margin:0;color:#2f1b14;font-family:var(--font-body);font-size:18px;font-weight:750;line-height:1.25}
.drawer .drawer__item h3 a{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.drawer__item-tools{display:flex;align-items:flex-start;gap:8px}
.drawer__item-price{display:grid;justify-items:end;gap:1px;white-space:nowrap}
.drawer__item-price strong{font-size:18px;line-height:1.2}
.drawer__item-price del{color:#9a8e87;font-size:14px;line-height:1.15}
.drawer__item-price.is-sale strong{color:#a94321}
.drawer .drawer__item-size{grid-column:1;margin:5px 0 0;color:#83756e;font-size:15px;line-height:1.35}
.drawer .drawer__item-warehouse{grid-column:1;display:flex;align-items:center;gap:5px;margin:4px 0 0;color:#6e6058;font-size:14px;font-weight:650;line-height:1.35}
.drawer__item-warehouse .icon{width:12px;height:12px;color:#a94321}
.drawer .drawer__item-unit{grid-column:1;display:flex;align-items:center;gap:4px;margin:4px 0 0;color:#9a8e87;font-size:14px;line-height:1.35}
.drawer__item-unit .product-price{display:inline-flex;gap:4px;color:inherit;font-size:inherit;font-weight:600}
.drawer__item-unit .product-price__regular{font-size:inherit}
.drawer__item-unit .product-price__sale,.drawer__item-unit .product-price__current{color:inherit;font-size:inherit}
.drawer__item-actions{grid-column:2;grid-row:2/5;display:flex;align-items:flex-end;justify-content:flex-end;margin-top:7px}
.drawer .drawer__remove{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:#81736c;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.drawer .drawer__remove:hover{border-color:#ead9d0;background:#fff3ee;color:#a94321}
.drawer .drawer__remove:active{transform:scale(.96)}
.drawer .drawer__remove:focus-visible{outline:2px solid #a94321;outline-offset:2px}
.drawer__remove .icon{width:15px;height:15px;stroke-width:1.7}
.drawer .qty-control{height:36px;border:1px solid #ded5cf;border-radius:8px;background:#fff;overflow:hidden}
.drawer .qty-control button{width:36px;height:34px;background:#fff;color:#38241b;font-size:17px;transition:background .15s ease}
.drawer .qty-control button:hover{background:#f5f0ec}
.drawer .qty-control span{min-width:34px;font-family:var(--font-body);font-size:16px;font-weight:700}
.drawer__footer{padding:26px 34px 30px;border-top:1px solid #e8dfda;background:#fff;box-shadow:0 -12px 28px rgba(48,30,22,.045)}
.drawer__line{display:flex;align-items:center;justify-content:space-between;margin:0;color:#2f1b14;font-size:22px;font-weight:650}
.drawer__line strong{font-size:27px}
.drawer__saving{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:9px 12px;border-radius:8px;background:#edf7f0;color:#276640;font-size:17px;font-weight:700}
.drawer__saving strong{font-size:19px}
.drawer__footer>p{margin:10px 0 21px;color:#82736c;font-size:17px;line-height:1.5}
.drawer__footer-actions{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px}
.drawer__footer .button{min-height:58px;padding:13px 17px;border-radius:8px;font-family:var(--font-body);font-size:18px;font-weight:750;text-transform:none}
.drawer .drawer__continue{margin:0;border:1px solid #d9d0ca;background:#f7f5f3;color:#3e2a21;text-align:center}
.drawer .drawer__continue:hover{border-color:#bba99f;background:#efebe8}
.drawer__footer .button--primary{background:#5a2919;color:#fff}
.drawer__footer .button--primary:hover{background:#a94321}
.drawer__footer .button .icon{width:16px;height:16px}
/* Leerzustand und Empfehlungen teilen die Markenwerte der übrigen Oberfläche. */
#cart-drawer .drawer__empty {
  display: grid;
  align-content: start;
  gap: 28px;
  padding: 24px 0 32px;
  color: var(--bottega-text);
  text-align: left;
}
#cart-drawer .drawer__empty-intro {
  display: grid;
  justify-items: center;
  gap: 18px;
  padding: 28px 20px;
  border-radius: 20px;
  background: var(--bottega-surface-soft);
  text-align: center;
}
#cart-drawer .drawer__empty-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 46% 54% 58% 42%;
  background: var(--bottega-surface-selected);
  color: var(--bottega-accent);
}
#cart-drawer .drawer__empty-icon > .icon { width: 36px; height: 36px; }
#cart-drawer .drawer__empty-icon > span { position: absolute; right: -6px; bottom: -2px; display: grid; place-items: center; width: 32px; height: 32px; border: 3px solid var(--bottega-surface-soft); border-radius: 50%; background: var(--bottega-surface); }
#cart-drawer .drawer__empty-icon > span .icon { width: 19px; height: 19px; }
#cart-drawer .drawer__empty-intro h3 { margin: 0 0 8px; color: var(--bottega-text); font-size: 24px; font-weight: 600; line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
#cart-drawer .drawer__empty-intro p { max-width: 34ch; margin: 0 auto; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); line-height: 1.5; }
#cart-drawer .drawer__empty-shop { display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: min(100%, 300px); min-height: 48px; padding: 12px 18px; border: 1px solid var(--bottega-accent); border-radius: var(--bottega-control-radius); background: var(--bottega-accent); color: #fff; font-size: var(--bottega-font-control); font-weight: 600; line-height: 1.4; text-decoration: none; }
#cart-drawer .drawer__empty-shop:hover { border-color: var(--bottega-accent-hover); background: var(--bottega-accent-hover); }
#cart-drawer .drawer__empty-shop .icon { flex: 0 0 18px; width: 18px; height: 18px; }
#cart-drawer .drawer__recommendation-status { margin: 0; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); line-height: 1.5; text-align: center; }
#cart-drawer .drawer__recommendations { min-width: 0; }
#cart-drawer .drawer__recommendations h3 { margin: 0 0 14px; color: var(--bottega-text); font-family: var(--bottega-font-family); font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -.02em; }
#cart-drawer .drawer__recommendation-list { display: grid; gap: 10px; }
#cart-drawer .drawer__recommendation {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--bottega-border);
  border-radius: 18px;
  background: #fff;
}
#cart-drawer .drawer__recommendation-image { display: grid; place-items: center; width: 72px; height: 90px; border-radius: 10px; background: #fff; }
#cart-drawer .drawer__recommendation-image img { display: block; width: 100%; height: 100%; padding: 4px; object-fit: contain; object-position: center; }
#cart-drawer .drawer__recommendation-info { display: grid; gap: 5px; min-width: 0; }
#cart-drawer .drawer__recommendation-info h4 { margin: 0; color: var(--bottega-text); font-size: var(--bottega-font-control); font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
#cart-drawer .drawer__recommendation-info h4 a { color: inherit; text-decoration: none; }
#cart-drawer .drawer__recommendation-info h4 a:hover { color: var(--bottega-accent); }
#cart-drawer .drawer__recommendation-info > span:not(.product-price) { color: var(--bottega-text-muted); font-size: var(--bottega-font-meta); line-height: 1.4; }
#cart-drawer .drawer__recommendation-info .product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 7px; line-height: 1.3; }
#cart-drawer .drawer__recommendation-info .product-price strong { margin: 0; color: var(--bottega-text); font-size: 18px; font-weight: 600; }
#cart-drawer .drawer__recommendation-info .product-price__regular,
#cart-drawer .drawer__recommendation-info .product-price__tax-note { color: var(--bottega-text-muted); font-size: var(--bottega-font-meta); white-space: normal; }
#cart-drawer .drawer__recommendation > button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 10px 12px; border: 1px solid var(--bottega-accent); border-radius: var(--bottega-control-radius); background: var(--bottega-accent); color: #fff; font-family: var(--bottega-font-family); font-size: var(--bottega-font-control); font-weight: 600; line-height: 1.4; cursor: pointer; }
#cart-drawer .drawer__recommendation > button:hover { border-color: var(--bottega-accent-hover); background: var(--bottega-accent-hover); }
#cart-drawer .drawer__recommendation > button .icon { flex: 0 0 16px; width: 16px; height: 16px; }
#cart-drawer .drawer__recommendation-more { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; margin-top: 14px; color: var(--bottega-accent); font-size: var(--bottega-font-control); font-weight: 500; line-height: 1.4; text-decoration: none; }
#cart-drawer .drawer__recommendation-more .icon { flex: 0 0 18px; width: 18px; height: 18px; }
#cart-drawer .drawer__recommendation-more:hover { color: var(--bottega-accent-hover); }
#cart-drawer .drawer__empty :is(a, button):focus-visible { outline: 2px solid var(--bottega-focus); outline-offset: 3px; }
@media (max-width: 480px) {
  #cart-drawer .drawer__empty { gap: 24px; padding-top: 18px; }
  #cart-drawer .drawer__empty-intro { gap: 16px; padding: 24px 16px; }
  #cart-drawer .drawer__empty-intro h3 { font-size: 23px; }
  #cart-drawer .drawer__recommendation { grid-template-columns: 64px minmax(0, 1fr); gap: 10px 12px; padding: 12px; }
  #cart-drawer .drawer__recommendation-image { grid-row: 1 / span 2; align-self: start; width: 64px; height: 86px; }
  #cart-drawer .drawer__recommendation > button { grid-column: 2; justify-self: start; font-size: var(--bottega-font-control); }
}
.toast.toast--success{background:#2f7d4a;box-shadow:0 16px 36px rgba(31,101,58,.28)}
.toast.toast--error{background:#9a3d2d;box-shadow:0 16px 36px rgba(117,39,27,.28)}
@media(max-width:560px){.drawer{width:100%}.drawer__header{padding:22px 20px 17px}.drawer__header h2,.conversion-page .drawer__header h2{font-size:29px}.drawer__count{font-size:16px}.drawer__close{top:14px;right:13px}.drawer__shipping{padding:0 20px 18px}.drawer__warehouse-plan{padding:13px 20px}.drawer__warehouse-plan-title{font-size:17px}.drawer__warehouse-plan p{font-size:16px}.drawer__warehouse-chips span{font-size:15px}.drawer__content{padding:0 20px}.drawer__item,.conversion-page .drawer__item{grid-template-columns:70px minmax(0,1fr);gap:12px;padding:16px 0}.drawer__item-media{width:70px;height:74px}.drawer .drawer__item-media img,.conversion-page .drawer .drawer__item-media img{width:66px;height:70px;padding:5px}.drawer__item-main{column-gap:9px}.drawer__item-heading{position:relative;display:block;padding-right:34px}.drawer__item-tools{display:block}.drawer .drawer__item h3{font-size:17px}.drawer__item-price{display:flex;justify-items:initial;align-items:baseline;gap:7px;margin-top:4px}.drawer__item-price strong{font-size:17px}.drawer__item-price del{font-size:13px}.drawer .drawer__remove{position:absolute;top:-4px;right:0;width:30px;height:30px}.drawer .drawer__item-size{font-size:14px}.drawer .drawer__item-warehouse,.drawer .drawer__item-unit{font-size:13px}.drawer__item-unit .product-price__regular{display:none}.drawer__item-actions{margin-top:5px}.drawer .qty-control{height:34px}.drawer .qty-control button{width:32px;height:32px;font-size:16px}.drawer .qty-control span{min-width:30px;font-size:15px}.drawer__footer{padding:19px 20px 22px}.drawer__line{font-size:20px}.drawer__line strong{font-size:24px}.drawer__saving{font-size:16px}.drawer__saving strong{font-size:18px}.drawer__footer>p{font-size:16px}.drawer__footer .button{font-size:17px}.drawer__footer-actions{grid-template-columns:1fr}.drawer__footer .button--primary{grid-row:1}.drawer .drawer__continue{grid-row:2}}
@media(prefers-reduced-motion:reduce){.drawer,.drawer-backdrop,.drawer__shipping-track span,.drawer__close,.drawer__remove{transition:none}}

/* wishlist.css */
.norja-wishlist[aria-current=page] { background: var(--bottega-surface-selected); color: var(--bottega-accent); }
.bottega-site[data-page=wishlist] .bottega-layout { padding-top: 8px; }
.wishlist-page { min-width: 0; }
.wishlist-page__breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 24px; color: var(--bottega-text-muted); font-size: 16px; }
.wishlist-page__breadcrumbs a { min-height: 44px; display: inline-flex; align-items: center; }
.wishlist-page__heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px 24px; margin-bottom: 28px; }
.wishlist-page__heading h1 { margin: 0; color: var(--bottega-text); font-size: clamp(32px, 3vw, 48px); line-height: 1.2; }
.wishlist-page__heading p { margin: 8px 0 0; color: var(--bottega-text-muted); font-size: 16px; }
.wishlist-page .wishlist-page__grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--bottega-catalog-card-min)), 1fr)); gap: 28px 20px; margin-top: 0; }
.wishlist-page__hint { margin: 24px 0 0; color: var(--bottega-text-muted); font-size: 16px; }
.wishlist-page__empty { display: grid; justify-items: center; align-content: center; gap: 16px; min-height: 360px; padding: clamp(28px, 4vw, 60px); border: 1px solid var(--bottega-border); border-radius: 24px; background: var(--bottega-surface-soft); text-align: center; }
.wishlist-page__empty > span { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; background: #fff; color: var(--bottega-accent); }
.wishlist-page__empty > span .icon { width: 30px; height: 30px; }
.wishlist-page__empty h2 { margin: 0; font-size: 24px; line-height: 1.3; }
.wishlist-page__empty p { max-width: 46ch; margin: 0; color: var(--bottega-text-muted); font-size: 16px; line-height: 1.6; }
.wishlist-page__empty .button { margin-top: 8px; }
@media (max-width: 560px) {
  .wishlist-page__heading { align-items: flex-start; flex-direction: column; }
  .wishlist-page__empty { min-height: 320px; }
}

.product-detail__wishlist{display:grid;place-items:center;flex:0 0 56px;min-height:47px;padding:0;border:1px solid #d9cec6;border-radius:5px;background:#fff;color:#5f514a;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}
.product-detail__wishlist:hover,.product-detail__wishlist:focus-visible{border-color:#a94321;color:#a94321}
.product-detail__wishlist.is-active{border-color:#d6afa0;background:#f7e9e3;color:#a94321}
.product-detail__wishlist .icon{width:22px;height:22px;fill:transparent}
.product-detail__wishlist.is-active .icon{fill:rgba(169,67,33,.16)}
.product-detail__wishlist span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.mobile-purchase-bar__wishlist{display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid #d9cec6;border-radius:5px;background:#fff;color:#5f514a}
.mobile-purchase-bar__wishlist.is-active{border-color:#d6afa0;background:#f7e9e3;color:#a94321}
.mobile-purchase-bar__wishlist .icon{width:21px;height:21px;fill:transparent}
.mobile-purchase-bar__wishlist.is-active .icon{fill:rgba(169,67,33,.16)}
@media(max-width:950px){.conversion-page[data-page="product"] .mobile-purchase-bar{grid-template-columns:auto auto minmax(0,1fr)}}
@media(max-width:560px){.conversion-page[data-page="product"] .mobile-purchase-bar{gap:7px;padding-inline:10px}.mobile-purchase-bar__wishlist{width:43px;height:43px}.conversion-page[data-page="product"] .mobile-purchase-bar .price{font-size:20px}}
@media(prefers-reduced-motion:reduce){.product-detail__wishlist{transition:none}}

/* compare.css */
/* Compare remains part of the shared Buon Caffe shell. */
.compare-button .icon { width: 20px; height: 20px; }
.compare-count { position: absolute; top: 0; right: -2px; display: none; place-items: center; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 20px; background: var(--bottega-accent); color: #fff; font-size: 10px; font-weight: 700; line-height: 1; }
.compare-button.has-items .compare-count { display: grid; }

.bottega-site .compare-page { padding: 0 0 64px; color: var(--bottega-text); background: var(--bottega-surface); font-family: var(--bottega-font-family); }
.compare-page .compare-page__inner { width: 100%; max-width: none; padding: 0; }
.compare-page .compare-page__breadcrumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 24px; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); }
/* A compact toolbar keeps the products close to the top of the page. */
.compare-page .compare-page__hero { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px 24px; padding: 20px 28px; border-radius: 22px; background: var(--bottega-accent); color: #fff9ed; }
.compare-page__intro { flex: 1 1 300px; min-width: 0; }
.compare-page__title-line { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; }
.compare-page .compare-page__hero h1 { margin: 0; color: inherit; font-size: clamp(1.5rem, 2.4vw, 2.125rem); font-weight: 600; line-height: 1.2; letter-spacing: -.035em; }
.compare-page__intro > p { margin: 8px 0 0; color: #f1eadc; font-size: var(--bottega-font-body); line-height: 1.5; }
.compare-page__counter { display: inline-flex; align-items: center; justify-content: center; flex: none; padding: 5px 10px; border-radius: 999px; background: #fff9ed20; color: #fff9ed; font-size: var(--bottega-font-control); font-weight: 600; line-height: 1.4; font-variant-numeric: tabular-nums; white-space: nowrap; }
.compare-page__eyebrow { display: inline-flex; align-items: center; gap: 10px; font-size: var(--bottega-font-control); font-weight: 500; line-height: 1.5; }
.compare-page__eyebrow > .icon { width: 22px; height: 22px; }
.compare-page__hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }

/* Actions use the existing type, colours and target sizes. */
.compare-page .compare-action { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; max-width: 100%; padding: 12px 20px; border: 1px solid var(--bottega-accent); border-radius: var(--bottega-control-radius); background: transparent; color: var(--bottega-accent-hover); font-family: inherit; font-size: var(--bottega-font-control); font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; white-space: normal; cursor: pointer; transition: background-color .18s, border-color .18s; }
.compare-page .compare-action > .icon { flex: 0 0 19px; width: 19px; height: 19px; }
.compare-page .compare-action--icon { flex: 0 0 48px; width: 48px; padding-inline: 0; }
.compare-page .compare-action--primary { background: var(--bottega-accent); color: #fff; }
.compare-page .compare-action--secondary { background: var(--bottega-surface-selected); }
.compare-page .compare-action--light { border-color: #fff9ed; background: #fff9ed; color: var(--bottega-accent-hover); }
.compare-page .compare-action--ghost { border-color: #fff9ed80; color: #fff9ed; }
.compare-page .compare-action:disabled { background: var(--bottega-surface-selected); color: var(--bottega-text-muted); cursor: not-allowed; }
@media (hover: hover) {
  .compare-page .compare-action--primary:hover { background: var(--bottega-accent-hover); border-color: var(--bottega-accent-hover); }
  .compare-page .compare-action--secondary:hover { background: var(--bottega-surface-soft); }
  .compare-page .compare-action--light:hover { background: #e2e8dc; border-color: #e2e8dc; }
  .compare-page .compare-action--ghost:hover { background: #fff9ed18; border-color: #fff9ed; }
}

.compare-page__section-heading { display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 16px 24px; margin: 28px 0 20px; }
.compare-page__section-heading .compare-page__eyebrow { color: var(--bottega-text-muted); }
.compare-page__section-heading h2 { margin: 8px 0 0; font-size: clamp(1.5rem, 2.6vw, 2.25rem); font-weight: 600; line-height: 1.2; letter-spacing: -.035em; }
.compare-page__scroll-hint { display: inline-flex; align-items: center; gap: 10px; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); line-height: 1.5; }
.compare-page__scroll-hint .icon { width: 19px; height: 19px; }
.compare-page__hint, .compare-page__notice { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin: 0 0 20px; padding: 20px 24px; border-radius: 18px; background: var(--bottega-surface-soft); color: var(--bottega-text); font-size: var(--bottega-font-body); line-height: 1.6; }
.compare-page__hint > .icon { flex: 0 0 26px; width: 26px; height: 26px; color: var(--bottega-accent); }
.compare-page__hint > span, .compare-page__notice > p { flex: 1 1 320px; min-width: 0; margin: 0; }

/* Native table rows align images, titles, prices and both action rows. */
.compare-page .compare-table-wrap { --compare-label-width: 190px; --compare-product-min: 270px; --compare-product-max: 360px; width: min(100%, calc(var(--compare-label-width) + var(--compare-columns) * var(--compare-product-max) + 2px)); border: 1px solid var(--bottega-border); border-radius: 24px; background: #fff; overflow: auto; overscroll-behavior-inline: contain; scrollbar-color: var(--bottega-accent) var(--bottega-surface-soft); }
.compare-page .compare-table { display: table; width: 100%; min-width: calc(var(--compare-label-width) + var(--compare-columns) * var(--compare-product-min)); border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.compare-page .compare-table thead { display: table-header-group; }
.compare-page .compare-table tbody { display: table-row-group; }
.compare-page .compare-table tr { display: table-row; }
.compare-page .compare-table__label-col { width: var(--compare-label-width); }
.compare-page .compare-table th, .compare-page .compare-table td { display: table-cell; float: none; padding: 20px 24px; border: 0; border-right: 1px solid var(--bottega-border); border-bottom: 1px solid var(--bottega-border); color: var(--bottega-text); font-size: var(--bottega-font-control); font-weight: 400; line-height: 1.6; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.compare-page .compare-table tr > :last-child { border-right: 0; }
.compare-page .compare-table tbody tr:last-child > * { border-bottom: 0; }
.compare-page .compare-table tr:not(.compare-table__group) > th:first-child:not(.compare-product) { position: sticky; left: 0; z-index: 4; background: #f3ecdf; color: var(--bottega-text); font-weight: 500; }
.compare-page .compare-table .compare-table__intro { padding-top: 36px; vertical-align: middle; }
.compare-table__intro > .icon { display: block; width: 36px; height: 36px; margin-bottom: 18px; color: var(--bottega-accent); stroke-width: 1.4; }
.compare-table__intro > strong { display: block; margin-bottom: 12px; font-size: 1.25rem; font-weight: 600; line-height: 1.3; letter-spacing: -.025em; }
.compare-table__intro > span { display: block; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); }
.compare-page .compare-product { position: relative; padding-top: 24px; padding-bottom: 24px; background: #fff; }
.compare-product__remove { position: absolute; z-index: 3; top: 12px; right: 12px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--bottega-border); border-radius: 50%; background: var(--bottega-surface); color: var(--bottega-text); cursor: pointer; }
.compare-product__remove > .icon { width: 20px; height: 20px; }
.compare-product__media { position: relative; display: grid; place-items: center; height: clamp(180px, 16vw, 250px); margin: 16px 0 24px; border-radius: 16px; background: #fff; overflow: hidden; }
.compare-product__media img { display: block; width: 100%; height: 100%; padding: 10px 14px; object-fit: contain; }
.compare-product__media:focus-visible::after { content: ""; position: absolute; right: 14px; bottom: 4px; left: 14px; height: 3px; border-radius: 3px; background: var(--bottega-accent-hover); }
.compare-product__brand { display: block; margin-bottom: 8px; color: var(--bottega-accent); font-size: var(--bottega-font-control); font-weight: 500; }
.compare-page .compare-product h2 { margin: 0; color: var(--bottega-text); font-family: inherit; font-size: clamp(1.125rem, 1.45vw, 1.5rem); font-weight: 600; line-height: 1.35; letter-spacing: -.025em; }
.compare-product h2 a { color: inherit; text-decoration: none; }
.compare-product h2 a:hover { text-decoration: underline; text-underline-offset: .2em; }
.compare-product__category { display: inline-block; margin-top: 12px; color: var(--bottega-text-muted); font-size: var(--bottega-font-meta); line-height: 1.5; }
.compare-page .compare-table__price-row > * { vertical-align: middle; background: #fbf8f2; }
.compare-product__price .product-price { gap: 4px 10px; }
.compare-product__price .product-price > strong { font-size: clamp(1.375rem, 2vw, 1.75rem); font-weight: 650; line-height: 1.3; font-variant-numeric: tabular-nums; }
.compare-product__price .product-price__regular { color: var(--bottega-text-muted); font-size: var(--bottega-font-control); }
.compare-product__price .product-price__tax-note { color: var(--bottega-text-muted); font-size: var(--bottega-font-control); white-space: normal; }
.compare-page .compare-table__stock-row > * { border-bottom: 0; padding-bottom: 10px; }
.compare-product__stock { display: inline-flex; align-items: center; gap: 8px; color: var(--bottega-accent); font-size: var(--bottega-font-control); font-weight: 500; line-height: 1.5; }
.compare-product__stock > i { flex: 0 0 7px; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.compare-product__stock.is-unavailable { color: var(--bottega-text-muted); }
.compare-page .compare-table__buy-row > * { padding-top: 8px; padding-bottom: 0; border-bottom: 0; }
.compare-page .compare-table__buy-row > th { vertical-align: middle; }
.compare-page .compare-table__details-row > * { padding-top: 10px; padding-bottom: 24px; }
.compare-table__buy-row .compare-action, .compare-table__details-row .compare-action { width: 100%; }
.compare-product__not-buyable { display: flex; align-items: center; min-height: 48px; color: var(--bottega-text-muted); font-size: var(--bottega-font-control); line-height: 1.5; }
.compare-page .compare-table .compare-table__group > th { position: static; padding: 18px 24px; background: var(--bottega-surface-soft); font-size: 1.125rem; font-weight: 600; }
.compare-page .compare-table tbody tr:not(.compare-table__group):nth-child(odd) > td { background: #fcfaf6; }
.compare-table__coffee-price { display: grid; gap: 8px; }
.compare-table__coffee-price > strong { font-size: 1.125rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.compare-table__coffee-price > small { color: var(--bottega-text-muted); font-size: var(--bottega-font-control); line-height: 1.6; }
.compare-table__missing { color: var(--bottega-text-muted); }
.compare-page__bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding-top: 28px; }
.compare-page__bottom > p { flex: 1 1 400px; max-width: 62ch; margin: 0; color: var(--bottega-text-muted); font-size: var(--bottega-font-body); line-height: 1.6; }

/* Empty, loading and unavailable data share the same visual hierarchy. */
.compare-page__empty, .compare-page__state { display: grid; grid-template-columns: minmax(180px, .65fr) minmax(0, 1.35fr); align-items: center; gap: clamp(28px, 5vw, 80px); margin-top: 32px; padding: clamp(28px, 4vw, 64px); border: 1px solid var(--bottega-border); border-radius: 28px; background: #fffaf2; }
.compare-page__empty > div, .compare-page__state > div { min-width: 0; }
.compare-page__empty h2, .compare-page__state h2, .compare-page__loading h2 { margin: 12px 0 0; color: var(--bottega-text); font-size: clamp(1.5rem, 2.8vw, 2.75rem); font-weight: 600; line-height: 1.15; letter-spacing: -.035em; }
.compare-page__empty p, .compare-page__state p, .compare-page__loading p { max-width: 60ch; margin: 18px 0 24px; color: var(--bottega-text-muted); font-size: var(--bottega-font-body); line-height: 1.65; }
.compare-page__empty-art { position: relative; display: grid; place-items: center; min-height: 250px; }
.compare-page__empty-art > span { display: grid; place-items: center; width: clamp(180px, 16vw, 240px); aspect-ratio: 1; border-radius: 50%; background: var(--bottega-surface-selected); }
.compare-page__empty-art .icon { width: 88px; height: 88px; color: var(--bottega-accent); stroke-width: 1.2; }
.compare-page__empty-art > img { position: absolute; right: 0; bottom: -8px; width: 120px; height: 120px; object-fit: contain; transform: rotate(24deg); }
.compare-page__state-icon { display: grid; place-items: center; width: 88px; height: 88px; border-radius: 24px; background: var(--bottega-surface-selected); color: var(--bottega-accent); }
.compare-page__state-icon > .icon { width: 38px; height: 38px; }
.compare-page__state { grid-template-columns: 88px minmax(0, 1fr); align-items: start; }
.compare-page__state h2 { margin-top: 0; font-size: clamp(1.5rem, 2.6vw, 2rem); }
.compare-page__loading { margin-top: 32px; padding: 32px; border: 1px solid var(--bottega-border); border-radius: 24px; background: #fffaf2; }
.compare-page__loading > .compare-page__state-icon { width: 56px; height: 56px; border-radius: 16px; }
.compare-page__loading > .compare-page__state-icon > .icon { width: 28px; height: 28px; }
.compare-page__loading h2 { font-size: 1.5rem; }
.compare-page__skeleton { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 20px; }
.compare-page__skeleton > div { display: grid; gap: 14px; padding: 24px; border-radius: 18px; background: var(--bottega-surface); }
.compare-page__skeleton span { height: 160px; border-radius: 12px; background: var(--bottega-surface-soft); }
.compare-page__skeleton i { display: block; width: 80%; height: 12px; border-radius: 6px; background: var(--bottega-border); }
.compare-page__skeleton i:last-child { width: 55%; }

@media (hover: hover) { .compare-product__remove:hover { border-color: var(--bottega-control-border); background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); } }
@media (max-width: 1000px) {
  .compare-page .compare-table-wrap { --compare-label-width: 160px; --compare-product-min: 250px; }
  .compare-page .compare-table th, .compare-page .compare-table td { padding-inline: 20px; }
}
@media (max-width: 700px) {
  .compare-page .compare-page__hero { gap: 16px; padding: 20px; border-radius: 20px; }
  .compare-page .compare-page__hero h1 { font-size: 1.5rem; }
  .compare-page__hero-actions { width: 100%; }
  .compare-page__hero-actions > * { flex: 1 1 140px; }
  .compare-page__hero-actions > .compare-action--icon { flex: 0 0 48px; }
  .compare-page__section-heading { margin-top: 28px; }
  .compare-page__hint, .compare-page__notice { padding: 20px; }
  .compare-page .compare-table-wrap { --compare-label-width: 124px; --compare-product-min: 230px; border-radius: 20px; }
  .compare-page .compare-table th, .compare-page .compare-table td { padding-inline: 16px; }
  .compare-page .compare-table__intro { padding-inline: 14px; }
  .compare-table__intro > strong { font-size: 1.125rem; }
  .compare-table__intro > span { font-size: var(--bottega-font-meta); }
  .compare-product__media { height: 190px; }
  .compare-page .compare-product h2 { font-size: 1.125rem; }
  .compare-page__empty, .compare-page__state { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 28px 24px; border-radius: 24px; }
  .compare-page__empty-art { min-height: 210px; }
  .compare-page__empty-art > img { right: max(0px, calc(50% - 140px)); bottom: -2px; width: 105px; height: 105px; }
  .compare-page__empty h2 { font-size: 2rem; }
  .compare-page__bottom { align-items: stretch; }
  .compare-page__bottom > .compare-action { flex: 1 1 100%; }
  .compare-page__loading { padding: 24px; }
  .compare-page__skeleton { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .compare-page__skeleton > div { padding: 12px; }
  .compare-page__skeleton span { height: 110px; }
}
@media (prefers-reduced-motion: reduce) { .compare-page .compare-action { transition: none; } }
@media (max-width: 520px) {
  .compare-page .compare-table-wrap { --compare-label-width: 104px; --compare-product-min: min(260px, calc(90vw - 106px)); }
  .compare-page .compare-table th, .compare-page .compare-table td { padding-inline: 12px; }
  .compare-table__intro > strong { font-size: 1rem; }
}

.compare-page > .compare-page__inner > .compare-page__notice { margin-top: 16px; }
.compare-page__notice-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }

/* legal-pages.css */
/* One legal-page template using the shared Buon Caffe roles. */
.bottega-site .legal-page { width: 100%; min-width: 0; background: transparent; color: var(--bottega-text); font-family: var(--bottega-font-family); }
.bottega-site .legal-page__hero .legal-page__breadcrumbs { margin: 0 0 8px; gap: 8px; color: inherit; font-size: 16px; }
.bottega-site .legal-page__hero .legal-page__breadcrumbs a { min-height: 32px; padding: 4px 0; border: 0; border-radius: 0; background: transparent; color: inherit; }
.bottega-site .legal-page__hero .legal-page__breadcrumbs a:hover { background: transparent; color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.bottega-site .legal-page__breadcrumbs [aria-current=page] { min-width: 0; overflow-wrap: anywhere; }
.bottega-site .legal-page__hero { display: block; padding: clamp(16px, 1.4vw, 24px) clamp(20px, 2vw, 30px); margin: 0; border: 0; border-radius: var(--bottega-radius); background: var(--bottega-accent); color: #fff9ed; }
.bottega-site .legal-page__hero > .legal-page__hero-inner { min-width: 0; padding: 0; }
.bottega-site .legal-page__hero h1 { max-width: none; margin: 0; color: inherit; font: 700 clamp(30px, 2.6vw, 36px)/1.15 var(--bottega-font-family); letter-spacing: -.03em; overflow-wrap: anywhere; hyphens: auto; }
.bottega-site .legal-page__layout { display: grid; grid-template-columns: minmax(220px, 260px) minmax(0, 1fr); align-items: start; gap: 28px; padding: 18px 0 0; }
.bottega-site .legal-page__sidebar { position: sticky; top: 24px; display: grid; gap: 22px; min-width: 0; }
.bottega-site .legal-page__navigation { display: grid; gap: 8px; padding: 18px; border-radius: var(--bottega-radius); background: var(--bottega-surface-soft); }
.bottega-site .legal-page__navigation > strong { display: block; padding: 6px 10px 12px; font-size: 17px; line-height: 1.4; font-weight: 650; }
.bottega-site .legal-page .legal-page__navigation > a { display: flex; justify-content: flex-start; align-items: center; gap: 10px; width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid transparent; border-radius: 14px; background: transparent; color: var(--bottega-text); font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.4; text-align: left; text-decoration: none; }
.bottega-site .legal-page__navigation > a > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.bottega-site .legal-page__navigation > a > .icon { flex-shrink: 0; width: 18px; height: 18px; }
.bottega-site .legal-page .legal-page__navigation > a:hover { background: var(--bottega-surface); }
.bottega-site .legal-page .legal-page__navigation > a[aria-current=page] { background: var(--bottega-accent); border-color: var(--bottega-accent); color: #fff9ed; }
.bottega-site .legal-page__help { display: grid; gap: 14px; padding: 24px; border: 1px solid var(--bottega-border); border-radius: var(--bottega-radius); }
.bottega-site .legal-page__help > .icon { width: 26px; height: 26px; color: var(--bottega-accent); }
.bottega-site .legal-page__help > strong { font-size: 21px; line-height: 1.3; font-weight: 650; }
.bottega-site .legal-page__help p { margin: 0; font-size: 18px; line-height: 1.6; }
.bottega-site .legal-page__help .button { min-height: 48px; gap: 10px; white-space: normal; }
.bottega-site .legal-page__content { min-width: 0; padding: clamp(24px, 3.5vw, 46px); border: 1px solid var(--bottega-border); border-radius: var(--bottega-radius); background: #fff; color: var(--bottega-text); font-size: 18px; line-height: 1.7; }
.bottega-site .legal-page__content .bottega-wp-content :is(h2, h3, h4) { color: var(--bottega-text); font-family: inherit; overflow-wrap: anywhere; }
.bottega-site .legal-page__content .bottega-wp-content h2 { margin: 1.8em 0 .75em; font-size: clamp(25px, 2.2vw, 31px); font-weight: 650; line-height: 1.25; letter-spacing: -.025em; }
.bottega-site .legal-page__content .bottega-wp-content h3 { margin: 1.5em 0 .6em; font-size: 23px; font-weight: 650; line-height: 1.3; }
.bottega-site .legal-page__content .bottega-wp-content h2:first-of-type { margin-top: 0; }
.bottega-site .legal-page__content .bottega-wp-content :is(p, li, dl) { font-size: 18px; line-height: 1.75; }
.bottega-site .legal-page__content .bottega-wp-content p { margin: 0 0 1.2em; }
.bottega-site .legal-page__content .bottega-wp-content p:empty { display: none; }
.bottega-site .legal-page__content .bottega-wp-content :is(ul, ol) { max-width: var(--bottega-reading-width); padding-left: 1.3em; margin: 0 0 1.4em; }
.bottega-site .legal-page__content .bottega-wp-content li + li { margin-top: .5em; }
.bottega-site .legal-page__content .bottega-wp-content strong { color: inherit; }
.bottega-site .legal-page__content .bottega-wp-content table { display: block; max-width: 100%; overflow-x: auto; }
.bottega-site .legal-page--impressum .legal-page__content > .bottega-wp-content { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.bottega-site .legal-page--impressum .bottega-wp-content > :is(h2, h3, h4, ul, ol) { grid-column: 1 / -1; margin: 0; }
.bottega-site .legal-page--impressum .legal-page__content .bottega-wp-content > p { min-width: 0; margin: 0; padding: 26px; border-radius: 18px; background: var(--bottega-surface-soft); line-height: 1.8; overflow-wrap: anywhere; }
.bottega-site .legal-page--impressum .bottega-wp-content > p:first-of-type::first-line { font-weight: 650; }
.bottega-site .legal-page__contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
@media (max-width: 1050px) {
  .bottega-site .legal-page__layout { grid-template-columns: 1fr; gap: 24px; }
  .bottega-site .legal-page__sidebar { position: static; }
  .bottega-site .legal-page__navigation { grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 14px; }
  .bottega-site .legal-page__navigation > strong { grid-column: 1 / -1; }
  .bottega-site .legal-page__help { display: none; }
}
@media (max-width: 620px) {
  .bottega-site .legal-page__navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bottega-site .legal-page--impressum .legal-page__content > .bottega-wp-content { grid-template-columns: 1fr; }
  .bottega-site .legal-page--impressum .legal-page__content .bottega-wp-content > p { padding: 22px; }
}

.legal-page .legal-page__payment-clause { padding: 20px; border-left: 4px solid var(--bottega-accent); border-radius: 0 16px 16px 0; background: var(--bottega-surface-selected); color: var(--bottega-text); scroll-margin-top: 160px; }

/* price-meta.css */
.product-price{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:baseline;
  column-gap:.32em;
}

.product-price__tax-note{
  flex:0 0 100%;
  display:block;
  margin-top:4px;
  color:#81756f;
  font-family:var(--font-body);
  font-size:var(--bottega-font-control);
  font-weight:500;
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
  white-space:nowrap;
}

.catalog-card__price .product-price__tax-note,
.product-pack-switcher__option .product-price__tax-note,
.search-overlay__product-price .product-price__tax-note{
  font-size:var(--bottega-font-control);
}

.conversion-page[data-page="product"] .product-detail__price .product-price__tax-note,
.product-pack-switcher__option .product-price__tax-note{
  font-size:var(--bottega-font-control);
}

.product-pack-switcher__option .product-price__regular{
  font-size:var(--bottega-font-control);
}

.product-pack-switcher__option .product-price__sale,
.product-pack-switcher__option .product-price__current{
  font-size:16px;
}

.search-overlay__product-price .product-price__tax-note{
  color:#81756f;
  font-weight:500;
  text-align:right;
}

.drawer__item-price .product-price__tax-note,
.checkout-order-line__price .product-price__tax-note{
  width:100%;
  margin-top:2px;
  color:#81756f;
  font-size:var(--bottega-font-control);
  font-weight:500;
  text-align:right;
}

.drawer__item-unit .product-price__tax-note{
  display:none;
}

@media(max-width:560px){
  .drawer__item-price{
    flex-wrap:wrap;
  }

  .drawer__item-price .product-price__tax-note{
    flex-basis:100%;
  }
}

/* search-overlay.css */
html.search-overlay-open, html.search-overlay-open body { overflow: hidden; }

.search-overlay-layer {
  --search-inset: clamp(12px, 2vh, 24px);
  --search-edge: clamp(12px, 1.25vw, 24px);
  position: fixed;
  z-index: 160;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-block: var(--search-inset);
  color: var(--bottega-text);
}
.search-overlay__backdrop {
  position: fixed;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgb(37 28 22 / 55%);
  backdrop-filter: blur(4px);
  cursor: default;
}
.search-overlay {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: min(var(--bottega-content-max), calc(100% - var(--search-edge) - var(--search-edge)));
  max-height: calc(100dvh - var(--search-inset) - var(--search-inset));
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bottega-border);
  border-radius: 28px;
  background: var(--bottega-surface);
  box-shadow: 0 24px 90px rgb(30 22 17 / 25%);
  animation: search-overlay-in 160ms ease-out;
}
.search-overlay .search-overlay__inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: inherit;
  min-height: 0;
  margin: 0;
  padding: 0;
}
.search-overlay__heading {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 90px 0 24px;
}
.search-overlay__heading h2 { margin: 0; font-size: clamp(24px, 1.7vw, 32px); line-height: 1.2; letter-spacing: -.035em; }
.search-overlay .search-overlay__heading p { margin: 8px 0 0; color: var(--bottega-text-muted); font-size: 16px; line-height: 1.5; }
.search-overlay__escape { display: inline-flex; align-items: center; gap: 7px; flex: none; color: var(--bottega-text-muted); font-size: 14px; }
.search-overlay__escape kbd { padding: 4px 7px; border: 1px solid var(--bottega-border); border-radius: 6px; font: inherit; }
.search-overlay .search-overlay__close {
  position: absolute;
  top: 22px;
  right: 24px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--bottega-border);
  border-radius: 50%;
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  cursor: pointer;
}
.search-overlay__close .icon { width: 20px; height: 20px; }
.search-overlay .search-overlay__form {
  display: grid;
  flex: none;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 68px;
  margin: 16px 24px 0;
  padding: 8px 10px 8px 18px;
  border: 1px solid var(--bottega-control-border);
  border-radius: 18px;
  background: #fff;
}
.search-overlay__form > .icon { width: 24px; height: 24px; color: var(--bottega-accent); }
.search-overlay .search-overlay__form input {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--bottega-text);
  font: 500 clamp(18px, 1.3vw, 24px)/1.4 var(--bottega-font-family);
}
.search-overlay .search-overlay__form input::placeholder { color: var(--bottega-text-muted); opacity: 1; }
.search-overlay .search-overlay__form:focus-within { border-color: var(--bottega-accent); }
.search-overlay .search-overlay__form input:focus-visible { outline: none; }
.search-overlay .search-overlay__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 18px;
  border: 0;
  border-radius: 12px;
  background: var(--bottega-accent);
  color: #fff;
  font: 600 16px/1.4 var(--bottega-font-family);
  cursor: pointer;
}
.search-overlay__submit .icon { width: 18px; height: 18px; }
.search-overlay__content {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  align-items: start;
  gap: 20px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 20px 24px;
}
.search-overlay__results { min-width: 0; }
.search-overlay__results-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 16px; }
.search-overlay__results-heading h3, .search-overlay__discover h3 { margin: 0; font-size: 18px; font-weight: 600; line-height: 1.4; letter-spacing: -.025em; }
.search-overlay__results-heading > span { color: var(--bottega-text-muted); font-size: 14px; }
/* Gemeinsamer ProductCard-Renderer, kompakte Suchvariante. */
.search-overlay__product-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, max(188px, calc((100% - 60px) / 6))), 1fr)); gap: 12px; align-items: stretch; }
.search-overlay__footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; margin-top: 18px; }
.search-overlay__footer > span { color: var(--bottega-text-muted); font-size: 14px; }
.search-overlay .search-overlay__footer button, .search-overlay__empty a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--bottega-accent); font: 600 16px/1.4 var(--bottega-font-family); text-decoration: none; cursor: pointer; }
.search-overlay__discover { display: grid; gap: 26px; min-width: 0; padding: 22px; border: 1px solid var(--bottega-border); border-radius: 20px; background: var(--bottega-surface-soft); }
.search-overlay__discover h3 { margin-bottom: 12px; font-size: 16px; }
.search-overlay__recent { display: flex; flex-wrap: wrap; gap: 8px; }
.search-overlay .search-overlay__recent button { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid var(--bottega-border); border-radius: 999px; background: var(--bottega-surface); color: var(--bottega-text); font: 500 16px/1.4 var(--bottega-font-family); text-align: left; overflow-wrap: anywhere; cursor: pointer; }
.search-overlay__recent .icon { width: 16px; height: 16px; }
.search-overlay__discover nav { display: grid; gap: 4px; }
.search-overlay__discover nav a { display: grid; grid-template-columns: 34px minmax(0, 1fr) 18px; align-items: center; gap: 10px; min-height: 48px; padding-block: 5px; color: var(--bottega-text); font-size: 16px; line-height: 1.4; text-decoration: none; }
.search-overlay__category-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--bottega-surface); color: var(--bottega-accent); }
.search-overlay__category-icon .icon { width: 20px; height: 20px; }
.search-overlay__discover nav a > .icon { width: 16px; height: 16px; }
.search-overlay__status, .search-overlay__empty { display: grid; justify-items: center; align-content: center; gap: 12px; min-height: 240px; padding: 32px 24px; border: 1px solid var(--bottega-border); border-radius: 20px; background: #fff; text-align: center; }
.search-overlay__status > .icon, .search-overlay__empty > .icon { width: 32px; height: 32px; color: var(--bottega-accent); }
.search-overlay .search-overlay__status p, .search-overlay .search-overlay__empty p { max-width: 46ch; margin: 0; color: var(--bottega-text-muted); font-size: 16px; line-height: 1.6; }
.search-overlay__empty strong { font-size: 20px; line-height: 1.4; }
@media (hover: hover) {
  .search-overlay .search-overlay__recent button:hover, .search-overlay .search-overlay__close:hover { background: #fff; border-color: var(--bottega-accent); }
  .search-overlay .search-overlay__submit:hover { background: var(--bottega-accent-hover); }
  .search-overlay__discover nav a:hover, .search-overlay__footer button:hover, .search-overlay__empty a:hover { color: var(--bottega-accent-hover); text-decoration: underline; text-underline-offset: 4px; }
}
@media (max-width: 1020px) {
  .search-overlay__content { grid-template-columns: minmax(0, 1fr); }
  .search-overlay__discover { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 24px; }
}
@media (max-width: 700px) {
  .search-overlay-layer { --search-inset: 12px; }
  .search-overlay { border-radius: 22px; }
  .search-overlay__heading { padding: 22px 72px 0 20px; }
  .search-overlay .search-overlay__close { top: 16px; right: 16px; }
  .search-overlay__escape { display: none; }
  .search-overlay .search-overlay__form { margin: 20px 20px 0; padding: 8px 12px; grid-template-columns: 22px minmax(0, 1fr); gap: 6px 10px; }
  .search-overlay .search-overlay__submit { grid-column: 1 / -1; }
  .search-overlay__content { padding: 22px 20px; gap: 24px; }
  .search-overlay__product-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .search-overlay .search-overlay__heading p { font-size: 16px; }
  .search-overlay__footer { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 520px) { .search-overlay__discover { padding: 16px; } }
@media (max-height: 600px) {
  .search-overlay .search-overlay__inner { overflow-y: auto; }
  .search-overlay__content { flex: none; overflow: visible; }
}
@keyframes search-overlay-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .search-overlay { animation: none; } }

/* account.css */
.account-page{min-height:calc(100vh - 100px);background:#f2f3f4;color:#382018;font-family:var(--font-body);padding:clamp(22px,3vw,46px) 0 clamp(60px,7vw,110px)}
.account-page__inner{width:min(92%,1320px);margin-inline:auto}
.account-page__breadcrumbs{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:#756861;font-size:var(--bottega-font-meta)}
.account-page__breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.account-login-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);min-height:620px;padding:22px;border-radius:34px;background:#fff;box-shadow:0 26px 70px rgba(38,25,20,.13)}
.account-login-visual{position:relative;min-height:576px;overflow:hidden;border-radius:26px;background:#4a2518;color:#fff}
.account-login-visual__image{object-fit:cover;object-position:center}
.account-login-visual__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,20,12,.4) 0%,rgba(45,21,13,.2) 38%,rgba(38,17,10,.78) 100%)}
.account-login-visual__content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:576px;padding:clamp(30px,4vw,58px)}
.account-login-visual__brand,.account-login-panel__brand{display:flex;align-items:center}
.account-login-visual__brand .coffeedeal-brand{color:#fff!important;font-size:25px}
.account-login-visual__brand .coffeedeal-logo-mark{filter:brightness(0) invert(1)!important}
.account-login-visual h2{max-width:8ch;margin:0;color:#fff;font-size:clamp(46px,5vw,72px);font-weight:850;line-height:.96;letter-spacing:-.06em;text-wrap:balance}
.account-login-visual p{max-width:500px;margin:22px 0 0;color:rgba(255,255,255,.88);font-size:17px;line-height:1.55}
.account-login-visual__benefits{display:flex;flex-wrap:wrap;gap:12px}
.account-login-visual__benefits span{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(255,255,255,.26);border-radius:10px;background:rgba(34,15,9,.3);color:#fff;font-size:var(--bottega-font-meta);font-weight:750;backdrop-filter:blur(8px)}
.account-login-visual__benefits .icon{width:17px;height:17px}
.account-login-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,5vw,76px)}
.account-login-panel__brand{margin-bottom:clamp(34px,4vw,58px)}
.account-login-panel__brand .coffeedeal-brand{color:#3d3937!important;font-size:22px}
.account-login-panel__copy{text-align:center}
.account-login-panel h1{margin:0;color:#2f1c16;font-size:clamp(37px,3.8vw,53px);font-weight:850;line-height:1.02;letter-spacing:-.055em}
.account-login-panel__copy p{margin:14px 0 0;color:var(--bottega-text-muted);font-size:var(--bottega-font-body)}
.account-login-provider{display:grid;grid-template-columns:50px minmax(0,1fr) 20px;align-items:center;gap:14px;margin-top:36px;padding:14px 17px;border:1px solid #e8e1dc;border-radius:13px;background:#f5f5f4;color:#49342c}
.account-login-provider__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#fff;color:#6c301e;box-shadow:0 3px 14px rgba(56,31,21,.07)}
.account-login-provider>span:nth-child(2){display:grid;gap:2px}
.account-login-provider strong{font-size:var(--bottega-font-control)}
.account-login-provider small{color:var(--bottega-text-muted);font-size:var(--bottega-font-meta)}
.account-login-provider>.icon{color:#9c8f88}
.account-login-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;margin-top:18px;border-radius:13px;background:#2d7748;color:#fff;font-size:16px;font-weight:850;transition:transform 180ms ease,background 180ms ease}
.account-login-button:hover{transform:translateY(-2px);background:#225f38}
.account-login-button .icon{width:18px;height:18px}
.account-login-form{display:grid;gap:8px;margin-top:28px}
.account-login-form>label:not(.account-login-remember){color:#49342c;font-size:var(--bottega-font-control);font-weight:750}
.account-login-form>input{width:100%;min-height:50px;margin-bottom:9px;padding:12px 14px;border:1px solid var(--bottega-control-border);border-radius:10px;background:#fff;color:#382018;font:inherit}
.account-login-form>input:focus-visible{outline:2px solid #2d7748;outline-offset:2px}
.account-login-form>input::placeholder{color:var(--bottega-text-muted);opacity:1}
.account-login-remember{display:flex;align-items:center;gap:9px;color:#6a574e;font-size:var(--bottega-font-control);min-height:44px;cursor:pointer}
.account-login-remember input{width:22px;height:22px;accent-color:#2d7748;flex:0 0 22px}
.account-login-form .account-login-button{width:100%;margin-top:12px;border:0;font-family:inherit;cursor:pointer}
.account-login-button:disabled{opacity:.65;cursor:wait;transform:none}
.account-login-error{margin:8px 0 0;color:#a13220;font-size:var(--bottega-font-control);line-height:1.4}
.account-signed-in{display:flex;flex-direction:column}
.account-signed-in .account-login-help{border:0;background:transparent;font-family:inherit;cursor:pointer}
.account-login-help{align-self:flex-end;margin-top:13px;color:#76655e;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.account-login-separator{display:flex;align-items:center;gap:14px;margin:28px 0 22px;color:var(--bottega-text-muted);font-size:var(--bottega-font-control);text-align:center}
.account-login-separator:before,.account-login-separator:after{content:"";height:1px;flex:1;background:#e7dfda}
.account-login-security{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;padding:15px;border-radius:12px;background:#f7f1eb;color:#6a574e}
.account-login-security>.icon{width:22px;height:22px;margin:3px auto 0;color:#71311f}
.account-login-security p{display:grid;gap:3px;margin:0;font-size:var(--bottega-font-control);line-height:1.45}
.account-login-security strong{color:#3f2921;font-size:var(--bottega-font-control)}
.account-login-register{margin:26px 0 0;color:#8a7c75;font-size:var(--bottega-font-control);text-align:center}
.account-login-register a{color:#9d3e22;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.account-login-register button{border:0;background:transparent;color:#9d3e22;font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.account-login-form .account-login-help{border:0;background:transparent;font:inherit;cursor:pointer}
.account-login-message{margin:12px 0 0;color:#2d7748;font-size:var(--bottega-font-control);line-height:1.45}
.account-orders{margin-top:28px;padding-top:24px;border-top:1px solid #e8e1dc}
.account-orders h2{margin:0 0 12px;color:#382018;font-size:1.25rem;line-height:1.2}
.account-orders>p{margin:0;color:#76655e;font-size:var(--bottega-font-control);line-height:1.5}
.account-orders ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.account-orders li{padding:15px;border:1px solid #e8e1dc;border-radius:12px;background:#faf8f6}
.account-orders li>div{display:flex;justify-content:space-between;gap:12px;font-size:var(--bottega-font-control)}
.account-orders li>div span{color:#76655e}
.account-orders li p{margin:9px 0;color:#6a574e;font-size:var(--bottega-font-control);line-height:1.45}
.account-orders__more{margin-top:12px;padding:10px 14px;border:1px solid #d9cec6;border-radius:9px;background:#fff;color:#382018;font:inherit;font-size:var(--bottega-font-control);font-weight:700;cursor:pointer}
.account-orders__details-button{margin-top:10px;padding:0;border:0;background:none;color:#944425;font:inherit;font-size:var(--bottega-font-control);font-weight:700;text-decoration:underline;cursor:pointer}
.account-orders li>.account-orders__detail{display:block;margin-top:14px;padding-top:14px;border-top:1px solid #e8e1dc;font-size:var(--bottega-font-control)}
.account-orders__detail h3{margin:0 0 10px;font-size:var(--bottega-font-control);color:#382018}
.account-orders__detail ul{display:block;margin:0 0 10px;padding:0}
.account-orders__detail li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border:0;border-radius:0;background:none}
.account-orders__detail-total{display:flex;justify-content:space-between;gap:12px;margin-top:7px}
.account-orders__detail-total:last-of-type{padding-top:9px;border-top:1px solid #e8e1dc}
.account-orders li>.account-orders__detail .account-orders__addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.account-orders__addresses h4{margin:0 0 5px;font-size:var(--bottega-font-control)}
.account-orders__addresses p{margin:0;line-height:1.55}
@media(max-width:520px){.account-orders li>.account-orders__detail .account-orders__addresses{grid-template-columns:1fr}}
@media(max-width:980px){.account-login-card{grid-template-columns:minmax(0,1fr) minmax(350px,.95fr);min-height:570px}.account-login-visual,.account-login-visual__content{min-height:526px}.account-login-visual__content{padding:36px}.account-login-panel{padding:38px}.account-login-visual h2{font-size:50px}}
@media(max-width:760px){.account-page{padding-top:16px}.account-page__inner{width:min(94%,620px)}.account-login-card{display:block;min-height:0;padding:12px;border-radius:24px}.account-login-visual{min-height:310px;border-radius:18px}.account-login-visual__content{min-height:310px;padding:25px}.account-login-visual h2{font-size:44px}.account-login-visual p{max-width:390px;margin-top:12px;font-size:14px}.account-login-visual__benefits{gap:7px}.account-login-visual__benefits span{padding:7px 9px;font-size:var(--bottega-font-meta)}.account-login-panel{padding:38px 22px 30px}.account-login-panel__brand{display:none}.account-login-panel h1{font-size:39px}.account-login-provider{margin-top:28px}.account-login-button{min-height:53px}}
@media(max-width:430px){.account-page__breadcrumbs{margin-left:4px}.account-login-visual{min-height:275px}.account-login-visual__content{min-height:275px}.account-login-visual__brand .coffeedeal-brand{font-size:20px}.account-login-visual h2{font-size:39px}.account-login-visual p{display:none}.account-login-visual__benefits span:nth-child(3){display:none}.account-login-panel{padding-inline:14px}.account-login-provider{grid-template-columns:44px minmax(0,1fr) 18px;padding:12px}.account-login-provider__icon{width:42px;height:42px}.account-login-provider small{font-size:var(--bottega-font-meta)}}

/* checkout-handoff.css */
.conversion-page[data-page="checkout"]{--checkout-bg:#f7f4f0;--checkout-surface:#fff;--checkout-text:#2e1710;--checkout-muted:#716b68;--checkout-line:#e7e1dc;--checkout-accent:#b95d3f;--checkout-accent-dark:#97472f;min-height:100vh;background:var(--checkout-bg);color:var(--checkout-text)}
.conversion-page[data-page="checkout"] .sticky-header-shell{position:relative;z-index:10}
.checkout-site-header{border-bottom:1px solid var(--checkout-line);background:#fff}
.checkout-header__inner{display:flex;align-items:center;justify-content:space-between;width:min(100% - 48px,1320px);min-height:76px;margin-inline:auto}
.checkout-header__brand{display:grid;gap:1px}
.checkout-header__brand .wordmark{gap:9px;margin:0;color:var(--checkout-text);font-family:var(--font-display);font-size:27px;line-height:1;text-transform:none}
.checkout-header__brand .wordmark em{color:#9b6345;font-style:normal}
.checkout-header__brand .coffeedeal-logo-mark{width:31px;height:31px}
.checkout-header__brand small{margin-left:40px;color:#746b67;font-size:10px;font-weight:750;letter-spacing:.24em;text-transform:uppercase}
.checkout-header__back{display:inline-flex;align-items:center;gap:9px;color:var(--checkout-text);font-size:16px;font-weight:700}
.checkout-header__back .icon{width:17px;height:17px;transform:rotate(180deg)}
.modern-checkout{min-height:calc(100vh - 158px);padding:38px 0 54px;background:radial-gradient(circle at -4% 43%,rgba(185,93,63,.055),transparent 23%),radial-gradient(circle at 104% 45%,rgba(185,93,63,.045),transparent 22%),var(--checkout-bg)}
.modern-checkout__container{width:min(100% - 48px,1320px);margin-inline:auto}
.checkout-loading{display:grid;min-height:520px;place-items:center;color:var(--checkout-muted);font-size:16px}
.checkout-breadcrumb{display:flex;align-items:center;gap:9px;margin:0 0 19px;color:var(--checkout-muted);font-size:16px}
.checkout-breadcrumb a{color:var(--checkout-muted)}
.checkout-breadcrumb strong{color:var(--checkout-text);font-weight:700}
.modern-checkout__surface{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.92fr);overflow:clip;border:1px solid var(--checkout-line);border-radius:20px;background:var(--checkout-surface);box-shadow:0 24px 65px rgba(61,31,19,.07)}
.checkout-summary,.checkout-handoff{min-width:0;padding:42px 44px 45px}
.checkout-summary{position:relative;border-right:1px solid var(--checkout-line)}
.checkout-summary__sticky{position:sticky;top:94px;max-height:calc(100dvh - 110px);padding-right:12px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.checkout-summary__heading{margin-bottom:24px}
.checkout-summary__heading>div{display:flex;align-items:baseline;gap:15px}
.checkout-summary__heading h1,.checkout-handoff h2{margin:0;color:var(--checkout-text);font-family:var(--font-body);font-size:31px;font-weight:780;line-height:1.18;letter-spacing:-.025em;text-transform:none}
.checkout-summary__heading span{color:var(--checkout-muted);font-size:16px;font-weight:550}
.checkout-warehouse-plan{display:grid;gap:12px;margin:0 0 20px;padding:16px 17px;border:1px solid #e5ddd7;border-radius:12px;background:#f8f5f2;color:var(--checkout-muted)}
.checkout-warehouse-plan.is-blocked{border-color:#e7b9aa;background:#fff3ef;color:#7e3020}
.checkout-warehouse-plan__heading{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:center}
.checkout-warehouse-plan__heading>span{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#eee4dc;color:var(--checkout-text)}
.checkout-warehouse-plan.is-blocked .checkout-warehouse-plan__heading>span{background:#f4d9d0;color:#8a321f}
.checkout-warehouse-plan__heading .icon{width:20px;height:20px}
.checkout-warehouse-plan__heading div{display:grid;gap:2px}
.checkout-warehouse-plan__heading strong{color:var(--checkout-text);font-size:16px;line-height:1.3}
.checkout-warehouse-plan__heading small{font-size:13px;font-weight:500;line-height:1.45}
.checkout-warehouse-plan>p{margin:0;font-size:14px;font-weight:500;line-height:1.45}
.checkout-warehouse-plan__list{display:flex;flex-wrap:wrap;gap:7px}
.checkout-warehouse-plan__list span{display:grid;gap:1px;padding:7px 10px;border:1px solid #ded3cb;border-radius:7px;background:#fff;color:#6a5e57;font-size:12px;font-weight:500;line-height:1.35}
.checkout-warehouse-plan__list b{color:#43312a;font-size:13px}
.checkout-summary .order-lines{display:grid;gap:12px;margin:0 0 20px}
.checkout-order-line{position:relative;display:grid;grid-template-columns:94px minmax(0,1fr) auto;gap:17px;align-items:center;min-height:130px;padding:12px 14px;border:1px solid var(--checkout-line);border-radius:13px;background:#fff;transition:border-color 160ms ease,box-shadow 160ms ease}
.checkout-order-line:hover{border-color:#d8cac0;box-shadow:0 8px 20px rgba(61,31,19,.055)}
.checkout-order-line__media{display:grid;place-items:center;width:94px;height:104px;overflow:hidden;border-radius:9px;background:#f2ece6}
.checkout-order-line__media img{width:100%;height:100%;padding:7px;object-fit:contain}
.checkout-order-line__content{align-self:center;padding-right:8px}
.checkout-order-line__content>strong{display:block;max-width:350px;color:var(--checkout-text);font-size:17px;font-weight:720;line-height:1.32}
.checkout-order-line__content>small{display:block;margin-top:4px;color:var(--checkout-muted);font-size:15px;font-weight:500;line-height:1.35}
.checkout-order-line__content>.checkout-order-line__warehouse{display:flex;align-items:center;gap:5px;color:#6f6058;font-size:13px;font-weight:680}
.checkout-order-line__warehouse .icon{width:12px;height:12px;color:var(--checkout-accent)}
.checkout-order-line .qty-control{display:grid;grid-template-columns:32px 34px 32px;width:max-content;margin-top:11px;overflow:hidden;border:1px solid var(--checkout-line);border-radius:8px;background:#fff}
.checkout-order-line .qty-control button,.checkout-order-line .qty-control span{display:grid;width:auto;height:31px;min-width:0;place-items:center;border:0;background:#fff;color:var(--checkout-text);font-size:16px}
.checkout-order-line .qty-control button:hover{background:#f7f3ef}
.checkout-order-line .qty-control span{border-inline:1px solid var(--checkout-line);font-size:15px;font-weight:750}
.checkout-order-line__price{display:grid;align-self:end;justify-items:end;gap:2px;padding:0 2px 7px 4px;color:var(--checkout-text);white-space:nowrap}
.checkout-order-line__price del{color:#958983;font-size:14px;font-weight:500;line-height:1.2}
.checkout-order-line__price strong{font-size:17px;line-height:1.25}
.checkout-order-line__price.is-sale strong{color:var(--checkout-accent-dark)}
.checkout-order-line__remove{position:absolute;top:11px;right:11px;display:grid;width:29px;height:29px;place-items:center;border:1px solid var(--checkout-line);border-radius:8px;background:#fff;color:#6f6763;transition:background 160ms ease,color 160ms ease}
.checkout-order-line__remove .icon{width:14px;height:14px}
.checkout-order-line__remove:hover{background:#f8efeb;color:var(--checkout-accent-dark)}
.checkout-discount-note{display:flex;align-items:center;gap:13px;min-height:64px;margin:0 0 20px;padding:15px 18px;border:1px solid var(--checkout-line);border-radius:12px;color:var(--checkout-muted);font-size:16px;font-weight:500}
.checkout-discount-note .icon{width:22px;height:22px;color:var(--checkout-text)}
.checkout-summary__totals{display:grid;gap:13px;padding:4px 0 19px;border-bottom:1px solid var(--checkout-line)}
.checkout-summary__totals div,.checkout-summary__total{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px}
.checkout-summary__totals .checkout-summary__saving{padding:8px 11px;border-radius:8px;background:#edf7f0;color:#276640;font-weight:700}
.checkout-summary__totals .checkout-summary__saving strong{color:#276640}
.checkout-summary__totals .checkout-summary__shipping.is-free{padding:8px 11px;border-radius:8px;background:#edf7f0;color:#276640;font-weight:700}
.checkout-summary__totals .checkout-summary__shipping.is-free strong{color:#276640}
.checkout-summary__totals .checkout-summary__vat{color:var(--checkout-muted);font-size:14px}
.checkout-summary__totals .checkout-summary__vat strong{color:var(--checkout-muted);font-weight:650}
.checkout-summary__shipping-value{display:grid;justify-items:end;gap:2px}
.checkout-summary__shipping-value strong{font-size:17px}
.checkout-summary__shipping-value small{color:var(--checkout-muted);font-size:13px;font-weight:500;line-height:1.35;text-align:right}
.checkout-summary__totals div:last-child span:last-child{color:var(--checkout-muted);text-align:right}
.checkout-summary__totals strong{color:var(--checkout-text);font-weight:700;white-space:nowrap}
.checkout-summary__total{padding-top:18px;font-size:22px}
.checkout-summary__total strong{font-weight:780;white-space:nowrap}
.checkout-summary__final-note{margin:10px 0 0;color:var(--checkout-muted);font-size:13px;line-height:1.45}
.checkout-handoff{display:flex;flex-direction:column}
.checkout-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 70px;padding:0;list-style:none}
.checkout-stepper li{position:relative;display:grid;justify-items:center;gap:9px;color:var(--checkout-muted);font-size:14px;text-align:center}
.checkout-stepper li:not(:last-child):after{content:"";position:absolute;top:16px;left:calc(50% + 26px);width:calc(100% - 52px);height:1px;background:var(--checkout-line)}
.checkout-stepper span{position:relative;z-index:1;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--checkout-line);border-radius:50%;background:#f5f2ef;color:var(--checkout-text);font-size:14px;font-weight:750}
.checkout-stepper strong{font-weight:550;line-height:1.3}
.checkout-stepper .is-active{color:var(--checkout-text)}
.checkout-stepper .is-active span{border-color:var(--checkout-accent);background:var(--checkout-accent);color:#fff}
.checkout-stepper .is-active strong{font-weight:700}
.checkout-handoff__intro{margin-bottom:29px}
.checkout-handoff__intro p{margin:8px 0 0;color:var(--checkout-muted);font-size:17px;font-weight:500;line-height:1.55}
.checkout-handoff__benefits{display:grid;gap:24px;margin:0 0 30px;padding:0;list-style:none}
.checkout-handoff__benefits li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:15px;align-items:start}
.checkout-handoff__icon{display:grid;width:48px;height:48px;place-items:center;border-radius:50%;background:#f4f0ed;color:var(--checkout-text)}
.checkout-handoff__icon .icon{width:22px;height:22px}
.checkout-handoff__benefits li>span:last-child{color:var(--checkout-muted);font-size:15px;font-weight:500;line-height:1.5}
.checkout-handoff__benefits strong{display:block;margin:1px 0 3px;color:var(--checkout-text);font-size:17px;font-weight:740}
.checkout-connection-note{display:grid;gap:3px;margin:0 0 15px;padding:12px 14px;border-left:3px solid #c08a55;border-radius:4px;background:#fff7ee;color:#715d51;font-size:13px;font-weight:500;line-height:1.5}
.checkout-connection-note strong{color:var(--checkout-text);font-size:14px}
.checkout-connection-note--blocked{border-left-color:#b33a2b;background:#fff1ee;color:#7e251b}
.checkout-error{margin:0 0 15px;padding:12px 14px;border-left:3px solid #b33a2b;border-radius:4px;background:#fff1ee;color:#7e251b;font-size:14px;font-weight:550;line-height:1.45}
.checkout-handoff__submit{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;min-height:56px;margin-top:auto;padding:13px 20px;border:0;border-radius:9px;background:var(--checkout-accent);box-shadow:0 10px 22px rgba(151,71,47,.17);color:#fff;font-family:var(--font-body);font-size:17px;font-weight:750;transition:background 160ms ease,transform 160ms ease,box-shadow 160ms ease}
.checkout-handoff__submit .icon{width:20px;height:20px}
.checkout-handoff__submit:hover:not(:disabled){background:var(--checkout-accent-dark);box-shadow:0 13px 26px rgba(151,71,47,.22);transform:translateY(-1px)}
.checkout-handoff__submit:disabled{cursor:not-allowed;box-shadow:none;opacity:.52}
.checkout-handoff__confirmation{margin:11px 0 0;color:var(--checkout-muted);font-size:13px;font-weight:500;line-height:1.4;text-align:center}
.checkout-handoff__trust{display:flex;align-items:center;justify-content:center;gap:7px;margin:17px 0 0;color:#595452;font-size:14px;font-weight:550}
.checkout-handoff__trust .icon{width:15px;height:15px}
.checkout-handoff__privacy{margin:13px auto 0;max-width:54ch;color:#716c69;font-size:12px;font-weight:500;line-height:1.5;text-align:center}
.checkout-empty{margin:45px auto;max-width:620px;border-color:var(--checkout-line);background:#fff;box-shadow:0 22px 55px rgba(61,31,19,.06)}
.checkout-empty h1{margin:0 0 10px;font-size:34px}
.checkout-empty .checkout-success__icon .icon{width:28px;height:28px}
.checkout-empty .button{margin-top:14px}
.checkout-footer{border-top:1px solid var(--checkout-line);background:#fff}
.checkout-footer__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;width:min(100% - 48px,1320px);min-height:80px;margin-inline:auto}
.checkout-footer .wordmark{justify-self:start;color:var(--checkout-text);font-family:var(--font-display);font-size:20px;text-transform:none}
.checkout-footer .wordmark em{color:#9b6345;font-style:normal}
.checkout-footer .coffeedeal-logo-mark{display:none}
.checkout-footer__links{display:flex;align-items:center;justify-content:center;gap:8px 18px;color:var(--checkout-muted);font-size:13px;font-weight:500}
.checkout-footer__links span{display:flex;align-items:center}
.checkout-footer__links span:not(:last-child):after{display:none}
.checkout-footer__inner>span:last-child{justify-self:end;color:var(--checkout-muted);font-size:13px;font-weight:500}

@media(max-width:980px){
  .modern-checkout__surface{grid-template-columns:1fr}
  .checkout-summary{border-right:0;border-bottom:1px solid var(--checkout-line)}
  .checkout-summary__sticky{position:static;max-height:none;padding-right:0;overflow:visible}
  .checkout-stepper{margin-bottom:44px}
}

@media(max-width:680px){
  .checkout-header__inner,.modern-checkout__container,.checkout-footer__inner{width:min(100% - 28px,1320px)}
  .checkout-header__inner{min-height:68px}
  .checkout-header__brand .wordmark{font-size:23px}
  .checkout-header__brand .coffeedeal-logo-mark{width:27px;height:27px}
  .checkout-header__brand small{display:none}
  .checkout-header__back{font-size:0}
  .checkout-header__back .icon{width:21px;height:21px}
  .modern-checkout{padding:24px 0 38px}
  .checkout-breadcrumb{margin-bottom:14px;font-size:15px}
  .modern-checkout__surface{overflow:visible;border-radius:15px}
  .checkout-summary,.checkout-handoff{padding:25px 18px 28px}
  .checkout-summary__heading{margin-bottom:18px}
  .checkout-summary__heading h1,.checkout-handoff h2{font-size:27px}
  .checkout-summary__heading>div{justify-content:space-between;width:100%}
  .checkout-warehouse-plan{padding:14px}
  .checkout-order-line{grid-template-columns:78px minmax(0,1fr);gap:13px;min-height:130px;padding:11px}
  .checkout-order-line__media{width:78px;height:96px}
  .checkout-order-line__content{padding-right:28px}
  .checkout-order-line__content>strong{font-size:16px}
  .checkout-order-line__price{grid-column:2;justify-self:end;margin-top:-39px;padding:0 2px 7px;font-size:16px}
  .checkout-order-line__remove{top:9px;right:9px}
  .checkout-discount-note{min-height:58px;padding:13px 15px}
  .checkout-summary__totals div{align-items:flex-start}
  .checkout-summary__totals div:last-child span:last-child{max-width:180px}
  .checkout-summary__total{flex-wrap:wrap;gap:8px 16px}
  .checkout-summary__total strong:first-child{min-width:0;white-space:normal}
  .checkout-summary__total strong:last-child{margin-left:auto}
  .checkout-stepper{margin-bottom:36px}
  .checkout-stepper li{font-size:12px}
  .checkout-stepper li:not(:last-child):after{left:calc(50% + 21px);width:calc(100% - 42px)}
  .checkout-stepper span{width:32px;height:32px}
  .checkout-handoff__benefits{gap:20px}
  .checkout-handoff__benefits li{grid-template-columns:42px minmax(0,1fr);gap:13px}
  .checkout-handoff__icon{width:42px;height:42px}
  .checkout-handoff__submit{font-size:16px}
  .checkout-footer__inner{grid-template-columns:1fr;justify-items:center;gap:12px;padding:25px 0;text-align:center}
  .checkout-footer .wordmark,.checkout-footer__inner>span:last-child{justify-self:center}
  .checkout-footer__links{flex-wrap:wrap}
}

@media(prefers-reduced-motion:reduce){
  .checkout-order-line,.checkout-handoff__submit{transition:none}
}

/* headless-checkout.css */
/* Local checkout: one form state and the existing WooCommerce/Stripe/Payrexx flows. */
.checkout-refresh {
  --checkout-radius: calc(var(--bottega-radius) / 2);
  --checkout-font-control: calc(var(--bottega-font-control) + .0625rem);
  --checkout-font-meta: calc(var(--bottega-font-meta) + .0625rem);
  --checkout-font-section: calc(var(--bottega-font-body) + .25rem);
  --checkout-font-price: calc(var(--bottega-font-body) + .125rem);
  --checkout-font-total: 1.75rem;
  min-height: 0;
  padding: 0 0 54px;
  background: transparent;
  color: var(--bottega-text);
  font-family: var(--bottega-font-family);
  font-size: var(--checkout-font-control);
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.checkout-refresh *, .checkout-refresh *::before, .checkout-refresh *::after { box-sizing: border-box; }
.checkout-refresh [hidden] { display: none !important; }
.checkout-refresh .modern-checkout__surface {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(24px, 3vw, 48px);
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.checkout-refresh .checkout-handoff {
  grid-column: 1;
  grid-row: 1;
  display: block;
  min-width: 0;
  padding: clamp(18px, 1.7vw, 28px);
  border-radius: var(--bottega-radius);
  background: color-mix(in srgb, var(--bottega-surface) 25%, white);
}
.checkout-refresh .checkout-handoff__intro { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; margin: 0 0 6px; }
.checkout-refresh .checkout-handoff__intro h1 {
  margin: 0;
  color: var(--bottega-text);
  font-family: var(--bottega-font-family);
  font-size: clamp(2rem, 2.8vw, 2.5rem);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.035em;
}
.checkout-refresh button, .checkout-refresh input { font-family: inherit; font-size: var(--checkout-font-control); }
.checkout-refresh button { touch-action: manipulation; cursor: pointer; }
.checkout-refresh button:disabled { cursor: not-allowed; opacity: .55; }
.checkout-refresh :is(.checkout-back, .checkout-edit-cart, .checkout-payment__delivery button) {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-height: 44px;
  margin: 0;
  padding: 4px 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--bottega-accent-hover);
  font-size: var(--checkout-font-control);
  font-weight: 500;
  line-height: 1.4;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.checkout-refresh .checkout-back .icon { width: 16px; height: 16px; transform: rotate(180deg); }
.checkout-refresh .checkout-step { border-bottom: 1px solid var(--bottega-border); }
.checkout-refresh .checkout-step:last-child { border-bottom: 0; }
.checkout-refresh .checkout-step__heading { margin: 0; font-family: inherit; line-height: 1.5; }
.checkout-refresh .checkout-step__trigger {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  width: 100%;
  min-height: 56px;
  padding: 14px 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--bottega-text);
  text-align: left;
}
.checkout-refresh .checkout-step__number {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font-size: var(--checkout-font-meta);
  font-weight: 600;
}
.checkout-refresh .checkout-step__number.is-complete { background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); }
.checkout-refresh .checkout-step[data-active] .checkout-step__number { background: var(--bottega-accent); color: white; }
.checkout-refresh .checkout-step__number svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.checkout-refresh .checkout-step__text { min-width: 0; }
.checkout-refresh .checkout-step__title { display: block; font-size: var(--checkout-font-section); font-weight: 650; line-height: 1.35; }
.checkout-refresh .checkout-step__description { display: block; margin-top: 4px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); font-weight: 400; line-height: 1.6; }
.checkout-refresh .checkout-step__edit { padding-top: 4px; color: var(--bottega-accent-hover); font-size: var(--checkout-font-meta); font-weight: 400; text-decoration: underline; text-underline-offset: 3px; }
.checkout-refresh .checkout-step__panel { padding: 0 0 16px; }
.checkout-refresh .checkout-step:last-child .checkout-step__panel { padding-bottom: 0; }
.checkout-refresh .checkout-step__panel form, .checkout-refresh .checkout-step__fields { display: grid; gap: 14px; }
.checkout-refresh .checkout-step__fields--contact { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
.checkout-refresh .checkout-step__fields, .checkout-refresh .checkout-fields { min-width: 0; margin: 0; padding: 0; border: 0; }
.checkout-refresh .checkout-account-link { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-start; gap: 0 10px; margin: 0; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); }
.checkout-refresh .checkout-account-link a { display: inline-flex; align-items: center; min-height: 44px; color: var(--bottega-accent-hover); font-size: var(--checkout-font-control); text-decoration: underline; text-underline-offset: 4px; }
.checkout-refresh .checkout-fields legend { margin: 0 0 16px; padding: 0; font-size: var(--bottega-font-body); font-weight: 650; }
.checkout-refresh .checkout-fields__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
.checkout-refresh .checkout-fields__wide { grid-column: 1 / -1; }
.checkout-refresh .checkout-field { display: grid; align-content: start; gap: 6px; min-width: 0; }
.checkout-refresh .checkout-field label { color: var(--bottega-text); font-size: var(--checkout-font-control); font-weight: 500; line-height: 1.5; }
.checkout-refresh .checkout-field__optional { color: var(--bottega-text-muted); font-weight: 400; }
.checkout-refresh .checkout-field input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: 12px;
  border: 1px solid var(--bottega-control-border);
  border-radius: 8px;
  background: #fff;
  color: var(--bottega-text);
  font-size: var(--checkout-font-control);
  font-weight: 400;
  line-height: 1.4;
}
.checkout-refresh .checkout-field input[aria-invalid="true"] { border-color: #7e251b; }
.checkout-refresh .checkout-field__hint, .checkout-refresh .checkout-fields__country { margin: 3px 0 0; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); font-weight: 400; line-height: 1.5; }
.checkout-refresh .checkout-fields__country { margin-top: 12px; }
.checkout-refresh .checkout-field__error { margin: 0; color: #7e251b; font-size: var(--checkout-font-control); line-height: 1.5; }
.checkout-refresh .checkout-check { display: flex; align-items: flex-start; gap: 10px; min-height: 44px; color: var(--bottega-text); font-size: var(--checkout-font-control); font-weight: 400; line-height: 1.5; }
.checkout-refresh .checkout-check input, .checkout-refresh .checkout-choice input { flex: none; width: 19px; height: 19px; margin: 3px 0 0; accent-color: var(--bottega-accent); }
.checkout-refresh .checkout-check a { color: var(--bottega-accent-hover); text-decoration: underline; text-underline-offset: 3px; }
.checkout-refresh .checkout-next, .checkout-refresh .checkout-handoff__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 13px 16px;
  border: 1px solid var(--bottega-accent);
  border-radius: var(--checkout-radius);
  background: var(--bottega-accent);
  box-shadow: none;
  color: #fff;
  font-size: var(--checkout-font-control);
  font-weight: 650;
  line-height: 1.5;
  text-align: center;
  transform: none;
}
.checkout-refresh .checkout-next .icon, .checkout-refresh .checkout-handoff__submit .icon { flex: none; width: 18px; height: 18px; }
.checkout-refresh .checkout-handoff__submit { min-height: 56px; background: var(--bottega-accent); color: #fff; }
.checkout-refresh .checkout-shipping { display: grid; gap: 12px; padding-top: 8px; }
.checkout-refresh .checkout-shipping h3 { margin: 0; color: var(--bottega-text); font-family: inherit; font-size: var(--checkout-font-section); font-weight: 600; }
.checkout-refresh .checkout-shipping fieldset, .checkout-refresh .checkout-payment fieldset { display: grid; gap: 10px; min-width: 0; margin: 0; padding: 0; border: 0; }
.checkout-refresh .checkout-shipping legend, .checkout-refresh .checkout-payment legend { margin-bottom: 12px; color: var(--bottega-text-muted); font-size: var(--checkout-font-control); font-weight: 500; }
.checkout-refresh .checkout-choice { display: flex; align-items: center; gap: 12px; min-height: 64px; min-width: 0; margin: 0; padding: 14px; border: 1px solid var(--bottega-control-border); border-radius: var(--checkout-radius); background: #fff; color: var(--bottega-text); font-size: var(--checkout-font-control); line-height: 1.4; cursor: pointer; }
.checkout-refresh .checkout-choice:has(input:checked) { border-color: var(--bottega-accent); box-shadow: inset 0 0 0 1px var(--bottega-accent); background: color-mix(in srgb, var(--bottega-surface-selected) 45%, white); }
.checkout-refresh .checkout-choice__label { display: block; flex: 1; min-width: 0; }
.checkout-refresh .checkout-choice__label strong { font-size: var(--checkout-font-control); font-weight: 500; }
.checkout-refresh .checkout-choice > strong { flex: none; font-size: var(--checkout-font-control); font-weight: 500; font-variant-numeric: tabular-nums; }
.checkout-refresh .checkout-payment { display: grid; gap: 20px; margin: 0; padding: 0; border: 0; }
.checkout-refresh .checkout-payment .checkout-payment__methods, .checkout-refresh .checkout-payment__provider-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap: 10px; }
.checkout-refresh .checkout-choice--payment { position: relative; flex-direction: column; justify-content: flex-start; gap: 12px; min-height: 120px; padding: 22px 14px 16px; text-align: center; }
.checkout-refresh .checkout-choice--payment input { position: absolute; top: 10px; left: 10px; margin: 0; }
.checkout-refresh .checkout-choice--payment .checkout-choice__label { flex: none; width: 100%; }
.checkout-refresh .checkout-choice__logos { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 5px; min-height: 32px; max-width: 100%; }
.checkout-refresh .checkout-choice__logos img { display: block; width: auto; max-width: 80px; height: 30px; object-fit: contain; }
.checkout-refresh .checkout-choice__logos .icon { width: 28px; height: 28px; color: var(--bottega-accent-hover); }
.checkout-refresh .checkout-payment__info { display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 16px; border: 1px solid var(--bottega-border); border-radius: var(--checkout-radius); }
.checkout-refresh .checkout-payment__info > .icon { flex: none; width: 22px; height: 22px; margin-top: 2px; color: var(--bottega-accent); }
.checkout-refresh .checkout-payment__info strong { font-size: var(--checkout-font-control); font-weight: 600; }
.checkout-refresh .checkout-payment__info p { margin: 6px 0 0; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); line-height: 1.5; }
.checkout-refresh .checkout-payment__delivery { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 14px; }
.checkout-refresh .checkout-payment__delivery > span { display: flex; align-items: flex-start; gap: 9px; color: var(--bottega-text-muted); font-size: var(--checkout-font-control); }
.checkout-refresh .checkout-payment__delivery .icon { flex: none; width: 20px; height: 20px; margin-top: 2px; }
.checkout-refresh .checkout-payment__total { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px 16px; padding-top: 18px; border-top: 1px solid var(--bottega-border); font-size: var(--checkout-font-control); }
.checkout-refresh .checkout-payment__total small { display: block; margin-top: 3px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); }
.checkout-refresh .checkout-payment__total strong { margin-left: auto; font-size: calc(var(--checkout-font-total) + .125rem); font-weight: 650; font-variant-numeric: tabular-nums; }
.checkout-refresh .checkout-payment-empty p { margin: 0 0 20px; color: var(--bottega-text-muted); font-size: var(--bottega-font-body); line-height: 1.6; }
.checkout-refresh .checkout-error, .checkout-refresh .checkout-error-summary { margin: 18px 0; padding: 16px; border: 0; border-left: 3px solid #7e251b; border-radius: 4px; background: #fff1ee; color: #7e251b; font-size: var(--checkout-font-control); line-height: 1.5; }
.checkout-refresh .checkout-error-summary p { margin: 0; font-weight: 600; }
.checkout-refresh .checkout-error-summary ul { margin: 8px 0 0; padding-left: 20px; }
.checkout-refresh .checkout-error-summary a { display: inline-block; padding-block: 5px; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.checkout-refresh .checkout-connection-note { font-size: var(--checkout-font-control); }

/* The same order summary stays open on desktop and folds above the form on mobile. */
.checkout-refresh .checkout-summary { grid-column: 2; grid-row: 1; position: sticky; top: 24px; min-width: 0; padding: 28px; border: 0; border-radius: var(--bottega-radius); background: var(--bottega-surface-soft); }
.checkout-refresh .checkout-summary__heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; margin: 0 0 24px; }
.checkout-refresh .checkout-summary__heading h2 { margin: 0; font-family: inherit; font-size: 1.5rem; font-weight: 650; line-height: 1.35; letter-spacing: -.02em; }
.checkout-refresh .checkout-summary__heading > span { color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); font-weight: 400; }
.checkout-refresh .checkout-summary__toggle { display: none; }
.checkout-refresh .checkout-summary__body { display: block; }
.checkout-refresh .order-lines, .checkout-refresh .checkout-confirmed-lines { display: grid; gap: 22px; margin: 0 0 10px; }
.checkout-refresh .checkout-order-line, .checkout-refresh .checkout-confirmed-line { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: start; gap: 14px; min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.checkout-refresh .checkout-order-line:hover { border: 0; box-shadow: none; }
.checkout-refresh .checkout-order-line__media, .checkout-refresh .checkout-confirmed-line > img { display: grid; place-items: center; width: 64px; height: 78px; border-radius: 8px; background: #fff; object-fit: contain; }
.checkout-refresh .checkout-order-line__media img { width: 100%; height: 100%; padding: 5px; object-fit: contain; }
.checkout-refresh .checkout-confirmed-line > img { padding: 5px; }
.checkout-refresh .checkout-order-line__content { min-width: 0; padding: 0; }
.checkout-refresh .checkout-order-line__content > strong, .checkout-refresh .checkout-confirmed-line strong { display: block; max-width: none; color: var(--bottega-text); font-size: var(--bottega-font-body); font-weight: 600; line-height: 1.45; }
.checkout-refresh .checkout-order-line__content > small, .checkout-refresh .checkout-confirmed-line small { display: block; margin-top: 3px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); font-weight: 400; line-height: 1.5; }
.checkout-refresh .checkout-order-line__price { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; gap: 4px 10px; margin: 5px 0 0; padding: 0; white-space: normal; }
.checkout-refresh .checkout-order-line__price strong, .checkout-refresh .checkout-confirmed-line b { display: block; color: var(--bottega-text); font-size: var(--checkout-font-price); font-weight: 650; line-height: 1.4; font-variant-numeric: tabular-nums; }
.checkout-refresh .checkout-confirmed-line b { margin-top: 5px; }
.checkout-refresh .checkout-order-line__price del { color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); }
.checkout-refresh .checkout-order-line__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; }
.checkout-refresh .checkout-order-line .qty-control { display: grid; grid-template-columns: 44px 32px 44px; margin: 0; border: 1px solid var(--bottega-control-border); border-radius: 8px; overflow: hidden; background: #fff; }
.checkout-refresh .checkout-order-line .qty-control button, .checkout-refresh .checkout-order-line .qty-control span { display: grid; place-items: center; width: auto; min-width: 0; height: 44px; margin: 0; padding: 0; border: 0; background: #fff; color: var(--bottega-text); font-size: var(--checkout-font-control); font-weight: 500; }
.checkout-refresh .checkout-order-line .qty-control span { border-inline: 1px solid var(--bottega-border); }
.checkout-refresh .checkout-order-line__remove { position: static; display: grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 10px; border: 1px solid var(--bottega-control-border); border-radius: 8px; background: transparent; color: var(--bottega-text); }
.checkout-refresh .checkout-order-line__remove .icon { width: 18px; height: 18px; }
.checkout-refresh .checkout-edit-cart { display: inline-flex; align-items: center; min-height: 44px; margin: 4px 0 14px; color: var(--bottega-accent); text-decoration: underline; text-underline-offset: 3px; }
.checkout-refresh .checkout-coupon-disclosure { margin: 0 0 20px; padding-block: 4px; border-block: 1px solid var(--bottega-border); }
.checkout-refresh .checkout-coupon-disclosure > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 48px; padding: 12px 0; color: var(--bottega-text); font-size: var(--checkout-font-control); font-weight: 500; line-height: 1.5; list-style: none; cursor: pointer; }
.checkout-refresh .checkout-coupon-disclosure > summary::-webkit-details-marker { display: none; }
.checkout-refresh .checkout-coupon-disclosure > summary::marker { content: ""; }
.checkout-refresh .checkout-coupon-disclosure__label { display: flex; align-items: center; gap: 10px; min-width: 0; }
.checkout-refresh .checkout-coupon-disclosure__label > .icon { flex: none; width: 19px; height: 19px; color: var(--bottega-text-muted); }
.checkout-refresh .checkout-coupon-disclosure__chevron { flex: none; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.checkout-refresh .checkout-coupon-disclosure[open] .checkout-coupon-disclosure__chevron { transform: rotate(180deg); }
.checkout-refresh .checkout-coupon-form { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px; padding: 10px 0; }
.checkout-refresh .checkout-coupon-form .checkout-field { flex: 1 1 150px; }
.checkout-refresh .checkout-coupon-apply { flex: none; min-height: 50px; padding: 10px 16px; border: 1px solid var(--bottega-control-border); border-radius: 8px; background: #fff; color: var(--bottega-text); font-weight: 500; }
.checkout-refresh .checkout-summary__totals { display: grid; gap: 12px; margin: 0; padding: 0; border: 0; }
.checkout-refresh .checkout-summary__totals > div { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; padding: 0; border-radius: 0; color: var(--bottega-text); font-size: var(--checkout-font-control); }
.checkout-refresh .checkout-summary__totals dt { min-width: 0; }
.checkout-refresh .checkout-summary__totals dd { margin: 0 0 0 auto; color: inherit; font-weight: 500; font-variant-numeric: tabular-nums; text-align: right; }
.checkout-refresh .checkout-summary__totals .checkout-summary__saving { align-items: center; padding: 12px 16px; border-radius: var(--checkout-radius); background: var(--bottega-accent); color: #fff; font-weight: 500; }
.checkout-refresh .checkout-summary__saving dd { font-size: var(--checkout-font-price); font-weight: 700; }
.checkout-refresh .checkout-summary__totals .checkout-summary__total { margin-top: 8px; padding-top: 18px; border-top: 1px solid var(--bottega-border); font-size: var(--checkout-font-total); font-weight: 600; }
.checkout-refresh .checkout-summary__total dd { font-weight: 600; }
.checkout-refresh .checkout-summary__final-note { margin: 10px 0 0; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); line-height: 1.5; }
.checkout-refresh .checkout-summary__shipping-note { display: flex; align-items: flex-start; gap: 10px; margin: 20px 0 0; padding-top: 18px; border-top: 1px solid var(--bottega-border); color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); }
.checkout-refresh .checkout-summary__shipping-note .icon { flex: none; width: 20px; height: 20px; }

/* Existing embedded payment and return states. No additional wallet integration. */
.checkout-refresh .checkout-stripe { display: grid; gap: 16px; min-width: 0; padding: 16px; border: 1px solid var(--bottega-border); border-radius: var(--checkout-radius); background: #fff; }
.checkout-refresh .checkout-stripe .StripeElement, .checkout-refresh .checkout-stripe iframe { max-width: 100%; }
.checkout-refresh .checkout-payment__note { margin: 0; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); line-height: 1.5; }
.checkout-refresh .checkout-stripe__cancel { justify-self: start; padding: 8px 0; border: 0; background: transparent; color: var(--bottega-accent-hover); font-size: var(--checkout-font-control); text-decoration: underline; text-underline-offset: 3px; }
.checkout-refresh .checkout-success { max-width: none; margin: 20px 0; padding: 36px 24px; border-color: var(--bottega-border); border-radius: var(--bottega-radius); background: color-mix(in srgb, var(--bottega-surface) 25%, white); box-shadow: none; }
.checkout-refresh .checkout-success h1 { margin: 0 0 16px; font-family: inherit; font-size: 30px; line-height: 1.3; }

@media (hover: hover) {
  .checkout-refresh .checkout-next:hover:not(:disabled) { background: var(--bottega-accent-hover); color: #fff; }
  .checkout-refresh .checkout-coupon-apply:hover:not(:disabled) { background: var(--bottega-surface-selected); }
  .checkout-refresh .checkout-handoff__submit:hover:not(:disabled) { background: var(--bottega-accent-hover); box-shadow: none; transform: none; }
  .checkout-refresh .checkout-choice:hover { border-color: var(--bottega-accent); }
}
@media (max-width: 1000px) {
  .checkout-refresh .modern-checkout__surface { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .checkout-refresh .checkout-summary { grid-column: 1; grid-row: 1; position: static; padding: 0; border-radius: var(--checkout-radius); }
  .checkout-refresh .checkout-summary__heading { display: none; }
  .checkout-refresh .checkout-summary__toggle { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 64px; padding: 12px 20px; border: 0; border-radius: var(--checkout-radius); background: transparent; color: var(--bottega-text); font-size: var(--checkout-font-control); font-weight: 500; line-height: 1.4; text-align: left; }
  .checkout-refresh .checkout-summary__toggle small { display: block; margin-top: 4px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); font-weight: 400; }
  .checkout-refresh .checkout-summary__toggle-amount { display: flex; align-items: center; justify-content: flex-end; gap: 8px; text-align: right; }
  .checkout-refresh .checkout-summary__toggle-amount strong { font-size: var(--checkout-font-price); font-weight: 650; font-variant-numeric: tabular-nums; }
  .checkout-refresh .checkout-chevron { flex: none; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
  .checkout-refresh .checkout-summary__toggle[aria-expanded="true"] .checkout-chevron { transform: rotate(180deg); }
  .checkout-refresh .checkout-summary__body { padding: 8px 20px 22px; }
  .checkout-refresh .checkout-summary__body.is-collapsed { display: none; }
  .checkout-refresh .checkout-handoff { grid-column: 1; grid-row: 2; }
}
@media (max-width: 760px) {
  .checkout-refresh .checkout-step__fields--contact { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 520px) {
  .checkout-refresh { padding-bottom: 36px; }
  .checkout-refresh .modern-checkout__surface { gap: 16px; }
  .checkout-refresh .checkout-handoff { padding: 16px; border-radius: var(--checkout-radius); }
  .checkout-refresh .checkout-handoff__intro h1 { font-size: 1.875rem; }
  .checkout-refresh .checkout-back { display: none; }
  .checkout-refresh .checkout-handoff__intro h1 { margin-top: 0; }
  .checkout-refresh .checkout-step__trigger { gap: 10px; padding-block: 14px; }
  .checkout-refresh .checkout-fields__grid { gap: 16px 10px; }
  .checkout-refresh .checkout-summary__toggle { flex-wrap: wrap; padding-inline: 16px; }
  .checkout-refresh .checkout-summary__toggle-amount { margin-left: auto; }
  .checkout-refresh .checkout-summary__body { padding-inline: 16px; }
  .checkout-refresh .checkout-payment .checkout-payment__methods, .checkout-refresh .checkout-payment__provider-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .checkout-refresh .checkout-choice--payment { padding-inline: 10px; }
  .checkout-refresh .checkout-shipping .checkout-choice { flex-wrap: wrap; gap: 10px; }
  .checkout-refresh .checkout-shipping .checkout-choice > strong { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .checkout-refresh *, .checkout-refresh *::before, .checkout-refresh *::after { scroll-behavior: auto; transition: none; }
}

/* Optional address lines stay in the same form state when folded. */
.checkout-refresh .checkout-address-extra { min-width: 0; }
.checkout-refresh .checkout-address-extra > summary { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--bottega-accent-hover); font-size: var(--checkout-font-control); list-style: none; cursor: pointer; }
.checkout-refresh .checkout-address-extra > summary::-webkit-details-marker { display: none; }
.checkout-refresh .checkout-address-extra > summary::marker { content: ""; }
.checkout-refresh .checkout-address-extra > summary::before { content: "+"; font-size: 20px; }
.checkout-refresh .checkout-address-extra[open] > summary::before { content: "−"; }
.checkout-refresh .checkout-address-extra > .checkout-field { margin: 4px 0 12px; }
.checkout-refresh .checkout-account-link button { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 0; border: 0; background: transparent; color: var(--bottega-accent-hover); font: inherit; font-size: var(--checkout-font-control); text-decoration: underline; text-underline-offset: 4px; }
.checkout-refresh .checkout-account-dialog { width: min(560px, 90vw); max-height: calc(100dvh - 32px); margin: auto; padding: 28px; overflow-y: auto; border: 0; border-radius: var(--bottega-radius); background: var(--bottega-surface); color: var(--bottega-text); font-family: var(--bottega-font-family); font-size: var(--checkout-font-control); line-height: 1.5; }
.checkout-refresh .checkout-account-dialog::backdrop { background: rgb(28 24 20 / 65%); }
.checkout-refresh .checkout-account-dialog__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.checkout-refresh .checkout-account-dialog__heading h2 { margin: 0; font: inherit; font-size: var(--checkout-font-section); font-weight: 650; line-height: 1.3; }
.checkout-refresh .checkout-account-dialog__close { display: grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 8px; border: 0; border-radius: 50%; background: var(--bottega-surface-soft); color: var(--bottega-text); }
.checkout-refresh .checkout-account-dialog > p { margin: 0 0 20px; font-size: var(--bottega-font-body); }
.checkout-refresh .checkout-account-dialog form, .checkout-refresh .checkout-account-dialog fieldset { display: grid; gap: 16px; min-width: 0; margin: 0; padding: 0; border: 0; }
.checkout-refresh .checkout-account-dialog .checkout-error { margin: 0; }
.checkout-refresh .checkout-account-dialog__message { margin: 0; padding: 12px; border-radius: 8px; background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); }
.checkout-refresh .checkout-account-dialog__alternatives { display: flex; flex-wrap: wrap; gap: 0 18px; margin-top: 14px; }
.checkout-refresh .checkout-account-dialog__alternatives button, .checkout-refresh .checkout-account-dialog__guest { min-height: 44px; padding: 8px 0; border: 0; background: transparent; color: var(--bottega-accent-hover); font: inherit; text-decoration: underline; text-underline-offset: 4px; }
.checkout-refresh .checkout-account-dialog__social { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.checkout-refresh .checkout-account-dialog__social button { min-height: 48px; padding: 10px; border: 1px solid var(--bottega-control-border); border-radius: var(--checkout-radius); background: #fff; color: var(--bottega-text); font: inherit; }
.checkout-refresh .checkout-account-dialog__social button:disabled { color: var(--bottega-text-muted); background: var(--bottega-surface-soft); opacity: .7; }
.checkout-refresh .checkout-account-dialog__guest { display: block; margin-top: 14px; }
@media (max-width: 520px) {
  .checkout-refresh .checkout-account-dialog { padding: 20px 16px; }
  .checkout-refresh .checkout-account-dialog__social { grid-template-columns: minmax(0, 1fr); }
}

/* Local demo and the shared express entry; actual commerce remains separately gated. */
.checkout-refresh .checkout-express { margin: 0 0 20px; padding: 20px; border: 1px solid var(--bottega-border); border-radius: var(--checkout-radius); background: var(--bottega-surface-soft); scroll-margin-top: 24px; }
.checkout-refresh .checkout-express__heading { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.checkout-refresh .checkout-express h2 { margin: 0; font-size: 1.25rem; font-weight: 650; }
.checkout-refresh .checkout-express p { margin: 0 0 14px; font-size: var(--checkout-font-control); line-height: 1.5; }
.checkout-refresh .checkout-demo-badge { display: inline-flex; align-items: center; padding: 3px 10px; border-radius: 999px; background: var(--bottega-accent); color: #fff; font-size: .875rem; font-weight: 650; }
.checkout-refresh .checkout-express__wallets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.checkout-refresh .checkout-express__wallets button { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 12px; border: 0; border-radius: 10px; background: #202020; color: #fff; font: inherit; font-size: 1.125rem; font-weight: 650; cursor: pointer; }
.checkout-refresh .checkout-express__wallets .icon { width: 18px; height: 18px; }
.checkout-refresh .checkout-express__wallets small { font-size: .875rem; font-weight: 400; }
.checkout-refresh .checkout-express__divider { display: flex; align-items: center; gap: 12px; margin-top: 18px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); text-align: center; }
.checkout-refresh .checkout-express__divider::before, .checkout-refresh .checkout-express__divider::after { content: ''; flex: 1; height: 1px; background: var(--bottega-border); }
.checkout-refresh .checkout-demo-note { margin: 0 0 16px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); line-height: 1.5; }
.checkout-refresh .checkout-live-methods { margin-bottom: 20px; }
.checkout-refresh .checkout-live-methods h3 { margin: 0 0 6px; font-size: var(--checkout-font-section); }
.checkout-refresh .checkout-live-methods p { margin: 0 0 12px; color: var(--bottega-text-muted); font-size: var(--checkout-font-meta); line-height: 1.5; }
.checkout-refresh .checkout-live-methods ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.checkout-refresh .checkout-live-methods li { display: grid; align-content: center; gap: 6px; padding: 12px; border: 1px solid var(--bottega-border); border-radius: 10px; font-size: 1rem; }
.checkout-refresh .checkout-live-methods__logos { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; min-height: 30px; }
.checkout-refresh .checkout-live-methods__logos img { width: auto; max-width: 65px; height: 28px; object-fit: contain; }
.checkout-refresh .checkout-demo-payment { display: grid; gap: 12px; }
.checkout-refresh .checkout-demo-payment select { width: 100%; min-width: 0; min-height: 48px; padding: 10px 12px; border: 1px solid var(--bottega-control-border); border-radius: 8px; background: #fff; color: var(--bottega-text); font: inherit; }
.checkout-refresh .checkout-demo-wallet__address { padding: 14px; border-radius: 10px; background: var(--bottega-surface-soft); }
.checkout-refresh .checkout-demo-wallet__address p { margin: 8px 0 0; }
.checkout-refresh .checkout-demo-wallet__totals { display: grid; gap: 10px; margin: 20px 0; }
.checkout-refresh .checkout-demo-wallet__totals > div { display: flex; justify-content: space-between; gap: 16px; }
.checkout-refresh .checkout-demo-wallet__totals dd { margin: 0; white-space: nowrap; }
@media (max-width: 420px) { .checkout-refresh .checkout-express__wallets { grid-template-columns: minmax(0, 1fr); } }

/* Kompakter, nativ ein-/ausblendbarer Expressbereich. */
.checkout-refresh .checkout-express { padding: 14px 16px; margin-bottom: 16px; }
.checkout-refresh .checkout-express__summary { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; min-height: 44px; cursor: pointer; list-style: none; }
.checkout-refresh .checkout-express__summary::-webkit-details-marker { display: none; }
.checkout-refresh .checkout-express__summary::marker { content: ''; }
.checkout-refresh .checkout-express__heading { margin: 0; }
.checkout-refresh .checkout-express__title { font-size: 18px; font-weight: 650; }
.checkout-refresh .checkout-express__toggle { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 0 12px; border: 1px solid var(--bottega-border); border-radius: 999px; background: var(--bottega-surface); color: var(--bottega-text); font-size: 16px; }
.checkout-refresh .checkout-express__body { padding-top: 10px; }
.checkout-refresh .checkout-express p { margin-bottom: 10px; }
.checkout-refresh .checkout-express__wallets button { min-height: 48px; padding: 10px 12px; font-size: 16px; }

/* bottega-tokens.css */
/* Gemeinsame Designwerte. Breite und Schriftrollen hier pflegen. */
:root {
  --bottega-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --bottega-navigation: #775b40;
  --bottega-navigation-text: #faf3e7;
  --bottega-content-max: 2400px;
  --bottega-content-width: 90%;
  --bottega-sidebar-width: var(--bottega-catalog-sidebar-width);
  --bottega-layout-gap: 36px;
  --bottega-header-content-gap: 12px;
  --bottega-header-height: 112px;
  --bottega-catalog-sidebar-width: clamp(224px, 14vw, 260px);
  --bottega-catalog-card-min: 260px;
  --bottega-catalog-column-gap: 20px;
  --bottega-text: #493c35;
  --bottega-text-muted: #71665c;
  --bottega-accent: #475e4b;
  --bottega-accent-hover: #344638;
  --bottega-choice-active: #5d765f;
  --bottega-surface: #f7f0e6;
  --bottega-surface-soft: #eee3d2;
  --bottega-surface-selected: #e2e8dc;
  --bottega-category-pads: #e6c3a8;
  --bottega-category-beans: #c6d2be;
  --bottega-category-capsules: #e5d7aa;
  --bottega-category-machines: #d1d7cd;
  --bottega-border: #d8ccba;
  --bottega-control-border: #8c8877;
  --bottega-focus: #475e4b;
  --bottega-radius: 24px;
  --bottega-control-radius: 999px;
  --bottega-control-height: 44px;
  --bottega-font-body: 1.125rem;
  --bottega-font-control: 1rem;
  --bottega-font-meta: 0.875rem;
  --bottega-reading-width: 68ch;

  /* Bestehende Shop-Bausteine lesen dieselben Rollen. */
  --max: var(--bottega-content-max);
  --gutter: 0px;
  --ink: var(--bottega-text);
  --muted: var(--bottega-text-muted);
  --line: var(--bottega-border);
  --paper: var(--bottega-surface);
  --cream: var(--bottega-surface-soft);
  --cream-deep: var(--bottega-surface-selected);
  --espresso: var(--bottega-text);
  --espresso-soft: var(--bottega-text-muted);
  --terracotta: var(--bottega-accent);
  --terracotta-dark: var(--bottega-accent-hover);
  --coffee-ink: var(--bottega-text);
  --coffee-copper: var(--bottega-accent);
  --coffee-copper-dark: var(--bottega-accent-hover);
  --coffee-surface: var(--bottega-surface-soft);
  --coffee-cream: var(--bottega-surface-soft);
  --coffee-line: var(--bottega-border);
  --sage: #426148;
  --radius: var(--bottega-radius);
  --radius-sm: var(--bottega-control-radius);
  --shadow: none;
  --font-display: var(--bottega-font-family);
  --font-body: var(--bottega-font-family);
  --font-commerce: var(--bottega-font-family);
  --font-ui: var(--bottega-font-family);
}

@media (max-width: 1250px) {
  :root {
    --bottega-layout-gap: 27px;
  }
}

@media (max-width: 1050px) {
  :root {
    --bottega-layout-gap: 23px;
  }
}

/* bottega.css */
/* La Bottega del Caffè: gemeinsame Gestaltung auf der Coffeedeal-Shoptechnik. */

html {
  scroll-behavior: auto;
}

body {
  margin: 0;
  background: var(--bottega-surface);
  color: var(--ink);
  font: 16px/1.5 var(--bottega-font-family);
  padding-bottom: 0;
}

button,input,select,textarea {
  font: inherit;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

button,a,input,select {
  outline-offset: 4px;
}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible {
  outline: 2px solid var(--bottega-accent);
}

button {
  color: inherit;
}

p {
  line-height: 1.6;
}

h1,h2,h3 {
  font-family: var(--bottega-font-family);
  letter-spacing: -.035em;
  font-weight: 600;
  color: var(--ink);
}

.icon {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

.button,.button--primary,.button--secondary {
  border-radius: 4px;
  min-height: 46px;
  font: 500 16px/1.25 var(--bottega-font-family);
  text-transform: none;
  letter-spacing: 0;
  padding: 13px 19px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: none;
}

.button--primary {
  background: var(--bottega-text);
  border: 1px solid var(--bottega-text);
  color: #fff;
}

.button--primary:hover {
  background: #3c4536;
  color: #fff;
  border-color: #3c4536;
}

.button--secondary {
  background: var(--bottega-surface);
  border: 1px solid #cbd2c1;
  color: var(--bottega-text);
}

.button--secondary:hover {
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
}

.button .icon {
  width: 18px;
  height: 18px;
}

.bottega-container {
  width: min(var(--bottega-content-max), var(--bottega-content-width));
  margin-inline: auto;
}

.bottega-main {
  min-width: 0;
}

.bottega-main>.container,.bottega-main .product-detail>.container,.bottega-main .catalog-page>.container {
  width: 100%;
  padding-inline: 0;
}

.bottega-skip {
  position: fixed;
  left: 20px;
  top: -80px;
  background: var(--bottega-text);
  color: #fff;
  padding: 14px 20px;
  z-index: 300;
}

.bottega-skip:focus {
  top: 15px;
}

.bottega-brand {
  display: flex;
  align-items: center;
  width: var(--bottega-sidebar-width);
  flex-shrink: 0;
}

.bottega-brand img {
  width: 132px;
  height: 74px;
  object-fit: contain;
}

.bottega-layout {
  padding-top: 32px;
  padding-bottom: 65px;
}

.bottega-layout--sidebar {
  display: grid;
  grid-template-columns: var(--bottega-sidebar-width) minmax(0, 1fr);
  gap: var(--bottega-layout-gap);
}

.bottega-sidebar {
  border-right: 1px solid var(--line);
  padding-right: 25px;
  min-width: 0;
}

.bottega-sidebar__inner {
  position: sticky;
  top: 25px;
}

.bottega-sidebar__label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--bottega-text-muted);
  margin-bottom: 17px;
}

.bottega-sidebar nav {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.bottega-sidebar nav a {
  min-height: 47px;
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 16px;
  padding: 9px 7px;
  margin-inline: -7px;
  border-radius: 4px;
  line-height: 1.4;
}

.bottega-sidebar nav a:hover,.bottega-sidebar nav a.is-active {
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
}

.bottega-sidebar nav .icon {
  width: 20px;
  height: 20px;
  color: #6b765f;
}

.bottega-sidebar nav a>span:last-child:not(:first-child) {
  margin-left: auto;
  color: #9ba48d;
}

.bottega-sidebar nav a.is-active {
  font-weight: 600;
}

.bottega-sidebar__group {
  border-top: 1px solid var(--line);
  margin-top: 26px;
  padding-top: 25px;
}

.bottega-sidebar__group nav a {
  min-height: 41px;
}

.bottega-sidebar .bottega-sidebar__all {
  font-size: var(--bottega-font-control);
  color: var(--bottega-accent);
  margin-top: 7px;
}

.bottega-sidebar__note {
  margin-top: 31px;
  background: var(--bottega-surface-soft);
  padding: 20px 16px;
  border-radius: 6px;
}

.bottega-sidebar__note>.icon {
  color: #6c785e;
  margin-bottom: 12px;
}

.bottega-sidebar__note strong {
  display: block;
  font-size: 16px;
  line-height: 1.35;
  margin-bottom: 10px;
}

.bottega-sidebar__note p {
  font-size: 14px;
  color: var(--muted);
  margin-bottom: 11px;
}

.bottega-sidebar__note a {
  display: flex;
  align-items: center;
  gap: 6px;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: 14px;
  min-height: 36px;
}

.bottega-sidebar__note a .icon {
  width: 15px;
  height: 15px;
}

.bottega-intro {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 22px;
  margin-bottom: 26px;
}

.bottega-intro h1 {
  font-size: 31px;
  line-height: 1.2;
  margin: 0 0 8px;
}

.bottega-intro p {
  margin: 0;
  color: var(--muted);
  font-size: var(--bottega-font-body);
}

.bottega-intro>span {
  color: #7b8470;
  font-size: 14px;
  white-space: nowrap;
}

.bottega-eyebrow {
  display: block;
  color: var(--bottega-accent);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .03em;
  margin-bottom: 17px;
}

.bottega-section {
  margin-top: 43px;
}

.bottega-section__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 23px;
}

.bottega-section__heading h2 {
  font-size: 26px;
  line-height: 1.2;
  margin: 0;
}

.bottega-section__heading>a {
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #626f57;
  white-space: nowrap;
  min-height: 38px;
}

.bottega-section__heading>a .icon {
  width: 16px;
  height: 16px;
}

.bottega-categories {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 15px;
}

.bottega-categories>a {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-width: 0;
}

.bottega-categories>a>span:first-child {
  height: 114px;
  border-radius: 6px;
  background: var(--bottega-surface-soft);
  display: grid;
  place-items: center;
  overflow: hidden;
}

.bottega-categories img {
  height: 89px;
  width: 82%;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform .2s;
}

.bottega-categories a:hover img {
  transform: translateY(-3px);
}

.bottega-categories strong {
  font-size: var(--bottega-font-control);
  font-weight: 400;
  line-height: 1.35;
}

.bottega-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 22px;
}

.bottega-tabs button {
  border: 1px solid var(--line);
  background: var(--bottega-surface);
  border-radius: 30px;
  min-height: 44px;
  padding: 10px 17px;
  font-size: 16px;
}

.bottega-tabs .is-active {
  background: var(--bottega-text);
  border-color: var(--bottega-text);
  color: #fff;
}

.bottega-products {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 25px 18px;
}

.bottega-product {
  display: flex;
  flex-direction: column;
  min-width: 0;
  position: relative;
}

.bottega-product__visual {
  position: relative;
  background: var(--bottega-surface-soft);
  border-radius: 6px;
  overflow: hidden;
}

.bottega-product__media {
  position: relative;
  height: 230px;
  display: block;
}

.bottega-product__media img {
  display: block;
  box-sizing: border-box;
  height: 100%;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 35px 25px 23px;
  mix-blend-mode: multiply;
  transform: none;
  transition: opacity .18s ease;
}

.bottega-product__media .bottega-product__image--secondary {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

.bottega-product__media.has-secondary:focus-visible .bottega-product__image--primary { opacity: 0; }
.bottega-product__media.has-secondary:focus-visible .bottega-product__image--secondary { opacity: 1; }

@media (hover: hover) and (pointer: fine) {
  .bottega-product__media.has-secondary:hover .bottega-product__image--primary { opacity: 0; }
  .bottega-product__media.has-secondary:hover .bottega-product__image--secondary { opacity: 1; }
}

.bottega-product__wish {
  position: absolute;
  top: 6px;
  right: 6px;
  height: 44px;
  width: 44px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #ffffffdd;
}

.bottega-product__wish .icon {
  height: 19px;
  width: 19px;
}

.bottega-product__wish.is-active {
  color: var(--bottega-accent);
}

.bottega-product__wish.is-active .icon {
  fill: #eddccc;
}

.bottega-product__badge {
  position: absolute;
  left: 11px;
  top: 13px;
  border-radius: 3px;
  background: #e7ecde;
  color: #4a5b3e;
  padding: 6px 8px;
  font-size: 12px;
  line-height: 1.2;
}

.bottega-product__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
  padding: 17px 0 0;
}

.bottega-product__brand {
  font-size: var(--bottega-font-control);
  color: var(--bottega-text-muted);
  margin-bottom: 7px;
}

.bottega-product h3 {
  font-size: 18px;
  line-height: 1.35;
  margin: 0 0 9px;
  min-height: 2.7em;
  letter-spacing: -.02em;
}

.bottega-product__size {
  font-size: var(--bottega-font-control);
  line-height: 1.5;
  color: var(--bottega-text-muted);
}

.bottega-product__category {
  font-size: var(--bottega-font-control);
  color: var(--bottega-text-muted);
  min-height: 25px;
  margin-top: 8px;
}

.bottega-product__bottom {
  margin-top: auto;
  padding-top: 18px;
}

.bottega-product .product-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 7px;
  line-height: 1.3;
}

.bottega-product .product-price strong {
  font-size: 23px;
  letter-spacing: -.035em;
  font-weight: 600;
  color: var(--bottega-text);
}

.bottega-product .product-price__regular {
  font-size: 14px;
  color: var(--bottega-text-muted);
}

.bottega-product .product-price__tax-note {
  flex-basis: 100%;
  font-size: var(--bottega-font-meta);
  line-height: 1.5;
  color: var(--bottega-text-muted);
}

.bottega-product__unit {
  font-size: var(--bottega-font-control);
  color: var(--bottega-text-muted);
  margin-top: 5px;
  min-height: 20px;
}

.bottega-product__status {
  font-size: var(--bottega-font-meta);
  color: #52684a;
  display: flex;
  gap: 7px;
  align-items: center;
  margin-top: 12px;
  min-height: 21px;
}

.bottega-product__status i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #718b61;
  flex-shrink: 0;
}

.bottega-product__status.is-unavailable {
  color: #7c8571;
}

.bottega-product__status.is-unavailable i {
  background: #a1a994;
}

.bottega-product__actions {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-top: 15px;
}

.bottega-product__actions .icon {
  height: 19px;
  width: 19px;
}

.bottega-product__add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 5px;
  background: #edf0e5;
  min-height: 44px;
  flex: 1;
  font-size: var(--bottega-font-control);
  padding: 10px;
}

.bottega-product__add:hover {
  background: #e1e7d7;
}

.bottega-benefits {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 21px;
  border-block: 1px solid var(--line);
  padding-block: 25px;
  margin-top: 39px;
}

.bottega-benefits>div {
  display: flex;
  align-items: center;
  gap: 13px;
}

.bottega-benefits .icon {
  height: 27px;
  width: 27px;
  color: #6a775d;
}

.bottega-benefits span {
  font-size: 15px;
  line-height: 1.4;
}

.bottega-benefits small {
  display: block;
  font-size: var(--bottega-font-meta);
  color: #79836d;
  margin-top: 5px;
}

.bottega-brands {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 17px;
  border-block: 1px solid var(--line);
  padding: 26px 0;
  align-items: center;
}

.bottega-brands a {
  text-align: center;
  font-size: 21px;
  letter-spacing: -.04em;
  font-weight: 600;
  color: #535f48;
  min-height: 44px;
  display: grid;
  place-items: center;
}

.bottega-brands a:nth-child(2) {
  font-family: var(--bottega-font-family);
  font-style: normal;
}

.bottega-brands a:nth-child(3) {
  font-size: 19px;
}

.bottega-editorial {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 23px;
}

.bottega-editorial>article {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.bottega-editorial article>a {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.bottega-editorial img {
  aspect-ratio: 1.9;
  width: 100%;
  object-fit: cover;
  border-radius: 6px;
  margin-bottom: 19px;
}

.bottega-editorial__meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--bottega-text-muted);
  font-size: var(--bottega-font-meta);
  margin-bottom: 13px;
}

.bottega-editorial h3 {
  font-size: 24px;
  margin: 0 0 11px;
  line-height: 1.2;
}

.bottega-editorial p {
  font-size: var(--bottega-font-body);
  color: #68735c;
  margin: 0 0 15px;
}

.bottega-editorial__link {
  display: flex;
  gap: 9px;
  align-items: center;
  font-size: var(--bottega-font-control);
  color: var(--bottega-accent);
  margin-top: auto;
  min-height: 40px;
}

.bottega-editorial__link .icon {
  width: 16px;
  height: 16px;
}

.bottega-footer {
  background: var(--bottega-surface-soft);
  border-top: 1px solid var(--line);
}

.bottega-footer__grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 36px;
  padding-block: 44px;
}

.bottega-footer__brand strong {
  font-size: 23px;
  letter-spacing: -.04em;
}

.bottega-footer__brand p {
  max-width: 230px;
  font-size: 16px;
  color: var(--bottega-text-muted);
  margin: 12px 0 19px;
}

.bottega-footer__brand>span {
  font-size: 14px;
  color: var(--bottega-text-muted);
}

.bottega-footer h2 {
  font-size: 16px;
  margin: 0 0 13px;
  letter-spacing: 0;
}

.bottega-footer__grid>div>a {
  display: block;
  padding: 8px 0;
  font-size: var(--bottega-font-control);
  color: var(--bottega-text-muted);
  min-height: 38px;
}

.bottega-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid #dce2d4;
  padding-block: 21px;
  color: var(--bottega-text-muted);
  font-size: 14px;
}

.bottega-empty {
  grid-column: 1/-1;
  padding: 38px;
  background: var(--bottega-surface-soft);
  border-radius: 6px;
  font-size: 17px;
  line-height: 1.6;
}

.bottega-empty a {
  color: var(--bottega-accent);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.bottega-main .catalog-page {
  background: var(--bottega-surface);
  padding: 0;
}

.bottega-main .catalog-shell {
  display: grid;
  grid-template-columns: var(--bottega-sidebar-width) minmax(0, 1fr);
  gap: var(--bottega-layout-gap);
  align-items: start;
}

.catalog-content {
  min-width: 0;
  padding: 0;
}

.catalog-content>h1 {
  font-size: 36px;
  color: var(--bottega-text);
  margin: 0 0 8px;
  line-height: 1.2;
}

.catalog-result-count {
  color: var(--bottega-text-muted);
  font-size: 14px;
  margin-top: 10px;
}

.catalog-intro-copy {
  max-width: 65ch;
  font-size: var(--bottega-font-body);
  color: #69745e;
  line-height: 1.6;
}

.catalog-visual-filters {
  margin-top: 25px;
}

.catalog-system-filter {
  border: 1px solid #e2e6db;
  background: var(--bottega-surface-soft);
  border-radius: 6px;
  padding: 18px;
  margin-bottom: 13px;
}

.catalog-system-filter__heading h2 {
  font-size: 18px;
  color: var(--bottega-text);
  margin: 0 0 5px;
}

.catalog-system-filter__heading>span {
  font-size: 14px;
  color: #6d7a61;
}

.catalog-system-filter__options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.catalog-system-filter__options button {
  background: var(--bottega-surface);
  border: 1px solid #dce2d2;
  border-radius: 5px;
  min-height: 48px;
  padding: 9px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--bottega-font-control);
}

.catalog-system-filter__options button>svg {
  max-width: 27px;
  max-height: 27px;
}

.catalog-system-filter__options button.is-active {
  border-color: #76876a;
  background: #eaf0e1;
  color: var(--bottega-text);
}

.catalog-product-type-filter {
  margin-top: 13px;
}

.catalog-product-type-filter .catalog-system-filter__options {
  margin-top: 11px;
}

.catalog-discovery {
  border: 0;
  padding: 0;
  margin: 20px 0;
}

.catalog-popular h2 {
  font-size: 16px;
}

.catalog-popular__chips button {
  background: var(--bottega-surface-soft);
  border: 1px solid #e0e6d6;
  border-radius: 20px;
  padding: 9px 13px;
  min-height: 40px;
  font-size: var(--bottega-font-control);
}

.catalog-filterbar {
  border: 0;
  padding: 18px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  background: none;
}

.catalog-facet {
  flex: 1;
  min-width: 140px;
}

.catalog-facet select {
  flex: 1 1 0;
  min-width: 0;
  border: 0;
  border-radius: inherit;
  min-height: 44px;
  padding: 0 40px 0 14px;
  font-size: var(--bottega-font-control);
  background-color: transparent;
  width: 100%;
  color: var(--bottega-text);
}

.catalog-more {
  min-height: 45px;
  font-size: 15px;
  padding: 10px;
  border: 1px solid #d6decb;
  background: var(--bottega-surface);
  border-radius: 5px;
}

.catalog-toolbar {
  border-top: 1px solid var(--line);
  border-bottom: 0;
  padding-block: 17px;
  margin-bottom: 9px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.catalog-toolbar__select {
  font-size: 14px;
}

.catalog-toolbar select {
  border: 0;
  background: var(--bottega-surface);
  font-size: var(--bottega-font-control);
  padding: 8px;
  color: var(--ink);
}

.catalog-products {
  gap: 28px 20px;
}

.catalog-products.is-grid-4 {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.catalog-products.is-grid-5 {
  grid-template-columns: repeat(5,minmax(0,1fr));
}

.catalog-products.is-grid-6 {
  grid-template-columns: repeat(6,minmax(0,1fr));
}

.catalog-products.is-list {
  grid-template-columns: 1fr;
}

.catalog-products.is-list .bottega-product {
  display: grid;
  grid-template-columns: 185px minmax(0,1fr);
  gap: 24px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 22px;
}

.catalog-products.is-list .bottega-product__media {
  height: 220px;
}

.catalog-products.is-list .bottega-product__actions {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 220px;
}

.catalog-products.is-list .bottega-product__body {
  padding-bottom: 10px;
}

.catalog-products.is-grid-5 .bottega-product__add span,.catalog-products.is-grid-6 .bottega-product__add span {
  font-size: var(--bottega-font-control);
}

.catalog-products.is-grid-6 .bottega-product__media {
  height: 190px;
}

.catalog-load-more {
  margin-top: 25px;
}

.catalog-category-details {
  border-top: 1px solid var(--line);
  padding-top: 25px;
  margin-top: 40px;
  max-width: 100%;
  font-size: 17px;
  color: #606e54;
}

.catalog-category-details h2,.catalog-category-details h3 {
  font-size: 23px;
  line-height: 1.3;
  color: var(--bottega-text);
}

.catalog-pagination {
  margin-top: 25px;
}

.catalog-pagination a {
  border-radius: 4px;
  min-height: 44px;
  padding: 10px 14px;
  font-size: var(--bottega-font-control);
}

.catalog-pagination a[aria-current=page] {
  background: #eaf0e1;
  color: var(--bottega-text);
}

.catalog-price-range {
  background: var(--bottega-surface-soft);
  border-radius: 5px;
}

.catalog-view button {
  border-radius: 4px;
  min-width: 40px;
  min-height: 40px;
}

.catalog-view button[aria-pressed=true] {
  background: #eaf0e1;
  color: var(--bottega-text);
}

.product-detail {
  background: var(--bottega-surface);
  padding-top: 0;
}

.conversion-breadcrumbs {
  color: var(--bottega-text-muted);
  font-size: 14px;
  margin-bottom: 25px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  line-height: 1.5;
}

.product-detail__breadcrumb-wrap {
  padding-top: 0;
}

.product-detail__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 35px;
}

.product-gallery {
  background: var(--bottega-surface-soft);
  border: 0;
  border-radius: 6px;
  padding: 25px;
}

.product-gallery__main {
  background: transparent;
  border: 0;
  min-height: 390px;
  aspect-ratio: auto;
  height: 420px;
}

.product-gallery__main img {
  object-fit: contain;
  mix-blend-mode: multiply;
  height: 100%;
  width: 100%;
}

.product-gallery__thumbs {
  margin-top: 20px;
}

.product-gallery__thumb {
  border: 1px solid #dfe6d4;
  border-radius: 5px;
  background: var(--bottega-surface);
}

.product-gallery__thumb.is-active {
  border-color: #687e58;
}

.product-detail__info {
  padding: 4px 0 0;
  min-width: 0;
}

.product-detail__brand {
  color: var(--bottega-accent);
  font-size: 15px;
  text-transform: none;
  letter-spacing: 0;
  margin: 0 0 13px;
}

.product-detail h1 {
  font-size: 34px;
  font-family: var(--bottega-font-family);
  color: var(--bottega-text);
  font-weight: 600;
  line-height: 1.13;
  letter-spacing: -.04em;
}

.product-detail__subtitle {
  font-size: 15px;
  color: #707d63;
  line-height: 1.6;
}

.product-detail__desc {
  font-size: var(--bottega-font-body);
  line-height: 1.65;
  color: #5d6c52;
  max-width: 55ch;
}

.product-detail__price {
  border: 0;
  padding: 16px 0;
}

.product-detail__price .price strong {
  font-size: 32px;
  color: var(--bottega-text);
}

.product-detail__price .product-price__tax-note {
  font-size: 14px;
  color: var(--bottega-text-muted);
}

.product-detail__unit-pricing {
  background: #f6f8f0;
  border-radius: 5px;
  padding: 12px;
  margin-top: 14px;
}

.product-detail__unit-pricing dl {
  font-size: var(--bottega-font-control);
}

.product-pack-switcher {
  border-color: #e0e6d6;
  border-radius: 6px;
  background: var(--bottega-surface);
}

.product-pack-switcher__option {
  border-radius: 5px;
  border: 1px solid #dbe3ce;
  background: var(--bottega-surface);
}

.product-pack-switcher__option.is-current {
  background: #eef3e6;
  border-color: #6f825e;
}

.product-pack-switcher__heading span {
  color: #7a866d;
  font-size: 14px;
}

.product-pack-switcher__heading strong {
  font-size: 16px;
  color: var(--bottega-text);
}

.product-pack-switcher__option b {
  font-size: 15px;
}

.product-pack-switcher__option small {
  font-size: var(--bottega-font-meta);
}

.product-detail__buy {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.qty-control {
  border: 1px solid #cbd6be;
  border-radius: 5px;
  background: var(--bottega-surface);
  min-height: 46px;
  display: inline-flex;
  align-items: center;
}

.qty-control button {
  width: 37px;
  min-height: 44px;
  border: 0;
  background: transparent;
  font-size: 18px;
  color: var(--bottega-text);
}

.qty-control span {
  min-width: 26px;
  font-size: 16px;
  text-align: center;
}

.product-detail__buy>.button {
  flex: 1;
  background: var(--bottega-accent);
  border-color: var(--bottega-accent);
  font-size: 16px;
}

.product-detail__buy>.button:hover {
  background: var(--bottega-accent-hover);
  border-color: var(--bottega-accent-hover);
}

.product-detail__wishlist {
  border: 1px solid #dce4d1;
  border-radius: 5px;
  background: var(--bottega-surface);
  min-height: 46px;
  padding: 9px 13px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}

.bottega-site .product-detail__compare {
  display: inline-flex;
  flex: 0 0 56px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 56px;
  min-height: 60px;
  padding: 10px;
  border: 1px solid var(--bottega-border);
  border-radius: 12px;
  background: var(--bottega-surface);
  color: var(--bottega-text);
  font: 500 var(--bottega-font-control)/1.4 var(--bottega-font-family);
  cursor: pointer;
}
.bottega-site .product-detail__compare .icon { flex: none; width: 22px; height: 22px; }
.bottega-site .product-detail__compare.is-active { background: var(--bottega-accent); border-color: var(--bottega-accent); color: #fff; }
:root .bottega-site .product-detail__compare.is-active:focus-visible { background-color: var(--bottega-accent-hover) !important; color: #fff !important; }
.bottega-site .product-detail__compare--labeled { flex-basis: auto; width: auto; min-height: 48px; padding: 12px 16px; }
.product-availability-alternatives__actions { flex-wrap: wrap; }
@media (hover: hover) {
  .bottega-site .product-detail__compare:hover:not(:disabled) { background: var(--bottega-surface-selected); color: var(--bottega-text); }
  .bottega-site .product-detail__compare.is-active:hover:not(:disabled) { background: var(--bottega-accent-hover); color: #fff; }
}

.bottega-site .product-detail__buy > .product-detail__checkout-button {
  display: inline-flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 12px 20px;
  border: 1px solid var(--bottega-accent);
  border-radius: var(--bottega-control-radius);
  background: #fff;
  color: var(--bottega-accent);
  font-family: var(--bottega-font-family);
  font-size: var(--bottega-font-control);
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  cursor: pointer;
}
.bottega-site .product-detail__buy > .product-detail__checkout-button:hover:not(:disabled) { border-color: var(--bottega-accent-hover); background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); }
.bottega-site .product-detail__buy > .product-detail__checkout-button:active:not(:disabled) { background: var(--bottega-surface-soft); }
.bottega-site .product-detail__buy > .product-detail__checkout-button:disabled { border-color: var(--bottega-border); background: var(--bottega-surface); color: var(--bottega-text-muted); opacity: .65; cursor: not-allowed; }
.product-detail__checkout-button .icon { flex: 0 0 20px; width: 20px; height: 20px; }

.product-detail__free-shipping-shortcut {
  border: 1px solid #dee6d3;
  border-radius: 5px;
  background: var(--bottega-surface-soft);
  color: #4c613f;
  margin-top: 14px;
  font-size: 14px;
}

/* Kompakte Mengenaktion in einer eigenen Zeile unter dem Produktpreis. */
.bottega-site .product-detail__info > .product-detail__price { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: start; gap: 12px; }
.bottega-site .product-detail__price > .product-detail__free-shipping-shortcut { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 10px 12px; min-height: 48px; max-width: 100%; margin: 0; padding: 10px 14px; border: 1px solid var(--bottega-accent); border-radius: 14px; background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); font: 600 16px/1.4 var(--bottega-font-family); text-align: left; }
.bottega-site .product-detail__price > .product-detail__free-shipping-shortcut > .icon { flex: 0 0 20px; width: 20px; height: 20px; }
.bottega-site .product-detail__price > .product-detail__free-shipping-shortcut small { margin: 0; padding-left: 12px; border-left: 1px solid var(--bottega-border); color: inherit; font: 500 14px/1.4 var(--bottega-font-family); }
.bottega-site .product-detail__price > .product-detail__free-shipping-shortcut:hover { background: var(--bottega-surface-soft); }
.product-bundle-benefit { display: block; margin-top: 6px; color: var(--bottega-accent-hover); font-size: 14px; font-weight: 600; line-height: 1.4; }

/* Original-Zahlungslogos: grössere, gleichmässige Karten ohne horizontales Abschneiden. */
.bottega-site .product-payment-methods { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 18px; padding: 18px; border: 1px solid var(--bottega-border); border-radius: 18px; background: #fff; overflow: visible; }
.bottega-site .product-payment-methods__heading { display: flex; gap: 12px; padding: 0; border: 0; color: #171717; }
.bottega-site .product-payment-methods__heading > .icon { width: 26px; height: 26px; color: var(--bottega-accent); }
.bottega-site .product-payment-methods__heading strong { font-size: 18px; line-height: 1.4; }
.bottega-site .product-payment-methods__heading small { font-size: 16px; line-height: 1.4; }
.bottega-site .product-payment-methods ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 100px), 1fr)); gap: 10px; min-width: 0; margin: 0; padding: 0; overflow: visible; list-style: none; }
.bottega-site .product-payment-methods li { display: grid; grid-template-rows: minmax(30px, 1fr) minmax(32px, auto); align-items: center; justify-items: center; gap: 6px; min-width: 0; min-height: 80px; padding: 8px; border: 1px solid var(--bottega-border); border-radius: 12px; color: #171717; font-size: 16px; line-height: 1.4; }
.bottega-site .product-payment-methods li:last-child { border-right: 1px solid var(--bottega-border); }
.bottega-site .product-payment-methods li > span:last-child { display: grid; place-items: center; min-height: 32px; font-size: 14px; line-height: 1.35; white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
.bottega-site .product-payment-methods__logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 5px; width: 100%; max-width: none; min-height: 30px; }
.bottega-site .product-payment-methods__logos img { flex: 0 1 auto; width: auto; max-width: min(100%, 64px); height: 24px; max-height: none; object-fit: contain; }
.bottega-site .product-payment-methods__logos > .icon { width: 24px; height: 24px; }
.bottega-site .product-payment-methods__logos:has(> img:nth-child(2)) img { max-width: 40px; height: 18px; }

.product-detail__selling-points {
  border-color: #e2e7db;
  background: none;
  font-size: 15px;
}

.product-detail__selling-points i {
  background: #edf3e4;
  color: #60784d;
}

.product-detail__selling-points b {
  font-weight: 500;
}

.product-detail__selling-points small {
  font-size: var(--bottega-font-meta);
  color: #75826a;
}

.product-detail__status-line {
  font-size: 14px;
  color: #557346;
}

.product-detail__reservation {
  background: var(--bottega-surface-soft);
  border: 1px solid #dfe5d4;
  border-radius: 5px;
  padding: 18px;
  font-size: 16px;
}

.product-tabs {
  border-color: #dde5d1;
  margin-top: 40px;
}

.product-tabs__list button {
  font-size: 16px;
  color: #647656;
  padding: 17px 18px;
  min-height: 50px;
}

.product-tabs__list button[aria-selected=true] {
  color: var(--bottega-text);
  border-color: #6b805b;
}

.product-tabs__panel {
  font-size: 17px;
  color: #5f6f52;
  line-height: 1.7;
}

.product-tabs__panel table {
  font-size: 15px;
  width: 100%;
}

.product-tabs__panel h2,.product-tabs__panel h3 {
  font-size: 24px;
}

.product-tabs__panel a {
  color: var(--bottega-accent);
  text-decoration: underline;
}

.product-related {
  background: var(--bottega-surface);
  margin-top: 40px;
}

.product-related h2,.product-availability-alternatives h2 {
  font-size: 25px;
  color: var(--bottega-text);
}

.product-related .editorial-product-grid,.product-related .product-grid,.product-availability-alternatives .editorial-product-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 25px 18px;
}

.product-gallery__masonry {
  gap: 14px;
}

.product-gallery__masonry-item {
  background: var(--bottega-surface);
  border-radius: 5px;
}

.bottega-site .mobile-purchase-bar {
  display: none;
  background: var(--bottega-surface);
  border-color: #dfe6d5;
}

.mobile-purchase-bar .button {
  background: var(--bottega-accent);
  border-color: var(--bottega-accent);
}

.drawer,.compare-panel {
  background: var(--bottega-surface);
  color: var(--bottega-text);
}

.drawer__header {
  border-color: #e3e8db;
}

.drawer__header h2 {
  font-size: 29px;
  font-family: var(--bottega-font-family);
  color: var(--bottega-text);
}

.drawer__shipping {
  background: var(--bottega-surface-soft);
  color: #547043;
}

.drawer__shipping-track {
  background: #e0e8d4;
}

.drawer__shipping-track>span {
  background: #758d63;
}

.drawer__item {
  border-color: #e3e9da;
}

.drawer__item-media {
  background: var(--bottega-surface-soft);
  border-radius: 5px;
}

.drawer__item-heading h3 {
  font-size: 16px;
  color: var(--bottega-text);
}

.drawer__item-size,.drawer__item-unit {
  font-size: 14px;
  color: var(--bottega-text-muted);
}

.drawer__footer {
  border-color: #e0e7d5;
  background: var(--bottega-surface);
}

.drawer__footer p {
  font-size: 14px;
}

.drawer__footer-actions>.button--primary {
  background: var(--bottega-accent);
  border-color: var(--bottega-accent);
}

/* Mini-cart: compact image, heading and quantity/line-total rows. */
#cart-drawer { width: min(100vw, 560px); max-height: 100dvh; overflow: hidden; box-shadow: -12px 0 48px rgb(73 60 53 / 14%); }
#cart-drawer .drawer__header { flex: none; padding: 22px 24px 18px; border-bottom: 1px solid var(--bottega-border); background: var(--bottega-surface); }
#cart-drawer .drawer__header>div { align-items: center; gap: 12px; min-height: 44px; padding-right: 48px; }
#cart-drawer .drawer__header h2 { font-size: 26px; font-weight: 650; line-height: 1.2; }
#cart-drawer .drawer__count { padding: 4px 9px; border-radius: var(--bottega-control-radius); background: var(--bottega-surface-soft); color: var(--bottega-text-muted); font-size: 14px; font-weight: 500; white-space: nowrap; }
#cart-drawer .drawer__close { top: 22px; right: 20px; width: 44px; height: 44px; border: 0; background: transparent; color: var(--bottega-text); }
#cart-drawer .drawer__shipping { flex: none; margin: 16px 24px 0; padding: 14px 16px; border: 0; border-radius: 16px; background: var(--bottega-surface-soft); }
#cart-drawer .drawer__shipping p { gap: 9px; margin-bottom: 10px; color: var(--bottega-text-muted); font-size: 15px; line-height: 1.4; }
#cart-drawer .drawer__shipping p strong { color: var(--bottega-text); font-weight: 600; }
#cart-drawer .drawer__shipping .icon { flex: none; color: var(--bottega-accent); }
#cart-drawer .drawer__shipping-track { height: 4px; background: var(--bottega-border); }
#cart-drawer .drawer__shipping-track>span { background: var(--bottega-accent); }
#cart-drawer .drawer__content { flex: 1 1 auto; min-height: 0; padding: 0 24px; background: var(--bottega-surface); }
#cart-drawer .drawer__item { grid-template-columns: 64px minmax(0, 1fr); gap: 8px 12px; padding: 12px 0; border-color: var(--bottega-border); }
#cart-drawer .drawer__item-media { grid-row: 1 / span 2; width: 64px; height: 72px; border-radius: 12px; background: var(--bottega-surface-soft); }
#cart-drawer .drawer__item-media img { width: 60px; height: 68px; padding: 2px; }
#cart-drawer .drawer__item-main { grid-column: 2; grid-row: 1; display: block; min-width: 0; }
#cart-drawer .drawer__item-heading { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: start; gap: 8px; padding: 0; }
#cart-drawer .drawer__item h3 { padding-top: 4px; font-size: 16px; line-height: 1.4; font-weight: 600; letter-spacing: -.015em; overflow-wrap: anywhere; }
#cart-drawer .drawer__item h3 a { display: block; overflow: visible; -webkit-line-clamp: unset; }
#cart-drawer .drawer__remove { position: static; width: 44px; height: 44px; border: 0; background: transparent; color: var(--bottega-text-muted); }
#cart-drawer .drawer__remove .icon { width: 18px; height: 18px; }
#cart-drawer .drawer__item-meta { display: flex; flex-wrap: wrap; gap: 2px 12px; margin-top: 3px; }
#cart-drawer .drawer__item-size,#cart-drawer .drawer__item-unit { margin: 0; color: var(--bottega-text-muted); font-size: 14px; line-height: 1.45; }
#cart-drawer .drawer__item-gifts { grid-column: 1 / -1; min-width: 0; }
#cart-drawer .drawer__item-gifts:empty { display: none; }
#cart-drawer .drawer__item-actions { grid-column: 2; grid-row: 2; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; margin: 0; }
#cart-drawer .qty-control { flex: none; height: 44px; min-height: 44px; border-color: var(--bottega-border); border-radius: var(--bottega-control-radius); background: var(--bottega-surface); }
#cart-drawer .qty-control button { width: 44px; height: 42px; min-height: 42px; background: transparent; color: var(--bottega-text); }
#cart-drawer .qty-control span { min-width: 28px; font-size: 16px; font-weight: 600; }
#cart-drawer .qty-control button:disabled { opacity: .4; cursor: not-allowed; }
#cart-drawer .drawer__item-price { flex: 1 1 130px; min-width: 0; gap: 4px; margin: 0; display: grid; justify-items: end; text-align: right; }
#cart-drawer .drawer__item-amount { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-end; gap: 4px 8px; }
#cart-drawer .drawer__item-price strong { color: var(--bottega-text); font-size: 20px; font-weight: 650; line-height: 1.2; }
#cart-drawer .drawer__item-price.is-sale strong { color: var(--bottega-accent); }
#cart-drawer .drawer__item-price del { color: var(--bottega-text-muted); font-size: 14px; }
#cart-drawer .drawer__item-price .product-price__tax-note { white-space: normal; font-size: 14px; font-weight: 400; line-height: 1.3; }
#cart-drawer .drawer__footer { flex: none; max-height: 50dvh; overflow-y: auto; overscroll-behavior: contain; padding: 20px 24px max(18px, env(safe-area-inset-bottom)); border-color: var(--bottega-border); background: var(--bottega-surface); box-shadow: none; }
#cart-drawer .drawer__line { gap: 16px; font-size: 18px; font-weight: 500; line-height: 1.35; }
#cart-drawer .drawer__line strong { flex: none; font-size: 24px; font-weight: 650; }
#cart-drawer .drawer__saving { margin-top: 8px; padding: 0; border-radius: 0; background: transparent; color: var(--bottega-accent); font-size: 15px; font-weight: 500; }
#cart-drawer .drawer__saving strong { font-size: 15px; font-weight: 600; }
#cart-drawer .drawer__footer>p { margin: 10px 0 16px; color: var(--bottega-text-muted); font-size: 14px; line-height: 1.45; }
#cart-drawer .drawer__footer-actions { grid-template-columns: minmax(0, 1fr); gap: 6px; }
#cart-drawer .drawer__footer .button--primary { grid-row: auto; min-height: 48px; padding: 12px 20px; border-radius: var(--bottega-control-radius); background: var(--bottega-accent); font-size: 16px; font-weight: 600; }
#cart-drawer .drawer__continue { grid-row: auto; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin: 0; padding: 8px 16px; border: 0; border-radius: var(--bottega-control-radius); background: transparent; color: var(--bottega-text-muted); font: 500 16px/1.4 var(--bottega-font-family); cursor: pointer; }
@media (hover: hover) {
  #cart-drawer .drawer__close:hover,#cart-drawer .drawer__remove:hover,#cart-drawer .qty-control button:hover:not(:disabled),#cart-drawer .drawer__continue:hover { background: var(--bottega-surface-soft); color: var(--bottega-accent-hover); transform: none; }
  #cart-drawer .drawer__footer .button--primary:hover { background: var(--bottega-accent-hover); }
}
@media (max-width: 400px) {
  #cart-drawer .drawer__header { padding: 16px 18px; }
  #cart-drawer .drawer__close { top: 16px; right: 14px; }
  #cart-drawer .drawer__header h2 { font-size: 24px; }
  #cart-drawer .drawer__shipping { margin-inline: 18px; }
  #cart-drawer .drawer__content { padding-inline: 18px; }
  #cart-drawer .drawer__item { grid-template-columns: 56px minmax(0, 1fr); gap: 8px 10px; }
  #cart-drawer .drawer__item-media { width: 56px; height: 64px; }
  #cart-drawer .drawer__item-media img { width: 52px; height: 60px; }
  #cart-drawer .drawer__footer { padding-inline: 18px; }
}

.toast.toast--success, .toast.toast--error {
  display: flex;
  align-items: center;
  gap: 12px;
  right: max(5vw, calc((100vw - var(--bottega-content-max)) / 2));
  top: var(--toast-top, 16px);
  bottom: auto;
  width: min(440px, var(--bottega-content-width));
  max-width: none;
  padding: 16px;
  border: 1px solid var(--bottega-border);
  border-radius: 18px;
  background: #fff;
  color: var(--bottega-text);
  font-family: var(--bottega-font-family);
  font-size: var(--bottega-font-control);
  line-height: 1.5;
  box-shadow: 0 8px 28px rgb(36 29 23 / .12);
  opacity: 0;
  transform: translateY(-16px);
  transition: opacity .2s ease, transform .3s cubic-bezier(.2, .7, .3, 1);
}
.toast.toast--success.is-visible, .toast.toast--error.is-visible { opacity: 1; transform: translateY(0); }
.toast.is-visible { pointer-events: auto; }
.toast .toast__action { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; border-radius: inherit; background: transparent; box-shadow: none; cursor: pointer; appearance: none; }
.toast .toast__action:focus-visible { outline: 2px solid var(--bottega-accent); outline-offset: 3px; }
.toast__symbol { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--bottega-surface-selected); color: var(--bottega-accent); }
.toast__symbol svg { width: 22px; height: 22px; }
.toast--error .toast__symbol { background: #f8e8e1; color: #9a3d2d; }
.toast__message { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.toast .toast__close { position: relative; z-index: 1; display: grid; place-items: center; align-self: flex-start; flex: 0 0 44px; width: 44px; height: 44px; padding: 10px; border: 0; border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.toast .toast__close:is(:hover, :focus-visible) { background: var(--bottega-surface-selected); }
.toast .toast__close .icon { width: 20px; height: 20px; }
@media (prefers-reduced-motion: reduce) { .toast.toast--success, .toast.toast--error { transform: none; transition: none; } }

.legal-page {
  background: var(--bottega-surface);
  padding-block: 10px;
}

.legal-page__header {
  background: var(--bottega-surface-soft);
  border-radius: 6px;
  padding: 28px;
}

.legal-page__header h1 {
  font-size: 37px;
}

.legal-page__body {
  font-size: 17px;
  color: #5e6f50;
}

.legal-page__body h2 {
  font-size: 25px;
}

.compare-page {
  background: var(--bottega-surface);
}

.compare-page h1 {
  color: var(--bottega-text);
}

.compare-table th,.compare-table td {
  border-color: #e0e7d5;
  font-size: 15px;
}

.compare-table__product {
  background: var(--bottega-surface-soft);
}

.bottega-article {
  max-width: none;
  margin-inline: auto;
}

.bottega-article h1 {
  font-size: 40px;
  line-height: 1.15;
  margin: 0 0 23px;
}

.bottega-article p,.bottega-article li {
  font-size: 18px;
  line-height: 1.75;
  color: #5f6f51;
}

.bottega-article h2 {
  font-size: 26px;
}

.bottega-article>img {
  width: 100%;
  aspect-ratio: 1.8;
  object-fit: cover;
  border-radius: 6px;
  margin-bottom: 31px;
}

.bottega-article .bottega-lead {
  font-size: 21px;
  color: var(--bottega-text);
}

.bottega-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  color: var(--bottega-text-muted);
  font-size: 14px;
  margin-bottom: 25px;
}

.bottega-breadcrumbs a:hover {
  text-decoration: underline;
}

.bottega-brand-count {
  margin: 0 0 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--bottega-border);
  color: var(--bottega-text-muted);
  font-size: var(--bottega-font-meta);
}

.bottega-brand-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
  gap: 28px 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.bottega-brand-grid > li { min-width: 0; }

.bottega-brand-card {
  border: 0;
  background: transparent;
  padding: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  text-decoration: none;
}

.bottega-brand-card strong {
  font-size: clamp(24px, 2vw, 30px);
  letter-spacing: -.03em;
}

.bottega-brand-card > .bottega-brand-card__footer {
  font-size: var(--bottega-font-meta);
  color: var(--bottega-text-muted);
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 0 4px;
}

.bottega-brand-card .icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--bottega-accent);
}

.brand-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  max-width: 100%;
  color: var(--bottega-text);
}
.brand-mark img {
  display: block;
  width: 100%;
  max-width: 220px;
  height: 88px;
  object-fit: contain;
  object-position: center;
}
.brand-mark strong { line-height: 1.35; overflow-wrap: anywhere; }
.bottega-brand-card > .brand-mark {
  min-height: 180px;
  padding: 24px;
  border: 1px solid var(--bottega-border);
  border-radius: 18px;
  background: #fff;
  text-align: center;
  transition: border-color .18s ease;
}
.bottega-brand-card .brand-mark img { max-width: 220px; height: 110px; }
.bottega-brand-card:hover, .bottega-brand-card:focus-visible { text-decoration: none; }
.bottega-brand-card:hover > .brand-mark, .bottega-brand-card:focus-visible > .brand-mark { border-color: var(--bottega-accent); }
.bottega-brands .brand-mark { width: 100%; min-height: 80px; }
.bottega-brands .brand-mark img { max-width: 180px; height: 72px; }
.bottega-brands .brand-mark strong { font-size: inherit; font-weight: inherit; }

.bottega-checkout {
  max-width: none;
  margin: 0 auto;
}

.bottega-checkout h1 {
  font-size: 38px;
  line-height: 1.2;
  margin: 0 0 10px;
}

.bottega-checkout__intro {
  font-size: 17px;
  color: #647357;
  margin: 0 0 31px;
}

.bottega-checkout__layout {
  display: grid;
  grid-template-columns: minmax(0,1.5fr) minmax(280px,.85fr);
  gap: 35px;
}

.bottega-cart-item {
  display: grid;
  grid-template-columns: 88px minmax(0,1fr) auto;
  gap: 19px;
  padding: 23px 0;
  border-bottom: 1px solid var(--line);
}

.bottega-cart-item:first-child {
  padding-top: 0;
}

.bottega-cart-item__image {
  height: 115px;
  background: var(--bottega-surface-soft);
  border-radius: 5px;
  padding: 12px;
  display: grid;
  place-items: center;
}

.bottega-cart-item__image img {
  width: 100%;
  height: 90px;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.bottega-cart-item h2 {
  font-size: 18px;
  line-height: 1.35;
  margin: 0 0 7px;
}

.bottega-cart-item p {
  font-size: 14px;
  color: #738466;
  margin: 0 0 12px;
}

.bottega-cart-item>div:last-child {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 20px;
  font-size: 17px;
  white-space: nowrap;
}

.bottega-cart-item>div:last-child button {
  border: 0;
  background: none;
  min-height: 44px;
  min-width: 44px;
  display: grid;
  place-items: center;
  color: #7b8b6f;
}

.bottega-order-summary {
  background: var(--bottega-surface-soft);
  border-radius: 6px;
  padding: 27px;
  height: max-content;
}

.bottega-order-summary h2 {
  font-size: 23px;
  margin: 0 0 24px;
}

.bottega-order-summary dl {
  margin: 0;
}

.bottega-order-summary dl>div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-block: 16px;
  font-size: 16px;
}

.bottega-order-summary dt,.bottega-order-summary dd {
  margin: 0;
}

.bottega-order-summary .bottega-order-total {
  border-top: 1px solid #d8e2cd;
  padding-top: 20px;
  margin-top: 22px;
  font-weight: 600;
  font-size: 21px;
}

.bottega-order-summary .button {
  width: 100%;
  background: var(--bottega-accent);
  border-color: var(--bottega-accent);
  margin-top: 17px;
}

.bottega-order-summary p {
  font-size: 14px;
  color: #6d7e5f;
  margin: 17px 0 0;
}

.bottega-local-note {
  padding: 18px 20px;
  background: var(--bottega-surface-soft);
  border-left: 2px solid #aab99a;
  border-radius: 0 5px 5px 0;
  font-size: 16px;
  line-height: 1.7;
  color: #5d7150;
  margin-top: 25px;
}

.bottega-review-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 27px;
}

.bottega-review-actions>.button {
  flex: 1;
}

.bottega-review-row {
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: 17px;
}

.bottega-review-row span {
  color: #617656;
}

.bottega-success-icon {
  height: 63px;
  width: 63px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #eaf1e0;
  color: #627d4e;
  margin-bottom: 27px;
}

.bottega-success-icon .icon {
  width: 30px;
  height: 30px;
}

.bottega-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 25px;
}

.bottega-contact-grid>div {
  background: var(--bottega-surface-soft);
  padding: 25px;
  border-radius: 6px;
}

.bottega-contact-grid a {
  color: var(--bottega-accent);
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}

.bottega-contact-grid h2 {
  font-size: 22px;
}

.bottega-contact-grid p {
  font-size: 17px;
  color: #697d5c;
}

@media (min-width:1600px) {

  .bottega-product__media {
    height: 260px;
  }

  .bottega-categories>a>span:first-child {
    height: 130px;
  }

  .bottega-categories img {
    height: 100px;
  }
}

@media (max-width:1250px) {
  .bottega-brand {
    width: var(--bottega-sidebar-width);
  }

  .bottega-layout--sidebar,.bottega-main .catalog-shell {
    grid-template-columns: var(--bottega-sidebar-width) minmax(0, 1fr);
    gap: var(--bottega-layout-gap);
  }

  .bottega-sidebar {
    padding-right: 17px;
  }

  .bottega-sidebar nav a {
    font-size: var(--bottega-font-control);
    gap: 8px;
  }

  .bottega-product__media {
    height: 213px;
  }

  .bottega-product__media img {
    padding-inline: 20px;
  }

  .bottega-product__add {
    font-size: var(--bottega-font-control);
  }

  .bottega-product h3 {
    font-size: 17px;
  }

  .bottega-product__size {
    font-size: var(--bottega-font-control);
  }

  .bottega-categories {
    gap: 11px;
  }

  .bottega-categories>a>span:first-child {
    height: 105px;
  }

  .bottega-categories img {
    height: 81px;
  }

  .bottega-categories strong {
    font-size: var(--bottega-font-control);
  }

  .bottega-intro>span {
    display: none;
  }

  .bottega-brands a {
    font-size: 19px;
  }

  .bottega-brands a:nth-child(3) {
    font-size: 17px;
  }

  .bottega-benefits span {
    font-size: 14px;
  }

  .bottega-benefits small {
    font-size: var(--bottega-font-meta);
  }

  .product-detail__grid {
    gap: 27px;
  }

  .product-detail h1 {
    font-size: 30px;
  }

  .product-gallery__main {
    height: 350px;
    min-height: 350px;
  }

  .product-detail__buy>.button {
    font-size: var(--bottega-font-control);
  }

  .product-detail__wishlist span {
    display: none;
  }
}

@media (max-width:1050px) {

  .bottega-layout--sidebar,.bottega-main .catalog-shell {
    grid-template-columns: var(--bottega-sidebar-width) minmax(0, 1fr);
    gap: var(--bottega-layout-gap);
  }

  .bottega-brand {
    width: var(--bottega-sidebar-width);
  }

  .bottega-sidebar {
    padding-right: 16px;
  }

  .bottega-sidebar nav a>span:last-child:not(:first-child) {
    display: none;
  }

  .bottega-sidebar nav a {
    font-size: var(--bottega-font-control);
    line-height: 1.4;
  }

  .bottega-sidebar .icon {
    width: 17px;
    height: 17px;
  }

  .bottega-products,.catalog-products.is-grid-4 {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .bottega-categories {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px 13px;
  }

  .bottega-categories>a>span:first-child {
    height: 115px;
  }

  .bottega-categories img {
    height: 90px;
  }

  .bottega-categories strong {
    font-size: var(--bottega-font-control);
  }

  .bottega-eyebrow {
    font-size: var(--bottega-font-meta);
  }

  .bottega-product__media {
    height: 200px;
  }

  .bottega-section__heading h2 {
    font-size: 24px;
  }

  .bottega-section__heading>a {
    font-size: var(--bottega-font-meta);
  }

  .bottega-brands {
    grid-template-columns: repeat(3,1fr);
  }

  .bottega-brands>a:nth-child(n+4) {
    display: none;
  }

  .bottega-benefits small {
    display: none;
  }

  .bottega-footer__grid {
    gap: 23px;
    grid-template-columns: 1.2fr 1fr 1fr;
  }

  .bottega-footer__brand {
    grid-column: 1/-1;
  }

  .bottega-footer__brand p {
    max-width: none;
    margin-bottom: 10px;
  }

  .product-detail__grid {
    grid-template-columns: 1fr;
  }

  .product-gallery__main {
    height: 400px;
  }

  .product-detail h1 {
    font-size: 35px;
  }

  .product-detail__desc {
    font-size: var(--bottega-font-body);
  }

  .product-detail__buy>.button {
    font-size: 16px;
  }

  .product-detail__wishlist span {
    display: inline;
  }

  .product-related .editorial-product-grid,.product-related .product-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .catalog-view button[data-view=grid-6] {
    display: none;
  }

  .catalog-products.is-grid-5,.catalog-products.is-grid-6 {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .bottega-checkout__layout {
    gap: 26px;
    grid-template-columns: minmax(0,1.2fr) minmax(270px,.8fr);
  }

  .bottega-cart-item {
    grid-template-columns: 65px minmax(0,1fr) auto;
    gap: 13px;
  }

  .bottega-cart-item h2 {
    font-size: 16px;
  }

  .bottega-cart-item__image {
    padding: 8px;
    height: 93px;
  }

  .bottega-cart-item__image img {
    height: 77px;
  }

  .bottega-cart-item>div:last-child {
    font-size: 15px;
  }

  .bottega-intro h1 {
    font-size: 29px;
  }
}

@media (max-width:760px) {

  .bottega-brand {
    width: auto;
    flex: 1;
  }

  .bottega-brand img {
    width: 107px;
    height: 59px;
  }

  .bottega-layout,.bottega-layout--sidebar {
    display: block;
    padding-top: 25px;
    padding-bottom: 45px;
  }

  .bottega-sidebar {
    display: none;
  }

  .bottega-intro {
    margin-bottom: 22px;
  }

  .bottega-intro h1 {
    font-size: 28px;
    margin-bottom: 9px;
  }

  .bottega-intro p {
    font-size: var(--bottega-font-body);
  }

  .bottega-eyebrow {
    font-size: var(--bottega-font-meta);
    line-height: 1.4;
    margin-bottom: 14px;
  }

  .bottega-section {
    margin-top: 33px;
  }

  .bottega-section__heading {
    margin-bottom: 20px;
    gap: 15px;
  }

  .bottega-section__heading h2 {
    font-size: 24px;
  }

  .bottega-section__heading>a {
    font-size: var(--bottega-font-meta);
    gap: 6px;
  }

  .bottega-categories {
    gap: 18px 12px;
  }

  .bottega-categories>a>span:first-child {
    height: 112px;
  }

  .bottega-categories img {
    height: 86px;
  }

  .bottega-categories strong {
    font-size: var(--bottega-font-control);
  }

  .bottega-products,.catalog-products.is-grid-4,.catalog-products.is-grid-5,.catalog-products.is-grid-6 {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px 15px;
  }

  .bottega-product__media {
    height: 235px;
  }

  .bottega-product__media img {
    padding: 37px 23px 18px;
  }

  .bottega-product h3 {
    font-size: 17px;
  }

  .bottega-product__brand {
    font-size: var(--bottega-font-control);
  }

  .bottega-product__size {
    font-size: var(--bottega-font-control);
  }

  .bottega-product__category {
    font-size: var(--bottega-font-control);
  }

  .bottega-product .product-price strong {
    font-size: 23px;
  }

  .bottega-product__actions {
    gap: 6px;
  }

  .bottega-product__add {
    font-size: var(--bottega-font-control);
    gap: 7px;
    padding-inline: 7px;
  }

  .bottega-product__status {
    font-size: var(--bottega-font-meta);
    line-height: 1.4;
  }

  .bottega-product__unit {
    font-size: var(--bottega-font-control);
  }

  .bottega-benefits {
    gap: 16px;
    padding-block: 22px;
    margin-top: 31px;
  }

  .bottega-benefits>div {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .bottega-benefits .icon {
    height: 23px;
    width: 23px;
  }

  .bottega-benefits span {
    font-size: 14px;
  }

  .bottega-brands {
    gap: 12px;
    padding-block: 21px;
  }

  .bottega-brands a {
    font-size: 18px;
  }

  .bottega-brands a:nth-child(3) {
    font-size: 17px;
  }

  .bottega-editorial {
    gap: 20px;
  }

  .bottega-editorial img {
    aspect-ratio: 1.5;
    margin-bottom: 15px;
  }

  .bottega-editorial h3 {
    font-size: 22px;
  }

  .bottega-editorial p {
    font-size: var(--bottega-font-body);
  }

  .bottega-editorial__meta {
    font-size: var(--bottega-font-meta);
    flex-wrap: wrap;
    gap: 5px;
  }

  .bottega-editorial__link {
    font-size: var(--bottega-font-control);
  }

  .bottega-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 25px 22px;
    padding-block: 32px;
  }

  .bottega-footer__brand strong {
    font-size: 24px;
  }

  .bottega-footer__brand p {
    font-size: 16px;
  }

  .bottega-footer__grid>div>a {
    font-size: var(--bottega-font-control);
    min-height: 40px;
  }

  .bottega-footer__bottom {
    font-size: var(--bottega-font-meta);
    flex-wrap: wrap;
    gap: 10px;
    padding-block: 18px;
  }

  .bottega-tabs {
    gap: 7px;
  }

  .bottega-tabs button {
    font-size: var(--bottega-font-control);
    padding: 10px 14px;
  }

  .bottega-main .catalog-shell {
    display: block;
  }

  .catalog-content>h1 {
    font-size: 31px;
  }

  .catalog-result-count {
    font-size: 14px;
  }

  .catalog-intro-copy {
    font-size: var(--bottega-font-body);
  }

  .catalog-system-filter {
    padding: 17px;
  }

  .catalog-system-filter__heading h2 {
    font-size: 18px;
  }

  .catalog-system-filter__heading>span {
    font-size: 14px;
  }

  .catalog-system-filter__options {
    gap: 7px;
  }

  .catalog-system-filter__options button {
    font-size: var(--bottega-font-control);
    padding: 8px 10px;
    min-height: 46px;
  }

  .catalog-system-filter__options button>svg {
    max-width: 23px;
    max-height: 23px;
  }

  .catalog-toolbar__select {
    font-size: var(--bottega-font-meta);
  }

  .catalog-toolbar select {
    font-size: var(--bottega-font-control);
    max-width: 175px;
  }

  .catalog-view button[data-view=grid-5],.catalog-view button[data-view=grid-4] {
    display: none;
  }

  .catalog-products.is-list .bottega-product {
    grid-template-columns: 120px minmax(0,1fr);
    gap: 15px;
  }

  .catalog-products.is-list .bottega-product__media {
    height: 190px;
  }

  .catalog-products.is-list .bottega-product__body {
    padding-bottom: 55px;
  }

  .catalog-products.is-list .bottega-product__actions {
    width: 100%;
  }

  .catalog-pagination a {
    font-size: var(--bottega-font-control);
  }

  .product-detail__grid {
    gap: 25px;
  }

  .product-gallery {
    padding: 20px;
  }

  .product-gallery__main {
    height: 330px;
    min-height: 330px;
  }

  .product-detail h1 {
    font-size: 34px;
    line-height: 1.17;
  }

  .product-detail__brand {
    font-size: 15px;
  }

  .product-detail__subtitle {
    font-size: 15px;
  }

  .product-detail__desc {
    font-size: var(--bottega-font-body);
  }

  .conversion-breadcrumbs {
    font-size: 14px;
    gap: 7px;
    margin-bottom: 23px;
  }

  .product-detail__buy>.button {
    font-size: 16px;
  }

  .product-tabs__list button {
    font-size: 16px;
    padding-inline: 14px;
  }

  .product-tabs__panel {
    font-size: 17px;
  }

  .product-related .editorial-product-grid,.product-related .product-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 25px 15px;
  }

  .mobile-purchase-bar {
    bottom: 58px;
    gap: 12px;
    padding: 12px 16px;
  }

  .mobile-purchase-bar .button {
    min-height: 44px;
    font-size: var(--bottega-font-control);
  }

  .mobile-purchase-bar .price strong {
    font-size: 23px;
  }

  .mobile-purchase-bar .price .product-price__tax-note {
    font-size: var(--bottega-font-meta);
  }

  .bottega-site[data-page=product] .bottega-layout {
    padding-bottom: 90px;
  }

  .product-detail__selling-points b {
    font-size: 15px;
  }

  .product-detail__selling-points small {
    font-size: 14px;
  }

  .bottega-checkout__layout {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .bottega-checkout h1 {
    font-size: 32px;
  }

  .bottega-cart-item {
    grid-template-columns: 70px minmax(0,1fr) auto;
    gap: 12px;
  }

  .bottega-cart-item h2 {
    font-size: 16px;
  }

  .bottega-cart-item p {
    font-size: 14px;
  }

  .bottega-cart-item>div:last-child {
    font-size: 15px;
  }

  .bottega-order-summary {
    padding: 24px;
  }

  .bottega-article h1 {
    font-size: 34px;
  }

  .bottega-article p,.bottega-article li {
    font-size: 18px;
  }

  .bottega-article .bottega-lead {
    font-size: 20px;
  }

  .bottega-article>img {
    aspect-ratio: 1.55;
    margin-bottom: 27px;
  }

  .bottega-breadcrumbs {
    font-size: 14px;
  }

  .bottega-brand-grid {
    gap: 24px 16px;
  }

  .bottega-brand-card strong {
    font-size: 24px;
  }

  .bottega-contact-grid {
    grid-template-columns: 1fr;
  }

  .legal-page__header {
    padding: 23px;
  }

  .legal-page__header h1 {
    font-size: 32px;
  }

  .drawer__header h2 {
    font-size: 28px;
  }

  .drawer__item-heading h3 {
    font-size: 16px;
  }

  .drawer__item-size,.drawer__item-unit {
    font-size: 14px;
  }
}

@media (max-width:420px) {

  .bottega-eyebrow {
    font-size: 14px;
    margin-bottom: 17px;
  }

  .bottega-section__heading h2 {
    font-size: 23px;
  }

  .bottega-section__heading>a {
    font-size: var(--bottega-font-meta);
  }

  .bottega-product__media {
    height: 210px;
  }

  .bottega-product h3 {
    font-size: 17px;
  }

  .bottega-product__size {
    font-size: var(--bottega-font-control);
  }

  .bottega-categories>a>span:first-child {
    height: 97px;
  }

  .bottega-categories img {
    height: 79px;
  }

  .bottega-product__add span {
    font-size: var(--bottega-font-control);
  }

  .bottega-product__status {
    font-size: var(--bottega-font-meta);
  }

  .bottega-product__category {
    font-size: var(--bottega-font-control);
  }

  .bottega-product__unit {
    font-size: var(--bottega-font-control);
  }

  .bottega-editorial {
    grid-template-columns: 1fr;
    gap: 27px;
  }

  .bottega-editorial img {
    aspect-ratio: 1.9;
  }

  .bottega-editorial h3 {
    font-size: 25px;
  }

  .bottega-editorial p {
    font-size: var(--bottega-font-body);
  }

  .bottega-editorial__meta {
    font-size: 14px;
    flex-wrap: nowrap;
  }

  .product-gallery__main {
    height: 285px;
    min-height: 285px;
  }

  .product-detail h1 {
    font-size: 32px;
  }

  .product-detail__buy>.button {
    font-size: var(--bottega-font-control);
    padding-inline: 13px;
  }

  .product-detail__wishlist {
    padding-inline: 10px;
  }

  .qty-control button {
    width: 32px;
  }

  .bottega-cart-item {
    grid-template-columns: 57px minmax(0,1fr) auto;
    gap: 10px;
  }

  .bottega-cart-item__image {
    padding: 5px;
  }

  .bottega-cart-item h2 {
    font-size: 15px;
  }

  .bottega-cart-item>div:last-child {
    font-size: 14px;
  }

  .bottega-tabs button {
    font-size: var(--bottega-font-control);
    padding-inline: 12px;
  }

  .bottega-products,.catalog-products.is-grid-4,.catalog-products.is-grid-5,.catalog-products.is-grid-6 {
    gap: 25px 13px;
  }

  .bottega-brand-card strong {
    font-size: 19px;
  }

  .catalog-system-filter__options button {
    font-size: var(--bottega-font-control);
  }

  .bottega-brands a {
    font-size: 16px;
  }

  .bottega-brands a:nth-child(3) {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}

/* Produktinformationen und Empfehlungen verwenden die bestehenden React-Bausteine. */

.bottega-site .product-detail__below {
  margin-top: 38px;
  display: block;
}

.bottega-site .product-information {
  border-top: 1px solid var(--line);
  background: var(--bottega-surface);
  padding-top: 0;
}

.bottega-site .product-information__content {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(24px, 3vw, 48px);
  background: var(--bottega-surface);
  border: 0;
  padding: 32px 0;
}

.bottega-site .product-information__panel {
  min-width: 0;
  font-size: 18px;
  line-height: 1.7;
  color: #5f7052;
  overflow-wrap: anywhere;
}

.bottega-site .product-information__panel > h2 {
  margin: 0 0 24px;
  font-weight: 600;
}

.bottega-site .product-information__panel--details {
  padding-left: clamp(24px, 3vw, 48px);
  border-left: 1px solid var(--bottega-border);
}

.bottega-site .product-information__panel h2,.bottega-site .product-information__panel h3 {
  font-size: 24px;
  color: var(--bottega-text);
  line-height: 1.3;
}

.bottega-site .product-information__panel p,.bottega-site .product-information__panel li {
  font-size: var(--bottega-font-body);
  line-height: 1.7;
}

.bottega-site .product-information__panel dl>div {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 12px 24px;
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
  font-size: 16px;
}

.bottega-site .product-information__panel dd {
  min-width: 0;
  margin: 0;
  text-align: left;
}

.bottega-site .product-information__panel dt {
  color: #748567;
}

.bottega-site .product-related {
  margin-top: 30px;
  border-top: 1px solid var(--line);
  padding-top: 27px;
}

.bottega-site .product-related__heading {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  margin-bottom: 22px;
}

.bottega-site .product-related__heading h2 {
  font-size: 26px;
  margin: 0;
}

.bottega-site .product-related__heading > a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--bottega-accent); font-family: var(--bottega-font-family); font-size: var(--bottega-font-control); }

.bottega-site .product-related__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--bottega-catalog-card-min)), 1fr));
  gap: 28px 20px;
  margin-top: 0;
}

.bottega-site .product-specifications {
  margin-top: 28px;
  border: 1px solid var(--bottega-border);
  border-radius: 20px;
  background: #fff;
  color: var(--bottega-text);
  font-size: var(--bottega-font-control);
}

.bottega-site .product-specifications > summary {
  gap: 20px;
  min-height: 64px;
  padding: 18px 22px;
  border-radius: inherit;
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font-family: var(--bottega-font-family);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.bottega-site .product-specifications[open] > summary {
  border-bottom: 1px solid var(--bottega-border);
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.bottega-site .product-specifications > summary:hover {
  background: var(--bottega-surface-selected);
}

.bottega-site .product-specifications > summary::after {
  content: "";
  flex: 0 0 10px;
  width: 10px;
  height: 10px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}

.bottega-site .product-specifications[open] > summary::after {
  transform: rotate(225deg);
}

.bottega-site .product-specifications dl {
  margin: 0;
  padding: 0 22px 6px;
}

.bottega-site .product-specifications dl > div {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 8px 24px;
  padding: 14px 0;
  border-top: 1px solid var(--bottega-border);
}

.bottega-site .product-specifications dl > div:first-child {
  border-top: 0;
}

.bottega-site .product-specifications dt,
.bottega-site .product-specifications dd {
  min-width: 0;
  margin: 0;
  font-size: var(--bottega-font-control);
  font-weight: 500;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.bottega-site .product-specifications dt { color: var(--bottega-text-muted); }
.bottega-site .product-specifications dd { color: var(--bottega-text); }

@media (max-width: 600px) {
  .bottega-site .product-specifications > summary { padding: 16px 18px; }
  .bottega-site .product-specifications dl { padding-inline: 18px; }
  .bottega-site .product-specifications dl > div { grid-template-columns: minmax(0, 1fr); gap: 3px; }
}

.bottega-site .product-availability-alternatives {
  border: 1px solid #dfe7d4;
  border-radius: 6px;
  background: var(--bottega-surface-soft);
  padding: 20px;
}

.bottega-site .product-availability-alternatives h2 {
  font-size: 23px;
}

.bottega-site .product-availability-alternatives__item {
  border-color: #dfe8d2;
  background: var(--bottega-surface);
  border-radius: 5px;
}

.bottega-site .product-availability-alternatives__copy strong {
  font-size: 16px;
}

.bottega-site .product-availability-alternatives__media {
  background: var(--bottega-surface-soft);
}

.bottega-site .product-availability-alternatives__all {
  font-size: var(--bottega-font-control);
  color: #567344;
}

.bottega-site .product-gallery__main {
  padding: 0;
}

.bottega-site .product-detail__grid {
  padding-top: 0;
  align-items: start;
}

.bottega-site .product-detail__grid > .product-specifications { min-width: 0; margin-top: 0; }
@media (min-width: 1051px) {
  .bottega-site .product-detail__grid {
    grid-template-areas: "gallery info" "properties info";
    grid-template-rows: auto minmax(0, 1fr);
    row-gap: 24px;
  }
  .bottega-site .product-detail__grid > .product-gallery { grid-area: gallery; }
  .bottega-site .product-detail__grid > .product-detail__info { grid-area: info; }
  .bottega-site .product-detail__grid > .product-specifications { grid-area: properties; }
}

.bottega-site .product-price__sale {
  color: var(--bottega-accent);
}

  .bottega-site[data-page=product] { --product-bar-clearance: 100px; }
  .bottega-site .mobile-purchase-bar {
    position: fixed;
    z-index: 30;
    left: 50%;
    bottom: max(12px, env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px 44px minmax(0, 1.6fr);
    align-items: center;
    gap: 8px;
    width: min(var(--bottega-content-max), var(--bottega-content-width));
    padding: 10px;
    border: 1px solid var(--bottega-border);
    border-radius: 20px;
    background: var(--bottega-surface);
    box-shadow: 0 4px 24px rgb(36 29 23 / .12);
    transform: translateX(-50%);
  }
  .bottega-site .mobile-purchase-bar > span { min-width: 0; }
  .bottega-site .mobile-purchase-bar > .price { white-space: normal; }
  .bottega-site .mobile-purchase-bar .button { min-width: 0; padding: 10px 12px; line-height: 1.3; white-space: normal; text-align: center; }
  .bottega-site .mobile-purchase-bar__wishlist { width: 44px; height: 44px; border-radius: 50%; }
  .bottega-site .mobile-purchase-bar .product-detail__compare { width: 44px; height: 44px; min-height: 44px; padding: 0; border-radius: 50%; }

  .bottega-site[data-page=product] .bottega-layout {
    padding-bottom: var(--product-bar-clearance);
  }
  .bottega-site[data-page=product] > footer { padding-bottom: var(--product-bar-clearance); }
.product-purchase-bar__product, .product-purchase-bar__quantity { display: none; }
@media (min-width: 951px) {
  .bottega-site .product-purchase-bar { grid-template-columns: minmax(0, 1fr) auto 132px 44px 44px minmax(180px, auto); gap: 12px; width: min(1240px, var(--bottega-content-width)); padding: 12px 16px; }
  .bottega-site .product-purchase-bar.mobile-purchase-bar--alternatives { grid-template-columns: minmax(0, 1fr) auto 44px 44px minmax(180px, auto); }
  .product-purchase-bar__product { display: flex; align-items: center; gap: 12px; min-width: 0; }
  .product-purchase-bar__product > img { flex: 0 0 44px; width: 44px; height: 56px; object-fit: contain; }
  .product-purchase-bar__product > span { min-width: 0; }
  .product-purchase-bar__product small { display: block; margin-bottom: 2px; color: var(--bottega-text-muted); font-size: 14px; line-height: 1.4; }
  .product-purchase-bar__product strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.4; }
  .bottega-site .product-purchase-bar__quantity { display: inline-grid; grid-template-columns: 44px 1fr 44px; width: 132px; min-height: 44px; margin: 0; }
  .product-purchase-bar__quantity button { width: 44px; height: 44px; padding: 0; }
  .bottega-site .product-purchase-bar > .price { font-size: 20px; }
  .bottega-site .product-purchase-bar .price strong { font-size: 22px; }
}
@media (max-width: 950px) {
  .bottega-site[data-page=product]:has(:is(input:not([type=checkbox]):not([type=radio]):not([type=range]), textarea, select):focus) .product-purchase-bar { visibility: hidden; pointer-events: none; }
}
@media (max-width:520px) {
  .bottega-site[data-page=product] { --product-bar-clearance: 160px; }
  .bottega-site .mobile-purchase-bar { grid-template-columns: minmax(0, 1fr) 44px 44px; }
  .bottega-site .mobile-purchase-bar > :last-child { grid-column: 1 / -1; }
  .bottega-site .mobile-purchase-bar > .button { min-height: 48px; }
}

@media (max-width:760px) {
  .bottega-site .product-information__content {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding-block: 24px;
  }

  .bottega-site .product-information__panel--details {
    padding: 28px 0 0;
    border-left: 0;
    border-top: 1px solid var(--bottega-border);
  }

  .bottega-site .product-information__panel p,.bottega-site .product-information__panel li {
    font-size: var(--bottega-font-body);
  }

  .bottega-site .product-related__heading h2 {
    font-size: 24px;
  }

  .bottega-site .product-information__panel dl>div {
    font-size: 15px;
  }
}

/* Ein gemeinsamer Rahmen für alle Seiten und alle Bildschirmbreiten. */

.bottega-container {
  max-width: var(--bottega-content-max);
}

.bottega-main .container {
  width: 100%;
  max-width: none;
  padding-inline: 0;
}

.bottega-main, .catalog-content, .bottega-product__body {
  min-width: 0;
}

.bottega-article, .bottega-checkout {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.bottega-article p, .bottega-article ul, .bottega-article ol, .legal-page__content p {
  max-width: var(--bottega-reading-width);
}

/* Gemeinsame Bedienrollen: lesbare Schrift, sichtbarer Fokus, wachsende Labels. */

.bottega-site button:not(.bottega-product__tools button), .bottega-site select, .bottega-site input {
  font-size: var(--bottega-font-control);
}

.bottega-site button, .bottega-site select {
  min-height: var(--bottega-control-height);
}

.bottega-site input[type=search], .bottega-site select {
  border-color: var(--bottega-control-border);
}

.bottega-site :is(a[href],button,input,select,textarea,summary,[contenteditable],[tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 2px solid var(--bottega-focus);
  outline-offset: 4px;
}

/* Navigations- und Dialogfokus erzeugt keinen Rahmen um ganze Inhaltsbereiche. */
.bottega-site [tabindex="-1"]:not(:is(a[href],button,input,select,textarea,summary,[contenteditable],[role="button"],[role="tab"])):focus,
:is(.drawer,.search-overlay)[tabindex="-1"]:focus {
  outline: none;
}

.bottega-site button:disabled {
  opacity: 1;
  color: #707769;
  cursor: not-allowed;
}

.bottega-site .button:disabled {
  background: #eef0e8;
  border-color: #d5dacb;
  color: #65705a;
}

.catalog-toolbar {
  flex-wrap: wrap;
  align-items: center;
}

.catalog-sort {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  min-width: 0;
  font-size: var(--bottega-font-control);
}

.catalog-sort__options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.catalog-sort__options button {
  min-height: var(--bottega-control-height);
  padding: 9px 15px;
  border: 1px solid var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: transparent;
  color: var(--bottega-text);
  font: inherit;
  line-height: 1.4;
}

.catalog-sort__options button:hover {
  background: var(--bottega-surface-soft);
}

.catalog-sort__options button[aria-pressed="true"] {
  border-color: var(--bottega-choice-active);
  background: var(--bottega-choice-active);
  color: #fff;
}

.catalog-facets {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px;
  padding-block: 18px;
}

.catalog-facet {
  flex: 1 1 190px;
  width: auto;
  min-width: min(190px, 100%);
  height: 48px;
  border-color: var(--bottega-control-border);
  border-radius: 12px;
}

.catalog-facet--search {
  flex: 2 1 240px;
}

.catalog-facets .catalog-facet--search input {
  flex: 1 1 0;
  min-width: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: var(--bottega-font-control);
  min-height: 0;
}

.catalog-facets .catalog-more {
  flex: 1 0 100%;
  height: auto;
  min-height: 48px;
}

.catalog-facets .catalog-facet.is-guided {
  height: 48px;
}

.catalog-view button {
  min-width: 44px;
  min-height: 44px;
}

.catalog-view button[aria-pressed=true] {
  box-shadow: none;
}

/* Die Karten teilen Inhalts- und Aktionsreihen; lange Texte dürfen wachsen. */

.bottega-products, .catalog-products {
  align-items: stretch;
}

.bottega-product {
  height: 100%;
}

.bottega-product h3 {
  min-height: 0;
  overflow-wrap: anywhere;
}

.bottega-product__size, .bottega-product__category, .bottega-product__unit {
  font-size: var(--bottega-font-control);
}

.bottega-product .product-price__tax-note, .bottega-product__status {
  font-size: var(--bottega-font-control);
}

.bottega-product__brand {
  padding-top: 16px;
  margin-bottom: 6px;
}

.bottega-product__badges {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: start;
  gap: 6px;
  padding-top: 16px;
}

.bottega-product__badges a {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  min-height: 44px;
  max-width: 100%;
  padding: 8px 11px;
  border: 1px solid var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font-size: var(--bottega-font-control);
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.bottega-product__badges a:hover {
  border-color: var(--bottega-accent);
  background: var(--bottega-surface-selected);
  color: var(--bottega-accent);
}

.bottega-product__category {
  margin-top: 8px;
}

.bottega-product__bottom {
  padding-top: 18px;
}

.bottega-product__actions {
  display: flex;
  align-items: stretch;
}

.bottega-product__add {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: 12px;
  font-size: var(--bottega-font-control);
  line-height: 1.4;
}

.bottega-product__add span {
  min-width: 0;
  overflow-wrap: normal;
  white-space: normal;
  font-size: var(--bottega-font-control);
}

.bottega-product__tools {
  position: absolute;
  top: 6px;
  right: 6px;
  display: flex;
  gap: 2px;
}

.bottega-product__tools button {
  position: static;
  width: 44px;
  height: 44px;
  min-width: 44px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #ffffffeb;
  color: var(--bottega-text);
}

.bottega-product__tools button[aria-pressed=true] {
  background: #e7eddd;
  color: #456238;
}

.bottega-product__tools .icon {
  width: 19px;
  height: 19px;
}

.bottega-product__badge {
  top: auto;
  bottom: 10px;
}

.catalog-products.is-list .bottega-product__actions {
  position: static;
  width: 100%;
  max-width: 300px;
  margin-top: 18px;
}

.catalog-products.is-list .bottega-product__body {
  padding-bottom: 0;
}

@supports (grid-template-rows: subgrid) {
  .bottega-products, .catalog-products:not(.is-list) {
    row-gap: 28px;
  }

  .bottega-products > .bottega-product, .catalog-products:not(.is-list) > .bottega-product {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 7;
    row-gap: 0;
  }

  .bottega-products .bottega-product__body, .catalog-products:not(.is-list) .bottega-product__body {
    display: contents;
  }

  :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__visual { grid-row: 1; }
  :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__badges { grid-row: 2; }
  :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__brand { grid-row: 3; }
  :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product h3 { grid-row: 4; }

  .bottega-products .bottega-product__bottom, .catalog-products:not(.is-list) .bottega-product__bottom {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: 5 / span 2;
    row-gap: 0;
    margin-top: 0;
  }

  .bottega-products .bottega-product__actions, .catalog-products:not(.is-list) .bottega-product__actions {
    grid-row: 7;
    align-self: stretch;
  }
}

body {
  padding-bottom: env(safe-area-inset-bottom);
}

.bottega-skip {
  font-size: var(--bottega-font-control);
}

@media (min-width: 1600px) {

  .bottega-categories > a > span:first-child {
    height: clamp(130px, 9vw, 180px);
  }

  .bottega-categories img {
    height: clamp(100px, 7vw, 140px);
  }

  .bottega-product__media {
    height: clamp(260px, 17vw, 340px);
  }

  .product-gallery__main {
    height: 520px;
  }
}

@media (max-width: 1050px) {
  .bottega-products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 950px) {
  .bottega-site .mobile-purchase-bar {
    bottom: env(safe-area-inset-bottom);
  }
}

@media (max-width: 760px) {

  .bottega-footer__grid > div > a {
    min-height: 44px;
  }

  .catalog-view button[data-view=grid-4] {
    display: inline-flex;
  }

  .catalog-view__number {
    display: none;
  }

  .bottega-section__heading {
    flex-wrap: wrap;
    row-gap: 6px;
  }

  .bottega-section__heading h2 {
    flex-basis: 100%;
  }

  .catalog-facet {
    flex-basis: calc(50% - 6px);
    min-width: 0;
  }

  .catalog-facet--search {
    flex-basis: 100%;
  }

  .catalog-facet select {
    min-width: 0;
  }

  .bottega-product__brand {
    font-size: var(--bottega-font-control);
  }
}

@media (max-width: 520px) {
  .catalog-facets .catalog-facet {
    flex-basis: 100%;
  }
}

/* Die vorhandenen Dialoge werden ausserhalb des Seitenrahmens gerendert. */

.drawer button:not(.qty-control button), .search-overlay button, .drawer .button {
  min-height: var(--bottega-control-height);
  font-size: var(--bottega-font-control);
}

.drawer p, .search-overlay p {
  font-size: var(--bottega-font-control);
  line-height: 1.6;
}

.drawer input, .search-overlay input {
  font-size: var(--bottega-font-control);
}

.drawer .product-price__tax-note, .search-overlay .product-price__tax-note {
  font-size: var(--bottega-font-meta);
  color: var(--bottega-text-muted);
}

:is(.drawer,.search-overlay) :is(a[href],button,input,select,textarea,summary,[contenteditable],[tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 2px solid var(--bottega-focus);
  outline-offset: 4px;
}

/* Derselbe Abstand gilt auch im Flex-Fallback ohne Subgrid. */
.bottega-product__body {
  padding-top: 0;
}

/* Norja: Logo links, braune Navigationskapsel, Konto und Bestellaktion rechts. */
.norja-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--bottega-surface);
  border-bottom: 1px solid var(--bottega-border);
}
.norja-header__inner {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) auto minmax(max-content, 1fr);
  align-items: center;
  gap: 24px;
  min-height: 132px;
  padding-block: 25px;
}
.norja-header .bottega-brand { width: auto; }
.norja-header .bottega-brand img { width: 132px; height: 74px; object-fit: contain; }
.norja-navigation {
  display: flex;
  align-items: center;
  padding: 6px;
  border: 1px solid #674d35;
  border-radius: 999px;
  background: var(--bottega-navigation);
  color: var(--bottega-navigation-text);
}
.norja-navigation a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 17px;
  border-radius: 999px;
  font-size: 16px;
  line-height: 1.3;
  white-space: nowrap;
  transition: background .18s, color .18s;
}
.norja-navigation a:hover { color: #fff9ef; background: #ffffff18; }
.norja-navigation a.is-active { background: #edddc0; color: #5b402b; }
.norja-navigation a:focus-visible { outline-color: #fff3d5; outline-offset: 2px; }
.norja-header__actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; }
.norja-icon { position: relative; display: grid; place-items: center; flex-shrink: 0; height: 44px; width: 44px; min-width: 44px; border: 0; border-radius: 50%; background: transparent; color: var(--bottega-text); }
.norja-icon:hover { background: var(--bottega-surface-soft); }
.norja-icon .icon { width: 21px; height: 21px; }
.norja-icon b { position: absolute; top: -1px; right: -1px; min-width: 18px; height: 18px; padding: 1px 4px; border-radius: 20px; background: var(--bottega-accent); color: #fff; font-size: 11px; line-height: 16px; font-weight: 500; text-align: center; }
.norja-cart-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  gap: clamp(5px, .6vw, 10px);
  min-height: 48px;
  padding: 10px clamp(8px, 1.2vw, 18px);
  border: 1px solid var(--bottega-accent);
  border-radius: var(--bottega-control-radius);
  background: var(--bottega-accent);
  color: #fff;
  font-size: var(--bottega-font-control);
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}
.norja-cart-button:hover { background: var(--bottega-accent-hover); border-color: var(--bottega-accent-hover); color: #fff; }
.norja-cart-button > .icon { width: 20px; height: 20px; flex-shrink: 0; }
.norja-cart-button__count {
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  min-width: 24px;
  min-height: 24px;
  padding: 3px 6px;
  border-radius: 999px;
  background: var(--bottega-surface);
  color: var(--bottega-accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.norja-order { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; border-radius: 999px; padding: 13px 22px; margin-left: 7px; background: var(--bottega-accent); color: #fff9ef; font-size: 16px; line-height: 1.3; white-space: nowrap; }
.norja-order:hover { background: var(--bottega-accent-hover); color: #fff; }
.norja-menu-button { display: none; }
.norja-mobile-menu { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; padding: 22px 0 30px; border-top: 1px solid var(--bottega-border); }
.norja-mobile-menu nav { display: flex; flex-direction: column; gap: 4px; }
.norja-mobile-menu nav > span { font-size: 14px; color: var(--bottega-text-muted); margin-bottom: 8px; }
.norja-mobile-menu a, .norja-mobile-menu button { min-height: 44px; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; font-size: 16px; line-height: 1.4; text-align: left; }
.norja-mobile-menu a:hover, .norja-mobile-menu button:hover, .norja-mobile-menu a[aria-current=page] { background: var(--bottega-surface-soft); color: var(--bottega-text); }

/* Alder & Co.: Creme, warme Brauntöne und Waldgrün, ausschliesslich Sans-Serif. */
body, button, input, select, textarea, h1, h2, h3, h4, h5, h6 { font-family: var(--bottega-font-family); }
body { background: var(--bottega-surface); color: var(--bottega-text); }
h1, h2, h3 { letter-spacing: -.045em; }
.bottega-layout { padding-top: 24px; padding-bottom: 80px; }
.button, .button--primary, .button--secondary { border-radius: 999px; padding: 14px 23px; min-height: 48px; font-weight: 500; }
.button--primary { background: var(--bottega-accent); border-color: var(--bottega-accent); color: #fffaf2; }
.button--primary:hover { background: var(--bottega-accent-hover); border-color: var(--bottega-accent-hover); color: #fff; }
.button--secondary { background: transparent; border-color: #a79e8c; color: var(--bottega-text); }
.button--secondary:hover { background: var(--bottega-surface-soft); border-color: var(--bottega-text-muted); }
.bottega-eyebrow { font-family: var(--bottega-font-family); font-size: 14px; font-weight: 500; letter-spacing: .08em; color: var(--bottega-text-muted); text-transform: uppercase; }
.bottega-tabs button { background: transparent; border: 1px solid #bfb19c; min-height: 46px; padding: 11px 21px; }
.bottega-tabs button.is-active { background: var(--bottega-accent); border-color: var(--bottega-accent); color: #fffaf1; }
.bottega-products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 26px; }
.bottega-product { background: var(--bottega-surface); border-radius: 22px; padding-bottom: 24px; }
.bottega-product__visual { border-radius: 22px 22px 0 0; background: transparent; }
.bottega-product__media { height: clamp(260px, 22vw, 410px); }
.bottega-product__media img { padding: 35px 30px 15px; }
.bottega-product__badges, .bottega-product__brand, .bottega-product h3, .bottega-product__size, .bottega-product__category, .bottega-product__bottom, .bottega-product__actions { padding-inline: 24px; }
.bottega-product__brand { padding-top: 16px; }
.bottega-product h3 { font-size: 27px; line-height: 1.2; font-weight: 500; margin-bottom: 13px; letter-spacing: -.04em; }
.bottega-product__size, .bottega-product__category { font-size: 16px; line-height: 1.6; }
.bottega-product__category { color: var(--bottega-text-muted); }
.bottega-product__bottom { padding-top: 22px; }
.bottega-product .product-price strong { font-size: 25px; color: var(--bottega-text); }
.bottega-product__status { color: var(--bottega-accent); }
.bottega-product__status i { background: var(--bottega-accent); }
.bottega-product__actions { margin-top: 23px; }
.bottega-product__add { min-height: 48px; border-radius: 999px; background: var(--bottega-accent); color: #fffaf1; padding: 13px 18px; font-size: 16px; }
.bottega-product__add:hover { background: var(--bottega-accent-hover); color: #fff; }
.bottega-product__tools button { background: #f7f0e6e8; }
.bottega-product__badge { border-radius: 999px; padding: 7px 11px; background: #e2e8dc; color: #3a513f; }
.bottega-benefits { margin-top: 44px; padding-top: 29px; padding-bottom: 0; border-bottom: 0; border-top-color: #cfc1ac; }
.bottega-benefits > div { justify-content: center; }
.bottega-benefits span { font-size: 16px; color: var(--bottega-text); }
.bottega-benefits small { font-size: 14px; color: var(--bottega-text-muted); }
.bottega-benefits .icon { color: var(--bottega-accent); }
.bottega-categories { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; }
.bottega-categories > a { padding: 20px 15px 22px; border: 1px solid #e2d8c7; border-radius: 22px; background: #f2e8d9; gap: 16px; }
.bottega-categories > a > span:first-child { height: 142px; background: none; border-radius: 0; }
.bottega-categories img { height: 132px; width: 100%; }
.bottega-categories strong { font-size: 18px; font-weight: 500; }
.bottega-brands { border-color: var(--bottega-border); padding-block: 33px; }
.bottega-brands a, .bottega-brands a:nth-child(2), .bottega-brands a:nth-child(3) { font-family: var(--bottega-font-family); font-style: normal; font-size: 24px; font-weight: 500; color: var(--bottega-text); }
.bottega-editorial { gap: 30px; }
.bottega-editorial img { border-radius: 24px; aspect-ratio: 1.65; }
.bottega-editorial h3 { font-size: 30px; font-weight: 500; line-height: 1.2; }
.bottega-editorial p { font-size: 18px; line-height: 1.75; }
.bottega-editorial__link { color: var(--bottega-accent); font-size: 16px; }
.bottega-footer { background: #493c35; border-color: #493c35; color: #f7efe2; }
.bottega-footer__grid { padding-block: 55px; gap: 40px; }
.bottega-footer__brand strong { font-family: var(--bottega-font-family); font-size: 28px; font-weight: 500; }
.bottega-footer__brand p, .bottega-footer__brand > span, .bottega-footer__grid > div > a, .bottega-footer h2 { color: #eadfcf; }
.bottega-footer h2 { font-size: 16px; font-weight: 500; }
.bottega-footer__grid > div > a:hover { color: #fffaf0; text-decoration: underline; text-underline-offset: 4px; }
.bottega-footer__bottom { color: #d9cab7; border-color: #756153; }

/* Gleiche Formensprache auch im bestehenden Katalog und Produktdetail. */
.catalog-system-filter, .bottega-order-summary, .bottega-brand-card, .product-detail__reservation { border-radius: 20px; }
.catalog-system-filter { background: var(--bottega-surface-soft); border-color: var(--bottega-border); }
.catalog-system-filter__options button { border-radius: 999px; border-color: #bdb19d; background: var(--bottega-surface); }
.catalog-system-filter__options button.is-active { color: #fff; background: var(--bottega-choice-active); border-color: var(--bottega-choice-active); }
.catalog-facet select, .catalog-facet--search input { border-radius: 12px; border-color: var(--bottega-control-border); background: var(--bottega-surface); }
.catalog-more { border-radius: 12px; background: var(--bottega-surface); border-color: #bdb19d; }
.catalog-content > h1, .product-detail h1, .bottega-article h1 { font-family: var(--bottega-font-family); font-weight: 500; }
.catalog-content > h1 { font-size: clamp(34px, 3vw, 52px); }
.catalog-products .bottega-product { border: 1px solid #e1d7c7; }
.catalog-products .bottega-product__media { height: 260px; }
.catalog-products .bottega-product h3 { font-size: 23px; }
.catalog-products.is-list .bottega-product { padding: 0; border-radius: 22px; overflow: clip; }
.catalog-products.is-list .bottega-product__body { padding: 20px; }
.catalog-products.is-list .bottega-product__badges, .catalog-products.is-list .bottega-product__brand, .catalog-products.is-list .bottega-product h3, .catalog-products.is-list .bottega-product__size, .catalog-products.is-list .bottega-product__category, .catalog-products.is-list .bottega-product__bottom, .catalog-products.is-list .bottega-product__actions { padding-inline: 0; }
.product-gallery { border-radius: 26px; background: #fff; }
.product-gallery__main,
.product-gallery__thumb,
.product-gallery .product-gallery__masonry-item,
.product-gallery .product-image-zoom__lens { background: #fff; }
.product-detail__buy > .button, .drawer__footer-actions > .button--primary { background: var(--bottega-accent); border-color: var(--bottega-accent); border-radius: 999px; }
.bottega-site[data-page=product] .product-detail__buy > .button--primary {
  min-height: 60px;
  padding: 16px 22px;
  gap: 10px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}
.bottega-site[data-page=product] .product-detail__buy > .button--primary .icon { flex: 0 0 22px; width: 22px; height: 22px; }
.bottega-site[data-page=product] .product-detail__buy > .product-detail__wishlist { min-height: 60px; }
.bottega-site .product-detail__buy .qty-control {
  display: grid;
  grid-template-columns: 44px minmax(32px, 1fr) 44px;
  align-items: center;
  flex: 0 0 144px;
  height: 60px;
  min-height: 60px;
  padding: 3px;
  border: 1px solid var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: #fff;
  overflow: visible;
}
.bottega-site .product-detail__buy .qty-control button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font: inherit;
  font-size: 24px;
  line-height: 1;
}
.bottega-site .product-detail__buy .qty-control button:hover:not(:disabled) {
  background: var(--bottega-choice-active);
  color: #fff;
}
.bottega-site .product-detail__buy .qty-control button:active:not(:disabled) {
  background: var(--bottega-accent);
  color: #fff;
}
.bottega-site .product-detail__buy .qty-control button:disabled {
  background: var(--bottega-surface);
  color: var(--bottega-text-muted);
  opacity: .5;
}
.bottega-site .product-detail__buy .qty-control span {
  min-width: 32px;
  color: var(--bottega-text);
  font-size: 18px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  text-align: center;
}
.product-pack-switcher__option, .product-gallery__thumb { border-radius: 14px; border-color: #cfc1ac; }
.product-pack-switcher__option.is-current { background: #e2e8dc; border-color: var(--bottega-accent); }
.product-detail__brand, .detail-brand { color: var(--bottega-accent); }
.product-detail__selling-points i { background: #e5e8db; color: var(--bottega-accent); }
.bottega-article > img { border-radius: 26px; }
.drawer { background: var(--bottega-surface); color: var(--bottega-text); }
.drawer__footer, .drawer__empty { background: var(--bottega-surface); }
.drawer__item-media { background: var(--bottega-surface-soft); border-radius: 14px; }

@media (min-width: 1800px) {
  .norja-header__inner { gap: 36px; min-height: 150px; }
  .norja-navigation a { padding-inline: 23px; font-size: 18px; }
  .norja-header__actions { gap: 12px; }
  .norja-order { padding-inline: 29px; font-size: 18px; }
}
@media (max-width: 1500px) {
  .norja-header__inner { grid-template-columns: 132px 1fr auto; gap: 15px; }
  .norja-navigation { justify-self: center; }
  .norja-navigation a { padding-inline: 13px; }
  .norja-header__actions { gap: 3px; }
  .norja-order { padding-inline: 17px; }
}
@media (max-width: 1250px) {
  .norja-header__inner { grid-template-columns: 1fr auto; min-height: 110px; padding-block: 18px; gap: 20px; }
  .norja-navigation { display: none; }
  .norja-menu-button { display: grid; }
  .norja-header__actions { gap: 10px; }
  .bottega-categories { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bottega-product__badges, .bottega-product__brand, .bottega-product h3, .bottega-product__size, .bottega-product__category, .bottega-product__bottom, .bottega-product__actions { padding-inline: 20px; }
  .bottega-product h3 { font-size: 24px; }
  .bottega-products { gap: 25px 18px; }
}
@media (max-width: 1000px) {
  .bottega-product h3 { font-size: 22px; }
}
@media (max-width: 900px) {
  .bottega-products { grid-template-columns: 1fr; }
  .bottega-product__media { height: 330px; }
  .bottega-product__media img { padding-inline: 45px; }
  .bottega-product h3 { font-size: 28px; }
}
@media (max-width: 760px) {
  .norja-header__inner { min-height: 94px; padding-block: 15px; gap: 18px; }
  .norja-header .bottega-brand img { width: 107px; height: 59px; }
  .norja-account, .norja-order, .norja-wishlist, .norja-compare { display: none; }
  .norja-header__actions { gap: 4px; }
  .norja-mobile-menu { grid-template-columns: 1fr 1fr; gap: 20px; max-height: 72vh; overflow-y: auto; }
  .norja-mobile-menu nav:last-child { grid-column: 1 / -1; border-top: 1px solid var(--bottega-border); padding-top: 15px; }
  .norja-mobile-menu a, .norja-mobile-menu button { padding-inline: 5px; }
  .bottega-layout { padding-top: 20px; padding-bottom: 45px; }
  .bottega-tabs button { padding: 10px 14px; font-size: 16px; }
  .bottega-products { gap: 28px; }
  .bottega-product__media { height: 330px; }
  .bottega-product h3 { font-size: 27px; }
  .bottega-product__badges, .bottega-product__brand, .bottega-product h3, .bottega-product__size, .bottega-product__category, .bottega-product__bottom, .bottega-product__actions { padding-inline: 23px; }
  .bottega-benefits { grid-template-columns: 1fr; gap: 23px; margin-top: 32px; }
  .bottega-benefits > div { flex-direction: row; align-items: center; justify-content: flex-start; gap: 15px; }
  .bottega-benefits small { display: block; }
  .bottega-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .bottega-categories > a { padding: 17px 12px 20px; gap: 13px; border-radius: 20px; }
  .bottega-categories > a > span:first-child { height: 108px; }
  .bottega-categories img { height: 100px; }
  .bottega-categories strong { font-size: 17px; }
  .bottega-brands { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .bottega-brands > a:nth-child(n+4) { display: grid; }
  .bottega-brands a, .bottega-brands a:nth-child(2), .bottega-brands a:nth-child(3) { font-size: 21px; }
  .bottega-brands > a:last-child { grid-column: 1 / -1; }
  .bottega-editorial { grid-template-columns: 1fr; gap: 36px; }
  .bottega-editorial img { border-radius: 22px; aspect-ratio: 1.55; }
  .bottega-editorial h3 { font-size: 27px; }
  .bottega-editorial p { font-size: 18px; }
  .bottega-footer__grid { padding-block: 40px; }
  .catalog-products .bottega-product h3 { font-size: 23px; }
  .catalog-products .bottega-product__media { height: 245px; }
  .catalog-products.is-list .bottega-product__body { padding: 15px; }
  .product-gallery { border-radius: 22px; }
}
@media (max-width: 600px) {
  .catalog-products.is-grid-4, .catalog-products.is-grid-5, .catalog-products.is-grid-6 { grid-template-columns: 1fr; }
  .catalog-products .bottega-product__media { height: 320px; }
  .catalog-products .bottega-product h3 { font-size: 26px; }
  .catalog-products.is-list .bottega-product { grid-template-columns: 100px minmax(0, 1fr); }
  .catalog-products.is-list .bottega-product__media { height: 220px; }
  .catalog-products.is-list .bottega-product h3 { font-size: 20px; }
}
@media (max-width: 420px) {
  .bottega-product__media { height: 295px; }
  .bottega-product__badges, .bottega-product__brand, .bottega-product h3, .bottega-product__size, .bottega-product__category, .bottega-product__bottom, .bottega-product__actions { padding-inline: 19px; }
}

/* Bestehende Startseitenstruktur erhalten; Alder-Farben und Sans-Serif anwenden. */
.bottega-site[data-page=home] .bottega-layout { padding-top: 32px; }
.bottega-hero { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); min-height: 390px; border-radius: var(--bottega-radius); background: var(--bottega-surface-soft); overflow: hidden; }
.bottega-hero > div { align-self: center; padding: clamp(28px, 3.5vw, 70px); }
.bottega-hero h2 { margin: 0 0 22px; font-size: clamp(34px, 3.4vw, 68px); line-height: 1.06; font-weight: 500; letter-spacing: -.05em; }
.bottega-hero p { margin: 0 0 28px; max-width: 36ch; color: var(--bottega-text-muted); font-size: 18px; line-height: 1.7; }
.bottega-hero .bottega-hero__copy {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  justify-content: center;
  min-width: 0;
  padding: clamp(32px, 3.5vw, 64px);
  background: var(--bottega-accent);
  color: var(--bottega-navigation-text);
}
.bottega-hero__copy .bottega-eyebrow { color: var(--bottega-category-capsules); }
.bottega-hero .bottega-hero__copy h2 {
  color: var(--bottega-navigation-text);
  font-size: clamp(44px, 4vw, 76px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -.05em;
}
.bottega-hero__copy h2 > span { display: block; }
.bottega-hero__copy h2 > span + span { color: var(--bottega-category-capsules); }
.bottega-hero .bottega-hero__copy p { color: var(--bottega-navigation-text); }
.bottega-hero__copy .button--primary {
  align-self: flex-start;
  max-width: 100%;
  border-color: var(--bottega-surface);
  background: var(--bottega-surface);
  color: var(--bottega-accent-hover);
  font-weight: 600;
}
.bottega-hero__copy .button--primary:hover {
  border-color: var(--bottega-category-capsules);
  background: var(--bottega-category-capsules);
  color: var(--bottega-accent-hover);
}
.bottega-site .bottega-hero__copy .button--primary:focus-visible { outline-color: var(--bottega-navigation-text); }
.bottega-hero__categories {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 16px 12px;
  min-width: 0;
  padding: 24px;
}
.bottega-hero__category {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--bottega-text);
}
.bottega-hero__category:hover {
  color: var(--bottega-accent);
}
.bottega-hero__category,
.bottega-hero__category:hover { text-decoration: none; }
.bottega-hero__category[data-category=Pads] { --hero-category-surface: var(--bottega-category-pads); --hero-art-tilt: -3deg; }
.bottega-hero__category[data-category=Bohnen] { --hero-category-surface: var(--bottega-category-beans); --hero-art-tilt: 4deg; }
.bottega-hero__category[data-category=Kapseln] { --hero-category-surface: var(--bottega-category-capsules); --hero-art-tilt: -4deg; }
.bottega-hero__category[data-category=Maschinen] { --hero-category-surface: var(--bottega-category-machines); --hero-art-tilt: 2deg; }
.bottega-hero__category-media {
  position: relative;
  display: grid;
  place-items: center;
  height: clamp(160px, 13vw, 210px);
  min-width: 0;
  min-height: 0;
  padding: 10px;
  border-radius: 0;
  background: transparent;
  color: var(--bottega-accent);
  overflow: hidden;
}
.bottega-hero__category-media::before {
  content: "";
  position: absolute;
  width: 82%;
  max-width: 230px;
  height: 86%;
  border-radius: 48% 52% 40% 60%;
  background: var(--hero-category-surface, var(--bottega-surface-selected));
  transform: rotate(-10deg);
}
.bottega-hero__category[data-category=Bohnen] .bottega-hero__category-media::before { border-radius: 50%; transform: none; }
.bottega-hero__category[data-category=Kapseln] .bottega-hero__category-media::before { border-radius: 38% 62% 46% 54%; transform: rotate(12deg); }
.bottega-hero__category[data-category=Maschinen] .bottega-hero__category-media::before { border-radius: 50% 50% 32% 38%; transform: rotate(-4deg); }
.bottega-hero__category-media .category-illustration {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 260px;
  max-height: 200px;
  min-width: 0;
  min-height: 0;
  margin: 0;
}
.bottega-hero__category-media .category-illustration :is(path, circle) {
  fill: none;
  stroke: currentColor;
  stroke-width: 3.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.bottega-hero__category-media .category-illustration .category-illustration__solid { fill: currentColor; stroke: none; }
.bottega-hero__category-media .category-illustration .category-illustration__seam { stroke-width: 4.5; }
.bottega-hero__category-media .category-illustration .category-illustration__detail { stroke-width: 2.4; }
.bottega-hero__category-media .category-illustration .category-illustration__hatch { stroke-width: 2; }
.bottega-hero__category-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  margin-top: auto;
}
.bottega-hero__category-label strong {
  min-width: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.bottega-hero__category-label > .icon { flex: 0 0 24px; width: 24px; height: 24px; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .bottega-hero__category-media .category-illustration,
  .bottega-hero__category-label > .icon { transition: transform .22s ease; }
  .bottega-hero__category:hover .category-illustration { transform: translateY(-4px) rotate(var(--hero-art-tilt, 0deg)); }
  .bottega-hero__category:hover .bottega-hero__category-label > .icon { transform: translateX(4px); }
}
@media (max-width: 1100px) {
  .bottega-hero--categories { grid-template-columns: minmax(0, 1fr); }
  .bottega-hero__categories { padding: 24px; }
  .bottega-hero__category-media { height: clamp(150px, 22vw, 200px); }
}
@media (max-width: 480px) {
  .bottega-hero__categories { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 16px; }
  .bottega-hero__category { display: grid; grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 16px; padding: 8px; }
  .bottega-hero__category-media { height: 100px; padding: 6px; }
  .bottega-hero__category-label { margin-top: 0; }
  .bottega-hero__category-label strong { font-size: 16px; }
}
.bottega-site[data-page=home] .bottega-section { margin-top: 48px; }
.bottega-site[data-page=home] .bottega-section__heading h2 { font-weight: 500; }
.bottega-site[data-page=home] .bottega-section__heading > a { color: var(--bottega-accent); }
.bottega-site[data-page=home] .bottega-intro > span { color: var(--bottega-text-muted); }
.bottega-site[data-page=home] .bottega-products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 20px; }
.bottega-home-recommendations__nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.bottega-home-recommendations__nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 16px; border: 1px solid var(--bottega-border); border-radius: var(--bottega-control-radius); background: var(--bottega-surface-soft); color: var(--bottega-text); font-size: var(--bottega-font-control); line-height: 1.4; }
.bottega-home-recommendations__nav a:hover { border-color: var(--bottega-accent); background: var(--bottega-surface-selected); color: var(--bottega-accent); }
.bottega-home-category { min-width: 0; scroll-margin-top: 24px; }
.bottega-home-category + .bottega-home-category { margin-top: 40px; padding-top: 32px; border-top: 1px solid var(--bottega-border); }
.bottega-home-category__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin-bottom: 20px; }
.bottega-home-category__heading h2 { margin: 0; color: var(--bottega-text); font-size: clamp(24px, 2vw, 30px); font-weight: 500; line-height: 1.25; }
.bottega-home-category__heading h2 a { display: inline-flex; align-items: center; min-height: 44px; }
.bottega-home-category__all { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--bottega-accent); font-size: var(--bottega-font-control); line-height: 1.4; }
.bottega-home-category__all .icon { flex: 0 0 18px; width: 18px; height: 18px; }
.bottega-site[data-page=home] .bottega-home-category .bottega-products { grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--bottega-catalog-card-min)), 1fr)); gap: 28px 20px; }
.bottega-home-category__footer { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: 24px; overflow-anchor: none; }
.bottega-home-category__count { margin: 0; color: var(--bottega-text-muted); font-size: var(--bottega-font-meta); line-height: 1.5; }
.bottega-home-category__more { min-width: min(100%, 260px); max-width: 100%; }
.bottega-home-category__error { margin: 0; max-width: 50ch; color: var(--bottega-text); font-size: var(--bottega-font-control); line-height: 1.5; text-align: center; }
.bottega-site[data-page=home] .bottega-product__media { height: clamp(210px, 17vw, 320px); }
.bottega-site[data-page=home] .bottega-product__media img { padding: 30px 22px 14px; }
.bottega-site[data-page=home] .bottega-product__badges,
.bottega-site[data-page=home] .bottega-product__brand,
.bottega-site[data-page=home] .bottega-product h3,
.bottega-site[data-page=home] .bottega-product__size,
.bottega-site[data-page=home] .bottega-product__category,
.bottega-site[data-page=home] .bottega-product__bottom,
.bottega-site[data-page=home] .bottega-product__actions { padding-inline: 16px; }
.bottega-site[data-page=home] .bottega-product h3 { font-size: 22px; line-height: 1.3; }
.bottega-site[data-page=home] .bottega-product__add { padding-inline: 10px; }
.bottega-site[data-page=home] .bottega-product .product-price strong { font-size: 23px; }
.bottega-site[data-page=home] .bottega-benefits { padding: 28px 0; border-bottom: 1px solid var(--bottega-border); }
@media (max-width: 1050px) {
  .bottega-site[data-page=home] .bottega-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bottega-site[data-page=home] .bottega-product__media { height: 270px; }
  .bottega-hero > div { padding: 30px 25px; }
  .bottega-hero h2 { font-size: 36px; }
}
@media (max-width: 760px) {
  .bottega-site[data-page=home] .bottega-layout { padding-top: 25px; }
  .bottega-hero { grid-template-columns: 1fr; min-height: 0; }
  .bottega-hero > div { padding: 31px 25px; }
  .bottega-hero h2 { font-size: clamp(36px, 7vw, 48px); }
  .bottega-site[data-page=home] .bottega-section { margin-top: 35px; }
  .bottega-site[data-page=home] .bottega-products { column-gap: 15px; }
  .bottega-site[data-page=home] .bottega-product__media { height: 235px; }
  .bottega-site[data-page=home] .bottega-product__media img { padding-inline: 16px; }
  .bottega-site[data-page=home] .bottega-product h3 { font-size: 21px; }
}
@media (max-width: 420px) {
  .bottega-site[data-page=home] .bottega-product__media { height: 210px; }
  .bottega-site[data-page=home] .bottega-product__badges,
  .bottega-site[data-page=home] .bottega-product__brand,
  .bottega-site[data-page=home] .bottega-product h3,
  .bottega-site[data-page=home] .bottega-product__size,
  .bottega-site[data-page=home] .bottega-product__category,
  .bottega-site[data-page=home] .bottega-product__bottom,
  .bottega-site[data-page=home] .bottega-product__actions { padding-inline: 12px; }
  .bottega-site[data-page=home] .bottega-product h3 { font-size: 20px; }
}

/* WordPress-Inhalte folgen der vorhandenen Typografie und Seitenbreite. */
.bottega-wp-content { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.bottega-article__updated { display: block; margin: 0 0 20px; color: var(--bottega-text-muted); font-size: var(--bottega-font-meta); line-height: 1.5; }
.bottega-site .bottega-wp-content p, .bottega-site .bottega-wp-content li, .bottega-site .bottega-wp-content dl { font-size: var(--bottega-font-body); line-height: 1.8; }
.bottega-wp-content p { margin-block: 0 1.25em; }
.bottega-wp-content h2 { margin: 1.6em 0 .65em; font-size: clamp(25px, 2.5vw, 36px); line-height: 1.2; font-weight: 500; }
.bottega-wp-content h3 { margin: 1.4em 0 .6em; font-size: 24px; font-weight: 500; }
.bottega-wp-content a { color: var(--bottega-accent); text-decoration: underline; text-underline-offset: 4px; }
.bottega-wp-content img, .bottega-wp-content video { max-width: 100%; height: auto; border-radius: 18px; }
.bottega-wp-content figure { margin: 30px 0; max-width: 100%; }
.bottega-wp-content figcaption { margin-top: 10px; font-size: var(--bottega-font-meta); color: var(--bottega-text-muted); }
.bottega-wp-content .wp-block-columns, .bottega-wp-content .wp-block-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.bottega-wp-content .wp-block-column { min-width: 0; }
.bottega-wp-content .wp-block-table { max-width: 100%; overflow-x: auto; }
.bottega-wp-content table { border-collapse: collapse; max-width: 100%; }
.bottega-wp-content th, .bottega-wp-content td { padding: 12px 15px; border: 1px solid var(--bottega-border); text-align: left; }
.bottega-wp-content blockquote { border-left: 3px solid var(--bottega-accent); margin: 25px 0; padding: 10px 22px; }
.bottega-editorial h2 { font-size: 27px; line-height: 1.2; font-weight: 500; }
.bottega-content-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 40px; }
.bottega-content-pagination a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px 15px; border: 1px solid var(--bottega-border); border-radius: 999px; font-size: 16px; }
.bottega-content-pagination a[aria-current=page] { background: var(--bottega-accent); border-color: var(--bottega-accent); color: white; }
@media (max-width: 760px) {
  .bottega-wp-content .wp-block-columns, .bottega-wp-content .wp-block-gallery { grid-template-columns: 1fr; }
  .bottega-wp-content h2 { font-size: 27px; }
}

/* Ohne bestätigtes Produktbild bleibt die Kategorie neutral illustriert. */
.bottega-categories > a > span:first-child > .icon { width: 70px; height: 70px; color: var(--bottega-text-muted); }

/* Gewählte Casa-Wortmarke, ohne Symbol; gemeinsamer Header und Footer. */
.norja-header .bottega-brand img { width: 108px; height: 100px; object-fit: contain; object-position: left center; }
.bottega-footer__brand > a { display: inline-flex; }
.bottega-footer__brand > a > img { display: block; width: 145px; height: auto; }
@media (max-width: 1100px) { .norja-header .bottega-brand img { width: 86px; height: 74px; } }
@media (max-width: 760px) { .norja-header .bottega-brand img { width: 75px; height: 64px; } }

/* WooCommerce account and checkout retain the shared Buon Caffè layout. */
.bottega-site[data-page="checkout"] {
  --checkout-bg: var(--bottega-surface);
  --checkout-surface: var(--bottega-surface);
  --checkout-text: var(--bottega-text);
  --checkout-muted: var(--bottega-text-muted);
  --checkout-line: var(--bottega-border);
  --checkout-accent: var(--bottega-accent);
  --checkout-accent-dark: var(--bottega-accent-hover);
}
.bottega-main .account-page__inner,
.bottega-main .modern-checkout__container { width: 100%; max-width: none; padding-inline: 0; }
.bottega-main .account-page { background: transparent; color: var(--bottega-text); }
.bottega-main .account-login-card { border-color: var(--bottega-border); box-shadow: none; background: var(--bottega-surface); }
.bottega-main .account-login-panel { background: var(--bottega-surface); color: var(--bottega-text); }
.bottega-main .account-login-panel h1,
.bottega-main .account-login-visual h2 { font-family: var(--bottega-font-family); }
.bottega-main .account-login-button { background: var(--bottega-accent); border-color: var(--bottega-accent); }

/* Shared secondary form actions: no native browser button chrome. */
.bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel) {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: var(--bottega-control-height);
  max-width: 100%;
  padding: 8px 12px;
  border: 0;
  border-radius: var(--bottega-control-radius);
  background: transparent;
  color: var(--bottega-accent);
  font: 500 var(--bottega-font-control)/1.4 var(--bottega-font-family);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease;
}

.bottega-main .account-login-help { justify-self: end; }
.bottega-main .account-login-register { color: var(--bottega-text-muted); font-size: var(--bottega-font-control); }

@media (hover: hover) {
  .bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel):hover:not(:disabled) {
    background: var(--bottega-surface-soft);
    color: var(--bottega-accent-hover);
  }
}

.bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel):focus-visible {
  outline: 2px solid var(--bottega-focus);
  outline-offset: 3px;
}

.bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel):active:not(:disabled) {
  background: var(--bottega-surface-selected);
  color: var(--bottega-accent-hover);
}

.bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel):disabled {
  opacity: .55;
  cursor: not-allowed;
}

.bottega-main .account-orders__more {
  min-height: var(--bottega-control-height);
  border-color: var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: var(--bottega-surface);
  color: var(--bottega-text);
  font-size: var(--bottega-font-control);
}

@media (prefers-reduced-motion: reduce) {
  .bottega-main :is(.bottega-text-action,.account-login-help,.account-login-register button,.account-orders__details-button,.checkout-edit-cart,.checkout-edit-address,.checkout-stripe__cancel) { transition: none; }
}

/* Header-only Casa wordmark. Original filled outlines, revealed along pen paths. */
.norja-header .bcl-header-wordmark { display: block; flex: none; width: 148px; height: auto; aspect-ratio: 359 / 339; color: var(--bottega-text); }
.norja-header__inner { grid-template-columns: minmax(148px, 1fr) auto minmax(max-content, 1fr); padding-block: 14px; }
.norja-navigation a,.norja-mobile-menu a,.norja-mobile-menu button,.bottega-sidebar nav a,.bottega-sidebar nav a.is-active { font-weight: 700; }
@media (prefers-reduced-motion: no-preference) {
  @supports (mask: url("#logo")) and (animation-name: bcl-logo-write) {
    .bcl-header-wordmark[data-writing="true"] .bcl-header-wordmark__ink { mask: var(--glyph-mask); }
    .bcl-header-wordmark[data-writing="true"] .bcl-header-wordmark__pen { stroke-dasharray: 1; stroke-dashoffset: 1; animation: bcl-logo-write var(--pen-duration) ease-in-out var(--pen-delay) both; }
  }
}
@keyframes bcl-logo-write { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }

/* Coffee Finder and its entry in the existing shop; same page frame and tokens. */
.catalog-finder-entry { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 24px 0; padding: 20px 24px; border: 1px solid var(--bottega-border); border-radius: 20px; background: var(--bottega-surface-soft); }
.catalog-finder-entry>div { display: grid; gap: 5px; }
.catalog-finder-entry strong { font-size: 18px; font-weight: 600; }
.catalog-finder-entry span { color: var(--bottega-text-muted); font-size: 16px; }
.catalog-finder-entry .button { flex: none; }
.coffee-finder { padding-block: 28px 64px; }
.coffee-finder__header { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.coffee-finder__header h1 { margin: 10px 0 14px; font-size: clamp(32px, 3.5vw, 56px); line-height: 1.1; }
.coffee-finder__header p { max-width: var(--bottega-reading-width); margin: 0; color: var(--bottega-text-muted); font-size: 18px; }
.coffee-finder__shop { display: inline-flex; flex: none; align-items: center; gap: 8px; min-height: 44px; color: var(--bottega-accent); font-size: 16px; }
.coffee-finder__progress { display: grid; grid-template-columns: 1fr auto; gap: 10px 20px; margin-bottom: 24px; color: var(--bottega-text-muted); font-size: 16px; }
.coffee-finder__progress strong { color: var(--bottega-text); font-weight: 600; }
.coffee-finder__progress progress { grid-column: 1/-1; width: 100%; height: 6px; border: 0; border-radius: 8px; overflow: hidden; background: var(--bottega-surface-soft); color: var(--bottega-accent); accent-color: var(--bottega-accent); }
.coffee-finder__progress progress::-webkit-progress-bar { background: var(--bottega-surface-soft); }
.coffee-finder__progress progress::-webkit-progress-value { background: var(--bottega-accent); }
.coffee-finder__progress progress::-moz-progress-bar { background: var(--bottega-accent); }
.coffee-finder__panel { display: grid; gap: 24px; padding: clamp(20px, 2.5vw, 40px); border: 1px solid var(--bottega-border); border-radius: var(--bottega-radius); }
.coffee-finder__panel h2 { margin: 0; font-size: clamp(24px, 2.5vw, 36px); line-height: 1.2; }
.coffee-finder__panel>p { max-width: var(--bottega-reading-width); margin: 0; font-size: 18px; }
.coffee-finder fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.coffee-finder legend { margin-bottom: 16px; color: var(--bottega-text); font-size: 18px; font-weight: 600; }
.coffee-finder fieldset>p { margin: 0 0 16px; color: var(--bottega-text-muted); font-size: 16px; }
.coffee-finder__choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.coffee-finder__choice { position: relative; display: flex; align-items: flex-start; gap: 12px; min-height: 88px; padding: 20px; border: 1px solid var(--bottega-border); border-radius: 18px; cursor: pointer; }
.coffee-finder__choice>input { flex: none; width: 18px; height: 18px; margin-top: 4px; accent-color: var(--bottega-accent); }
.coffee-finder__choice>span { display: grid; gap: 8px; }
.coffee-finder__choice strong { font-size: 18px; font-weight: 600; }
.coffee-finder__choice small { color: var(--bottega-text-muted); font-size: 16px; line-height: 1.45; }
.coffee-finder__choice.is-selected,.coffee-finder__taste.is-selected { border-color: var(--bottega-accent); background: var(--bottega-surface-selected); }
.coffee-finder__choice:focus-within,.coffee-finder__taste:focus-within { outline: 2px solid var(--bottega-focus); outline-offset: 3px; }
.coffee-finder__tastes { display: flex; flex-wrap: wrap; gap: 12px; }
.coffee-finder__taste { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 18px; border: 1px solid var(--bottega-border); border-radius: var(--bottega-control-radius); font-size: 16px; cursor: pointer; }
.coffee-finder__taste input { width: 18px; height: 18px; accent-color: var(--bottega-accent); }
.coffee-finder .bottega-text-action { justify-self: start; }
.coffee-finder__help { padding: 18px 20px; border-radius: 16px; background: var(--bottega-surface-soft); color: var(--bottega-text-muted); font-size: 16px; }
.coffee-finder__help a { color: var(--bottega-accent); text-decoration: underline; text-underline-offset: 3px; }
.coffee-finder__optional { border-top: 1px solid var(--bottega-border); padding-top: 20px; }
.coffee-finder__optional summary { padding: 10px 0; font-size: 16px; font-weight: 600; cursor: pointer; }
.coffee-finder__optional>div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 18px; }
.coffee-finder__optional label { display: grid; gap: 8px; font-size: 16px; }
.coffee-finder__optional input,.coffee-finder__optional select { width: 100%; min-width: 0; min-height: 48px; padding: 10px 14px; border: 1px solid var(--bottega-control-border); border-radius: 12px; background: var(--bottega-surface); color: var(--bottega-text); font: inherit; }
.coffee-finder__selection { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.coffee-finder__selection>span { padding: 8px 14px; border-radius: var(--bottega-control-radius); background: var(--bottega-surface-soft); font-size: 16px; }
.coffee-finder__results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.coffee-finder__product { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--bottega-border); border-radius: 20px; }
.coffee-finder__product-image { display: grid; place-items: center; aspect-ratio: 1.3; background: var(--bottega-surface-soft); }
.coffee-finder__product-image img { max-width: 100%; width: 100%; height: 100%; max-height: 300px; padding: 24px; object-fit: contain; mix-blend-mode: multiply; }
.coffee-finder__product-copy { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 12px; padding: 24px; }
.coffee-finder__product-copy>span:first-child { color: var(--bottega-text-muted); font-size: 14px; }
.coffee-finder__product h3 { margin: 0; font-size: 20px; font-weight: 600; line-height: 1.3; }
.coffee-finder__product p { margin: 0; color: var(--bottega-text-muted); font-size: 16px; }
.coffee-finder__format { color: var(--bottega-accent); font-size: 16px; font-weight: 500; }
.coffee-finder__product ul { display: grid; gap: 8px; margin: 2px 0 16px; padding-left: 20px; font-size: 16px; line-height: 1.4; }
.coffee-finder__product-actions { display: grid; gap: 16px; width: 100%; margin-top: auto; }
.coffee-finder__product-actions .product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; }
.coffee-finder__product-actions .product-price>strong { font-size: 24px; color: var(--bottega-text); }
.coffee-finder__product-actions .product-price__tax-note { flex-basis: 100%; font-size: var(--bottega-font-control); }
.coffee-finder__product-actions .button { width: 100%; }
.coffee-finder__details { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--bottega-accent); font-size: 16px; }
.coffee-finder__empty { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; padding: 24px; border-radius: 18px; background: var(--bottega-surface-soft); }
.coffee-finder__empty h3,.coffee-finder__empty p { flex-basis: 100%; margin: 0; font-size: 18px; }
.coffee-finder__empty h3 { font-size: 24px; }
.coffee-finder__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-top: 24px; border-top: 1px solid var(--bottega-border); }
.coffee-finder__actions>a:not(.button) { display: inline-flex; align-items: center; min-height: 44px; color: var(--bottega-text-muted); }
.coffee-finder button:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 1000px) { .coffee-finder__choices { grid-template-columns: repeat(2, minmax(0, 1fr)); } .coffee-finder__results { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .catalog-finder-entry,.coffee-finder__header { align-items: stretch; flex-direction: column; }
  .coffee-finder__choices,.coffee-finder__results,.coffee-finder__optional>div { grid-template-columns: minmax(0, 1fr); }
  .coffee-finder__choice { min-height: 72px; padding: 16px; }
  .coffee-finder__actions .button { flex: 1; }
  .coffee-finder__actions .button--primary { flex-basis: 100%; }
}
@media (max-width: 1500px) { .norja-header__inner { grid-template-columns: 148px 1fr auto; } }
@media (max-width: 1400px) {
  .norja-header__inner { grid-template-columns: 1fr auto; gap: 20px; }
  .norja-navigation { display: none; }
  .norja-menu-button { display: grid; }
  .norja-header .bcl-header-wordmark { width: 128px; }
}
@media (max-width: 760px) {
  .norja-header .bcl-header-wordmark { width: 112px; }
  .norja-header__inner { padding-block: 12px; gap: 12px; }
}

/* Lagerampel im gemeinsamen Aktionsbereich: kleine Anzeige, bedienbarer Tooltip. */
.bottega-product__stock {
  position: relative;
  display: flex;
  flex: 0 0 44px;
  align-items: center;
  align-self: center;
  color: #73716b;
}
.bottega-product__stock.is-in { color: #456b4f; }
.bottega-product__stock.is-low { color: #b66b12; }
.bottega-product__stock.is-out { color: #b3423e; }
.bottega-product__stock-trigger {
  display: grid;
  place-items: center;
  width: 44px;
  min-height: 48px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: inherit;
  cursor: help;
}
.bottega-product__stock-trigger i {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: currentColor;
}
.bottega-product__stock-trigger:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
.bottega-product__stock-tooltip {
  position: absolute;
  z-index: 20;
  left: 50%;
  bottom: calc(50% + 14px);
  transform: translateX(calc(-50% + var(--tooltip-shift, 0px)));
  width: max-content;
  max-width: min(230px, calc(100vw - 24px));
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--bottega-text);
  color: var(--bottega-surface);
  box-shadow: 0 4px 16px #0002;
  font-size: var(--bottega-font-control);
  line-height: 1.4;
  font-weight: 400;
  text-align: center;
}

.bottega-product__stock-tooltip::before {
  content: "";
  position: absolute;
  top: 100%;
  left: clamp(14px, calc(50% - var(--tooltip-shift, 0px)), calc(100% - 14px));
  border: 6px solid transparent;
  border-top-color: var(--bottega-text);
  transform: translateX(-50%);
}

.bottega-product__stock-tooltip::after {
  content: "";
  position: absolute;
  inset: 100% 0 auto;
  height: 16px;
}
.bottega-product__stock-tooltip[data-side=bottom] { top: calc(50% + 14px); bottom: auto; }
.bottega-product__stock-tooltip[data-side=bottom]::before { top: auto; bottom: 100%; border-top-color: transparent; border-bottom-color: var(--bottega-text); }
.bottega-product__stock-tooltip[data-side=bottom]::after { inset: auto 0 100%; }
.bottega-product:has(.bottega-product__stock-tooltip) { position: relative; z-index: 20; }
.catalog-products.is-list .bottega-product:has(.bottega-product__stock-tooltip) { overflow: visible; }

/* Katalog: Filter links, Produkte in der Mitte, Kategorietexte rechts. */
.bottega-site[data-page=shop] .bottega-layout { padding-top: 8px; }
.bottega-main .catalog-shell--columns {
  display: grid;
  grid-template-columns: var(--bottega-catalog-sidebar-width) minmax(0, 1fr) var(--bottega-catalog-sidebar-width);
  gap: var(--bottega-layout-gap);
  padding-block: 0;
  align-items: start;
}
.catalog-shell--columns .catalog-products { margin-top: 0; }
.catalog-shell--columns .catalog-products.is-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--bottega-catalog-card-min)), 1fr));
  column-gap: var(--bottega-catalog-column-gap);
}
.catalog-shell--columns .catalog-products.is-grid .bottega-product h3 {
  min-width: 0;
}
.catalog-shell--columns .catalog-view button {
  display: inline-flex;
  width: auto;
  min-width: 44px;
  height: auto;
  min-height: 44px;
  gap: 8px;
  padding: 10px 12px;
  border: 0;
  border-radius: var(--bottega-control-radius);
  background: transparent;
  color: var(--bottega-text-muted);
  box-shadow: none;
  font-size: var(--bottega-font-control);
  line-height: 1.5;
}
.catalog-shell--columns .catalog-view { gap: 4px; margin-left: 0; padding: 4px; border: 0; border-radius: 28px; background: var(--bottega-surface-soft); overflow: visible; }
.catalog-shell--columns .catalog-view button[aria-pressed=true] { background: var(--bottega-accent); color: #fff; font-weight: 600; }
@media (hover: hover) {
  .catalog-shell--columns .catalog-view button:hover { background: var(--bottega-surface-selected); color: var(--bottega-text); }
  .catalog-shell--columns .catalog-view button[aria-pressed=true]:hover { background: var(--bottega-accent-hover); color: #fff; }
}
.catalog-filter-sidebar, .catalog-description-sidebar { min-width: 0; }
.catalog-filter-sidebar { border-right: 1px solid var(--bottega-border); padding-right: 18px; }
.catalog-filter-panel > h2, .catalog-description-sidebar > h2 { margin: 0 0 18px; font-size: 20px; line-height: 1.3; }
.catalog-filter-toggle { display: none; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-discovery { grid-template-columns: 1fr; gap: 20px; margin: 24px 0 0; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-popular__chips { flex-wrap: wrap; overflow: visible; padding: 0; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-popular__chips { gap: 8px; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-popular__chips button {
  min-height: 44px;
  max-width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font: inherit;
  font-size: var(--bottega-font-control);
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: left;
}
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-popular__chips button:hover {
  border-color: var(--bottega-accent);
  background: var(--bottega-surface-selected);
  color: var(--bottega-text);
}
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-popular__chips button.is-active {
  border-color: var(--bottega-choice-active);
  background: var(--bottega-choice-active);
  color: #fff;
}
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-visual-filters { display: grid; grid-template-columns: 1fr; gap: 22px; margin: 0; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter { padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__heading { display: block; margin-bottom: 8px; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__heading h2 { font-size: 16px; line-height: 1.4; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__heading > span { display: none; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__options { display: grid; grid-template-columns: 1fr; gap: 5px; margin: 0; padding: 0; overflow: visible; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__options button { flex: initial; flex-direction: row; justify-content: flex-start; gap: 10px; width: 100%; min-height: 44px; padding: 9px 10px; border-radius: 12px; font-size: 16px; text-align: left; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__options .coffee-category-icon { display: block; flex: 0 0 28px; width: 28px; height: 28px; margin: 0; color: inherit; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-system-filter__options button > span { min-width: 0; overflow-wrap: break-word; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facets { flex-direction: column; gap: 10px; margin-top: 22px; padding: 0; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facet { flex: none; width: 100%; min-width: 0; height: 48px; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facets .catalog-more { flex: none; min-width: 0; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-more:hover,
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-more[aria-expanded=true] {
  border-color: var(--bottega-choice-active);
  background: var(--bottega-choice-active);
  color: #fff;
}
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-advanced { padding: 14px; }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-price-range__summary { flex-wrap: wrap; gap: 4px; }
.catalog-result-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-bottom: 18px; }
.catalog-result-summary .catalog-result-count { margin: 0; padding: 0; border: 0; }
.bottega-site .catalog-content .catalog-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: auto;
  min-height: 44px;
  max-width: 100%;
  padding: 8px 12px;
  border: 1px solid var(--bottega-border);
  border-radius: var(--bottega-control-radius);
  background: var(--bottega-surface-soft);
  color: var(--bottega-accent);
  font: inherit;
  font-size: var(--bottega-font-meta);
  line-height: 1.4;
  white-space: normal;
  text-align: left;
  cursor: pointer;
}
.bottega-site .catalog-content .catalog-reset:hover {
  border-color: var(--bottega-accent);
  background: var(--bottega-surface-selected);
}
.catalog-reset .icon { flex: 0 0 16px; width: 16px; height: 16px; }
.catalog-description-sidebar { border-left: 1px solid var(--bottega-border); padding-left: 18px; overflow-wrap: break-word; }
.catalog-description-sidebar p, .catalog-description-sidebar li { font-size: 16px; line-height: 1.65; color: var(--bottega-text-muted); }
.catalog-description-sidebar h3, .catalog-description-sidebar h4 { font-size: 18px; line-height: 1.4; margin: 22px 0 10px; }
.catalog-description-sidebar ul, .catalog-description-sidebar ol { padding-left: 22px; }
.catalog-description-sidebar__category {
  margin-top: 12px;
  border: 1px solid var(--bottega-border);
  border-radius: 14px;
  background: #fff;
}
.catalog-description-sidebar__category > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 52px;
  padding: 14px 16px;
  border-radius: inherit;
  background: var(--bottega-surface-soft);
  color: var(--bottega-text);
  font-size: var(--bottega-font-control);
  font-weight: 600;
  line-height: 1.4;
  list-style: none;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.catalog-description-sidebar__category > summary::-webkit-details-marker { display: none; }
.catalog-description-sidebar__category > summary::marker { content: ""; }
.catalog-description-sidebar__category > summary::after {
  content: "";
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-right: 2px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}
.catalog-description-sidebar__category > summary:hover,
.catalog-description-sidebar__category[open] > summary {
  background: var(--bottega-surface-selected);
  color: var(--bottega-accent);
}
.catalog-description-sidebar__category[open] > summary {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.catalog-description-sidebar__category[open] > summary::after { transform: rotate(225deg); }
.bottega-site .catalog-description-sidebar__category > summary:focus-visible {
  outline: 2px solid var(--bottega-focus);
  outline-offset: -3px;
}
.catalog-description-sidebar__category > .catalog-description-sidebar__content {
  padding: 14px 16px 16px;
  border-top: 1px solid var(--bottega-border);
}
.catalog-description-sidebar__category .catalog-description-sidebar__content > div > :first-child { margin-top: 0; }
.catalog-description-sidebar__category .catalog-description-sidebar__content > a { margin-top: 8px; }
.catalog-description-sidebar__content > a, .catalog-description-sidebar__guide { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--bottega-accent); font-size: 16px; }
.catalog-description-sidebar .catalog-finder-entry { flex-direction: column; align-items: stretch; gap: 14px; padding: 16px; margin-top: 24px; }
.catalog-description-sidebar .catalog-finder-entry > div { min-width: 0; }
.catalog-description-sidebar .catalog-finder-entry .button { width: 100%; padding-inline: 10px; white-space: normal; }

@media (max-width: 1499px) {
  .bottega-main .catalog-shell--columns { grid-template-columns: var(--bottega-catalog-sidebar-width) minmax(0, 1fr); }
  .catalog-description-sidebar { grid-column: 2; border-left: 0; border-top: 1px solid var(--bottega-border); padding: 24px 0 0; }
  .catalog-filter-sidebar { grid-row: 1 / span 2; }
}
@media (max-width: 1000px) {
  .bottega-main .catalog-shell--columns { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .catalog-filter-sidebar { grid-row: auto; border: 0; padding: 0; }
  .catalog-filter-toggle { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; min-height: 48px; padding: 12px 16px; border: 1px solid var(--bottega-control-border); border-radius: 12px; background: var(--bottega-surface-soft); font-size: 16px; }
  .catalog-filter-panel { display: none; padding-block: 20px; }
  .catalog-filter-panel.is-open { display: block; }
  .catalog-description-sidebar { grid-column: auto; }
}

/* Mobil zwei vollständige Produktkarten je Reihe; die Listenansicht bleibt separat. */
@media (max-width: 760px) {
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) {
    --bottega-mobile-card-padding: clamp(8px, 2vw, 12px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 12px;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) > .bottega-product {
    padding-bottom: 16px;
    border-radius: 16px;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__visual {
    border-radius: 16px 16px 0 0;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__media {
    height: clamp(185px, 48vw, 290px);
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__media img {
    padding: 46px 8px 8px;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) :is(.bottega-product__badges, .bottega-product__brand, .bottega-product h3, .bottega-product__bottom, .bottega-product__actions) {
    padding-inline: var(--bottega-mobile-card-padding);
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__badges {
    gap: 4px;
    padding-top: 10px;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__badges a {
    padding: 6px 8px;
    font-size: var(--bottega-font-control);
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__brand {
    padding-top: 12px;
    font-size: var(--bottega-font-control);
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product h3 {
    margin-bottom: 8px;
    font-size: clamp(16px, 4vw, 20px);
    line-height: 1.3;
    letter-spacing: -.025em;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__bottom {
    padding-top: 16px;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .product-price {
    gap: 3px 6px;
    overflow-wrap: anywhere;
  }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .product-price strong { font-size: 20px; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) :is(.product-price__regular, .bottega-product__unit) { font-size: var(--bottega-font-control); line-height: 1.4; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__actions { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: center; gap: 4px; margin-top: 16px; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__add { gap: 4px; padding: 10px 6px; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__add span { font-size: var(--bottega-font-control); line-height: 1.35; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__add .icon { flex: 0 0 16px; width: 16px; height: 16px; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__stock { flex-basis: 44px; }
  .bottega-site[data-page] :is(.bottega-products, .catalog-products:not(.is-list)) .bottega-product__stock-trigger { width: 44px; }
}

/* Kleiner gemeinsamer Headerabstand, ohne zusätzliche Seiten-Offsets. */
.bottega-site .norja-header__inner {
  min-height: 0;
  padding-block: 8px;
}
.bottega-site .norja-header .bcl-header-wordmark { width: 100px; }
html { scroll-padding-top: calc(var(--bottega-header-height) + 16px); }
.bottega-site .bottega-home-category, .bottega-site .catalog-system-filter { scroll-margin-top: 8px; }
@media (max-width: 760px) { .bottega-site .norja-header .bcl-header-wordmark { width: 74px; } }
@media (max-width: 760px) {
  .norja-cart-button { min-height: 44px; }
}
@media (max-width: 360px) {
  .norja-header__inner { gap: 8px; }
  .norja-header .bottega-brand img { width: 64px; height: 56px; }
  .norja-cart-button { font-size: var(--bottega-font-control); padding-inline: 8px; }
  .norja-cart-button > .icon { width: 18px; height: 18px; }
  .norja-cart-button__count { min-width: 22px; min-height: 22px; padding-inline: 4px; font-size: 11px; }
}
.bottega-site[data-page] .bottega-layout {
  padding-top: var(--bottega-header-content-gap);
}
.bottega-main > :is(.account-page, .coffee-finder, .compare-page, .bottega-article, .bottega-checkout, .modern-checkout, .legal-page) {
  margin-top: 0;
  padding-top: 0;
}
.bottega-main .account-page__breadcrumbs { margin-bottom: 12px; }
.bottega-main .account-login-card { padding-top: 0; }

/* Small original catalog logos in the shared brand sidebar. */
.bottega-sidebar nav a.bottega-sidebar__brand { min-height: 52px; }
.bottega-sidebar__brand .brand-mark { width: 100%; justify-content: flex-start; gap: 10px; color: inherit; }
.bottega-sidebar__brand .brand-mark img { flex: 0 0 48px; width: 48px; max-width: 48px; height: 34px; object-fit: contain; }
.bottega-sidebar__brand .brand-mark strong { min-width: 0; font: inherit; line-height: 1.4; }

/* Stored view preferences: keep automatic sizing as the default and cap chosen columns to available space. */
.catalog-shell--columns .catalog-view-preferences { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; max-width: 100%; }
.catalog-shell--columns .catalog-view--columns button { justify-content: center; }
@media (min-width: 761px) {
  .catalog-shell--columns .catalog-products.is-grid[data-columns="4"] { --catalog-preferred-columns: 4; }
  .catalog-shell--columns .catalog-products.is-grid[data-columns="5"] { --catalog-preferred-columns: 5; }
  .catalog-shell--columns .catalog-products.is-grid[data-columns="6"] { --catalog-preferred-columns: 6; }
  .catalog-shell--columns .catalog-products.is-grid[data-columns] {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, max(var(--bottega-catalog-card-min), calc((100% - (var(--catalog-preferred-columns) - 1) * var(--bottega-catalog-column-gap)) / var(--catalog-preferred-columns)))), 1fr));
  }
}
@media (max-width: 760px) { .catalog-shell--columns .catalog-view--columns { display: none; } }

@media (max-width: 400px) { #cart-drawer .drawer__item-actions { grid-column: 1 / -1; } }

/* Ruhige schwarze Produkttypografie und klar getrennte Informationskarten. */
.bottega-site .product-detail__desc { color: #171717; }
.bottega-site .product-information__content { align-items: start; gap: 24px; padding-block: 24px; }
.bottega-site .product-information__panel { min-width: 0; padding: clamp(20px, 2vw, 30px); border: 1px solid var(--bottega-border); border-radius: 20px; background: #fff; color: #171717; }
.bottega-site .product-information__panel > h2 { margin: 0 0 20px; color: inherit; font: 700 28px/1.25 var(--bottega-font-family); letter-spacing: -.025em; }
.bottega-site .product-information__description { color: #171717; font-family: var(--bottega-font-family); font-size: 18px; line-height: 1.75; }
.bottega-site .product-information__description :is(p, li, ul, ol, dl, dt, dd, table, th, td, blockquote, strong, b, em, a) { color: inherit; font-family: inherit; font-size: inherit; line-height: inherit; }
.bottega-site .product-information__description :is(h2, h3, h4, h5, h6) { margin: 28px 0 12px; color: inherit; font-family: inherit; font-size: 24px; font-weight: 650; line-height: 1.35; letter-spacing: -.02em; }
.bottega-site .product-information__description :is(h4, h5, h6) { font-size: 21px; }
.bottega-site .product-information__description > :first-child { margin-top: 0; }
.bottega-site .product-information__description p { margin: 0 0 16px; }
.bottega-site .product-information__description :is(ul, ol) { margin: 12px 0 20px; padding-left: 24px; }
.bottega-site .product-information__description li + li { margin-top: 8px; }
.bottega-site .product-information__description :is(strong, b) { font-weight: 650; }
.bottega-site .product-information__description blockquote { margin: 20px 0; padding: 12px 18px; border-left: 3px solid var(--bottega-border); }
.bottega-site .product-information__description table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.bottega-site .product-information__description :is(th, td) { padding: 10px 12px; border-bottom: 1px solid var(--bottega-border); text-align: left; }
.bottega-site .product-information__panel--details dl { margin: 0; }
.bottega-site .product-information__panel--details dl > div { padding-block: 14px; border-bottom: 1px solid var(--bottega-border); }
.bottega-site .product-information__panel--details :is(dt, dd) { color: inherit; font-size: 16px; line-height: 1.6; }

.bottega-site .cart-bundle-benefit, #cart-drawer .cart-bundle-benefit { margin: 12px 0; padding: 12px 14px; border: 1px solid var(--bottega-border); border-radius: 12px; background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); font-size: 16px; font-weight: 500; line-height: 1.5; }

/* Derselbe Preisbaustein in der festen Kaufleiste: Streichpreis bleibt sekundär. */
.bottega-site .product-purchase-bar .product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 7px; }
.bottega-site .product-purchase-bar .product-price__regular { font-size: 14px; font-weight: 500; line-height: 1.4; color: var(--bottega-text-muted); }

/* catalog-filter-dialog.css */
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facet.catalog-facet-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  height: auto;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid var(--bottega-control-border);
  border-radius: 12px;
  background: var(--bottega-surface);
  color: var(--bottega-text);
  font: inherit;
  font-size: var(--bottega-font-control);
  line-height: 1.4;
  text-align: left;
}
.catalog-facet-trigger__text { display: grid; gap: 3px; min-width: 0; overflow-wrap: anywhere; }
.catalog-facet-trigger__text strong { font-size: 16px; font-weight: 600; }
.catalog-facet-trigger.is-selected .catalog-facet-trigger__text > span { color: var(--bottega-text-muted); font-size: 14px; }
.catalog-facet-trigger__chevron { flex: 0 0 8px; width: 8px; height: 8px; margin-right: 2px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facet.catalog-facet-trigger:hover,
:is(.catalog-filter-sidebar, .catalog-filter-overview) .catalog-facet.catalog-facet-trigger.is-selected { border-color: var(--bottega-accent); background: var(--bottega-surface-selected); }
.catalog-facet-trigger[aria-expanded=true] .catalog-facet-trigger__chevron { transform: rotate(225deg); }

.catalog-filter-dialog {
  position: fixed;
  inset: 0;
  width: min(1600px, 90vw);
  max-width: calc(100vw - 24px);
  min-width: 0;
  box-sizing: border-box;
  height: fit-content;
  max-height: calc(100dvh - 48px);
  margin: auto;
  padding: 0;
  border: 1px solid var(--bottega-border);
  border-radius: 24px;
  background: var(--bottega-surface);
  color: var(--bottega-text);
  font-family: var(--bottega-font-family);
  box-shadow: 0 24px 80px rgb(36 29 23 / .2);
  overflow: hidden;
}
.catalog-filter-dialog[open] { display: flex; flex-direction: column; }
.catalog-filter-dialog::backdrop { background: rgb(36 29 23 / .48); backdrop-filter: blur(3px); }
.catalog-filter-dialog__header { display: flex; flex: none; align-items: center; justify-content: space-between; gap: 20px; padding: 24px; }
.catalog-filter-dialog__header h2 { min-width: 0; margin: 0; color: var(--bottega-text); font-size: clamp(24px, 3vw, 32px); font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.catalog-filter-dialog__close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: var(--bottega-surface-soft); color: var(--bottega-text); }
.catalog-filter-dialog__close .icon { width: 20px; height: 20px; }
.catalog-filter-dialog__close:hover { background: var(--bottega-surface-selected); }
.catalog-filter-dialog__search { display: flex; flex: none; align-items: center; gap: 12px; min-height: 52px; margin: 0 24px; padding: 0 16px; border: 1px solid var(--bottega-control-border); border-radius: 12px; background: #fff; }
.catalog-filter-dialog__search > .icon { flex: 0 0 20px; width: 20px; height: 20px; color: var(--bottega-text-muted); }
.catalog-filter-dialog__search input { width: 100%; min-width: 0; min-height: 50px; padding: 12px 0; border: 0; border-radius: 0; background: transparent; color: var(--bottega-text); font: inherit; font-size: 16px; }
.catalog-filter-dialog .catalog-filter-dialog__search input[type=search]:focus { outline: none; box-shadow: none; }
.catalog-filter-dialog__search:focus-within { border-color: var(--bottega-focus); box-shadow: 0 0 0 1px var(--bottega-focus); }
.catalog-filter-dialog__body { flex: 1 1 auto; min-width: 0; min-height: 0; padding: 20px 24px 24px; overflow-y: auto; overscroll-behavior: contain; }
.catalog-filter-dialog__count { margin: 0 0 14px; color: var(--bottega-text-muted); font-size: 14px; line-height: 1.5; }
.catalog-filter-dialog__options { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 10px; }
.catalog-filter-dialog.is-brand .catalog-filter-dialog__options { grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 10px; }
.catalog-filter-dialog__option { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; min-height: 56px; padding: 14px; border: 1px solid var(--bottega-border); border-radius: 14px; background: #fff; color: var(--bottega-text); font: inherit; font-size: 16px; line-height: 1.4; text-align: left; overflow-wrap: anywhere; }
.catalog-filter-dialog__option:hover { border-color: var(--bottega-accent); }
.catalog-filter-dialog__option[aria-pressed=true] { border-color: var(--bottega-choice-active); background: var(--bottega-surface-selected); }
.catalog-filter-dialog__check { display: grid; place-items: center; flex: 0 0 22px; width: 22px; height: 22px; border: 1px solid var(--bottega-border); border-radius: 50%; font-size: 16px; line-height: 1; }
.catalog-filter-dialog__option[aria-pressed=true] .catalog-filter-dialog__check { border-color: var(--bottega-choice-active); background: var(--bottega-choice-active); color: #fff; }
.catalog-filter-dialog.is-brand .catalog-filter-dialog__option { min-height: 96px; padding: 24px 12px 12px; }
.catalog-filter-dialog.is-brand .catalog-filter-dialog__check { position: absolute; top: 10px; right: 10px; }
.catalog-filter-dialog .brand-mark { flex: 1; min-width: 0; min-height: 56px; text-align: center; }
.catalog-filter-dialog .brand-mark strong { font-size: 16px; font-weight: 600; }
.catalog-filter-dialog .brand-mark img { max-width: min(140px, 100%); height: 48px; object-fit: contain; }
.catalog-filter-dialog__empty { margin: 18px 0 0; font-size: 16px; line-height: 1.6; color: var(--bottega-text-muted); }
.catalog-filter-dialog button:focus-visible { outline: 2px solid var(--bottega-focus); outline-offset: 3px; }
@media (max-width: 640px) {
  .catalog-filter-dialog { max-height: calc(100dvh - 24px); border-radius: 20px; }
  .catalog-filter-dialog__header { padding: 20px 16px; }
  .catalog-filter-dialog__search { margin-inline: 16px; }
  .catalog-filter-dialog__body { padding: 16px; }
  .catalog-filter-dialog.is-brand .catalog-filter-dialog__options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-filter-dialog:not(.is-brand) .catalog-filter-dialog__options { grid-template-columns: minmax(0, 1fr); }
}

/* The mobile overview and the price range use the same modal container. */
.catalog-filter-dialog__footer { display: flex; flex: none; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 16px 24px; border-top: 1px solid var(--bottega-border); }
.catalog-filter-dialog__footer button { min-height: 44px; padding: 10px 16px; border: 1px solid var(--bottega-control-border); border-radius: 12px; background: var(--bottega-surface); color: var(--bottega-text); font: inherit; font-size: 16px; cursor: pointer; }
.catalog-filter-dialog__footer button:last-child { background: var(--bottega-choice-active); border-color: var(--bottega-choice-active); color: #fff; }
.catalog-filter-overview .catalog-facets { display: flex; flex-direction: column; }
.catalog-filter-overview .catalog-facet, .catalog-filter-overview .catalog-more { min-height: 48px; }
.catalog-filter-overview .catalog-system-filter__options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.catalog-filter-dialog .catalog-price-range__summary { flex-wrap: wrap; gap: 8px; }
@media (max-width: 640px) { .catalog-filter-dialog__footer { padding: 14px 16px; } }

.catalog-filter-dialog { --size-dialog-border: var(--bottega-control-border); --size-dialog-active: var(--bottega-choice-active); --size-dialog-active-text: #fff; }

/* Dialog size follows the option count; original labels wrap without clipping. */
.catalog-filter-dialog.is-brand { width: min(1800px, 90vw); }
.catalog-filter-dialog.is-size { width: min(1600px, 90vw); }
.catalog-filter-dialog.is-size .catalog-filter-dialog__options { grid-template-columns: repeat(auto-fit, minmax(min(100%, 155px), 1fr)); gap: 12px; }
.catalog-filter-dialog__option-sort { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 16px; font-size: 15px; }
.catalog-filter-dialog__option-sort > span { margin-right: auto; }
.catalog-filter-dialog__option-sort button { min-height: 44px; padding: 9px 14px; border: 1px solid var(--size-dialog-border); border-radius: 12px; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.catalog-filter-dialog__option-sort button[aria-pressed=true] { border-color: var(--size-dialog-active); background: var(--size-dialog-active); color: var(--size-dialog-active-text); }
.catalog-filter-dialog__size-all { display: grid; margin-bottom: 20px; }
.catalog-filter-dialog__size-group + .catalog-filter-dialog__size-group { margin-top: 24px; }
.catalog-filter-dialog__size-group h3 { margin: 0 0 10px; color: inherit; font: inherit; font-size: 17px; font-weight: 700; line-height: 1.4; }
.catalog-filter-dialog.is-size .catalog-filter-dialog__option { min-height: 60px; padding: 12px 14px; font-size: 18px; font-weight: 600; }
.catalog-filter-dialog.is-size .catalog-filter-dialog__option[aria-pressed=true] { box-shadow: inset 0 0 0 1px var(--bottega-choice-active); }
.catalog-filter-dialog__size-group .catalog-filter-dialog__option > span:first-child { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .catalog-filter-dialog:not(.is-brand):not(.is-size) .catalog-filter-dialog__options { grid-template-columns: minmax(0, 1fr); }
  .catalog-filter-dialog.is-brand .catalog-filter-dialog__options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-filter-dialog__option-sort > span { flex-basis: 100%; }
}

.catalog-active-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; }
.catalog-active-filters button { display: inline-flex; align-items: center; gap: 10px; min-width: 0; max-width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid var(--bottega-choice-active); border-radius: 12px; background: var(--bottega-surface-selected); color: var(--bottega-text); font: inherit; font-size: 16px; line-height: 1.4; text-align: left; cursor: pointer; }
.catalog-active-filters button > span { min-width: 0; overflow-wrap: anywhere; }
.catalog-active-filters button > span > span { font-weight: 600; }
.catalog-active-filters .icon { flex: 0 0 18px; width: 18px; height: 18px; }
.catalog-active-filters button:focus-visible { outline: 2px solid var(--bottega-focus); outline-offset: 3px; }
.catalog-selection-status { margin: 0 0 16px; color: var(--bottega-text); font-size: 16px; line-height: 1.5; }

/* content-pages.css */
/* Published WordPress pages and inherited guide templates share the shop UI. */
.content-page { min-width: 0; color: var(--bottega-text); font-family: var(--bottega-font-family); }
.content-page__breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 24px; font-size: 16px; line-height: 1.5; }
.content-page__breadcrumbs [aria-current] { min-width: 0; overflow-wrap: anywhere; }
.content-page__hero { --link-button-background: #fff9ed; --link-button-hover: var(--bottega-surface-soft); --link-button-border: #fff9ed; --link-button-color: var(--bottega-accent-hover); display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(220px, .7fr); overflow: hidden; background: var(--bottega-accent); color: #fff9ed; border-radius: var(--bottega-radius); }
.bottega-site .content-page__hero :is(h1, h2, h3, h4) { color: inherit; }
.content-page__hero:not(:has(> img)) { grid-template-columns: minmax(0, 1fr); }
.content-page__hero > div { align-self: center; padding: clamp(24px, 3vw, 52px); min-width: 0; }
.content-page__hero .bottega-eyebrow { color: inherit; font-size: 16px; }
.content-page h1 { margin: 12px 0 20px; font-size: clamp(32px, 3vw, 54px); line-height: 1.12; letter-spacing: -.035em; font-weight: 700; overflow-wrap: anywhere; }
.content-page__hero p { margin: 0; max-width: var(--bottega-reading-width); color: inherit; font-size: 18px; line-height: 1.65; }
.content-page__hero > img { width: 100%; height: 100%; max-height: 600px; min-height: 280px; object-fit: cover; }
/* Compact editorial headings share the legal-page proportions. */
.bottega-site .content-page__hero--compact { display: block; padding: clamp(16px, 1.4vw, 24px) clamp(20px, 2vw, 30px); }
.bottega-site .content-page__hero--compact > div { padding: 0; }
.bottega-site .content-page__hero--compact h1 { margin: 0; font-size: clamp(30px, 2.6vw, 36px); line-height: 1.15; letter-spacing: -.03em; hyphens: auto; }
.bottega-site .content-page__hero--compact .content-page__breadcrumbs { margin: 0 0 8px; gap: 8px; color: inherit; }
.bottega-site .content-page__hero--compact .content-page__breadcrumbs a { min-height: 32px; padding: 4px 0; border: 0; border-radius: 0; background: transparent; color: inherit; }
.bottega-site .content-page__hero--compact .content-page__breadcrumbs a:hover { background: transparent; color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.content-page--compact > .content-page__body { margin-top: 18px; }
.content-page__body-image { display: block; max-width: 100%; height: auto; max-height: 360px; object-fit: contain; margin-top: 24px; border-radius: 18px; }
.content-page__actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px; margin-top: 26px; }
.content-page__actions .button { min-height: 48px; white-space: normal; text-align: left; gap: 12px; }
.content-page__hero .button { background: #fff9ed; color: var(--bottega-accent-hover); border: 1px solid #fff9ed; }
.content-page__hero .button--secondary { background: transparent; color: #fff9ed; }
.content-page__hero .button:hover { background: var(--bottega-surface-soft); color: var(--bottega-accent-hover); }
.content-page__facts { display: flex; flex-wrap: wrap; gap: 12px 20px; list-style: none; padding: 0; margin: 26px 0 0; font-size: 16px; line-height: 1.5; }
.content-page__facts li { display: flex; gap: 8px; align-items: baseline; }
.content-page__body { background: #fff; border-radius: var(--bottega-radius); padding: clamp(22px, 3vw, 48px); margin-top: 28px; }
.content-page__body :is(p, li, dl) { max-width: var(--bottega-reading-width); }
.content-page__body .bottega-wp-content > :first-child { margin-top: 0; }
.content-page__body .bottega-wp-content > :last-child { margin-bottom: 0; }
.content-page__body .bottega-wp-content table { display: block; width: 100%; overflow-x: auto; }
.content-page__category-guide { margin-top: 36px; }
.catalog-description-sidebar__content table { display: block; max-width: 100%; overflow-x: auto; }
.catalog-description-sidebar__content :is(img, video) { max-width: 100%; height: auto; }
.content-guide { display: grid; gap: 32px; margin-top: 32px; }
.content-page--compact > .content-guide { gap: 24px; margin-top: 20px; }
.content-guide__intro { display: flow-root; margin-top: 18px; }
.content-guide__intro > p { max-width: var(--bottega-reading-width); margin: 0; font-size: 18px; line-height: 1.65; }
.content-guide__intro > img { float: right; width: 128px; height: 96px; margin: 0 0 12px 20px; border-radius: 14px; object-fit: cover; }
.content-guide__intro .content-page__actions { margin-top: 14px; }
.content-guide__intro .content-page__facts { clear: both; margin-top: 14px; color: var(--bottega-accent-hover); }
.content-guide h2, .content-guide-directory h2 { margin: 0 0 16px; font-size: clamp(26px, 2.1vw, 34px); line-height: 1.2; font-weight: 700; letter-spacing: -.025em; }
.content-guide h3 { font-size: 24px; line-height: 1.25; margin: 0 0 12px; }
.content-guide p { margin: 0 0 20px; max-width: var(--bottega-reading-width); font-size: 18px; line-height: 1.7; }
.content-guide__sections { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.content-guide__sections > section { min-width: 0; padding: 28px; background: var(--bottega-surface-soft); border-radius: var(--bottega-radius); }
.content-guide__sections h2 { font-size: 25px; }
.content-guide__sections p:last-child { margin-bottom: 0; }
.content-guide__number { display: block; color: var(--bottega-accent); font-size: 18px; margin-bottom: 20px; font-weight: 700; }
.coffee-guide-tool, .content-guide__comparison, .content-guide__faq { background: #fff; padding: clamp(22px, 3vw, 40px); border-radius: var(--bottega-radius); min-width: 0; }
.coffee-guide-tool > .bottega-eyebrow { display: block; font-size: 16px; margin-bottom: 12px; }
.coffee-guide-tool__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 26px 0; }
.coffee-guide-tool__fields > label:last-child { grid-column: 1 / -1; }
.coffee-guide-tool__fields label { display: grid; align-content: start; gap: 8px; min-width: 0; font-size: 17px; font-weight: 600; }
.coffee-guide-tool__fields :is(input, select) { width: 100%; min-width: 0; min-height: 50px; padding: 12px 16px; border: 1px solid var(--bottega-control-border); border-radius: 12px; color: var(--bottega-text); background: #fff; font: inherit; font-weight: 400; }
.coffee-guide-tool__results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-bottom: 24px; }
.coffee-guide-tool__results > div { display: grid; gap: 8px; padding: 24px; background: var(--bottega-surface-selected); color: var(--bottega-accent-hover); border-radius: 18px; font-size: 18px; }
.coffee-guide-tool__results strong { font-size: clamp(30px, 3vw, 44px); line-height: 1.2; overflow-wrap: anywhere; }
.coffee-guide-tool .coffee-guide-tool__error { color: #9b3227; }
.coffee-guide-tool__choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 26px 0; }
.coffee-guide-tool__choices button { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; text-align: left; min-height: 96px; padding: 20px; border: 1px solid var(--bottega-border); border-radius: 18px; font: inherit; font-size: 18px; font-weight: 600; color: var(--bottega-text); background: var(--bottega-surface); cursor: pointer; }
.coffee-guide-tool__choices button[aria-pressed=true] { background: var(--bottega-accent); color: #fff9ed; border-color: var(--bottega-accent); }
.coffee-guide-tool__roast { margin-bottom: 24px; }
.content-guide__table { width: 100%; overflow-x: auto; border: 1px solid var(--bottega-border); border-radius: 16px; }
.content-guide__table table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 18px; line-height: 1.55; }
.content-guide__table th, .content-guide__table td { padding: 20px; vertical-align: top; text-align: left; border-bottom: 1px solid var(--bottega-border); }
.content-guide__table thead { background: var(--bottega-surface-selected); }
.content-guide__table tbody tr:last-child > * { border-bottom: 0; }
.content-guide__faq details { border-bottom: 1px solid var(--bottega-border); }
.content-guide__faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 0; min-height: 48px; list-style: none; cursor: pointer; font-size: 18px; font-weight: 600; }
.content-guide__faq summary::-webkit-details-marker { display: none; }
.content-guide__faq summary > svg { transform: rotate(90deg); flex-shrink: 0; }
.content-guide__faq details[open] summary > svg { transform: rotate(-90deg); }
.content-guide__related { padding-block: 8px; }
.content-guide-directory { margin-top: 36px; }
.content-guide-directory__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.content-guide-directory__grid > a { display: grid; grid-template-rows: auto 1fr auto; justify-items: start; gap: 18px; padding: 28px; border: 1px solid var(--bottega-border); border-radius: var(--bottega-radius); color: var(--bottega-text); background: var(--bottega-surface-soft); text-decoration: none; }
.content-guide-directory__grid strong { font-size: 24px; line-height: 1.3; }
.content-guide-directory__heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; }
.content-guide-directory__heading h2 { margin-bottom: 0; }
.content-guide-directory__heading > span { font-size: 16px; color: var(--bottega-text-muted); }

/* Public review data keeps its real score, author, date and full text. */
.customer-reviews { display: grid; gap: 20px; }
.customer-reviews__overview { display: grid; grid-template-columns: minmax(210px, .32fr) minmax(0, 1fr); align-items: center; gap: 24px; padding: 22px; background: #fff; border-radius: var(--bottega-radius); }
.customer-reviews__overview:not(:has(> aside)), .customer-reviews__overview:not(:has(> p)) { grid-template-columns: 1fr; }
.customer-reviews__overview > p { margin: 0; font-size: 18px; line-height: 1.65; max-width: 78ch; }
.customer-reviews__summary { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 6px 12px; margin: 0; padding: 0; color: var(--bottega-accent-hover); }
.customer-reviews__summary > div { display: flex; align-items: baseline; gap: 10px; }
.customer-reviews__summary > div { grid-row: 1 / 3; }
.customer-reviews__summary strong { font-size: 36px; line-height: 1; font-weight: 650; letter-spacing: -.04em; }
.customer-reviews__summary > div > span { font-size: 16px; }
.customer-reviews__summary p { grid-column: 2; margin: 0; color: inherit; font-size: 16px; font-weight: 650; line-height: 1.4; }
.customer-reviews__summary .customer-reviews__stars { font-size: 20px; }
.customer-reviews__stars { position: relative; display: inline-block; width: max-content; font-size: 24px; line-height: 1.1; letter-spacing: .12em; color: #c6bcaa; }
.customer-reviews__stars > span:last-child { position: absolute; inset: 0 auto 0 0; overflow: hidden; white-space: nowrap; color: #775b40; }
.customer-reviews__heading { display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 20px; }
.customer-reviews__heading h2 { color: var(--bottega-text); font-size: clamp(28px, 2.5vw, 38px); line-height: 1.2; margin: 10px 0 0; }
.customer-reviews__heading > span { font-size: 16px; color: var(--bottega-text-muted); }
.customer-reviews__policy { max-width: 76ch; font-size: 18px; line-height: 1.65; margin: 20px 0 28px; }
.customer-reviews__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: start; }
.customer-reviews__card { display: flex; flex-direction: column; gap: 20px; min-width: 0; padding: 28px; border: 1px solid var(--bottega-border); border-radius: var(--bottega-radius); background: #fff; }
.customer-reviews__card h3 { color: var(--bottega-text); margin: 0; font-size: 23px; line-height: 1.3; font-weight: 650; overflow-wrap: anywhere; }
.customer-reviews__card > p { font-size: 18px; line-height: 1.65; margin: 0; white-space: pre-line; overflow-wrap: anywhere; }
.customer-reviews__card footer { display: flex; align-items: center; gap: 12px; margin-top: auto; padding-top: 20px; border-top: 1px solid var(--bottega-border); }
.customer-reviews__card footer > div { display: grid; gap: 5px; min-width: 0; }
.customer-reviews__card footer strong { font-size: 17px; line-height: 1.4; overflow-wrap: anywhere; }
.customer-reviews__card footer div > span { font-size: 15px; color: var(--bottega-text-muted); }
.customer-reviews__avatar { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; border-radius: 50%; background: var(--bottega-surface-selected); color: var(--bottega-accent); font-size: 16px; font-weight: 650; text-transform: uppercase; }
.customer-reviews__card--rating { background: var(--bottega-surface-soft); }

/* The coffee guide is an entry to real formats and the published CMS guides. */
.coffee-guide-landing { display: grid; gap: 20px; }
.coffee-guide-landing__intro .bottega-wp-content > :last-child { margin-bottom: 0; }
.coffee-guide-landing__intro .content-page__actions { margin-top: 14px; }
.coffee-guide-landing__section-head { max-width: 78ch; margin-bottom: 26px; }
.coffee-guide-landing h2 { font-size: clamp(28px, 2.3vw, 36px); line-height: 1.2; color: var(--bottega-text); letter-spacing: -.025em; margin: 10px 0 18px; }
.coffee-guide-landing__format-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.coffee-guide-landing__format-grid > article { display: grid; grid-template-rows: auto auto 1fr auto; align-items: start; min-width: 0; padding: 24px; border-radius: var(--bottega-radius); background: var(--bottega-surface-soft); }
.coffee-guide-landing__format-art { display: grid; place-items: center; width: 100%; min-height: 150px; margin-bottom: 22px; border-radius: 16px; background: var(--bottega-category-beans); }
.coffee-guide-landing__format-grid [data-format=pads] .coffee-guide-landing__format-art { background: var(--bottega-category-pads); }
.coffee-guide-landing__format-grid [data-format=capsules] .coffee-guide-landing__format-art { background: var(--bottega-category-capsules); }
.coffee-guide-landing__format-art .category-illustration { width: 190px; max-width: 100%; height: auto; color: var(--bottega-accent); fill: none; stroke: currentColor; }
.coffee-guide-landing__format-grid h3 { font-size: 26px; color: var(--bottega-text); margin: 0 0 14px; line-height: 1.2; }
.coffee-guide-landing__format-grid p { font-size: 18px; line-height: 1.65; margin: 0 0 24px; }
.coffee-guide-landing__format-grid .button { width: 100%; min-height: 48px; justify-content: space-between; text-align: left; white-space: normal; gap: 10px; }
.coffee-guide-landing .content-guide-directory { margin-top: 0; }
.coffee-guide-landing .content-guide-directory__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.coffee-guide-landing .content-guide-directory__grid > a { background: #fff; padding: 24px; gap: 20px; }
.coffee-guide-landing .content-guide-directory__grid strong { font-size: 22px; }
.coffee-guide-landing__reading { display: grid; grid-template-columns: minmax(190px, .3fr) minmax(0, 1fr); align-items: start; gap: 28px; }
.coffee-guide-landing__reading > nav { position: sticky; top: 24px; display: grid; gap: 10px; }
.coffee-guide-landing__reading > nav > strong { font-size: 18px; margin-bottom: 8px; }
.coffee-guide-landing__reading > nav > a { justify-content: flex-start; text-align: left; }
.coffee-guide-landing__reading > div { display: grid; gap: 24px; min-width: 0; }
.coffee-guide-landing__chapter { padding: clamp(22px, 3vw, 40px); border-radius: var(--bottega-radius); background: #fff; }
.coffee-guide-landing__chapter h2 { margin-top: 0; }
.coffee-guide-landing__chapter .bottega-wp-content :is(p, li) { max-width: var(--bottega-reading-width); }
.coffee-guide-landing :is(section, [id]), .customer-reviews [id] { scroll-margin-top: 130px; }
@media (max-width: 1250px) {
  .customer-reviews__grid, .coffee-guide-landing .content-guide-directory__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .customer-reviews__overview { grid-template-columns: 1fr; gap: 16px; padding: 18px; }
  .coffee-guide-landing__format-grid { grid-template-columns: 1fr; }
  .coffee-guide-landing__reading { grid-template-columns: 1fr; }
  .coffee-guide-landing__reading > nav { position: static; display: flex; flex-wrap: wrap; }
  .coffee-guide-landing__reading > nav > strong { width: 100%; }
}
@media (max-width: 620px) {
  .customer-reviews__grid, .coffee-guide-landing .content-guide-directory__grid { grid-template-columns: 1fr; }
  .customer-reviews__card { padding: 24px; }
}
@media (max-width: 1100px) {
  .content-page__hero { grid-template-columns: 1fr; }
  .content-page__hero > img { height: 250px; min-height: 0; }
  .content-guide__sections { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .content-page__hero > img { height: 200px; }
  .content-guide__intro > img { width: 96px; height: 72px; margin-left: 14px; }
  .content-page__actions > .button { width: 100%; justify-content: space-between; }
  .coffee-guide-tool__fields, .coffee-guide-tool__choices, .content-guide-directory__grid { grid-template-columns: 1fr; }
  .coffee-guide-tool__choices button { min-height: 64px; flex-direction: row; align-items: center; }
  .coffee-guide-tool__results { gap: 12px; }
  .coffee-guide-tool__results > div { padding: 18px; }
  .coffee-guide-tool__results strong { font-size: 30px; }
}

/* Über uns: vom Nutzer gewünschte volle Inhaltsbreite. */
.content-page--wide .content-page__body :is(p, li, dl) { max-width: none; }

/* link-buttons.css */
/* Shared visible link actions. Navigation URLs, card layouts and native semantics stay intact. */
:root {
  --link-button-background: var(--bottega-surface-selected);
  --link-button-hover: var(--bottega-surface-soft);
  --link-button-border: var(--bottega-accent);
  --link-button-color: var(--bottega-accent-hover);
}

:root :is(
  .link-button,
  .account-login-help,
  .account-login-register > button,
  .coffee-finder__details,
  .coffee-finder__shop,
  .product-availability-alternatives__all,
  .bottega-site .button--secondary,
  .bottega-section__heading > a,
  .bottega-home-category__all,
  .product-related__heading > a,
  .bottega-sidebar__all,
  .bottega-sidebar__note > a,
  .catalog-description-sidebar__guide,
  .catalog-description-sidebar__category .catalog-description-sidebar__content > a,
  .coffee-finder__header > a,
  .coffee-finder__actions > a,
  .bottega-text-action,
  .compare-product__actions > a,
  .compare-page__add,
  .search-overlay__empty > a,
  .search-overlay__footer > button,
  .search-overlay__discover nav > a,
  .drawer__recommendation-more,
  .drawer__continue,
  .checkout-edit-cart,
  .checkout-back,
  .checkout-account-link > button,
  .checkout-account-dialog__alternatives > button,
  .checkout-account-dialog__guest,
  .checkout-stripe__cancel,
  .checkout-payment__delivery > button,
  .checkout-step__edit,
  .checkout-address-extra > summary,
  .account-orders__actions a,
  .account-order__actions a,
  .account-login-links a,
  .legal-page__navigation a,
  .bottega-footer__grid > div:not(.bottega-footer__brand) > a,
  .bottega-footer__bottom a
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  min-width: 0;
  max-width: 100%;
  padding: 11px 18px;
  border: 1px solid var(--link-button-border);
  border-radius: 999px;
  background: var(--link-button-background);
  color: var(--link-button-color);
  font-family: var(--bottega-font-family);
  font-size: var(--bottega-font-control);
  font-weight: 650;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  box-shadow: none;
  transform: none;
  vertical-align: middle;
}

:root :is(
  .link-button,
  .account-login-help,
  .account-login-register > button,
  .coffee-finder__details,
  .coffee-finder__shop,
  .product-availability-alternatives__all,
  .bottega-site .button--secondary,
  .bottega-section__heading > a,
  .bottega-home-category__all,
  .product-related__heading > a,
  .bottega-sidebar__all,
  .bottega-sidebar__note > a,
  .catalog-description-sidebar__guide,
  .coffee-finder__header > a,
  .coffee-finder__actions > a,
  .bottega-text-action,
  .compare-product__actions > a,
  .search-overlay__empty > a,
  .search-overlay__footer > button,
  .drawer__recommendation-more,
  .drawer__continue,
  .checkout-edit-cart,
  .checkout-back,
  .checkout-account-link > button,
  .legal-page__navigation a,
  .bottega-footer__grid > div:not(.bottega-footer__brand) > a,
  .bottega-footer__bottom a
):hover:not(:disabled) {
  background: var(--link-button-hover);
  border-color: var(--link-button-color);
  text-decoration: none;
  transform: none;
}

:root .link-button .icon { flex: 0 0 18px; width: 18px; height: 18px; }
.bottega-section__heading, .product-related__heading { flex-wrap: wrap; gap: 12px 20px; }
.bottega-sidebar .bottega-sidebar__all { width: 100%; margin-top: 10px; }
.bottega-sidebar__note > a { margin-top: 12px; }
.bottega-footer {
  --link-button-background: #5d5047;
  --link-button-hover: #6d5e52;
  --link-button-border: #d7c7b3;
  --link-button-color: #fffaf2;
}
.bottega-footer__grid > div:not(.bottega-footer__brand) > a { display: flex; width: fit-content; margin: 0 0 10px; }
.checkout-step__edit { flex: none; }
.checkout-address-extra > summary { width: fit-content; margin-bottom: 6px; }

/* Navigation rows and standalone references keep a clearly bounded hit area. */
:root :is(.bottega-sidebar nav > a:not(.bottega-sidebar__all), .norja-mobile-menu nav > a) {
  border: 1px solid var(--bottega-border);
  border-radius: 12px;
  background: var(--bottega-surface-soft);
}
:root :is(
  .bottega-wp-content a:not(:has(img)),
  .legal-page__content a:not(:has(img)),
  .product-information__description a:not(:has(img)),
  .catalog-description-sidebar__content a:not(:has(img)),
  .checkout-check a,
  .product-detail__subtitle a
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  max-width: 100%;
  padding: 7px 12px;
  margin-block: 3px;
  border: 1px solid var(--link-button-border);
  border-radius: 12px;
  background: var(--link-button-background);
  color: var(--link-button-color);
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  overflow-wrap: anywhere;
  text-decoration: none;
  vertical-align: middle;
}

/* References inside prose remain text links. Explicit actions keep their buttons. */
:root .bottega-site :is(p, dd, td, blockquote, figcaption) a:not(.button):not(.link-button):not(.wp-action-link),
:root .bottega-site .wp-inline-link,
:root .bottega-site .checkout-check a {
  display: inline;
  min-height: 0;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  line-height: inherit;
  vertical-align: baseline;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
  box-shadow: none;
}
:root .bottega-site .wp-inline-link:hover,
:root .bottega-site :is(p, dd, td, blockquote, figcaption) a:not(.button):not(.link-button):not(.wp-action-link):hover {
  background: transparent;
  color: inherit;
  text-decoration-thickness: 2px;
}
:root .bottega-site :is(p, dd, td, blockquote, figcaption) a:not(.button):not(.link-button):not(.wp-action-link):focus-visible,
:root .bottega-site .wp-inline-link:focus-visible,
:root .bottega-site .checkout-check a:focus-visible {
  text-decoration-thickness: 3px;
  text-underline-offset: .22em;
}
/* Breadcrumbs: minimal text navigation; standalone actions retain their buttons. */
:root :is(.bottega-breadcrumbs, .legal-page__breadcrumbs, .wishlist-page__breadcrumbs, .compare-page__breadcrumbs, .conversion-breadcrumbs, .account-page__breadcrumbs) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  min-width: 0;
  margin-bottom: 16px;
  color: var(--bottega-text-muted);
  font-size: var(--bottega-font-control);
  line-height: 1.5;
}
:root :is(.bottega-breadcrumbs, .legal-page__breadcrumbs, .wishlist-page__breadcrumbs, .compare-page__breadcrumbs, .conversion-breadcrumbs, .account-page__breadcrumbs) a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  max-width: 100%;
  padding: 4px 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--bottega-text);
  font-family: inherit;
  font-size: var(--bottega-font-control);
  font-weight: 400;
  line-height: 1.4;
  text-decoration: none;
  white-space: normal;
}
:root :is(.bottega-breadcrumbs, .legal-page__breadcrumbs, .wishlist-page__breadcrumbs, .compare-page__breadcrumbs, .conversion-breadcrumbs, .account-page__breadcrumbs) a:hover {
  background: transparent;
  text-decoration: underline;
  text-underline-offset: .2em;
  color: var(--bottega-accent-hover);
}
.conversion-breadcrumbs > ol { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; min-width: 0; width: 100%; margin: 0; padding: 0; list-style: none; }
.conversion-breadcrumbs > ol > li { display: flex; align-items: center; gap: 10px; min-width: 0; }
.conversion-breadcrumbs > ol > li:not(:last-child) { flex: 0 1 auto; }
.conversion-breadcrumbs > ol > li > [aria-hidden="true"] { flex: none; color: var(--bottega-text-muted); }
.conversion-breadcrumbs > ol > li:last-child { flex: 1 1 22rem; color: var(--bottega-text-muted); }
.conversion-breadcrumbs [aria-current="page"] { min-width: 0; overflow-wrap: anywhere; font-weight: 400; }

@media (max-width: 520px) {
  .bottega-section__heading > a, .bottega-home-category__all, .product-related__heading > a { min-height: 48px; white-space: normal; }
  .conversion-breadcrumbs > ol > li:last-child { flex-basis: 100%; }
}

/* Mobile Breadcrumbs bleiben eine kurze Textzeile statt zusätzlicher Aktionsflächen. */
@media (max-width: 760px) {
  :root .bottega-site :is(.bottega-breadcrumbs, .legal-page__breadcrumbs, .wishlist-page__breadcrumbs, .compare-page__breadcrumbs, .conversion-breadcrumbs, .account-page__breadcrumbs) { gap: 2px 6px; margin-bottom: 10px; font-size: 13px; line-height: 1.4; }
  :root .bottega-site :is(.bottega-breadcrumbs, .legal-page__breadcrumbs, .wishlist-page__breadcrumbs, .compare-page__breadcrumbs, .conversion-breadcrumbs, .account-page__breadcrumbs) a { min-height: 28px; padding: 3px 0; border: 0; border-radius: 0; background: transparent; font-size: 13px; font-weight: 400; line-height: 1.4; }
  .conversion-breadcrumbs > ol { gap: 2px 6px; }
  .conversion-breadcrumbs > ol > li { gap: 6px; }
  .conversion-breadcrumbs > ol > li:last-child,
  .conversion-breadcrumbs > ol > li:nth-last-child(2) > [aria-hidden="true"] { display: none; }
}

/* Kategorieaktion ist ein eigenständiger Button, kein Link im Fliesstext. */
:root .product-detail__subtitle > .product-detail__category-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px;
  padding: 10px 16px; border: 1px solid var(--bottega-accent); border-radius: 12px;
  background: var(--bottega-accent); color: #fffaf2; font: 600 16px/1.4 var(--bottega-font-family); text-decoration: none;
}
:root .product-detail__subtitle > .product-detail__category-button::after { content: none; display: none; }
:root .product-detail__subtitle > .product-detail__category-button:is(:hover, :active, :focus) { background: var(--bottega-surface-selected); border-color: var(--bottega-accent); color: var(--bottega-text); text-decoration: none; }

/* Secondary account and checkout navigation uses text links beside the primary submit action. */
:root .bottega-site :is(
  .account-login-panel > .account-login-help,
  .account-login-panel .account-login-form .account-login-help,
  .account-login-panel .account-login-register > button,
  .checkout-refresh .checkout-account-link > button,
  .checkout-refresh .checkout-address-extra > summary,
  .checkout-refresh .checkout-account-dialog__alternatives > button,
  .checkout-refresh .checkout-account-dialog__guest
) {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  min-height: 44px;
  padding: 8px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--bottega-link, var(--bottega-accent));
  font: 500 var(--bottega-font-control)/1.5 var(--bottega-font-family);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  vertical-align: baseline;
  box-shadow: none;
}

:root .bottega-site :is(
  .account-login-panel > .account-login-help,
  .account-login-panel .account-login-form .account-login-help,
  .account-login-panel .account-login-register > button,
  .checkout-refresh .checkout-account-link > button,
  .checkout-refresh .checkout-address-extra > summary,
  .checkout-refresh .checkout-account-dialog__alternatives > button,
  .checkout-refresh .checkout-account-dialog__guest
):is(:hover, :focus-visible, :active) {
  background: transparent;
  border-color: transparent;
  color: var(--bottega-link-strong, var(--bottega-accent-hover));
  text-decoration: underline;
  text-decoration-thickness: 2px;
  box-shadow: none;
  transform: none;
}

/* catalog-sidebar.css */
.bottega-catalog-sidebar { position: sticky; top: calc(var(--bottega-header-height) + 12px); align-self: start; min-width: 0; max-height: calc(100dvh - var(--bottega-header-height) - 24px); padding-right: 18px; border-right: 1px solid var(--bottega-border); overflow-y: auto; overscroll-behavior: contain; }
:root .catalog-sidebar__choices { display: grid; grid-template-columns: minmax(0, 1fr); gap: 5px; }
:root .catalog-sidebar__choices .catalog-category-choice { box-sizing: border-box; display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 10px; width: 100%; min-height: 48px; margin: 0; padding: 9px 10px; border: 1px solid var(--bottega-control-border); border-radius: 12px; background: var(--bottega-surface); color: var(--bottega-text); font: inherit; font-size: 16px; font-weight: 600; line-height: 1.4; text-align: left; text-decoration: none; cursor: pointer; }
:root .catalog-sidebar__choices .catalog-category-choice > svg { display: block; flex: 0 0 28px; width: 28px; height: 28px; margin: 0; color: inherit; }
:root .catalog-sidebar__choices .catalog-category-choice > span { min-width: 0; margin: 0; color: inherit; overflow-wrap: break-word; }
:root .catalog-sidebar__choices .catalog-category-choice.is-active { color: #fff; background: var(--bottega-choice-active); border-color: var(--bottega-choice-active); }
@media (hover: hover) { :root .catalog-sidebar__choices .catalog-category-choice:hover { background: var(--bottega-surface-selected); border-color: var(--bottega-accent); color: var(--bottega-accent-hover); } }

/* Derselbe Platz für die vollständige Sidebar in jedem bestehenden Seitenrahmen. */
:root .bottega-layout--sidebar { grid-template-columns: var(--bottega-catalog-sidebar-width) minmax(0, 1fr); }
.bottega-layout--sidebar > .bottega-catalog-sidebar { grid-row: auto; }
.bottega-catalog-sidebar .catalog-filter-panel > h2 { margin: 0 0 18px; font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: .04em; text-transform: uppercase; }
@media (max-width: 1000px) {
  :root .bottega-layout--sidebar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .bottega-catalog-sidebar { position: static; max-height: none; padding: 0; border: 0; overflow: visible; overscroll-behavior: auto; }
}

/* focus-states.css */
/* One shared keyboard focus treatment, including portalled dialogs.
   Active selections keep their own filled state; focus adds an underline or marker. */
:root :focus {
  outline: none !important;
  box-shadow: none !important;
}

:root :is(.checkout-choice, .coffee-finder__choice, .coffee-finder__taste, .catalog-facet):focus-within {
  outline: none !important;
}

:root :is(.search-overlay__form, .catalog-filter-dialog__search, .catalog-header-search, .marketplace-search):focus-within {
  outline: none !important;
  box-shadow: none !important;
}

:root :is(a[href], button, summary, [role="button"], [role="tab"]):focus-visible {
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .22em;
}

/* Flex/grid children need their own decoration for a reliable visible underline. */
:root :is(a[href], button, summary, [role="button"], [role="tab"]):focus-visible > :is(span, strong, b) {
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .22em;
}

:root :is(input:not([type="checkbox"], [type="radio"], [type="range"], [type="color"], [type="hidden"]), textarea, select, [contenteditable="true"]):focus-visible {
  background-color: var(--bottega-surface-selected) !important;
  border-bottom-color: var(--bottega-accent-hover) !important;
  caret-color: var(--bottega-accent-hover);
}

:root label:has(> :is(input[type="checkbox"], input[type="radio"]):focus-visible) {
  text-decoration: underline 2px;
  text-underline-offset: .22em;
}

:root :is(button, a)[aria-label]:has(> .icon):not(:has(> span, > strong)):focus-visible {
  background-color: var(--bottega-surface-selected) !important;
  color: var(--bottega-accent-hover) !important;
}

:root .bottega-brand:focus-visible { border-radius: 12px; background: var(--bottega-surface-selected); opacity: 1; }
:root :is(a[href], button)[aria-label]:has(> img):focus-visible { background-color: var(--bottega-surface-selected); }

/* Image-only links and the stock indicator have no text to underline. */
:root :is(.bottega-product__media, .bottega-product__stock-trigger):focus-visible { position: relative; }
:root .bottega-product__media:focus-visible { background-color: var(--bottega-surface-selected); }
:root :is(.bottega-product__media, .bottega-product__stock-trigger):focus-visible::after {
  content: "";
  position: absolute;
  z-index: 3;
  right: 12px;
  bottom: 6px;
  left: 12px;
  height: 3px;
  border-radius: 999px;
  background: var(--bottega-accent-hover);
  pointer-events: none;
}

:root input[type="range"]:focus-visible::-webkit-slider-thumb { outline: none !important; box-shadow: none !important; background: var(--bottega-text); transform: scale(1.15); }
:root input[type="range"]:focus-visible::-moz-range-thumb { outline: none !important; box-shadow: none !important; background: var(--bottega-text); transform: scale(1.15); }

/* The horizontally scrollable comparison table is a keyboard target too. */
:root .compare-table-wrap:focus-visible { border-bottom-color: var(--bottega-accent-hover); border-bottom-width: 3px; }

/* The search form already marks focus with its surrounding border. */
:root .search-overlay .search-overlay__form input:focus-visible {
  background-color: transparent !important;
}

/* dark-mode.css */
/* Shared appearance roles. Light mode retains the existing palette. */
:root {
  color-scheme: light;
  --bottega-surface-raised: #fff;
  --bottega-text-strong: #171717;
  --bottega-link: var(--bottega-accent);
  --bottega-link-strong: var(--bottega-accent-hover);
  --bottega-error: #92382c;
  --bottega-error-surface: #fff1eb;
  --bottega-success: #276640;
  --bottega-image-surface: #f7f0e6;
  --bottega-image-ink: var(--bottega-accent-hover);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bottega-text: #f1eee5;
  --bottega-text-strong: #faf7f0;
  --bottega-text-muted: #bcb9ad;
  --bottega-accent: #476b52;
  --bottega-accent-hover: #36543f;
  --bottega-choice-active: #496b51;
  --bottega-link: #b4d3a8;
  --bottega-link-strong: #c9e0bf;
  --bottega-surface: #151915;
  --bottega-surface-soft: #1f261f;
  --bottega-surface-raised: #242c25;
  --bottega-surface-selected: #334333;
  --bottega-border: #455044;
  --bottega-control-border: #82917e;
  --bottega-focus: #c1d9b4;
  --bottega-navigation: #2d342c;
  --bottega-navigation-text: #faf3e7;
  --bottega-on-accent: #faf3e7;
  --bottega-image-ink: #36543f;
  --bottega-nav-selected: #3e4f3c;
  --bottega-nav-selected-text: #f1eee5;
  --bottega-error: #ffb5a6;
  --bottega-error-surface: #3a2723;
  --bottega-success: #b5d8b3;
  --sage: #b4d3a8;
  --success: var(--bottega-success);
  --link-button-color: var(--bottega-link-strong);
  --link-button-border: #82917e;
  --shadow-strong: 0 24px 64px #0006;
  scrollbar-color: #697764 var(--bottega-surface);
}

.theme-toggle { cursor: pointer; }
.theme-toggle > svg { width: 22px; height: 22px; flex: none; }
.theme-toggle .theme-toggle__sun { display: none; }
:root[data-theme="dark"] .theme-toggle .theme-toggle__sun { display: block; }
:root[data-theme="dark"] .theme-toggle .theme-toggle__moon { display: none; }
.norja-mobile-menu .theme-toggle--menu { display: none; }
.theme-toggle:focus-visible { background: var(--bottega-surface-selected); color: var(--bottega-link-strong); }

@media (max-width: 1000px) {
  .norja-header .theme-toggle--header { display: none; }
  .norja-mobile-menu .theme-toggle--menu { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 48px; }
}

:root[data-theme="dark"],
:root[data-theme="dark"] body,
:root[data-theme="dark"] .bottega-site {
  background: var(--bottega-surface);
  color: var(--bottega-text);
}

:root[data-theme="dark"] ::selection { background: #b4d3a8; color: #151915; }
:root[data-theme="dark"] .bottega-skip { background: var(--bottega-accent); color: #faf3e7; }
:root[data-theme="dark"] .norja-header { background: #181e18f5; border-color: var(--bottega-border); }
:root[data-theme="dark"] .norja-navigation { background: var(--bottega-navigation); border-color: var(--bottega-border); }
:root[data-theme="dark"] .norja-navigation a.is-active { background: var(--bottega-surface-selected); color: var(--bottega-text); }
:root[data-theme="dark"] .norja-header .bcl-header-wordmark { color: var(--bottega-text); }
:root[data-theme="dark"] .norja-cart-button__count { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site .bottega-hero__copy .button--primary { background: #faf3e7; border-color: #faf3e7; color: var(--bottega-image-ink); }
:root[data-theme="dark"] .bottega-site .bottega-hero__copy .button--primary:hover { background: var(--bottega-category-capsules); border-color: var(--bottega-category-capsules); }
:root[data-theme="dark"] .bottega-hero__category:hover { color: var(--bottega-link); }
:root[data-theme="dark"] .bottega-hero__category[data-category="Pads"] { --hero-category-surface: #355640; }
:root[data-theme="dark"] .bottega-hero__category[data-category="Bohnen"] { --hero-category-surface: #3b5b49; }
:root[data-theme="dark"] .bottega-hero__category[data-category="Kapseln"] { --hero-category-surface: #304d3d; }
:root[data-theme="dark"] .bottega-hero__category[data-category="Maschinen"] { --hero-category-surface: #405c4c; }
:root[data-theme="dark"] .bottega-hero__category-media { color: #fff; }

/* Original packshots and manufacturer logos retain their original colours. */
:root[data-theme="dark"] .bottega-site .bottega-product { background: var(--bottega-surface-soft); border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .bottega-product .bottega-product__visual { overflow: hidden; background: var(--bottega-image-surface); }
:root[data-theme="dark"] .bottega-site .bottega-product .bottega-product__tools button { background: #fffaf2; color: var(--bottega-image-ink); }
:root[data-theme="dark"] .bottega-site .bottega-product .bottega-product__tools button.is-active { color: #a0362b; }
:root[data-theme="dark"] :is(.product-gallery__main, .product-gallery__thumbs button, .product-lightbox__image, .compare-product__image, .coffee-finder__product-image, .drawer__item-media) { background: var(--bottega-image-surface); }
:root[data-theme="dark"] :is(.product-gallery, .bottega-product__media, .coffee-finder__product-image, .drawer__item-media) img { mix-blend-mode: normal; }
:root[data-theme="dark"] .brand-mark img { background-color: #f7f0e6; border-radius: 8px; }
:root[data-theme="dark"] .bottega-site .bottega-product .bottega-product__brand { color: var(--bottega-link); }
:root[data-theme="dark"] :is(.product-detail__desc, .product-information__panel, .product-information__description) { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-information__panel { background: var(--bottega-surface-raised); }
:root[data-theme="dark"] .bottega-product__stock-tooltip { background: #0b100b; color: #faf3e7; border-color: var(--bottega-control-border); }
:root[data-theme="dark"] .bottega-site .product-purchase-bar { background: var(--bottega-surface-raised); border-color: var(--bottega-border); color: var(--bottega-text); }

/* Product controls and supporting information share the dark surface roles. */
:root[data-theme="dark"] .bottega-site .product-detail__buy .qty-control { background: var(--bottega-surface-raised); border-color: var(--bottega-control-border); }
:root[data-theme="dark"] .bottega-site .product-detail__buy .qty-control :is(button, span) { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-detail__buy .qty-control button:disabled { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-detail__buy > .product-detail__checkout-button { background: var(--bottega-surface-raised); border-color: var(--bottega-control-border); color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site .product-detail__buy > .product-detail__checkout-button:hover:not(:disabled) { background: var(--bottega-surface-selected); border-color: var(--bottega-focus); color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site .product-detail__buy > .product-detail__checkout-button:disabled { background: var(--bottega-surface); border-color: var(--bottega-border); color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-detail__wishlist { background: var(--bottega-surface-raised); border-color: var(--bottega-control-border); color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-detail__wishlist:is(:hover, .is-active) { background: var(--bottega-surface-selected); color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site .product-detail__price > .product-detail__free-shipping-shortcut { color: var(--bottega-link-strong); border-color: var(--bottega-control-border); }
:root[data-theme="dark"] .bottega-site .product-detail__unit-pricing { background: var(--bottega-surface-raised); border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .product-detail__unit-pricing :is(dt, p) { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-detail__unit-pricing dd { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-detail__unit-pricing .icon { color: var(--bottega-link); }
:root[data-theme="dark"] .bottega-site .product-detail__status-line { color: var(--bottega-success); }
:root[data-theme="dark"] .bottega-site .product-detail__status-line.is-unavailable { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-detail__status-line > span { background: currentColor; }
:root[data-theme="dark"] .bottega-site .product-detail__selling-points { border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .product-detail__selling-points > span { border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .product-detail__selling-points b { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-detail__selling-points small { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-detail__selling-points i { background: var(--bottega-surface-selected); color: var(--bottega-link); }
:root[data-theme="dark"] .bottega-site .product-payment-methods__heading,
:root[data-theme="dark"] .bottega-site .product-payment-methods li { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-payment-methods__heading small { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site :is(.product-payment-methods__heading, .product-payment-methods__logos) > .icon { color: var(--bottega-link); }
:root[data-theme="dark"] .bottega-site :is(.product-price__sale, .product-price__current) { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site :is(.product-price__regular, .product-price__tax-note) { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .bottega-product__stock.is-in { color: var(--bottega-success); }
:root[data-theme="dark"] .bottega-site .bottega-product__stock.is-low { color: #e8bd7b; }
:root[data-theme="dark"] .bottega-site .bottega-product__stock.is-out { color: var(--bottega-error); }

/* Alternatives retain unmodified packshots instead of multiplying into dark cards. */
:root[data-theme="dark"] .bottega-site .product-availability-alternatives { border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__item { border-color: var(--bottega-border); color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__item:hover { border-color: var(--bottega-focus); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__heading h2 { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__heading p { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__heading > span { border-color: var(--bottega-border); color: var(--bottega-success); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__heading > span i { background: var(--bottega-surface-selected); color: var(--bottega-success); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__media { background: var(--bottega-image-surface); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__media img { mix-blend-mode: normal; }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__copy small { color: var(--bottega-success); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__price { color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__arrow { background: var(--bottega-surface-selected); color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__item:hover .product-availability-alternatives__arrow { background: var(--bottega-accent); color: var(--bottega-on-accent); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__empty { background: var(--bottega-surface-raised); color: var(--bottega-text-muted); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__actions { border-color: var(--bottega-border); }
:root[data-theme="dark"] .bottega-site .product-availability-alternatives__all { color: var(--bottega-link-strong); }

:root[data-theme="dark"] .bottega-site .bottega-categories > a { background: var(--bottega-surface-raised); border-color: var(--bottega-border); color: var(--bottega-text); }
:root[data-theme="dark"] .bottega-site .bottega-categories img { mix-blend-mode: normal; }

/* The toast is rendered outside StoreShell, including its close control. */
:root[data-theme="dark"] .toast:is(.toast--success, .toast--error) { background: var(--bottega-surface-raised); border-color: var(--bottega-control-border); color: var(--bottega-text); }
:root[data-theme="dark"] .toast__symbol { background: var(--bottega-surface-selected); color: var(--bottega-success); }
:root[data-theme="dark"] .toast--error .toast__symbol { background: var(--bottega-error-surface); color: var(--bottega-error); }

/* Consistent surfaces for content, forms and floating tools. */
:root[data-theme="dark"] :is(
  .legal-page__content, .customer-reviews__overview, .customer-reviews__card,
  .coffee-guide-landing__chapter, .coffee-guide-landing .content-guide-directory__grid > a,
  .search-overlay__form, .catalog-filter-dialog, .catalog-filter-dialog__search,
  .catalog-filter-dialog__option,
  .account-login-card, .account-login-panel, .account-orders li,
  .checkout-success, .checkout-summary, .checkout-handoff, .checkout-choice,
  .checkout-account-dialog, .product-specifications, .product-payment-methods
) { background: var(--bottega-surface-raised); border-color: var(--bottega-border); color: var(--bottega-text); }

:root[data-theme="dark"] :is(input:not([type="range"], [type="checkbox"], [type="radio"], [type="hidden"]), textarea, select) {
  background-color: var(--bottega-surface-raised);
  border-color: var(--bottega-control-border);
  color: var(--bottega-text);
  caret-color: var(--bottega-text);
  accent-color: var(--bottega-link);
}
:root[data-theme="dark"] :is(input, textarea)::placeholder { color: var(--bottega-text-muted); opacity: 1; }
:root[data-theme="dark"] :is(input, textarea, select):focus-visible { border-bottom-color: var(--bottega-focus) !important; caret-color: var(--bottega-text); }
:root[data-theme="dark"] input:-webkit-autofill { -webkit-text-fill-color: var(--bottega-text); box-shadow: 0 0 0 1000px var(--bottega-surface-raised) inset; }
:root[data-theme="dark"] :is(button, a)[aria-label]:has(> .icon):not(:has(> span, > strong)):focus-visible { color: var(--bottega-link-strong) !important; }

:root[data-theme="dark"] :is(.bottega-wp-content a, .coffee-finder__help a, .coffee-finder__format, .product-detail__brand, .product-detail__back, .catalog-description-sidebar a) { color: var(--bottega-link); }
:root[data-theme="dark"] .bottega-site :is(.button--primary, .bottega-product__add, .checkout-next, .checkout-submit, .account-login-button) { background: var(--bottega-accent); border-color: var(--bottega-accent); color: #faf3e7; }
:root[data-theme="dark"] .bottega-site :is(.button--primary, .bottega-product__add, .checkout-next, .checkout-submit, .account-login-button):hover { background: var(--bottega-accent-hover); border-color: var(--bottega-accent-hover); }
:root[data-theme="dark"] .bottega-site .link-button { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site :is(.bottega-section__heading > a, .bottega-home-category__all) { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .bottega-site :is(.bottega-product__badges a, .product-breadcrumbs a, .breadcrumbs a) { background: var(--bottega-surface-selected); border-color: var(--bottega-border); color: var(--bottega-text); }
:root[data-theme="dark"] :is(.catalog-reset, .catalog-sort__options button, .catalog-view button, .catalog-facet-trigger) { border-color: var(--bottega-control-border); color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-filter-dialog__option[aria-pressed="true"] { background: var(--bottega-surface-selected); color: var(--bottega-text); border-color: var(--bottega-control-border); }
:root[data-theme="dark"] .catalog-filter-dialog { --size-dialog-border: var(--bottega-control-border); --size-dialog-active: var(--bottega-choice-active); --size-dialog-active-text: #faf3e7; }
:root[data-theme="dark"] .catalog-filter-dialog__option-sort { color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-sidebar__choices .catalog-category-choice:hover { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .catalog-popular h2 { color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-facet.catalog-facet--search { background: var(--bottega-surface-raised); border-color: var(--bottega-control-border); color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-facet.catalog-facet--search > .icon { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .catalog-facet.catalog-facet--search input { background: transparent; color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-facet.catalog-facet--search:focus-within { background: var(--bottega-surface-selected); border-color: var(--bottega-focus); }
:root[data-theme="dark"] .catalog-facet.catalog-facet--search input:focus-visible { background: transparent !important; }
:root[data-theme="dark"] :is(.catalog-description-sidebar, .catalog-description-sidebar__category) { color: var(--bottega-text); }
:root[data-theme="dark"] .catalog-description-sidebar :is(p, li, summary) { color: var(--bottega-text-muted); }

/* Checkout is the existing shared form, with the same state and totals. */
:root[data-theme="dark"] .bottega-site { --checkout-bg: var(--bottega-surface); --checkout-surface: var(--bottega-surface-raised); --checkout-text: var(--bottega-text); --checkout-muted: var(--bottega-text-muted); --checkout-line: var(--bottega-border); --checkout-accent: var(--bottega-accent); --checkout-accent-dark: var(--bottega-accent-hover); }
:root[data-theme="dark"] .checkout-refresh :is(.checkout-handoff, .checkout-summary, .checkout-account-dialog, .checkout-choice, .checkout-demo-payment select) { background: var(--bottega-surface-raised); color: var(--bottega-text); }
:root[data-theme="dark"] .checkout-refresh :is(.checkout-choice:has(input:checked), .checkout-step__number.is-complete, .checkout-payment__delivery) { background: var(--bottega-surface-selected); color: var(--bottega-text); }
:root[data-theme="dark"] .checkout-refresh :is(.checkout-error, .checkout-field__error, .checkout-error-summary) { background: var(--bottega-error-surface); color: var(--bottega-error); border-color: #a06c5f; }
:root[data-theme="dark"] .checkout-refresh :is(.checkout-address-extra > summary, .checkout-step__edit, .checkout-account-link button, .checkout-account-dialog__message, .checkout-account-dialog__alternatives button, .checkout-account-dialog__guest) { color: var(--bottega-link); }
:root[data-theme="dark"] .checkout-refresh :is(.checkout-order-line, .checkout-order-line .qty-control, .checkout-order-line .qty-control button, .checkout-order-line .qty-control span, .checkout-account-dialog__social button) { background: var(--bottega-surface-raised); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] .checkout-refresh .checkout-order-line__media { background: var(--bottega-image-surface); }
:root[data-theme="dark"] .checkout-refresh .checkout-live-methods__logos { padding: 6px; border-radius: 8px; background: var(--bottega-image-surface); }
:root[data-theme="dark"] .bottega-site :is(.cart-bundle-benefit, .product-bundle-benefit, .coffee-guide-tool__results > div, .customer-reviews__summary) { color: var(--bottega-link-strong); }

/* Drawers and sales dialogs also live outside StoreShell. */
:root[data-theme="dark"] #cart-drawer,
:root[data-theme="dark"] #cart-drawer :is(.drawer__header, .drawer__content, .drawer__shipping, .drawer__footer) { background: var(--bottega-surface-soft); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] #cart-drawer :is(h2, h3, strong, .drawer__line, .qty-control, .qty-control button) { color: var(--bottega-text); }
:root[data-theme="dark"] #cart-drawer :is(.drawer__count, .drawer__item-size, .drawer__item-warehouse, .drawer__item-unit, .drawer__shipping p, .drawer__footer > p, .drawer__remove, .drawer__close) { color: var(--bottega-text-muted); }
:root[data-theme="dark"] #cart-drawer :is(.drawer__warehouse-plan, .qty-control, .qty-control button, .drawer__continue) { background: var(--bottega-surface-raised); border-color: var(--bottega-border); color: var(--bottega-text); }
:root[data-theme="dark"] #cart-drawer .drawer__saving { background: var(--bottega-surface-selected); color: var(--bottega-success); }
:root[data-theme="dark"] #cart-drawer .cart-bundle-benefit { color: var(--bottega-link-strong); }
:root[data-theme="dark"] #cart-drawer .drawer__warehouse-chips span { background: var(--bottega-surface-raised); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] #cart-drawer .drawer__warehouse-plan.is-blocked { background: var(--bottega-error-surface); color: var(--bottega-error); }
:root[data-theme="dark"] #cart-drawer .drawer__shipping-track { background: var(--bottega-border); }
:root[data-theme="dark"] #cart-drawer .drawer__shipping-track span { background: var(--bottega-link); }
:root[data-theme="dark"] #cart-drawer .drawer__recommendation { background: var(--bottega-surface-raised); border-color: var(--bottega-border); color: var(--bottega-text); }
:root[data-theme="dark"] #cart-drawer .drawer__recommendation-image { background: var(--bottega-image-surface); }
:root[data-theme="dark"] #cart-drawer .drawer__recommendation-info h4 a:hover { color: var(--bottega-link); }
:root[data-theme="dark"] #cart-drawer .drawer__recommendation-more { background: var(--bottega-surface-selected); border-color: var(--bottega-control-border); color: var(--bottega-link-strong); }
:root[data-theme="dark"] #cart-drawer .drawer__recommendation-more:hover { background: var(--bottega-surface-raised); border-color: var(--bottega-focus); color: var(--bottega-link-strong); }
:root[data-theme="dark"] #cart-drawer .button--primary { background: var(--bottega-accent); color: #faf3e7; }
:root[data-theme="dark"] :is(.sales-slide, .sales-stock, .sales-mail) { background: var(--bottega-surface-soft); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] :is(.sales-newsletter, .sales-stock, .sales-save) input:not([type="checkbox"]) { background: var(--bottega-surface-raised); color: var(--bottega-text); border-color: var(--bottega-control-border); }
:root[data-theme="dark"] :is(.sales-newsletter details > summary, .sales-stock > summary) { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .sales-error { background: var(--bottega-error-surface); color: var(--bottega-error); }

:root[data-theme="dark"] .account-page { background: transparent; color: var(--bottega-text); }
:root[data-theme="dark"] .account-page :is(.account-login-panel h1, .account-login-form > label, .account-login-security strong, .account-orders h2, .account-orders__detail h3) { color: var(--bottega-text); }
:root[data-theme="dark"] .account-page :is(.account-login-provider, .account-login-security, .account-orders__more) { background: var(--bottega-surface-soft); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] .account-page :is(.account-login-remember, .account-login-register, .account-orders p, .account-orders li > div span) { color: var(--bottega-text-muted); }
:root[data-theme="dark"] :is(.account-login-error, .coffee-guide-tool .coffee-guide-tool__error) { color: var(--bottega-error); }
:root[data-theme="dark"] :is(.account-login-message, .account-orders__details-button) { color: var(--bottega-link); }
:root[data-theme="dark"] .compare-page .compare-table :is(th, td) { background-color: var(--bottega-surface-soft); color: var(--bottega-text); border-color: var(--bottega-border); }
:root[data-theme="dark"] .compare-page .compare-table thead th { background: var(--bottega-surface-raised); }
:root[data-theme="dark"] .compare-page .compare-table-wrap { background: var(--bottega-surface-soft); }
:root[data-theme="dark"] .compare-page .compare-table tr:not(.compare-table__group) > th:first-child:not(.compare-product) { background: var(--bottega-surface-raised); }
:root[data-theme="dark"] .compare-page .compare-table tbody tr:not(.compare-table__group):nth-child(odd) > td { background: var(--bottega-surface-raised); }
:root[data-theme="dark"] .compare-page :is(.compare-page__empty, .compare-page__state, .compare-page__loading) { background: var(--bottega-surface-raised); }
:root[data-theme="dark"] .compare-page :is(.compare-product__brand, .compare-table__intro > .icon, .compare-page__empty-art .icon, .compare-page__state-icon, .compare-page__hint > .icon) { color: var(--bottega-link); }
:root[data-theme="dark"] .compare-page .compare-product__stock { color: var(--bottega-success); }
:root[data-theme="dark"] .compare-page .compare-product__stock.is-unavailable { color: var(--bottega-text-muted); }
:root[data-theme="dark"] .compare-page .compare-action:not(.compare-action--primary, .compare-action--light, .compare-action--ghost):not(:disabled) { border-color: var(--bottega-control-border); color: var(--bottega-link-strong); }
:root[data-theme="dark"] .compare-page .compare-product__remove:hover { color: var(--bottega-link-strong); }
:root[data-theme="dark"] .customer-reviews__stars > span:last-child { color: #e4be85; }

@media (prefers-reduced-motion: reduce) {
  .theme-toggle { transition: none; }
}
