.skip-link{position:absolute;top:-40px;left:6px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));padding:8px;text-decoration:none;border-radius:0 0 4px 4px;z-index:10000;font-weight:var(--weight-semibold);transition:top .3s}.skip-link:focus{top:0}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:hsl(var(--background) / .95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid hsl(var(--border));transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--elevation-1)}.header.scrolled{background:hsl(var(--background) / .98);box-shadow:var(--elevation-2)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;min-height:80px}.logo{text-decoration:none;color:var(--deep-coffee)}.logo h1{font-size:2rem;font-weight:var(--weight-bold);margin:0;color:var(--primary-brown);letter-spacing:var(--letter-spacing-tight);text-shadow:0 1px 2px rgba(107,68,35,.1)}.tagline{font-size:.875rem;color:var(--charcoal);font-weight:var(--weight-medium);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase}.nav{display:none}.nav-list{display:flex;list-style:none;gap:var(--spacing-lg);margin:0;padding:0}.nav-link{font-weight:var(--weight-medium);color:hsl(var(--foreground));text-decoration:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;letter-spacing:var(--letter-spacing-wide)}.nav-link:hover{color:hsl(var(--primary));background:hsl(var(--accent) / .1);transform:translateY(-1px);box-shadow:var(--elevation-1)}.nav-link.active{color:hsl(var(--primary));font-weight:600}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:20px;height:2px;background:hsl(var(--accent));border-radius:1px}.menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);color:var(--charcoal);transition:all .3s ease}.menu-toggle:hover{background:var(--soft-beige);color:var(--primary-brown)}@media (min-width: 768px){.nav{display:block}.menu-toggle{display:none}}@media (max-width: 767px){.nav{position:absolute;top:100%;left:0;right:0;background:var(--warm-white);border-top:1px solid rgba(139,69,19,.1);box-shadow:var(--shadow-medium);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease}.nav.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-list{flex-direction:column;padding:var(--spacing-md);gap:var(--spacing-xs)}.nav-link{display:block;padding:var(--spacing-sm);border-radius:var(--radius-md)}}.footer{background:var(--deep-coffee);color:var(--warm-cream);padding:var(--spacing-2xl) 0 var(--spacing-lg);margin-top:auto}.footer-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.footer-section h3{color:var(--gold-accent);font-size:1.5rem;margin-bottom:var(--spacing-sm)}.footer-section h4{color:var(--warm-cream);font-size:1.125rem;margin-bottom:var(--spacing-sm)}.footer-section p{color:var(--warm-cream);opacity:.9;line-height:1.6}.contact-info{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-item{display:flex;align-items:flex-start;gap:var(--spacing-xs);color:var(--warm-cream);opacity:.9}.contact-item svg{color:var(--gold-accent);margin-top:2px;flex-shrink:0}.social-links{display:flex;flex-direction:column;gap:var(--spacing-sm)}.social-link{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--warm-cream);text-decoration:none;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all .3s ease;width:fit-content}.social-link:hover{color:var(--gold-accent);background:#daa5201a}.social-link svg{color:var(--gold-accent)}.footer-bottom{border-top:1px solid rgba(245,245,220,.2);padding-top:var(--spacing-lg);text-align:center}.footer-bottom p{color:var(--warm-cream);opacity:.8;font-size:.875rem;margin-bottom:var(--spacing-xs)}.footer-bottom p:last-child{margin-bottom:0}@media (min-width: 768px){.footer-content{grid-template-columns:2fr 1fr 1fr;gap:var(--spacing-2xl)}.social-links{flex-direction:row;gap:var(--spacing-md)}.footer-bottom{display:flex;justify-content:space-between;align-items:center}.footer-bottom p{margin-bottom:0}}.scroll-to-top{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);width:50px;height:50px;background:var(--primary-brown);color:var(--warm-white);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-medium);z-index:var(--z-fixed);transition:all var(--transition-base)}.scroll-to-top:hover{background:var(--deep-coffee);box-shadow:var(--shadow-strong)}.scroll-to-top:focus{outline:3px solid var(--gold-accent);outline-offset:2px}@media (max-width: 768px){.scroll-to-top{bottom:var(--spacing-md);right:var(--spacing-md);width:45px;height:45px}}.loading-container{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:var(--spacing-2xl)}.loading-content{text-align:center;max-width:300px}.loading-spinner{position:relative;width:80px;height:80px;margin:0 auto var(--spacing-lg)}.spinner-ring{position:absolute;top:0;left:0;width:100%;height:100%;border:3px solid transparent;border-top:3px solid var(--primary-brown);border-radius:50%}.spinner-ring-2{width:60px;height:60px;top:10px;left:10px;border-top:3px solid var(--gold-accent)}.loading-message{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--charcoal);margin-bottom:var(--spacing-md)}.loading-dots{display:flex;justify-content:center;gap:var(--spacing-xs)}.loading-dots span{width:8px;height:8px;background:var(--gold-accent);border-radius:50%;display:block}@media (prefers-reduced-motion: reduce){.spinner-ring{animation:none;border:3px solid var(--primary-brown);border-top:3px solid transparent}.loading-dots span{animation:none}}.App{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-exit{opacity:1;transform:translateY(0)}.page-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease}:root{--background: 39 100% 97%;--foreground: 210 29% 24%;--card: 39 100% 99%;--card-foreground: 210 29% 24%;--popover: 39 100% 97%;--popover-foreground: 210 29% 24%;--primary: 28 76% 52%;--primary-foreground: 39 100% 97%;--secondary: 44 89% 53%;--secondary-foreground: 210 29% 24%;--muted: 204 8% 95%;--muted-foreground: 210 29% 40%;--accent: 24 100% 41%;--accent-foreground: 39 100% 97%;--destructive: 0 70% 55%;--destructive-foreground: 0 0% 98%;--border: 39 50% 90%;--input: 39 50% 88%;--ring: 28 76% 52%;--chart-1: 28 76% 52%;--chart-2: 44 89% 53%;--chart-3: 24 100% 41%;--chart-4: 39 100% 85%;--chart-5: 204 8% 75%;--radius: .75rem;--primary-brown: hsl(var(--primary));--primary-brown-light: hsl(28 76% 65%);--primary-brown-dark: hsl(var(--accent));--primary-brown-subtle: hsl(var(--secondary));--deep-coffee: hsl(var(--foreground));--warm-cream: hsl(var(--background));--soft-beige: hsl(var(--secondary));--warm-white: hsl(var(--card));--pure-white: hsl(0 0% 100%);--charcoal: hsl(var(--foreground));--charcoal-light: hsl(210 29% 35%);--charcoal-subtle: hsl(var(--muted-foreground));--light-gray: hsl(var(--muted));--medium-gray: hsl(var(--border));--dark-gray: hsl(210 29% 30%);--accent-bronze: hsl(var(--accent));--accent-bronze-light: hsl(24 100% 55%);--accent-bronze-dark: hsl(24 100% 35%);--accent-bronze-muted: hsl(var(--muted));--accent-bronze-whisper: hsl(39 100% 95%);--gold-accent: hsl(var(--secondary));--gold-accent-light: hsl(44 89% 65%);--gold-accent-dark: hsl(44 89% 45%);--gold-accent-subtle: hsl(39 100% 95%);--focus-bronze: hsl(var(--ring));--success: hsl(120 60% 45%);--warning: hsl(44 89% 53%);--error: hsl(var(--destructive));--info: hsl(210 70% 55%);--energy-orange: hsl(28 76% 52%);--sunshine-yellow: hsl(44 89% 53%);--deep-amber: hsl(24 100% 41%);--fresh-green: hsl(120 60% 45%);--warm-red: hsl(0 70% 55%);--cream-white: hsl(39 100% 97%);--charcoal-blue: hsl(210 29% 24%)}@media (prefers-color-scheme: dark){:root{--background: 210 15% 8%;--foreground: 39 50% 90%;--card: 210 12% 12%;--card-foreground: 39 50% 90%;--popover: 210 15% 8%;--popover-foreground: 39 50% 90%;--primary: 28 70% 65%;--primary-foreground: 210 15% 8%;--secondary: 44 60% 25%;--secondary-foreground: 39 50% 90%;--muted: 210 8% 18%;--muted-foreground: 39 30% 70%;--accent: 24 80% 55%;--accent-foreground: 210 15% 8%;--destructive: 0 65% 65%;--destructive-foreground: 0 0% 98%;--border: 210 8% 25%;--input: 210 8% 25%;--ring: 28 70% 65%;--chart-1: 28 70% 65%;--chart-2: 44 60% 60%;--chart-3: 24 80% 55%;--chart-4: 39 40% 40%;--chart-5: 210 15% 50%}}:root{--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--font-mono: "Fira Code", monospace;--weight-light: 300;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--spacing-0: 0;--spacing-px: 1px;--spacing-0-5: .125rem;--spacing-1: .25rem;--spacing-1-5: .375rem;--spacing-2: .5rem;--spacing-2-5: .625rem;--spacing-3: .75rem;--spacing-3-5: .875rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-9: 2.25rem;--spacing-10: 2.5rem;--spacing-11: 2.75rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-28: 7rem;--spacing-32: 8rem;--spacing-xs: var(--spacing-2);--spacing-sm: var(--spacing-4);--spacing-md: var(--spacing-6);--spacing-lg: var(--spacing-8);--spacing-xl: var(--spacing-12);--spacing-2xl: var(--spacing-16);--spacing-3xl: var(--spacing-20);--spacing-4xl: var(--spacing-24);--shadow-xs: 0 1px 2px 0 rgba(44, 24, 16, .04);--shadow-sm: 0 1px 3px 0 rgba(44, 24, 16, .08), 0 1px 2px 0 rgba(44, 24, 16, .04);--shadow-soft: 0 2px 8px rgba(44, 24, 16, .08);--shadow-medium: 0 4px 16px rgba(44, 24, 16, .12);--shadow-lg: 0 10px 15px -3px rgba(44, 24, 16, .08), 0 4px 6px -2px rgba(44, 24, 16, .04);--shadow-xl: 0 20px 25px -5px rgba(44, 24, 16, .08), 0 10px 10px -5px rgba(44, 24, 16, .03);--shadow-strong: 0 8px 32px rgba(44, 24, 16, .15);--shadow-inner: inset 0 2px 4px 0 rgba(44, 24, 16, .04);--shadow-brown: 0 4px 16px rgba(107, 68, 35, .15);--shadow-gold: 0 4px 16px rgba(184, 134, 11, .15);--shadow-warm: 0 2px 12px rgba(107, 68, 35, .08);--elevation-1: 0 1px 3px rgba(44, 24, 16, .06);--elevation-2: 0 2px 6px rgba(44, 24, 16, .08);--elevation-3: 0 4px 12px rgba(44, 24, 16, .1);--elevation-4: 0 8px 24px rgba(44, 24, 16, .12);--elevation-5: 0 16px 48px rgba(44, 24, 16, .15);--radius-none: 0;--radius-sm: .25rem;--radius-base: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--site-max-width: 1200px;--header-height: 80px;--header-height-mobile: 70px}.container{max-width:var(--site-max-width);margin:0 auto;padding:0 var(--spacing-lg)}@media (min-width: 768px){.container{padding:0 var(--spacing-2xl)}}@media (min-width: 1200px){.container{padding:0 var(--spacing-3xl)}}.container-fluid{width:100%;padding:0 var(--spacing-md)}.container-narrow{max-width:800px;margin:0 auto;padding:0 var(--spacing-md)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.font-light{font-weight:var(--weight-light)}.font-normal{font-weight:var(--weight-normal)}.font-medium{font-weight:var(--weight-medium)}.font-semibold{font-weight:var(--weight-semibold)}.font-bold{font-weight:var(--weight-bold)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary{color:hsl(var(--secondary-foreground))}.text-accent{color:hsl(var(--accent))}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.bg-background{background-color:hsl(var(--background))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-card{background-color:hsl(var(--card))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-muted{background-color:hsl(var(--muted))}.bg-accent{background-color:hsl(var(--accent))}.bg-destructive{background-color:hsl(var(--destructive))}.border-border{border-color:hsl(var(--border))}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-secondary{border-color:hsl(var(--secondary))}.border-accent{border-color:hsl(var(--accent))}.border-destructive{border-color:hsl(var(--destructive))}.text-white{color:var(--warm-white)}.text-cream{color:var(--warm-cream)}.bg-beige{background-color:var(--soft-beige)}.bg-cream{background-color:var(--warm-cream)}.bg-white{background-color:var(--warm-white)}.m-0{margin:0}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-0{margin-left:0}.ml-xs{margin-left:var(--spacing-xs)}.ml-sm{margin-left:var(--spacing-sm)}.ml-md{margin-left:var(--spacing-md)}.ml-lg{margin-left:var(--spacing-lg)}.ml-xl{margin-left:var(--spacing-xl)}.mr-0{margin-right:0}.mr-xs{margin-right:var(--spacing-xs)}.mr-sm{margin-right:var(--spacing-sm)}.mr-md{margin-right:var(--spacing-md)}.mr-lg{margin-right:var(--spacing-lg)}.mr-xl{margin-right:var(--spacing-xl)}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.pt-0{padding-top:0}.pt-xs{padding-top:var(--spacing-xs)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pt-xl{padding-top:var(--spacing-xl)}.pb-0{padding-bottom:0}.pb-xs{padding-bottom:var(--spacing-xs)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-soft)}.shadow-md{box-shadow:var(--shadow-medium)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.focus-visible:focus{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:var(--radius)}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:text-left{text-align:left}}@media (min-width: 1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-feature-settings:"rlig" 1,"calt" 1}.btn-shadcn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all .2s;border:1px solid transparent;cursor:pointer;position:relative;overflow:hidden}.btn-shadcn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.btn-shadcn:disabled{pointer-events:none;opacity:.5}.btn-primary-shadcn{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-primary-shadcn:hover{background-color:hsl(var(--primary) / .9)}.btn-secondary-shadcn{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.btn-secondary-shadcn:hover{background-color:hsl(var(--secondary) / .8)}.btn-outline-shadcn{border:1px solid hsl(var(--border));background-color:hsl(var(--background));color:hsl(var(--foreground))}.btn-outline-shadcn:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-ghost-shadcn{background-color:transparent;color:hsl(var(--foreground))}.btn-ghost-shadcn:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-destructive-shadcn{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.btn-destructive-shadcn:hover{background-color:hsl(var(--destructive) / .9)}.btn-sm{height:2.25rem;border-radius:calc(var(--radius) - 2px);padding:0 .75rem;font-size:.8125rem}.btn-md{height:2.5rem;padding:0 1rem}.btn-lg{height:2.75rem;border-radius:calc(var(--radius) + 2px);padding:0 2rem}.btn-icon{height:2.5rem;width:2.5rem;padding:0}.card{border-radius:var(--radius);border:1px solid hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.card-header{display:flex;flex-direction:column;space-y:1.5;padding:1.5rem}.card-title{font-size:1.5rem;font-weight:600;line-height:1;letter-spacing:-.025em}.card-description{font-size:.875rem;color:hsl(var(--muted-foreground))}.card-content{padding:1.5rem;padding-top:0}.card-footer{display:flex;align-items:center;padding:1.5rem;padding-top:0}.input{display:flex;height:2.5rem;width:100%;border-radius:var(--radius);border:1px solid hsl(var(--input));background-color:hsl(var(--background));padding:.5rem .75rem;font-size:.875rem;transition:all .2s}.input:focus{outline:2px solid hsl(var(--ring));outline-offset:2px}.input:disabled{cursor:not-allowed;opacity:.5}.input::placeholder{color:hsl(var(--muted-foreground))}.badge{display:inline-flex;align-items:center;border-radius:calc(var(--radius) - 2px);padding:.25rem .625rem;font-size:.75rem;font-weight:600;line-height:1;transition:all .2s;border:1px solid transparent}.badge-default{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.badge-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.badge-destructive{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.badge-outline{color:hsl(var(--foreground));border:1px solid hsl(var(--border))}.alert{position:relative;width:100%;border-radius:var(--radius);border:1px solid hsl(var(--border));padding:1rem;background-color:hsl(var(--background));color:hsl(var(--foreground))}.alert-destructive{border-color:hsl(var(--destructive) / .5);color:hsl(var(--destructive));background-color:hsl(var(--destructive) / .1)}.alert-title{margin-bottom:.25rem;font-weight:500;line-height:1;letter-spacing:-.025em}.alert-description{font-size:.875rem;opacity:.8}.separator{flex-shrink:0;background-color:hsl(var(--border))}.separator-horizontal{height:1px;width:100%}.separator-vertical{height:100%;width:1px}.skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background-color:hsl(var(--muted));border-radius:var(--radius)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.focus-ring{outline:2px solid hsl(var(--ring));outline-offset:2px}.hover-accent:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.hover-muted:hover{background-color:hsl(var(--muted))}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes wiggle{0%,7%{transform:rotate(0)}15%{transform:rotate(-15deg)}20%{transform:rotate(10deg)}25%{transform:rotate(-10deg)}30%{transform:rotate(6deg)}35%{transform:rotate(-4deg)}40%,to{transform:rotate(0)}}.animate-fade-in{animation:fadeIn .6s ease-out}.animate-fade-in-up{animation:fadeInUp .6s ease-out}.animate-fade-in-down{animation:fadeInDown .6s ease-out}.animate-fade-in-left{animation:fadeInLeft .6s ease-out}.animate-fade-in-right{animation:fadeInRight .6s ease-out}.animate-scale-in{animation:scaleIn .6s ease-out}.animate-slide-in-up{animation:slideInUp .6s ease-out}.animate-slide-in-down{animation:slideInDown .6s ease-out}.animate-bounce{animation:bounce 1s infinite}.animate-pulse{animation:pulse 2s infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-wiggle{animation:wiggle 1s ease-in-out}.transition-none{transition:none}.transition-all{transition:all var(--transition-base)}.transition-colors{transition:color var(--transition-base),background-color var(--transition-base),border-color var(--transition-base)}.transition-opacity{transition:opacity var(--transition-base)}.transition-shadow{transition:box-shadow var(--transition-base)}.transition-transform{transition:transform var(--transition-base)}.transition-fast{transition-duration:var(--transition-fast)}.transition-slow{transition-duration:var(--transition-slow)}.hover-lift{transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-6px);box-shadow:var(--elevation-4)}.hover-float{transition:transform .6s cubic-bezier(.4,0,.2,1)}.hover-float:hover{transform:translateY(-3px) scale(1.02)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:0 0 20px #daa52066}.hover-rotate{transition:transform var(--transition-base)}.hover-rotate:hover{transform:rotate(5deg)}.loading-shimmer{background:linear-gradient(90deg,var(--medium-gray) 0px,var(--light-gray) 40px,var(--medium-gray) 80px);background-size:200px;animation:shimmer 1.5s infinite}.loading-dots:after{content:"";animation:dots 1.5s infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.scroll-reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}@keyframes premiumPulse{0%,to{transform:scale(1);box-shadow:var(--elevation-1)}50%{transform:scale(1.02);box-shadow:var(--elevation-3)}}@keyframes premiumGlow{0%,to{box-shadow:var(--elevation-2)}50%{box-shadow:var(--elevation-2),0 0 20px #b8860b4d}}@keyframes premiumSlideIn{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.premium-pulse{animation:premiumPulse 2s ease-in-out infinite}.premium-glow{animation:premiumGlow 3s ease-in-out infinite}.premium-slide-in{animation:premiumSlideIn .8s cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.scroll-reveal{opacity:1;transform:none}.premium-pulse,.premium-glow,.premium-slide-in{animation:none!important}}@media (min-width: 576px){.container{padding:0 var(--spacing-lg)}.hero-title{font-size:clamp(2.5rem,6vw,4rem)}.section-header h2{font-size:clamp(2rem,4vw,3rem)}}@media (min-width: 768px){.container{padding:0 var(--spacing-xl)}.header-content{min-height:var(--header-height)}.features-grid,.values-grid,.team-grid{grid-template-columns:repeat(2,1fr)}.hero-description,.section-header p{font-size:var(--text-lg)}.hero-content,.about-hero-content{padding:var(--spacing-3xl) 0}}@media (min-width: 992px){.features-grid{grid-template-columns:repeat(3,1fr)}.values-grid{grid-template-columns:repeat(4,1fr)}.team-grid{grid-template-columns:repeat(3,1fr)}.menu-items{grid-template-columns:repeat(2,1fr)}section{padding:var(--spacing-4xl) 0}}@media (min-width: 1200px){.container{max-width:var(--site-max-width)}.hero-content{max-width:1400px;margin:0 auto}}@media (max-width: 575px){.container{padding:0 var(--spacing-md)}.hero-actions,.cta-actions,.quick-contact{flex-direction:column;gap:var(--spacing-sm)}.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);min-width:auto;width:100%}.hero-content{padding:var(--spacing-xl) 0;margin-top:var(--header-height-mobile)}.feature-card,.value-card,.service-card,.menu-item{padding:var(--spacing-md)}.form-row{grid-template-columns:1fr;gap:var(--spacing-md)}.modal-content{margin:var(--spacing-md);padding:var(--spacing-md)}}@media (max-width: 768px){.nav-link,.filter-btn,.contact-button{min-height:44px;padding:var(--spacing-sm) var(--spacing-md)}.menu-toggle,.social-link{min-width:44px;min-height:44px}.form-group input,.form-group select,.form-group textarea{min-height:44px;font-size:16px}}@media (max-height: 500px) and (orientation: landscape){.hero{min-height:70vh}.hero-content{padding:var(--spacing-lg) 0}.about-hero,.contact-hero,.events-hero{min-height:60vh}}@media print{.header,.footer,.btn,.menu-toggle,.social-links{display:none!important}body{font-size:12pt;line-height:1.4;color:#000;background:#fff}.container{max-width:none;padding:0}.section{page-break-inside:avoid}h1,h2,h3{page-break-after:avoid}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hover-lift:hover,.hover-scale:hover{transform:none!important}}@media (prefers-contrast: high){.btn{border-width:3px}.card,.menu-item,.feature-card{border-width:2px;border-color:var(--charcoal)}.hero-description,.section-header p{color:var(--charcoal)}}@media (prefers-color-scheme: dark){:root{--warm-white: #1a1a1a;--soft-beige: #2a2a2a;--warm-cream: #333333;--charcoal: #e0e0e0;--medium-gray: #555555}body{background-color:var(--warm-white);color:var(--charcoal)}}.focus-visible:focus,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:var(--radius)}.skip-link{position:absolute;top:-40px;left:6px;background:var(--deep-coffee);color:var(--warm-white);padding:8px;text-decoration:none;border-radius:var(--radius-sm);z-index:1000}.skip-link:focus{top:6px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);line-height:1.6;color:var(--charcoal);background-color:var(--warm-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;color:var(--deep-coffee);margin:0;letter-spacing:var(--letter-spacing-tight);font-feature-settings:"kern" 1,"liga" 1,"dlig" 1}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:var(--weight-bold);letter-spacing:var(--letter-spacing-tight);line-height:1.1}h2{font-size:clamp(2rem,4vw,3rem);font-weight:var(--weight-semibold);letter-spacing:var(--letter-spacing-tight);line-height:1.15}h3{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--weight-semibold);letter-spacing:var(--letter-spacing-normal);line-height:1.2}p{margin-bottom:var(--spacing-sm)}a{color:var(--primary-brown);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-bronze)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.text-center{text-align:center}.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}html{scroll-behavior:smooth}*:focus{outline:2px solid var(--gold-accent);outline-offset:2px}button{border:none;background:none;cursor:pointer;font-family:inherit}
