:root{--bg-primary:30, 40%, 98%;--bg-secondary:30, 30%, 95%;--bg-card:0, 0%, 100%;--text-primary:20, 15%, 15%;--text-secondary:20, 10%, 40%;--color-green:140, 18%, 32%;--color-green-light:140, 20%, 93%;--color-gold:43, 50%, 52%;--color-gold-light:43, 60%, 95%;--color-pink:345, 30%, 65%;--color-pink-light:345, 40%, 95%;--border-color:30, 20%, 88%;--focus-ring:140, 18%, 32%;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--shadow-sm:0 2px 8px rgba(0,0,0,.04);--shadow-md:0 8px 24px rgba(26,20,20,.06);--shadow-lg:0 16px 40px rgba(26,20,20,.1);--transition-smooth:all .4s cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--bg-primary:20, 10%, 8%;--bg-secondary:20, 8%, 12%;--bg-card:20, 8%, 15%;--text-primary:30, 20%, 92%;--text-secondary:30, 10%, 68%;--color-green:140, 22%, 60%;--color-green-light:140, 20%, 15%;--color-gold:43, 40%, 65%;--color-gold-light:43, 30%, 16%;--color-pink:345, 30%, 75%;--color-pink-light:345, 20%, 16%;--border-color:20, 8%, 18%;--focus-ring:140, 22%, 60%;--shadow-sm:0 2px 8px rgba(0,0,0,.2);--shadow-md:0 8px 24px rgba(0,0,0,.3);--shadow-lg:0 16px 40px rgba(0,0,0,.4)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:hsl(var(--bg-primary));width:100%;min-height:100vh;color:hsl(var(--text-primary));text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;transition:background-color .5s,color .5s;overflow-x:hidden}body{flex-direction:column;display:flex}h1,h2,h3,h4,h5,h6{color:hsl(var(--text-primary));font-family:Playfair Display,Georgia,serif;font-weight:600;line-height:1.25}p{color:hsl(var(--text-secondary));font-size:1.05rem}a{color:inherit;transition:var(--transition-smooth);text-decoration:none}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:hsl(var(--bg-primary))}::-webkit-scrollbar-thumb{background:hsl(var(--border-color));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--text-secondary))}.premium-glass{-webkit-backdrop-filter:blur(16px);background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.4)}[data-theme=dark] .premium-glass{-webkit-backdrop-filter:blur(16px);background:rgba(25,20,20,.6);border:1px solid rgba(255,255,255,.05)}.premium-shadow-sm{box-shadow:var(--shadow-sm)}.premium-shadow-md{box-shadow:var(--shadow-md)}.premium-shadow-lg{box-shadow:var(--shadow-lg)}.premium-gradient-green{background:linear-gradient(135deg, hsl(var(--color-green)), #293d30)}.premium-gradient-gold{background:linear-gradient(135deg, hsl(var(--color-gold)), #a18236)}.premium-gradient-pink{background:linear-gradient(135deg, hsl(var(--color-pink)), #af6a7b)}.hover-scale{transition:var(--transition-smooth)}.hover-scale:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.hover-glow{transition:var(--transition-smooth)}.hover-glow:hover{box-shadow:0 0 20px rgba(var(--color-green), .2)}.btn-primary{background-color:hsl(var(--color-green));color:#fff;border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;padding:.85rem 2rem;font-weight:500;display:inline-flex;box-shadow:0 4px 14px rgba(34,52,41,.15)}.btn-primary:hover{background-color:#334d3c;transform:translateY(-2px);box-shadow:0 6px 20px rgba(34,52,41,.25)}.btn-secondary{border:1.5px solid hsl(var(--border-color));border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-smooth);color:hsl(var(--text-primary));background:0 0;justify-content:center;align-items:center;padding:.85rem 2rem;font-weight:500;display:inline-flex}.btn-secondary:hover{background-color:hsl(var(--bg-secondary));border-color:hsl(var(--text-secondary))}.input-premium{border-radius:var(--radius-md);border:1.5px solid hsl(var(--border-color));background-color:hsl(var(--bg-card));width:100%;color:hsl(var(--text-primary));transition:var(--transition-smooth);padding:1rem 1.25rem}.input-premium:focus{border-color:hsl(var(--color-green));box-shadow:0 0 0 4px rgba(34,52,41,.08)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.mobile-only,.mobile-only-flex{display:none!important}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-only-flex{display:flex!important}}.mobile-bottom-nav{background-color:hsla(var(--bg-card), .85);-webkit-backdrop-filter:blur(16px);border-top:1px solid hsl(var(--border-color));z-index:1000;height:64px;padding:0 .5rem;padding-bottom:env(safe-area-inset-bottom);justify-content:space-around;align-items:center;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px rgba(0,0,0,.04)}@media (max-width:768px){.mobile-bottom-nav{display:flex}}.mobile-bottom-nav-item{color:hsl(var(--text-secondary));cursor:pointer;height:100%;transition:var(--transition-smooth);text-align:center;border-radius:var(--radius-sm);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;font-size:.72rem;font-weight:500;display:flex}.mobile-bottom-nav-item.active{color:hsl(var(--color-green))}@media (max-width:768px){.btn-primary,.btn-secondary,.input-premium{min-height:44px}a,button,select,input,textarea{min-width:44px}select,input,textarea{font-size:16px!important}}.grid-responsive-2col{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.grid-responsive-3col{grid-template-columns:1fr 1fr 1fr;gap:2rem;display:grid}@media (max-width:768px){.grid-responsive-2col,.grid-responsive-3col{grid-template-columns:1fr!important;gap:1.5rem!important}.mobile-hide{display:none!important}main.container{padding-bottom:90px!important}}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hero-grid{grid-template-columns:1.1fr .9fr;gap:3rem;display:grid}@media (max-width:768px){.hero-grid{grid-template-columns:1fr!important;gap:2rem!important}}.trainer-grid{grid-template-columns:.9fr 1.1fr;gap:5rem;display:grid}@media (max-width:768px){.trainer-grid{grid-template-columns:1fr!important;gap:2.5rem!important}.trainer-portrait{order:1!important}.trainer-bio{order:2!important}}.grid-2col-about{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.grid-2col-contra{grid-template-columns:1.1fr .9fr;gap:4rem;display:grid}.grid-2col-nutrition{grid-template-columns:.9fr 1.1fr;gap:4rem;display:grid}.grid-2col-footer{grid-template-columns:1.2fr .8fr;gap:4rem;display:grid}.grid-client-dashboard{grid-template-columns:1.25fr .75fr;gap:2rem;display:grid}.grid-client-bookings{grid-template-columns:1.15fr .85fr;gap:2.5rem;display:grid}@media (max-width:768px){.grid-2col-about,.grid-2col-contra,.grid-2col-nutrition,.grid-2col-footer,.grid-client-dashboard,.grid-client-bookings{grid-template-columns:1fr!important;gap:1.5rem!important}}.premium-header{z-index:90;border-bottom:1px solid hsl(var(--border-color));transition:var(--transition-smooth);padding:.8rem 2rem;position:-webkit-sticky;position:sticky;top:0}.header-logo{color:hsl(var(--color-green));white-space:nowrap;transition:var(--transition-smooth);font-family:Playfair Display,Georgia,serif;font-size:1.7rem;font-weight:700}.logo-container{transition:var(--transition-smooth);align-items:center;text-decoration:none;display:flex}.logo-container:hover{opacity:.85;transform:translateY(-1px)}.logo-image{object-fit:contain;width:auto;height:80px;transition:var(--transition-smooth)}.logo-text{letter-spacing:.15em;text-transform:uppercase;color:hsl(var(--color-green));transition:var(--transition-smooth);font-family:Playfair Display,Georgia,serif;font-size:.7rem;font-weight:600;line-height:1}@media (max-width:768px){.logo-image{height:64px}.logo-text{letter-spacing:.12em;font-size:.6rem}}@media (max-width:360px){.logo-image{height:52px}.logo-text{letter-spacing:.1em;font-size:.55rem}}.nav-link{white-space:nowrap}.hero-section{transition:var(--transition-smooth);padding:3.5rem 0 5rem;position:relative;overflow:hidden}@media (max-width:768px){.premium-header{padding:.75rem 1.25rem}.header-logo{font-size:1.35rem}.hero-section{padding:2.5rem 0 3rem}}@media (max-width:360px){.premium-header{padding:.6rem 1rem}.header-logo{font-size:1.15rem}}.hero-image-wrapper{border-radius:var(--radius-xl);width:100%;height:480px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.trainer-image-wrapper,.nutritionist-image-wrapper{aspect-ratio:4/3;border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-md);border:1px solid hsl(var(--border-color));position:relative;overflow:hidden}.h3-large{font-size:max(1.8rem,min(6vw,2.8rem))!important}.h3-medium{font-size:max(1.6rem,min(5.5vw,2.5rem))!important}.h3-small{font-size:max(1.4rem,min(5vw,2.2rem))!important}@media (max-width:768px){.hero-image-wrapper{height:320px!important}.trainer-image-wrapper,.nutritionist-image-wrapper{height:auto!important}}.form-grid-2col{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-grid-3col{grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}.form-grid-3col-custom{grid-template-columns:1fr 1fr 1.2fr;gap:1rem;display:grid}.form-grid-3col-auto{grid-template-columns:1fr 1fr auto;align-items:flex-end;gap:1rem;display:grid}.form-grid-3col-custom2{grid-template-columns:1fr 1fr 120px;align-items:flex-end;gap:1rem;display:grid}@media (max-width:600px){.form-grid-2col,.form-grid-3col,.form-grid-3col-custom,.form-grid-3col-auto,.form-grid-3col-custom2{grid-template-columns:1fr!important;gap:.85rem!important}}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;-webkit-overflow-scrolling:touch;background-color:rgba(0,0,0,.55);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto;transform:translate(0,0)}.modal-content{width:100%;margin:auto;position:relative}@media (max-width:600px){.modal-overlay{align-items:flex-start!important;padding:1rem .5rem!important}.modal-content{margin-top:1.5rem!important;margin-bottom:3.5rem!important;padding:1.5rem 1.25rem!important}}.cropper-zoom-control{display:flex}@media (max-width:768px){.cropper-zoom-control{display:none!important}}
