@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&family=DM+Sans:wght@300;400;500&display=swap");:root{--ink:#0f0f0f;--paper:#f4f1eb;--accent:#c8502a;--accent-light:#e8d5cb;--mid:#6b6560;--white:#fff;--rule:hsla(0,0%,6%,.12);--card-bg:#fff;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-40:40px;--space-48:48px;--space-60:60px;--space-80:80px;--space-96:96px;--radius-sm:2px;--radius-md:4px;--radius-lg:8px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.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}.skip-link{position:absolute;top:-100%;left:var(--space-16);background:var(--accent);color:var(--white);padding:var(--space-8) var(--space-16);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;text-decoration:none;z-index:9999;transition:top .2s}.skip-link:focus{top:var(--space-16)}.text-display-xl{font-size:clamp(4rem,10vw,7.5rem);letter-spacing:-.03em}.text-display-l,.text-display-xl{font-family:var(--serif);font-weight:900;line-height:.95}.text-display-l{font-size:clamp(3rem,7vw,6rem);letter-spacing:-.025em}.text-display-m{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:900;line-height:1;letter-spacing:-.02em}.text-heading-xl{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.02em}.text-heading-l,.text-heading-xl{font-family:var(--serif);font-weight:700;line-height:1.1}.text-heading-l{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.015em}.text-heading-m{font-family:var(--serif);font-size:1.35rem;font-weight:700;line-height:1.2;letter-spacing:-.01em}.text-body-l{font-family:var(--sans);font-size:1.05rem;line-height:1.85}.text-body-m{font-family:var(--sans);font-size:.95rem;line-height:1.75}.text-body-s{font-family:var(--sans);font-size:.875rem;line-height:1.65}.text-label{font-size:.75rem;letter-spacing:.06em}.text-eyebrow,.text-label{font-family:var(--sans);font-weight:500;text-transform:uppercase}.text-eyebrow{font-size:.688rem;letter-spacing:.14em}.container{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--space-48)}@media (max-width:1250px){.container{padding:0 var(--space-40)}}@media (max-width:920px){.container{padding:0 var(--space-24)}}@media (max-width:390px){.container{padding:0 var(--space-16)}}.btn{display:inline-flex;align-items:center;gap:var(--space-8);padding:.875rem 2rem;font-family:var(--sans);font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;transition:all .22s ease;white-space:nowrap}.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.btn-primary{background:var(--accent);color:var(--white);border-color:var(--accent)}.btn-primary:hover{background:transparent;color:var(--accent)}.btn-ghost{background:transparent;color:var(--paper);border-color:hsla(40,29%,94%,.35)}.btn-ghost:hover{border-color:var(--paper)}.btn-ink{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn-ink:hover{background:transparent;color:var(--ink)}.btn-white{background:var(--white);color:var(--accent);border-color:var(--white)}.btn-white:hover{background:transparent;color:var(--white)}.section-label{display:flex;align-items:center;gap:var(--space-16);font-size:.688rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-12)}.section-label:after{content:"";flex:1 1;height:1px;background:var(--rule);max-width:60px}.tag{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;letter-spacing:.02em;white-space:nowrap}.tag-filled{background:var(--ink);color:var(--paper)}.tag-outlined{background:transparent;color:var(--ink);border:1.5px solid var(--rule)}.tag-accent{background:var(--accent-light);color:var(--accent)}