:root { --atelier-cream: #fbf1eb; --atelier-rose: #edd4d4; --atelier-plum: #513448; }
body { background: var(--atelier-cream); }
.site-header { position: relative; z-index: 100; background: var(--atelier-cream); border: 0; box-shadow: none; }
.site-header .site-header__inner { width: min(92%, 1360px); min-height: 98px; padding: 10px 0; display: grid; grid-template-columns: 160px 1fr 48px; grid-template-areas: "brand navigation actions"; gap: 28px; }
.site-header .brand-name--logo, .site-header .brand-name--logo picture, .site-header .brand-name--logo img { width: 130px; height: auto; min-width: 0; }
.site-header .brand-name--logo { grid-area: brand; padding: 0; background: transparent; }
.site-header .brand-name--logo picture, .site-footer__brand picture { background: var(--atelier-plum); border-radius: 50%; }
.site-header .primary-navigation { grid-area: navigation; width: auto; padding: 0; margin: 0; background: transparent; border: 0; position: static; }
.site-header .primary-navigation ul { display: flex; justify-content: center; align-items: center; gap: clamp(18px, 3vw, 44px); padding: 0; margin: 0; }
.site-header .primary-navigation a { color: var(--atelier-plum); font-size: 1rem; font-weight: 400; letter-spacing: .015em; text-transform: none; display: flex; align-items: center; min-height: 44px; padding: 0; background: transparent; }
.site-header .primary-navigation a::after { display: none; }
.site-header .primary-navigation a[aria-current="page"], .site-header .primary-navigation a:hover { color: var(--berry-dark); text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 1px; }
.site-header .menu-button { display: none; }
.site-header .header-cart { width: 44px; min-width: 44px; height: 44px; border: 0; border-radius: 50%; color: var(--atelier-plum) !important; background: transparent; }
.site-header .header-cart:hover { background: #eddee5; }
.site-header .header-cart__count { border-color: var(--atelier-cream); top: -2px; right: -3px; }
.site-header :where(a, button):focus-visible { outline-color: var(--berry-dark); }
.elis-home-editorial { background: linear-gradient(180deg, #fbf1eb 0%, #fbf1eb 36%, #f1e6ee 57%, #f5e9e6 80%, #f3e6e2 100%); color: var(--atelier-plum); overflow: clip; }
.elis-home-editorial .frame { width: min(88%, 1200px); max-width: none; }
.elis-scenes { position: relative; isolation: isolate; height: clamp(480px, 47vw, 740px); touch-action: pan-y; background: #e6c6ca; }
.elis-scenes .elis-scene { display: block; position: absolute; inset: 0; opacity: 0; pointer-events: none; color: #503443; text-decoration: none; transition: opacity 850ms ease; }
.elis-scenes .elis-scene[data-active="true"] { opacity: 1; pointer-events: auto; z-index: 1; }
.elis-scene picture, .elis-scene img { display: block; width: 100%; height: 100%; }
.elis-scene img { object-fit: cover; object-position: center top; }
.elis-scene__words { position: absolute; left: max(7%, calc((100vw - 1200px) / 2)); top: 50%; transform: translateY(-50%); width: 43%; }
.elis-scene__words h2 { font-family: "Lora", Georgia, serif; font-size: clamp(3rem, 5.4vw, 5.9rem); font-weight: 500; line-height: 1.04; letter-spacing: -.045em; margin: 0; text-wrap: balance; }
.elis-scene__words p { font-size: clamp(1rem, 1.35vw, 1.25rem); margin: 24px 0 0; max-width: 23rem; }
.elis-scenes__pause:not(:focus-visible) { position: absolute; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; white-space: nowrap; padding: 0; border: 0; }
.elis-scenes__pause:focus-visible { position: absolute; z-index: 3; bottom: 20px; left: 24px; padding: 12px 20px; background: var(--atelier-cream); color: var(--atelier-plum); border-radius: 28px; }
.elis-keepsake { display: grid; grid-template-columns: .94fr 1fr; gap: clamp(40px, 8vw, 116px); align-items: center; padding-block: 75px 100px; }
.elis-keepsake__portrait { display: block; border-radius: 48% 48% 18px 18px; overflow: hidden; transform: rotate(-3deg); background: #e2c4cd; }
.elis-keepsake__portrait img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 68%; transition: transform 500ms ease; }
.elis-keepsake__portrait:hover img { transform: scale(1.025); }
.elis-keepsake__copy h2 { font: 500 clamp(2rem, 3.15vw, 3rem)/1.17 "Lora", Georgia, serif; margin: 0 0 24px; letter-spacing: -.04em; }
.elis-keepsake__copy h2 em { font-style: italic; font-weight: 500; color: #865569; }
.elis-keepsake__copy > p { font-size: 1.05rem; max-width: 29rem; margin: 0; }
.elis-keepsake__steps { list-style: none; display: grid; gap: 23px; padding: 0; margin: 30px 0; }
.elis-keepsake__steps li { display: grid; grid-template-columns: 28px 1fr; gap: 15px; }
.elis-keepsake__steps li > span { color: #85546a; font-size: .8rem; padding-top: 4px; }
.elis-keepsake__steps h3 { font: 600 1.02rem/1.4 "Source Sans 3", system-ui, sans-serif; margin: 0 0 3px; }
.elis-keepsake__steps p { font-size: .98rem; line-height: 1.5; margin: 0; max-width: 26rem; }
.elis-soft-action { display: inline-flex; align-items: center; justify-content: center; padding: 13px 29px; min-height: 48px; background: var(--atelier-plum); color: #fff8f1; text-decoration: none; border-radius: 40px; }
.elis-soft-action:hover { background: #713d57; }
.elis-keepsake__copy .elis-keepsake__terms { font-size: .84rem; line-height: 1.5; margin-top: 13px; color: #6d515e; }
.elis-world { display: grid; grid-template-columns: .82fr 1.1fr; gap: 10%; align-items: start; padding-block: 30px 70px; }
.elis-world > a { display: block; text-decoration: none; min-width: 0; }
.elis-world img { width: 100%; object-fit: cover; transition: border-radius 500ms ease; }
.elis-world__gift img { aspect-ratio: 4 / 4.6; object-position: center 68%; border-radius: 20px 20px 48% 48%; }
.elis-world__collection { padding-top: 110px; }
.elis-world__collection img { aspect-ratio: 1.13; object-position: 72% center; border-radius: 48% 48% 20px 20px; }
.elis-world h3 { font: 500 clamp(2rem, 3.5vw, 3.2rem)/1.15 "Lora", Georgia, serif; letter-spacing: -.035em; margin: 24px 0 8px; }
.elis-world p { margin: 0; font-size: 1.05rem; }
.elis-world a:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 7px; }
.elis-voices-editorial.elis-customer-voices { border: 0; padding-block: 65px 100px; background: transparent; }
.elis-voices-editorial .elis-customer-voices__list { display: grid; grid-template-columns: 1fr 1fr; gap: 12%; }
.elis-voices-editorial .elis-customer-voices__list figure { border: 0; background: transparent; padding: 0; margin: 0; }
.elis-voices-editorial blockquote { margin: 0; padding: 0; border: 0; }
.elis-voices-editorial blockquote p { font: 500 clamp(1.6rem, 2.3vw, 2.2rem)/1.35 "Lora", Georgia, serif; letter-spacing: -.02em; color: #654156; margin: 0; }
.elis-voices-editorial figcaption { margin-top: 15px; font-size: .85rem; color: #715769; }
.elis-voices-editorial figcaption a { min-height: 44px; display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 4px; }
.elis-cafe-note { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 8%; padding-block: 20px 100px; }
.elis-cafe-note figure { margin: 0; }
.elis-cafe-note img { width: 100%; height: auto; aspect-ratio: 1.25; object-fit: cover; border-radius: 22px 110px 22px 22px; }
.elis-cafe-note h2 { font: 500 clamp(1.9rem, 3vw, 2.9rem)/1.18 "Lora", Georgia, serif; letter-spacing: -.035em; margin: 0 0 22px; }
.elis-cafe-note p { margin: 0 0 20px; font-size: 1.02rem; }
.elis-cafe-note strong { font-weight: 600; }
.elis-cafe-note address { font-style: normal; font-size: .95rem; line-height: 1.6; }
.elis-cafe-note .elis-cafe-note__custom { font-size: .88rem; margin: 22px 0 0; color: #745561; max-width: 28rem; }
.site-footer { border: 0; background: #e4d1d8; color: var(--atelier-plum); padding-block: 36px 16px; }
.site-footer .frame { width: min(88%, 1200px); }
.site-footer h3 { color: var(--atelier-plum); font-weight: 600; font-size: .94rem; text-transform: none; letter-spacing: 0; }
.site-footer a, .site-footer .elis-cookie-settings { color: inherit; }
.site-footer__brand, .site-footer__brand picture, .site-footer__brand img { width: 145px; }
.site-footer__intro p { max-width: 16rem; font-size: 1rem; }
.elis-instagram-link { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; margin-left: -9px; }
.elis-instagram-link .elis-channel-icon { width: 26px; height: 26px; flex-basis: 26px; }
.elis-instagram-link:hover { background: #d8bfc9; }
.site-footer .elis-channel-link { text-decoration: none; }
.site-footer .elis-channel-link:hover { text-decoration: underline; }
.site-footer .site-footer__end { border-color: #bda0ae; color: #604351; font-size: .8rem; gap: 20px; }
.site-footer .site-footer__end > span:last-child { display: none; }
.site-footer .site-footer__legal { display: flex; flex-wrap: wrap; gap: 5px 18px; }
.site-footer .site-footer__legal a, .site-footer .elis-cookie-settings { min-height: 44px; display: inline-flex; align-items: center; }
.route-opening__media, .elis-detail-story > img { border-radius: 24px; overflow: hidden; }
.route-opening__media img { border-radius: inherit; }
.route-actions .action-primary, .elis-order-form button, .elis-order-form .action-primary { border-radius: 32px; }
.elis-order-guide .elis-guide-step, .elis-order-request, .elis-trust-faq { border-radius: 22px; }
@media (max-width: 900px) {
  .site-header .site-header__inner { min-height: 76px; width: calc(100% - 28px); padding: 4px 0; grid-template-columns: 44px 1fr 44px; grid-template-areas: "menu brand actions"; gap: 0 10px; }
  .site-header .brand-name--logo { justify-self: center; }
  .site-header .brand-name--logo, .site-header .brand-name--logo picture, .site-header .brand-name--logo img { width: 108px; }
  .site-header .menu-button { grid-area: menu; display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; border: 0; background: transparent; color: var(--atelier-plum); padding: 0; border-radius: 50%; }
  .site-header .menu-button svg path { transform-origin: 12px 12px; transition: transform 180ms ease; }
  .site-header .menu-button[aria-expanded="true"] .menu-line--top { transform: translateY(4px) rotate(45deg); transform-origin: 12px 8px; }
  .site-header .menu-button[aria-expanded="true"] .menu-line--bottom { transform: translateY(-4px) rotate(-45deg); transform-origin: 12px 16px; }
  .site-header .primary-navigation, html[data-text-scale="large"] .site-header .primary-navigation { display: none; position: absolute; top: 100%; left: 0; z-index: 3; max-height: calc(100dvh - 76px); overflow-y: auto; width: 100%; border: 0; box-shadow: 0 18px 25px #38273414; background: var(--atelier-cream); transform: none; opacity: 1; visibility: visible; padding: 14px 7% 28px; border-radius: 0 0 28px 28px; }
  .site-header .primary-navigation[data-open="true"], html[data-text-scale="large"] .site-header .primary-navigation[data-open="true"] { display: block; }
  .site-header .primary-navigation ul { display: grid; grid-template-columns: 1fr; gap: 2px; }
  .site-header .primary-navigation li { margin: 0; border: 0; }
  .site-header .primary-navigation a { min-height: 52px; padding: 8px 0; font-size: 1.25rem; }
  .elis-scene__words h2 { font-size: clamp(2.8rem, 6.5vw, 4rem); }
  .elis-keepsake { gap: 6%; padding-block: 50px 65px; }
  .elis-keepsake__copy h2 { font-size: 2.2rem; }
  .elis-keepsake__portrait img { aspect-ratio: 2 / 3; }
  .elis-world__collection { padding-top: 65px; }
  .elis-cafe-note { gap: 6%; padding-bottom: 65px; }
}
@media (max-width: 767px) {
  .elis-keepsake { grid-template-columns: 1fr; gap: 36px; padding-top: 38px; }
  .elis-keepsake__portrait { width: 78%; max-width: 420px; margin: 0 auto; }
  .elis-keepsake__portrait img { aspect-ratio: 4 / 5; }
  .elis-keepsake__copy { max-width: 540px; margin: 0 auto; }
  .elis-keepsake__copy h2 { font-size: clamp(2rem, 5vw, 2.7rem); }
  .elis-world { gap: 7%; padding-top: 5px; }
  .elis-voices-editorial.elis-customer-voices { padding-block: 40px 65px; }
  .elis-voices-editorial .elis-customer-voices__list { gap: 8%; }
  .elis-cafe-note { grid-template-columns: 1fr; gap: 30px; }
  .elis-cafe-note figure { width: 96%; }
  .elis-cafe-note img { aspect-ratio: 1.5; border-top-right-radius: 85px; }
  .elis-cafe-note > div { max-width: 500px; }
}
@media (max-width: 600px) {
  .elis-scenes { height: auto; aspect-ratio: 2 / 3; max-height: none; }
  .elis-scene img { object-position: center; }
  .elis-scene__words { top: 6%; left: 7%; width: 86%; transform: none; }
  .elis-scene__words h2 { font-size: clamp(2.1rem, 8.5vw, 3.15rem); line-height: 1.06; }
  .elis-scene__words p { font-size: .97rem; margin-top: 13px; }
  .elis-world { grid-template-columns: 1fr; gap: 48px; padding-bottom: 38px; }
  .elis-world__gift { width: 84%; }
  .elis-world__gift img { aspect-ratio: 4 / 4.2; }
  .elis-world__collection { width: 91%; justify-self: end; padding-top: 0; }
  .elis-world__collection img { aspect-ratio: 1.16; }
  .elis-world h3 { font-size: 2.25rem; margin-top: 20px; }
  .elis-voices-editorial .elis-customer-voices__list { grid-template-columns: 1fr; gap: 30px; }
  .elis-voices-editorial .elis-customer-voices__list figure { max-width: 30rem; }
  .elis-voices-editorial blockquote p { font-size: 1.65rem; }
  .elis-cafe-note { padding-bottom: 60px; }
  .site-footer { padding-top: 32px; }
  .site-footer .site-footer__legal { column-gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .elis-scenes .elis-scene, .elis-keepsake__portrait img, .elis-world img, .site-header .menu-button svg path { transition: none; }
}
html[data-text-scale="large"] .elis-scenes { min-height: 700px; }
html[data-text-scale="large"] .elis-scene__words { width: 80%; top: 6%; transform: none; padding: 12px; background: #fbf1ebee; border-radius: 12px; }
html[data-text-scale="large"] .elis-keepsake, html[data-text-scale="large"] .elis-cafe-note { grid-template-columns: 1fr; }

@media (max-width: 360px) {
}

.site-footer p, .site-footer .elis-channel-label { color: var(--atelier-plum); }

body.elis-page .elis-soft-action { color: #fff8f1; }
#app .elis-keepsake__steps h3 { font-family: "Source Sans 3", system-ui, sans-serif; }
#app .elis-voices-editorial blockquote p { font-family: "Lora", Georgia, serif; }
#app .site-header .menu-button { border-radius: 50% !important; }
#app .elis-scenes__pause:focus-visible { border-radius: 28px !important; }
@media (max-width: 900px) {
  html[data-text-scale="large"] .site-header .site-header__inner { grid-template-columns: 44px minmax(0, 1fr) 44px; grid-template-areas: "menu brand actions"; }
}

:root { --atelier-type: "Lora", Georgia, serif; --ink: #3e2939; --ink-soft: #6b5262; --berry: #70465e; --berry-dark: #513448; --line: #cbb6c1; }
body.elis-page { background: #fbf1eb; }
#app :where(h1, h2, h3, blockquote), #app .elis-scene__words h2, #app .elis-voices-editorial blockquote p { font-family: var(--atelier-type); font-weight: 500; letter-spacing: -.035em; }
#app :where(h1, h2, h3) { text-wrap: balance; }
#app :where(.elis-keepsake__steps h3, .elis-order-steps h3, .site-footer h3) { font-family: "Source Sans 3", system-ui, sans-serif; font-weight: 600; letter-spacing: 0; }
#app :where(.action-primary, .action-secondary, .primary-button, .secondary-button, .elis-button, .elis-catalog-entry__cart, .elis-catalog-entry__link) { border-radius: 28px !important; }
body.elis-page .action-primary, #app .elis-product-add { background: var(--atelier-plum) !important; border-color: var(--atelier-plum) !important; }
#app :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select) { border-radius: 12px !important; }
#app :where(input, textarea, select) { accent-color: var(--atelier-plum); }
#app :where(.elis-soft-action, .action-primary, .primary-button):focus-visible { outline-color: #126b82; outline-offset: 5px; }
.elis-eyebrow { font-size: .82rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; margin: 0 0 20px; }
.elis-menu-backdrop[hidden] { display: none !important; }
.elis-menu-backdrop { display: none; }
.elis-scene::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, #f8eee6e8 0%, #f8eee6bd 25%, #f8eee640 49%, transparent 64%); }
.elis-scene__words { z-index: 2; width: 39%; }
#app .elis-scene__words h2 { font-size: clamp(2.7rem, 4.5vw, 4.8rem); line-height: 1.12; font-weight: 600; }
.elis-scene__words p { font-weight: 500; }
body.elis-page .elis-scene--xv { color: #fff9f3; }
.elis-scene--xv::after { background: linear-gradient(90deg, #211b23cf 0%, #211b23a6 27%, #211b2320 52%, transparent 68%); }
.elis-voices-heading { max-width: 44rem; margin-bottom: 36px; }
#app .elis-voices-heading h2 { font-size: clamp(1.8rem, 2.8vw, 2.6rem); line-height: 1.25; margin: 0 0 12px; }
.elis-voices-heading p { margin: 0; color: var(--ink-soft); font-size: 1rem; }
#app .elis-voices-editorial blockquote p { font-size: clamp(1.35rem, 1.85vw, 1.8rem); line-height: 1.5; }
.site-footer .site-footer__grid { display: grid; grid-template-columns: 1.1fr .65fr .85fr 1.5fr; gap: 32px; padding: 0 0 24px; border: 0; }
.site-footer .site-footer__intro { grid-column: auto; }
.site-footer__brand, .site-footer__brand picture, .site-footer__brand img { width: 112px; }
.site-footer .site-footer__intro p { font-size: .9rem; margin: 12px 0 0; max-width: 17ch; }
.site-footer h3 { margin: 0 0 8px; line-height: 1.5; }
.site-footer ul { padding: 0; margin: 0; list-style: none; display: grid; gap: 0; }
.site-footer li a { min-height: 44px; display: inline-flex; align-items: center; font-size: .9rem; line-height: 1.4; padding: 4px 0; }
.site-footer .elis-footer-shopping { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; border: 0; }
.site-footer .elis-footer-shopping ul { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.site-footer .elis-channel-label { font-size: .88rem; gap: 8px; min-height: 36px; margin: 0; }
.site-footer .elis-channel-icon { width: 26px; height: 26px; flex-basis: 26px; }
.site-footer .site-footer__end { margin: 0; padding-top: 12px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 4px 24px; }
.site-footer .site-footer__legal { gap: 0 16px; }
.site-footer .elis-cookie-settings { padding: 0; font-size: inherit; }
.elis-journey { background: linear-gradient(180deg, #fbf1eb 20%, #f0e6ef 56%, #f8ede8 100%); overflow: clip; }
.elis-journey .frame, .elis-catalog-page .frame, .elis-product-page .frame { width: min(88%, 1200px); max-width: none; }
.elis-story-hero { position: relative; isolation: isolate; display: grid; align-items: center; min-height: clamp(540px, 49vw, 750px); background: #d5b1ba; }
.elis-story-hero > picture { position: absolute; inset: 0; z-index: -2; }
.elis-story-hero > picture img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.elis-story-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #fbefeadb 0%, #fbefeadb 27%, #fbefea50 46%, transparent 63%); }
.elis-story-hero__copy { width: 39%; margin-left: max(6%, calc((100vw - 1200px) / 2)); padding-block: 54px; }
#app .elis-story-hero h1 { font-size: clamp(2.5rem, 4.15vw, 4.4rem); line-height: 1.15; font-weight: 600; margin: 0 0 24px; max-width: none; }
.elis-story-hero__copy > p:not(.elis-eyebrow) { font-size: 1.12rem; line-height: 1.55; max-width: 29ch; margin: 0 0 24px; }
.elis-story-hero__copy .elis-hero-terms { font-size: .96rem !important; max-width: 34ch !important; }
.elis-story-hero--xv { color: #fff8f0; background: #6d5d53; }
.elis-story-hero--xv::before { background: linear-gradient(90deg, #211b23d9 0%, #211b239c 32%, #211b2320 53%, transparent 65%); }
body.elis-page .elis-story-hero--xv .elis-soft-action { color: #382b32; background: #f4e8e2; }
.elis-inspiration { display: grid; grid-template-columns: .85fr 1fr; gap: clamp(40px, 9vw, 130px); align-items: center; padding-block: 90px 55px; }
.elis-inspiration__photo img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 70%; border-radius: 46% 46% 24px 24px; }
.elis-inspiration--reverse .elis-inspiration__photo { order: 2; }
.elis-inspiration--reverse .elis-inspiration__photo img { border-radius: 24px 24px 46% 46%; }
#app .elis-inspiration h2, #app .elis-order-guide h2, #app .elis-order-request h2, #app .elis-buying-help h2 { font-size: clamp(1.9rem, 2.9vw, 2.8rem); line-height: 1.25; max-width: none; margin: 0 0 24px; }
.elis-inspiration__copy > p { max-width: 46ch; margin-bottom: 20px; }
.elis-inspiration__note { font-size: .94rem; color: var(--ink-soft); }
.elis-order-guide { display: grid; grid-template-columns: .65fr 1.35fr; column-gap: 7%; border: 0; padding-block: 65px; }
.elis-order-guide .home-section-heading { display: block; margin: 0; }
.elis-order-steps { grid-template-columns: 1fr 1fr; gap: 32px 36px; margin: 0; }
.elis-order-steps li { display: grid; grid-template-columns: 30px 1fr; align-content: start; gap: 12px; border: 0; padding: 0; }
.elis-order-steps li > span { font: 500 .85rem/1.7 "Source Sans 3", sans-serif; color: #875b70; padding-top: 1px; }
#app .elis-order-steps h3 { font-size: 1.05rem; line-height: 1.4; margin: 0 0 9px; }
.elis-order-steps p { font-size: .98rem; line-height: 1.6; }
.elis-guide-note { grid-column: 2; margin: 28px 0 0; font-size: .9rem; color: var(--ink-soft); }
.elis-order-request { border: 0; border-radius: 0; grid-template-columns: .8fr 1.2fr; gap: 9%; padding-block: 65px; }
.elis-order-request > div > p:not(.elis-eyebrow) { max-width: 39ch; margin-bottom: 20px; font-size: 1rem; }
.elis-order-form { gap: 20px; }
#app .elis-order-form input, #app .elis-order-form textarea, #app .gift-field select { background: #fffaf6; border: 1px solid #a88f9e; padding: 12px 14px; color: var(--ink); }
.elis-order-field small { font-size: .82rem; line-height: 1.45; }
.elis-order-field label { font-size: .94rem; }
.elis-order-form .action-primary { min-height: 48px; }
.elis-order-review { border: 0; padding: 24px; background: #eee0e9; border-radius: 24px; }
.elis-buying-help { border: 0; padding-block: 30px 80px; gap: 9%; }
.elis-buying-questions details { border-color: #d2bac7; padding: 0; }
.elis-buying-questions summary { min-height: 56px; padding: 16px 8px 16px 0; font-size: 1rem; }
.elis-buying-questions details p { margin: 0 0 16px; }
.elis-buying-questions details a { display: inline-flex; min-height: 44px; align-items: center; margin-bottom: 12px; }
.elis-gift-opening { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; align-items: center; padding-block: 45px 65px; }
#app .elis-gift-opening h1 { font-size: clamp(2.6rem, 4.5vw, 4.5rem); line-height: 1.18; max-width: none; margin: 0 0 24px; }
.elis-gift-opening p:not(.elis-eyebrow) { font-size: 1.15rem; max-width: 32ch; margin-bottom: 28px; }
.elis-gift-opening > img { width: 100%; aspect-ratio: 4 / 4.7; object-fit: cover; object-position: center 70%; border-radius: 46% 46% 22px 22px; }
.elis-journey .gift-finder { border: 0; padding-block: 40px 65px; }
#app .gift-finder h2 { font-size: clamp(1.8rem, 2.5vw, 2.5rem); line-height: 1.3; margin-bottom: 28px; }
.elis-journey .gift-finder__form { border: 0; background: transparent; padding: 0; gap: 20px; }
#app .gift-finder__submit { border-radius: 28px !important; align-self: end; min-height: 48px; background: var(--atelier-plum); color: #fff8f2; }
.elis-gift-paths { display: grid; grid-template-columns: 1.1fr .85fr; align-items: start; gap: 10%; padding-block: 25px 60px; }
.elis-gift-paths > a { display: block; text-decoration: none; }
.elis-gift-paths > a:nth-child(2) { padding-top: 70px; }
.elis-gift-paths img { width: 100%; height: auto; aspect-ratio: 1.12; object-fit: cover; object-position: 70% center; border-radius: 24px 24px 45% 24px; }
.elis-gift-paths > a:nth-child(2) img { aspect-ratio: 4 / 5; object-position: center 65%; border-radius: 45% 45% 24px 24px; }
#app .elis-gift-paths h2 { font-size: clamp(1.8rem, 2.7vw, 2.7rem); line-height: 1.25; margin: 24px 0 14px; }
.elis-gift-paths p { max-width: 38ch; margin-bottom: 14px; }
.elis-gift-help { padding: 0 0 60px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 24px; }
.elis-gift-help p { margin: 0; }
.elis-catalog-page main, .elis-search-page main, .elis-product-page main, .elis-contact-route main { background: linear-gradient(145deg, #fbf1eb, #f5e9ef 65%, #f1ece8); }
#app .catalog-header { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 9%; padding-block: 48px 32px; border: 0; }
#app .catalog-header h1 { font-size: clamp(2.2rem, 4vw, 3.8rem); line-height: 1.2; max-width: 16ch; }
.catalog-header__photo { display: block; width: 100%; aspect-ratio: 1.65; object-fit: cover; object-position: 72% center; border-radius: 110px 24px 100px 24px; }
.catalog-header__eyebrow { margin-bottom: 14px; font-size: .8rem; }
.catalog-header__description { max-width: 42ch; margin-top: 18px; }
#app .elis-collection-search > div, #app .elis-search-refine > div { gap: 8px; }
#app .elis-collection-search button, #app .elis-search-refine button { border-radius: 24px !important; }
.elis-live-catalog { padding-block: 32px 65px; border: 0; }
#app .elis-catalog-index { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px 28px; border: 0; }
#app .elis-catalog-entry { display: flex; flex-direction: column; padding: 0; border: 0; gap: 0; background: transparent; min-width: 0; }
#app .elis-catalog-entry__media { width: 100%; min-width: 0; background: #f4e4e5; border: 0; border-radius: 100px 100px 18px 18px; overflow: hidden; }
#app .elis-catalog-entry__media a { display: block; width: 100%; }
#app .elis-catalog-entry__media img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; }
#app .elis-catalog-entry__copy { padding: 18px 0 10px; }
#app .elis-catalog-entry h2 { font-size: 1.45rem; line-height: 1.3; margin: 0; }
#app .elis-catalog-entry__commerce { padding: 0; display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; margin-top: auto; }
#app .elis-catalog-entry__price { width: 100%; text-align: left; font-size: 1.1rem; }
#app .elis-catalog-entry__link { min-height: 44px; text-decoration: underline; text-underline-offset: 4px; font-size: .94rem; }
#app .elis-catalog-entry__cart { font-size: .9rem; padding: 9px 17px; min-height: 44px; background: var(--atelier-plum); color: #fff8f3; }
body.elis-product-page #app .piece-opening { width: min(88%, 1200px); margin-inline: auto; border: 0; padding-block: 24px 65px; gap: 0 6%; }
body.elis-product-page #app .piece-summary, body.elis-product-page #app .piece-purchase, body.elis-product-page #app .piece-gallery { border: 0; background: transparent; }
body.elis-product-page #app .piece-summary h1 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.22; }
#app .elis-product-gallery__stage { background: #f4e4e5; border-radius: 130px 130px 24px 24px; }
#app .elis-product-gallery__zoom { border-radius: 0 !important; }
#app .elis-product-gallery__zoom img { mix-blend-mode: multiply; }
#app .elis-product-gallery__thumb { border-radius: 14px !important; overflow: hidden; }
#app .elis-product-gallery__zoom-label { border-radius: 24px !important; }
body.elis-product-page #app .piece-purchase { padding-top: 24px; }
body.elis-product-page #app .piece-facts { border: 0; }
body.elis-product-page #app .piece-facts > div { border-color: #dcc9d4; }
.elis-product-reviews { border: 0; padding-block: 50px; }
#app .elis-product-reviews > h2 { font-size: 2rem; line-height: 1.3; }
#app .elis-contact-page { width: min(88%, 1100px); margin: auto; padding-block: 60px 80px; display: grid; grid-template-columns: .85fr 1.15fr; gap: 9%; align-items: start; }
#app .elis-contact-page h1 { font-size: clamp(2.2rem, 3.5vw, 3.5rem); line-height: 1.2; max-width: 15ch; }
#app .elis-contact-page__form { border: 0; padding: 0; margin: 0; max-width: none; }
.elis-contact-photo { width: 100%; aspect-ratio: 1.35; object-fit: cover; object-position: 72% center; border-radius: 20px 80px 20px 80px; margin-top: 35px; }
#app .elis-contact-page__form :where(input, textarea, select) { background: #fffaf6 !important; }
#app .elis-cms-page { width: min(88%, 900px); padding-block: 35px 75px; }
#app .elis-cms-page h1 { font-size: clamp(2.1rem, 4vw, 3.8rem); line-height: 1.2; padding-bottom: 24px; border: 0; max-width: 22ch; }
#app .elis-cms-page__content { border: 0; max-width: 72ch; }
#app .elis-cms-page__content h2 { font-size: 1.65rem; line-height: 1.35; margin-top: 36px; }
#app .elis-cms-page__content :where(section, article) { border: 0; }
#app .elis-cms-page__content p, #app .elis-cms-page__content li { line-height: 1.8; }
body.elis-checkout-page, body.elis-page--shop-checkout-cart-index { background: #f8eee9; }
#app .elis-checkout-header { background: var(--atelier-plum); border: 0; }
#app .elis-checkout-intro h1 { font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1.25; }
#app .elis-checkout-progress { border: 0; gap: 12px 28px; }
#app .elis-cart-summary { background: #eee1e9; padding: 26px; border-radius: 26px; }
body.elis-checkout-page #app :where(input, textarea, select) { background: #fffaf6; }
@media (max-width: 1100px) {
  .site-footer .site-footer__grid { grid-template-columns: 1fr .8fr 1fr; gap: 24px; }
  .site-footer .elis-footer-shopping { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
  .elis-order-guide { grid-template-columns: 1fr; gap: 24px; }
  .elis-guide-note { grid-column: 1; margin-top: 0; }
  .elis-order-guide .home-section-heading { display: flex; gap: 40px; align-items: center; }
}
@media (max-width: 900px) {
  html.elis-menu-open { overflow: hidden; }
  .site-header .site-header__inner { position: static; }
  .site-header .menu-button, .site-header .brand-name--logo, .site-header .site-header__actions { position: relative; z-index: 4; }
  .elis-menu-backdrop:not([hidden]) { display: block; position: fixed; inset: 76px 0 0; width: 100%; height: calc(100dvh - 76px); border: 0; background: #33253370; backdrop-filter: blur(3px); z-index: 2; }
  #app .elis-menu-backdrop { border-radius: 0 !important; }
  .elis-story-hero__copy { width: 43%; }
  #app .elis-story-hero h1 { font-size: clamp(2.2rem, 4.7vw, 3rem); }
}
@media (max-width: 767px) {
  .elis-inspiration { grid-template-columns: 1fr; gap: 32px; padding-block: 50px 25px; }
  .elis-inspiration__photo { width: 75%; max-width: 400px; margin-inline: auto; }
  .elis-inspiration--reverse .elis-inspiration__photo { order: 0; }
  .elis-inspiration__copy { max-width: 560px; margin-inline: auto; }
  .elis-order-guide { padding-block: 45px; }
  .elis-order-steps { gap: 28px; }
  .elis-order-steps li { grid-template-columns: 24px 1fr; gap: 10px; }
  .elis-order-steps p { grid-column: auto; }
  .elis-order-request { grid-template-columns: 1fr; gap: 24px; padding-block: 35px 50px; }
  .elis-order-request > div > p:not(.elis-eyebrow) { max-width: none; }
  .elis-order-form { grid-template-columns: 1fr 1fr; gap: 18px 14px; }
  .elis-buying-help { grid-template-columns: 1fr; gap: 22px; padding-block: 10px 55px; }
  .elis-gift-opening { grid-template-columns: 1fr; gap: 28px; padding-block: 36px; }
  .elis-gift-opening > img { width: 82%; max-width: 420px; justify-self: end; aspect-ratio: 4 / 4.2; }
  .elis-gift-opening p:not(.elis-eyebrow) { max-width: none; }
  .elis-gift-paths { gap: 6%; }
  .elis-gift-paths > a:nth-child(2) { padding-top: 45px; }
  #app .catalog-header { grid-template-columns: 1fr; gap: 24px; padding-block: 30px 20px; }
  .catalog-header__photo { max-height: 220px; border-radius: 80px 20px 80px 20px; }
  #app .elis-catalog-index { gap: 30px 16px; }
  #app .elis-catalog-entry__media { border-radius: 60px 60px 14px 14px; }
  #app .elis-catalog-entry h2 { font-size: 1.17rem; }
  #app .elis-catalog-entry__commerce { gap: 4px; }
  #app .elis-catalog-entry__cart { padding-inline: 12px; width: 100%; }
  body.elis-product-page #app .piece-opening { width: 88%; }
  #app .elis-product-gallery__stage { border-radius: 75px 75px 18px 18px; }
  #app .elis-contact-page { grid-template-columns: 1fr; gap: 35px; padding-block: 35px 55px; }
  .elis-contact-photo { display: none; }
  .site-footer .site-footer__grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .site-footer .site-footer__intro { grid-column: 1 / -1; display: grid; grid-template-columns: 100px 1fr 44px; align-items: center; gap: 16px; }
  .site-footer__brand, .site-footer__brand picture, .site-footer__brand img { width: 100px; }
  .site-footer .site-footer__intro p { margin: 0; max-width: 22ch; font-size: .87rem; }
  .site-footer .elis-instagram-link { margin: 0; }
  .site-footer .elis-footer-shopping { flex-direction: column; align-items: start; gap: 8px; }
  .site-footer .elis-footer-shopping > div { width: 100%; }
  .site-footer .elis-footer-shopping > div:last-child { display: flex; gap: 6px 18px; flex-wrap: wrap; }
  .site-footer .site-footer__end { display: block; }
  .site-footer .site-footer__legal { margin-top: 8px; gap: 0 18px; }
}
@media (max-width: 600px) {
  .elis-scenes { aspect-ratio: auto; height: 165vw; min-height: 530px; max-height: 780px; }
  .elis-scene__words { top: 22px; left: 7%; width: 86%; }
  #app .elis-scene__words h2 { font-size: clamp(1.9rem, 8.2vw, 2.9rem); line-height: 1.12; }
  .elis-scene__words p { margin-top: 9px; font-size: .94rem; }
  .elis-scene::after { background: linear-gradient(180deg, #f8eee6eb 0%, #f8eee6b0 16%, transparent 40%); }
  .elis-scene--xv::after { background: linear-gradient(180deg, #211b23de 0%, #211b2399 17%, transparent 36%); }
  .elis-story-hero { display: flex; flex-direction: column; align-items: stretch; min-height: 0; }
  .elis-story-hero > picture { position: relative; z-index: 0; order: 2; margin-top: -20px; }
  .elis-story-hero > picture img { height: auto; aspect-ratio: 2 / 3; object-position: center bottom; }
  .elis-story-hero__copy { width: auto; margin: 0; padding: 28px 6% 0; position: relative; z-index: 2; background: #f4e5e1; }
  .elis-story-hero__copy::after { content: ""; position: absolute; height: 110px; top: 100%; inset-inline: 0; background: linear-gradient(#f4e5e1, transparent); pointer-events: none; z-index: -1; }
  .elis-story-hero--xv .elis-story-hero__copy { background: #544b46; }
  .elis-story-hero--xv .elis-story-hero__copy::after { background: linear-gradient(#544b46, transparent); }
  .elis-story-hero::before { display: none; }
  .elis-story-hero .elis-eyebrow { margin-bottom: 14px; }
  #app .elis-story-hero h1 { font-size: clamp(2rem, 8.8vw, 3rem); line-height: 1.15; margin-bottom: 14px; }
  .elis-story-hero__copy > p:not(.elis-eyebrow) { font-size: 1rem; max-width: 35ch; margin-bottom: 14px; }
  .elis-story-hero__copy .elis-hero-terms { font-size: .88rem !important; }
  .elis-story-hero .elis-soft-action { min-height: 44px; padding: 10px 23px; }
  .elis-order-guide .home-section-heading { display: block; }
  .elis-order-steps { grid-template-columns: 1fr; gap: 23px; }
  .elis-gift-paths { grid-template-columns: 1fr; gap: 40px; }
  .elis-gift-paths > a:nth-child(2) { padding-top: 0; width: 88%; justify-self: end; }
  .elis-gift-paths > a:nth-child(2) img { aspect-ratio: 1; }
  .elis-order-form { grid-template-columns: 1fr; }
  #app .elis-contact-page h1 { max-width: none; }
}
@media (max-width: 360px) {
  .site-footer .site-footer__intro { grid-template-columns: 90px 1fr; gap: 12px; }
  .site-footer .elis-instagram-link { grid-column: 2; margin-top: -8px; }
  .site-footer__brand, .site-footer__brand picture, .site-footer__brand img { width: 90px; }
  #app .elis-catalog-index { gap: 30px 12px; }
  #app .elis-catalog-entry__cart { font-size: .85rem; padding-inline: 8px; }
}
html[data-text-scale="large"] .elis-scene__words { width: 86%; top: 20px; color: #392936; background: #fbf1ebf5; }
html[data-text-scale="large"] .elis-scenes { min-height: 850px; }
html[data-text-scale="large"] .elis-story-hero__copy { width: 88%; }
@media (prefers-reduced-motion: reduce) {
  .elis-menu-backdrop { backdrop-filter: none; }
}
#app .elis-scene--xv h2, #app .elis-story-hero--xv :where(h1, p) { color: #fff8f0; }
html[data-text-scale="large"] #app .elis-scene--xv h2 { color: #392936; }
#app .elis-journey .gift-finder { background: transparent; padding-inline: 0; }
#app .gift-finder h2 { max-width: none; }
html[data-text-scale="large"] .elis-story-hero { display: flex; flex-direction: column; min-height: 0; }
html[data-text-scale="large"] .elis-story-hero > picture { position: relative; order: 2; z-index: 0; margin: 0; }
html[data-text-scale="large"] .elis-story-hero > picture img { height: auto; aspect-ratio: auto; }
html[data-text-scale="large"] .elis-story-hero__copy { width: auto; margin: 0; padding: 32px 6%; background: #f4e5e1; }
html[data-text-scale="large"] .elis-story-hero--xv .elis-story-hero__copy { background: #544b46; }
html[data-text-scale="large"] .elis-story-hero::before, html[data-text-scale="large"] .elis-story-hero__copy::after { display: none; }
html[data-text-scale="large"] .elis-order-form { grid-template-columns: 1fr; }
html[data-text-scale="large"] .site-footer .site-footer__grid { grid-template-columns: 1fr 1fr; }
html[data-text-scale="large"] .site-footer .site-footer__intro, html[data-text-scale="large"] .site-footer .elis-footer-shopping { grid-column: 1 / -1; }
