/* Browsing and reading controls share generous, visible interaction targets. */
body.curated-shop{--muted:#596258}
body.curated-shop :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #806044;outline-offset:4px}
body.curated-shop #main:focus{outline:none}
body.curated-shop .languages button{min-width:32px;min-height:44px}
body.curated-shop :is(.menu-toggle,.selection-toggle){min-height:44px;min-width:44px}
body.curated-shop #main-nav{z-index:20}
body.curated-shop #main-nav a{padding-block:12px}
body.curated-shop .collection-controls{gap:18px;align-items:start}
body.curated-shop .filters{gap:6px 12px}
body.curated-shop .filters button{min-height:44px;padding:10px 12px;border:1px solid var(--line);font-size:14px}
body.curated-shop .filters button[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink)}
body.curated-shop .search{width:240px}
body.curated-shop .search input{min-height:44px;font-size:16px;padding:10px 30px 10px 12px;border:1px solid var(--line);background:#fff}
.results-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:20px 0 24px}
body.curated-shop .results-toolbar #results-count{font-size:14px;margin:0;overflow-wrap:anywhere}
.sort-control{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:14px}
.sort-control select{min-height:44px;max-width:100%;padding:8px 10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit}
.reset-filters{min-height:44px;padding:8px;text-decoration:underline;text-underline-offset:4px;font-size:14px}
body.curated-shop .no-results h2{font-size:26px;margin:0 0 12px}
.no-results .button{margin-top:12px}
body.curated-shop .product-topline{font-size:12px;flex-wrap:wrap}
body.curated-shop .product-essential{font-size:15px;line-height:1.6;margin:0 0 10px}
body.curated-shop .product-dimensions{font-size:13px;line-height:1.6;margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.product-dimensions strong{display:block;color:var(--ink)}
.photo-caption{font-size:12px;line-height:1.5;text-align:center;margin:8px 18px;color:var(--muted)}
body.curated-shop .compact-product .gallery-thumbnails button{width:44px;height:44px;min-width:44px;flex-shrink:0}
body:has(dialog[open]){overflow:hidden}
dialog{overscroll-behavior:contain}
.request-output{scroll-margin-block:20px}
.request-output pre{overflow-wrap:anywhere;white-space:pre-wrap}
.loading-state{padding:60px 24px;text-align:center;font-size:16px}
@media(max-width:960px){body.curated-shop .header-inner{gap:12px}body.curated-shop .header-actions{gap:10px}}
@media(max-width:760px){
  body.curated-shop .collection-controls{flex-direction:column;gap:14px}
  body.curated-shop .search{width:100%}
  body.curated-shop[data-page=collection] .collection{padding-top:28px}
  .collection-style{flex-direction:row;align-items:center;gap:12px;padding-bottom:18px}
  .collection-style>span{font-size:12px}
  body.curated-shop .collection .section-heading{margin-bottom:22px}
  .sort-control{margin-left:0;width:100%;justify-content:space-between}
  .results-toolbar{gap:8px 14px}
  body.curated-shop :is(input,select,textarea){font-size:16px!important}
  body.curated-shop .compact-product .gallery-thumbnails{justify-content:center;gap:5px;flex-wrap:wrap}
  body.curated-shop .compact-product #product-main-image,.compact-product .product-gallery .soft-photo-frame{height:160px;max-height:160px}
  body.curated-shop .compact-product .product-modal-heading{position:sticky;top:0;background:var(--paper);z-index:4}
  body.curated-shop .compact-product .dialog-close{z-index:5}
}
@media(max-width:380px){body.curated-shop .site-header .brand-wordmark{width:125px}body.curated-shop .header-inner{width:calc(100% - 24px);gap:6px}body.curated-shop .header-actions{gap:5px}body.curated-shop .languages{gap:0}body.curated-shop .languages button{min-width:28px}body.curated-shop .product-grid{gap:30px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* First browse, then choose: keep secondary options out of the first view. */
.simple-collection-heading{margin-bottom:26px}
.simple-collection-heading h1{margin:0 0 10px}
.simple-collection-heading p{margin:0;color:var(--muted);font-size:16px}
body.curated-shop .collection-controls{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px;border:0;padding:0}
.category-control select{width:100%;min-height:46px;padding:10px 34px 10px 12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:16px}
body.curated-shop .collection-controls .search{width:100%;min-width:0}
body.curated-shop .collection-controls .search input{min-height:46px}
.results-toolbar{gap:8px 16px;margin:10px 0 24px}
.browse-options{margin-left:auto;font-size:14px}
.browse-options summary{cursor:pointer;min-height:44px;align-content:center;text-align:right}
.browse-options[open]{width:100%;margin:0}
.browse-options-panel{display:flex;flex-wrap:wrap;gap:20px 32px;justify-content:space-between;padding:18px;background:var(--soft);border:1px solid var(--line)}
.browse-options-panel .sort-control{margin:0;width:auto;flex-wrap:wrap}
.browse-options-panel .collection-style{margin:0;padding:0;gap:12px;flex-wrap:wrap}
body.curated-shop .product h3{margin:16px 0 8px;font-size:23px;line-height:1.3}
body.curated-shop .product .product-price{margin:0;font-size:13px}
body.curated-shop .product .product-price strong{font-size:18px;font-weight:500}
body.curated-shop .product .availability{margin:6px 0 0;font-size:12px}
body.curated-shop .product-grid{row-gap:36px}
.product-price-details{margin-top:12px;font-size:13px}
.product-price-details>summary{min-height:44px;align-content:center;cursor:pointer}
.interest-options{display:block;margin:16px 0}
.interest-options>summary{min-height:44px;align-content:center;cursor:pointer;font-size:14px}
.home-gallery-position{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.product-price-details .price-breakdown{margin-top:0}
.product-action-bar{margin-top:8px}
.product-action-bar .button{min-height:48px}
body.curated-shop #product-dialog.compact-product .dialog-close{position:sticky;top:12px;float:right;margin:12px 14px -56px 0;z-index:6}
body.curated-shop .compact-product .product-description{font-size:14px}
.product-description summary,.product-personalisation-panel>summary{min-height:44px;align-content:center;font-size:14px}
body.curated-shop .product-dimensions{border:0;margin:12px 0;padding:0}
body.curated-shop .compact-product .product-commerce{margin-top:12px;border:0}
@media(max-width:760px){
  body.curated-shop[data-page=collection] .collection{padding-top:24px}
  .simple-collection-heading{margin-bottom:20px}
  .simple-collection-heading .page-title{font-size:34px}
  .simple-collection-heading p{font-size:14px}
  body.curated-shop .collection-controls{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:8px}
  body.curated-shop .results-toolbar #results-count{font-size:12px}
  .browse-options-panel{padding:14px;gap:14px}
  body.curated-shop .product h3{font-size:19px;margin-top:12px}
  body.curated-shop .compact-product #product-main-image,.compact-product .product-gallery .soft-photo-frame{height:210px;max-height:210px}
  body.curated-shop .compact-product .product-gallery figure{padding-top:8px}
  .photo-caption{margin:4px 14px;font-size:11px}
  body.curated-shop .compact-product .gallery-count{padding-block:2px 8px}
  body.curated-shop .compact-product .product-essential{font-size:14px;margin-bottom:8px}
  body.curated-shop .compact-product .product-price strong{font-size:23px}
  .product-action-bar{position:static}
}
