/* Optimized and minified CSS for performance */
:root{--calendly-primary:#006BFF;--calendly-primary-dark:#0052CC;--calendly-secondary:#7C3AED;--calendly-accent:#EC4899;--calendly-background:#FFFFFF;--calendly-surface:#F8FAFC;--calendly-text-primary:#1E293B;--calendly-text-secondary:#64748B;--calendly-text-muted:#94A3B8;--calendly-border:#E2E8F0;--calendly-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--calendly-shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05)}

/* Critical animations - loaded first */
.fade-in-up{opacity:0;transform:translateY(30px);animation:fadeInUp 0.8s ease-out forwards}
.bounce-in{opacity:0;transform:scale(0.3);animation:bounceIn 0.8s cubic-bezier(0.68,-0.55,0.265,1.55) forwards}
.scale-in{opacity:0;transform:scale(0.9);animation:scaleIn 0.6s ease-out forwards}

@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}
@keyframes bounceIn{0%{opacity:0;transform:scale(0.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(0.9)}100%{opacity:1;transform:scale(1)}}
@keyframes scaleIn{to{opacity:1;transform:scale(1)}}

/* Hero section */
.hero-background{position:relative;overflow:hidden;background:linear-gradient(135deg,#F8FAFC 0%,#E2E8F0 100%)}
.hero-background::before{content:'';position:absolute;top:-50%;right:-20%;width:60%;height:120%;background:linear-gradient(135deg,var(--calendly-primary) 0%,var(--calendly-secondary) 50%,var(--calendly-accent) 100%);border-radius:50%;opacity:0.1;transform:rotate(-15deg)}
.hero-title{font-size:3.5rem;font-weight:700;line-height:1.1;color:var(--calendly-text-primary);margin-bottom:1.5rem}
.hero-subtitle{font-size:1.25rem;font-weight:400;line-height:1.6;color:var(--calendly-text-secondary);margin-bottom:2rem}

/* Cards and components */
.calendly-card{background:var(--calendly-background);border:1px solid var(--calendly-border);border-radius:12px;box-shadow:var(--calendly-shadow);transition:transform 0.3s ease,box-shadow 0.3s ease;will-change:transform}
.calendly-card:hover{box-shadow:var(--calendly-shadow-lg);transform:translateY(-2px)}

/* Buttons */
.btn-calendly-primary{background:var(--calendly-primary)!important;color:white!important;border-radius:8px!important;font-weight:600!important;padding:12px 24px!important;transition:background-color 0.2s ease,transform 0.2s ease!important;will-change:transform}
.btn-calendly-primary:hover{background:var(--calendly-primary-dark)!important;transform:translateY(-1px)}

/* MudBlazor optimizations */
.mud-button{transition:transform 0.3s cubic-bezier(0.4,0,0.2,1)!important;will-change:transform}
.mud-button:hover{transform:translateY(-2px)!important}
.mud-card{transition:transform 0.3s cubic-bezier(0.4,0,0.2,1)!important;will-change:transform}
.mud-card:hover{transform:translateY(-4px)!important}

/* Feature icons */
.feature-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--calendly-primary),var(--calendly-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;transition:transform 0.3s ease;will-change:transform}
.feature-icon .mud-icon-root{color:white;font-size:24px}
.calendly-card:hover .feature-icon{transform:scale(1.1)}

/* Responsive design */
@media (max-width:768px){
.hero-title{font-size:2.5rem}
.hero-subtitle{font-size:1.125rem}
.calendly-card:hover{transform:none}
.feature-icon{width:50px!important;height:50px!important}

/* Mobile Navigation Enhancements */
.mobile-nav-link:hover,.mobile-nav-link:focus{background:var(--calendly-surface)!important;color:var(--calendly-primary)!important}

/* Touch-friendly buttons */
.btn-calendly-primary{min-height:48px;touch-action:manipulation}

/* Improved tap targets */
.mud-nav-link,.mud-button{min-height:44px;display:flex;align-items:center}

/* Smooth scrolling */
html{scroll-behavior:smooth}

/* Prevent zoom on input focus */
input,select,textarea{font-size:16px}

/* Better spacing for mobile */
.mud-container{padding-left:1rem;padding-right:1rem}

/* Mobile-first typography */
h1{font-size:clamp(1.75rem,5vw,2.5rem)}
h2{font-size:clamp(1.5rem,4vw,2rem)}
h3{font-size:clamp(1.25rem,3.5vw,1.75rem)}
p{font-size:clamp(0.875rem,2.5vw,1rem);line-height:1.6}
}

/* Performance optimizations */
*{box-sizing:border-box}
img{max-width:100%;height:auto;loading:lazy}
.partner-logo{height:40px;filter:grayscale(100%);transition:filter 0.3s ease;will-change:filter}
.partner-logo:hover{filter:grayscale(0%)}

/* Reduce motion for accessibility */
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}
}