:root { color-scheme: dark; --bg:#110c0e; --text:#fff1de; --muted:#d2beb4; --gold:#edc786; --line:#77544b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--text); font:1rem/1.65 system-ui,sans-serif; }
.wrap { max-width:1320px; width:calc(100% - 100px); margin-inline:auto; }
a { color:inherit; text-underline-offset:.25em; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.skip { position:fixed; left:1rem; top:1rem; background:var(--bg); padding:.5rem; z-index:4; transform:translateY(-200%); }
.skip:focus { transform:none; }
.top, footer { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.45rem 0; }
.top { border-bottom:1px solid #54343a; }
.brand { font:1.5rem Georgia,serif; letter-spacing:.13em; text-decoration:none; color:var(--gold); }
.brand span { display:block; font: .55rem system-ui,sans-serif; letter-spacing:.22em; }
nav { display:flex; align-items:center; gap:clamp(.8rem,3vw,2.5rem); font-size:.88rem; }
nav a { text-decoration:none; }
nav a:hover { text-decoration:underline; }
.nav-shop { color:var(--gold); border:1px solid var(--line); padding:.45rem .85rem; white-space:nowrap; }
main { background:radial-gradient(ellipse at 83% 15%,#431424 0,transparent 38%); }
.hero { display:grid; grid-template-columns: .9fr 1.1fr; align-items:center; gap:clamp(24px,5vw,85px); padding-block:clamp(65px,10vw,148px); }
.eyebrow { text-transform:uppercase; letter-spacing:.24em; font-size:.73rem; font-weight:650; color:var(--gold); margin:0 0 1.2rem; }
h1,h2 { font-family:Georgia,serif; font-weight:400; line-height:1.05; margin:0; }
h1 { font-size:clamp(3.2rem,6.2vw,6.25rem); letter-spacing:-.05em; }
h1 em { color:var(--gold); }
h2 { font-size:clamp(2.4rem,4.6vw,4.35rem); letter-spacing:-.035em; }
.intro,.contact p,.story-inner > p:last-child { color:var(--muted); max-width:44ch; }
.intro { margin:1.6rem 0 1.8rem; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:1rem; background:linear-gradient(110deg,#e5b970,#f5d8a3,#dbac67); border:1px solid #f4d293; color:#211310; font:700 .9rem/1.35 system-ui,sans-serif; padding:.9rem 1.2rem; text-decoration:none; cursor:pointer; }
.button:hover { background:#ffe0a9; }
.fine { font-size:.78rem; color:var(--muted); }
.art { margin:0; padding:10px; border:1px solid var(--line); background:#251317; box-shadow:0 16px 65px #08050799; }
.art img { display:block; width:100%; height:auto; }
.story { border-block:1px solid #643544; background:radial-gradient(ellipse at top,#491a28,#260f19 77%); padding:clamp(58px,8vw,108px) 0; text-align:center; }
.story-inner > p:last-child { margin:1.35rem auto 0; max-width:55ch; }
.contact { display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,8vw,120px); padding-block:clamp(58px,8vw,108px); }
.contact .eyebrow,.email { color:var(--gold); }
.email { overflow-wrap:anywhere; }
form { padding:clamp(18px,3vw,36px); border:1px solid #643544; background:#201116; }
label { display:block; margin-bottom:.25rem; font-size:.9rem; }
input,select,textarea { width:100%; font:inherit; color:var(--text); background:#110c0e; border:1px solid var(--line); border-radius:0; padding:.5rem .65rem; margin:0 0 .9rem; }
textarea { resize:vertical; }
footer { border-top:1px solid #54343a; font-size:.84rem; color:var(--muted); }
@media(max-width:740px) {
  .wrap { width:calc(100% - 34px); }
  .hero,.contact { grid-template-columns:1fr; }
  .hero { padding-top:48px; }
  .art { padding:6px; }
  .brand { font-size:1.22rem; }
  nav { font-size:.78rem; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
.story-inner > p:not(.eyebrow) { color:var(--muted); margin:1.35rem auto 0; max-width:59ch; }
.featured { padding-block:clamp(58px,8vw,108px); border-bottom:1px solid #54343a; }
.feature-lead { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(24px,7vw,100px); }
.feature-lead p,.design-grid p { color:var(--muted); }
.feature-lead p { max-width:48ch; margin-top:1.4rem; }
.design-image { display:block; padding:clamp(10px,2vw,24px); border:1px solid var(--line); background:radial-gradient(ellipse at top,#44202d,#1e1117 76%); }
.design-image:hover { border-color:var(--gold); }
.design-image img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.design-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,3vw,38px); margin:clamp(32px,5vw,65px) 0 30px; }
.design-grid h3 { margin:.9rem 0 0; font:normal 1.7rem Georgia,serif; }
.design-grid p { margin:.25rem 0 0; }
@media(max-width:740px) {
  .feature-lead { grid-template-columns:1fr; }
  .design-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  nav { flex-wrap:wrap; justify-content:flex-end; gap:.35rem .7rem; }
}
@media(max-width:420px) { .design-grid { grid-template-columns:1fr; } }
.music { margin-top:1.2rem; }
.music-button { color:var(--gold); font:inherit; font-size:.88rem; cursor:pointer; border:1px solid var(--line); background:#241317; padding:.4rem .8rem; }
.music-button:hover { border-color:var(--gold); }
.music-details { margin-top:.6rem; }
.music-details p { color:var(--muted); margin:0 0 .35rem; font-size:.85rem; }
.book { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1fr); align-items:center; gap:clamp(24px,7vw,100px); padding-block:clamp(58px,8vw,108px); border-bottom:1px solid #54343a; }
.book-cover { display:block; width:min(100%,380px); height:auto; margin:auto; border:1px solid var(--line); box-shadow:0 16px 50px #08050799; }
.book p:not(.eyebrow), .book-details { color:var(--muted); }
.book p.book-subtitle { color:var(--gold); font:1.3rem/1.35 Georgia,serif; margin:.7rem 0; }
.book-details { margin-top:1rem; }
.book-details summary { color:var(--gold); cursor:pointer; }
.book-details li { margin:.35rem 0; }
@media(max-width:740px) {
  .book { grid-template-columns:1fr; }
  .book-cover { width:min(100%,260px); }
}
.look-intro { max-width:66ch; margin-top:1.5rem; color:var(--muted); }
.look-intro h3,.look-group h3 { font:normal clamp(1.5rem,3vw,2.1rem) Georgia,serif; color:var(--text); margin:0; }
.look-nav { justify-content:flex-start; flex-wrap:wrap; gap:.6rem; margin:1.8rem 0; }
.look-nav a { color:var(--gold); border:1px solid var(--line); padding:.35rem .7rem; }
.look-group { margin:2.6rem 0; scroll-margin-top:1rem; }
.look-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(10px,2vw,24px); margin-top:1rem; }
.look-card { margin:0; background:#211219; border:1px solid #54343a; }
.look-card img { display:block; width:100%; height:auto; }
.look-card figcaption { padding:.75rem; line-height:1.4; }
.look-card figcaption span { display:block; margin-top:.3rem; color:var(--muted); font-size:.8rem; }
@media(max-width:900px) { .look-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:640px) { .look-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.site-menu { max-width:100%; }
.site-menu summary { display:none; }
.site-menu nav { flex-wrap:wrap; justify-content:flex-end; gap:.5rem clamp(.65rem,1.55vw,1.5rem); }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.85rem 1.2rem; }
.hero-actions > a:not(.button), .boutique a:not(.button), .story a { color:var(--gold); }
.boutique { padding-block:clamp(52px,7vw,95px); border-bottom:1px solid #54343a; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1.55rem; }
.collection-grid.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
.collection-card { padding:clamp(1rem,2.6vw,2rem); background:linear-gradient(155deg,#321820,#1a1014); border:1px solid #684347; }
.collection-card h3,.boutique h3 { font:normal clamp(1.4rem,2.6vw,2.1rem) Georgia,serif; margin:0; }
.collection-card p,.design-editorial p,.boutique details p { color:var(--muted); }
.collection-card img { display:block; width:100%; height:clamp(150px,26vw,300px); object-fit:contain; margin-bottom:1rem; }
.boutique h3.boutique-subhead { margin-top:2.7rem; }
.design-editorial { display:grid; grid-template-columns:1.25fr .75fr; align-items:center; gap:clamp(1.2rem,6vw,5rem); margin-top:1.6rem; }
.design-editorial img { width:100%; max-width:330px; height:auto; justify-self:center; border:1px solid var(--line); }
.site-footer { flex-wrap:wrap; overflow-wrap:anywhere; }
.site-footer img { width:112px; height:auto; }
@media(max-width:760px) {
  .top { align-items:flex-start; }
  .site-menu summary { display:list-item; color:var(--gold); cursor:pointer; text-align:right; list-style-position:inside; }
  .site-menu nav { padding-top:.6rem; }
  .collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .design-editorial { grid-template-columns:1fr; }
}
@media(max-width:480px) { .collection-grid,.collection-grid.products { grid-template-columns:1fr; } }

/* The logo's polished black, gold foil, and burgundy lacquer. */
:root { --bg:#070609; --text:#fff4e3; --muted:#ddc9c9; --gold:#f4cd78; --line:#9a6840; }
body { background:linear-gradient(115deg,#050506,#121016 45%,#070609 72%); }
main { background:radial-gradient(ellipse at 78% 0%,#650d2d 0%,#2d0918 16%,transparent 39%); }
.top, .featured, .boutique, .book, footer { border-image:linear-gradient(90deg,#351423,#b47e40 34%,#f4cf83 50%,#743244 74%,#351423) 1; }
.hero .art { padding:4px; border:1px solid #986c40; background:linear-gradient(145deg,#1a1017 10%,#ffda8f 35%,#653f27 47%,#180d13 68%,#9b304e 94%); box-shadow:0 20px 70px #000b,0 0 42px #950b3938; }
h1 em {
  color:var(--gold);
  background:linear-gradient(174deg,#fff3bd 10%,#f7d678 39%,#b77826 54%,#f7cc68 67%,#ffe6a8 86%);
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.button {
  background:linear-gradient(166deg,#fff0bb 0%,#e7bb59 39%,#ad731f 52%,#e6b54f 67%,#fff0b1 100%);
  border-color:#f2cf7b;
  box-shadow:inset 0 1px #fff4cd,0 5px 20px #b86e2829;
  color:#190e07;
}
.button:hover { background:linear-gradient(166deg,#fff8da,#efbd60 55%,#ffe69e); }
.story { background:radial-gradient(ellipse at 70% 0%,#791536 0%,transparent 62%),linear-gradient(165deg,#3f0b22,#180913 76%); border-color:#9a4e5f; }
.collection-card,.look-card,form {
  background:linear-gradient(148deg,#5b122b 0%,#2e0a1c 30%,#130c13 68%,#24101b 100%);
  border-color:#925f45;
  box-shadow:inset 0 1px #ffc18a33,0 9px 26px #0005;
}
.music-button,.look-nav a { background:linear-gradient(165deg,#58132d,#210b17 78%); border-color:#a36c47; }

.season-spotlight,.season-detail {
  --season-accent:#a75c46;
  border:1px solid var(--season-accent);
  background:radial-gradient(ellipse at 90% 0%,#701431 0%,transparent 60%),linear-gradient(145deg,#1e0d17,#08070a 70%);
  box-shadow:inset 0 1px #ffdb9a55,0 14px 45px #0007;
  padding:clamp(1.25rem,5vw,3.5rem);
}
.season-spotlight { margin-block:0 clamp(1rem,3vw,2.5rem); }
.season-spotlight p:not(.eyebrow),.season-empty { color:var(--muted); }
.season-spotlight img,.season-cover { display:block; width:min(100%,520px); max-height:400px; object-fit:contain; margin-top:1rem; }
.season-spotlight button:not([hidden]) { margin-top:1rem; }
.season-subtitle { font:italic clamp(1.25rem,3vw,1.8rem) Georgia,serif; color:var(--gold); }
.season-group { margin-top:2rem; }
.season-group + .season-group { border-top:1px solid #75463f; padding-top:1.5rem; }
.season-empty { grid-column:1/-1; margin:0; }
.season-card { border-top:3px solid var(--season-accent,var(--gold)); }
.season-badge { display:inline-block; border:1px solid var(--gold); color:var(--gold) !important; padding:.25rem .55rem; font-size:.8rem; }
.season-detail h1 { font-size:clamp(2.4rem,6vw,4.7rem); }

.gold-feature { min-width:0; }
.gold-letter { position:relative; }
.gold-effects { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:hidden; }
.gold-reflection,.gold-sparkle { opacity:0; animation-duration:7.2s; animation-iteration-count:infinite; animation-play-state:paused; }
.gold-reflection { animation-name:liora-reflection; animation-timing-function:linear; }
.gold-sparkle { animation-timing-function:ease-in-out; }
.gold-sparkle-left { animation-name:liora-sparkle-left; }
.gold-sparkle-main { animation-name:liora-sparkle-main; }
.gold-sparkle-low { animation-name:liora-sparkle-low; }
.gold-feature.is-visible .gold-reflection,.gold-feature.is-visible .gold-sparkle { animation-play-state:running; }
.gold-chime-button { display:block; margin:.55rem 0 0 auto; font-size:.76rem; }
.gold-chime-button[hidden] { display:none; }
.gold-chime-button::after { content:' · Off'; }
.gold-chime-button[aria-pressed="true"]::after { content:' · On'; color:#fff1c3; }
@keyframes liora-reflection {
  0%,100% { opacity:0; transform:translateX(0); }
  10% { opacity:0; transform:translateX(0); }
  24% { opacity:.72; }
  51% { opacity:1; transform:translateX(186px); }
  68% { opacity:.65; }
  79%,99% { opacity:0; transform:translateX(270px); }
}
@keyframes liora-sparkle-left { 0%,18%,38%,100% { opacity:0; } 27% { opacity:.62; } }
@keyframes liora-sparkle-main { 0%,43%,64%,100% { opacity:0; } 52% { opacity:.95; } }
@keyframes liora-sparkle-low { 0%,64%,84%,100% { opacity:0; } 73% { opacity:.56; } }
@media(prefers-reduced-motion:reduce) {
  .gold-effects,.gold-chime-button { display:none; }
  .gold-reflection,.gold-sparkle { animation:none; }
}

.newsletter-form { display:block; width:100%; border:0; border-radius:.5rem; background:#fff; }

.policy-page { max-width:840px; }
.policy-page h1 { font-size:clamp(2.45rem,7vw,4.5rem); }
.policy-page h2 { margin-top:1.9rem; font-size:clamp(1.4rem,3vw,2.15rem); }

/* Liora shop: direct product browsing, with the established brand preserved. */
.shop-heading{display:flex;align-items:center;justify-content:space-between;gap:2rem}.shop-heading>div{max-width:640px}.shop-heading>.button{flex-shrink:0}.shop-intro{color:var(--muted);font-size:1.1rem;max-width:54ch}.shop-links{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin:2rem 0;padding:1rem 0;border-block:1px solid var(--line)}.shop-note{background:#201b1d;border-left:3px solid var(--gold);padding:1.25rem 1.5rem}.shop-note p{color:var(--muted);margin:.35rem 0 0;max-width:85ch}.shop-products .collection-card{display:flex;flex-direction:column;background:#211b1e}.shop-products .shop-image{background:#120e10;display:block;padding:1rem;margin-bottom:1.5rem}.shop-products img{height:clamp(230px,30vw,390px);margin:0}.shop-products .eyebrow{margin-bottom:.7rem}.shop-products .button{align-self:flex-start;margin-top:auto}.shop-personalization{max-width:85ch;margin-top:1.5rem}@media(max-width:740px){.shop-heading{align-items:flex-start;flex-direction:column}.shop-links{font-size:.9rem}.shop-products .button{width:100%}}
