@tailwind base;@tailwind components;@tailwind utilities;:root{--color-russian-violet:#150337;--color-misty-rose:#ffd9da;--color-warm-ivory:#f8f4ec;--color-antique-gold:#907744;--color-magenta:#c71585;--color-primary:var(--color-russian-violet);--color-accent:var(--color-magenta);--color-soft:var(--color-misty-rose);--color-background:var(--color-warm-ivory);--color-gold:var(--color-antique-gold);--color-text-primary:var(--color-russian-violet);--color-text-secondary:#4a4a4a;--color-text-light:#ffffff;--color-text-gold:var(--color-antique-gold);--font-size-hero:clamp(3rem,8vw,5.5rem);--font-size-h1:clamp(2.5rem,5vw,4rem);--font-size-h2:clamp(2rem,4vw,3rem);--font-size-h3:clamp(1.5rem,3vw,2.25rem);--font-size-h4:clamp(1.25rem,2.5vw,1.75rem);--font-size-body-large:1.25rem;--font-size-body:1.125rem;--font-size-small:0.975rem;--font-serif:"Noto Serif Display",Georgia,serif;--font-sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-2xl:6rem;--spacing-3xl:8rem;--spacing-section:clamp(5rem,10vw,8rem);--container-max:1400px;--container-wide:1600px;--container-narrow:1000px;--shadow-sm:0 2px 8px rgba(21,3,55,0.08);--shadow-md:0 4px 20px rgba(21,3,55,0.12);--shadow-lg:0 10px 40px rgba(21,3,55,0.15);--shadow-xl:0 20px 60px rgba(21,3,55,0.2);--transition-fast:200ms ease;--transition-base:300ms ease;--transition-slow:500ms ease;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--font-size-body);line-height:1.7;color:var(--color-text-primary);background-color:var(--color-warm-ivory);min-height:100vh;overflow-x:hidden}.admin-shell,.admin-shell button,.admin-shell input,.admin-shell select,.admin-shell textarea{font-family:var(--font-sans)}.admin-shell{--heading-font-family:var(--font-sans);--heading-margin-bottom:0;--paragraph-margin-bottom:0;--link-color:inherit;--link-hover-color:inherit}*{cursor:auto}[role=button],a,button,input[type=button],input[type=submit]{cursor:pointer}h1,h2,h3,h4,h5,h6{font-family:var(--heading-font-family,var(--font-serif));font-weight:700;line-height:1.2;color:var(--color-text-primary);margin-bottom:var(--heading-margin-bottom,var(--spacing-md))}h1{font-size:var(--font-size-h1);letter-spacing:-.02em}h2{font-size:var(--font-size-h2);letter-spacing:-.01em}h3{font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}.hero-title{font-size:var(--font-size-hero);font-weight:800;line-height:1.1;letter-spacing:-.03em;margin-bottom:var(--spacing-lg)}.subtitle{font-size:var(--font-size-body-large);font-weight:500;line-height:1.6;color:var(--color-text-secondary)}.eyebrow,.subtitle{font-family:var(--font-sans)}.eyebrow{font-size:var(--font-size-small);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--paragraph-margin-bottom,var(--spacing-md))}a{color:var(--link-color,var(--color-accent));text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--link-hover-color,var(--color-primary))}b,strong{font-weight:600;color:var(--color-primary)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--spacing-md)}.container-wide{max-width:var(--container-wide)}.container-narrow{max-width:var(--container-narrow)}.section{padding:var(--spacing-section) 0;position:relative}.section-light{background-color:var(--color-warm-ivory)}.section-dark{background-color:var(--color-primary)}.section-dark,.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4,.section-dark p{color:var(--color-text-light)}.section-accent{background-color:var(--color-misty-rose)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:.95rem;font-weight:600;letter-spacing:.05em;text-transform:none;padding:1.25rem 2.75rem;border:none;border-radius:999px;transition:transform var(--transition-base),box-shadow var(--transition-base),color var(--transition-base),background var(--transition-base);cursor:pointer;text-align:center;position:relative;overflow:hidden;isolation:isolate}.btn-gold,.btn-primary{background:linear-gradient(120deg,#907744,#ad9361 55%,#8a7244);color:var(--color-text-light);box-shadow:0 18px 36px rgba(144,119,68,.35)}.btn-gold:before,.btn-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%);opacity:0;transform:translateX(-60%);transition:transform .6s ease,opacity .6s ease;mix-blend-mode:screen;z-index:0}.btn-gold:hover,.btn-primary:hover{transform:translateY(-3px);box-shadow:0 22px 40px rgba(144,119,68,.4)}.btn-gold:hover:before,.btn-primary:hover:before{opacity:1;transform:translateX(60%)}.btn-gold:focus-visible,.btn-primary:focus-visible{outline:3px solid rgba(144,119,68,.35);outline-offset:4px}.btn-secondary{background:transparent;color:var(--color-antique-gold);border:2px solid rgba(144,119,68,.6);box-shadow:none}.btn-secondary:hover{background:rgba(144,119,68,.12);color:var(--color-antique-gold);border-color:var(--color-antique-gold)}.btn-large{padding:1.5rem 3.25rem;font-size:1.125rem;letter-spacing:.1em}.btn-outline-gold{background:transparent!important;color:var(--color-antique-gold);border:2px solid var(--color-antique-gold);box-shadow:none!important}.btn-outline-gold:before{display:none}.btn-outline-gold:hover{background:rgba(144,119,68,.1)!important;color:var(--color-antique-gold);border-color:var(--color-antique-gold);transform:translateY(-2px)}.form-group{margin-bottom:var(--spacing-md)}label{display:block;font-family:var(--font-sans);font-size:var(--font-size-small);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}input[type=email],input[type=tel],input[type=text],select,textarea{width:100%;padding:1rem;font-family:var(--font-body);font-size:1rem;border:2px solid transparent;background-color:white;border-radius:var(--radius-sm);transition:all var(--transition-base)}input[type=email]:focus,input[type=tel]:focus,input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-magenta);box-shadow:0 0 0 3px rgba(199,21,133,.1)}.card{background:white;border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.mt-5{margin-top:var(--spacing-2xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}.mb-5{margin-bottom:var(--spacing-2xl)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing-sm)}.pt-2{padding-top:var(--spacing-md)}.pt-3{padding-top:var(--spacing-lg)}.pt-4{padding-top:var(--spacing-xl)}.pt-5{padding-top:var(--spacing-2xl)}.pb-0{padding-bottom:0}.pb-1{padding-bottom:var(--spacing-sm)}.pb-2{padding-bottom:var(--spacing-md)}.pb-3{padding-bottom:var(--spacing-lg)}.pb-4{padding-bottom:var(--spacing-xl)}.pb-5{padding-bottom:var(--spacing-2xl)}.fade-in{animation:fadeIn .8s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){:root{--spacing-section:clamp(3rem,8vw,5rem)}.container{padding:0 var(--spacing-sm)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.btn{width:100%}.hero-title{text-align:center}}@media (min-width:769px) and (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media print{body{font-size:12pt;line-height:1.5;color:black;background:white}.section{page-break-inside:avoid}.btn{display:none}}