:root{--c-gold: #d9a521;--c-gold-hover: #e8bc3e;--c-gold-soft: rgba(217, 165, 33, .14);--c-gold-line: rgba(217, 165, 33, .3);--c-gold-glow: rgba(217, 165, 33, .18);--c-bg: #0b0a07;--c-surface-1: #100e0a;--c-surface-2: #16130d;--c-surface-3: #1d1912;--c-elevated: #221d14;--c-border: rgba(232, 223, 200, .08);--c-border-strong: rgba(217, 165, 33, .28);--c-text: #f4ecd9;--c-text-2: #c4bba6;--c-text-3: #8f8775;--c-on-gold: #15120a;--c-success: #4ade80;--c-error: #f87171;--c-error-soft: rgba(248, 113, 113, .18);--c-scrim: rgba(8, 7, 5, .86);--font-display: "Playfair Display", Georgia, serif;--font-sans: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-display: clamp(3.25rem, 9vw, 8.5rem);--fs-h1: clamp(2.5rem, 5.5vw, 4.25rem);--fs-h2: clamp(2rem, 4vw, 3.25rem);--fs-h3: clamp(1.375rem, 2.4vw, 1.875rem);--fs-lg: clamp(1.0625rem, 1.4vw, 1.25rem);--fs-base: 1rem;--fs-sm: .875rem;--fs-xs: .75rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .55);--shadow-glow: 0 0 40px var(--c-gold-glow);--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur: .25s;--dur-slow: .42s;--container: 1200px;--container-wide: 1320px;--container-narrow: 760px;--container-pad: clamp(20px, 5vw, 48px);--nav-h: 72px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--c-text);background-color:var(--c-bg);line-height:1.65;font-size:var(--fs-base);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.app-wrapper{min-height:100vh;background-color:var(--c-bg);position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.1;color:var(--c-text);letter-spacing:-.01em}h1{font-size:var(--fs-h1);font-weight:800}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}p{font-size:var(--fs-base)}a{color:inherit;text-decoration:none;transition:color var(--dur) var(--ease)}button{font-family:var(--font-sans);cursor:pointer;border:none;background:none;color:inherit}img{max-width:100%;height:auto;display:block}ul{list-style:none}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--c-gold);outline-offset:3px;border-radius: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:0}.skip-link{position:absolute;left:50%;top:-100px;transform:translate(-50%);z-index:1000;background:var(--c-gold);color:var(--c-on-gold);padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:var(--fs-sm);transition:top var(--dur) var(--ease)}.skip-link:focus{top:12px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--container-pad)}.container--wide{max-width:var(--container-wide)}.container--narrow{max-width:var(--container-narrow)}.section{padding-block:clamp(64px,10vw,128px);position:relative}.section--tight{padding-block:clamp(48px,7vw,88px)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold)}.eyebrow:before{content:"";width:24px;height:1px;background:linear-gradient(90deg,transparent,var(--c-gold))}.eyebrow--center:before{display:none}.section-header{display:flex;flex-direction:column;gap:var(--space-4);max-width:640px;margin-bottom:clamp(40px,6vw,64px)}.section-header--center{align-items:center;text-align:center;margin-inline:auto}.section-header__title{font-size:var(--fs-h2);color:var(--c-text)}.section-header__title em,.section-header__title .accent{font-style:italic;color:var(--c-gold)}.section-header__subtitle{font-size:var(--fs-lg);color:var(--c-text-2);line-height:1.6;max-width:56ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:600;font-size:var(--fs-sm);letter-spacing:.04em;line-height:1;padding:14px 26px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),color var(--dur) var(--ease)}.btn:active{transform:translateY(0) scale(.99)}.btn--primary{background:var(--c-gold);color:var(--c-on-gold)}.btn--primary:hover{background:var(--c-gold-hover);transform:translateY(-2px);box-shadow:0 10px 28px #d9a52147}.btn--secondary{background:#f4ecd905;color:var(--c-text);border-color:var(--c-border-strong)}.btn--secondary:hover{border-color:var(--c-gold);color:var(--c-gold);transform:translateY(-2px)}.btn--ghost{background:transparent;color:var(--c-gold);padding-inline:8px}.btn--ghost:hover{color:var(--c-gold-hover)}.btn--lg{padding:17px 34px;font-size:var(--fs-base)}.btn--sm{padding:10px 18px;font-size:var(--fs-xs)}.btn--block{width:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.card{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--radius-lg);transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.card:hover{transform:translateY(-4px);border-color:var(--c-border-strong);box-shadow:var(--shadow-lg)}.glow-accent{position:absolute;border-radius:50%;background:radial-gradient(circle,var(--c-gold-glow) 0%,transparent 70%);filter:blur(40px);pointer-events:none;z-index:0}.section-skeleton{width:100%;min-height:360px;background:linear-gradient(100deg,var(--c-surface-1) 30%,var(--c-surface-2) 50%,var(--c-surface-1) 70%);background-size:200% 100%;animation:shimmer 1.6s var(--ease) infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{width:18px;height:18px;border:2px solid rgba(21,18,10,.3);border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}
