/* Luca's Délice Gourmet – Stylesheet. Basis: Shopify-Theme „Provence Lavender“ (theme.css, ld-additions.css, Story-Styles, Footer-Styles), Schriften lokal. Erzeugt/gepflegt von Hand, nicht von tools/build.py. */
@font-face{font-family:"Cormorant";font-weight:500;font-style:normal;font-display:swap;src:url(fonts/cormorant-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/cormorant-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant";font-weight:500;font-style:italic;font-display:swap;src:url(fonts/cormorant-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/inter-latin-700-normal.woff2) format("woff2")}

/* ===== theme.css ===== */
:root{ --c-bg: #FDFCFA; --c-bg-deep: #2e1a3d; --c-bg-deep-2: #241530; --c-ink: #2e1a3d; --c-ink-soft: #5c4a6b; --c-violet: #4a2a5e; --c-violet-hover: #3a2049; --c-gold: #d8c58f; --c-gold-soft: #ece2c8; --c-line: rgba(46,26,61,0.14); --c-line-on-dark: rgba(216,197,143,0.28); --c-cream: #F7F3EC; --f-display: 'Cormorant', 'Cormorant Garamond', Georgia, 'Times New Roman', serif; --f-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --space-1: 0.5rem; --space-2: 1rem; --space-3: 1.75rem; --space-4: 3rem; --space-5: 5rem; --space-6: 8rem; --space-7: 12rem; --container-max: 1360px; --container-narrow: 760px; --ease-out: cubic-bezier(0.16, 1, 0.3, 1); --dur-1: 0.35s; --dur-2: 0.7s; --header-h: 5.25rem; }
 @media (max-width: 640px){ :root{ --header-h: 4.25rem; }
}
 @media (prefers-reduced-motion: reduce){ *, *::before, *::after{ animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}
 *{ box-sizing: border-box; }
 html{ scroll-behavior: smooth; }
 body{ margin:0; font-family: var(--f-body); color: var(--c-ink); background: var(--c-bg); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
 img{ max-width:100%; display:block; }
 a{ color: inherit; text-decoration: none; }
 button{ font-family: inherit; cursor: pointer; }
 .skip-to-content{ position:absolute; left:-9999px; top:0; z-index:1000; background:var(--c-bg-deep); color:var(--c-gold); padding:1em 1.5em; }
 .skip-to-content:focus{ left:1rem; top:1rem; }
 :focus-visible{ outline: 2px solid var(--c-violet); outline-offset: 3px; }
 .display-1{ font-family: var(--f-display); font-weight: 500; font-size: clamp(2.75rem, 6.5vw, 6rem); line-height: 0.98; letter-spacing: -0.01em; margin: 0; }
 .display-2{ font-family: var(--f-display); font-weight: 500; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.05; margin: 0; }
 .display-3{ font-family: var(--f-display); font-weight: 500; font-size: clamp(1.5rem, 2.4rem, 2.1rem); line-height: 1.15; margin: 0; }
 .eyebrow{ font-family: var(--f-body); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--c-gold); display:inline-block; margin: 0 0 var(--space-2); }
 .body-l{ font-size: 1.2rem; line-height: 1.6; color: var(--c-ink-soft); }
 .body-m{ font-size: 1rem; line-height: 1.65; color: var(--c-ink-soft); }
 .body-s{ font-size: 0.85rem; line-height: 1.5; color: var(--c-ink-soft); }
 .wrap{ max-width: var(--container-max); margin-inline: auto; padding-inline: clamp(1.25rem, 4vw, 3rem); }
 .wrap--narrow{ max-width: var(--container-narrow); }
 .bleed{ width: 100%; }
 .btn{ display:inline-flex; align-items:center; gap:0.6em; font-family: var(--f-body); font-size: 0.85rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; padding: 1em 2.1em; border-radius: 2px; border: 1px solid transparent; transition: transform var(--dur-1) var(--ease-out), background var(--dur-1), border-color var(--dur-1); }
 .btn:hover{ transform: translateY(-2px); }
 .btn--primary{ background: var(--c-violet); color: var(--c-gold-soft); }
 .btn--primary:hover{ background: var(--c-violet-hover); }
 .btn--outline-dark{ border-color: var(--c-ink); color: var(--c-ink); }
 .btn--outline-dark:hover{ background: var(--c-ink); color: var(--c-bg); }
 .btn--outline-light{ border-color: var(--c-line-on-dark); color: var(--c-gold-soft); }
 .btn--outline-light:hover{ background: rgba(216,197,143,0.12); }
 .btn--ghost{ padding: 0.4em 0; text-transform:none; letter-spacing:0; font-weight:500; font-size:0.95rem; border-bottom:1px solid currentColor; border-radius:0; }
 .btn:disabled{ opacity:0.45; cursor:not-allowed; transform:none; }
 .reveal{ opacity:0; transform: translateY(28px); transition: opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out); }
 .reveal.is-visible{ opacity:1; transform:none; }
 .reveal-stagger > * { transition-delay: calc(var(--i, 0) * 90ms); }
 .announcement{ background: var(--c-bg-deep); color: var(--c-gold-soft); text-align:center; font-size:0.78rem; letter-spacing:0.08em; padding: 0.65em 1em; }
 .site-header{ position: sticky; top:0; z-index: 150; background: transparent; color: var(--c-gold-soft); border-bottom: 1px solid transparent; transition: background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out); }
 .site-header:not(.has-hero){ background: rgba(253,252,250,0.94); backdrop-filter: blur(10px); color: var(--c-ink); border-bottom-color: var(--c-line); }
 .site-header.has-hero.site-header--scrolled{ background: rgba(253,252,250,0.94); backdrop-filter: blur(10px); color: var(--c-ink); border-bottom-color: var(--c-line); }
 .site-header--hidden{ transform: translateY(-100%); }
 body.template-index .hero{ margin-top: calc(-1 * var(--header-h)); }
 .site-header__bar{ display:flex; align-items:center; justify-content:space-between; height: var(--header-h); gap: clamp(1rem, 3vw, var(--space-4)); }
 .site-header__logo{ display:flex; flex-direction:column; line-height:1; font-family: var(--f-display); flex: 0 0 auto; }
 .site-header__logo-main{ font-size: 1.35rem; font-style: italic; letter-spacing: 0.01em; }
 .site-header__logo-sub{ font-size: 0.58rem; letter-spacing: 0.26em; text-transform: uppercase; opacity: 0.72; margin-top: 3px; }
 .site-header__nav ul{ display:flex; gap: clamp(1.5rem, 3vw, var(--space-4)); list-style:none; margin:0; padding:0; }
 .site-header__nav a{ position:relative; display:inline-block; font-size: 0.76rem; letter-spacing: 0.16em; text-transform: uppercase; font-weight:500; padding-bottom: 7px; }
 .site-header__nav a::after{ content:''; position:absolute; left:50%; right:50%; bottom:0; height:1px; background: currentColor; opacity:0.75; transition: left var(--dur-1) var(--ease-out), right var(--dur-1) var(--ease-out); }
 .site-header__nav a:hover::after, .site-header__nav a[aria-current="page"]::after{ left:0; right:0; }
 .site-header__utility{ display:flex; align-items:center; gap: 1.1rem; flex: 0 0 auto; }
 .utility-link{ background:none; border:none; color:currentColor; cursor:pointer; display:inline-flex; align-items:center; gap:0.45em; font-family: var(--f-body); font-size:0.74rem; letter-spacing:0.12em; text-transform:uppercase; padding:0.3rem 0; }
 .utility-divider{ width:1px; height:15px; background: currentColor; opacity:0.28; }
 .cart-count{ display:inline-flex; align-items:center; justify-content:center; min-width:16px; height:16px; padding:0 4px; border-radius:50%; background: var(--c-violet); color:#fff; font-size:0.6rem; font-weight:700; }
 .site-header:not(.has-hero) .cart-count, .site-header--scrolled .cart-count{ background: var(--c-violet); }
 .menu-trigger{ display:none; flex-direction:column; justify-content:center; gap:5px; width:26px; height:20px; background:none; border:none; color:currentColor; cursor:pointer; }
 .menu-trigger__bar{ display:block; width:100%; height:1px; background:currentColor; transition: transform var(--dur-1) var(--ease-out), opacity var(--dur-1); }
 body.nav-open .menu-trigger .menu-trigger__bar:first-child{ transform: translateY(3px) rotate(45deg); }
 body.nav-open .menu-trigger .menu-trigger__bar:last-child{ transform: translateY(-3px) rotate(-45deg); }
 @media (max-width: 860px){ .site-header__nav{ display:none; }
 .utility-link[data-search-open]{ display:none; }
 .utility-divider{ display:none; }
 .menu-trigger{ display:flex; }
}
 .nav-overlay{ position:fixed; inset:0; z-index:220; background: var(--c-bg-deep); color: var(--c-gold-soft); visibility:hidden; opacity:0; transition: opacity var(--dur-2) var(--ease-out), visibility var(--dur-2) var(--ease-out); }
 .nav-overlay[aria-hidden="false"]{ visibility:visible; opacity:1; }
 .nav-overlay__inner{ display:flex; flex-direction:column; height:100%; }
 .nav-overlay__head{ display:flex; align-items:center; justify-content:space-between; height: var(--header-h); flex:0 0 auto; }
 .nav-overlay__close{ background:none; border:none; color:inherit; font-size:1.9rem; line-height:1; cursor:pointer; }
 .nav-overlay__nav{ flex:1; display:flex; align-items:center; }
 .nav-overlay__nav ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0.4rem; }
 .nav-overlay__nav a{ font-family: var(--f-display); font-style: italic; font-weight:500; font-size: clamp(2.2rem, 8vw, 4rem); color: inherit; opacity:0; transform: translateY(18px); transition: opacity 0.55s var(--ease-out), transform 0.55s var(--ease-out); transition-delay: calc(var(--i, 0) * 70ms); }
 .nav-overlay[aria-hidden="false"] .nav-overlay__nav a{ opacity:1; transform:none; }
 .nav-overlay__foot{ display:flex; gap: var(--space-4); flex-wrap:wrap; padding-block: var(--space-3); border-top: 1px solid var(--c-line-on-dark); font-size:0.78rem; letter-spacing:0.12em; text-transform:uppercase; }
 .nav-overlay__foot a, .nav-overlay__foot button{ background:none; border:none; color:inherit; cursor:pointer; }
 .search-overlay{ position:fixed; inset:0; z-index:230; background: rgba(253,252,250,0.97); backdrop-filter: blur(8px); display:flex; align-items:center; justify-content:center; visibility:hidden; opacity:0; transition: opacity var(--dur-2) var(--ease-out), visibility var(--dur-2) var(--ease-out); }
 .search-overlay[aria-hidden="false"]{ visibility:visible; opacity:1; }
 .search-overlay__close{ position:absolute; top: var(--space-3); right: clamp(1.25rem, 4vw, 3rem); background:none; border:none; color: var(--c-ink); font-size:2rem; line-height:1; cursor:pointer; }
 .search-overlay__form{ width:100%; max-width: var(--container-narrow); display:flex; align-items:flex-end; gap:1rem; border-bottom: 1px solid var(--c-ink); padding-bottom:0.75rem; }
 .search-overlay__form input{ flex:1; border:none; background:none; outline:none; font-family: var(--f-display); font-style:italic; color: var(--c-ink); font-size: clamp(1.5rem, 4vw, 2.5rem); }
 .search-overlay__form button{ background:none; border:none; color: var(--c-ink); cursor:pointer; }
 .hero{ position: relative; min-height: 92vh; display:flex; align-items:flex-end; background: var(--c-bg-deep); color: var(--c-gold-soft); overflow:hidden; }
 .hero__media{ position:absolute; inset:0; }
 .hero__media img{ width:100%; height:100%; object-fit:cover; object-position:center; opacity:0.82; }
 .hero__media::after{ content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(46,26,61,0.15) 0%, rgba(36,21,48,0.55) 62%, rgba(30,17,40,0.92) 100%); }
 .hero__content{ position:relative; z-index:2; padding: var(--space-5) clamp(1.25rem, 4vw, 3rem) var(--space-6); max-width: 900px; }
 .hero__title{ font-family: var(--f-display); font-size: clamp(3rem, 8vw, 7.5rem); line-height:0.94; font-weight:500; margin: 0 0 var(--space-3); }
 .hero__title em{ font-style: italic; color: var(--c-gold); }
 .hero__sub{ font-size: 1.15rem; max-width: 34ch; color: var(--c-gold-soft); opacity:0.9; margin-bottom: var(--space-3); }
 .hero__scroll-cue{ position:absolute; bottom: var(--space-3); left: 50%; transform: translateX(-50%); z-index:2; display:flex; flex-direction:column; align-items:center; gap:0.5rem; font-size:0.68rem; letter-spacing:0.2em; text-transform:uppercase; color: var(--c-gold-soft); opacity:0.7; }
 .hero__scroll-cue .line{ width:1px; height:34px; background: var(--c-gold-soft); animation: scrollcue 2.2s var(--ease-out) infinite; }
 @keyframes scrollcue{ 0%{ transform: scaleY(0); transform-origin: top; }
 50%{ transform: scaleY(1); transform-origin: top; }
 50.01%{ transform-origin: bottom; }
 100%{ transform: scaleY(0); transform-origin: bottom; }
}
 .fact-strip{ background: var(--c-cream); border-bottom: 1px solid var(--c-line); }
 .fact-strip__grid{ display:grid; grid-template-columns: repeat(3, 1fr); padding-block: var(--space-4); }
 .fact-strip__item{ text-align:center; padding-inline: var(--space-2); border-left: 1px solid var(--c-line); }
 .fact-strip__item:first-child{ border-left:none; }
 .fact-strip__num{ font-family: var(--f-display); font-size: 2rem; color: var(--c-violet); display:block; margin-bottom:0.25rem; }
 .fact-strip__label{ font-size:0.85rem; color: var(--c-ink-soft); }
 @media (max-width: 720px){ .fact-strip__grid{ grid-template-columns: 1fr; gap: var(--space-3); }
 .fact-strip__item{ border-left:none; border-top:1px solid var(--c-line); padding-top: var(--space-3); }
 .fact-strip__item:first-child{ border-top:none; padding-top:0; }
}
 .showcase{ padding-block: var(--space-6); overflow:hidden; }
 .showcase__grid{ display:grid; grid-template-columns: 1.15fr 0.85fr; gap: clamp(2rem, 6vw, 6rem); align-items:center; }
 .showcase__media{ position:relative; }
 .showcase__media-frame{ position:relative; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 2px; background: var(--c-cream); }
 .showcase__media-frame img{ position:absolute; inset:0; width:100%; height:100%; object-fit: contain; object-position: center; }
 .showcase__media-badge{ position:absolute; bottom: -1.5rem; right: -1.5rem; background: var(--c-bg-deep); color: var(--c-gold); font-family: var(--f-display); font-style:italic; font-size:1.05rem; padding: 1.1em 1.5em; max-width: 220px; line-height:1.3; box-shadow: 0 20px 40px rgba(46,26,61,0.18); z-index: 2; }
 .showcase__eyebrow{ margin-bottom: var(--space-2); }
 .showcase__price-row{ display:flex; align-items:baseline; gap:0.75rem; margin: var(--space-3) 0; }
 .showcase__price{ font-family: var(--f-display); font-size:2.2rem; color: var(--c-violet); }
 .showcase__price-note{ font-size:0.85rem; color:var(--c-ink-soft); }
 .showcase__variants{ display:flex; flex-wrap:wrap; gap:0.6rem; margin: var(--space-3) 0; }
 @media (max-width: 880px){ .showcase__grid{ grid-template-columns: 1fr; }
 .showcase{ padding-block: var(--space-5); }
 .showcase__media{ margin-bottom: 2.25rem; }
 .showcase__media-badge{ right: 1rem; bottom: -1.5rem; max-width: 70%; font-size: 0.92rem; padding: 0.85em 1.1em; }
}
 @media (max-width: 420px){ .showcase__media-badge{ position:static; margin-top: 1rem; display:inline-block; max-width: 100%; }
}
 .story{ display:grid; grid-template-columns: 1fr 1fr; min-height: 640px; }
 .story__media{ position:relative; min-height: 340px; }
 .story__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
 .story__content{ background: var(--c-bg-deep); color: var(--c-gold-soft); display:flex; flex-direction:column; justify-content:center; padding: var(--space-5) clamp(1.5rem, 5vw, 5rem); }
 .story__content p{ margin-top: var(--space-3); }
 @media (max-width: 880px){ .story{ grid-template-columns: 1fr; }
}
 .occasion-carousel{ padding-block: var(--space-6); background: var(--c-cream); color: var(--c-ink); overflow: hidden; }
 .occasion-carousel__head{ max-width: 560px; margin-bottom: var(--space-5); }
 .occasion-carousel__head .display-2{ color: var(--c-ink); }
 .occasion-carousel__head .body-l{ color: var(--c-ink-soft); }
 .occasion-carousel__viewport{ position: relative; }
 .occasion-carousel__track{ display: flex; gap: 1.5rem; list-style: none; margin: 0; padding: 0.5rem clamp(1.25rem, 4vw, 3rem) 1.5rem; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
 .occasion-carousel__track::-webkit-scrollbar{ display: none; }
 .occasion-carousel__track:focus-visible{ outline: 2px solid var(--c-violet); outline-offset: 6px; }
 .occasion-slide{ flex: 0 0 auto; width: min(78vw, 440px); aspect-ratio: 4 / 5; scroll-snap-align: center; position: relative; border-radius: 6px; overflow: hidden; background: #fff; box-shadow: 0 12px 32px rgba(46,26,61,0.08); }
 .occasion-slide__media{ position: absolute; inset: 0; }
 .occasion-slide__media img{ width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--ease-out); }
 .occasion-slide:hover .occasion-slide__media img{ transform: scale(1.06); }
 .occasion-slide__media::after{ content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(253,252,250,0) 42%, rgba(46,26,61,0.72) 100%); transition: opacity var(--dur-2) var(--ease-out); }
 .occasion-slide:not(.is-active){ opacity: 0.72; transition: opacity var(--dur-2) var(--ease-out); }
 .occasion-slide.is-active{ opacity: 1; }
 .occasion-slide__caption{ position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.75rem; }
 .occasion-slide__index{ font-family: var(--f-body); font-size: 0.66rem; letter-spacing: 0.2em; color: var(--c-gold); opacity: 0.95; }
 .occasion-slide__title{ font-family: var(--f-display); font-style: italic; font-weight: 500; font-size: clamp(1.5rem, 3vw, 2.1rem); margin: 0.4rem 0 0.5rem; color: #fff; }
 .occasion-slide__text{ font-size: 0.88rem; line-height: 1.5; max-width: 28ch; color: rgba(255,255,255,0.92); }
 .carousel-arrow{ position: absolute; top: 42%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; background: rgba(255,255,255,0.85); backdrop-filter: blur(6px); border: 1px solid var(--c-line); color: var(--c-violet); font-size: 1.5rem; line-height: 1; display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 3; box-shadow: 0 8px 20px rgba(46,26,61,0.1); transition: background var(--dur-1), border-color var(--dur-1); }
 .carousel-arrow:hover{ background: #fff; border-color: var(--c-violet); }
 .carousel-arrow--prev{ left: clamp(0.5rem, 2vw, 1.5rem); }
 .carousel-arrow--next{ right: clamp(0.5rem, 2vw, 1.5rem); }
 @media (max-width: 640px){ .carousel-arrow{ display: none; }
}
 .occasion-carousel__dots{ display: flex; justify-content: center; gap: 0.4rem; margin-top: var(--space-3); }
 .carousel-dot{ width: 22px; height: 22px; background: none; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; }
 .carousel-dot::before{ content: ''; width: 7px; height: 7px; border-radius: 50%; background: rgba(74,42,94,0.28); transition: background var(--dur-1), transform var(--dur-1); }
 .carousel-dot[aria-current="true"]::before{ background: var(--c-violet); transform: scale(1.4); }
 @media (prefers-reduced-motion: reduce){ .occasion-carousel__track{ scroll-behavior: auto; }
}
 .trust-bar{ border-top:1px solid var(--c-line); border-bottom:1px solid var(--c-line); padding-block: var(--space-3); }
 .trust-bar__row{ display:flex; flex-wrap:wrap; justify-content:center; gap: var(--space-4); font-size:0.85rem; color: var(--c-ink-soft); }
 .trust-bar__row span{ display:flex; align-items:center; gap:0.5rem; }
 .b2b-band{ background: var(--c-violet); color: var(--c-gold-soft); padding: var(--space-5) 0; }
 .b2b-band__grid{ display:grid; grid-template-columns: 1.2fr 0.8fr; gap: var(--space-4); align-items:center; }
 @media (max-width: 720px){ .b2b-band__grid{ grid-template-columns: 1fr; }
}
 .pdp{ display:grid; grid-template-columns: 1.1fr 0.9fr; gap: clamp(2rem, 5vw, 5rem); padding-block: var(--space-5); }
 .pdp__gallery{ position: sticky; top: 6.5rem; align-self:start; }
 .pdp__gallery-main{ aspect-ratio: 1/1; overflow:hidden; border-radius:2px; margin-bottom:0.75rem; background: var(--c-cream); }
 .pdp__gallery-main img{ width:100%; height:100%; object-fit:cover; }
 .pdp__thumbs{ display:flex; gap:0.6rem; }
 .pdp__thumbs img{ width:64px; height:64px; object-fit:cover; border-radius:2px; cursor:pointer; opacity:0.6; transition:opacity .2s; }
 .pdp__thumbs img.is-active, .pdp__thumbs img:hover{ opacity:1; }
 .pdp__info__price{ font-family: var(--f-display); font-size:2.4rem; color: var(--c-violet); margin: 0.75rem 0 0; }
 .pdp__variant-picker{ display:flex; flex-wrap:wrap; gap:0.65rem; margin: var(--space-3) 0; }
 .variant-pill{ border:1px solid var(--c-line); border-radius:2px; padding:0.85em 1.1em; display:flex; flex-direction:column; gap:0.15em; min-width:110px; text-align:left; background:#fff; transition: border-color .2s, background .2s; }
 .variant-pill strong{ font-size:0.92rem; }
 .variant-pill small{ color: var(--c-ink-soft); font-size:0.75rem; }
 .variant-pill.is-selected{ border-color: var(--c-violet); background: var(--c-gold-soft); }
 .variant-pill[disabled]{ opacity:0.4; cursor:not-allowed; text-decoration: line-through; }
 .variant-pill .badge{ position:absolute; margin-top:-2.6em; margin-left:0; font-size:0.6rem; text-transform:uppercase; letter-spacing:0.05em; background: var(--c-violet); color:#fff; padding:0.2em 0.5em; border-radius: 2px; }
 .pdp__cta{ display:flex; gap:0.75rem; margin: var(--space-3) 0; align-items:center; }
 .qty-input{ width:64px; padding:0.85em; border:1px solid var(--c-line); text-align:center; }
 .pdp__trust-line{ font-size:0.85rem; color: var(--c-ink-soft); border-top:1px solid var(--c-line); padding-top:var(--space-2); margin-top:var(--space-3); }
 .pdp__accordion{ margin-top: var(--space-4); border-top:1px solid var(--c-line); }
 .pdp__accordion details{ border-bottom:1px solid var(--c-line); padding: 1em 0; }
 .pdp__accordion summary{ cursor:pointer; font-weight:600; list-style:none; display:flex; justify-content:space-between; }
 .pdp__accordion summary::-webkit-details-marker{ display:none; }
 .pdp__accordion summary::after{ content:'+'; font-size:1.2rem; color: var(--c-violet); }
 .pdp__accordion details[open] summary::after{ content:'−'; }
 .pdp__accordion p{ margin-top:0.75em; }
 .b2b-note{ margin-top: var(--space-3); padding: 1.25em; background: var(--c-cream); border-left: 3px solid var(--c-gold); font-size:0.9rem; }
 @media (max-width: 880px){ .pdp{ grid-template-columns: 1fr; }
 .pdp__gallery{ position:static; }
}
 .collection-hero{ padding: var(--space-5) 0 var(--space-4); text-align:center; }
 .collection-grid{ display:grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 2rem 1.5rem; padding-bottom: var(--space-6); }
 .product-card{ display:block; }
 .product-card__media{ aspect-ratio: 4/5; overflow:hidden; background: var(--c-cream); border-radius:2px; margin-bottom:0.9rem; }
 .product-card__media img{ width:100%; height:100%; object-fit:cover; transition: transform .6s var(--ease-out); }
 .product-card:hover .product-card__media img{ transform: scale(1.045); }
 .product-card__title{ font-family: var(--f-display); font-size:1.2rem; }
 .product-card__price{ color: var(--c-ink-soft); font-size:0.9rem; margin-top:0.2rem; }
 .cart-drawer{ position:fixed; inset:0; z-index:200; visibility:hidden; }
 .cart-drawer[aria-hidden="false"]{ visibility:visible; }
 .cart-drawer__overlay{ position:absolute; inset:0; background: rgba(46,26,61,0.45); opacity:0; transition: opacity var(--dur-1); }
 .cart-drawer__panel{ position:absolute; top:0; right:0; height:100%; width:min(420px, 100%); background: var(--c-bg); box-shadow: -20px 0 50px rgba(0,0,0,0.15); display:flex; flex-direction:column; transform: translateX(100%); transition: transform var(--dur-2) var(--ease-out); }
 .cart-drawer[aria-hidden="false"] .cart-drawer__overlay{ opacity:1; }
 .cart-drawer[aria-hidden="false"] .cart-drawer__panel{ transform: translateX(0); }
 .cart-drawer__header{ display:flex; justify-content:space-between; align-items:center; padding: 1.25rem 1.5rem; border-bottom:1px solid var(--c-line); }
 .cart-drawer__title{ font-family: var(--f-display); font-size:1.3rem; margin:0; }
 .cart-drawer__close{ background:none; border:none; font-size:1.5rem; line-height:1; color: var(--c-ink); }
 .cart-drawer__content{ flex:1; overflow-y:auto; padding: 1.25rem 1.5rem; }
 .cart-line{ display:flex; flex-wrap:wrap; align-items:flex-start; gap:1rem; padding-block: 1rem; border-bottom:1px solid var(--c-line); }
 .cart-line img{ flex-shrink:0; width:76px; height:76px; object-fit:cover; border-radius:2px; }
 .cart-line__title{ font-weight:600; font-size:0.95rem; margin:0; overflow-wrap:anywhere; }
 .cart-line__body{ flex:1 1 160px; min-width:0; }
 .cart-line__price{ margin-top:0.5rem; font-weight:600; flex:0 0 auto; text-align:right; white-space:nowrap; }
 .cart-line__qty{ display:flex; flex-wrap:nowrap; align-items:center; gap:0.5rem; margin-top:0.6rem; }
 .cart-line__qty button{ width:36px; height:36px; min-width:36px; flex:0 0 auto; border:1px solid var(--c-line); background:#fff; border-radius:2px; font-size:1rem; }
 .cart-line__qty input{ flex:0 0 auto; }
 .cart-line__remove{ display:inline-block; background:none; border:none; text-decoration:underline; font-size:0.8rem; color: var(--c-ink-soft); padding:0.35em 0; margin-top:0.5rem; cursor:pointer; }
 .cart-drawer__footer{ padding:1.25rem 1.5rem; border-top:1px solid var(--c-line); }
 .cart-drawer__subtotal{ display:flex; justify-content:space-between; font-size:1.05rem; margin-bottom:1rem; }
 .cart-empty{ text-align:center; padding: var(--space-5) 0; color: var(--c-ink-soft); }
 @media (max-width: 480px){ .cart-line{ gap:0.75rem; }
 .cart-line img{ width:64px; height:64px; }
 .cart-line__price{ flex-basis:100%; text-align:left; margin-top:0.4rem; }
}
 .site-footer{ background: var(--c-bg-deep-2); color: var(--c-gold-soft); padding: var(--space-5) 0 var(--space-3); }
 .site-footer__grid{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: var(--space-4); padding-bottom: var(--space-4); border-bottom: 1px solid var(--c-line-on-dark); }
 .site-footer__logo{ font-family: var(--f-display); font-size:1.6rem; margin-bottom:0.75rem; }
 .site-footer h4{ font-size:0.75rem; letter-spacing:0.12em; text-transform:uppercase; color: var(--c-gold); margin-bottom:1rem; }
 .site-footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0.6rem; }
 .site-footer a{ font-size:0.9rem; opacity:0.85; }
 .site-footer a:hover{ opacity:1; }
 .site-footer__bottom{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding-top: var(--space-3); font-size:0.78rem; opacity:0.6; }
 @media (max-width: 880px){ .site-footer__grid{ grid-template-columns: 1fr 1fr; }
}
 .form-page{ padding-block: var(--space-5); }
 .field{ margin-bottom: 1.25rem; }
 .field label{ display:block; font-size:0.8rem; letter-spacing:0.03em; margin-bottom:0.4rem; color: var(--c-ink-soft); }
 .field input, .field textarea, .field select{ width:100%; padding: 0.9em 1em; border:1px solid var(--c-line); background:#fff; font-family:inherit; font-size:0.95rem; }
 .field textarea{ min-height: 140px; resize: vertical; }
 .field input:invalid:not(:placeholder-shown){ border-color:#a4302c; }
 .mt-1{margin-top:var(--space-1);}
 .mt-2{margin-top:var(--space-2);}
 .mt-3{margin-top:var(--space-3);}
 .mt-4{margin-top:var(--space-4);}
 .mt-5{margin-top:var(--space-5);}
 .center{ text-align:center; }
 .visually-hidden{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; padding:0; margin:-1px; }
 .social-icons{ display:flex; align-items:center; gap:0.9rem; }
 .social-icons a{ display:inline-flex; align-items:center; justify-content:center; color:currentColor; opacity:0.85; transition:opacity .2s; }
 .social-icons a:hover{ opacity:1; }


/* ===== ld-additions.css ===== */
:root { --f-display: 'Cormorant', 'Cormorant Garamond', Georgia, 'Times New Roman', serif; }
 .pdp__info .eyebrow, .form-page .eyebrow, .collection-hero .eyebrow, .occasion-carousel__head .eyebrow, .showcase__eyebrow, .b2bl .eyebrow { color: var(--c-violet); }
 .hero__title { font-size: clamp(2.6rem, 6.4vw, 5.75rem); }
 .pdp__price-note { font-size: .82rem; line-height: 1.5; color: var(--c-ink-soft); margin: .2rem 0 0; }
 .pdp__price-note a { text-decoration: underline; }
 .pdp__unit-price { font-size: .85rem; color: var(--c-ink-soft); margin: .2rem 0 0; }
 .pdp__details { display: grid; grid-template-columns: max-content 1fr; gap: .5rem 1.25rem; margin: .75rem 0 0; font-size: .95rem; line-height: 1.5; color: var(--c-ink-soft); }
 .pdp__details dt { font-weight: 600; color: var(--c-ink); }
 .pdp__details dd { margin: 0; }
 @media (max-width: 480px) { .pdp__details { grid-template-columns: 1fr; gap: .15rem 0; }
 .pdp__details dd { margin-bottom: .6rem; }
}
 .pdp__accordion .body-m p { margin: .6em 0 0; }
 .pdp__accordion .body-m p:first-child { margin-top: 0; }
 .pdp__accordion a { text-decoration: underline; }
 .cart-note { font-size: .78rem; line-height: 1.5; color: var(--c-ink-soft); margin: 0 0 1rem; }
 .cart-note a { text-decoration: underline; }
 .favor-calc-wrap { padding: 2.5rem 1rem; }
 .favor-calc { max-width: 560px; margin: 0 auto; padding: 1.5rem; border: 1px solid rgba(0,0,0,.12); border-radius: 12px; background: #fff; text-align: center; }
 .favor-calc__eyebrow { font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; color: var(--c-violet); margin: 0 0 .25rem; }
 .favor-calc__title { margin: 0 0 1rem; }
 .favor-calc__label { display: block; font-size: .9rem; margin-bottom: .35rem; }
 .favor-calc__input { width: 7rem; font-size: 1.25rem; text-align: center; padding: .5rem; border: 1px solid rgba(0,0,0,.25); border-radius: 8px; }
 .favor-calc__result { margin: 1rem 0; min-height: 3rem; line-height: 1.5; }
 .favor-calc__btn { min-height: 44px; }
 .favor-calc__b2b { font-size: .88rem; margin: 1rem 0 0; }
 .favor-calc__b2b a { text-decoration: underline; }
 .occ-links { padding: 2.5rem 1rem; }
 .occ-links__grid, .occ-links .occ-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; max-width: 1100px; margin: 1.25rem auto 0; }
 .occ-card { display: block; padding: 1.25rem; border: 1px solid rgba(0,0,0,.12); border-radius: 12px; text-decoration: none; color: inherit; background: #fff; transition: box-shadow .2s; }
 .occ-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.08); }
 .ship-progress { margin: 0 0 1rem; }
 .ship-progress__text { font-size: .88rem; line-height: 1.4; margin: 0 0 .4rem; }
 .ship-progress__bar { height: 6px; border-radius: 999px; background: rgba(46,26,61,.12); overflow: hidden; }
 .ship-progress__bar span { display: block; height: 100%; background: var(--c-violet); border-radius: 999px; transition: width .3s; }
 .ship-progress__form { margin-top: .75rem; }
 .ship-progress__form .btn { min-height: 44px; width: 100%; justify-content: center; text-align: center; }
 .cart-ship { max-width: 420px; margin: var(--space-4, 2rem) 0 0 auto; }
 @media (max-width: 640px) { .cart-ship { max-width: none; }
}
 .occasion-slide__link { display: inline-block; margin-top: .5rem; font-size: .9rem; text-decoration: underline; color: inherit; min-height: 24px; }
 .b2bl__hero { padding-block: var(--space-5, 3rem) var(--space-3, 1.5rem); }
 .b2bl__cta { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
 .b2bl__section { padding-block: var(--space-4, 2rem); }
 .b2bl__grid { list-style: none; padding: 0; margin: 1.25rem 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; }
 .b2bl__card { padding: 1.25rem; border: 1px solid rgba(0,0,0,.12); border-radius: 12px; background: #fff; }
 .b2bl__card-title { font-size: 1.15rem; margin: 0 0 .35rem; }
 .b2bl__table { width: 100%; border-collapse: collapse; margin-top: 1rem; font-size: 1rem; }
 .b2bl__table th, .b2bl__table td { text-align: left; padding: .75rem .5rem; border-bottom: 1px solid rgba(0,0,0,.12); }
 .b2bl__sample { margin-top: 1.25rem; padding: 1rem; border-radius: 12px; background: rgba(74,42,94,.06); }
 .b2bl__steps { list-style: none; padding: 0; margin: 1.25rem 0 0; display: grid; gap: 1.25rem; }
 .b2bl__step { display: grid; grid-template-columns: 2.5rem 1fr; gap: 1rem; align-items: start; }
 .b2bl__step-no { display: inline-flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--c-violet); color: #fff; font-weight: 600; }
 .b2bl select { width: 100%; padding: .75rem; border: 1px solid rgba(0,0,0,.25); border-radius: 8px; background: #fff; font: inherit; }


/* ===== Story-Seiten ===== */
.no-js .reveal{opacity:1 !important;transform:none !important}
.hero__title,.display-1,.display-2,.display-3{hyphens:manual;overflow-wrap:break-word}
@media (max-width:380px){.hero__title{font-size:2.35rem}
}
.hero--story{margin-top:calc(var(--header-h,72px) * -1);min-height:78vh}
@media (max-width:640px){.hero--story{min-height:72vh}
}
.story-eyebrow{color:var(--c-violet)}
.story-prose{font-size:1.08rem;line-height:1.75;color:var(--c-ink-soft,#3a3340)}
.story-prose p{margin:0 0 1.1em}
.story-prose p:last-child{margin-bottom:0}
.story-prose a{text-decoration:underline;text-underline-offset:3px}
.story-chapter{padding-block:var(--space-5,3.5rem) var(--space-4,2rem)}
.story-chapter .display-2{margin:.25rem 0 1rem}
.story-chapter--lead .story-prose{font-size:1.25rem;line-height:1.7}
.story-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--c-bg,#fff)}
.story-split--cream{background:var(--c-cream,#f7f1e6)}
.story-split--dark{background:var(--c-bg-deep,#2e1a3d);color:#f3ecf6}
.story-split--dark .eyebrow{color:var(--c-gold,#c9a45c)}
.story-split--dark .story-prose{color:rgba(243,236,246,.88)}
.story-split--dark .btn--ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.story-split__media{position:relative;min-height:440px;overflow:hidden}
.story-split__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.story-split__text{padding:var(--space-6,4rem) clamp(1.5rem,6vw,5rem);display:flex;flex-direction:column;justify-content:center}
.story-split--right .story-split__media{order:2}
@media (max-width:880px){.story-split{grid-template-columns:1fr}
.story-split--right .story-split__media{order:0}
.story-split__media{min-height:0;aspect-ratio:4/5}
.story-split--landscape .story-split__media{aspect-ratio:3/2}
.story-split__text{padding:2.5rem 1.25rem 3rem}
}
.story-fullbleed{position:relative;margin:0;overflow:hidden}
.story-fullbleed--tall{height:82vh;min-height:420px}
.story-fullbleed--medium{height:56vh;min-height:320px}
.story-fullbleed img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.story-fullbleed__caption{position:absolute;left:0;right:0;bottom:0;padding:2.5rem 1.25rem 1rem;color:#fff;font-size:.9rem;background:linear-gradient(transparent,rgba(20,10,28,.6))}
.story-statement{padding:var(--space-6,4.5rem) 1.25rem;text-align:center;background:var(--c-cream,#f7f1e6)}
.story-statement--violet{background:var(--c-violet);color:#fff}
.story-statement--dark{background:var(--c-bg-deep,#2e1a3d);color:#f3ecf6}
.story-statement__text{max-width:22em;margin:0 auto;font-family:var(--f-display);font-size:clamp(1.7rem,4.2vw,3rem);line-height:1.25;font-style:italic}
.story-statement__cite{display:block;margin-top:1.25rem;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;opacity:.8;font-style:normal}
.story-gallery{padding-block:var(--space-5,3rem)}
.story-gallery__head{margin-bottom:1.5rem}
.story-gallery__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(var(--cols,3),1fr);gap:.75rem}
.story-gallery__item{margin:0}
.story-gallery__item img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px;display:block}
.story-gallery__item figcaption{font-size:.85rem;color:var(--c-ink-soft);margin-top:.4rem}
@media (max-width:640px){.story-gallery__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem;padding-bottom:.5rem;-webkit-overflow-scrolling:touch}
.story-gallery__grid>li{flex:0 0 80%;scroll-snap-align:center}
}
.story-product{padding-block:var(--space-6,4rem);background:var(--c-cream,#f7f1e6)}
.story-product__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;max-width:1100px;margin:0 auto;padding-inline:1.25rem}
.story-product__media img{width:100%;border-radius:12px;display:block}
.story-product__packs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none}
.pack-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid var(--c-violet);border-radius:999px;color:var(--c-violet);text-decoration:none;font-size:.95rem;background:transparent;transition:background .2s,color .2s}
.pack-chip:hover,.pack-chip:focus-visible{background:var(--c-violet);color:#fff}
.story-product__links{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:1.5rem}
.story-product__price{margin-top:.75rem;color:var(--c-ink-soft)}
@media (max-width:760px){.story-product__grid{grid-template-columns:1fr}
}
.story-tips{padding-block:var(--space-6,4rem)}
.story-tips__head{max-width:40rem;margin-bottom:2rem}
.story-tips__list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;counter-reset:tip}
.story-tips__item{counter-increment:tip;padding:1.5rem;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fff}
.story-tips__item::before{content:counter(tip,decimal-leading-zero);display:block;font-family:var(--f-display);font-size:2rem;color:var(--c-gold,#b8923f);margin-bottom:.5rem}
.story-tips__title{font-family:var(--f-display);font-size:1.4rem;margin:0 0 .4rem}
.story-faq{padding-block:var(--space-5,3rem)}
.story-faq .display-3{margin-bottom:1rem}
.story-related{padding-block:var(--space-6,4rem);background:var(--c-cream,#f7f1e6)}
.story-related__head{margin-bottom:2rem}
.story-related__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media (max-width:880px){.story-related__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){.story-related__grid{grid-template-columns:1fr}
}
.story-card{display:block;color:inherit;text-decoration:none;height:100%}
.story-card__media{aspect-ratio:4/5;overflow:hidden;border-radius:10px;background:rgba(74,42,94,.08)}
.story-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.story-card:hover .story-card__media img,.story-card:focus-visible .story-card__media img{transform:scale(1.04)}
.story-card__kicker{display:block;margin-top:.9rem;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-violet)}
.story-card__title{font-family:var(--f-display);font-size:1.5rem;line-height:1.2;margin:.25rem 0 .35rem}
.story-card__text{font-size:.95rem;line-height:1.55;color:var(--c-ink-soft);margin:0 0 .5rem}
.story-card__more{font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
.story-card:focus-visible{outline:2px solid var(--c-violet);outline-offset:4px}
.story-links{list-style:none;padding:0;margin:0}
.story-links--chips{display:flex;flex-wrap:wrap;gap:.5rem}
.story-links--chips a{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid rgba(74,42,94,.4);border-radius:999px;text-decoration:none;color:var(--c-violet);font-size:.92rem;transition:background .2s,color .2s}
.story-links--chips a:hover,.story-links--chips a:focus-visible{background:var(--c-violet);color:#fff}
.story-links--list li a{display:inline-block;padding:.35rem 0;min-height:32px}
.story-more{padding:2.5rem 1rem 3.5rem;max-width:900px;margin:0 auto}
.story-more h2{font-family:var(--f-display);font-size:1.6rem;margin:0 0 1rem}
.story-cta{padding:var(--space-6,4.5rem) 1.25rem;background:var(--c-bg-deep,#2e1a3d);color:#f3ecf6}
.story-cta--cream{background:var(--c-cream,#f7f1e6);color:var(--c-ink,#241a2c)}
.story-cta--violet .eyebrow{color:var(--c-gold,#c9a45c)}
.story-cta--violet .btn--ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.story-cta__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:center}
.story-cta__actions{display:flex;flex-wrap:wrap;gap:.75rem}
@media (max-width:760px){.story-cta__grid{grid-template-columns:1fr}
}
.occ-links__grid{list-style:none;padding:0}
.occ-card__title{font-family:var(--f-display);font-size:1.35rem;display:block;margin-bottom:.25rem}
.occ-card__text{font-size:.92rem;color:var(--c-ink-soft)}
.occasion-slide__cover{position:absolute;inset:0;z-index:1}
.occasion-slide__more{position:relative;z-index:2}
#gastgeschenk-rechner{scroll-margin-top:calc(var(--header-h,72px) + 16px)}
.qty button,.cart-qty button,.qty__btn{min-width:40px;min-height:40px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--c-violet);outline-offset:3px}


/* ===== Footer ===== */
 .site-footer__grid { grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr; gap: var(--space-3, 1.75rem) var(--space-4, 3rem); }
 .site-footer li a { display: inline-block; padding-block: .15rem; }
 @media (max-width: 1100px) { .site-footer__grid { grid-template-columns: 1fr 1fr 1fr; }
 .site-footer__brand { grid-column: 1 / -1; }
}
 @media (max-width: 640px) { .site-footer__grid { grid-template-columns: 1fr 1fr; }
 .site-footer li a { padding-block: .35rem; }
}


/* ===== Ergänzungen der statischen Seite ===== */
.draft{background:#fff4d6;border:1px solid #e3c96b;padding:14px 18px;margin:0 0 30px;font-size:.95rem;color:var(--c-ink);border-radius:2px}
.legal-prose{font-size:1rem;line-height:1.7;color:var(--c-ink-soft)}
.legal-prose h2{font-size:1.35rem;line-height:1.3;color:var(--c-ink);margin:2em 0 .6em}
.legal-prose p,.legal-prose ul{margin:0 0 1em}
.legal-prose a{text-decoration:underline;text-underline-offset:3px}
.page-prose a,.body-l a{text-decoration:underline;text-underline-offset:3px}
.btn--ghost.inline{display:inline;border:none}
.form-note{font-size:.88rem;line-height:1.5;color:var(--c-ink-soft)}
.mail-fallback{font-size:.9rem;color:var(--c-ink-soft);margin-top:1rem}
.mail-fallback a{text-decoration:underline}
.pdp__qty-note{font-size:.82rem;color:var(--c-ink-soft);margin:.4rem 0 0}
.utility-link--text{letter-spacing:.12em}

/* ---- Ergänzungen statische Seite ---- */
.btn.is-disabled{opacity:.45;pointer-events:none}
.shopify-policy__container{max-width:46rem;margin-inline:auto;padding:var(--space-5,3rem) 1.25rem}
.shopify-policy__title h1{font-family:var(--font-display,Cormorant,serif);font-weight:500;font-size:clamp(2rem,5vw,3rem);margin-bottom:1.5rem}
.sticky-cta{display:none}
@media (max-width:859px){
  .sticky-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;gap:.75rem;align-items:center;justify-content:space-between;
    padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:#fdfcfa;border-top:1px solid rgba(46,26,61,.12);
    transform:translateY(110%);transition:transform .25s}
  .sticky-cta.is-visible{transform:none}
  .sticky-cta span{font-size:.85rem;color:#2e1a3d}
  body.template-product{padding-bottom:4.5rem}
}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #4a2a5e;outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
.story__content .body-l{color:var(--c-gold-soft);opacity:.92}
.story__content .btn--ghost{color:#fff;border-color:rgba(255,255,255,.55);align-self:flex-start}
.hero__cta .btn--ghost{color:#fff;border:0;border-bottom:1px solid rgba(255,255,255,.6);align-self:center;padding:.4em 0;margin-left:.75rem}
.pdp .variant-pill{flex:1 1 calc(50% - .5rem);min-width:9rem;text-align:left}
.field input:invalid:not(:placeholder-shown){border-color:inherit}
.field input:user-invalid,.field textarea:user-invalid{border-color:#a4302c}
.site-footer__brand .body-s,.site-footer__brand a{color:#e8dfc9!important;opacity:1!important}
