:root {
  --ink: #0b274b;
  --ink-soft: #24405f;
  --cream: #f7f0e6;
  --paper: #fffaf3;
  --oat: #e7d7c3;
  --gold: #b9873f;
  --gold-light: #d9b77a;
  --line: rgba(11, 39, 75, .18);
  --serif: "Playfair Display", Georgia, serif;
  --sans: "DM Sans", system-ui, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--cream); color: var(--ink); font-family: var(--sans); line-height: 1.6; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
::selection { background: var(--gold-light); color: var(--ink); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 1000; background: var(--ink); color: white; padding: .7rem 1rem; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

.site-header { min-height: 88px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; padding: 0 clamp(1.25rem, 4vw, 4.5rem); border-bottom: 1px solid var(--line); background: rgba(247,240,230,.94); backdrop-filter: blur(12px); position: sticky; top: 0; z-index: 20; transition: box-shadow .25s; }
.site-header.scrolled { box-shadow: 0 8px 32px rgba(11,39,75,.07); }
.wordmark { display: flex; align-items: center; gap: .65rem; width: fit-content; text-transform: uppercase; letter-spacing: .18em; font-family: var(--serif); font-size: 1.08rem; line-height: 1; }
.wordmark img { display: none; }
.wordmark::before { display: none; }
.wordmark small { display: block; margin-top: .3rem; color: var(--gold); font: 500 .55rem/1 var(--sans); letter-spacing: .5em; }
.primary-nav { display: flex; gap: 2.2rem; align-items: center; font-size: .84rem; }
.primary-nav a { position: relative; padding: 2rem 0; }
.primary-nav a::after { content: ""; position: absolute; height: 1px; left: 0; right: 100%; bottom: 1.55rem; background: var(--gold); transition: right .25s; }
.primary-nav a:hover::after, .primary-nav a.active::after { right: 0; }
.header-cta { justify-self: end; padding-bottom: .25rem; border-bottom: 1px solid var(--ink); font-size: .82rem; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 1.5rem; }
.header-account { font-size: .76rem; font-weight: 600; letter-spacing: .05em; white-space: nowrap; }
.header-account:hover { color: var(--gold); }
.header-cart { display: inline-flex; align-items: center; gap: .55rem; min-height: 42px; padding: .55rem .65rem .55rem .85rem; border: 1px solid var(--ink); font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; transition: background .2s, color .2s, transform .2s; }
.header-cart:hover { background: var(--ink); color: #fff; }
.header-cart-count { display: grid; place-items: center; min-width: 24px; height: 24px; padding: 0 .35rem; border-radius: 99px; background: var(--gold); color: #fff; font-size: .68rem; line-height: 1; }
.header-cart.cart-updated { animation: cart-pulse .45s ease; }
@keyframes cart-pulse { 50% { transform: translateY(-2px) scale(1.04); } }
.menu-button { display: none; border: 0; background: none; padding: .75rem; }
.menu-button span:not(.sr-only) { display: block; width: 24px; height: 1px; background: var(--ink); margin: 5px 0; }

.hero { min-height: calc(100vh - 88px); display: grid; grid-template-columns: 1fr 1.08fr; position: relative; overflow: hidden; }
.hero-copy { padding: clamp(5rem, 10vw, 9rem) 4vw 5rem clamp(1.5rem, 8vw, 8rem); align-self: center; z-index: 1; }
.eyebrow { margin: 0 0 1.25rem; text-transform: uppercase; letter-spacing: .24em; color: var(--gold); font-size: .7rem; font-weight: 600; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--serif); font-weight: 500; line-height: .98; letter-spacing: -.035em; }
h1 { font-size: clamp(4rem, 7.4vw, 8.3rem); margin-bottom: 2.25rem; }
h2 { font-size: clamp(3rem, 5.5vw, 6rem); }
h1 em, h2 em { color: var(--gold); font-weight: 500; }
.lede { max-width: 35rem; font-size: clamp(1.05rem, 1.5vw, 1.35rem); color: var(--ink-soft); }
.actions { display: flex; align-items: center; gap: 2rem; margin-top: 2.6rem; flex-wrap: wrap; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: .8rem 1.45rem; border: 1px solid var(--ink); font-weight: 500; font-size: .82rem; transition: transform .25s, background .25s, color .25s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--ink); color: white; }
.button-primary:hover { background: var(--gold); border-color: var(--gold); }
.text-link { display: inline-flex; gap: .75rem; align-items: center; border-bottom: 1px solid currentColor; padding-bottom: .2rem; font-size: .85rem; }
.text-link span { transition: transform .2s; }
.text-link:hover span { transform: translateX(4px); }
.hero-art { position: relative; min-height: 620px; background: #d7c4ad; overflow: hidden; }
.hero-art::before { content: ""; position: absolute; inset: 0; opacity: .35; background: repeating-linear-gradient(92deg, transparent 0 3px, rgba(255,255,255,.28) 4px 5px), linear-gradient(145deg, #e3d7c9, #b99e7d); }
.hero-seal { position: absolute; z-index: 2; left: 2rem; top: 2rem; width: 108px; height: 108px; border-radius: 50%; object-fit: cover; box-shadow: 0 10px 30px rgba(11,39,75,.08); }
.sun-disc { position: absolute; width: 70%; aspect-ratio: 1; border-radius: 50%; background: #ead7b9; left: 15%; top: 10%; box-shadow: inset 0 0 70px rgba(255,255,255,.7); }
.bed-frame { position: absolute; left: 7%; right: 7%; bottom: 3%; height: 63%; background: #efe8dc; border-radius: 42% 42% 0 0 / 18% 18% 0 0; box-shadow: 0 35px 90px rgba(41,42,38,.18); }
.pillow { position: absolute; top: 14%; width: 34%; height: 28%; border-radius: 18px 18px 45% 45%; background: linear-gradient(150deg,#fffdf9,#d9d0c5); border: 1px solid rgba(11,39,75,.12); box-shadow: 0 10px 20px rgba(0,0,0,.05); }
.pillow-one { left: 14%; transform: rotate(-3deg); }.pillow-two { right: 14%; transform: rotate(3deg); }
.duvet { position: absolute; left: 3%; right: 3%; bottom: 0; height: 58%; border-radius: 48% 52% 0 0 / 18% 22% 0 0; background: linear-gradient(165deg,#faf7f0 0 42%,#d9c7ae 43% 47%,#f1e9dc 48%); box-shadow: inset 0 22px 38px rgba(255,255,255,.8); }
.gold-thread { position: absolute; left: 2%; right: -8%; bottom: 22%; height: 50px; border-top: 4px solid var(--gold); border-radius: 50%; transform: rotate(-4deg); }
.art-note { position: absolute; top: 3rem; right: 3rem; text-transform: uppercase; letter-spacing: .2em; font-size: .65rem; }
.hero-index { position: absolute; left: 3.5rem; bottom: 2rem; font-size: .7rem; letter-spacing: .2em; }
.marquee { overflow: hidden; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: .9rem 0; color: var(--ink); white-space: nowrap; letter-spacing: .24em; font-size: .68rem; }
.marquee div { min-width: max-content; animation: marquee 24s linear infinite; }.marquee span { color: var(--gold); margin: 0 2rem; }
@keyframes marquee { to { transform: translateX(-50%); } }

.section-grid { display: grid; grid-template-columns: minmax(50px,.28fr) 1.15fr 1fr; gap: clamp(2rem,5vw,6rem); padding: clamp(7rem,12vw,12rem) clamp(1.5rem,7vw,7rem); }
.section-number { font: 500 .75rem var(--sans); color: var(--gold); border-top: 1px solid var(--gold); padding-top: .75rem; }
.intro-heading h2, .ritual-heading h2 { margin-bottom: 0; }
.intro-copy { font-size: 1rem; max-width: 35rem; padding-top: 2.5rem; }.intro-copy p + p { color: #536577; margin-top: 2rem; }
.dropcap::first-letter { float: left; font: 500 4.8rem/.8 var(--serif); color: var(--gold); margin: .1rem .7rem 0 0; }

.collection { background: var(--paper); padding: clamp(6rem,10vw,10rem) clamp(1.5rem,5vw,5rem); }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-bottom: 3rem; }.section-heading h2 { margin: 0; }
.category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.category-card { min-width:0; border:1px solid var(--line); background:var(--cream); overflow:hidden; }
.category-card img { width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .45s ease,filter .45s ease; }
.category-card:hover img { transform:scale(1.018); filter:saturate(.9); }
.category-meta { min-height:138px; display:grid; grid-template-columns:38px 1fr auto; align-items:start; gap:1rem; padding:1.5rem; }
.category-meta>span { color:var(--gold); font-size:.68rem; }
.category-meta h3 { margin:0 0 .35rem; font:500 clamp(1.55rem,2.5vw,2.1rem) var(--serif); }
.category-meta p { margin:0; color:#607080; font-size:.84rem; }
.category-meta b { font-size:1.3rem; font-weight:400; transition:transform .2s; }
.category-card:hover .category-meta b { transform:translate(4px,-4px); }
.collection-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 1.25rem; }
.collection-card { display: block; border: 1px solid var(--line); background: var(--cream); min-height: 520px; overflow: hidden; }
.card-large { grid-row: span 2; min-height: 1065px; }.card-dark { background: var(--ink); color: white; }
.fabric { height: calc(100% - 150px); min-height: 370px; position: relative; overflow: hidden; }
.fabric::before { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(92deg,rgba(255,255,255,.1) 0 2px,transparent 2px 5px); }
.fabric-bedding { background: linear-gradient(150deg,#d8c1a1,#f1e5d4); }.fabric-bedding i { position: absolute; background: #f8f4ec; box-shadow: 0 15px 35px rgba(0,0,0,.1); }
.fabric-bedding i:nth-child(1) { width: 70%; height: 28%; top: 18%; left: 12%; border-radius: 20px; transform: rotate(-4deg); }.fabric-bedding i:nth-child(2){width:77%;height:31%;top:37%;right:5%;border-radius:50% 10px 30% 10px;transform:rotate(4deg);background:#e9dbc6}.fabric-bedding i:nth-child(3){width:88%;height:37%;bottom:-5%;left:2%;border-radius:45% 40% 0 0;background:#0b274b}
.fabric-pillows { background: #cad4ce; }.fabric-pillows i { position:absolute; width:55%; height:48%; background:#f7f3ea; border-radius:18% 18% 28% 28%; box-shadow:0 20px 30px rgba(0,0,0,.12); }.fabric-pillows i:first-child{left:8%;top:20%;transform:rotate(-8deg)}.fabric-pillows i:last-child{right:4%;top:32%;transform:rotate(8deg);background:#d3b88d}
.fabric-layers { background: #173455; }.fabric-layers i { position:absolute; left:12%; right:8%; height:26%; border-radius:50%; border-top:38px solid; transform:rotate(-6deg)}.fabric-layers i:nth-child(1){top:25%;border-color:#e4d7c7}.fabric-layers i:nth-child(2){top:42%;border-color:#b9873f}.fabric-layers i:nth-child(3){top:59%;border-color:#6c8795}
.card-meta { min-height: 150px; display: grid; grid-template-columns: 38px 1fr auto; gap: 1rem; padding: 1.6rem; align-items: start; }.card-meta > span { color: var(--gold); font-size: .68rem; }.card-meta h3 { font: 500 1.65rem var(--serif); margin-bottom: .35rem; }.card-meta p { margin: 0; opacity: .7; font-size: .85rem; }.card-meta b { font-weight: 400; font-size: 1.3rem; transition: transform .2s; }.collection-card:hover .card-meta b { transform: translate(4px,-4px); }
.availability-note { max-width: 48rem; margin: 2rem 0 0 auto; padding-left: 1rem; border-left: 2px solid var(--gold); color: #607080; font-size: .8rem; }

.material-story { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 760px; }.material-visual { min-height: 700px; background: #b99d78; position: relative; overflow:hidden; }.material-visual::before { content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.13) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(11,39,75,.08) 0 1px,transparent 1px 6px)}.weave-line{position:absolute;left:-10%;right:-10%;height:170px;border-top:45px solid rgba(255,250,243,.78);border-radius:50%;transform:rotate(-8deg)}.line-a{top:20%}.line-b{top:45%;border-color:rgba(11,39,75,.82);transform:rotate(6deg)}.line-c{top:68%;border-color:rgba(217,183,122,.9);transform:rotate(-3deg)}.material-visual p{position:absolute;left:2rem;bottom:1rem;color:white;text-transform:uppercase;letter-spacing:.25em;font-size:.65rem}.material-copy { padding: clamp(5rem,9vw,9rem); align-self:center; }.material-copy p:not(.eyebrow) { max-width: 30rem; color: #536577; margin-bottom: 2rem; }
.care-list { list-style:none; padding:0; margin:0; }.care-list li { display:grid;grid-template-columns:50px 1fr;gap:1rem;padding:1.4rem 0;border-top:1px solid var(--line)}.care-list li:last-child{border-bottom:1px solid var(--line)}.care-list span{font-size:.68rem;color:var(--gold)}.care-list h3{font:500 1.35rem var(--serif);margin-bottom:.35rem}.care-list p{margin:0;color:#607080;font-size:.85rem}
.newsletter { background: var(--ink); color: white; text-align: center; padding: clamp(6rem,10vw,10rem) 1.5rem; }.newsletter h2 { max-width: 900px; margin: 0 auto 2rem; }.newsletter > p:not(.eyebrow):not(.form-note) { max-width: 580px; margin: 0 auto 2.5rem; color: #c7d1dd; }.newsletter-form { max-width: 620px; margin:0 auto; display:flex; border-bottom:1px solid rgba(255,255,255,.6); }.newsletter-form input { flex:1; min-width:0; border:0; background:transparent; color:white; padding:1rem .25rem; outline:0 }.newsletter-form input::placeholder{color:#aab7c5}.newsletter-form button{border:0;background:transparent;color:white;cursor:pointer;padding:1rem 0 1rem 1rem}.form-note{margin:1rem auto 0!important;color:#9eacbb!important;font-size:.72rem}.newsletter-light{background:#d9c4a8;color:var(--ink)}.newsletter-light>p:not(.eyebrow):not(.form-note){color:var(--ink-soft)}.newsletter-light .newsletter-form{border-color:var(--ink)}.newsletter-light .newsletter-form input,.newsletter-light .newsletter-form button{color:var(--ink)}.newsletter-light .newsletter-form input::placeholder{color:#5c6b7a}

.site-footer { background:#071d37;color:white;display:grid;grid-template-columns:1.4fr .55fr .8fr .85fr;gap:3rem;padding:5rem clamp(1.5rem,6vw,6rem) 2rem; }.footer-brand{display:flex;align-items:center;gap:1rem}.footer-mark{width:66px;height:66px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:500 2.2rem var(--serif);color:var(--gold)}.footer-brand strong{display:block;font:500 2.1rem var(--serif);text-transform:uppercase;letter-spacing:.15em}.footer-brand small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.5em}.footer-links,.footer-contact,.footer-policies{display:flex;flex-direction:column;gap:.45rem;font-size:.82rem}.footer-links p,.footer-contact p,.footer-policies p{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-size:.65rem}.footer-links a:hover,.footer-contact a:hover,.footer-policies a:hover{color:var(--gold)}.footer-bottom{grid-column:1/-1;margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;color:#91a0b1;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}

.home-products { padding:clamp(6rem,9vw,9rem) clamp(1.5rem,5vw,5rem); background:var(--cream); }
.home-products-new { background:var(--paper); border-top:1px solid var(--line); }
.home-products .section-heading { margin-bottom:2.5rem; }
.home-products .section-heading h2 { font-size:clamp(2.8rem,5vw,5.25rem); }
.policy-document,.editorial-copy { max-width:780px; margin:0 auto; color:var(--ink-soft); }
.policy-document h2,.editorial-copy h2 { margin:3rem 0 1rem; color:var(--ink); font-size:clamp(1.9rem,3vw,2.7rem); line-height:1.08; }
.policy-document p,.policy-document li,.editorial-copy p { font-size:1rem; }
.policy-document ul { margin:0; padding-left:1.25rem; }
.policy-document li+li { margin-top:.65rem; }
.policy-updated { color:var(--gold); font-size:.72rem!important; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.policy-lede { color:var(--ink)!important; font:500 clamp(1.35rem,2.4vw,1.85rem)/1.5 var(--serif)!important; }
.contact-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:3rem 0; }
.contact-cards>div { padding:1.5rem; border:1px solid var(--line); background:var(--paper); }
.contact-cards span { display:block; margin-bottom:.6rem; color:var(--gold); font-size:.68rem; letter-spacing:.15em; text-transform:uppercase; }
.contact-cards a { font:500 clamp(1.05rem,2vw,1.35rem) var(--serif); overflow-wrap:anywhere; }
.loomara-page-returns-refunds .page-hero,.loomara-page-shipping-delivery .page-hero,.loomara-page-privacy-policy .page-hero,.loomara-page-terms-and-conditions .page-hero,.loomara-page-my-account .page-hero { min-height:300px; padding-top:4rem; padding-bottom:4rem; background:linear-gradient(135deg,var(--cream),#efe2d1); }
.loomara-page-returns-refunds .page-hero h1,.loomara-page-shipping-delivery .page-hero h1,.loomara-page-privacy-policy .page-hero h1,.loomara-page-terms-and-conditions .page-hero h1,.loomara-page-my-account .page-hero h1 { font-size:clamp(3.25rem,5.5vw,5.75rem); }

.page-hero { min-height: 560px; display:grid; grid-template-columns:1.2fr .8fr; align-items:end; padding:clamp(5rem,9vw,9rem) clamp(1.5rem,7vw,7rem); border-bottom:1px solid var(--line); }.page-hero h1{margin:0}.page-hero-copy{max-width:34rem;padding:0 0 1rem 4vw;font-size:1.1rem}.status-pill{display:inline-flex;align-items:center;gap:.6rem;border:1px solid var(--line);padding:.5rem .8rem;border-radius:99px;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem;margin-top:1.5rem}.status-pill i{width:7px;height:7px;background:var(--gold);border-radius:50%;box-shadow:0 0 0 5px rgba(185,135,63,.12)}
.shop-grid { padding:6rem clamp(1.5rem,5vw,5rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.shop-card{border-top:1px solid var(--ink);padding-top:1rem}.shop-card h2{font-size:2.5rem;margin-bottom:1rem}.shop-card>p:not(.eyebrow){color:#5b6c7d;min-height:76px}.shop-art{height:480px;margin-bottom:1.5rem;position:relative;overflow:hidden;background:#d9c6ac}.shop-art span{position:absolute}.art-one span{left:8%;right:8%;height:30%;border-radius:45% 45% 10px 10px;background:#f8f3e9;box-shadow:0 16px 35px rgba(0,0,0,.1)}.art-one span:nth-child(1){top:20%;transform:rotate(-4deg)}.art-one span:nth-child(2){top:42%;background:#c9a973;transform:rotate(5deg)}.art-one span:nth-child(3){top:65%;background:var(--ink);transform:rotate(-2deg)}.art-two{background:#bdc9c4}.art-two span{width:65%;height:42%;border-radius:20% 20% 35% 35%;background:#f8f3e9;top:26%;left:6%;box-shadow:0 18px 30px rgba(0,0,0,.11)}.art-two span:last-child{left:auto;right:0;top:40%;background:#d0b78e;transform:rotate(9deg)}.art-three{background:#173455}.art-three span{left:-5%;right:-5%;height:28%;border-top:42px solid #f1e7d9;border-radius:50%;top:25%;transform:rotate(-5deg)}.art-three span:nth-child(2){top:48%;border-color:var(--gold);transform:rotate(5deg)}.art-three span:nth-child(3){top:69%;border-color:#728f9a}.coming-label{text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;color:var(--gold)}.coming-panel{text-align:center;padding:8rem 1.5rem;background:var(--paper)}.coming-panel h2{margin-bottom:1.5rem}.coming-panel>p:not(.eyebrow){max-width:600px;margin:0 auto 2rem;color:#596b7d}
.story-manifesto{display:grid;grid-template-columns:.7fr 1.3fr;gap:5rem;padding:9rem clamp(1.5rem,9vw,10rem);background:var(--paper)}.manifesto-mark{font:500 clamp(12rem,28vw,28rem)/.7 var(--serif);color:transparent;-webkit-text-stroke:1px var(--gold);align-self:center}.manifesto-copy{max-width:680px}.manifesto-copy h2{font-size:clamp(3rem,5vw,5rem)}.manifesto-copy p:not(.eyebrow){font-size:1.05rem;color:#536577;margin-bottom:1.5rem}.principles{padding:8rem clamp(1.5rem,6vw,6rem)}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:2.5rem}.principle-grid article{padding:2rem 2rem 4rem 0;border-right:1px solid var(--line);margin-right:2rem}.principle-grid article:last-child{border:0}.principle-grid span{color:var(--gold);font-size:.7rem}.principle-grid h3{font:500 1.8rem var(--serif);margin:2.5rem 0 1rem}.principle-grid p{color:#596b7d}.story-close{display:grid;grid-template-columns:1.1fr .9fr;background:var(--ink);color:white;min-height:700px}.story-close>div:last-child{padding:7rem;align-self:center}.story-close p:not(.eyebrow){color:#bdc9d4;max-width:470px}.story-visual{position:relative;overflow:hidden;background:#c5ae8c}.story-visual span{position:absolute;left:-10%;right:-10%;height:170px;border-top:55px solid var(--paper);border-radius:50%;top:20%;transform:rotate(-7deg)}.story-visual span:nth-child(2){top:45%;border-color:var(--ink);transform:rotate(5deg)}.story-visual span:nth-child(3){top:68%;border-color:var(--gold)}
.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;min-height:680px;padding:clamp(6rem,10vw,10rem) clamp(1.5rem,8vw,9rem)}.contact-intro h1{font-size:clamp(4rem,7vw,7rem)}.contact-intro>p:last-child{max-width:470px;color:#596b7d}.contact-details{align-self:center}.contact-details article{padding:1.6rem 0;border-top:1px solid var(--line)}.contact-details article:last-child{border-bottom:1px solid var(--line)}.contact-details .eyebrow{margin-bottom:.7rem}.contact-details a{font:500 clamp(1.25rem,2vw,1.8rem) var(--serif);display:flex;justify-content:space-between}.contact-details article>p:last-child{color:#596b7d;margin:0;max-width:410px}
.reveal{opacity:1;transform:none;transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}

@media (max-width: 900px) {
  .site-header{grid-template-columns:1fr auto auto;min-height:76px;gap:.75rem}.header-cta{display:none}.header-actions{grid-column:2;grid-row:1;gap:.65rem}.header-account{font-size:.68rem}.header-cart-label{display:none}.header-cart{min-height:40px;padding:.45rem}.menu-button{display:block;grid-column:3;grid-row:1;justify-self:end}.primary-nav{position:absolute;top:76px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem 1.5rem 2rem}.primary-nav.open{display:flex}.primary-nav a{padding:1rem 0;font:500 1.6rem var(--serif)}.primary-nav a::after{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:6rem 1.5rem 4rem}.hero-art{min-height:540px}.hero-index{display:none}.section-grid{grid-template-columns:45px 1fr}.intro-copy,.care-list{grid-column:2}.collection-grid{grid-template-columns:1fr 1fr}.category-grid{grid-template-columns:1fr 1fr}.card-large{grid-row:auto;grid-column:1/-1;min-height:720px}.material-story,.story-close{grid-template-columns:1fr}.material-copy,.story-close>div:last-child{padding:6rem 1.5rem}.site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.page-hero{grid-template-columns:1fr;gap:3rem}.page-hero-copy{padding:0}.shop-grid{grid-template-columns:1fr 1fr}.shop-card:last-child{grid-column:1/-1}.story-manifesto{grid-template-columns:1fr;padding:7rem 1.5rem}.manifesto-mark{font-size:15rem}.principle-grid{grid-template-columns:1fr}.principle-grid article{border-right:0;border-bottom:1px solid var(--line);margin:0}.contact-layout{grid-template-columns:1fr}
}
@media (max-width: 620px) {
  h1{font-size:3.6rem}.hero-art{min-height:430px}.hero-seal{width:84px;height:84px;left:1.25rem;top:1.25rem}.art-note{right:1.5rem;top:1.5rem}.bed-frame{height:70%;left:3%;right:3%}.section-grid{grid-template-columns:1fr;padding:6rem 1.5rem}.section-number{width:45px}.intro-copy,.care-list{grid-column:1}.section-heading{align-items:start;flex-direction:column}.collection-grid,.shop-grid,.category-grid{grid-template-columns:1fr}.category-meta{min-height:125px}.card-large,.collection-card{grid-column:auto;min-height:570px}.material-visual{min-height:520px}.newsletter-form{display:block;border:0}.newsletter-form input{width:100%;border-bottom:1px solid rgba(255,255,255,.6)}.newsletter-light .newsletter-form input{border-color:var(--ink)}.newsletter-form button{width:100%;border:1px solid currentColor;margin-top:1rem}.site-footer{grid-template-columns:1fr}.footer-links,.footer-contact,.footer-policies{margin-top:1rem}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.5rem}.page-hero{min-height:500px}.shop-card:last-child{grid-column:auto}.shop-art{height:390px}.story-close .story-visual{min-height:500px}.contact-layout{padding-top:6rem;gap:3rem}.contact-cards{grid-template-columns:1fr}.header-account{display:none}
}
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important} }

/* A shorter first fold brings the category collection into the next scroll. */
.hero { min-height: min(680px, calc(100svh - 88px)); }
.hero-copy { padding-top: 4rem; padding-bottom: 4rem; }
.hero-art { min-height: 520px; }
.collection { padding-top: clamp(2.5rem,5vw,5rem); }
@media (max-width:900px) {
  .hero { grid-template-columns: 1.1fr 1fr; min-height: 520px; }
  .hero-copy { padding: 3rem 1.25rem; }
  .hero-art { min-height: 460px; }
  .hero h1 { font-size: clamp(2.8rem,5.8vw,4rem); }
}
@media (max-width:620px) {
  .hero { grid-template-columns: 1fr; min-height: 0; }
  .hero-copy { padding: 2.5rem 1.25rem 2rem; }
  .hero h1 { font-size: 2.9rem; }
  .hero .lede { font-size: .95rem; }
  .hero-art { min-height: 200px; }
  .hero-seal { width: 56px; height: 56px; }
  .hero .actions { gap: 1rem; }
  .category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
  .category-card img { aspect-ratio: 1; }
  .category-meta { min-height: 105px; gap: .5rem; padding: 1rem .25rem; }
  .category-meta h3 { font-size: 1.25rem; }
  .category-meta p { font-size: .72rem; }
  .category-meta > span, .category-meta > b { display: none; }
  .header-account { display: inline; font-size: .7rem; }
  .section-grid { padding: 3.5rem 1.25rem; }
}
