:root{--cream:#fff8f0;--ink:#2b1a22;--plum:#5b2333;--terra:#c96f4a;--gold:#d9a441;--sage:#7d8b6f;--line:#ead9c8}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
h1,h2,h3,.brand-name{font-family:Georgia,"Times New Roman",serif;line-height:1.05;letter-spacing:-.02em}
h1{font-size:clamp(3rem,7vw,5.4rem);margin:.4rem 0 1rem}h1 em,h2 em,.brand-name em{color:var(--terra);font-style:italic}
h2{font-size:clamp(2rem,4.5vw,3.4rem);margin:.4rem 0 1rem}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:var(--terra)}
.lede{font-size:1.18rem;max-width:34rem}
.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem clamp(1rem,4vw,3rem);background:rgba(255,248,240,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.7rem}.brand-mark{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--plum);color:#fff;font-family:Georgia,serif;font-size:1.5rem}
.brand-name{font-size:1.35rem;line-height:1}.brand-name em{display:block;font-size:.95rem}
nav{display:flex;gap:1.4rem;font-weight:600}nav a:hover{color:var(--terra)}
.btn{display:inline-block;background:var(--plum);color:#fff;padding:.85rem 1.4rem;border-radius:999px;font-weight:700;box-shadow:0 8px 20px rgba(91,35,51,.25)}
.btn:hover{transform:translateY(-1px)}.btn.ghost{background:transparent;color:var(--plum);box-shadow:inset 0 0 0 2px var(--plum)}
.btn.small{padding:.6rem 1rem;font-size:.9rem;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center;padding:clamp(2rem,5vw,4.5rem) clamp(1rem,4vw,3rem)}
.hero-cta{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.6rem 0}
.hero-stats{display:flex;gap:2.2rem;border-top:1px solid var(--line);padding-top:1.2rem}.hero-stats strong{display:block;font-family:Georgia,serif;font-size:1.7rem;line-height:1}.hero-stats span{font-size:.85rem;color:#6b5560}
.hero-media{position:relative}.hero-media img{width:100%;height:560px;object-fit:cover;border-radius:28px 120px 28px 28px;box-shadow:0 24px 50px rgba(43,26,34,.25)}
.hero-card{position:absolute;left:-1.2rem;bottom:2rem;background:#fff;padding:1rem 1.3rem;border-radius:16px;box-shadow:0 16px 30px rgba(0,0,0,.18)}.card-label{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--terra);font-weight:800}.card-text{margin:.2rem 0 0;font-family:Georgia,serif;font-size:1.15rem;line-height:1.3}
.hero-sticker{position:absolute;top:1rem;right:1rem;background:var(--gold);padding:.5rem .9rem;border-radius:999px;font-weight:800;transform:rotate(4deg);box-shadow:0 8px 18px rgba(0,0,0,.2)}
.marquee{overflow:hidden;background:var(--plum);color:#ffe9d6;padding:.7rem 0;font-family:Georgia,serif;font-size:1.2rem;white-space:nowrap}.marquee span{display:inline-block;animation:scroll 28s linear infinite}@keyframes scroll{to{transform:translateX(-100%)}}
.section{padding:clamp(3rem,6vw,5rem) clamp(1rem,4vw,3rem);max-width:1280px;margin:0 auto}
.section.tint{background:#fbeedf;border-radius:32px;margin-top:1rem;margin-bottom:1rem}
.section-head{max-width:42rem;margin-bottom:2rem}.section-head p:last-child{font-size:1.1rem;color:#5d4a53}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:1rem}
.cat-card{position:relative;overflow:hidden;border-radius:22px;display:block}.cat-card.tall{grid-row:span 2}.cat-card.wide{grid-column:span 2}
.cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.cat-card:hover img{transform:scale(1.06)}
.cat-label{position:absolute;left:.9rem;bottom:.9rem;right:.9rem;background:rgba(255,248,240,.94);border-radius:14px;padding:.7rem .9rem}.cat-label strong{display:block;font-family:Georgia,serif;font-size:1.25rem;line-height:1.1}.cat-label span{font-size:.85rem;color:#6b5560}
.filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.5rem}.filter{border:1px solid #d8c3ae;background:#fff;padding:.55rem 1.1rem;border-radius:999px;font-weight:700;cursor:pointer}.filter.active{background:var(--plum);color:#fff;border-color:var(--plum)}
.find-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.find{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 24px rgba(43,26,34,.08)}.find img{width:100%;height:220px;object-fit:cover}.find>div{padding:1.1rem 1.2rem 1.3rem}.find h3{margin:.5rem 0 .3rem;font-size:1.35rem}.find p{margin:0;color:#5d4a53}
.tag{display:inline-block;background:#fbeedf;color:var(--plum);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px}
.note{margin-top:1.5rem;color:#6b5560;font-style:italic}
.section.dark{background:var(--plum);color:#fff;border-radius:32px;max-width:1280px}.section.dark .eyebrow{color:#f0b27a}.section.dark .section-head p:last-child{color:#e8d3d8}
.steps{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.steps li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:1.4rem}.step-num{font-family:Georgia,serif;font-size:2rem;color:var(--gold)}.steps h3{margin:.4rem 0}
.about{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.about-media img{width:100%;height:420px;object-fit:cover;border-radius:120px 28px 28px 28px}.signature{font-family:Georgia,serif;font-size:1.5rem;color:var(--terra)}
footer{background:var(--ink);color:#f5e8dc;text-align:center;padding:3rem 1rem}.foot-brand{font-family:Georgia,serif;font-size:2rem}.foot-brand em{color:#f0b27a}.foot-small{opacity:.7;font-size:.9rem}
@media(max-width:900px){
  nav{display:none}.hero{grid-template-columns:1fr}.hero-media img{height:420px}.cat-grid{grid-template-columns:repeat(2,1fr)}.cat-card.wide{grid-column:span 2}.find-grid{grid-template-columns:1fr 1fr}.steps,.about{grid-template-columns:1fr}.hero-card{left:.8rem}
}
@media(max-width:560px){.cat-grid,.find-grid{grid-template-columns:1fr}.cat-card.tall{grid-row:auto}.cat-card.wide{grid-column:auto}.btn.small{display:none}.hero-media img{height:340px}}
