/* Four compositions. Shared verbatim by the public storefront and the editor preview. */
.presentation-store{--shop-on-accent:#fff;overflow-x:clip}
.presentation-store .announcement,.presentation-store .catalog-btn:not(.outline),.presentation-store .cart-count{color:var(--shop-on-accent)}
.presentation-store .shop-nav{max-width:1480px;padding:22px 5%;border-bottom:1px solid color-mix(in srgb,var(--shop-text) 10%,transparent)}
.presentation-store .shop-brand{font-size:30px;letter-spacing:.015em;font-weight:600}
.presentation-store .shop-links{font-size:13px}
.presentation-store .shop-actions .iconbtn{position:relative}
.presentation-store .cart-count{position:absolute;right:-2px;top:0;min-width:17px;height:17px;font-size:9px}
.presentation-store .shop-links .iconbtn:hover,.presentation-store .shop-actions .iconbtn:hover{background:color-mix(in srgb,var(--shop-accent) 8%,transparent)}
.catalog-hero{position:relative;isolation:isolate;max-width:1480px;margin:auto;display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);align-items:center;gap:clamp(32px,5vw,90px);padding:48px 5% 68px;min-width:0}
.catalog-hero-copy,.catalog-hero-media{min-width:0;position:relative}
.catalog-hero-copy{z-index:2;padding:22px 0}
.hero-eyebrow{display:flex;align-items:center;gap:12px;font:700 11px/1.6 Manrope,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--shop-accent);margin-bottom:24px}
.hero-eyebrow>span{width:24px;height:1px;background:currentColor;flex-shrink:0}
.catalog-hero h1{font:500 clamp(46px,6vw,86px)/1.02 var(--shop-font);letter-spacing:-.035em;white-space:pre-line;overflow-wrap:anywhere;text-wrap:balance;margin:0;max-width:850px}
.hero-description{font:400 15px/1.85 Manrope,sans-serif;max-width:410px;margin:25px 0 0;opacity:.8;text-wrap:pretty}
.hero-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:32px}
.hero-buttons .catalog-btn{margin:0;min-height:50px;padding:15px 24px;gap:22px;box-shadow:0 4px 16px color-mix(in srgb,var(--shop-accent) 10%,transparent)}
.hero-secondary{display:flex;align-items:center;gap:18px;background:none;border:0;border-bottom:1px solid currentColor;padding:12px 0;font-size:13px;min-height:44px}
.catalog-hero-photo{position:relative;height:clamp(380px,42vw,580px);border-radius:var(--shop-radius);background:color-mix(in srgb,var(--shop-accent) 10%,var(--shop-bg));min-width:0}
.catalog-hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:var(--hero-focus,center);border-radius:inherit}
.hero-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:100px;background:radial-gradient(ellipse at 70% 30%,color-mix(in srgb,var(--shop-accent) 18%,var(--shop-bg)),transparent 65%),var(--shop-bg);border-radius:inherit;color:var(--shop-accent)}
.hero-placeholder>span{font:400 clamp(90px,16vw,230px)/1 var(--shop-font);opacity:.25}
.hero-photo-note{position:absolute;bottom:25px;left:25px;right:25px;padding:18px 20px;background:color-mix(in srgb,var(--shop-bg) 95%,transparent);color:var(--shop-text);display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid color-mix(in srgb,var(--shop-text) 12%,transparent);border-radius:var(--shop-radius);font-size:12px;line-height:1.6;box-shadow:0 8px 24px #0000000c}
.hero-photo-note>span{min-width:0}
.hero-folio{position:absolute;bottom:38px;left:5%;font-size:11px;letter-spacing:.12em;opacity:.45}
.presentation-editorial .catalog-hero-media:before{content:'';position:absolute;inset:18px -16px -18px 20px;background:color-mix(in srgb,var(--shop-accent) 11%,var(--shop-bg));border-radius:var(--shop-radius);z-index:-1}
.presentation-editorial .catalog-hero-photo{border-radius:var(--shop-radius)}
.hero-height-compact .catalog-hero-photo{height:clamp(300px,32vw,440px)}
.hero-height-compact.catalog-hero{padding-top:32px;padding-bottom:50px}
.hero-height-compact.catalog-hero h1{font-size:clamp(40px,5.2vw,72px)}
.hero-align-center .catalog-hero-copy{text-align:center}
.hero-align-center .hero-eyebrow,.hero-align-center .hero-buttons{justify-content:center}
.hero-align-center .hero-description{margin-inline:auto}

/* An immersive campaign photograph with adjustable contrast. */
.catalog-hero.presentation-bold{display:block;max-width:1380px;margin:20px max(20px,calc((100% - 1380px)/2)) 36px;padding:80px 6%;min-height:600px;border-radius:var(--shop-radius);overflow:hidden;color:white;background:#232721}
.catalog-hero.presentation-bold .catalog-hero-copy{max-width:720px;padding:20px 0}
.catalog-hero.presentation-bold .catalog-hero-media{position:absolute;inset:0;z-index:-1}
.catalog-hero.presentation-bold .catalog-hero-photo{height:100%;width:100%;border-radius:0}
.catalog-hero.presentation-bold .catalog-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,calc(var(--hero-shade) + .18)),rgba(0,0,0,var(--hero-shade)) 55%,rgba(0,0,0,.08))}
.presentation-bold .hero-eyebrow{color:white}
.presentation-bold .hero-description{opacity:.95;text-shadow:0 1px 8px #0006}
.presentation-bold h1{text-shadow:0 2px 20px #0003}
.catalog-hero.presentation-bold .catalog-btn{background:white;color:#202020;border-color:white}
.presentation-bold .hero-photo-note{display:none}
.presentation-bold .hero-placeholder{background:#283d34;color:#a6c2a0}
.catalog-hero.presentation-bold.hero-align-center .catalog-hero-copy{margin:auto}
.catalog-hero.presentation-bold.hero-align-center .catalog-hero-photo:after{background:rgba(0,0,0,var(--hero-shade))}
.catalog-hero.presentation-bold.hero-height-compact{min-height:420px;padding-block:48px}

/* A product-aware mosaic. Every card links to a real, available product. */
.catalog-hero.presentation-mosaic{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5%;padding-block:42px 54px}
.presentation-mosaic .catalog-hero-copy{padding:36px 0}
.presentation-mosaic .catalog-hero-media{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px;align-items:stretch}
.presentation-mosaic .catalog-hero-photo{height:auto;min-height:540px;margin:24px 0}
.presentation-mosaic.no-picks .catalog-hero-media{grid-template-columns:1fr}
.hero-picks{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px}
.hero-product{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--shop-text) 10%,transparent);border-radius:var(--shop-radius);padding:0;text-align:left;background:color-mix(in srgb,var(--shop-accent) 4%,var(--shop-bg));color:var(--shop-text)}
.hero-product>img{width:100%;height:220px;flex:1 1 0;min-height:100px;object-fit:cover;transition:transform .35s ease}
.hero-product:hover>img{transform:scale(1.025)}
.hero-product-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 14px;font-size:12px;line-height:1.5;position:relative;background:var(--shop-bg)}
.hero-product-caption>span{min-width:0}
.hero-product-caption strong,.hero-product-caption small{display:block;overflow-wrap:anywhere}
.hero-product-caption small{font-size:11px;margin-top:5px;opacity:.7}
.presentation-mosaic .hero-photo-note{bottom:16px;left:16px;right:16px;padding:14px;font-size:11px}
.presentation-mosaic .hero-photo-note svg{display:none}
.presentation-mosaic.hero-height-compact .catalog-hero-photo{min-height:400px}
.presentation-mosaic.hero-height-compact .hero-product>img{height:160px}

/* A quiet boutique masthead over a panoramic photograph. */
.catalog-hero.presentation-boutique{display:flex;flex-direction:column;gap:32px;padding-top:42px;padding-bottom:50px;text-align:center}
.presentation-boutique .catalog-hero-copy{max-width:940px;padding:0}
.presentation-boutique .hero-eyebrow,.presentation-boutique .hero-buttons{justify-content:center}
.presentation-boutique .hero-description{margin-inline:auto;max-width:560px}
.presentation-boutique h1{max-width:940px}
.presentation-boutique .catalog-hero-media{width:100%}
.presentation-boutique .catalog-hero-photo{height:380px;border-radius:max(var(--shop-radius),2px);overflow:hidden}
.presentation-boutique .hero-photo-note{left:auto;max-width:360px;text-align:left}
.presentation-boutique.hero-align-left .catalog-hero-copy{align-self:flex-start;text-align:left;max-width:850px}
.presentation-boutique.hero-align-left .hero-eyebrow,.presentation-boutique.hero-align-left .hero-buttons{justify-content:flex-start}
.presentation-boutique.hero-align-left .hero-description{margin-left:0}
.presentation-boutique.hero-height-compact .catalog-hero-photo{height:260px}

/* Visual entry points and a clear continuation into the collection. */
.category-stories{max-width:1332px;margin:0 auto 56px;padding:18px 0;display:flex;gap:12px;overflow-x:auto;scrollbar-width:thin;border-block:1px solid color-mix(in srgb,var(--shop-text) 12%,transparent)}
.category-story{min-width:180px;flex:1 0 180px;display:flex;align-items:center;gap:14px;padding:8px 16px 8px 0;background:none;border:0;text-align:left;color:var(--shop-text);min-height:72px}
.category-story:not(:last-child){border-right:1px solid color-mix(in srgb,var(--shop-text) 12%,transparent)}
.category-story>img{width:52px;height:60px;object-fit:cover;border-radius:calc(var(--shop-radius)/2);flex-shrink:0}
.category-story>span{flex:1;min-width:0}.category-story small{font-size:10px;opacity:.55;display:block;margin-bottom:5px;letter-spacing:.08em}.category-story strong{font-size:13px;font-weight:650;overflow-wrap:anywhere}.category-story>svg{width:17px;transition:transform .2s}.category-story:hover>svg{transform:translateX(4px)}
.presentation-store .shop-products{max-width:1480px;padding-top:16px}
.presentation-store .shop-section-heading{margin-bottom:30px}
.presentation-store .shop-toolbar{padding:0 0 22px;margin-bottom:32px;gap:18px}
.presentation-store .shop-category{border:1px solid color-mix(in srgb,var(--shop-text) 16%,transparent);border-radius:40px;padding:10px 18px;opacity:1;min-height:42px}
.presentation-store .shop-category.selected{background:var(--shop-accent);color:var(--shop-on-accent);border-color:var(--shop-accent)}
.presentation-store .shop-categories{gap:8px}
.presentation-store .shop-card .plus{width:38px;height:38px;background:var(--shop-bg);color:var(--shop-text)}
.presentation-store .shop-card-info .catalog-btn{border-color:color-mix(in srgb,var(--shop-accent) 25%,transparent)}
.presentation-store .shop-card-info .catalog-btn:hover{background:var(--shop-accent);color:var(--shop-on-accent)}
.presentation-store .shop-about{margin-top:16px;background:color-mix(in srgb,var(--shop-accent) 5%,var(--shop-bg));border:0;border-radius:var(--shop-radius);padding:44px 5%}

/* Merchant style selector and an isolated, true-layout preview. */
.appearance-design-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 20px}.appearance-design-intro h2{font:650 20px Syne,sans-serif}.appearance-design-intro p{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.7}.design-version{font-size:10px;color:#7d708e;white-space:nowrap}
.layout-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:30px}
.layout-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:10px;text-align:left;min-width:0;transition:border-color .18s,box-shadow .18s}
.layout-card:hover{border-color:#ac97d7;box-shadow:0 5px 20px #5547620a}.layout-card.selected{border:2px solid var(--purple);padding:9px;box-shadow:0 0 0 3px #7960ce0b}
.layout-sample{position:relative;background:#f2eee6;display:flex;gap:8px;align-items:center;overflow:hidden;height:134px;padding:15px;border-radius:7px;color:#46483c}
.sample-copy{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0;position:relative;z-index:1}.sample-copy b{font:500 37px/.85 Cormorant,serif}.sample-copy i{height:2px;width:60%;background:currentColor;opacity:.3}.sample-copy em{width:32px;height:9px;background:#4b5c4c;margin-top:3px}.sample-photo{width:50%;height:100%;background:#bfb2a0;overflow:hidden;border-radius:2px}.sample-photo img,.sample-tile img{height:100%;width:100%;object-fit:cover}.sample-photo .hero-placeholder{min-height:0}.sample-bold{background:#3f443b;color:#fff}.sample-bold .sample-photo{position:absolute;inset:0;width:100%;height:100%;opacity:.38}.sample-bold .sample-copy{max-width:72%;margin-top:15px}.sample-bold .sample-copy em{background:white}.sample-mosaic .sample-photo{width:42%;height:92%;margin-right:20px}.sample-tile{position:absolute;width:27%;height:46%;right:8px;bottom:8px;border:3px solid #f2eee6;background:#c5b49f}.sample-boutique{flex-direction:column;gap:10px;padding:12px}.sample-boutique .sample-copy{align-items:center;flex:0;gap:4px}.sample-boutique .sample-copy b{font-size:25px}.sample-boutique .sample-copy i,.sample-boutique .sample-copy em{display:none}.sample-boutique .sample-photo{width:100%;height:65%}
.layout-card-title{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:13px 3px 7px}.layout-check{font-size:11px;color:#95859f}.selected .layout-check{display:grid;place-items:center;background:var(--purple);color:white;border-radius:50%;height:20px;width:20px}.layout-description{display:block;font-size:11px;line-height:1.6;color:#807589;padding:0 3px;min-height:36px}.layout-card>small{display:block;padding:10px 3px 3px;color:#a396ab;font-size:9px;line-height:1.5}
#appearance-form .settings-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr)}
#appearance-form .panel-header h2{font-size:14px}#appearance-form .panel-header small{font-size:11px;line-height:1.6}
.design-details{border:1px solid var(--line);border-radius:12px;background:white;margin-bottom:20px}.design-details>summary{cursor:pointer;padding:20px 22px;font-size:13px;font-weight:700}.design-details>.design-details-content{padding:0 22px 22px}.design-details .theme-options{margin-top:0}
.preview-device-controls{display:flex;background:#eeebf4;padding:4px;border-radius:9px;gap:4px;margin-bottom:14px}.preview-device-controls button{flex:1;border:0;border-radius:6px;background:transparent;min-height:36px;font-size:11px;color:#82748d}.preview-device-controls button.selected{background:white;color:#544365;box-shadow:0 2px 6px #5547620a}
.design-preview-viewport{overflow:hidden;position:relative;border:1px solid #e0d9e9;border-radius:12px;background:white;box-shadow:0 16px 40px #4533570c;max-width:100%;margin:auto}
.design-preview-frame{position:absolute;top:0;left:0;display:block;border:0;transform-origin:top left;pointer-events:none;background:#faf9f6}
.preview-sticky .preview-label{font-size:10px;letter-spacing:.08em;font-weight:700}.preview-sticky .form-hint{font-size:11px;line-height:1.8;margin-top:16px}
.design-advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.design-advanced-grid .field{min-width:0}
.appearance-save-note{margin-right:auto;font-size:11px;color:var(--muted);line-height:1.6}
#appearance-form .savebar{padding:17px;border:1px solid var(--line);border-radius:12px;background:#fffffff5;backdrop-filter:blur(12px);box-shadow:0 -5px 30px #4b325b07}
.design-full-preview{height:70dvh;width:100%;border:1px solid var(--line);border-radius:8px;background:white}
.modal:has(.design-full-preview){width:min(1180px,96vw)}
@media(min-width:1000px){.presentation-store .shop-categories{flex:1 1 48%}.presentation-store .shop-search{flex:0 1 420px;grid-template-columns:0 minmax(120px,1fr) minmax(140px,180px);gap:10px}.presentation-store .shop-search>svg{display:none}}
@media(max-width:1480px){.category-stories{margin-inline:5%}}
@media(max-width:1150px){.layout-gallery{gap:10px}.layout-sample{height:110px;padding:10px}#appearance-form .settings-grid{grid-template-columns:minmax(0,1fr) minmax(270px,.8fr)}.layout-description{min-height:54px}.hero-product-caption{padding:12px 10px}.catalog-hero.presentation-mosaic{gap:4%}.presentation-mosaic .catalog-hero-photo{min-height:470px}.hero-product>img{height:190px}}
@media(max-width:900px){.catalog-hero h1{font-size:clamp(40px,6.5vw,64px)}.catalog-hero{gap:30px;padding-block:36px 54px}.catalog-hero-photo{height:440px}.presentation-mosaic .catalog-hero-media{gap:10px}.presentation-mosaic .catalog-hero-photo{min-height:420px}.hero-product>img{height:165px}.hero-picks{gap:10px}.catalog-hero.presentation-bold{min-height:520px;padding-block:65px}.layout-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-sample{height:140px}.layout-description{min-height:0}#appearance-form .settings-grid{grid-template-columns:1fr}.preview-sticky{position:static}.design-preview-viewport{max-width:560px}.preview-device-controls{max-width:560px;margin-inline:auto}}
@media(max-width:680px){
  .presentation-store .shop-nav{padding:15px 5% 10px;gap:8px}.presentation-store .shop-brand{font-size:27px}.presentation-store .shop-links{display:flex;justify-content:space-between;gap:8px;padding-top:7px;font-size:12px}.presentation-store .shop-links .iconbtn{min-width:0;width:auto;flex:0 1 auto;padding:8px 2px}
  .catalog-hero{grid-template-columns:minmax(0,1fr);padding:30px 5% 42px;gap:28px}.catalog-hero-copy{padding:0}.hero-eyebrow{font-size:10px;margin-bottom:18px;letter-spacing:.13em}.catalog-hero h1{font-size:clamp(40px,11vw,64px);line-height:1.04}.hero-description{font-size:14px;line-height:1.75;margin-top:18px;max-width:100%}.hero-buttons{margin-top:24px;gap:12px 22px}.hero-buttons .catalog-btn{min-height:48px;padding:13px 20px}.hero-secondary{font-size:12px}.catalog-hero-photo{height:370px;max-height:100vw}.hero-photo-note{left:16px;right:16px;bottom:16px;padding:14px 16px;font-size:11px}.presentation-editorial .catalog-hero-media:before{inset:10px -9px -10px 12px}.hero-folio{display:none}
  .hero-height-compact.catalog-hero{padding-block:24px 34px}.hero-height-compact.catalog-hero h1{font-size:clamp(36px,10vw,54px)}.hero-height-compact .catalog-hero-photo{height:250px}
  .catalog-hero.presentation-bold{margin:14px 12px 28px;padding:55px 7%;min-height:540px;display:flex;align-items:flex-end}.catalog-hero.presentation-bold .catalog-hero-copy{width:100%;padding:0}.catalog-hero.presentation-bold .catalog-hero-photo{max-height:none}.catalog-hero.presentation-bold .catalog-hero-photo:after{background:linear-gradient(0deg,rgba(0,0,0,calc(var(--hero-shade) + .2)),rgba(0,0,0,var(--hero-shade)) 65%,rgba(0,0,0,.12))}.catalog-hero.presentation-bold.hero-height-compact{min-height:390px;padding:35px 7%}
  .catalog-hero.presentation-mosaic{grid-template-columns:1fr;gap:25px;padding-block:30px 34px}.presentation-mosaic .catalog-hero-copy{padding:0}.presentation-mosaic .catalog-hero-media{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:12px}.presentation-mosaic .catalog-hero-photo{margin:14px 0;min-height:350px;max-height:none}.hero-product>img{height:125px}.hero-product-caption{font-size:11px;padding:10px}.hero-product-caption small{font-size:10px}.hero-product-caption svg{width:14px}.presentation-mosaic .hero-photo-note{left:10px;right:10px;bottom:10px;padding:10px;font-size:10px}.presentation-mosaic.hero-height-compact .catalog-hero-photo{min-height:300px}.presentation-mosaic.hero-height-compact .hero-product>img{height:105px}
  .catalog-hero.presentation-boutique{padding-top:30px;gap:26px}.presentation-boutique .catalog-hero-photo{height:300px;max-height:none}.presentation-boutique.hero-height-compact .catalog-hero-photo{height:220px}.presentation-boutique .hero-photo-note{left:16px;max-width:none}
  .category-stories{gap:12px;margin-bottom:30px;padding-block:12px}.category-story{flex-basis:180px;gap:12px;padding-right:14px}.category-story>img{width:44px;height:50px}.category-story strong{font-size:12px}.presentation-store .shop-section-heading h2{font-size:32px}.presentation-store .shop-products{padding-top:10px}.presentation-store .shop-section-heading{margin-bottom:22px}.presentation-store .shop-toolbar{margin-bottom:25px}.presentation-store .shop-about{margin:0 5%;padding:30px 6%}.appearance-design-intro{align-items:flex-start}.appearance-design-intro h2{font-size:18px}.layout-gallery{gap:12px}.layout-description{font-size:10px;line-height:1.7}.layout-card>small{font-size:9px}.layout-sample{height:113px}.design-advanced-grid{gap:14px}.appearance-save-note{width:100%;margin-right:0}.design-version{font-size:9px}.design-preview-viewport{border-radius:10px}#appearance-form .savebar{padding:12px;bottom:6px}.design-details>summary{padding:18px}.design-details>.design-details-content{padding:0 18px 18px}
}
@media(max-width:380px){.layout-sample{height:96px}.layout-card-title{font-size:12px}.design-advanced-grid{grid-template-columns:1fr}.presentation-mosaic .catalog-hero-media{gap:8px}.hero-product-caption svg{display:none}.catalog-hero.presentation-bold{padding-inline:6%}.hero-buttons{gap:10px}.hero-buttons .catalog-btn{gap:15px}.appearance-design-intro{flex-wrap:wrap;gap:8px}}
@media(prefers-reduced-motion:reduce){.hero-product>img,.category-story>svg{transition:none}}
