@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500&display=swap');
:root{--cream:#faf8f5;--ink:#1e1b18;--muted:#6b6158;--border:#e8e3dc;--soft:#f1eee9;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}header{height:72px;padding:0 6vw;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:rgba(250,248,245,.95);position:sticky;top:0;z-index:2}header>a:first-child{font:500 24px/1 'Cormorant Garamond',serif}header small{display:block;margin:6px 0 0 28px;color:var(--muted);font:10px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}.button{display:inline-block;border-radius:999px;padding:11px 18px;background:var(--ink);color:var(--white);font-size:13px}.button:hover{opacity:.82}main{max-width:1050px;margin:0 auto;padding:92px 24px 80px}.eyebrow{margin:0 0 18px;color:var(--muted);font-size:12px;letter-spacing:.14em;text-transform:uppercase}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.05}h1{max-width:820px;margin:0 0 24px;font-size:clamp(48px,8vw,88px);letter-spacing:-.025em}h2{font-size:clamp(34px,5vw,54px);margin:0 0 18px}h3{font-size:29px;margin:0 0 10px}.lead{max-width:680px;margin:0 0 30px;color:var(--muted);font-size:19px;line-height:1.55}section{margin-top:110px;max-width:880px}section>p{max-width:760px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.grid article{padding:24px;background:var(--white);border:1px solid var(--border);border-radius:12px}.grid p{margin:0;color:var(--muted);font-size:14px}.soft{padding:36px;border-radius:16px;background:var(--soft)}.soft a{font-size:14px;text-decoration:underline;text-underline-offset:4px}footer{padding:25px 6vw;border-top:1px solid var(--border);color:var(--muted);font-size:12px}footer a{text-decoration:underline}@media(max-width:700px){header{padding:0 18px}header>a:first-child{font-size:21px}header .button{padding:9px 12px;font-size:11px}main{padding:62px 18px 60px}.lead{font-size:17px}.grid{grid-template-columns:1fr}section{margin-top:74px}.soft{padding:26px}}
body.seasonal{--cream:#f8f5ef;--ink:#243229;--muted:#657066;--border:#ded8ca;background:var(--cream)}body.seasonal header{background:rgba(248,245,239,.94);border-bottom-color:#d8d1c1}body.seasonal main{position:relative;overflow:hidden}body.seasonal main::before{content:'✦  ❄  ✦';position:absolute;top:34px;right:7%;color:#c49b55;font-size:20px;letter-spacing:14px;opacity:.7}body.seasonal .eyebrow{color:#9b4540}body.seasonal h1{max-width:780px;color:#26372c}body.seasonal .lead{max-width:700px}body.seasonal .button{background:#9b4540}body.seasonal section:first-of-type{position:relative;padding:46px 42px;border:1px solid #ded2bb;border-radius:18px;background:linear-gradient(135deg,#f3eee3 0%,#fbfaf7 58%,#e8efe7 100%)}body.seasonal section:first-of-type::after{content:'❋';position:absolute;right:30px;bottom:18px;color:#b18a4b;font-size:54px;opacity:.28}body.seasonal section:first-of-type h2{color:#2e4936}body.seasonal .grid article{background:rgba(255,255,255,.66);border-color:#e0d6c5}body.seasonal .grid article:nth-child(2){border-top:3px solid #b18a4b}body.seasonal .soft{background:#2f4938;color:#fff;border:0}body.seasonal .soft p{color:rgba(255,255,255,.75)}body.seasonal .soft a{color:#f0d69f}@media(max-width:700px){body.seasonal section:first-of-type{padding:28px 22px}}
body.seasonal header{position:relative}
body.seasonal .seasonal-hero-image{position:absolute;z-index:0;top:110px;right:0;width:45%;height:520px;overflow:hidden;border-radius:24px 0 0 24px;box-shadow:0 24px 55px rgba(50,35,20,.18)}
body.seasonal .seasonal-hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,245,239,.08),transparent 35%,rgba(24,37,28,.08))}
body.seasonal .seasonal-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}
body.seasonal main>.eyebrow,body.seasonal main>h1,body.seasonal main>.lead,body.seasonal main>.button{position:relative;z-index:1;max-width:54%}
body.seasonal header::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:linear-gradient(90deg,#9b4540 0 34%,#c49b55 34% 67%,#2f4938 67%)}
body.seasonal main{max-width:1160px;padding-top:118px;background:radial-gradient(circle at 84% 9%,rgba(196,155,85,.14),transparent 22%),radial-gradient(circle at 4% 42%,rgba(47,73,56,.08),transparent 24%)}
body.seasonal main::before{top:42px;right:9%;font-size:18px;letter-spacing:18px}
body.seasonal main::after{content:'❄';position:absolute;top:76px;right:3%;color:#9b4540;font-size:126px;line-height:1;opacity:.07;transform:rotate(12deg)}
body.seasonal .eyebrow{display:flex;align-items:center;gap:10px;font-weight:500}
body.seasonal .eyebrow::before{content:'✦';color:#c49b55;font-size:15px}
body.seasonal h1{max-width:850px;font-size:clamp(58px,8vw,104px);letter-spacing:-.045em;text-wrap:balance}
body.seasonal .lead{font-size:20px;line-height:1.55}
body.seasonal main>.button{box-shadow:0 10px 20px rgba(155,69,64,.16)}
body.seasonal section:first-of-type{margin-top:108px;padding:56px 48px;box-shadow:0 18px 45px rgba(41,57,45,.08)}
body.seasonal section:first-of-type h2{max-width:680px}
body.seasonal .grid{gap:16px}
body.seasonal .grid article{min-height:154px;transition:transform .25s ease,box-shadow .25s ease}
body.seasonal .grid article:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(41,57,45,.1)}
body.seasonal .grid article:nth-child(1){border-top:3px solid #9b4540}
body.seasonal .grid article:nth-child(3){border-top:3px solid #2f4938}
body.seasonal .soft{position:relative;overflow:hidden;box-shadow:0 18px 40px rgba(41,57,45,.12)}
body.seasonal .soft::after{content:'✦  ❄  ✦';position:absolute;right:28px;bottom:20px;color:#e2c98c;font-size:32px;letter-spacing:8px;opacity:.45}
@media(max-width:700px){body.seasonal main{padding-top:84px}body.seasonal .seasonal-hero-image{position:relative;top:auto;right:auto;width:100%;height:300px;margin:0 0 38px;border-radius:18px;order:-1}body.seasonal main>.eyebrow,body.seasonal main>h1,body.seasonal main>.lead,body.seasonal main>.button{max-width:100%}body.seasonal h1{font-size:56px}body.seasonal .lead{font-size:17px}body.seasonal section:first-of-type{margin-top:78px;padding:30px 22px}body.seasonal main::after{font-size:90px;top:48px}}
