:root{--primary: #1a2b22;--secondary: #d97757;--bg-sand: #f9f5f0;--bg-white: #ffffff;--text-dark: #1a2b22;--text-light: #fefefe;--text-muted: #6b7280;--accent-soft: #e5e7eb;--font-main: "Plus Jakarta Sans", sans-serif;--font-serif: "Playfair Display", serif;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 32px;--radius-xl: 60px;--container-width: 1200px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-main);background-color:var(--bg-sand);color:var(--text-dark);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500}h1{font-size:3.5rem}h2{font-size:2.8rem}h3{font-size:2.2rem}h4{font-size:1.5rem}a{text-decoration:none;color:inherit;transition:opacity .3s ease}a:hover{opacity:.8}button{cursor:pointer;border:none;outline:none;font-family:var(--font-main);transition:transform .2s ease,background-color .3s ease}button:active{transform:scale(.98)}.container{max-width:var(--container-width);margin:0 auto;padding:0 2rem}.section{padding:5rem 0}.btn-primary{background-color:var(--secondary);color:#fff;padding:1.1rem 2.8rem;border-radius:var(--radius-xl);font-weight:600}.btn-secondary{background-color:#fff;color:var(--primary);padding:1.1rem 2.8rem;border-radius:var(--radius-xl);font-weight:600;display:inline-block;text-align:center}.btn-outline{background-color:transparent;border:1px solid var(--primary);color:var(--primary);padding:.8rem 2rem;border-radius:var(--radius-xl);font-weight:600}.text-italic{font-style:italic;font-family:var(--font-serif)}:focus-visible{outline:3px solid var(--secondary);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--secondary);color:#fff;padding:8px;z-index:1000;transition:top .2s;text-decoration:none;font-weight:600}.skip-link:focus{top:0}.badge{display:inline-block;padding:.4rem 1rem;background:#1a2b220d;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);margin-bottom:1rem}
