:root{--merlot: #8F2724;--truffle: #43302B;--champagne: #ECE9D9;--oyster: #C0DBEA;--wisteria: #D1BBD7;--meringue: #F9F2F2;--clove: #171819;--color-primary: var(--merlot);--color-secondary: var(--truffle);--color-background: var(--meringue);--color-background-alt: var(--champagne);--color-accent: var(--oyster);--color-accent-alt: var(--wisteria);--color-text: var(--clove);--color-text-light: var(--truffle);--font-display: "Homemade Apple", cursive;--font-body: "Space Mono", monospace;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);font-weight:400;line-height:1.7;color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:1.3;color:var(--color-text)}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}h4{font-size:clamp(1.25rem,2vw,1.5rem)}p{margin-bottom:1rem}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0}.section--alt{background-color:var(--color-background-alt)}.section--accent{background-color:var(--color-accent)}.section--dark{background-color:var(--color-secondary);color:var(--color-background)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--color-background)}.text-center{text-align:center}.text-display{font-family:var(--font-display)}.text-mono{font-family:var(--font-body)}.text-bold{font-weight:700}.btn{display:inline-block;font-family:var(--font-body);font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;padding:1rem 2rem;border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn--primary{background-color:var(--color-primary);color:var(--color-background);border-color:var(--color-primary)}.btn--primary:hover{background-color:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-background)}.btn--outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--outline:hover{background-color:var(--color-primary);color:var(--color-background)}.btn--light{background-color:var(--color-background);color:var(--color-primary);border-color:var(--color-background)}.btn--light:hover{background-color:var(--color-background-alt);border-color:var(--color-background-alt)}input,textarea,select{font-family:var(--font-body);font-size:1rem;padding:.75rem 1rem;border:1px solid var(--color-secondary);border-radius:var(--radius-sm);background-color:var(--color-background);color:var(--color-text);width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8f27241a}label{display:block;font-weight:700;margin-bottom:.5rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}img{max-width:100%;height:auto;display:block}ul,ol{padding-left:1.5rem}li{margin-bottom:.5rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-slide-in{animation:slideIn .6s ease forwards}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@media(max-width:768px){.container{padding:0 var(--spacing-sm)}.section{padding:var(--spacing-lg) 0}}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--color-background);border-bottom:1px solid rgba(67,48,43,.1);transition:box-shadow var(--transition-base)}.header:hover{box-shadow:0 2px 20px #17181914}.header__container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between}.header__logo{text-decoration:none}.header__logo-text{font-family:var(--font-display);font-size:1.5rem;color:var(--color-primary);transition:color var(--transition-fast)}.header__logo:hover .header__logo-text{color:var(--color-secondary)}.header__nav{display:flex;align-items:center;gap:2rem}.header__link{font-family:var(--font-body);font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);text-decoration:none;position:relative;padding:.5rem 0;transition:color var(--transition-fast)}.header__link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-primary);transition:width var(--transition-base)}.header__link:hover,.header__link.is-active{color:var(--color-primary)}.header__link:hover:after,.header__link.is-active:after{width:100%}.header__link--cta{background-color:var(--color-primary);color:var(--color-background)!important;padding:.75rem 1.5rem;border-radius:var(--radius-sm)}.header__link--cta:after{display:none}.header__link--cta:hover{background-color:var(--color-secondary)}.header__menu-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;background:none;border:none;cursor:pointer;z-index:1001}.header__menu-line{width:24px;height:2px;background-color:var(--color-text);transition:all var(--transition-base)}.header__menu-btn.is-open .header__menu-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.header__menu-btn.is-open .header__menu-line:nth-child(2){opacity:0}.header__menu-btn.is-open .header__menu-line:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media(max-width:768px){.header__container{padding:1rem}.header__menu-btn{display:flex}.header__nav{position:fixed;inset:0;background-color:var(--color-background);flex-direction:column;justify-content:center;align-items:center;gap:2rem;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.header__nav.is-open{opacity:1;visibility:visible}.header__link{font-size:1.25rem}}.footer{background-color:var(--color-secondary);color:var(--color-background);padding:var(--spacing-xl) 0 var(--spacing-md)}.footer__container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.footer__logo{font-family:var(--font-display);font-size:1.75rem;color:var(--color-background);text-decoration:none;display:inline-block;margin-bottom:var(--spacing-sm)}.footer__logo:hover{color:var(--color-accent)}.footer__tagline{font-size:.9rem;line-height:1.6;opacity:.85;margin-bottom:var(--spacing-md)}.footer__social{display:flex;gap:1rem}.footer__social a{color:var(--color-background);opacity:.7;transition:opacity var(--transition-fast),transform var(--transition-fast)}.footer__social a:hover{opacity:1;transform:translateY(-2px)}.footer__heading{font-family:var(--font-body);font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-background);margin-bottom:var(--spacing-sm)}.footer__links nav{display:flex;flex-direction:column;gap:.75rem}.footer__links a{color:var(--color-background);opacity:.7;font-size:.9rem;transition:opacity var(--transition-fast)}.footer__links a:hover{opacity:1;color:var(--color-background)}.footer__newsletter p{font-size:.9rem;opacity:.85;margin-bottom:var(--spacing-sm)}.footer__form{display:flex;flex-direction:column;gap:.75rem}.footer__form input{background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--color-background);padding:.75rem 1rem}.footer__form input::placeholder{color:#ffffff80}.footer__form input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #c0dbea33}.footer__form .btn{width:100%}.footer__bottom{padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer__bottom p{font-size:.875rem;opacity:.6;margin:0}@media(max-width:992px){.footer__grid{grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.footer__brand{grid-column:1 / -1}}@media(max-width:576px){.footer__grid{grid-template-columns:1fr}.footer__form{flex-direction:column}}.layout{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;padding-top:80px}.testimonials__loading{text-align:center;padding:4rem;color:var(--color-text-light)}@media(max-width:576px){.testimonials__grid{grid-template-columns:1fr}}.section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.hero{min-height:calc(100vh - 80px);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:2rem 2rem 4rem;position:relative;overflow:hidden}.hero__background{position:absolute;inset:0;z-index:-1}.hero__pattern{position:absolute;top:0;right:0;width:60%;height:100%;background:linear-gradient(135deg,var(--color-background-alt) 0%,var(--color-accent) 100%);clip-path:polygon(30% 0,100% 0,100% 100%,0% 100%);opacity:.4}.hero__content{max-width:600px;padding:2rem;animation:fadeIn .8s ease forwards}.hero__label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--color-primary);margin-bottom:1.5rem}.hero__title{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1;margin-bottom:1.5rem;color:var(--color-text)}.hero__description{font-size:1.125rem;line-height:1.8;color:var(--color-text-light);margin-bottom:2.5rem;max-width:480px}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap}.hero__image{display:flex;justify-content:center;align-items:center;animation:fadeIn 1s ease .3s forwards;opacity:0}.hero__image-placeholder{width:100%;max-width:500px;aspect-ratio:4/5;background:linear-gradient(145deg,var(--color-accent) 0%,var(--color-accent-alt) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.5rem;color:var(--color-secondary);box-shadow:0 25px 50px -12px #17181926}.services__header{text-align:center;max-width:600px;margin:0 auto var(--spacing-lg)}.services__header h2{margin-bottom:1rem}.services__header p{color:var(--color-text-light)}.services__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.service-card{background-color:var(--color-background);padding:2.5rem 2rem;border-radius:var(--radius-md);transition:transform var(--transition-base),box-shadow var(--transition-base);opacity:0}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -12px #1718191f}.service-card__icon{width:48px;height:48px;color:var(--color-primary);margin-bottom:1.5rem}.service-card__icon svg{width:100%;height:100%}.service-card__title{font-size:1.5rem;margin-bottom:1rem}.service-card__description{color:var(--color-text-light);font-size:.95rem;margin-bottom:1.5rem}.service-card__link{font-family:var(--font-body);font-weight:700;font-size:.875rem;color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.service-card__link:hover{color:var(--color-secondary)}.about-preview__grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-preview__image{position:relative}.about-preview__image-placeholder{width:100%;aspect-ratio:3/4;background:linear-gradient(145deg,var(--color-accent-alt) 0%,var(--color-accent) 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:var(--color-secondary)}.about-preview__accent{position:absolute;bottom:-20px;right:-20px;width:60%;height:60%;background-color:var(--color-background-alt);border-radius:var(--radius-md);z-index:-1}.about-preview__content h2{margin-bottom:1.5rem}.about-preview__content p{color:var(--color-text-light);margin-bottom:1.5rem}.about-preview__content .btn{margin-top:1rem}.testimonials__header{text-align:center;margin-bottom:var(--spacing-lg)}.testimonials__header h2{margin-bottom:0}.testimonials__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.testimonial-card{background-color:var(--color-background);padding:2.5rem;border-radius:var(--radius-md);opacity:0}.testimonial-card__icon{width:32px;height:32px;color:var(--color-primary);opacity:.3;margin-bottom:1rem}.testimonial-card__quote p{font-size:1rem;line-height:1.8;color:var(--color-text);font-style:italic;margin-bottom:1.5rem}.testimonial-card__author{display:flex;flex-direction:column;gap:.25rem}.testimonial-card__author strong{font-size:.95rem;color:var(--color-text)}.testimonial-card__author span{font-size:.85rem;color:var(--color-text-light)}.events-preview__header{text-align:center;max-width:600px;margin:0 auto var(--spacing-lg)}.events-preview__header h2{margin-bottom:1rem}.events-preview__header p{color:var(--color-text-light)}.events-preview__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:var(--spacing-md)}.event-card{display:flex;gap:1.5rem;background-color:var(--color-background-alt);padding:2rem;border-radius:var(--radius-md);transition:transform var(--transition-base)}.event-card:hover{transform:translateY(-4px)}.event-card--featured{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:var(--color-background)}.event-card--featured h3,.event-card--featured p,.event-card--featured span{color:var(--color-background)}.event-card__date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:1rem;background-color:#ffffff26;border-radius:var(--radius-sm)}.event-card--featured .event-card__date{background-color:#fff3}.event-card:not(.event-card--featured) .event-card__date{background-color:var(--color-background)}.event-card__month{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.event-card__day{font-family:var(--font-display);font-size:1.75rem}.event-card__content h3{font-size:1.25rem;margin-bottom:.75rem}.event-card__content>p{font-size:.9rem;margin-bottom:1rem;opacity:.9}.event-card__meta{display:flex;gap:1.5rem;margin-bottom:1.5rem;font-size:.85rem}.events-preview__cta{text-align:center;margin-top:var(--spacing-md)}.event-preview-card{display:flex;gap:1.5rem;background-color:var(--color-background);padding:2rem;border-radius:var(--radius-md);transition:transform var(--transition-base),box-shadow var(--transition-base);opacity:0}.event-preview-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #1718191a}.event-preview-card__date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:1rem;background-color:var(--color-primary);border-radius:var(--radius-sm);color:var(--color-background)}.event-preview-card__month{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.event-preview-card__day{font-family:var(--font-display);font-size:1.75rem}.event-preview-card__content{flex:1}.event-preview-card__content h3{font-size:1.25rem;margin-bottom:.5rem}.event-preview-card__time{font-size:.85rem;color:var(--color-text-light);margin-bottom:.75rem}.event-preview-card__description{font-size:.9rem;color:var(--color-text-light);line-height:1.6;margin-bottom:1rem}.event-preview-card__footer{display:flex;gap:1.5rem;align-items:center}.event-preview-card__price{font-weight:700;color:var(--color-primary)}.event-preview-card__seats{font-size:.85rem;color:var(--color-text-light)}.cta__content{text-align:center;max-width:700px;margin:0 auto}.cta__content h2{margin-bottom:1.5rem}.cta__content p{font-size:1.125rem;opacity:.9;margin-bottom:2rem}@media(max-width:992px){.hero{grid-template-columns:1fr;text-align:center;padding-top:2rem}.hero__content{max-width:100%;padding:2rem 0}.hero__description{max-width:100%}.hero__actions{justify-content:center}.hero__image{order:-1}.hero__image-placeholder{max-width:350px;aspect-ratio:1}.hero__pattern{width:100%;height:50%;clip-path:none;opacity:.3}.about-preview__grid{grid-template-columns:1fr;gap:3rem}.about-preview__image{max-width:400px;margin:0 auto}.about-preview__content{text-align:center}}@media(max-width:576px){.hero{padding:2rem 1rem 3rem}.hero__actions{flex-direction:column;width:100%}.hero__actions .btn{width:100%}.services__grid,.testimonials__grid,.events-preview__grid{grid-template-columns:1fr}.event-card{flex-direction:column;text-align:center}.event-card__meta{justify-content:center}.event-preview-card{flex-direction:column;text-align:center}.event-preview-card__date{align-self:center;min-width:80px}.event-preview-card__footer{justify-content:center}}.about-page .section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.about-hero{position:relative;padding:4rem 0 6rem;text-align:center;overflow:hidden}.about-hero__background{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-background-alt) 0%,var(--color-accent) 50%,var(--color-accent-alt) 100%);opacity:.4;z-index:-1}.about-hero__content{max-width:700px;margin:0 auto}.about-hero__content h1{margin-bottom:1.5rem}.about-hero__content p{font-size:1.25rem;color:var(--color-text-light)}.bio__grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:center}.bio__image-placeholder{width:100%;aspect-ratio:3/4;background:linear-gradient(145deg,var(--color-accent) 0%,var(--color-accent-alt) 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:var(--color-secondary);box-shadow:0 25px 50px -12px #17181926}.bio__content h2{margin-bottom:1.5rem}.bio__content p{color:var(--color-text-light);margin-bottom:1.5rem;line-height:1.8}.philosophy__header{text-align:center;margin-bottom:var(--spacing-md)}.philosophy__header h2{margin-bottom:0}.philosophy__content{max-width:800px;margin:0 auto;text-align:center}.philosophy__content p{font-size:1.125rem;line-height:1.9;color:var(--color-text-light)}.philosophy__content p:first-child{font-family:var(--font-body);font-size:1.125rem;line-height:1.8;color:var(--color-text);margin-bottom:2rem;font-style:italic;position:relative;padding:2rem;background-color:var(--color-background);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.values__header{text-align:center;margin-bottom:var(--spacing-lg)}.values__header h2{margin-bottom:0}.values__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.value-card{text-align:center;padding:2rem;opacity:0}.value-card__icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 1.5rem;color:var(--color-primary)}.value-card__icon svg{width:100%;height:100%}.value-card__title{font-size:1.25rem;margin-bottom:1rem}.value-card__description{color:var(--color-text-light);font-size:.95rem;line-height:1.7}.qualifications__grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.qualifications__content h2{margin-bottom:1.5rem}.qualifications__content>p{color:var(--color-text-light);margin-bottom:2rem}.qualifications__list{list-style:none;padding:0}.qualifications__list li{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(67,48,43,.1);font-weight:500}.qualifications__check{color:var(--color-primary);font-weight:700}.qualifications__image-placeholder{width:100%;aspect-ratio:4/3;background:linear-gradient(145deg,var(--color-background) 0%,var(--color-background-alt) 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:var(--color-secondary)}.about-cta__content{text-align:center;max-width:700px;margin:0 auto}.about-cta__content h2{margin-bottom:1.5rem}.about-cta__content p{font-size:1.125rem;opacity:.9;margin-bottom:2rem}@media(max-width:992px){.bio__grid{grid-template-columns:1fr;gap:3rem}.bio__image{max-width:400px;margin:0 auto}.qualifications__grid{grid-template-columns:1fr;gap:3rem}.qualifications__image{order:-1;max-width:500px;margin:0 auto}}@media(max-width:576px){.about-hero{padding:3rem 0 4rem}.values__grid{grid-template-columns:1fr}}.contact-page .section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.contact-hero{position:relative;padding:4rem 0 6rem;text-align:center;overflow:hidden}.contact-hero__background{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-accent-alt) 0%,var(--color-accent) 50%,var(--color-background-alt) 100%);opacity:.4;z-index:-1}.contact-hero__content{max-width:700px;margin:0 auto}.contact-hero__content h1{margin-bottom:1.5rem}.contact-hero__content p{font-size:1.25rem;color:var(--color-text-light)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem}.contact-info h2{margin-bottom:1rem}.contact-info>p{color:var(--color-text-light);margin-bottom:2.5rem}.contact-info__items{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem}.contact-info__item{display:flex;align-items:flex-start;gap:1rem}.contact-info__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;color:var(--color-primary)}.contact-info__icon svg{width:100%;height:100%}.contact-info__item div{display:flex;flex-direction:column;gap:.25rem}.contact-info__item strong{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.contact-info__item a,.contact-info__item span{color:var(--color-text-light);font-size:.95rem}.contact-info__item a:hover{color:var(--color-primary)}.contact-info__social h3{font-family:var(--font-body);font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.contact-info__social-links{display:flex;gap:1.5rem}.contact-info__social-links a{color:var(--color-text);font-weight:500;transition:color var(--transition-fast)}.contact-info__social-links a:hover{color:var(--color-primary)}.contact-form-wrapper{background-color:var(--color-background-alt);padding:3rem;border-radius:var(--radius-md)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background-color:var(--color-background)}.form-group textarea{resize:vertical;min-height:120px}.contact-form__submit{align-self:flex-start;min-width:200px}.contact-form__submit:disabled{opacity:.7;cursor:not-allowed}.contact-form__error{color:var(--color-primary);font-size:.9rem;margin-top:.5rem}.contact-form__success{text-align:center;padding:3rem 2rem}.contact-form__success-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background-color:var(--color-primary);color:var(--color-background);font-size:2rem;border-radius:50%;margin-bottom:1.5rem}.contact-form__success h3{margin-bottom:1rem}.contact-form__success p{color:var(--color-text-light);margin-bottom:2rem}.faq__header{text-align:center;margin-bottom:var(--spacing-lg)}.faq__header h2{margin-bottom:0}.faq__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.faq__item{background-color:var(--color-background);padding:2rem;border-radius:var(--radius-md)}.faq__item h3{font-family:var(--font-body);font-size:1rem;font-weight:700;margin-bottom:1rem}.faq__item p{color:var(--color-text-light);font-size:.95rem;line-height:1.7;margin-bottom:0}@media(max-width:992px){.contact-grid{grid-template-columns:1fr;gap:3rem}}@media(max-width:576px){.contact-hero{padding:3rem 0 4rem}.form-row{grid-template-columns:1fr}.contact-form-wrapper{padding:2rem 1.5rem}.faq__grid{grid-template-columns:1fr}}.events-page .section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.events-hero{position:relative;padding:4rem 0 6rem;text-align:center;overflow:hidden}.events-hero__background{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-background-alt) 0%,var(--color-accent-alt) 50%,var(--color-accent) 100%);opacity:.4;z-index:-1}.events-hero__content{max-width:700px;margin:0 auto}.events-hero__content h1{margin-bottom:1.5rem}.events-hero__content p{font-size:1.25rem;color:var(--color-text-light)}.featured-event__card{display:grid;grid-template-columns:1fr 1fr;gap:0;background-color:var(--color-background);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 25px 50px -12px #1718191a}.featured-event__image{position:relative}.featured-event__image-placeholder{width:100%;height:100%;min-height:500px;background:linear-gradient(145deg,var(--color-primary) 0%,var(--color-secondary) 100%);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.5rem;color:var(--color-background)}.featured-event__badge{position:absolute;top:1.5rem;left:1.5rem;background-color:var(--color-background);color:var(--color-primary);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.5rem 1rem;border-radius:var(--radius-sm)}.featured-event__content{padding:3rem;display:flex;flex-direction:column}.featured-event__date{font-size:.875rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem}.featured-event__content h2{margin-bottom:1rem}.featured-event__location{font-size:.95rem;color:var(--color-text-light);margin-bottom:1rem}.featured-event__description{color:var(--color-text-light);margin-bottom:1.5rem}.featured-event__menu{background-color:var(--color-background-alt);padding:1.5rem;border-radius:var(--radius-sm);margin-bottom:2rem}.featured-event__menu h4{font-family:var(--font-body);font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.featured-event__menu ul{list-style:none;padding:0}.featured-event__menu li{font-size:.9rem;color:var(--color-text-light);padding:.5rem 0;border-bottom:1px solid rgba(67,48,43,.1)}.featured-event__menu li:last-child{border-bottom:none}.featured-event__footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.featured-event__meta{display:flex;flex-direction:column;gap:.25rem}.featured-event__price{font-family:var(--font-display);font-size:1.5rem;color:var(--color-primary)}.featured-event__seats{font-size:.85rem;color:var(--color-text-light)}.all-events__header{text-align:center;margin-bottom:var(--spacing-lg)}.all-events__header h2{margin-bottom:0}.all-events__grid{display:flex;flex-direction:column;gap:1.5rem}.event-listing{display:flex;gap:2rem;background-color:var(--color-background);padding:2rem;border-radius:var(--radius-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.event-listing:hover{transform:translateY(-4px);box-shadow:0 15px 30px -10px #1718191a}.event-listing__date-block{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:80px;padding:1rem;background-color:var(--color-background-alt);border-radius:var(--radius-sm);text-align:center}.event-listing__month{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary)}.event-listing__day{font-family:var(--font-display);font-size:2rem;color:var(--color-text)}.event-listing__content{flex:1}.event-listing__header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.event-listing__header h3{font-size:1.25rem;margin:0}.event-listing__featured-tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-primary);color:var(--color-background);padding:.25rem .5rem;border-radius:var(--radius-sm)}.event-listing__time{font-size:.85rem;color:var(--color-text-light);margin-bottom:.75rem}.event-listing__description{color:var(--color-text-light);font-size:.95rem;margin-bottom:1rem}.event-listing__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.event-listing__meta{display:flex;align-items:center;gap:1.5rem}.event-listing__price{font-weight:700;color:var(--color-primary)}.event-listing__seats{font-size:.85rem;color:var(--color-text-light)}.btn--small{padding:.5rem 1.25rem;font-size:.8rem}.past-events__header{text-align:center;margin-bottom:var(--spacing-lg)}.past-events__header h2{margin-bottom:1rem}.past-events__header p{color:var(--color-text-light)}.past-events__gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.past-event-card{position:relative;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;cursor:pointer}.past-event-card__image{width:100%;height:100%;background:linear-gradient(145deg,var(--color-accent) 0%,var(--color-accent-alt) 100%);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:var(--color-secondary);transition:transform var(--transition-slow)}.past-event-card:hover .past-event-card__image{transform:scale(1.05)}.past-event-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(23,24,25,.8) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;color:var(--color-background);opacity:0;transition:opacity var(--transition-base)}.past-event-card:hover .past-event-card__overlay{opacity:1}.past-event-card__overlay h4{font-size:1.125rem;color:var(--color-background);margin-bottom:.25rem}.past-event-card__overlay span{font-size:.85rem;opacity:.8}.events-newsletter__content{text-align:center;max-width:600px;margin:0 auto}.events-newsletter__content h2{margin-bottom:1rem}.events-newsletter__content p{color:var(--color-text-light);margin-bottom:2rem}.events-newsletter__form{display:flex;gap:1rem;max-width:450px;margin:0 auto}.events-newsletter__form input{flex:1}.private-events__content{text-align:center;max-width:700px;margin:0 auto}.private-events__content h2{margin-bottom:1.5rem}.private-events__content p{font-size:1.125rem;opacity:.9;margin-bottom:2rem}@media(max-width:992px){.featured-event__card{grid-template-columns:1fr}.featured-event__image-placeholder{min-height:300px}.past-events__gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.event-listing{flex-direction:column;gap:1rem}.event-listing__date-block{flex-direction:row;gap:.5rem;width:fit-content;padding:.75rem 1rem}.event-listing__month{order:2}.event-listing__day{font-size:1.5rem}.event-listing__footer{flex-direction:column;align-items:flex-start}}@media(max-width:576px){.events-hero{padding:3rem 0 4rem}.featured-event__content{padding:2rem}.past-events__gallery{grid-template-columns:1fr}.events-newsletter__form{flex-direction:column}}.recipes-page .section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.recipes-hero{position:relative;padding:4rem 0 6rem;text-align:center;overflow:hidden}.recipes-hero__background{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-background-alt) 50%,var(--color-accent-alt) 100%);opacity:.4;z-index:-1}.recipes-hero__content{max-width:700px;margin:0 auto}.recipes-hero__content h1{margin-bottom:1.5rem}.recipes-hero__content p{font-size:1.25rem;color:var(--color-text-light)}.recipes-filter{padding-top:var(--spacing-md);padding-bottom:0}.recipes-filter__tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.recipes-filter__tab{font-family:var(--font-body);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.75rem 1.5rem;border:2px solid var(--color-background-alt);border-radius:var(--radius-sm);background-color:transparent;color:var(--color-text-light);cursor:pointer;transition:all var(--transition-fast)}.recipes-filter__tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.recipes-filter__tab.is-active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-background)}.recipes-grid__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.recipe-card{background-color:var(--color-background);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);opacity:0}.recipe-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -12px #1718191f}.recipe-card__image{width:100%;aspect-ratio:16/10;background:linear-gradient(145deg,var(--color-accent) 0%,var(--color-accent-alt) 100%);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:var(--color-secondary);text-align:center;padding:1rem;overflow:hidden}.recipe-card__image img{width:100%;height:100%;object-fit:cover}.recipe-card__content{padding:1.5rem}.recipe-card__meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.recipe-card__season{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary)}.recipe-card__time{font-size:.8rem;color:var(--color-text-light)}.recipe-card__title{font-size:1.25rem;margin-bottom:.75rem}.recipe-card__description{font-size:.9rem;color:var(--color-text-light);line-height:1.6;margin-bottom:1rem}.recipe-card__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.recipe-card__tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;background-color:var(--color-background-alt);border-radius:var(--radius-sm);color:var(--color-text-light)}.recipe-card__link{font-family:var(--font-body);font-size:.875rem;font-weight:700;color:var(--color-primary);background:none;border:none;padding:0;cursor:pointer;transition:color var(--transition-fast)}.recipe-card__link:hover{color:var(--color-secondary)}.recipes-grid__empty{text-align:center;padding:4rem 2rem;color:var(--color-text-light)}.recipes-note__content{text-align:center;max-width:600px;margin:0 auto}.recipes-note__content h2{margin-bottom:1rem}.recipes-note__content p{color:var(--color-text-light)}.recipes-newsletter__grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.recipes-newsletter__content h2{margin-bottom:1rem}.recipes-newsletter__content p{color:var(--color-text-light)}.recipes-newsletter__form{display:flex;flex-direction:column;gap:1rem}.recipes-newsletter__inputs{display:flex;gap:1rem}.recipes-newsletter__inputs input{flex:1}.recipes-newsletter__form .btn{align-self:flex-start}@media(max-width:992px){.recipes-newsletter__grid{grid-template-columns:1fr;gap:2rem;text-align:center}.recipes-newsletter__form .btn{align-self:center}}@media(max-width:576px){.recipes-hero{padding:3rem 0 4rem}.recipes-filter__tabs{gap:.5rem}.recipes-filter__tab{padding:.5rem 1rem;font-size:.75rem}.recipes-grid__items{grid-template-columns:1fr}.recipes-newsletter__inputs{flex-direction:column}.recipes-newsletter__form .btn{width:100%}}.recipes-grid__loading{text-align:center;padding:4rem 2rem;color:var(--color-text-light)}.recipe-modal{position:fixed;inset:0;background-color:#171819cc;z-index:2000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .3s ease}.recipe-modal__content{background-color:var(--color-background);border-radius:var(--radius-md);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recipe-modal__close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;background-color:var(--color-background);border:none;border-radius:50%;font-size:1.5rem;color:var(--color-text);cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast);box-shadow:0 2px 8px #0000001a}.recipe-modal__close:hover{background-color:var(--color-background-alt)}.recipe-modal__header{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem}.recipe-modal__image{aspect-ratio:1;background:linear-gradient(145deg,var(--color-accent) 0%,var(--color-accent-alt) 100%);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.5rem;color:var(--color-secondary);text-align:center;padding:2rem;border-radius:var(--radius-md) 0 0 0;overflow:hidden}.recipe-modal__image img{width:100%;height:100%;object-fit:cover}.recipe-modal__info{padding:2rem 2rem 2rem 0}.recipe-modal__meta{display:flex;gap:1.5rem;margin-bottom:1rem}.recipe-modal__season{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary)}.recipe-modal__time{font-size:.85rem;color:var(--color-text-light)}.recipe-modal__info h2{margin-bottom:1rem}.recipe-modal__description{color:var(--color-text-light);line-height:1.7;margin-bottom:1.5rem}.recipe-modal__tags{display:flex;flex-wrap:wrap;gap:.5rem}.recipe-modal__tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.35rem .75rem;background-color:var(--color-background-alt);border-radius:var(--radius-sm);color:var(--color-text-light)}.recipe-modal__body{padding:2rem;border-top:1px solid var(--color-background-alt)}.recipe-modal__section{margin-bottom:2rem}.recipe-modal__section:last-child{margin-bottom:0}.recipe-modal__section h3{font-family:var(--font-body);font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:1rem}.recipe-modal__ingredients{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.recipe-modal__ingredients li{padding:.5rem 0;border-bottom:1px solid var(--color-background-alt);font-size:.95rem}.recipe-modal__instructions{line-height:1.8;color:var(--color-text-light)}.recipe-modal__instructions-list{padding-left:1.5rem;counter-reset:step-counter;list-style:none}.recipe-modal__instructions-list li{position:relative;padding:.75rem 0 .75rem 2rem;border-bottom:1px solid var(--color-background-alt);line-height:1.7;color:var(--color-text-light);counter-increment:step-counter}.recipe-modal__instructions-list li:last-child{border-bottom:none}.recipe-modal__instructions-list li:before{content:counter(step-counter);position:absolute;left:0;top:.75rem;width:1.5rem;height:1.5rem;background-color:var(--color-primary);color:var(--color-background);border-radius:50%;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center}.recipe-modal__coming-soon{text-align:center;padding:2rem;background-color:var(--color-background-alt);border-radius:var(--radius-sm)}.recipe-modal__coming-soon p{color:var(--color-text-light);margin:0}@media(max-width:768px){.recipe-modal{padding:1rem}.recipe-modal__header{grid-template-columns:1fr}.recipe-modal__image{aspect-ratio:16/9;border-radius:var(--radius-md) var(--radius-md) 0 0}.recipe-modal__info,.recipe-modal__body{padding:1.5rem}.recipe-modal__ingredients{grid-template-columns:1fr}}
