@tailwind base;@tailwind components;@tailwind utilities;:root{--color-brand-primary:#22556e;--color-brand-primary-light:#3a7a9a;--color-brand-primary-dark:#1a3f52;--color-brand-secondary:#d77d37;--color-brand-secondary-light:#e89a5a;--color-brand-secondary-dark:#b85a1a;--color-brand-accent:#408294;--color-brand-accent-light:#5a9baf;--color-brand-accent-dark:#2e5f6f;--color-base-bg:#fff;--color-base-surface:#f5f5f5;--color-base-surface-alt:#f8f9fa;--color-base-content:#22313a;--color-base-muted:#8a9da4;--color-base-border:#e2e8f0;--color-base-border-alt:#e9ecef;--color-base-ring:var(--color-brand-primary);--color-success:#16a34a;--color-warning:#f59e0b;--color-danger:#dc2626;--color-info:#408294;--font-heading:"Georgia","Times New Roman","Times",serif;--font-body:"Georgia","Times New Roman","Times",serif;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px rgba(0,0,0,.07);--shadow-lg:0 10px 15px rgba(0,0,0,.1);--shadow-xl:0 20px 25px rgba(0,0,0,.1);--shadow-card:0 6px 20px rgba(0,0,0,.06);--shadow-card-hover:0 8px 30px rgba(0,0,0,.12);--transition-fast:150ms ease-in-out;--transition-base:200ms ease-in-out;--transition-slow:300ms ease-in-out}@layer base{html{font-size:100%;scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--color-base-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,h1,h2,h3,h4,h5,h6{color:var(--color-base-content)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-semibold);line-height:1.3}h1{font-size:2.75rem;line-height:1.2}h2{font-size:2.25rem;line-height:1.22}h3{font-size:1.75rem;line-height:1.28}h4{font-size:1.375rem;line-height:1.3}h5{font-size:1.125rem;line-height:1.35}h6{font-size:1rem;line-height:1.4}@media (max-width:768px){h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}}:focus-visible{outline:2px solid var(--color-base-ring);outline-offset:2px}button:focus:not(:focus-visible){outline:none}}@layer components{.focus-ring{@apply outline-none}.focus-ring:focus-visible{outline:2px solid var(--color-base-ring);outline-offset:2px}.btn-primary{background-color:var(--color-brand-primary);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-brand-primary-dark);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(1px);box-shadow:var(--shadow-sm)}.btn-primary:focus-visible{outline:2px solid var(--color-base-ring);outline-offset:2px}.btn-secondary{background-color:transparent;border:2px solid var(--color-brand-primary);color:var(--color-brand-primary);padding:.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:all var(--transition-base)}.btn-secondary:hover{background-color:var(--color-brand-primary);color:#fff}.btn-secondary:focus-visible{outline:2px solid var(--color-base-ring);outline-offset:2px}.card-surface{background-color:var(--color-base-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-xl);transition:box-shadow var(--transition-base)}.card-surface:hover{box-shadow:var(--shadow-card-hover)}}