@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap");:root{--bg:#f7f4ef;--bg-warm:#f0ebe3;--bg-dark:#1e1a17;--text:#2f2b28;--text-mid:#6b635b;--text-light:#9b918a;--accent:#a07c5a;--accent-dark:#7a5e40;--accent-light:#c9a882;--white:#fdfaf7;--border:#e2dad0;--font-display:"Playfair Display",Georgia,serif;--font-body:"Inter",system-ui,sans-serif;--max-width:1200px;--gutter:clamp(1.25rem,5vw,3rem);--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--shadow-sm:0 1px 3px rgba(47,43,40,.08);--shadow-md:0 4px 16px rgba(47,43,40,.1);--shadow-lg:0 12px 40px rgba(47,43,40,.14);--transition:0.22s ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-weight:400;line-height:1.7}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit}.display{font-size:clamp(2.4rem,5vw,4rem);line-height:1.15;letter-spacing:-.02em}.display,.display-sm{font-family:var(--font-display);font-weight:500}.display-sm{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;letter-spacing:-.01em}.heading{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:500;line-height:1.25}.subheading{font-family:var(--font-body);font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.body-lg{font-size:1.05rem;line-height:1.75}.body{font-size:.95rem;line-height:1.7}.caption{font-size:.8rem;color:var(--text-mid)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.section{padding:clamp(3rem,8vw,6rem) var(--gutter)}.section-sm{padding:clamp(2rem,5vw,3.5rem) var(--gutter)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.6rem;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.85rem;font-weight:600;letter-spacing:.04em;transition:all var(--transition)}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{border:1.5px solid var(--accent);color:var(--accent)}.btn-outline:hover{background:var(--accent);color:var(--white)}.btn-ghost{color:var(--text-mid);padding:.75rem 0}.btn-ghost:hover{color:var(--accent)}.card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.divider{height:1px;background:var(--border);margin:0}.tag{display:inline-block;padding:.25rem .75rem;background:var(--bg-warm);border:1px solid var(--border);border-radius:100px;font-size:.75rem;font-weight:500;color:var(--text-mid)}.affiliate-note{font-size:.75rem;color:var(--text-light);font-style:italic}.prose h2{font-size:1.6rem;margin:2.5rem 0 1rem}.prose h2,.prose h3{font-family:var(--font-display);font-weight:500;color:var(--text)}.prose h3{font-size:1.2rem;margin:2rem 0 .75rem}.prose p{margin-bottom:1.25rem;color:var(--text-mid);line-height:1.8}.prose ul{margin:1rem 0 1.5rem 1.5rem;list-style:disc}.prose li{margin-bottom:.5rem;color:var(--text-mid)}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.prose strong{color:var(--text);font-weight:600}.text-center{text-align:center}.text-accent{color:var(--accent)}.text-mid{color:var(--text-mid)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.w-full{width:100%}.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}