/* Coastal Luxe: homepage-only styles; existing pages remain unchanged. */
.coastal-world { --coastal-ink:#583b28; --coastal-gold:#a87a39; color:var(--coastal-ink); background:#fcf7ef; }
.coastal-promo { display:grid; grid-template-columns:1fr 1.15fr; max-width:1800px; margin:auto; overflow:hidden; background:linear-gradient(120deg,#fcf8f0,#f6e5db); }
.coastal-copy { padding:clamp(2rem,5vw,6rem) clamp(1.5rem,5vw,6rem); align-self:center; }
.coastal-copy .eyebrow,.coastal-heading .eyebrow,.coastal-gifting .eyebrow { color:#795c32; line-height:1.8; letter-spacing:.18em; }
.coastal-copy h2 { font-size:clamp(2.8rem,4.7vw,5.8rem); line-height:1.06; margin:1.2rem 0 1.6rem; }
.coastal-world h2 em { font-weight:400; }
.coastal-description { font-size:clamp(1rem,1.15vw,1.2rem); max-width:33rem; line-height:1.8; }
.coastal-button { margin-top:1.2rem; background:#a64e3e; color:#fff; gap:1.5rem; text-align:center; }
.coastal-button:hover { background:#8f4034; }
.coastal-button:focus-visible { outline:3px solid #256c68; outline-offset:5px; }
.coastal-waterfront { align-self:center; aspect-ratio:646/464; width:100%; background-image:url('./assets/coastal-luxe-approved.png'); background-size:168.1115% auto; background-position:right 14.126%; background-repeat:no-repeat; }
.coastal-features { display:flex; align-items:center; justify-content:center; gap:clamp(.6rem,2.5vw,2.5rem); padding:1.5rem 1rem; border-top:1px solid #d8c4a5; border-bottom:1px solid #d8c4a5; font-family:Georgia,serif; letter-spacing:.05em; font-size:clamp(.85rem,1.4vw,1.2rem); }
.coastal-features [aria-hidden] { color:#a87a39; }
.coastal-collection { padding:clamp(3rem,6vw,6rem) clamp(1.25rem,6vw,6rem); max-width:1600px; margin:auto; scroll-margin-top:110px; }
#coastal-luxe { scroll-margin-top:100px; }
.coastal-heading { text-align:center; margin:0 auto 2.8rem; }
.coastal-heading h2 { font-size:clamp(2.4rem,4.3vw,4.6rem); line-height:1.1; margin:.6rem 0 1rem; }
.coastal-heading>p:last-child { font-family:Georgia,serif; font-style:italic; font-size:clamp(1.15rem,2vw,1.6rem); }
.coastal-artwork { margin:0 auto 3rem; max-width:1086px; }
.coastal-artwork img { width:100%; height:auto; object-fit:contain; border-radius:4px; }
.coastal-artwork figcaption { text-align:center; font-size:.75rem; padding:1rem; letter-spacing:.07em; }
.coastal-fragrances { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 3rem; }
.coastal-fragrances li { position:relative; border-top:1px solid #d9c6ac; padding:1.8rem 0 1.8rem 3rem; }
.coastal-number { position:absolute; top:2rem; left:0; font-family:Georgia,serif; color:#886a3d; font-size:.9rem; }
.coastal-fragrances h3 { font:400 clamp(1.5rem,2vw,2rem)/1.15 Georgia,serif; margin:0 0 .8rem; }
.coastal-fragrances p { margin:0 0 1rem; color:#665647; line-height:1.75; max-width:32rem; }
.coastal-status { display:inline-block; font-size:.7rem; font-weight:600; text-transform:uppercase; letter-spacing:.14em; color:#805042; }
.coastal-details { margin-top:2rem; padding:2rem clamp(1.25rem,4vw,4rem); background:#e7f0eb; border:1px solid #c7d6cc; text-align:center; }
.coastal-details>p:last-child { max-width:850px; margin:.8rem auto 0; line-height:1.9; }
.coastal-gifting { text-align:center; padding:clamp(3rem,6vw,6rem) 1.5rem; background:linear-gradient(110deg,#f4d7cc,#fff5e9 60%,#d9eae2); }
.coastal-gifting h2 { font-size:clamp(2.8rem,4.5vw,4.8rem); line-height:1.1; margin:1rem 0 1.5rem; }
.coastal-gifting>p:not(.eyebrow) { max-width:620px; margin:0 auto 1.8rem; line-height:1.8; font-size:1.1rem; }
@media(min-width:1051px) and (max-width:1250px) { .site-header { padding-inline:1.25rem; gap:.8rem; } .site-header nav { gap:.8rem; } .site-header nav a { font-size:.66rem; letter-spacing:.08em; } }
@media(max-width:760px) { .coastal-promo { grid-template-columns:1fr; } .coastal-copy { padding:2.5rem 1.5rem; } .coastal-copy h2 { font-size:clamp(2.8rem,9vw,4.5rem); } .coastal-waterfront { order:-1; } .coastal-features { gap:.5rem; letter-spacing:0; font-size:.8rem; flex-wrap:wrap; } .coastal-fragrances { grid-template-columns:1fr; } .coastal-heading { margin-bottom:2rem; } .coastal-artwork figcaption { padding:.8rem 0; font-size:.65rem; } }

/* Live Coastal Luxe preorder preview, built from the approved imagery. */
.coastal-home-photo { width:100%; height:auto; align-self:center; }
.coastal-home-offer { font:400 1.7rem/1.4 Georgia,serif; margin:1.5rem 0 0; }
.coastal-home-offer span { display:block; font:400 .9rem/1.7 Arial,sans-serif; margin-top:.5rem; }
.coastal-preview-note { font-size:.8rem; letter-spacing:.035em; margin-top:1rem; color:#725545; }
.coastal-announcement { padding:.7rem 1rem; background:linear-gradient(100deg,#bd736d,#6caaa6); color:white; text-align:center; font-size:.7rem; letter-spacing:.2em; }
.candle-hero { position:relative; isolation:isolate; overflow:hidden; min-height:650px; max-width:1800px; margin:auto; display:grid; grid-template-columns:47% 53%; align-items:center; }
.candle-hero>img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:center; inset:0; z-index:-2; }
.candle-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(255,248,238,.97),rgba(255,248,238,.85) 29%,rgba(255,248,238,.05) 55%,transparent 70%); }
.candle-hero-copy { padding:clamp(2rem,4.5vw,5rem); }
.candle-hero-copy .eyebrow { font-size:.65rem; letter-spacing:.15em; line-height:1.8; color:#785830; }
.candle-hero h1 { font:400 clamp(2.8rem,4.4vw,5.4rem)/1.06 Georgia,serif; letter-spacing:-.035em; margin:1.4rem 0; }
.candle-hero h1 em { font-weight:400; }
.candle-hero-copy>p:not(.eyebrow):not(.coastal-preview-note) { font-size:1rem; line-height:1.8; max-width:29rem; }
.candle-hero-offer { margin:1.6rem 0 .4rem; }
.candle-hero-offer strong { font:400 1.85rem/1.3 Georgia,serif; display:block; }
.candle-hero-offer span { font-size:.85rem; line-height:1.7; display:block; margin-top:.5rem; }
.candle-selection { max-width:1450px; margin:auto; padding:5rem clamp(1.25rem,5vw,5rem); scroll-margin-top:110px; }
.candle-lineup { margin:0 auto 3.5rem; max-width:1250px; }
.candle-lineup img { width:100%; height:auto; object-fit:contain; }
.selection-explainer { max-width:750px; margin:0 auto 3rem; text-align:center; }
.selection-explainer h3 { font:400 1.8rem/1.25 Georgia,serif; margin:0 0 1rem; }
.selection-explainer p { line-height:1.8; font-size:1rem; }
.selection-explainer .text-link { font-size:.85rem; }
.candle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.candle-card { display:flex; flex-direction:column; min-width:0; background:#fffdf8; border:1px solid #e1d3c1; scroll-margin-top:105px; }
.candle-image { width:100%; aspect-ratio:354.8/310; background-image:url('/assets/coastal-luxe-ten-candles.png'); background-size:500% auto; background-repeat:no-repeat; }
.candle-image-0 {background-position:0% 32.93%;}.candle-image-1 {background-position:25% 32.93%;}.candle-image-2 {background-position:50% 32.93%;}.candle-image-3 {background-position:75% 32.93%;}.candle-image-4 {background-position:100% 32.93%;}
.candle-image-5 {background-position:0% 91.85%;}.candle-image-6 {background-position:25% 91.85%;}.candle-image-7 {background-position:50% 91.85%;}.candle-image-8 {background-position:75% 91.85%;}.candle-image-9 {background-position:100% 91.85%;}
.candle-card-copy { padding:1.6rem; display:flex; flex-direction:column; flex:1; }
.candle-card-copy .eyebrow { font-size:.6rem; color:#82623e; margin-bottom:.75rem; }
.candle-card h3 { font:400 clamp(1.6rem,2vw,2rem)/1.2 Georgia,serif; letter-spacing:0; margin:0 0 1rem; }
.candle-description { font-size:16px; line-height:1.7; color:#6d5b4c; margin:0 0 1.5rem; }
.candle-prices { margin-top:auto; display:flex; flex-direction:column; gap:.35rem; }
.candle-prices>span:first-child { color:#746354; font-size:.85rem; }
.candle-prices s { text-decoration:none; }
.candle-prices strong { font-size:1.25rem; font-weight:500; color:#633c2a; }
.candle-saving { color:#356a61; font-size:.85rem; }
.candle-quantity { margin:1.5rem 0; display:flex; justify-content:space-between; align-items:center; gap:1rem; font-size:.9rem; }
.candle-quantity input { width:5rem; min-height:44px; border:1px solid #bfae95; padding:.5rem .7rem; background:#fff; color:#583b28; border-radius:0; }
.candle-quantity input:focus-visible { outline:2px solid #387c74; outline-offset:3px; }
.candle-closed { width:100%; background:#eee8dc; border-color:#d7c7b2; color:#735f4e; cursor:not-allowed; opacity:1; font-size:.63rem; letter-spacing:.08em; padding:.85rem .5rem; }
.candle-closed:hover { transform:none; }
.candle-selection-summary { margin:2rem 0 1rem; font-size:1rem; line-height:1.7; }
.candle-details { background:#e5eee7; text-align:center; padding:4rem 1.5rem; }
.candle-details h2 { font-size:clamp(2.4rem,3.4vw,3.5rem); line-height:1.15; margin:1rem 0 2rem; }
.candle-details ul { display:flex; flex-wrap:wrap; justify-content:center; gap:1rem 2.5rem; list-style:none; padding:0; max-width:1000px; margin:auto; font-size:1rem; line-height:1.7; }
.candle-details li::before { content:'✦'; color:#9b7b4e; margin-right:.7rem; }
.candle-terms { max-width:850px; margin:auto; padding:4rem 1.5rem; }
.candle-terms h2 { font-size:2.5rem; line-height:1.15; margin:1rem 0 1.5rem; }
.candle-terms p { font-size:16px; line-height:1.8; }
.preorder-cart-status { color:#8b4a3b; font-size:.8rem; line-height:1.7; }
.preorder-cart-note { padding:1rem; background:#f5ebe1; font-size:.9rem; line-height:1.7; }
.cart-line-image.candle-image { aspect-ratio:354.8/310; height:auto; align-self:start; }
.checkout-link[aria-disabled="true"] { cursor:not-allowed; background:#e5ddd0; color:#69574b; pointer-events:none; text-align:center; }
@media(max-width:1050px) { .candle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .candle-hero { grid-template-columns:52% 48%; min-height:610px; } }
@media(max-width:760px) {
 .coastal-home-photo { order:-1; }
 .candle-hero { display:flex; flex-direction:column; min-height:0; }
 .candle-hero>img { position:static; order:-1; object-fit:contain; width:100%; height:auto; }
 .candle-hero::before { display:none; }
 .candle-hero-copy { padding:2.4rem 1.5rem 3rem; background:linear-gradient(120deg,#fcf8f0,#f6e5db); width:100%; }
 .candle-hero h1 { font-size:clamp(2.6rem,8.5vw,4rem); }
 .candle-selection { padding-top:3rem; }
 .candle-card-copy { padding:1.25rem; }
}
@media(max-width:580px) { .candle-grid { grid-template-columns:minmax(0,1fr); gap:1.5rem; } .candle-card { max-width:420px; margin:0 auto; width:100%; } .candle-announcement { letter-spacing:.1em; } }

/* Preferred waterfront scene: approved candles arranged side by side. */
.coastal-row-photo { width:100%; aspect-ratio:646/464; align-self:center; background-image:url('/assets/coastal-luxe-approved.png'); background-repeat:no-repeat; background-size:168.1115% auto; background-position:right 14.126%; }
.candle-hero { min-height:0; background:linear-gradient(120deg,#fcf8f0,#f6e5db); }
.candle-hero::before { display:none; }
@media(max-width:760px) { .coastal-row-photo { order:-1; flex-shrink:0; } }

/* Balance the ten fragrances without an isolated last card. */
@media(min-width:1200px) {
 .candle-selection { max-width:1700px; padding-inline:clamp(1.5rem,4vw,4rem); }
 .candle-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:1rem; }
 .candle-card-copy { padding:1.1rem; }
 .candle-card h3 { font-size:1.5rem; }
 .candle-quantity { gap:.5rem; }
 .candle-closed { letter-spacing:.04em; font-size:.6rem; }
}
@media(min-width:581px) and (max-width:1199px) {
 .candle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
