:root{--color-primary: #D91E27;--color-primary-dark: #A8151C;--color-secondary: #29AAE1;--color-secondary-light: #5CC4EE;--color-secondary-dark: #1A7DAB;--color-charcoal: #1A1A1A;--color-charcoal-light: #2D2D2D;--color-cream: #F7F7F7;--color-cream-dark: #EBEBEB;--color-text-dark: #1A1A1A;--color-text-light: #FFFFFF;--color-text-muted: #6B6B6B;--color-bg-light: #F7F7F7;--color-bg-white: #FFFFFF;--color-gold: #E8E8E8;--color-gold-light: #F5F5F5;--color-gold-dark: #CCCCCC;--color-shirt-green: #29AAE1;--color-accent-border: #29AAE1;--color-bg-glass: rgba(255, 255, 255, .65);--color-border-glass: rgba(255, 255, 255, .4);--shadow-glass: 0 8px 32px 0 rgba(217, 30, 39, .1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 24px;--font-heading: "Montserrat", sans-serif;--font-body: "Montserrat", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--color-cream);color:var(--color-text-dark);line-height:1.6;min-height:100vh;font-weight:600}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);line-height:1.2;font-weight:900;text-transform:uppercase;letter-spacing:1.5px}.btn-primary{background:var(--color-primary);color:var(--color-text-light);padding:14px 28px;border-radius:12px;font-weight:900;border:none;box-shadow:var(--shadow-md);transition:all .3s ease;position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:.5px}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);background:var(--color-primary-dark)}.option-card{background:#fff!important;border:2px solid #E5E7EB!important;box-shadow:var(--shadow-sm)!important;border-radius:12px!important;transition:all .3s ease!important;position:relative;cursor:pointer;margin:2px}.option-card:hover{background:#fff!important;border-color:var(--color-primary)!important;box-shadow:0 8px 24px #d91e271a!important;transform:translateY(-2px)}.option-card.selected{border:2px solid var(--color-primary)!important;background:linear-gradient(135deg,#fff,#ffebeb80)!important;color:var(--color-primary)!important;box-shadow:inset 0 0 20px #d91e2708,0 8px 24px #d91e271f!important}@keyframes tickDraw{0%{stroke-dashoffset:30;opacity:0}50%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes tickPop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.luxury-tick{position:absolute;top:10px;right:10px;animation:tickPop .4s cubic-bezier(.34,1.56,.64,1) forwards}.luxury-tick .tick-path{stroke-dasharray:30;stroke-dashoffset:30;animation:tickDraw .5s .15s ease-out forwards}input[type=text],input[type=email],input[type=tel]{width:100%;padding:16px;border-radius:12px;border:2px solid #E5E7EB;margin:2px;background:#fff;transition:all .2s ease;font-size:1rem;font-family:var(--font-body)}input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus{outline:none;background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 4px #d91e271a}.reviews-section,footer{content-visibility:auto;contain-intrinsic-size:1px 500px}.gold-separator{width:60px;height:3px;background:linear-gradient(90deg,var(--color-secondary-dark),var(--color-secondary),var(--color-secondary-dark));margin:0 auto;border-radius:2px}div[class^=elfsight-app]{font-family:var(--font-body)!important}.survey-section{display:flex;justify-content:center;padding-top:20px;padding-bottom:16px}.booking-embed{width:100%;max-width:500px}.survey-card{background:#fff;border-radius:24px;position:relative;display:flex;flex-direction:column;margin-top:60px;box-shadow:0 12px 40px #0000001a}.survey-header{padding:56px 40px 0;text-align:center}.survey-content{padding:24px 40px 40px}.survey-content.no-header{padding-top:80px}@media(max-width:640px){.survey-section{padding-top:10px;padding-bottom:60px}.booking-embed{max-width:100%;padding-top:16px}.survey-card{border-radius:16px;margin-top:40px;box-shadow:0 4px 12px #0000000f}.survey-header{padding:60px 20px 0}.survey-content{padding:16px 20px 28px}.survey-content.no-header{padding-top:60px}.container{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.hide-on-mobile{display:none}}
