:root { --ink:#1b1b19; --paper:#f3ede3; --coral:#ff8573; --coral-dark:#e66555; --sage:#8e9a80; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:#1b1b19; font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.announcement { padding:10px 20px; background:var(--coral); color:var(--ink); text-align:center; text-transform:uppercase; font-size:10px; letter-spacing:.18em; font-weight:700; }
.nav { height:84px; display:flex; align-items:center; justify-content:space-between; padding:0 4vw; border-bottom:1px solid rgba(38,49,40,.14); }
.brand { display:flex; align-items:center; position:relative; font-family:Georgia,serif; font-size:16px; }
.brand span { color:var(--coral); font-size:34px; line-height:1; margin-right:-9px; font-weight:400; }
.brand b { margin-left:18px; font-family:Arial,sans-serif; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
.navLinks { display:flex; gap:38px; font-size:13px; }
.pillButton { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-width:205px; padding:16px 18px 16px 24px; border-radius:99px; background:var(--coral); color:#251f1b; text-transform:uppercase; letter-spacing:.12em; font-size:11px; font-weight:700; transition:.2s ease; }
.pillButton:hover { transform:translateY(-2px); background:#ff927c; }
.pillButton span { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; background:rgba(255,255,255,.45); font-size:16px; }
.pillButton.small { min-width:150px; padding:10px 10px 10px 19px; }
.hero { width:100%; max-width:2200px; min-height:650px; margin-inline:auto; display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); border-bottom:1px solid rgba(27,27,25,.16); }
.heroCopy { padding:100px 6vw 70px 8vw; }
.eyebrow { display:flex; align-items:center; gap:11px; margin:0 0 24px; font-size:10px; font-weight:700; letter-spacing:.2em; }
.eyebrow i { width:28px; height:1px; background:currentColor; }
h1,h2,blockquote { font-family:Georgia, 'Times New Roman', serif; font-weight:400; }
h1 { font-size:clamp(54px,6vw,89px); line-height:.93; letter-spacing:-.055em; margin:0 0 29px; }
h1 em { color:var(--coral-dark); font-weight:400; }
.lede { max-width:510px; font-family:Georgia,serif; font-size:19px; line-height:1.55; color:#586059; margin:0 0 35px; }
.microcopy { margin:16px 0 0 24px; font-size:10px; letter-spacing:.08em; color:#514d48; font-weight:600; }
.heroArt { position:relative; overflow:hidden; width:calc(100% - 34px); max-width:820px; min-width:0; min-height:0; margin:34px 34px 34px 0; border:16px solid var(--coral); background:#1d1d1b; box-shadow:0 24px 55px rgba(38,29,24,.14); aspect-ratio:1; justify-self:center; align-self:center; }
.heroArt img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.sun { position:absolute; right:8%; top:10%; width:285px; height:285px; border-radius:50%; background:#f9e7bd; display:flex; flex-direction:column; justify-content:center; align-items:center; transform:rotate(7deg); color:#3a473c; box-shadow:0 20px 50px rgba(86,37,24,.13); }
.sun span { font-size:11px; letter-spacing:.35em; margin-left:.35em; }
.sun strong { font:italic 64px/1 Georgia,serif; font-weight:400; }
.sun small { font-size:11px; letter-spacing:.22em; text-transform:uppercase; }
.leaf { position:absolute; width:170px; height:310px; border-radius:100%; background:#788e6d; transform:rotate(-35deg); bottom:-92px; left:18%; box-shadow:inset -18px -20px 0 rgba(53,72,50,.18); }
.leafTwo { width:105px; height:230px; transform:rotate(37deg); left:55%; bottom:-75px; background:#a8b98b; }
.note { position:absolute; left:8%; top:25%; background:#fff8ea; padding:28px 25px; transform:rotate(-8deg); font:italic 24px/1.25 Georgia,serif; box-shadow:0 13px 28px rgba(68,36,27,.15); }
.spark { position:absolute; bottom:28%; right:17%; color:#fff7e8; font-size:55px; }
.shop { padding:105px 6vw 120px; background:#1b1b19; color:#f7efe3; border:18px solid var(--coral); }
.sectionHead { max-width:1800px; display:flex; align-items:end; justify-content:space-between; gap:30px; margin:0 auto 35px; }
.sectionHead h2 { margin:0; font-size:clamp(43px,5vw,68px); letter-spacing:-.045em; }
.sectionHead > p { max-width:360px; color:#c7beb0; font-family:Georgia,serif; line-height:1.6; }
.filters { display:flex; gap:8px; margin:0 0 32px; }
.filters button { border:1px solid rgba(247,239,227,.32); color:#f7efe3; background:transparent; border-radius:99px; padding:10px 17px; cursor:pointer; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.filters button.active,.filters button:hover { background:var(--coral); color:var(--ink); border-color:var(--coral); }
.productGrid { width:100%; max-width:1800px; margin-inline:auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px 22px; align-items:stretch; }
.product { min-width:0; width:100%; display:flex; flex-direction:column; border-top:1px solid rgba(247,239,227,.28); padding-top:14px; }
.product[hidden] { display:none; }
.productVisual { width:100%; min-width:0; aspect-ratio:1/.83; display:flex; flex-direction:column; justify-content:center; align-items:center; position:relative; overflow:hidden; }
.productVisual.peach,.productVisual.sage,.productVisual.blue,.productVisual.gold,.productVisual.rose,.productVisual.mint { background:radial-gradient(circle at 50% 68%,#34322e 0,#242320 43%,#171716 74%); border:10px solid var(--coral); }
.productVisual.sage { border-color:#a9b59a; }
.productVisual.blue { border-color:#92aeb7; }
.productVisual.gold { border-color:#d8b56e; }
.productVisual.rose { border-color:#d99b9d; }
.productVisual.mint { border-color:#9fc4ae; }
.productVisual > span { display:grid; place-items:center; color:#f5ebdc; font:32px Georgia,serif; letter-spacing:.12em; }
.productVisual:after { content:"GG"; position:absolute; right:16px; bottom:11px; color:var(--coral); font:25px Georgia,serif; }
.productVisual small { position:absolute; bottom:15px; left:17px; text-transform:uppercase; letter-spacing:.16em; font-size:9px; }
.productInfo { display:flex; justify-content:space-between; gap:20px; padding:18px 2px 14px; }
.productInfo p { margin:0 0 5px; font-size:9px; text-transform:uppercase; letter-spacing:.15em; color:#b5ab9d; }
.productInfo h3 { margin:0; color:#fff7ea; font:25px Georgia,serif; }.productInfo > span { color:#fff7ea; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.affiliateNotice { max-width:1800px; margin:0 auto 28px; padding:17px 20px; border-left:3px solid var(--coral); background:#292825; font:14px/1.55 Georgia,serif; color:#c9c0b4; }
.affiliateNotice strong { color:#fff7ea; }
.shopTools { width:100%; max-width:1800px; margin-inline:auto; display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.search { display:flex; align-items:center; gap:11px; border-bottom:1px solid rgba(247,239,227,.4); padding:2px 0 9px; min-width:250px; }
.search span { font-size:9px; letter-spacing:.14em; text-transform:uppercase; font-weight:700; }
.search input { border:0; outline:0; background:transparent; color:#fff7ea; width:100%; font:15px Georgia,serif; }.search input::placeholder{color:#9e958a}
.productVisual img { display:block; width:100%; max-width:100%; min-width:0; height:100%; object-fit:cover; }
.productVisual.digitalVisual { aspect-ratio:8.5/11; border:1px solid var(--coral); background:var(--coral); }
.productVisual.digitalVisual img { object-fit:cover; transform:scale(1.11); transform-origin:center; }
.productVisual.digitalVisual:after { display:none; }
.productVisual.digitalVisual small { display:none; }
.productVisual b { position:absolute; top:14px; right:14px; border:1px solid rgba(27,27,25,.16); border-radius:4px; padding:7px 10px; background:#fff8ed; color:var(--ink); box-shadow:0 3px 10px rgba(0,0,0,.12); font-size:8px; letter-spacing:.1em; text-transform:uppercase; }
.productDescription { min-height:42px; margin:0 0 17px; color:#bcb2a5; font:14px/1.5 Georgia,serif; }
.shopButton { width:100%; border:1px solid rgba(247,239,227,.28); background:transparent; padding:13px 15px; display:flex; justify-content:space-between; text-transform:uppercase; letter-spacing:.1em; font-size:10px; }
.shopButton.disabled { opacity:.55; cursor:not-allowed; }
.shopButton.ready { background:var(--coral); color:var(--ink); border-color:var(--coral); transition:.2s ease; }
.shopButton.ready:hover { background:#f6ede0; color:var(--ink); border-color:#f6ede0; }
.productActions { display:grid; grid-template-columns:.8fr 1.2fr; gap:8px; margin-top:auto; }
.previewButton { border:1px solid rgba(247,239,227,.42); background:transparent; color:#fff7ea; padding:13px 12px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; text-transform:uppercase; letter-spacing:.1em; font-size:9px; transition:.2s ease; }
.previewButton:hover { border-color:#fff7ea; background:#292825; }
.featuredProduct { grid-column:1/-1; position:relative; display:grid; grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr); grid-template-rows:auto 1fr auto; gap:0 36px; margin:0; padding:22px; border:0; box-shadow:0 0 0 1px var(--coral); }
.featuredProduct .productVisual { grid-column:1; grid-row:1/4; }
.featuredProduct .productInfo { grid-column:2; grid-row:1; padding-top:0; }
.featuredProduct .productDescription { grid-column:2; grid-row:2; max-width:700px; margin-top:18px; font-size:18px; }
.featuredProduct .productActions { grid-column:2; grid-row:3; margin-top:28px; }
.product > .shopButton { margin-top:auto; }
.previewDialog { width:min(1040px,calc(100% - 30px)); max-height:92vh; padding:clamp(24px,4vw,48px); border:12px solid var(--coral); background:var(--paper); color:var(--ink); overflow:auto; box-shadow:0 30px 90px rgba(0,0,0,.45); }
.previewDialog::backdrop { background:rgba(15,15,14,.82); backdrop-filter:blur(5px); }
.previewTop { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; }
.previewTop h2 { margin:0; font-size:clamp(35px,5vw,58px); }
.previewClose { width:46px; height:46px; flex:0 0 auto; border:1px solid var(--ink); border-radius:50%; background:transparent; color:var(--ink); cursor:pointer; font-size:28px; line-height:1; }
.previewNote { margin:12px 0 30px; color:#625f59; font:16px/1.5 Georgia,serif; }
.previewPages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.previewPages img { display:block; width:100%; background:#fff; box-shadow:0 14px 35px rgba(32,28,24,.17); border:1px solid rgba(27,27,25,.12); }
.empty { grid-column:1/-1; padding:60px; text-align:center; font:22px Georgia,serif; }
.promise { background:var(--ink); color:#fff8ed; text-align:center; padding:100px 20px; }
.promise .eyebrow { justify-content:center; color:#ffc0ab; }
blockquote { margin:0; font-size:clamp(44px,6vw,78px); line-height:1.08; letter-spacing:-.03em; }
.principles { display:flex; justify-content:center; gap:6vw; margin-top:60px; }
.principles span { display:flex; align-items:center; gap:12px; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }.principles b{color:var(--coral);font-size:9px}
.fromFeed { padding:110px 6vw; display:grid; grid-template-columns:.65fr 1.35fr; gap:5vw; background:#f0e8dc; }
.feedIntro { align-self:center; }.feedIntro h2 { margin:0 0 25px; font:400 clamp(46px,5vw,72px)/.98 Georgia,serif; letter-spacing:-.045em; }.feedIntro>p:not(.eyebrow){max-width:410px;color:#65645f;font:18px/1.55 Georgia,serif}.feedIntro>a{display:inline-flex;gap:18px;margin-top:16px;border-bottom:1px solid;padding-bottom:8px;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}
.feedGrid { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }.feedGrid img{display:block;width:100%;border:11px solid var(--coral);box-shadow:0 15px 30px rgba(32,28,24,.12)}.feedGrid img:first-child{grid-row:span 2;margin-top:70px}.feedGrid img:nth-child(3){margin-top:0}
.about { padding:110px 8vw; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:8vw; background:#efe8dc; }
.about h2,.faq h2 { margin:0; font:400 clamp(44px,5vw,70px)/1 Georgia,serif; letter-spacing:-.04em; }
.aboutCopy p { font:21px/1.55 Georgia,serif; color:#4f504c; }.aboutCopy a{display:inline-flex;gap:18px;border-bottom:1px solid;padding-bottom:7px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.faq { padding:95px 8vw; display:grid; grid-template-columns:.7fr 1.3fr; gap:7vw; background:#fffaf2; }.faq details{border-top:1px solid rgba(38,49,40,.23);padding:20px 0}.faq details:last-child{border-bottom:1px solid rgba(38,49,40,.23)}.faq summary{display:flex;justify-content:space-between;cursor:pointer;font:20px Georgia,serif;list-style:none}.faq summary span{font:22px Arial}.faq details p{max-width:650px;color:#6a716b;line-height:1.6;margin:14px 35px 0 0}
footer { padding:65px 6vw 30px; background:#f2b09e; display:grid; grid-template-columns:1fr 1fr 1fr; gap:30px; align-items:center; }.footerBrand{justify-self:start}footer>p{font:italic 24px Georgia,serif;text-align:center}footer>div{display:flex;gap:20px;justify-content:flex-end;font-size:10px;text-transform:uppercase;letter-spacing:.1em}footer>small{grid-column:1/-1;border-top:1px solid rgba(38,49,40,.2);padding-top:20px;text-align:center;font-size:9px;letter-spacing:.05em}
@media(max-width:1180px){.productGrid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:800px){.navLinks{display:none}.nav{height:72px}.pillButton.small{min-width:44px;width:44px;height:44px;padding:8px;font-size:0}.hero{grid-template-columns:1fr}.heroCopy{padding:70px 7vw 45px}.heroArt{width:auto;max-width:none;justify-self:stretch;margin:0 5vw 60px;min-height:0}.productGrid{grid-template-columns:1fr}.featuredProduct{grid-column:1;display:flex;padding:14px 0 0}.featuredProduct .productDescription{max-width:none;margin-top:0;font-size:14px}.featuredProduct .productActions{margin-top:auto}.sectionHead{display:block}.sectionHead>p{margin-top:18px}.shop{padding:75px 6vw;border-width:10px}.shopTools{display:block}.search{margin:0 0 32px}.fromFeed,.about,.faq{grid-template-columns:1fr;padding:75px 7vw}.feedGrid{margin-top:20px}.feedGrid img:first-child{margin-top:45px}.principles{flex-direction:column;align-items:center}.faq{gap:35px}footer{grid-template-columns:1fr;text-align:center}footer .footerBrand,footer>p,footer>div{justify-self:center}footer>div{justify-content:center;flex-wrap:wrap}footer>small{grid-column:1}.previewPages{grid-template-columns:1fr}}
@media(max-width:480px){.brand b{display:none}.heroArt{border-radius:180px 8px 8px 8px}.note{top:40%;}.sun{right:3%;}.announcement{font-size:8px}.filters{overflow:auto}.productInfo h3{font-size:22px}}
