:root{--ptp-gold:#FCB900;--ptp-gold-hover:#E5A800;--ptp-gold-light:rgba(252,185,0,0.1);--ptp-gold-lighter:rgba(252,185,0,0.05);--ptp-gold-glow:rgba(252,185,0,0.4);--ptp-black:#0A0A0A;--ptp-white:#FFFFFF;--ptp-gray-50:#FAFAFA;--ptp-gray-100:#F5F5F5;--ptp-gray-200:#E5E5E5;--ptp-gray-300:#D4D4D4;--ptp-gray-400:#A3A3A3;--ptp-gray-500:#737373;--ptp-gray-600:#525252;--ptp-gray-700:#404040;--ptp-gray-800:#262626;--ptp-gray-900:#171717;--ptp-success:#22C55E;--ptp-success-light:rgba(34,197,94,0.1);--ptp-error:#EF4444;--ptp-error-light:rgba(239,68,68,0.1);--ptp-warning:#F59E0B;--ptp-warning-light:rgba(245,158,11,0.1);--ptp-info:#3B82F6;--ptp-info-light:rgba(59,130,246,0.1);--ptp-font-display:'Oswald',-apple-system,BlinkMacSystemFont,sans-serif;--ptp-font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--ptp-font-mono:'JetBrains Mono','Fira Code',monospace;--ptp-text-xs:11px;--ptp-text-sm:13px;--ptp-text-base:15px;--ptp-text-lg:17px;--ptp-text-xl:20px;--ptp-text-2xl:24px;--ptp-text-3xl:30px;--ptp-text-4xl:36px;--ptp-text-5xl:48px;--ptp-leading-none:1;--ptp-leading-tight:1.1;--ptp-leading-snug:1.3;--ptp-leading-normal:1.5;--ptp-leading-relaxed:1.7;--ptp-space-0:0;--ptp-space-1:4px;--ptp-space-2:8px;--ptp-space-3:12px;--ptp-space-4:16px;--ptp-space-5:20px;--ptp-space-6:24px;--ptp-space-8:32px;--ptp-space-10:40px;--ptp-space-12:48px;--ptp-space-16:64px;--ptp-space-20:80px;--ptp-radius-none:0;--ptp-radius-sm:6px;--ptp-radius-md:10px;--ptp-radius-lg:14px;--ptp-radius-xl:18px;--ptp-radius-2xl:24px;--ptp-radius-full:9999px;--ptp-border-width:2px;--ptp-border-color:var(--ptp-gray-200);--ptp-shadow-xs:0 1px 2px rgba(0,0,0,0.04);--ptp-shadow-sm:0 2px 4px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.06);--ptp-shadow-md:0 4px 12px rgba(0,0,0,0.06),0 2px 4px rgba(0,0,0,0.04);--ptp-shadow-lg:0 12px 32px rgba(0,0,0,0.08),0 4px 8px rgba(0,0,0,0.04);--ptp-shadow-xl:0 20px 48px rgba(0,0,0,0.1),0 8px 16px rgba(0,0,0,0.06);--ptp-shadow-2xl:0 32px 64px rgba(0,0,0,0.12);--ptp-shadow-glow:0 0 24px var(--ptp-gold-glow);--ptp-shadow-inner:inset 0 2px 4px rgba(0,0,0,0.06);--ptp-ease-default:cubic-bezier(0.4,0,0.2,1);--ptp-ease-in:cubic-bezier(0.4,0,1,1);--ptp-ease-out:cubic-bezier(0,0,0.2,1);--ptp-ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ptp-ease-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);--ptp-duration-75:75ms;--ptp-duration-100:100ms;--ptp-duration-150:150ms;--ptp-duration-200:200ms;--ptp-duration-300:300ms;--ptp-duration-500:500ms;--ptp-z-behind:-1;--ptp-z-base:0;--ptp-z-dropdown:100;--ptp-z-sticky:200;--ptp-z-fixed:300;--ptp-z-header:400;--ptp-z-overlay:500;--ptp-z-modal:600;--ptp-z-popover:700;--ptp-z-tooltip:800;--ptp-z-toast:900;--ptp-z-max:9999;--ptp-max-width-xs:320px;--ptp-max-width-sm:480px;--ptp-max-width-md:640px;--ptp-max-width-lg:768px;--ptp-max-width-xl:1024px;--ptp-max-width-2xl:1280px;--ptp-max-width-3xl:1440px;--ptp-safe-top:env(safe-area-inset-top,0px);--ptp-safe-bottom:env(safe-area-inset-bottom,0px);--ptp-safe-left:env(safe-area-inset-left,0px);--ptp-safe-right:env(safe-area-inset-right,0px)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:auto}
body{margin:0;font-family:var(--ptp-font-body);font-size:var(--ptp-text-base);line-height:var(--ptp-leading-normal);color:var(--ptp-gray-800);background-color:var(--ptp-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,h5,h6,.ptp-h1,.ptp-h2,.ptp-h3,.ptp-h4,.ptp-h5,.ptp-h6{font-family:var(--ptp-font-display);font-weight:700;text-transform:uppercase;line-height:var(--ptp-leading-tight);margin:0 0 var(--ptp-space-4);color:var(--ptp-black)}
h1,.ptp-h1{font-size:clamp(28px,5vw,var(--ptp-text-5xl))}
h2,.ptp-h2{font-size:clamp(24px,4vw,var(--ptp-text-4xl))}
h3,.ptp-h3{font-size:clamp(20px,3vw,var(--ptp-text-3xl))}
h4,.ptp-h4{font-size:var(--ptp-text-2xl)}
h5,.ptp-h5{font-size:var(--ptp-text-xl)}
h6,.ptp-h6{font-size:var(--ptp-text-lg)}
p{margin:0 0 var(--ptp-space-4);line-height:var(--ptp-leading-relaxed)}
a{color:inherit;text-decoration:none}
strong,b{font-weight:600}
.ptp-text-gold{color:var(--ptp-gold) !important}
.ptp-text-black{color:var(--ptp-black) !important}
.ptp-text-white{color:var(--ptp-white) !important}
.ptp-text-gray{color:var(--ptp-gray-500) !important}
.ptp-text-muted{color:var(--ptp-gray-400) !important}
.ptp-text-success{color:var(--ptp-success) !important}
.ptp-text-error{color:var(--ptp-error) !important}
.ptp-text-xs{font-size:var(--ptp-text-xs) !important}
.ptp-text-sm{font-size:var(--ptp-text-sm) !important}
.ptp-text-base{font-size:var(--ptp-text-base) !important}
.ptp-text-lg{font-size:var(--ptp-text-lg) !important}
.ptp-text-xl{font-size:var(--ptp-text-xl) !important}
.ptp-text-left{text-align:left !important}
.ptp-text-center{text-align:center !important}
.ptp-text-right{text-align:right !important}
.ptp-uppercase{text-transform:uppercase !important}
.ptp-lowercase{text-transform:lowercase !important}
.ptp-capitalize{text-transform:capitalize !important}
.ptp-normal-case{text-transform:none !important}
.ptp-font-normal{font-weight:400 !important}
.ptp-font-medium{font-weight:500 !important}
.ptp-font-semibold{font-weight:600 !important}
.ptp-font-bold{font-weight:700 !important}
.ptp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ptp-space-2);padding:var(--ptp-space-3) var(--ptp-space-6);font-family:var(--ptp-font-display);font-size:var(--ptp-text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.02em;text-decoration:none;border:var(--ptp-border-width) solid transparent;border-radius:var(--ptp-radius-md);cursor:pointer;transition:background-color var(--ptp-duration-150) var(--ptp-ease-default),border-color var(--ptp-duration-150) var(--ptp-ease-default),transform var(--ptp-duration-150) var(--ptp-ease-spring),box-shadow var(--ptp-duration-150) var(--ptp-ease-default);-webkit-tap-highlight-color:transparent}
.ptp-btn:active{transform:scale(0.96)}
.ptp-btn-primary{background-color:var(--ptp-gold);color:var(--ptp-black);border-color:var(--ptp-gold)}
.ptp-btn-primary:hover{background-color:var(--ptp-gold-hover);border-color:var(--ptp-gold-hover)}
.ptp-btn-secondary{background-color:var(--ptp-black);color:var(--ptp-white);border-color:var(--ptp-black)}
.ptp-btn-secondary:hover{background-color:var(--ptp-gray-800);border-color:var(--ptp-gray-800)}
.ptp-btn-outline{background-color:transparent;color:var(--ptp-black);border-color:var(--ptp-gray-200)}
.ptp-btn-outline:hover{background-color:var(--ptp-gray-100);border-color:var(--ptp-gray-300)}
.ptp-btn-ghost{background-color:transparent;color:var(--ptp-gray-600);border-color:transparent}
.ptp-btn-ghost:hover{background-color:var(--ptp-gray-100);color:var(--ptp-black)}
.ptp-btn-sm{padding:var(--ptp-space-2) var(--ptp-space-4);font-size:var(--ptp-text-xs)}
.ptp-btn-lg{padding:var(--ptp-space-4) var(--ptp-space-8);font-size:var(--ptp-text-base)}
.ptp-btn-xl{padding:var(--ptp-space-5) var(--ptp-space-10);font-size:var(--ptp-text-lg)}
.ptp-btn-block{display:flex;width:100%}
.ptp-btn-icon{padding:var(--ptp-space-3);border-radius:var(--ptp-radius-md)}
.ptp-btn-icon svg{width:20px;height:20px}
.ptp-card{background:var(--ptp-white);border-radius:var(--ptp-radius-xl);padding:var(--ptp-space-6);box-shadow:var(--ptp-shadow-md)}
.ptp-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ptp-space-4);padding-bottom:var(--ptp-space-4);border-bottom:2px solid var(--ptp-gray-100)}
.ptp-card-title{font-family:var(--ptp-font-display);font-size:var(--ptp-text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.02em;margin:0}
.ptp-card-footer{margin-top:var(--ptp-space-4);padding-top:var(--ptp-space-4);border-top:1px solid var(--ptp-gray-100)}
.ptp-card-dark{background:var(--ptp-black);color:var(--ptp-white)}
.ptp-card-gold{background:linear-gradient(135deg,var(--ptp-gold) 0%,var(--ptp-gold-hover) 100%);color:var(--ptp-black)}
.ptp-card-bordered{border:var(--ptp-border-width) solid var(--ptp-gray-200);box-shadow:none}
.ptp-card-hover{transition:transform var(--ptp-duration-200) var(--ptp-ease-spring),box-shadow var(--ptp-duration-200) var(--ptp-ease-default)}
.ptp-card-hover:hover{transform:translateY(-4px);box-shadow:var(--ptp-shadow-lg)}
.ptp-form-group{margin-bottom:var(--ptp-space-4)}
.ptp-label{display:block;font-size:var(--ptp-text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--ptp-gray-600);margin-bottom:var(--ptp-space-2)}
.ptp-input,.ptp-select,.ptp-textarea{display:block;width:100%;padding:var(--ptp-space-3) var(--ptp-space-4);font-family:var(--ptp-font-body);font-size:16px;color:var(--ptp-black);background:var(--ptp-white);border:var(--ptp-border-width) solid var(--ptp-gray-200);border-radius:var(--ptp-radius-md);transition:border-color var(--ptp-duration-150) var(--ptp-ease-default),box-shadow var(--ptp-duration-150) var(--ptp-ease-default);-webkit-appearance:none;appearance:none}
.ptp-input:focus,.ptp-select:focus,.ptp-textarea:focus{outline:none;border-color:var(--ptp-gold);box-shadow:0 0 0 3px var(--ptp-gold-light)}
.ptp-input::placeholder{color:var(--ptp-gray-400)}
.ptp-input-error{border-color:var(--ptp-error)}
.ptp-input-error:focus{box-shadow:0 0 0 3px var(--ptp-error-light)}
.ptp-hint{font-size:var(--ptp-text-xs);color:var(--ptp-gray-400);margin-top:var(--ptp-space-1)}
.ptp-error-text{font-size:var(--ptp-text-xs);color:var(--ptp-error);margin-top:var(--ptp-space-1)}
.ptp-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--ptp-space-4) center;padding-right:var(--ptp-space-10)}
.ptp-textarea{min-height:120px;resize:vertical}
.ptp-checkbox,.ptp-radio{display:flex;align-items:flex-start;gap:var(--ptp-space-3);cursor:pointer}
.ptp-checkbox input,.ptp-radio input{width:20px;height:20px;margin:0;cursor:pointer;accent-color:var(--ptp-gold)}
.ptp-badge{display:inline-flex;align-items:center;gap:var(--ptp-space-1);padding:var(--ptp-space-1) var(--ptp-space-3);font-size:var(--ptp-text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.02em;border-radius:var(--ptp-radius-full);white-space:nowrap}
.ptp-badge-gold{background:var(--ptp-gold-light);color:var(--ptp-gold-hover)}
.ptp-badge-success{background:var(--ptp-success-light);color:var(--ptp-success)}
.ptp-badge-error{background:var(--ptp-error-light);color:var(--ptp-error)}
.ptp-badge-warning{background:var(--ptp-warning-light);color:var(--ptp-warning)}
.ptp-badge-info{background:var(--ptp-info-light);color:var(--ptp-info)}
.ptp-badge-gray{background:var(--ptp-gray-100);color:var(--ptp-gray-600)}
.ptp-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ptp-radius-full);overflow:hidden;background:var(--ptp-gold-light);color:var(--ptp-gold);font-family:var(--ptp-font-display);font-weight:600}
.ptp-avatar img{width:100%;height:100%;object-fit:cover}
.ptp-avatar-sm{width:32px;height:32px;font-size:12px}
.ptp-avatar-md{width:48px;height:48px;font-size:16px}
.ptp-avatar-lg{width:64px;height:64px;font-size:20px}
.ptp-avatar-xl{width:96px;height:96px;font-size:28px}
.ptp-avatar-bordered{border:3px solid var(--ptp-gold)}
.ptp-container{width:100%;max-width:var(--ptp-max-width-2xl);margin:0 auto;padding:0 var(--ptp-space-4)}
@media (min-width:768px){.ptp-container{padding:0 var(--ptp-space-6)}
}
@media (min-width:1024px){.ptp-container{padding:0 var(--ptp-space-8)}
}
.ptp-flex{display:flex !important}
.ptp-flex-col{flex-direction:column !important}
.ptp-flex-wrap{flex-wrap:wrap !important}
.ptp-items-center{align-items:center !important}
.ptp-items-start{align-items:flex-start !important}
.ptp-items-end{align-items:flex-end !important}
.ptp-justify-center{justify-content:center !important}
.ptp-justify-between{justify-content:space-between !important}
.ptp-justify-end{justify-content:flex-end !important}
.ptp-gap-1{gap:var(--ptp-space-1) !important}
.ptp-gap-2{gap:var(--ptp-space-2) !important}
.ptp-gap-3{gap:var(--ptp-space-3) !important}
.ptp-gap-4{gap:var(--ptp-space-4) !important}
.ptp-gap-6{gap:var(--ptp-space-6) !important}
.ptp-gap-8{gap:var(--ptp-space-8) !important}
.ptp-grid{display:grid !important}
.ptp-grid-cols-1{grid-template-columns:repeat(1,1fr) !important}
.ptp-grid-cols-2{grid-template-columns:repeat(2,1fr) !important}
.ptp-grid-cols-3{grid-template-columns:repeat(3,1fr) !important}
.ptp-grid-cols-4{grid-template-columns:repeat(4,1fr) !important}
@media (min-width:640px){.ptp-sm-grid-cols-2{grid-template-columns:repeat(2,1fr) !important}
}
@media (min-width:768px){.ptp-md-grid-cols-2{grid-template-columns:repeat(2,1fr) !important}
.ptp-md-grid-cols-3{grid-template-columns:repeat(3,1fr) !important}
}
@media (min-width:1024px){.ptp-lg-grid-cols-3{grid-template-columns:repeat(3,1fr) !important}
.ptp-lg-grid-cols-4{grid-template-columns:repeat(4,1fr) !important}
}
.ptp-m-0{margin:0 !important}
.ptp-m-auto{margin:auto !important}
.ptp-mt-0{margin-top:0 !important}
.ptp-mt-2{margin-top:var(--ptp-space-2) !important}
.ptp-mt-4{margin-top:var(--ptp-space-4) !important}
.ptp-mt-6{margin-top:var(--ptp-space-6) !important}
.ptp-mt-8{margin-top:var(--ptp-space-8) !important}
.ptp-mb-0{margin-bottom:0 !important}
.ptp-mb-2{margin-bottom:var(--ptp-space-2) !important}
.ptp-mb-4{margin-bottom:var(--ptp-space-4) !important}
.ptp-mb-6{margin-bottom:var(--ptp-space-6) !important}
.ptp-mb-8{margin-bottom:var(--ptp-space-8) !important}
.ptp-mx-auto{margin-left:auto !important;margin-right:auto !important}
.ptp-p-0{padding:0 !important}
.ptp-p-2{padding:var(--ptp-space-2) !important}
.ptp-p-4{padding:var(--ptp-space-4) !important}
.ptp-p-6{padding:var(--ptp-space-6) !important}
.ptp-p-8{padding:var(--ptp-space-8) !important}
.ptp-px-4{padding-left:var(--ptp-space-4) !important;padding-right:var(--ptp-space-4) !important}
.ptp-py-4{padding-top:var(--ptp-space-4) !important;padding-bottom:var(--ptp-space-4) !important}
.ptp-py-6{padding-top:var(--ptp-space-6) !important;padding-bottom:var(--ptp-space-6) !important}
.ptp-py-8{padding-top:var(--ptp-space-8) !important;padding-bottom:var(--ptp-space-8) !important}
.ptp-w-full{width:100% !important}
.ptp-w-auto{width:auto !important}
.ptp-max-w-sm{max-width:var(--ptp-max-width-sm) !important}
.ptp-max-w-md{max-width:var(--ptp-max-width-md) !important}
.ptp-max-w-lg{max-width:var(--ptp-max-width-lg) !important}
.ptp-max-w-xl{max-width:var(--ptp-max-width-xl) !important}
.ptp-max-w-2xl{max-width:var(--ptp-max-width-2xl) !important}
.ptp-hidden{display:none !important}
.ptp-block{display:block !important}
.ptp-inline{display:inline !important}
.ptp-inline-block{display:inline-block !important}
@media (min-width:768px){.ptp-md-hidden{display:none !important}
.ptp-md-block{display:block !important}
.ptp-md-flex{display:flex !important}
}
@media (max-width:767px){.ptp-mobile-hidden{display:none !important}
}
.ptp-bg-white{background-color:var(--ptp-white) !important}
.ptp-bg-black{background-color:var(--ptp-black) !important}
.ptp-bg-gold{background-color:var(--ptp-gold) !important}
.ptp-bg-gold-light{background-color:var(--ptp-gold-light) !important}
.ptp-bg-gray-50{background-color:var(--ptp-gray-50) !important}
.ptp-bg-gray-100{background-color:var(--ptp-gray-100) !important}
.ptp-border{border:var(--ptp-border-width) solid var(--ptp-border-color) !important}
.ptp-border-t{border-top:1px solid var(--ptp-border-color) !important}
.ptp-border-b{border-bottom:1px solid var(--ptp-border-color) !important}
.ptp-border-gold{border-color:var(--ptp-gold) !important}
.ptp-border-none{border:none !important}
.ptp-rounded-sm{border-radius:var(--ptp-radius-sm) !important}
.ptp-rounded-md{border-radius:var(--ptp-radius-md) !important}
.ptp-rounded-lg{border-radius:var(--ptp-radius-lg) !important}
.ptp-rounded-xl{border-radius:var(--ptp-radius-xl) !important}
.ptp-rounded-full{border-radius:var(--ptp-radius-full) !important}
.ptp-shadow-none{box-shadow:none !important}
.ptp-shadow-sm{box-shadow:var(--ptp-shadow-sm) !important}
.ptp-shadow-md{box-shadow:var(--ptp-shadow-md) !important}
.ptp-shadow-lg{box-shadow:var(--ptp-shadow-lg) !important}
.ptp-shadow-xl{box-shadow:var(--ptp-shadow-xl) !important}
@keyframes ptp-fade-in{from{opacity:0}
to{opacity:1}
}
@keyframes ptp-slide-up{from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes ptp-slide-down{from{opacity:0;transform:translateY(-20px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes ptp-scale-in{from{opacity:0;transform:scale(0.95)}
to{opacity:1;transform:scale(1)}
}
@keyframes ptp-spin{from{transform:rotate(0deg)}
to{transform:rotate(360deg)}
}
@keyframes ptp-pulse{0%,100%{opacity:1}
50%{opacity:0.5}
}
@keyframes ptp-shimmer{0%{background-position:-200% 0}
100%{background-position:200% 0}
}
.ptp-animate-fade-in{animation:ptp-fade-in var(--ptp-duration-300) var(--ptp-ease-default)}
.ptp-animate-slide-up{animation:ptp-slide-up var(--ptp-duration-300) var(--ptp-ease-spring)}
.ptp-animate-slide-down{animation:ptp-slide-down var(--ptp-duration-300) var(--ptp-ease-spring)}
.ptp-animate-scale-in{animation:ptp-scale-in var(--ptp-duration-200) var(--ptp-ease-spring)}
.ptp-animate-spin{animation:ptp-spin 1s linear infinite}
.ptp-animate-pulse{animation:ptp-pulse 2s var(--ptp-ease-default) infinite}
.ptp-skeleton{background:linear-gradient(90deg,var(--ptp-gray-200) 0%,var(--ptp-gray-100) 50%,var(--ptp-gray-200) 100%);background-size:200% 100%;animation:ptp-shimmer 1.5s ease-in-out infinite;border-radius:var(--ptp-radius-sm)}
@media (max-width:639px){.ptp-hide-xs{display:none !important}
}
@media (min-width:640px) and (max-width:767px){.ptp-hide-sm{display:none !important}
}
@media (min-width:768px) and (max-width:1023px){.ptp-hide-md{display:none !important}
}
@media (min-width:1024px){.ptp-hide-lg{display:none !important}
}
@media print{.ptp-no-print{display:none !important}
body{background:white;color:black}
.ptp-card{box-shadow:none;border:1px solid #ddd}
}
.ptp-trainer-card{position:relative;background:var(--ptp-white);border-radius:var(--ptp-radius-xl);overflow:hidden;box-shadow:var(--ptp-shadow-md);transition:transform var(--ptp-duration-200) var(--ptp-ease-spring),box-shadow var(--ptp-duration-200) var(--ptp-ease-default)}
.ptp-trainer-card:hover{transform:translateY(-6px);box-shadow:var(--ptp-shadow-xl)}
.ptp-trainer-card-image{position:relative;aspect-ratio:4/5;overflow:hidden}
.ptp-trainer-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--ptp-duration-300) var(--ptp-ease-default)}
.ptp-trainer-card:hover .ptp-trainer-card-image img{transform:scale(1.05)}
.ptp-trainer-card-badge{position:absolute;top:12px;left:12px;display:flex;gap:6px}
.ptp-trainer-card-badge span{padding:6px 10px;background:rgba(0,0,0,0.7);color:var(--ptp-white);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;border-radius:var(--ptp-radius-sm);backdrop-filter:blur(8px)}
.ptp-trainer-card-badge .pro{background:var(--ptp-gold);color:var(--ptp-black)}
.ptp-trainer-card-favorite{position:absolute;top:12px;right:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.9);border:none;border-radius:50%;cursor:pointer;transition:background var(--ptp-duration-150) var(--ptp-ease-default),transform var(--ptp-duration-150) var(--ptp-ease-spring);backdrop-filter:blur(8px)}
.ptp-trainer-card-favorite:hover{background:var(--ptp-white);transform:scale(1.1)}
.ptp-trainer-card-favorite.active{background:var(--ptp-error-light)}
.ptp-trainer-card-favorite svg{width:18px;height:18px;stroke:var(--ptp-gray-600);fill:none;transition:all var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-trainer-card-favorite.active svg{stroke:var(--ptp-error);fill:var(--ptp-error)}
.ptp-trainer-card-content{padding:16px}
.ptp-trainer-card-name{font-family:var(--ptp-font-display);font-size:18px;font-weight:700;text-transform:uppercase;margin:0 0 4px;color:var(--ptp-black)}
.ptp-trainer-card-title{font-size:13px;color:var(--ptp-gray-500);margin:0 0 12px}
.ptp-trainer-card-meta{display:flex;align-items:center;gap:16px;margin-bottom:12px}
.ptp-trainer-card-rating{display:flex;align-items:center;gap:4px}
.ptp-trainer-card-rating svg{width:14px;height:14px;fill:var(--ptp-gold)}
.ptp-trainer-card-rating span{font-size:13px;font-weight:600;color:var(--ptp-black)}
.ptp-trainer-card-rating .count{color:var(--ptp-gray-400);font-weight:400}
.ptp-trainer-card-location{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--ptp-gray-500)}
.ptp-trainer-card-location svg{width:14px;height:14px;stroke:var(--ptp-gray-400)}
.ptp-trainer-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--ptp-gray-100)}
.ptp-trainer-card-price{font-family:var(--ptp-font-display);font-size:20px;font-weight:700;color:var(--ptp-black)}
.ptp-trainer-card-price span{font-size:13px;font-weight:400;color:var(--ptp-gray-400)}
.ptp-trainer-card-cta{padding:10px 16px;background:var(--ptp-gold);color:var(--ptp-black);font-family:var(--ptp-font-display);font-size:12px;font-weight:600;text-transform:uppercase;text-decoration:none;border-radius:var(--ptp-radius-md);transition:background var(--ptp-duration-150) var(--ptp-ease-default),transform var(--ptp-duration-150) var(--ptp-ease-spring)}
.ptp-trainer-card-cta:hover{background:var(--ptp-gold-hover)}
.ptp-trainer-card-cta:active{transform:scale(0.96)}
.ptp-trainer-card-compact{display:flex;gap:16px;padding:16px;background:var(--ptp-white);border-radius:var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-sm);transition:box-shadow var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-trainer-card-compact:hover{box-shadow:var(--ptp-shadow-md)}
.ptp-trainer-card-compact-image{width:72px;height:72px;border-radius:var(--ptp-radius-md);overflow:hidden;flex-shrink:0}
.ptp-trainer-card-compact-image img{width:100%;height:100%;object-fit:cover}
.ptp-trainer-card-compact-content{flex:1;min-width:0}
.ptp-toast-container{position:fixed;bottom:calc(20px + var(--ptp-safe-bottom,0px));left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;z-index:var(--ptp-z-toast);pointer-events:none;max-width:calc(100vw - 32px)}
@media (min-width:768px){.ptp-toast-container{bottom:32px;right:32px;left:auto;transform:none;max-width:400px}
}
.ptp-toast{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--ptp-black);color:var(--ptp-white);border-radius:var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-xl);pointer-events:auto;animation:ptp-toast-in 0.3s var(--ptp-ease-spring)}
.ptp-toast.removing{animation:ptp-toast-out 0.25s var(--ptp-ease-default) forwards}
@keyframes ptp-toast-in{from{opacity:0;transform:translateY(20px) scale(0.95)}
to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes ptp-toast-out{from{opacity:1;transform:translateY(0) scale(1)}
to{opacity:0;transform:translateY(-10px) scale(0.95)}
}
.ptp-toast-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}
.ptp-toast-icon svg{width:16px;height:16px}
.ptp-toast.success .ptp-toast-icon{background:var(--ptp-success)}
.ptp-toast.error .ptp-toast-icon{background:var(--ptp-error)}
.ptp-toast.warning .ptp-toast-icon{background:var(--ptp-warning)}
.ptp-toast.info .ptp-toast-icon{background:var(--ptp-info)}
.ptp-toast-message{flex:1;font-size:14px;font-weight:500;line-height:1.4}
.ptp-toast-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border:none;border-radius:var(--ptp-radius-sm);cursor:pointer;opacity:0.6;transition:opacity var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-toast-close:hover{opacity:1}
.ptp-toast-close svg{width:14px;height:14px;stroke:var(--ptp-white)}
.ptp-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;padding:16px;z-index:var(--ptp-z-modal);opacity:0;visibility:hidden;transition:opacity var(--ptp-duration-200) var(--ptp-ease-default),visibility var(--ptp-duration-200) var(--ptp-ease-default);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ptp-modal-overlay.open{opacity:1;visibility:visible}
.ptp-modal{width:100%;max-width:480px;max-height:calc(100vh - 32px);background:var(--ptp-white);border-radius:var(--ptp-radius-2xl);overflow:hidden;transform:scale(0.95) translateY(20px);transition:transform var(--ptp-duration-200) var(--ptp-ease-spring)}
.ptp-modal-overlay.open .ptp-modal{transform:scale(1) translateY(0)}
.ptp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--ptp-gray-100)}
.ptp-modal-title{font-family:var(--ptp-font-display);font-size:18px;font-weight:700;text-transform:uppercase;margin:0}
.ptp-modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--ptp-gray-100);border:none;border-radius:var(--ptp-radius-md);cursor:pointer;transition:background var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-modal-close:hover{background:var(--ptp-gray-200)}
.ptp-modal-close svg{width:18px;height:18px;stroke:var(--ptp-gray-600)}
.ptp-modal-body{padding:24px;overflow-y:auto;max-height:calc(100vh - 200px)}
.ptp-modal-footer{display:flex;gap:12px;padding:20px 24px;border-top:1px solid var(--ptp-gray-100)}
.ptp-modal-footer .ptp-btn{flex:1}
@media (max-width:639px){.ptp-modal-fullscreen{max-width:none;max-height:none;height:100%;border-radius:0}
.ptp-modal-fullscreen .ptp-modal-body{max-height:calc(100vh - 160px)}
}
.ptp-bottom-sheet-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:var(--ptp-z-modal);opacity:0;visibility:hidden;transition:opacity var(--ptp-duration-200) var(--ptp-ease-default),visibility var(--ptp-duration-200) var(--ptp-ease-default)}
.ptp-bottom-sheet-overlay.open{opacity:1;visibility:visible}
.ptp-bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--ptp-white);border-radius:var(--ptp-radius-2xl) var(--ptp-radius-2xl) 0 0;max-height:90vh;transform:translateY(100%);transition:transform var(--ptp-duration-300) var(--ptp-ease-spring);z-index:calc(var(--ptp-z-modal) + 1);overflow:hidden}
.ptp-bottom-sheet-overlay.open .ptp-bottom-sheet{transform:translateY(0)}
.ptp-bottom-sheet-handle{display:flex;justify-content:center;padding:12px}
.ptp-bottom-sheet-handle::before{content:'';width:36px;height:4px;background:var(--ptp-gray-300);border-radius:2px}
.ptp-bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px 16px}
.ptp-bottom-sheet-title{font-family:var(--ptp-font-display);font-size:18px;font-weight:700;text-transform:uppercase;margin:0}
.ptp-bottom-sheet-body{padding:0 20px 20px;padding-bottom:calc(20px + var(--ptp-safe-bottom,0px));overflow-y:auto;max-height:calc(90vh - 100px);-webkit-overflow-scrolling:touch}
.ptp-tabs{display:flex;gap:4px;padding:4px;background:var(--ptp-gray-100);border-radius:var(--ptp-radius-lg);overflow-x:auto;-webkit-overflow-scrolling:touch}
.ptp-tabs::-webkit-scrollbar{display:none}
.ptp-tab{flex:1;min-width:max-content;padding:12px 20px;font-family:var(--ptp-font-display);font-size:13px;font-weight:600;text-transform:uppercase;text-align:center;color:var(--ptp-gray-500);background:transparent;border:none;border-radius:var(--ptp-radius-md);cursor:pointer;transition:color var(--ptp-duration-150) var(--ptp-ease-default),background var(--ptp-duration-150) var(--ptp-ease-default);white-space:nowrap}
.ptp-tab:hover{color:var(--ptp-black)}
.ptp-tab.active{color:var(--ptp-black);background:var(--ptp-white);box-shadow:var(--ptp-shadow-sm)}
.ptp-tab-content{display:none;padding:20px 0}
.ptp-tab-content.active{display:block;animation:ptp-fade-in var(--ptp-duration-200) var(--ptp-ease-default)}
.ptp-pills{display:flex;gap:8px;flex-wrap:wrap}
.ptp-pill{padding:8px 16px;font-size:13px;font-weight:500;color:var(--ptp-gray-600);background:var(--ptp-gray-100);border:2px solid transparent;border-radius:var(--ptp-radius-full);cursor:pointer;transition:all var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-pill:hover{background:var(--ptp-gray-200)}
.ptp-pill.active{color:var(--ptp-black);background:var(--ptp-gold-light);border-color:var(--ptp-gold)}
.ptp-progress{height:8px;background:var(--ptp-gray-200);border-radius:var(--ptp-radius-full);overflow:hidden}
.ptp-progress-bar{height:100%;background:var(--ptp-gold);border-radius:var(--ptp-radius-full);transition:width var(--ptp-duration-500) var(--ptp-ease-spring)}
.ptp-progress-bar.animated{background:linear-gradient( 90deg,var(--ptp-gold) 0%,var(--ptp-gold-hover) 50%,var(--ptp-gold) 100% );background-size:200% 100%;animation:ptp-shimmer 2s linear infinite}
.ptp-steps{display:flex;align-items:center;justify-content:space-between}
.ptp-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}
.ptp-step:not(:last-child)::after{content:'';position:absolute;top:16px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:var(--ptp-gray-200)}
.ptp-step.completed:not(:last-child)::after{background:var(--ptp-gold)}
.ptp-step-circle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--ptp-gray-200);color:var(--ptp-gray-500);font-family:var(--ptp-font-display);font-size:13px;font-weight:700;border-radius:50%;position:relative;z-index:1;transition:all var(--ptp-duration-200) var(--ptp-ease-default)}
.ptp-step.active .ptp-step-circle{background:var(--ptp-gold);color:var(--ptp-black);box-shadow:0 0 0 4px var(--ptp-gold-light)}
.ptp-step.completed .ptp-step-circle{background:var(--ptp-gold);color:var(--ptp-black)}
.ptp-step.completed .ptp-step-circle svg{width:16px;height:16px;stroke:var(--ptp-black)}
.ptp-step-label{font-size:12px;font-weight:500;color:var(--ptp-gray-400);text-align:center}
.ptp-step.active .ptp-step-label,.ptp-step.completed .ptp-step-label{color:var(--ptp-black)}
.ptp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}
.ptp-empty-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--ptp-gray-100);border-radius:50%;margin-bottom:20px}
.ptp-empty-icon svg{width:40px;height:40px;stroke:var(--ptp-gray-400)}
.ptp-empty-title{font-family:var(--ptp-font-display);font-size:18px;font-weight:700;text-transform:uppercase;color:var(--ptp-black);margin:0 0 8px}
.ptp-empty-text{font-size:14px;color:var(--ptp-gray-500);max-width:280px;margin:0 0 20px}
.ptp-spinner{width:24px;height:24px;border:2px solid var(--ptp-gray-200);border-top-color:var(--ptp-gold);border-radius:50%;animation:ptp-spin 0.8s linear infinite}
.ptp-spinner-sm{width:16px;height:16px;border-width:2px}
.ptp-spinner-lg{width:36px;height:36px;border-width:3px}
.ptp-spinner-xl{width:48px;height:48px;border-width:4px}
.ptp-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.8);z-index:10}
.ptp-skeleton-text{height:14px;border-radius:4px}
.ptp-skeleton-title{height:20px;width:60%;border-radius:4px}
.ptp-skeleton-avatar{width:48px;height:48px;border-radius:50%}
.ptp-skeleton-card{height:200px;border-radius:var(--ptp-radius-lg)}
.ptp-skeleton-btn{height:44px;width:120px;border-radius:var(--ptp-radius-md)}
.ptp-stat{text-align:center}
.ptp-stat-value{font-family:var(--ptp-font-display);font-size:32px;font-weight:700;color:var(--ptp-black);line-height:1}
.ptp-stat-value.gold{color:var(--ptp-gold)}
.ptp-stat-value.green{color:var(--ptp-success)}
.ptp-stat-value.red{color:var(--ptp-error)}
.ptp-stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--ptp-gray-400);margin-top:4px}
.ptp-stat-change{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;margin-top:4px}
.ptp-stat-change.up{color:var(--ptp-success)}
.ptp-stat-change.down{color:var(--ptp-error)}
.ptp-stats-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media (min-width:640px){.ptp-stats-row{grid-template-columns:repeat(4,1fr)}
}
.ptp-stats-row .ptp-stat{padding:20px;background:var(--ptp-white);border-radius:var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-sm)}
.ptp-price{font-family:var(--ptp-font-display);font-size:28px;font-weight:700;color:var(--ptp-black)}
.ptp-price-currency{font-size:18px;vertical-align:top}
.ptp-price-period{font-size:14px;font-weight:400;color:var(--ptp-gray-400)}
.ptp-price-original{font-size:16px;color:var(--ptp-gray-400);text-decoration:line-through;margin-right:8px}
.ptp-price-discount{display:inline-block;padding:4px 10px;background:var(--ptp-success-light);color:var(--ptp-success);font-size:12px;font-weight:700;border-radius:var(--ptp-radius-sm);margin-left:8px}
.ptp-rating{display:flex;align-items:center;gap:2px}
.ptp-rating-star{width:18px;height:18px;fill:var(--ptp-gray-200)}
.ptp-rating-star.filled{fill:var(--ptp-gold)}
.ptp-rating-star.half{fill:url(#halfStar)}
.ptp-rating-value{margin-left:8px;font-size:14px;font-weight:600;color:var(--ptp-black)}
.ptp-rating-count{font-size:14px;color:var(--ptp-gray-400)}
.ptp-rating-input{display:flex;gap:4px}
.ptp-rating-input button{padding:4px;background:transparent;border:none;cursor:pointer;transition:transform var(--ptp-duration-150) var(--ptp-ease-spring)}
.ptp-rating-input button:hover{transform:scale(1.2)}
.ptp-rating-input button svg{width:28px;height:28px;fill:var(--ptp-gray-200);transition:fill var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-rating-input button:hover svg,.ptp-rating-input button.active svg{fill:var(--ptp-gold)}
.ptp-alert{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;border-radius:var(--ptp-radius-lg);border-left:4px solid transparent}
.ptp-alert-icon{flex-shrink:0;width:24px;height:24px}
.ptp-alert-content{flex:1}
.ptp-alert-title{font-weight:600;font-size:14px;margin:0 0 4px}
.ptp-alert-text{font-size:14px;margin:0;line-height:1.5}
.ptp-alert-success{background:var(--ptp-success-light);border-color:var(--ptp-success);color:#166534}
.ptp-alert-error{background:var(--ptp-error-light);border-color:var(--ptp-error);color:#991B1B}
.ptp-alert-warning{background:var(--ptp-warning-light);border-color:var(--ptp-warning);color:#92400E}
.ptp-alert-info{background:var(--ptp-info-light);border-color:var(--ptp-info);color:#1E40AF}
.ptp-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;background:var(--ptp-gold);color:var(--ptp-black);text-align:center}
.ptp-banner-text{font-size:14px;font-weight:500}
.ptp-banner-link{font-weight:700;text-decoration:underline}
.ptp-banner-close{padding:4px;background:transparent;border:none;cursor:pointer;opacity:0.6}
.ptp-banner-close:hover{opacity:1}
.ptp-divider{height:1px;background:var(--ptp-gray-200);margin:24px 0}
.ptp-divider-text{display:flex;align-items:center;gap:16px;color:var(--ptp-gray-400);font-size:12px;text-transform:uppercase;letter-spacing:0.05em}
.ptp-divider-text::before,.ptp-divider-text::after{content:'';flex:1;height:1px;background:var(--ptp-gray-200)}
.ptp-tooltip{position:relative}
.ptp-tooltip-content{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:8px 12px;background:var(--ptp-black);color:var(--ptp-white);font-size:12px;font-weight:500;border-radius:var(--ptp-radius-sm);white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--ptp-duration-150) var(--ptp-ease-default),visibility var(--ptp-duration-150) var(--ptp-ease-default);z-index:var(--ptp-z-tooltip)}
.ptp-tooltip-content::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--ptp-black)}
.ptp-tooltip:hover .ptp-tooltip-content{opacity:1;visibility:visible}
.ptp-dropdown{position:relative;display:inline-block}
.ptp-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;background:var(--ptp-white);border-radius:var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-xl);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity var(--ptp-duration-150) var(--ptp-ease-default),transform var(--ptp-duration-150) var(--ptp-ease-default),visibility var(--ptp-duration-150) var(--ptp-ease-default);z-index:var(--ptp-z-dropdown)}
.ptp-dropdown.open .ptp-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.ptp-dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 16px;font-size:14px;color:var(--ptp-gray-600);text-decoration:none;transition:color var(--ptp-duration-100) var(--ptp-ease-default),background var(--ptp-duration-100) var(--ptp-ease-default)}
.ptp-dropdown-item:first-child{border-radius:var(--ptp-radius-lg) var(--ptp-radius-lg) 0 0}
.ptp-dropdown-item:last-child{border-radius:0 0 var(--ptp-radius-lg) var(--ptp-radius-lg)}
.ptp-dropdown-item:hover{color:var(--ptp-black);background:var(--ptp-gray-50)}
.ptp-dropdown-item svg{width:18px;height:18px;stroke:currentColor}
.ptp-dropdown-divider{height:1px;background:var(--ptp-gray-100);margin:8px 0}
.ptp-trainers-page{padding:var(--ptp-space-6) 0;min-height:100vh;background:var(--ptp-gray-50)}
.ptp-trainers-header{margin-bottom:var(--ptp-space-6)}
.ptp-trainers-title{font-size:clamp(24px,5vw,36px);margin-bottom:var(--ptp-space-2)}
.ptp-trainers-subtitle{color:var(--ptp-gray-500);font-size:var(--ptp-text-base)}
.ptp-trainers-filters{display:flex;flex-wrap:wrap;gap:var(--ptp-space-3);margin-bottom:var(--ptp-space-6);padding:var(--ptp-space-4);background:var(--ptp-white);border-radius:var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-sm)}
.ptp-trainers-filter{flex:1;min-width:150px}
.ptp-trainers-filter-label{display:block;font-size:var(--ptp-text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--ptp-gray-500);margin-bottom:var(--ptp-space-1)}
.ptp-trainers-filter-select{width:100%;padding:var(--ptp-space-3);border:2px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-md);font-size:15px;background:var(--ptp-white)}
.ptp-trainers-filter-select:focus{outline:none;border-color:var(--ptp-gold)}
.ptp-trainers-grid{display:grid;grid-template-columns:1fr;gap:var(--ptp-space-6)}
@media (min-width:540px){.ptp-trainers-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:900px){.ptp-trainers-grid{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1200px){.ptp-trainers-grid{grid-template-columns:repeat(4,1fr)}
}
.ptp-trainers-layout{display:flex;flex-direction:column;gap:var(--ptp-space-6)}
@media (min-width:1024px){.ptp-trainers-layout.with-map{flex-direction:row}
.ptp-trainers-layout.with-map .ptp-trainers-list{flex:1;max-width:50%}
.ptp-trainers-layout.with-map .ptp-trainers-map{flex:1;position:sticky;top:80px;height:calc(100vh - 100px);border-radius:var(--ptp-radius-xl);overflow:hidden}
}
.ptp-profile-page{padding-bottom:var(--ptp-space-16)}
.ptp-profile-hero{position:relative;height:300px;background:linear-gradient(135deg,var(--ptp-black) 0%,#1a1a1a 100%);overflow:hidden}
@media (min-width:768px){.ptp-profile-hero{height:400px}
}
.ptp-profile-hero-image{position:absolute;inset:0;opacity:0.3}
.ptp-profile-hero-image img{width:100%;height:100%;object-fit:cover}
.ptp-profile-header{position:relative;max-width:var(--ptp-max-width-2xl);margin:-100px auto 0;padding:0 var(--ptp-space-4)}
@media (min-width:768px){.ptp-profile-header{padding:0 var(--ptp-space-6)}
}
.ptp-profile-card{display:flex;flex-direction:column;gap:var(--ptp-space-6);padding:var(--ptp-space-6);background:var(--ptp-white);border-radius:var(--ptp-radius-2xl);box-shadow:var(--ptp-shadow-xl)}
@media (min-width:768px){.ptp-profile-card{flex-direction:row;align-items:flex-start;padding:var(--ptp-space-8)}
}
.ptp-profile-avatar{width:120px;height:120px;border-radius:var(--ptp-radius-xl);border:4px solid var(--ptp-gold);overflow:hidden;flex-shrink:0;margin:0 auto}
@media (min-width:768px){.ptp-profile-avatar{width:160px;height:160px;margin:0}
}
.ptp-profile-avatar img{width:100%;height:100%;object-fit:cover}
.ptp-profile-info{flex:1;text-align:center}
@media (min-width:768px){.ptp-profile-info{text-align:left}
}
.ptp-profile-name{font-size:clamp(24px,4vw,32px);margin-bottom:var(--ptp-space-1)}
.ptp-profile-title{font-size:var(--ptp-text-lg);color:var(--ptp-gray-500);margin-bottom:var(--ptp-space-4)}
.ptp-profile-badges{display:flex;flex-wrap:wrap;gap:var(--ptp-space-2);justify-content:center;margin-bottom:var(--ptp-space-4)}
@media (min-width:768px){.ptp-profile-badges{justify-content:flex-start}
}
.ptp-profile-stats{display:flex;gap:var(--ptp-space-6);justify-content:center}
@media (min-width:768px){.ptp-profile-stats{justify-content:flex-start}
}
.ptp-profile-actions{display:flex;flex-direction:column;gap:var(--ptp-space-3);min-width:200px}
.ptp-profile-content{max-width:var(--ptp-max-width-2xl);margin:var(--ptp-space-8) auto 0;padding:0 var(--ptp-space-4)}
@media (min-width:768px){.ptp-profile-content{padding:0 var(--ptp-space-6)}
}
.ptp-profile-grid{display:grid;grid-template-columns:1fr;gap:var(--ptp-space-6)}
@media (min-width:900px){.ptp-profile-grid{grid-template-columns:2fr 1fr}
}
.ptp-checkout-page{min-height:100vh;background:var(--ptp-gray-50);padding:var(--ptp-space-6) 0 var(--ptp-space-16)}
.ptp-checkout-container{max-width:1100px;margin:0 auto;padding:0 var(--ptp-space-4)}
.ptp-checkout-layout{display:flex;flex-direction:column;gap:var(--ptp-space-6)}
@media (min-width:900px){.ptp-checkout-layout{flex-direction:row;align-items:flex-start}
}
.ptp-checkout-main{flex:1}
.ptp-checkout-sidebar{width:100%}
@media (min-width:900px){.ptp-checkout-sidebar{width:380px;flex-shrink:0;position:sticky;top:100px}
}
.ptp-checkout-section{background:var(--ptp-white);border-radius:var(--ptp-radius-xl);padding:var(--ptp-space-6);margin-bottom:var(--ptp-space-4);box-shadow:var(--ptp-shadow-sm)}
.ptp-checkout-section-title{display:flex;align-items:center;gap:var(--ptp-space-3);font-size:var(--ptp-text-lg);margin-bottom:var(--ptp-space-5)}
.ptp-checkout-section-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--ptp-gold);color:var(--ptp-black);font-family:var(--ptp-font-display);font-size:13px;font-weight:700;border-radius:50%}
.ptp-checkout-summary{background:var(--ptp-white);border-radius:var(--ptp-radius-xl);padding:var(--ptp-space-6);box-shadow:var(--ptp-shadow-md)}
.ptp-checkout-item{display:flex;gap:var(--ptp-space-4);padding:var(--ptp-space-4) 0;border-bottom:1px solid var(--ptp-gray-100)}
.ptp-checkout-item:last-child{border-bottom:none}
.ptp-checkout-item-image{width:64px;height:64px;border-radius:var(--ptp-radius-md);overflow:hidden;flex-shrink:0}
.ptp-checkout-item-image img{width:100%;height:100%;object-fit:cover}
.ptp-checkout-item-details{flex:1;min-width:0}
.ptp-checkout-item-name{font-weight:600;font-size:15px;margin-bottom:4px}
.ptp-checkout-item-meta{font-size:13px;color:var(--ptp-gray-500)}
.ptp-checkout-item-price{font-family:var(--ptp-font-display);font-size:18px;font-weight:700}
.ptp-checkout-totals{margin-top:var(--ptp-space-4);padding-top:var(--ptp-space-4);border-top:2px solid var(--ptp-gray-100)}
.ptp-checkout-row{display:flex;justify-content:space-between;margin-bottom:var(--ptp-space-2);font-size:14px}
.ptp-checkout-row.total{font-family:var(--ptp-font-display);font-size:20px;font-weight:700;margin-top:var(--ptp-space-3);padding-top:var(--ptp-space-3);border-top:1px solid var(--ptp-gray-200)}
.ptp-checkout-discount{color:var(--ptp-success)}
.ptp-dashboard{min-height:100vh;background:var(--ptp-gray-50);padding:var(--ptp-space-4) 0;padding-bottom:calc(var(--ptp-space-16) + var(--ptp-safe-bottom,0px))}
@media (min-width:768px){.ptp-dashboard{padding:var(--ptp-space-8) 0}
}
.ptp-dashboard-container{max-width:var(--ptp-max-width-2xl);margin:0 auto;padding:0 var(--ptp-space-4)}
@media (min-width:768px){.ptp-dashboard-container{padding:0 var(--ptp-space-6)}
}
.ptp-dashboard-header{display:flex;flex-direction:column;gap:var(--ptp-space-4);margin-bottom:var(--ptp-space-6)}
@media (min-width:768px){.ptp-dashboard-header{flex-direction:row;align-items:center;justify-content:space-between}
}
.ptp-dashboard-greeting{font-size:var(--ptp-text-sm);color:var(--ptp-gray-500);margin-bottom:var(--ptp-space-1)}
.ptp-dashboard-title{font-size:clamp(24px,4vw,32px);margin:0}
.ptp-dashboard-grid{display:grid;grid-template-columns:1fr;gap:var(--ptp-space-4)}
@media (min-width:768px){.ptp-dashboard-grid{grid-template-columns:repeat(2,1fr);gap:var(--ptp-space-6)}
}
@media (min-width:1024px){.ptp-dashboard-grid{grid-template-columns:repeat(3,1fr)}
}
.ptp-dashboard-card-full{grid-column:1 / -1}
.ptp-auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--ptp-space-6);background:linear-gradient(135deg,var(--ptp-gray-50) 0%,var(--ptp-white) 100%)}
.ptp-auth-card{width:100%;max-width:420px;background:var(--ptp-white);border-radius:var(--ptp-radius-2xl);padding:var(--ptp-space-8);box-shadow:var(--ptp-shadow-xl)}
.ptp-auth-logo{display:block;width:120px;margin:0 auto var(--ptp-space-6)}
.ptp-auth-title{text-align:center;font-size:var(--ptp-text-2xl);margin-bottom:var(--ptp-space-2)}
.ptp-auth-subtitle{text-align:center;color:var(--ptp-gray-500);margin-bottom:var(--ptp-space-6)}
.ptp-auth-form{display:flex;flex-direction:column;gap:var(--ptp-space-4)}
.ptp-auth-divider{display:flex;align-items:center;gap:var(--ptp-space-4);margin:var(--ptp-space-6) 0;color:var(--ptp-gray-400);font-size:var(--ptp-text-sm)}
.ptp-auth-divider::before,.ptp-auth-divider::after{content:'';flex:1;height:1px;background:var(--ptp-gray-200)}
.ptp-auth-social{display:flex;flex-direction:column;gap:var(--ptp-space-3)}
.ptp-auth-social-btn{display:flex;align-items:center;justify-content:center;gap:var(--ptp-space-3);padding:var(--ptp-space-3) var(--ptp-space-4);background:var(--ptp-white);border:2px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-md);font-weight:500;cursor:pointer;transition:border-color var(--ptp-duration-150) var(--ptp-ease-default),background var(--ptp-duration-150) var(--ptp-ease-default)}
.ptp-auth-social-btn:hover{border-color:var(--ptp-gray-300);background:var(--ptp-gray-50)}
.ptp-auth-social-btn svg{width:20px;height:20px}
.ptp-auth-footer{text-align:center;margin-top:var(--ptp-space-6);font-size:var(--ptp-text-sm);color:var(--ptp-gray-500)}
.ptp-auth-footer a{color:var(--ptp-gold);font-weight:600}
.ptp-landing-hero{position:relative;min-height:80vh;display:flex;align-items:center;padding:var(--ptp-space-16) 0;background:linear-gradient(135deg,var(--ptp-black) 0%,#1a1a1a 100%);overflow:hidden}
.ptp-landing-hero-bg{position:absolute;inset:0;opacity:0.2}
.ptp-landing-hero-bg img{width:100%;height:100%;object-fit:cover}
.ptp-landing-hero-content{position:relative;max-width:var(--ptp-max-width-xl);margin:0 auto;padding:0 var(--ptp-space-6);text-align:center;color:var(--ptp-white)}
.ptp-landing-hero-eyebrow{display:inline-block;padding:var(--ptp-space-2) var(--ptp-space-4);background:var(--ptp-gold);color:var(--ptp-black);font-family:var(--ptp-font-display);font-size:var(--ptp-text-xs);font-weight:700;text-transform:uppercase;letter-spacing:0.1em;border-radius:var(--ptp-radius-sm);margin-bottom:var(--ptp-space-6)}
.ptp-landing-hero-title{font-size:clamp(32px,7vw,64px);margin-bottom:var(--ptp-space-4);color:var(--ptp-white)}
.ptp-landing-hero-title span{color:var(--ptp-gold)}
.ptp-landing-hero-subtitle{font-size:var(--ptp-text-lg);color:rgba(255,255,255,0.7);max-width:600px;margin:0 auto var(--ptp-space-8);line-height:1.7}
.ptp-landing-hero-cta{display:flex;flex-direction:column;gap:var(--ptp-space-4);align-items:center}
@media (min-width:480px){.ptp-landing-hero-cta{flex-direction:row;justify-content:center}
}
.ptp-landing-section{padding:var(--ptp-space-16) 0}
.ptp-landing-section.alt{background:var(--ptp-gray-50)}
.ptp-landing-section-header{text-align:center;max-width:700px;margin:0 auto var(--ptp-space-12)}
.ptp-landing-section-title{font-size:clamp(24px,4vw,40px);margin-bottom:var(--ptp-space-4)}
.ptp-landing-section-subtitle{color:var(--ptp-gray-500);font-size:var(--ptp-text-lg)}
.ptp-features-grid{display:grid;grid-template-columns:1fr;gap:var(--ptp-space-8)}
@media (min-width:640px){.ptp-features-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){.ptp-features-grid{grid-template-columns:repeat(3,1fr)}
}
.ptp-feature-card{text-align:center;padding:var(--ptp-space-6)}
.ptp-feature-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin:0 auto var(--ptp-space-5);background:var(--ptp-gold-light);border-radius:var(--ptp-radius-lg)}
.ptp-feature-icon svg{width:32px;height:32px;stroke:var(--ptp-gold)}
.ptp-feature-title{font-size:var(--ptp-text-xl);margin-bottom:var(--ptp-space-3)}
.ptp-feature-text{color:var(--ptp-gray-500);line-height:1.7}
.ptp-page-content{padding-top:var(--ptp-space-6)}
@media (max-width:899px){.ptp-page-content,.ptp-dashboard,.ptp-checkout-page,.ptp-trainers-page,.ptp-profile-page{padding-bottom:calc(80px + var(--ptp-safe-bottom,0px))}
}
@media (max-width:767px){.ptp-checkout-section,.ptp-checkout-summary,.ptp-card{padding:var(--ptp-space-5)}
.ptp-btn{padding:var(--ptp-space-4) var(--ptp-space-6)}
}
.ptp-fixed-bottom{padding-bottom:var(--ptp-safe-bottom,0px)}
.ptp-fixed-top{padding-top:var(--ptp-safe-top,0px)}:root{--header-height:64px;--header-height-scrolled:56px;--header-bg:#0A0A0A;--header-bg-scrolled:rgba(10,10,10,0.98);--header-border:rgba(255,255,255,0.08);--header-shadow:0 2px 20px rgba(0,0,0,0.3);--header-text:#FFFFFF;--header-text-muted:rgba(255,255,255,0.7);--mobile-nav-width:300px;--mobile-nav-bg:#0A0A0A;--gold:#FCB900;--gold-hover:#E5A800;--gold-light:rgba(252,185,0,0.1);--gold-glow:rgba(252,185,0,0.3);--black:#0A0A0A;--white:#FFFFFF;--gray-50:#F9FAFB;--gray-100:#F3F4F6;--gray-200:#E5E7EB;--gray-400:#9CA3AF;--gray-600:#4B5563;--gray-800:#1F2937;--green:#22C55E;--red:#EF4444;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-smooth:cubic-bezier(0.4,0,0.2,1);--duration-fast:150ms;--duration-normal:250ms}
.ptp-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);padding-top:var(--safe-top);background:var(--header-bg);border-bottom:1px solid var(--header-border);z-index:200;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:height var(--duration-normal) var(--ease-smooth),background var(--duration-normal) var(--ease-smooth),box-shadow var(--duration-normal) var(--ease-smooth)}
.ptp-header.scrolled{height:var(--header-height-scrolled);background:var(--header-bg-scrolled);box-shadow:var(--header-shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
@media all and (display-mode:standalone){.ptp-header.pwa-hide{display:none}
body.pwa-mode{padding-top:0 !important}
}
.ptp-header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:1400px;margin:0 auto;padding:0 16px}
@media (min-width:768px){.ptp-header-inner{padding:0 24px}
}
@media (min-width:1200px){.ptp-header-inner{padding:0 32px}
}
.ptp-header-logo{display:flex;align-items:center;flex-shrink:0;z-index:10}
.ptp-header-logo a{display:flex;align-items:center;text-decoration:none}
.ptp-header-logo img{height:32px;width:auto;transition:height var(--duration-normal) var(--ease-smooth)}
.ptp-header.scrolled .ptp-header-logo img{height:28px}
@media (min-width:768px){.ptp-header-logo img{height:36px}
.ptp-header.scrolled .ptp-header-logo img{height:32px}
}
.ptp-header-nav{display:none;align-items:center;gap:4px}
@media (min-width:900px){.ptp-header-nav{display:flex}
}
.ptp-header-nav-item{position:relative;padding:10px 16px;font-family:'Oswald',-apple-system,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.02em;color:var(--header-text-muted);text-decoration:none;border-radius:8px;transition:color var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth)}
.ptp-header-nav-item:hover{color:var(--white);background:rgba(255,255,255,0.1)}
.ptp-header-nav-item.active{color:var(--gold)}
.ptp-header-nav-item.active::after{content:'';position:absolute;bottom:2px;left:16px;right:16px;height:2px;background:var(--gold);border-radius:1px}
.ptp-header-nav-item.has-dropdown::after{content:'';display:inline-block;width:0;height:0;margin-left:6px;vertical-align:middle;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;transition:transform var(--duration-fast) var(--ease-smooth)}
.ptp-header-nav-item.has-dropdown:hover::after{transform:rotate(180deg)}
.ptp-header-dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);min-width:200px;background:#1a1a1a;border:1px solid rgba(255,255,255,0.1);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.4);opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-smooth),transform var(--duration-fast) var(--ease-smooth);z-index:100}
.ptp-header-nav-item:hover .ptp-header-dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.ptp-header-dropdown-item{display:block;padding:12px 16px;font-size:14px;font-weight:500;color:rgba(255,255,255,0.7);text-decoration:none;transition:background var(--duration-fast) var(--ease-smooth)}
.ptp-header-dropdown-item:first-child{border-radius:12px 12px 0 0}
.ptp-header-dropdown-item:last-child{border-radius:0 0 12px 12px}
.ptp-header-dropdown-item:hover{background:rgba(255,255,255,0.05);color:var(--white)}
.ptp-header-actions{display:flex;align-items:center;gap:8px}
@media (min-width:768px){.ptp-header-actions{gap:12px}
}
.ptp-header-cta{display:none;align-items:center;gap:6px;padding:10px 20px;background:var(--gold);color:var(--black);font-family:'Oswald',-apple-system,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;text-decoration:none;border-radius:8px;transition:background var(--duration-fast) var(--ease-smooth),transform var(--duration-fast) var(--ease-spring)}
@media (min-width:600px){.ptp-header-cta{display:flex}
}
.ptp-header-cta:hover{background:var(--gold-hover)}
.ptp-header-cta:active{transform:scale(0.96)}
.ptp-header-icon{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--header-text-muted);background:transparent;border:none;border-radius:10px;cursor:pointer;transition:color var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth);-webkit-tap-highlight-color:transparent}
.ptp-header-icon:hover{color:var(--white);background:rgba(255,255,255,0.1)}
.ptp-header-icon svg{width:22px;height:22px;stroke-width:2}
.ptp-header-badge{position:absolute;top:6px;right:6px;min-width:18px;height:18px;padding:0 5px;background:var(--gold);color:var(--black);font-size:11px;font-weight:700;line-height:18px;text-align:center;border-radius:9px}
.ptp-header-badge:empty{display:none}
.ptp-header-avatar{width:36px;height:36px;border-radius:50%;border:2px solid var(--gold);overflow:hidden;cursor:pointer;transition:transform var(--duration-fast) var(--ease-spring)}
.ptp-header-avatar:hover{transform:scale(1.05)}
.ptp-header-avatar img{width:100%;height:100%;object-fit:cover}
.ptp-header-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;padding:0;background:transparent;border:none;border-radius:10px;cursor:pointer;-webkit-tap-highlight-color:transparent}
@media (min-width:900px){.ptp-header-toggle{display:none}
}
.ptp-header-toggle span{display:block;width:22px;height:2px;background:var(--white);border-radius:1px;transition:transform var(--duration-normal) var(--ease-spring),opacity var(--duration-fast) var(--ease-smooth)}
.ptp-header-toggle span:nth-child(1){margin-bottom:6px}
.ptp-header-toggle span:nth-child(3){margin-top:6px}
.ptp-header-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.ptp-header-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.ptp-header-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.ptp-mobile-nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);opacity:0;visibility:hidden;z-index:998;transition:opacity var(--duration-normal) var(--ease-smooth);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ptp-mobile-nav-overlay.open{opacity:1;visibility:visible}
.ptp-mobile-nav{position:fixed;top:0;right:0;bottom:0;width:var(--mobile-nav-width);max-width:85vw;background:var(--mobile-nav-bg);padding-top:calc(var(--safe-top) + 16px);padding-bottom:calc(var(--safe-bottom) + 16px);transform:translateX(100%);z-index:999;overflow-y:auto;-webkit-overflow-scrolling:touch;transition:transform var(--duration-normal) var(--ease-spring)}
.ptp-mobile-nav.open{transform:translateX(0)}
.ptp-mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px 20px;border-bottom:1px solid rgba(255,255,255,0.1)}
.ptp-mobile-nav-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(255,255,255,0.1);border:none;border-radius:10px;cursor:pointer}
.ptp-mobile-nav-close svg{width:20px;height:20px;stroke:rgba(255,255,255,0.7)}
.ptp-mobile-nav-user{display:flex;align-items:center;gap:12px;padding:20px;background:rgba(255,255,255,0.05);margin:16px 16px 0;border-radius:12px}
.ptp-mobile-nav-user-avatar{width:48px;height:48px;border-radius:50%;border:2px solid var(--gold);overflow:hidden}
.ptp-mobile-nav-user-avatar img{width:100%;height:100%;object-fit:cover}
.ptp-mobile-nav-user-info{flex:1;min-width:0}
.ptp-mobile-nav-user-name{font-weight:600;font-size:15px;color:var(--white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ptp-mobile-nav-user-email{font-size:13px;color:rgba(255,255,255,0.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ptp-mobile-nav-links{padding:16px 0}
.ptp-mobile-nav-item{display:flex;align-items:center;gap:14px;padding:14px 20px;font-family:'Oswald',-apple-system,sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:0.01em;color:rgba(255,255,255,0.7);text-decoration:none;transition:color var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth)}
.ptp-mobile-nav-item:active{background:rgba(255,255,255,0.05)}
.ptp-mobile-nav-item.active{color:var(--gold)}
.ptp-mobile-nav-item svg{width:22px;height:22px;stroke-width:2;flex-shrink:0}
.ptp-mobile-nav-divider{height:1px;background:rgba(255,255,255,0.1);margin:8px 20px}
.ptp-mobile-nav-cta{margin:16px}
.ptp-mobile-nav-cta a{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;background:var(--gold);color:var(--black);font-family:'Oswald',-apple-system,sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;text-decoration:none;border-radius:12px;transition:background var(--duration-fast) var(--ease-smooth)}
.ptp-mobile-nav-cta a:active{background:var(--gold-hover)}
.ptp-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#1a1a1a;border:1px solid rgba(255,255,255,0.1);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.4);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity var(--duration-fast) var(--ease-smooth),transform var(--duration-fast) var(--ease-smooth),visibility var(--duration-fast) var(--ease-smooth);z-index:100}
.ptp-header-user:hover .ptp-user-dropdown,.ptp-user-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}
.ptp-user-dropdown-header{padding:16px;border-bottom:1px solid rgba(255,255,255,0.1)}
.ptp-user-dropdown-name{font-weight:600;font-size:14px;color:var(--white)}
.ptp-user-dropdown-email{font-size:12px;color:rgba(255,255,255,0.5);margin-top:2px}
.ptp-user-dropdown-balance{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:10px 12px;background:rgba(252,185,0,0.15);border:1px solid rgba(252,185,0,0.3);border-radius:8px}
.ptp-user-dropdown-balance-label{font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:rgba(255,255,255,0.6)}
.ptp-user-dropdown-balance-amount{font-family:'Oswald',sans-serif;font-size:18px;font-weight:600;color:var(--gold)}
.ptp-user-dropdown-links{padding:8px 0}
.ptp-user-dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 16px;font-size:14px;color:rgba(255,255,255,0.7);text-decoration:none;transition:color var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth)}
.ptp-user-dropdown-item:hover{color:var(--white);background:rgba(255,255,255,0.05)}
.ptp-user-dropdown-item svg{width:18px;height:18px;stroke-width:2}
.ptp-user-dropdown-item.logout{color:var(--red)}
.ptp-user-dropdown-item.logout:hover{background:rgba(239,68,68,0.1)}
body.has-ptp-header{padding-top:calc(var(--header-height) + var(--safe-top))}
body:has(.ptp-header:not([style*="display:none"])){padding-top:calc(var(--header-height) + var(--safe-top))}
@media screen and (max-width:1024px){body.menu-open{overflow:hidden !important}
}
.ptp-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--black);border-top:1px solid rgba(255,255,255,0.1);padding:8px 0;padding-bottom:calc(8px + var(--safe-bottom));z-index:900;box-shadow:0 -4px 20px rgba(0,0,0,0.3)}
@media (min-width:900px){.ptp-bottom-nav{display:none}
}
.ptp-bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;color:rgba(255,255,255,0.5);text-decoration:none;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.02em;transition:color var(--duration-fast) var(--ease-smooth);-webkit-tap-highlight-color:transparent}
.ptp-bottom-nav-item.active{color:var(--gold)}
.ptp-bottom-nav-item svg{width:24px;height:24px;stroke-width:2}
body.has-bottom-nav{padding-bottom:calc(72px + var(--safe-bottom))}
.ptp-announcement{position:fixed;top:0;left:0;right:0;padding:10px 16px;padding-top:calc(10px + var(--safe-top));background:var(--gold);color:var(--black);text-align:center;font-size:13px;font-weight:600;z-index:210;transform:translateY(-100%);transition:transform var(--duration-normal) var(--ease-spring)}
.ptp-announcement.show{transform:translateY(0)}
.ptp-announcement a{color:inherit;text-decoration:underline}
.ptp-announcement-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);padding:4px;background:transparent;border:none;cursor:pointer;opacity:0.6}
.ptp-announcement-close:hover{opacity:1}
body.has-announcement{padding-top:calc(var(--header-height) + var(--safe-top) + 44px)}
body.has-announcement .ptp-header{top:calc(44px + var(--safe-top))}
.ptp-scroll-progress{position:fixed;top:calc(var(--header-height) + var(--safe-top) - 2px);left:0;height:2px;background:var(--gold);width:0%;z-index:250;transition:width 50ms linear}
.ptp-search-modal{position:fixed;inset:0;background:rgba(0,0,0,0.7);display:flex;align-items:flex-start;justify-content:center;padding-top:100px;opacity:0;visibility:hidden;z-index:500;transition:opacity var(--duration-normal) var(--ease-smooth);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ptp-search-modal.open{opacity:1;visibility:visible}
.ptp-search-container{width:100%;max-width:600px;margin:0 16px;background:#1a1a1a;border:1px solid rgba(255,255,255,0.1);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,0.4);transform:translateY(-20px);transition:transform var(--duration-normal) var(--ease-spring)}
.ptp-search-modal.open .ptp-search-container{transform:translateY(0)}
.ptp-search-input-wrapper{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,0.1)}
.ptp-search-input-wrapper svg{width:22px;height:22px;stroke:var(--gold);flex-shrink:0}
.ptp-search-input{flex:1;padding:0;font-size:17px;border:none;outline:none;background:transparent;color:var(--white)}
.ptp-search-input::placeholder{color:rgba(255,255,255,0.4)}
.ptp-search-results{max-height:400px;overflow-y:auto}
.ptp-search-result{display:flex;align-items:center;gap:14px;padding:14px 20px;text-decoration:none;color:var(--white);transition:background var(--duration-fast) var(--ease-smooth)}
.ptp-search-result:hover{background:rgba(255,255,255,0.05)}
.ptp-search-result-icon{width:40px;height:40px;background:rgba(252,185,0,0.15);border-radius:10px;display:flex;align-items:center;justify-content:center}
.ptp-search-result-icon svg{width:20px;height:20px;stroke:var(--gold)}
.ptp-search-result-text{flex:1}
.ptp-search-result-title{font-weight:600;font-size:14px}
.ptp-search-result-subtitle{font-size:12px;color:rgba(255,255,255,0.5)}
.ptp-header.ptp-header-light{--header-bg:#FFFFFF;--header-bg-scrolled:rgba(255,255,255,0.98);--header-border:rgba(0,0,0,0.06);--header-text:#0A0A0A;--header-text-muted:#525252}
.ptp-header.ptp-header-light .ptp-header-nav-item{color:var(--gray-600)}
.ptp-header.ptp-header-light .ptp-header-nav-item:hover{color:var(--black);background:var(--gray-100)}
.ptp-header.ptp-header-light .ptp-header-icon{color:var(--gray-600)}
.ptp-header.ptp-header-light .ptp-header-icon:hover{color:var(--black);background:var(--gray-100)}
.ptp-header.ptp-header-light .ptp-header-toggle span{background:var(--black)}
.ptp-hide-mobile{display:none !important}
@media (min-width:768px){.ptp-hide-mobile{display:flex !important}
.ptp-hide-desktop{display:none !important}
}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500 700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUZiZQ.woff2) format('woff2')}:root{--ptp-gold:#FCB900;--ptp-gold-hover:#E5A800;--ptp-gold-light:rgba(252,185,0,0.1);--ptp-gold-glow:rgba(252,185,0,0.4);--ptp-black:#0A0A0A;--ptp-white:#FFFFFF;--ptp-gray-50:#FAFAFA;--ptp-gray-100:#F5F5F5;--ptp-gray-200:#E5E5E5;--ptp-gray-300:#D4D4D4;--ptp-gray-400:#A3A3A3;--ptp-gray-500:#737373;--ptp-gray-600:#525252;--ptp-green:#22C55E;--ptp-red:#EF4444;--ptp-space-xs:4px;--ptp-space-sm:8px;--ptp-space-md:16px;--ptp-space-lg:24px;--ptp-space-xl:32px;--ptp-space-2xl:48px;--ptp-radius-sm:8px;--ptp-radius-md:12px;--ptp-radius-lg:16px;--ptp-radius-xl:24px;--ptp-radius-full:9999px;--ptp-shadow-sm:0 1px 2px rgba(0,0,0,0.04);--ptp-shadow-md:0 4px 12px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.08);--ptp-shadow-lg:0 12px 40px rgba(0,0,0,0.1),0 4px 12px rgba(0,0,0,0.06);--ptp-shadow-xl:0 24px 60px rgba(0,0,0,0.12),0 8px 20px rgba(0,0,0,0.08);--ptp-shadow-glow:0 0 20px var(--ptp-gold-glow);--ptp-safe-top:env(safe-area-inset-top,0px);--ptp-safe-bottom:env(safe-area-inset-bottom,0px);--ptp-safe-left:env(safe-area-inset-left,0px);--ptp-safe-right:env(safe-area-inset-right,0px);--ptp-touch-min:48px;--ptp-touch-comfortable:56px;--ptp-ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ptp-ease-smooth:cubic-bezier(0.4,0,0.2,1);--ptp-ease-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);--ptp-duration-fast:150ms;--ptp-duration-normal:250ms;--ptp-duration-slow:400ms;--ptp-z-base:1;--ptp-z-dropdown:100;--ptp-z-sticky:200;--ptp-z-header:300;--ptp-z-overlay:400;--ptp-z-modal:500;--ptp-z-toast:600;--ptp-z-max:9999}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:auto;scroll-padding-top:80px}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:contain}
body,html{overflow-x:hidden;max-width:100vw}
.ptp-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
@keyframes ptp-shimmer{0%{background-position:-200% 0}
100%{background-position:200% 0}
}
.ptp-skeleton{background:linear-gradient( 90deg,var(--ptp-gray-100) 25%,var(--ptp-gray-200) 50%,var(--ptp-gray-100) 75% );background-size:200% 100%;animation:ptp-shimmer 1.5s infinite;border-radius:var(--ptp-radius-sm)}
.ptp-skeleton-text{height:14px;margin-bottom:8px;border-radius:4px}
.ptp-skeleton-text.short{width:60%}
.ptp-skeleton-text.medium{width:80%}
.ptp-skeleton-text.long{width:100%}
.ptp-skeleton-avatar{width:48px;height:48px;border-radius:50%}
.ptp-skeleton-card{padding:16px;border-radius:var(--ptp-radius-lg);background:var(--ptp-white)}
.ptp-skeleton-image{aspect-ratio:1;border-radius:var(--ptp-radius-md)}
.ptp-skeleton-trainer{background:var(--ptp-white);border-radius:var(--ptp-radius-lg);overflow:hidden}
.ptp-skeleton-trainer .ptp-skeleton-image{aspect-ratio:1;border-radius:0}
.ptp-skeleton-trainer-body{padding:14px}
.ptp-bottom-sheet{position:fixed;bottom:0;left:0;right:0;z-index:var(--ptp-z-modal);background:var(--ptp-white);border-radius:var(--ptp-radius-xl) var(--ptp-radius-xl) 0 0;box-shadow:var(--ptp-shadow-xl);transform:translateY(100%);transition:transform var(--ptp-duration-slow) var(--ptp-ease-spring);max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;padding-bottom:var(--ptp-safe-bottom)}
.ptp-bottom-sheet.open{transform:translateY(0)}
.ptp-bottom-sheet-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:calc(var(--ptp-z-modal) - 1);opacity:0;visibility:hidden;transition:opacity var(--ptp-duration-normal) var(--ptp-ease-smooth),visibility var(--ptp-duration-normal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ptp-bottom-sheet-backdrop.open{opacity:1;visibility:visible}
.ptp-sheet-handle{width:36px;height:5px;background:var(--ptp-gray-300);border-radius:var(--ptp-radius-full);margin:10px auto 6px;flex-shrink:0}
.ptp-sheet-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 16px;border-bottom:1px solid var(--ptp-gray-200);flex-shrink:0}
.ptp-sheet-title{font-family:'Oswald',sans-serif;font-size:18px;font-weight:700;text-transform:uppercase}
.ptp-sheet-close{width:36px;height:36px;border-radius:50%;background:var(--ptp-gray-100);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--ptp-duration-fast)}
.ptp-sheet-close:active{background:var(--ptp-gray-200)}
.ptp-sheet-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:20px}
.ptp-sheet-footer{padding:16px 20px;border-top:1px solid var(--ptp-gray-200);flex-shrink:0}
.ptp-fab{position:fixed;bottom:calc(20px + var(--ptp-safe-bottom));right:20px;z-index:var(--ptp-z-sticky);width:56px;height:56px;border-radius:50%;background:var(--ptp-gold);color:var(--ptp-black);border:none;box-shadow:var(--ptp-shadow-lg),var(--ptp-shadow-glow);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--ptp-duration-fast) var(--ptp-ease-spring),box-shadow var(--ptp-duration-fast)}
.ptp-fab:active{transform:scale(0.92)}
.ptp-fab svg{width:24px;height:24px}
.ptp-fab-extended{width:auto;padding:0 24px;border-radius:var(--ptp-radius-full);gap:8px;font-family:'Oswald',sans-serif;font-size:14px;font-weight:600;text-transform:uppercase}
.ptp-btn{min-height:var(--ptp-touch-min);padding:14px 24px;border:none;border-radius:var(--ptp-radius-md);font-family:'Oswald',sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:0.02em;cursor:pointer;transition:all var(--ptp-duration-fast) var(--ptp-ease-smooth);display:inline-flex;align-items:center;justify-content:center;gap:8px;-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}
.ptp-btn::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(255,255,255,0.3) 0%,transparent 60%);opacity:0;transition:opacity var(--ptp-duration-fast)}
.ptp-btn:active::after{opacity:1}
.ptp-btn-gold{background:var(--ptp-gold);color:var(--ptp-black)}
.ptp-btn-gold:active{background:var(--ptp-gold-hover);transform:scale(0.98)}
.ptp-btn-black{background:var(--ptp-black);color:var(--ptp-white)}
.ptp-btn-black:active{background:var(--ptp-gray-800)}
.ptp-btn-outline{background:transparent;border:2px solid var(--ptp-gray-300);color:var(--ptp-gray-600)}
.ptp-btn-outline:active{background:var(--ptp-gray-100);border-color:var(--ptp-gray-400)}
.ptp-btn-full{width:100%}
.ptp-btn.loading{color:transparent;pointer-events:none}
.ptp-btn.loading::before{content:'';position:absolute;width:20px;height:20px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ptp-spin 0.6s linear infinite}
@keyframes ptp-spin{to{transform:rotate(360deg)}
}
.ptp-input,.ptp-select,.ptp-textarea{min-height:var(--ptp-touch-min);padding:14px 16px;font-size:16px;border:2px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-md);background:var(--ptp-white);width:100%;transition:border-color var(--ptp-duration-fast),box-shadow var(--ptp-duration-fast);-webkit-appearance:none}
.ptp-input:focus,.ptp-select:focus,.ptp-textarea:focus{outline:none;border-color:var(--ptp-gold);box-shadow:0 0 0 4px var(--ptp-gold-light)}
.ptp-input::placeholder{color:var(--ptp-gray-400)}
.ptp-swipe-container{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 20px 16px;margin:0 -20px}
.ptp-swipe-container::-webkit-scrollbar{display:none}
.ptp-swipe-card{flex-shrink:0;scroll-snap-align:start;width:85%;max-width:320px}
.ptp-swipe-card:first-child{margin-left:0}
.ptp-swipe-card:last-child{margin-right:20px}
.ptp-swipe-dots{display:flex;justify-content:center;gap:6px;padding:8px 0}
.ptp-swipe-dot{width:6px;height:6px;border-radius:50%;background:var(--ptp-gray-300);transition:all var(--ptp-duration-fast)}
.ptp-swipe-dot.active{width:20px;border-radius:3px;background:var(--ptp-gold)}
.ptp-pull-indicator{position:fixed;top:0;left:50%;transform:translateX(-50%) translateY(-100%);z-index:var(--ptp-z-toast);background:var(--ptp-white);padding:12px 20px;border-radius:0 0 var(--ptp-radius-lg) var(--ptp-radius-lg);box-shadow:var(--ptp-shadow-md);display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;transition:transform var(--ptp-duration-normal) var(--ptp-ease-spring)}
.ptp-pull-indicator.visible{transform:translateX(-50%) translateY(0)}
.ptp-pull-spinner{width:18px;height:18px;border:2px solid var(--ptp-gray-200);border-top-color:var(--ptp-gold);border-radius:50%;animation:ptp-spin 0.8s linear infinite}
.ptp-toast{position:fixed;bottom:calc(80px + var(--ptp-safe-bottom));left:50%;transform:translateX(-50%) translateY(100px);z-index:var(--ptp-z-toast);background:var(--ptp-black);color:var(--ptp-white);padding:14px 24px;border-radius:var(--ptp-radius-full);font-size:14px;font-weight:500;box-shadow:var(--ptp-shadow-lg);opacity:0;visibility:hidden;transition:all var(--ptp-duration-normal) var(--ptp-ease-spring);max-width:calc(100vw - 40px);text-align:center}
.ptp-toast.show{transform:translateX(-50%) translateY(0);opacity:1;visibility:visible}
.ptp-toast.success{background:var(--ptp-green)}
.ptp-toast.error{background:var(--ptp-red)}
.ptp-trainer-card{background:var(--ptp-white);border-radius:var(--ptp-radius-lg);overflow:hidden;box-shadow:var(--ptp-shadow-md);transition:transform var(--ptp-duration-fast) var(--ptp-ease-spring),box-shadow var(--ptp-duration-fast)}
.ptp-trainer-card:active{transform:scale(0.98)}
.ptp-trainer-card-image{aspect-ratio:1;position:relative;overflow:hidden;background:var(--ptp-gray-100)}
.ptp-trainer-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--ptp-duration-slow)}
.ptp-trainer-card:active .ptp-trainer-card-image img{transform:scale(1.02)}
.ptp-trainer-card-badge{position:absolute;top:10px;left:10px;background:var(--ptp-gold);color:var(--ptp-black);font-family:'Oswald',sans-serif;font-size:10px;font-weight:600;text-transform:uppercase;padding:5px 10px;border-radius:var(--ptp-radius-sm)}
.ptp-trainer-card-verified{position:absolute;top:10px;right:10px;width:24px;height:24px;background:var(--ptp-green);border-radius:50%;display:flex;align-items:center;justify-content:center}
.ptp-trainer-card-verified svg{width:14px;height:14px;stroke:white;stroke-width:3}
.ptp-trainer-card-body{padding:14px}
.ptp-trainer-card-name{font-family:'Oswald',sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;margin-bottom:4px}
.ptp-trainer-card-location{font-size:12px;color:var(--ptp-gray-500);margin-bottom:8px;display:flex;align-items:center;gap:4px}
.ptp-trainer-card-footer{display:flex;justify-content:space-between;align-items:center}
.ptp-trainer-card-rate{font-family:'Oswald',sans-serif;font-size:16px;font-weight:700}
.ptp-trainer-card-rate span{font-size:12px;font-weight:400;color:var(--ptp-gray-500)}
.ptp-trainer-card-rating{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--ptp-gold)}
@media (max-width:767px){.ptp-booking-widget{position:fixed;bottom:0;left:0;right:0;z-index:var(--ptp-z-modal);background:var(--ptp-white);border-radius:var(--ptp-radius-xl) var(--ptp-radius-xl) 0 0;box-shadow:var(--ptp-shadow-xl);transform:translateY(calc(100% - 72px));transition:transform var(--ptp-duration-slow) var(--ptp-ease-spring);max-height:90vh;max-height:90dvh;padding-bottom:var(--ptp-safe-bottom)}
.ptp-booking-widget.expanded{transform:translateY(0)}
.ptp-booking-widget::before{content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);width:36px;height:5px;background:var(--ptp-gray-300);border-radius:var(--ptp-radius-full)}
.ptp-booking-bar{display:flex;justify-content:space-between;align-items:center;padding:20px;cursor:pointer}
.ptp-booking-price{font-family:'Oswald',sans-serif;font-size:24px;font-weight:700}
.ptp-booking-price span{font-size:14px;color:var(--ptp-gray-500);font-weight:400}
.ptp-booking-cta{background:var(--ptp-gold);color:var(--ptp-black);font-family:'Oswald',sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;padding:12px 24px;border-radius:var(--ptp-radius-md);border:none}
.ptp-booking-body{max-height:calc(90vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 20px 20px}
}
.ptp-steps{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 0;position:relative}
.ptp-steps::before{content:'';position:absolute;top:28px;left:40px;right:40px;height:2px;background:var(--ptp-gray-200)}
.ptp-steps::after{content:'';position:absolute;top:28px;left:40px;height:2px;background:var(--ptp-gold);transition:width var(--ptp-duration-normal) var(--ptp-ease-smooth);width:var(--progress,0%)}
.ptp-step{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1}
.ptp-step-circle{width:28px;height:28px;border-radius:50%;background:var(--ptp-gray-200);color:var(--ptp-gray-400);font-family:'Oswald',sans-serif;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all var(--ptp-duration-fast) var(--ptp-ease-spring)}
.ptp-step.active .ptp-step-circle,.ptp-step.completed .ptp-step-circle{background:var(--ptp-gold);color:var(--ptp-black);transform:scale(1.1)}
.ptp-step.completed .ptp-step-circle::after{content:'✓'}
.ptp-step-label{font-size:10px;text-transform:uppercase;letter-spacing:0.05em;color:var(--ptp-gray-400);font-weight:500}
.ptp-step.active .ptp-step-label{color:var(--ptp-black);font-weight:600}
.ptp-calendar{user-select:none}
.ptp-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ptp-calendar-month{font-family:'Oswald',sans-serif;font-size:16px;font-weight:600}
.ptp-calendar-nav{display:flex;gap:8px}
.ptp-calendar-nav button{width:36px;height:36px;border:1px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-sm);background:var(--ptp-white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ptp-duration-fast)}
.ptp-calendar-nav button:active{background:var(--ptp-gray-100);transform:scale(0.95)}
.ptp-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:8px}
.ptp-calendar-weekday{font-size:11px;font-weight:600;color:var(--ptp-gray-400);text-transform:uppercase;padding:8px 0}
.ptp-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.ptp-calendar-day{aspect-ratio:1;border-radius:var(--ptp-radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;transition:all var(--ptp-duration-fast);border:2px solid transparent;position:relative}
.ptp-calendar-day.disabled{color:var(--ptp-gray-300);cursor:not-allowed;text-decoration:line-through}
.ptp-calendar-day.available:active{background:var(--ptp-gold-light)}
.ptp-calendar-day.selected{background:var(--ptp-gold);color:var(--ptp-black);font-weight:600;transform:scale(1.05)}
.ptp-calendar-day.today{border-color:var(--ptp-gold);font-weight:700}
.ptp-calendar-day.available::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--ptp-green);border-radius:50%}
.ptp-calendar-day.selected::after{background:var(--ptp-black)}
.ptp-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ptp-time-slot{padding:14px 8px;border:2px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-md);text-align:center;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--ptp-duration-fast) var(--ptp-ease-spring)}
.ptp-time-slot:active{transform:scale(0.97)}
.ptp-time-slot.selected{border-color:var(--ptp-gold);background:var(--ptp-gold);color:var(--ptp-black);font-weight:600}
.ptp-time-slot.disabled{color:var(--ptp-gray-400);text-decoration:line-through;cursor:not-allowed;opacity:0.5}
.ptp-packages{display:flex;flex-direction:column;gap:10px}
.ptp-package{display:flex;align-items:center;gap:14px;padding:16px;border:2px solid var(--ptp-gray-200);border-radius:var(--ptp-radius-lg);cursor:pointer;transition:all var(--ptp-duration-fast)}
.ptp-package:active{transform:scale(0.99)}
.ptp-package.selected{border-color:var(--ptp-gold);background:var(--ptp-gold-light)}
.ptp-package.popular{position:relative}
.ptp-package.popular::before{content:'BEST VALUE';position:absolute;top:-10px;right:12px;background:var(--ptp-green);color:white;font-size:9px;font-weight:700;padding:4px 8px;border-radius:var(--ptp-radius-sm)}
.ptp-package-radio{width:20px;height:20px;border:2px solid var(--ptp-gray-300);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--ptp-duration-fast)}
.ptp-package.selected .ptp-package-radio{border-color:var(--ptp-gold);background:var(--ptp-gold)}
.ptp-package.selected .ptp-package-radio::after{content:'';width:8px;height:8px;background:var(--ptp-black);border-radius:50%}
.ptp-package-info{flex:1}
.ptp-package-name{font-family:'Oswald',sans-serif;font-size:15px;font-weight:600;text-transform:uppercase}
.ptp-package-desc{font-size:12px;color:var(--ptp-gray-500)}
.ptp-package-pricing{text-align:right}
.ptp-package-price{font-family:'Oswald',sans-serif;font-size:18px;font-weight:700}
.ptp-package-savings{font-size:11px;color:var(--ptp-green);font-weight:600}
.ptp-mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:var(--ptp-z-header);background:var(--ptp-white);border-top:1px solid var(--ptp-gray-200);padding:8px 0;padding-bottom:calc(8px + var(--ptp-safe-bottom));display:flex;justify-content:space-around}
@media (min-width:768px){.ptp-mobile-nav{display:none}
}
.ptp-mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;color:var(--ptp-gray-500);text-decoration:none;transition:color var(--ptp-duration-fast);position:relative}
.ptp-mobile-nav-item.active{color:var(--ptp-gold)}
.ptp-mobile-nav-item svg{width:24px;height:24px}
.ptp-mobile-nav-item span{font-size:10px;font-weight:600;text-transform:uppercase}
.ptp-mobile-nav-item[data-badge]::after{content:attr(data-badge);position:absolute;top:4px;right:8px;min-width:16px;height:16px;background:var(--ptp-red);color:white;font-size:10px;font-weight:700;border-radius:var(--ptp-radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px}
@keyframes ptp-fade-in{from{opacity:0}
to{opacity:1}
}
@keyframes ptp-slide-up{from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes ptp-scale-in{from{opacity:0;transform:scale(0.95)}
to{opacity:1;transform:scale(1)}
}
@keyframes ptp-bounce{0%,100%{transform:translateY(0)}
50%{transform:translateY(-10px)}
}
.ptp-animate-fade{animation:ptp-fade-in var(--ptp-duration-normal) var(--ptp-ease-smooth)}
.ptp-animate-slide{animation:ptp-slide-up var(--ptp-duration-normal) var(--ptp-ease-spring)}
.ptp-animate-scale{animation:ptp-scale-in var(--ptp-duration-normal) var(--ptp-ease-spring)}
.ptp-hide-mobile{display:none !important}
@media (min-width:768px){.ptp-hide-mobile{display:initial !important}
}
.ptp-show-mobile{display:initial !important}
@media (min-width:768px){.ptp-show-mobile{display:none !important}
}
.ptp-sticky-bottom{position:sticky;bottom:0;background:var(--ptp-white);padding:16px;border-top:1px solid var(--ptp-gray-200);margin:0 -20px -20px}
.ptp-safe-bottom{padding-bottom:var(--ptp-safe-bottom)}
.ptp-thumb-zone{margin-bottom:calc(80px + var(--ptp-safe-bottom))}
@media screen and (min-width:1025px){html,html.no-scroll,html.modal-open,html.menu-open,html.overflow-hidden,html[style*="overflow:hidden"],html[style*="overflow:hidden"]{overflow-y:scroll !important;overflow-x:hidden !important;height:auto !important;position:static !important;overscroll-behavior:auto !important}
body,body.no-scroll,body.modal-open,body.menu-open,body.overflow-hidden,body[style*="overflow:hidden"],body[style*="overflow:hidden"],body[style*="position:fixed"],body[style*="position:fixed"]{overflow-y:auto !important;overflow-x:hidden !important;height:auto !important;min-height:100vh !important;position:static !important;top:auto !important;width:100% !important;overscroll-behavior:auto !important;overscroll-behavior-y:auto !important}
}
html,html.smooth-scroll,html[style*="scroll-behavior"]{scroll-behavior:auto !important}
*,*::before,*::after{scroll-behavior:auto !important}
.flavor-wrapper,#flavor-wrapper,.flavor-content,.flavor-main,.flavor-page,body.flavor,body.flavor-theme{overflow:visible !important;height:auto !important;min-height:auto !important;position:static !important;top:auto !important}
.flavor-wrapper,#flavor-wrapper{max-height:none !important;overflow-y:visible !important;overflow-x:visible !important}
body > .flavor-wrapper,body > #flavor-wrapper,html body .flavor-wrapper,html body #flavor-wrapper{overflow:visible !important;overflow-y:visible !important;height:auto !important;max-height:none !important;min-height:100vh !important;position:relative !important;display:block !important}
.flavor-wrapper > *,#flavor-wrapper > *{position:relative !important}
.flavor-wrapper[style],#flavor-wrapper[style]{height:auto !important;max-height:none !important;overflow:visible !important}
#page,#content,.ast-container,.site-content,.ast-separate-container,.ast-plain-container,.ast-page-builder-template,.ast-single-post,.ast-archive-page,.ast-blog-layout-1,.ast-blog-layout-2,.ast-blog-layout-3,body.ast-header-break-point,body.ast-mobile-header-layout-1,body.ast-mobile-header-layout-2,body.ast-mobile-header-layout-3{overflow:visible !important;height:auto !important;min-height:auto !important;position:static !important}
body.ast-main-header-nav-open,body.ast-mobile-popup-open,body.ast-header-break-point.ast-main-header-nav-open,html.ast-main-header-nav-open,html.ast-mobile-popup-open{overflow-y:scroll !important;overflow-x:hidden !important;position:static !important;height:auto !important}
.ast-primary-header,.ast-main-header-wrap,.ast-above-header,.ast-below-header,.site-header,#masthead{position:sticky !important;top:0 !important;z-index:999 !important}
body.elementor-page.ast-page-builder-template,body.elementor-default.ast-page-builder-template{overflow-y:scroll !important;overflow-x:hidden !important;height:auto !important;position:static !important}
body.ptp-native-page,body.ptp-native-cart,body.ptp-native-checkout{overflow-y:scroll !important;position:static !important}
html,html.no-scroll,html.modal-open,html.overflow-hidden,html.menu-open,html.ptp-modal-open,html.ast-main-header-nav-open,html.ast-mobile-popup-open,html.flavor-menu-open,html[style*="overflow"],html[style*="position"]{overflow-y:scroll !important;overflow-x:hidden !important;height:auto !important;min-height:100% !important;max-height:none !important;position:static !important;scroll-behavior:auto !important}
body,body.no-scroll,body.modal-open,body.overflow-hidden,body.menu-open,body.ptp-modal-open,body.logged-in,body.admin-bar,body.home,body.page,body.single,body.archive,body.ast-theme-transparent-header,body.ast-header-break-point,body.ast-main-header-nav-open,body.ast-mobile-popup-open,body.elementor-default,body.flavor,body.flavor-theme,body[style*="overflow"],body[style*="position:fixed"],body[style*="position:fixed"],body[style*="top:"],body[style*="top:0"]{overflow-y:auto !important;overflow-x:hidden !important;height:auto !important;min-height:100% !important;max-height:none !important;position:static !important;top:auto !important;left:auto !important;right:auto !important;width:100% !important}
body.admin-bar{padding-top:0 !important;margin-top:0 !important}
#page,#wrapper,#main,#content,#site-content,.site,.site-content,.page-wrapper,.main-content,.ast-container,.ast-separate-container,.flavor-wrapper,.flavor-content,.elementor,.elementor-page,.elementor-location-single,.elementor-location-archive,[data-elementor-type="wp-page"],.fl-builder,.et_builder_inner_content,.wp-block-post-content{overflow:visible !important;height:auto !important;min-height:auto !important;position:static !important}
.elementor-element,.elementor-widget-wrap,.elementor-section-wrap,.elementor-container{overflow:visible !important}
.ptp-hdr{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;z-index:200 !important;transform:translate3d(0,0,0) !important;-webkit-transform:translate3d(0,0,0) !important;backface-visibility:hidden !important;-webkit-backface-visibility:hidden !important}
body.admin-bar .ptp-hdr{top:32px !important}
@media screen and (max-width:782px){body.admin-bar .ptp-hdr{top:46px !important}
}
body.ptp-custom-header .ast-primary-header,body.ptp-custom-header .ast-main-header-wrap,body.ptp-custom-header #masthead{display:none !important}
.ft,.find-trainers,.ptp-trainers-grid{overflow:visible !important;max-height:none !important;height:auto !important}
.ft-list{max-height:calc(100vh - 200px);overflow-y:auto !important}
@media screen and (min-width:1025px){html::-webkit-scrollbar{display:block !important;width:8px !important;background:#f1f1f1 !important}
html::-webkit-scrollbar-thumb{background:#888 !important;border-radius:4px !important}
html::-webkit-scrollbar-thumb:hover{background:#555 !important}
html,body{scrollbar-width:thin !important;scrollbar-color:#888 #f1f1f1 !important;-ms-overflow-style:scrollbar !important}
}
@media screen and (max-width:1024px){html::-webkit-scrollbar,body::-webkit-scrollbar{display:none !important;width:0 !important;height:0 !important;background:transparent !important}
html,body{scrollbar-width:none !important;-ms-overflow-style:none !important}
}
@media screen and (max-width:1024px){html,body{-webkit-overflow-scrolling:touch !important}
input,select,textarea{font-size:16px !important}
body.ast-header-break-point{overflow-y:auto !important;position:static !important}
.flavor-wrapper{overflow-y:auto !important;-webkit-overflow-scrolling:touch !important}
}
@media print{html,body{overflow:visible !important}
}
:root{--mc-gold:#FCB900;--mc-gold-hover:#e5a800;--mc-gold-dim:rgba(252,185,0,0.1);--mc-gold-glow:rgba(252,185,0,0.3);--mc-green:#22c55e;--mc-red:#ef4444;--mc-font-serif:'Playfair Display',Georgia,'Times New Roman',serif;--mc-font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mc-font-display:'Oswald',-apple-system,sans-serif;--mc-space-xs:4px;--mc-space-sm:8px;--mc-space-md:16px;--mc-space-lg:24px;--mc-space-xl:40px;--mc-space-2xl:60px;--mc-space-3xl:80px;--mc-transition:0.3s ease;--mc-transition-fast:0.15s ease;--mc-safe-top:env(safe-area-inset-top,0px);--mc-safe-bottom:env(safe-area-inset-bottom,0px)}
.mc-light,[data-mc-theme="light"],.mc-page{--mc-black:#0a0a0a;--mc-dark:#111111;--mc-dark-2:#1a1a1a;--mc-dark-3:#222222;--mc-white:#ffffff;--mc-gray:#666666;--mc-light-gray:#999999;--mc-bg:#ffffff;--mc-bg-alt:#f8f8f8;--mc-bg-card:#ffffff;--mc-bg-elevated:#fafafa;--mc-text:#1a1a1a;--mc-text-secondary:#666666;--mc-text-muted:#999999;--mc-border:#e5e5e5;--mc-border-light:#f0f0f0;--mc-overlay:rgba(255,255,255,0.9);--mc-shadow:0 4px 40px rgba(0,0,0,0.12);--mc-shadow-sm:0 2px 12px rgba(0,0,0,0.06)}
.mc-dark,[data-mc-theme="dark"]{--mc-black:#0a0a0a;--mc-dark:#111111;--mc-dark-2:#1a1a1a;--mc-dark-3:#222222;--mc-white:#ffffff;--mc-gray:#a3a3a3;--mc-light-gray:#737373;--mc-bg:#0a0a0a;--mc-bg-alt:#111111;--mc-bg-card:#1a1a1a;--mc-bg-elevated:#222222;--mc-text:#ffffff;--mc-text-secondary:#a3a3a3;--mc-text-muted:#737373;--mc-border:#333333;--mc-border-light:#404040;--mc-overlay:rgba(0,0,0,0.7);--mc-shadow:0 4px 40px rgba(0,0,0,0.5);--mc-shadow-sm:0 2px 12px rgba(0,0,0,0.3)}
.mc-page{font-family:var(--mc-font-sans);background:var(--mc-bg);color:var(--mc-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}
.mc-page *{box-sizing:border-box;margin:0;padding:0}
.mc-headline,.mc-h1,.mc-h2,.mc-h3{font-family:var(--mc-font-serif);font-weight:500;line-height:1.15;letter-spacing:-0.02em;color:var(--mc-text)}
.mc-h1{font-size:clamp(32px,8vw,60px)}
.mc-h2{font-size:clamp(26px,5vw,40px)}
.mc-h3{font-size:clamp(20px,4vw,28px)}
.mc-headline em,.mc-h1 em,.mc-h2 em,.mc-h3 em{font-style:italic;color:var(--mc-gold)}
.mc-display{font-family:var(--mc-font-display);font-weight:600;text-transform:uppercase;letter-spacing:0.08em}
.mc-label{display:inline-block;font-family:var(--mc-font-display);font-size:11px;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:var(--mc-gold);margin-bottom:12px}
.mc-body{font-size:15px;color:var(--mc-text-secondary);line-height:1.7}
.mc-body-sm{font-size:13px;color:var(--mc-text-muted);line-height:1.6}
.mc-badge{display:inline-flex;align-items:center;gap:6px;background:var(--mc-gold);color:#0a0a0a;font-family:var(--mc-font-display);font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:6px 12px}
.mc-badge svg{width:12px;height:12px;fill:currentColor}
.mc-badge-outline{background:transparent;border:1px solid var(--mc-gold);color:var(--mc-gold)}
.mc-tag{display:inline-block;background:var(--mc-bg-alt);border:1px solid var(--mc-border);color:var(--mc-text);font-size:12px;font-weight:500;padding:8px 14px;border-radius:100px}
.mc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--mc-font-display);font-size:14px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;padding:16px 32px;border:none;cursor:pointer;transition:var(--mc-transition)}
.mc-btn:active{transform:scale(0.98)}
.mc-btn-primary{background:var(--mc-gold);color:#0a0a0a}
.mc-btn-primary:hover{background:var(--mc-gold-hover);transform:translateY(-2px);box-shadow:0 12px 40px var(--mc-gold-glow)}
.mc-btn-secondary{background:transparent;border:2px solid var(--mc-border);color:var(--mc-text)}
.mc-btn-secondary:hover{border-color:var(--mc-gold);color:var(--mc-gold)}
.mc-btn-ghost{background:transparent;color:var(--mc-text-secondary);padding:12px 20px}
.mc-btn-ghost:hover{color:var(--mc-gold)}
.mc-btn-block{width:100%}
.mc-card{background:var(--mc-bg-card);border:1px solid var(--mc-border);padding:var(--mc-space-lg);border-radius:8px;transition:var(--mc-transition)}
.mc-card:hover{border-color:var(--mc-gold);box-shadow:var(--mc-shadow-sm)}
.mc-card-elevated{box-shadow:var(--mc-shadow)}
.mc-card-title{font-family:var(--mc-font-serif);font-size:20px;font-weight:500;color:var(--mc-text);margin-bottom:8px}
.mc-card-title em{font-style:italic;color:var(--mc-gold)}
.mc-stats{display:flex;gap:var(--mc-space-xl);flex-wrap:wrap}
.mc-stat{text-align:center}
.mc-stat-value{font-family:var(--mc-font-display);font-size:28px;font-weight:700;color:var(--mc-text);line-height:1}
.mc-stat-value.gold{color:var(--mc-gold)}
.mc-stat-label{font-size:10px;color:var(--mc-text-muted);text-transform:uppercase;letter-spacing:0.08em;margin-top:4px}
.mc-section{padding:var(--mc-space-3xl) var(--mc-space-lg)}
@media (max-width:768px){.mc-section{padding:var(--mc-space-2xl) var(--mc-space-md)}
}
.mc-section-alt{background:var(--mc-bg-alt)}
.mc-section-header{text-align:center;max-width:700px;margin:0 auto var(--mc-space-xl)}
.mc-section-headline{font-family:var(--mc-font-serif);font-size:clamp(26px,4vw,40px);font-weight:500;line-height:1.2;margin-bottom:16px;color:var(--mc-text)}
.mc-section-headline em{font-style:italic;color:var(--mc-gold)}
.mc-container{max-width:1200px;margin:0 auto;padding:0 var(--mc-space-lg)}
@media (max-width:768px){.mc-container{padding:0 var(--mc-space-md)}
}
.mc-hero{position:relative;min-height:90vh;min-height:90dvh;display:flex;align-items:center;overflow:hidden;background:var(--mc-bg)}
.mc-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.mc-light .mc-hero-overlay,[data-mc-theme="light"] .mc-hero-overlay,.mc-page:not(.mc-dark) .mc-hero-overlay{position:absolute;inset:0;background:linear-gradient( 90deg,rgba(255,255,255,0.97) 0%,rgba(255,255,255,0.85) 40%,rgba(255,255,255,0.5) 70%,rgba(255,255,255,0.2) 100% )}
.mc-dark .mc-hero-overlay,[data-mc-theme="dark"] .mc-hero-overlay{position:absolute;inset:0;background:linear-gradient( 180deg,rgba(10,10,10,0.5) 0%,rgba(10,10,10,0.3) 40%,rgba(10,10,10,0.7) 70%,rgba(10,10,10,0.95) 100% )}
@media (max-width:1024px){.mc-light .mc-hero-overlay,[data-mc-theme="light"] .mc-hero-overlay,.mc-page:not(.mc-dark) .mc-hero-overlay{background:linear-gradient(180deg,rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.9) 40%,rgba(255,255,255,1) 70%)}
}
.mc-hero-content{position:relative;z-index:2;width:100%;max-width:1400px;margin:0 auto;padding:100px 60px}
@media (max-width:768px){.mc-hero{min-height:auto}
.mc-hero-content{padding:var(--mc-space-2xl) var(--mc-space-md)}
}
.mc-social-proof{background:var(--mc-bg-alt);border-top:1px solid var(--mc-border);border-bottom:1px solid var(--mc-border);padding:24px}
.mc-proof-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap}
@media (max-width:768px){.mc-proof-inner{gap:20px}
}
.mc-proof-item{display:flex;align-items:center;gap:10px}
.mc-proof-icon{width:40px;height:40px;background:var(--mc-gold-dim);border-radius:50%;display:flex;align-items:center;justify-content:center}
.mc-proof-icon svg{width:18px;height:18px;fill:var(--mc-gold)}
.mc-proof-text strong{display:block;font-family:var(--mc-font-display);font-size:16px;color:var(--mc-text)}
.mc-proof-text span{font-size:10px;color:var(--mc-text-muted);text-transform:uppercase;letter-spacing:0.08em}
.mc-review{background:var(--mc-bg-card);border:1px solid var(--mc-border);padding:var(--mc-space-lg);border-radius:8px}
.mc-review-stars{color:var(--mc-gold);font-size:14px;letter-spacing:2px;margin-bottom:12px}
.mc-review-text{font-size:14px;color:var(--mc-text-secondary);line-height:1.7;font-style:italic;margin-bottom:16px}
.mc-review-author{display:flex;align-items:center;gap:12px}
.mc-review-avatar{width:40px;height:40px;border-radius:50%;background:var(--mc-gold-dim);display:flex;align-items:center;justify-content:center;font-family:var(--mc-font-display);font-weight:700;color:var(--mc-gold);font-size:14px}
.mc-review-name{font-weight:600;font-size:14px;color:var(--mc-text)}
.mc-review-role{font-size:12px;color:var(--mc-text-muted)}
.mc-input{width:100%;background:var(--mc-bg-card);border:1px solid var(--mc-border);color:var(--mc-text);font-family:var(--mc-font-sans);font-size:14px;padding:14px 16px;border-radius:6px;transition:var(--mc-transition)}
.mc-input:focus{outline:none;border-color:var(--mc-gold)}
.mc-input::placeholder{color:var(--mc-text-muted)}
@keyframes mc-fadeUp{from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes mc-fadeIn{from{opacity:0}
to{opacity:1}
}
.mc-animate-up{animation:mc-fadeUp 0.6s ease-out both}
.mc-animate-in{animation:mc-fadeIn 0.4s ease-out both}
.mc-delay-1{animation-delay:0.1s}
.mc-delay-2{animation-delay:0.2s}
.mc-delay-3{animation-delay:0.3s}
.mc-delay-4{animation-delay:0.4s}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}
}
.mc-theme-toggle{display:none !important}
.mc-text-center{text-align:center}
.mc-text-left{text-align:left}
.mc-text-gold{color:var(--mc-gold)}
.mc-text-muted{color:var(--mc-text-muted)}
.mc-mt-sm{margin-top:var(--mc-space-sm)}
.mc-mt-md{margin-top:var(--mc-space-md)}
.mc-mt-lg{margin-top:var(--mc-space-lg)}
.mc-mt-xl{margin-top:var(--mc-space-xl)}
.mc-mb-sm{margin-bottom:var(--mc-space-sm)}
.mc-mb-md{margin-bottom:var(--mc-space-md)}
.mc-mb-lg{margin-bottom:var(--mc-space-lg)}
.mc-mb-xl{margin-bottom:var(--mc-space-xl)}
.mc-flex{display:flex}
.mc-flex-center{align-items:center;justify-content:center}
.mc-gap-sm{gap:var(--mc-space-sm)}
.mc-gap-md{gap:var(--mc-space-md)}
.mc-gap-lg{gap:var(--mc-space-lg)}
.mc-desktop-only{display:block}
.mc-mobile-only{display:none}
@media (max-width:768px){.mc-desktop-only{display:none !important}
.mc-mobile-only{display:block !important}
}
.ptp-mobile-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}
.ptp-mobile-scroll::-webkit-scrollbar{display:none}
.ptp-safe-bottom{padding-bottom:env(safe-area-inset-bottom,20px)}
.ptp-tap-target{min-height:44px;min-width:44px}
@media (max-width:767px){.tl-hero{min-height:100vh;min-height:100dvh;padding:60px 16px 40px;background-position:center center}
.tl-hero h1{font-size:clamp(32px,10vw,48px) !important;line-height:1.05 !important}
.tl-hero-sub{font-size:15px;line-height:1.6;padding:0 8px;margin-bottom:24px}
.tl-badge{font-size:10px;padding:8px 18px;letter-spacing:1.5px}
.tl-cta{width:calc(100% - 32px);max-width:320px;padding:18px 24px;font-size:15px;justify-content:center}
.tl-stats{display:flex;gap:24px;overflow-x:auto;padding:16px 0;margin-top:32px;-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:flex-start;padding-left:16px;margin-left:-16px;margin-right:-16px;width:calc(100% + 32px)}
.tl-stats::-webkit-scrollbar{display:none}
.tl-stat{flex-shrink:0;min-width:72px;text-align:center}
.tl-stat-num{font-size:28px}
.tl-stat-label{font-size:9px;letter-spacing:1px}
}
@media (max-width:767px){.tl-features{grid-template-columns:1fr;gap:16px}
.tl-feature{padding:24px 20px;display:flex;flex-direction:row;align-items:flex-start;gap:16px;text-align:left}
.tl-feature-icon{margin:0;flex-shrink:0;width:48px;height:48px}
.tl-feature-icon svg{width:22px;height:22px}
.tl-feature-content{flex:1}
.tl-feature h3{font-size:15px !important;margin-bottom:6px !important}
.tl-feature p{font-size:13px;line-height:1.6;margin:0 !important}
}
@media (max-width:767px){.tl-trainers{grid-template-columns:repeat(2,1fr);gap:12px}
.tl-trainer{border-radius:12px;overflow:hidden}
.tl-trainer-img{aspect-ratio:1;position:relative}
.tl-trainer-img img{width:100%;height:100%;object-fit:cover}
.tl-trainer-badge{position:absolute;top:8px;left:8px;font-size:8px;padding:4px 8px;background:#FCB900;color:#0A0A0A;font-weight:700;letter-spacing:0.5px}
.tl-trainer-info{padding:10px;background:#fff}
.tl-trainer-name{font-size:12px;font-weight:600;color:#0A0A0A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:767px){.tl-steps{flex-direction:column;gap:16px}
.tl-step{display:flex;align-items:flex-start;gap:16px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.tl-step-num{flex-shrink:0;width:44px;height:44px;font-size:18px}
.tl-step-content{flex:1}
.tl-step h3{font-size:15px !important;margin-bottom:4px !important}
.tl-step p{font-size:13px;margin:0 !important;line-height:1.5}
}
@media (max-width:767px){.tl-final-cta{padding:48px 20px}
.tl-final-cta h2{font-size:26px !important;margin-bottom:12px !important}
.tl-final-cta p{font-size:14px;margin-bottom:24px}
.tl-final-btn{width:100%;max-width:280px;padding:16px 24px;font-size:15px}
}
@media (max-width:767px){.tl-promo{padding:40px 16px}
.tl-promo-title{font-size:clamp(28px,7vw,40px)}
.tl-promo-desc{font-size:15px;line-height:1.5}
.tl-promo-btn{width:100%;max-width:300px;justify-content:center;padding:16px 28px;font-size:15px}
}
@media (max-width:767px){.ptp-trainer-profile .head{padding:16px;padding-top:max(16px,env(safe-area-inset-top))}
.ptp-trainer-profile .head-inner{flex-direction:column;align-items:center;text-align:center;gap:12px}
.ptp-trainer-profile .head-avatar{width:80px;height:80px}
.ptp-trainer-profile .head-name{font-size:22px}
.ptp-trainer-profile .head-badge{font-size:10px;padding:4px 10px}
.ptp-trainer-profile .head-loc{font-size:13px}
.ptp-trainer-profile .head-stats{gap:16px;padding:12px 0}
.ptp-trainer-profile .head-stat-val{font-size:18px}
.ptp-trainer-profile .head-stat-lbl{font-size:10px}
}
@media (max-width:767px){.ptp-trainer-profile .card{border-radius:12px;padding:16px;margin-bottom:12px}
.ptp-trainer-profile .card-t{font-size:12px;padding-bottom:10px;margin-bottom:12px}
.ptp-trainer-profile .bio{font-size:14px;line-height:1.65}
.ptp-trainer-profile .specs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:8px;margin:12px -16px 0;padding-left:16px;padding-right:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ptp-trainer-profile .specs::-webkit-scrollbar{display:none}
.ptp-trainer-profile .spec{flex-shrink:0;font-size:11px;padding:6px 12px;white-space:nowrap}
}
@media (max-width:767px){.ptp-trainer-profile .book{position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 24px rgba(0,0,0,0.2);max-height:85vh;max-height:85dvh;transform:translateY(calc(100% - 80px));transition:transform 0.35s cubic-bezier(0.32,0.72,0,1);display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,16px)}
.ptp-trainer-profile .book.expanded{transform:translateY(0)}
.ptp-trainer-profile .book::before{content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);width:40px;height:4px;background:#D1D5DB;border-radius:2px}
.ptp-trainer-profile .book-bar{display:flex;align-items:center;justify-content:space-between;padding:20px 16px 16px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ptp-trainer-profile .book-bar-price{font-family:'Oswald',sans-serif;font-size:26px;font-weight:700}
.ptp-trainer-profile .book-bar-btn{padding:14px 28px;font-size:14px;min-height:48px}
.ptp-trainer-profile .book-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 16px 24px;min-height:0}
.ptp-trainer-profile .cal-c{min-height:42px;font-size:14px;border-radius:10px}
.ptp-trainer-profile .time{min-height:48px;font-size:14px;padding:12px 8px}
.ptp-trainer-profile .loc{padding:14px;min-height:48px}
.ptp-trainer-profile .pkg{padding:14px;min-height:60px}
}
@media (min-width:1024px){.checkout-sidebar{display:flex;flex-direction:column;max-height:100vh;position:sticky;top:0}
.checkout-sidebar-header{flex-shrink:0;padding:24px;border-bottom:1px solid rgba(255,255,255,0.1)}
.checkout-sidebar-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:24px;min-height:0}
.checkout-sidebar-scroll::-webkit-scrollbar{width:6px}
.checkout-sidebar-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,0.05)}
.checkout-sidebar-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:3px}
.checkout-sidebar-footer{flex-shrink:0;padding:20px 24px;background:rgba(0,0,0,0.3);border-top:1px solid rgba(255,255,255,0.1)}
}
@media (max-width:1023px){.mobile-cart-drawer{position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -8px 32px rgba(0,0,0,0.18);z-index:999;transform:translateY(100%);transition:transform 0.35s cubic-bezier(0.32,0.72,0,1);max-height:75vh;max-height:75dvh;display:flex;flex-direction:column}
.mobile-cart-drawer.open{transform:translateY(0)}
.mobile-cart-header{flex-shrink:0;padding:16px 20px;border-bottom:1px solid #E5E7EB;display:flex;align-items:center;justify-content:space-between}
.mobile-cart-title{font-family:'Oswald',sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;letter-spacing:0.02em}
.mobile-cart-close{width:36px;height:36px;border:none;background:#F3F4F6;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6B7280;transition:all 0.15s}
.mobile-cart-close:active{background:#E5E7EB;transform:scale(0.95)}
.mobile-cart-items{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:16px 20px;min-height:0;scrollbar-width:none;-ms-overflow-style:none}
.mobile-cart-items::-webkit-scrollbar{display:none}
.mobile-cart-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #F3F4F6}
.mobile-cart-item:last-child{border-bottom:none}
.mobile-cart-img{width:56px;height:56px;border-radius:10px;background:#F3F4F6;background-size:cover;background-position:center;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.mobile-cart-img svg{width:24px;height:24px;color:#9CA3AF}
.mobile-cart-item-info{flex:1;min-width:0}
.mobile-cart-item-type{font-size:10px;color:#FCB900;font-weight:700;text-transform:uppercase;letter-spacing:0.5px}
.mobile-cart-item-name{font-size:14px;font-weight:600;color:#0A0A0A;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-cart-item-meta{font-size:12px;color:#6B7280}
.mobile-cart-item-price{font-size:14px;font-weight:700;color:#0A0A0A;white-space:nowrap;align-self:center}
.mobile-cart-totals{flex-shrink:0;padding:16px 20px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#F9FAFB;border-top:1px solid #E5E7EB}
.mobile-cart-line{display:flex;justify-content:space-between;font-size:14px;padding:4px 0;color:#4B5563}
.mobile-cart-line.discount{color:#16A34A}
.mobile-cart-line.total{font-weight:700;font-size:16px;color:#0A0A0A;padding-top:12px;margin-top:8px;border-top:1px solid #E5E7EB}
}
@media (max-width:1023px){.mobile-summary-bar{position:fixed;bottom:0;left:0;right:0;background:#0A0A0A;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;z-index:90;box-shadow:0 -4px 16px rgba(0,0,0,0.15)}
.mobile-summary-left{display:flex;flex-direction:column;gap:2px}
.mobile-summary-label{font-size:11px;color:rgba(255,255,255,0.6);text-transform:uppercase;letter-spacing:0.5px}
.mobile-summary-total{font-family:'Oswald',sans-serif;font-size:22px;font-weight:700;color:#fff}
.mobile-summary-btn{display:flex;align-items:center;gap:8px;padding:14px 24px;background:#FCB900;color:#0A0A0A;font-family:'Oswald',sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:0.02em;border:none;cursor:pointer;transition:all 0.15s;min-height:48px}
.mobile-summary-btn:active{background:#E5A800;transform:scale(0.98)}
.checkout-main{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:767px){.field-input,.field-select{font-size:16px !important;padding:14px 16px;min-height:52px;border-radius:12px}
.form-section .section-header{padding:14px 16px;min-height:52px}
.form-section .section-body{padding:16px}
.saved-players{gap:10px}
.saved-player{padding:14px;min-height:52px}
.submit-btn{min-height:56px;font-size:16px;border-radius:14px}
}
@media (hover:none) and (pointer:coarse){.tl-trainer:hover,.tl-feature:hover,.tl-cta:hover{transform:none;box-shadow:none}
.tl-trainer:active{transform:scale(0.98);opacity:0.9}
.tl-feature:active{transform:scale(0.99)}
.tl-cta:active,.tl-final-btn:active,.tl-promo-btn:active{transform:scale(0.98)}
.tl-trainer,.tl-feature,button,a{-webkit-user-select:none;user-select:none}
.ptp-trainer-profile .cal-btn,.ptp-trainer-profile .time,.ptp-trainer-profile .loc,.ptp-trainer-profile .pkg{min-height:48px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}
.ptp-trainer-profile .book,.mobile-cart-drawer{transition:none}
}
@media (max-height:500px) and (orientation:landscape){.tl-hero{min-height:auto;padding:40px 20px}
.tl-hero h1{font-size:32px !important}
.tl-stats{margin-top:20px}
.ptp-trainer-profile .book{max-height:70vh}
.mobile-cart-drawer{max-height:80vh}
}
@supports (padding-top:env(safe-area-inset-top)){.checkout-header{padding-top:max(16px,env(safe-area-inset-top))}
.ptp-trainer-profile .head{padding-top:max(16px,env(safe-area-inset-top))}
}
@media (max-width:1023px){
body.ptp-training-page footer,body.ptp-training-page .site-footer,body.ptp-training-page #footer,body.ptp-training-page .footer,body.ptp-training-page .elementor-location-footer,body.ptp-training-page [data-elementor-type="footer"],body.ptp-training-page .footer-wrapper,body.ptp-training-page .footer-widget-area,body.ptp-training-page .elementor-widget-wrap > .elementor-element:has(.footer),body.ptp-training-page .e-con:has([href*="mailto"]),body.ptp-training-page .e-con:has([href*="tel:"]){display:none !important;visibility:hidden !important;opacity:0 !important;pointer-events:none !important;height:0 !important;overflow:hidden !important}
body.ptp-training-page .elementor-section.elementor-section-footer,body.ptp-training-page section[data-element_type="footer"],body.ptp-training-page .elementor-element[data-element_type="wp-widget-footer"]{display:none !important}
body.ptp-training-page .fixed-footer,body.ptp-training-page [style*="position:fixed"][style*="bottom"],body.ptp-training-page .sticky-footer{display:none !important}
}
.tl{position:relative;z-index:10;isolation:isolate}
.tl-hero{position:relative;z-index:5}
.tl-hero > *{position:relative;z-index:6}
.tl-stats{position:relative;z-index:7}
.tl-cta{position:relative;z-index:8}
.tl-section,.tl-promo,.tl-final-cta{position:relative;z-index:5;background-color:inherit}
@media (max-width:1023px){body.ptp-training-page .elementor-widget-icon-list,body.ptp-training-page .elementor-widget-social-icons,body.ptp-training-page .elementor-widget-nav-menu,body.ptp-training-page .elementor-widget-heading:has([href*="mailto"]),body.ptp-training-page .elementor-widget-heading:has([href*="tel:"]){display:none !important}
body.ptp-training-page .elementor-element:has(.icon-list-item),body.ptp-training-page .elementor-element:has(.fa-envelope),body.ptp-training-page .elementor-element:has(.fa-phone),body.ptp-training-page .elementor-element:has(.fa-location){position:static !important;z-index:auto !important}
body.ptp-training-page .footer-nav,body.ptp-training-page .footer-links,body.ptp-training-page .footer-menu,body.ptp-training-page nav[class*="footer"],body.ptp-training-page ul[class*="footer"]{display:none !important}
}
@media (max-width:767px){body.ptp-trainer-profile-page footer,body.ptp-trainer-profile-page .site-footer,body.ptp-trainer-profile-page #footer,body.ptp-trainer-profile-page .elementor-location-footer,body.ptp-trainer-profile-page .footer-wrapper{display:none !important}
body.ptp-trainer-profile-page .book{z-index:200 !important}
body.ptp-trainer-profile-page .book-backdrop{z-index:999 !important}
.ptp-trainer-profile .stats{display:flex !important;justify-content:center !important;gap:24px !important;flex-wrap:nowrap !important}
.ptp-trainer-profile .stats > div{text-align:center;flex-shrink:0}
.ptp-trainer-profile .stat-v{font-family:'Oswald',sans-serif !important;font-size:24px !important;font-weight:700 !important;color:#FCB900 !important;line-height:1.1 !important}
.ptp-trainer-profile .stat-l{font-size:10px !important;text-transform:uppercase !important;letter-spacing:0.08em !important;color:#9CA3AF !important;margin-top:4px !important}
}
@media (max-width:1023px){body[class*="find-trainer"] .elementor-location-footer,body[class*="find-trainer"] footer{display:none !important}
.trainers-grid-wrap{padding-bottom:100px}
}
@supports (-webkit-touch-callout:none){@media (max-width:1023px){body.ptp-training-page{-webkit-overflow-scrolling:touch}
.tl{transform:translateZ(0);-webkit-transform:translateZ(0)}
.tl-hero{background-color:#0A0A0A}
}
}
@media (max-width:767px){.tl-final-cta{padding-bottom:calc(48px + env(safe-area-inset-bottom,20px)) !important}
body.ptp-training-page .tl > section:last-child{padding-bottom:calc(60px + env(safe-area-inset-bottom,20px)) !important}
}
@media (max-width:1023px){body.ptp-standalone-page #tidio-chat,body.ptp-standalone-page #tidio-chat-iframe,body.ptp-standalone-page .tidio-1lmzf0k,body.ptp-standalone-page #crisp-chatbox,body.ptp-standalone-page .crisp-client,body.ptp-standalone-page #intercom-container,body.ptp-standalone-page #intercom-frame,body.ptp-standalone-page .intercom-lightweight-app,body.ptp-standalone-page #hubspot-messages-iframe-container,body.ptp-standalone-page #HubspoStarterConversation,body.ptp-standalone-page #tawk-bubble-container,body.ptp-standalone-page #tawkchat-container,body.ptp-standalone-page #tawkchat-minified-wrapper,body.ptp-standalone-page .tawk-min-container,body.ptp-standalone-page #drift-widget,body.ptp-standalone-page #drift-widget-container,body.ptp-standalone-page .drift-conductor-item,body.ptp-standalone-page #freshchat-widget,body.ptp-standalone-page #fc_frame,body.ptp-standalone-page #fc_widget,body.ptp-standalone-page #launcher,body.ptp-standalone-page #zendesk_chat_widget,body.ptp-standalone-page #zopim,body.ptp-standalone-page .zopim,body.ptp-standalone-page #livechat-eye-catcher,body.ptp-standalone-page #livechat-compact-container,body.ptp-standalone-page #chat-widget-container,body.ptp-standalone-page .fb-customerchat,body.ptp-standalone-page .fb_dialog,body.ptp-standalone-page .fb_iframe_widget,body.ptp-standalone-page [id*="chat-widget"],body.ptp-standalone-page [id*="chatWidget"],body.ptp-standalone-page [class*="chat-bubble"],body.ptp-standalone-page [class*="chat-widget"],body.ptp-standalone-page [class*="chatWidget"],body.ptp-standalone-page iframe[title*="chat" i],body.ptp-standalone-page iframe[title*="Chat" i],body.ptp-standalone-page iframe[title*="messenger" i],body.ptp-standalone-page iframe[name*="chat" i],body.ptp-standalone-page .wp-social-chat-container,body.ptp-standalone-page .joinchat,body.ptp-standalone-page .whatsapp-chat-widget,body.ptp-standalone-page [id*="whatsapp"],body.ptp-standalone-page [class*="whatsapp-chat"],body.ptp-standalone-page .botpress-webchat,body.ptp-standalone-page #olark-wrapper,body.ptp-standalone-page .olark-launch-button{display:none !important;visibility:hidden !important;opacity:0 !important;pointer-events:none !important;height:0 !important;width:0 !important;overflow:hidden !important}
body.tp-body #tidio-chat,body.tp-body #crisp-chatbox,body.tp-body .crisp-client,body.tp-body #intercom-container,body.tp-body #intercom-frame,body.tp-body .intercom-lightweight-app,body.tp-body #hubspot-messages-iframe-container,body.tp-body #tawk-bubble-container,body.tp-body #tawkchat-container,body.tp-body .tawk-min-container,body.tp-body #drift-widget-container,body.tp-body #fc_frame,body.tp-body .fb_dialog,body.tp-body [id*="chat-widget"],body.tp-body [class*="chat-widget"],body.tp-body iframe[title*="chat" i],body.tp-body .joinchat,body.tp-body [id*="whatsapp"],body.tp-body [class*="whatsapp-chat"]{display:none !important;visibility:hidden !important;opacity:0 !important;pointer-events:none !important}
}
@media (max-width:600px){#ptp-apply-form div[style*="grid-template-columns:1fr 1fr"]{display:flex !important;flex-direction:column !important;gap:20px !important}
.ptp-wrap[style*="max-width:640px"]{padding:40px 16px !important}
.ptp-wrap h1[style*="font-size:36px"]{font-size:28px !important}
#ptp-apply-form input,#ptp-apply-form select,#ptp-apply-form textarea{font-size:16px !important;padding:14px 14px !important}
#ptp-apply-submit{min-height:52px !important;font-size:15px !important}
}
@media (max-width:374px){.ptp-wrap[style*="max-width:640px"]{padding:32px 12px !important}
.ptp-wrap h1[style*="font-size:36px"]{font-size:24px !important}
}
@media (max-width:767px){.aa-hero{padding:40px 16px 30px}
.aa-title{font-size:clamp(36px,9vw,56px)}
.aa-subtitle{font-size:15px}
.aa-price-hero{flex-direction:column;gap:10px}
.aa-price-was{font-size:24px}
.aa-price-now{font-size:44px}
.aa-save-badge{font-size:12px;padding:6px 14px}
.aa-breakdown{padding:32px 16px}
.aa-item{flex-wrap:wrap;padding:16px 0;gap:12px}
.aa-item-icon{width:40px;font-size:24px}
.aa-item-name{font-size:16px}
.aa-item-value{width:100%;text-align:left;padding-left:56px;font-size:20px;margin-top:0}
.aa-includes{padding:40px 16px}
.aa-includes-grid{grid-template-columns:1fr;gap:14px}
.aa-include-card{padding:20px;display:flex;align-items:flex-start;gap:16px;text-align:left}
.aa-include-icon{font-size:32px;margin-bottom:0;flex-shrink:0}
.aa-include-title{font-size:16px}
.aa-compare{padding:32px 16px 48px}
.aa-compare-table{font-size:12px;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
.aa-compare-table th,.aa-compare-table td{padding:10px 8px;white-space:nowrap}
.aa-compare-table td:first-child{position:sticky;left:0;background:#0A0A0A;z-index:2;min-width:100px}
.aa-faq{padding:32px 16px 60px}
.aa-faq-q{font-size:14px}
.aa-cta{padding:48px 16px}
.aa-cta-title{font-size:24px}
.aa-cta-btn{width:100%;max-width:320px;padding:16px 32px;font-size:16px;text-align:center}
.aa-totals{padding:20px}
.aa-total-row.save{margin:16px -20px -20px;padding:14px 20px}
.aa-total-row.price .aa-total-amount{font-size:28px}
}
@media (max-width:374px){.aa-title{font-size:32px}
.aa-price-now{font-size:36px}
.aa-cta-btn{font-size:14px;padding:14px 24px}
}
@media (max-width:767px){.ptp-tiers-hero{padding:48px 16px}
.ptp-tiers-title{font-size:clamp(32px,8vw,48px)}
.ptp-tiers-grid-section{padding:40px 16px}
.ptp-tier-highlight{transform:none}
.ptp-tier-card{padding:28px 20px}
.ptp-tier-name{font-size:22px}
.ptp-tier-price{font-size:clamp(36px,10vw,48px)}
.ptp-tier-feature{font-size:14px;padding:10px 0}
.ptp-tiers-comparison{padding:40px 16px}
.ptp-comparison-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px}
.ptp-comparison-table{min-width:500px}
.ptp-comparison-table th,.ptp-comparison-table td{padding:10px 8px;font-size:12px}
.ptp-comparison-table td:first-child{position:sticky;left:0;background:#fff;z-index:2}
.ptp-comparison-table th:first-child{position:sticky;left:0;z-index:3}
.ptp-tiers-cta{padding:48px 16px}
.ptp-tiers-cta-title{font-size:24px}
.ptp-tiers-section-title{font-size:22px}
}
@media (max-width:600px){.ptp-service-hero{padding:40px 16px}
.ptp-service-card{padding:32px 20px}
.ptp-service-icon{font-size:48px}
.ptp-service-price{font-size:clamp(36px,12vw,56px)}
.ptp-service-title{font-size:24px}
.ptp-service-details{padding:40px 16px}
.ptp-service-section-title{font-size:22px}
.ptp-feature-item{padding:20px 16px}
.ptp-service-cta{padding:48px 16px}
.ptp-service-cta h2{font-size:22px}
}
@media (max-width:374px){.ptp-service-price{font-size:32px}
.ptp-qty-btn{width:40px;height:40px}
.ptp-qty-input{width:52px;height:40px}
}
@media (max-width:480px){.ptp-account{padding:24px 0 100px}
.ptp-account-wrap{padding:0 16px}
.ptp-form-grid{grid-template-columns:1fr !important;gap:14px}
.ptp-profile{padding:24px 16px}
.ptp-profile-name{font-size:20px}
.ptp-card{padding:20px 16px}
.ptp-input,.ptp-select{font-size:16px !important;padding:12px;min-height:48px}
.ptp-save-btn{min-height:48px}
.ptp-player{padding:10px}
.ptp-player-avatar{width:36px;height:36px}
}
@media (max-width:767px){.ptp-msg-container{flex-direction:column;height:auto;min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px)}
.ptp-msg-sidebar{width:100%;border-bottom:1px solid #e5e5e5}
.ptp-msg-list{max-height:200px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.ptp-msg-main{flex:1;display:flex;flex-direction:column;min-height:0}
.ptp-msg-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px}
.ptp-message{max-width:85%;font-size:14px;padding:10px 14px}
.ptp-msg-input{position:sticky;bottom:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e5e5e5;z-index:10}
.ptp-msg-input input,.ptp-msg-input textarea{font-size:16px !important;min-height:44px}
.ptp-msg-send-btn{min-height:44px;min-width:44px}
}
@media (max-width:480px){.pd-stats{gap:20px;flex-wrap:wrap;justify-content:center}
.pd-stat-value{font-size:28px}
.pd-stat-label{font-size:10px}
.pd-actions{grid-template-columns:repeat(2,1fr) !important;gap:10px}
.pd-action{padding:16px 12px}
.pd-action-icon{width:36px;height:36px;font-size:18px}
.pd-action-label{font-size:11px}
.pd-session{padding:14px;gap:10px}
.pd-session-avatar{width:40px;height:40px}
.pd-session-name{font-size:13px}
.pd-session-meta{font-size:11px}
.pd-session-price{font-size:14px}
.pd-card{padding:16px}
.pd-card-title{font-size:12px}
.pd-card-action{padding:0 12px;font-size:10px;min-height:40px}
.pd-main{padding:0 12px}
.pd-hero{padding:calc(var(--safe-top,0px) + 24px) 16px 48px}
}
@media (max-width:374px){.pd-hero h1{font-size:26px}
.pd-actions{gap:8px}
.pd-action{padding:14px 10px}
.pd-action-label{font-size:10px}
}
@media (max-width:767px){.pd-modal{align-items:flex-end !important}
.pd-modal-content{width:100%;max-height:90vh;max-height:90dvh;border-radius:16px 16px 0 0;overflow-y:auto;-webkit-overflow-scrolling:touch}
.pd-modal-body{padding:20px 16px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:480px){.app-stats{gap:8px}
.app-stat{padding:14px 10px}
.app-stat-val{font-size:22px}
.app-stat-lbl{font-size:9px}
.app-earnings-val{font-size:28px}
.app-session{padding:14px;gap:10px}
.app-session-avatar{width:40px;height:40px}
.app-cal-day{min-height:40px;font-size:13px}
.app-nav{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
.app-nav a{font-size:9px}
.app-nav svg{width:20px;height:20px}
}
@media (max-width:374px){.app-header h1{font-size:22px}
.app-stat-val{font-size:18px}
}
@media (max-width:480px){.onb-steps{gap:4px;padding:0 12px}
.onb-step-num{width:28px;height:28px;font-size:12px}
.onb-step-label{font-size:9px}
.onb-photo-upload{width:100px;height:100px}
.onb-card{padding:20px 16px}
.onb-card h2{font-size:18px}
.onb-field-grid{grid-template-columns:1fr !important}
.onb-input,.onb-select,.onb-textarea{font-size:16px !important;min-height:48px;padding:12px 14px}
.onb-nav{gap:10px;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}
.onb-btn{min-height:48px;font-size:13px}
}
@media (max-width:480px){.cc-banner{padding:32px 16px}
.cc-banner h1{font-size:24px}
.cc-grid{padding:20px 12px 180px}
.cc-prod{padding:14px;gap:10px;border-radius:14px}
.cc-prod-img{width:70px !important;height:70px !important}
.cc-prod-name{font-size:13px}
.cc-prod-meta span{font-size:11px}
.cc-prod-price{font-size:16px}
.cc-proceed{padding:18px;border-radius:14px}
.cc-proceed-total{font-size:18px}
.cc-proceed-btn{font-size:15px;padding:16px 20px;border-radius:12px}
.cc-sec-title{font-size:14px}
.cc-empty{padding:48px 20px;border-radius:16px}
.cc-empty h2{font-size:22px}
}
@media (max-width:374px){.cc-prod{grid-template-columns:64px 1fr !important}
.cc-prod-img{width:64px !important;height:64px !important}
.cc-prod-name{font-size:12px}
}
@media (max-width:480px){.progress-steps{max-width:280px;padding:0 12px}
.progress-label{font-size:9px}
.progress-num{width:28px;height:28px;font-size:12px}
.checkout-header{padding:12px 16px}
.checkout-logo{height:24px}
.checkout-main{padding:20px 16px calc(120px + env(safe-area-inset-bottom,0px))}
.cc-form-section,.form-section{border-radius:12px}
.cc-form-hdr{padding:12px 14px;min-height:48px}
.cc-form-body,.form-section .section-body{padding:14px}
.field-label{font-size:11px}
.checkout-main input,.checkout-main select,.checkout-main textarea{font-size:16px !important}
.field-grid{grid-template-columns:1fr !important}
.pay-btn,.submit-btn{min-height:52px;font-size:15px}
.saved-player{padding:12px}
.saved-player-avatar{width:36px;height:36px}
}
@media (max-width:374px){.checkout-main{padding:16px 12px calc(120px + env(safe-area-inset-bottom,0px))}
.cc-form-body{padding:12px}
}
@media (max-width:1023px){.mobile-summary-bar{padding-bottom:calc(12px + env(safe-area-inset-bottom,8px)) !important}
}
@media (max-width:480px){.ptp-ty-hero{padding:36px 16px 24px}
.ptp-ty-check{width:60px;height:60px}
.ptp-ty-check svg{width:30px;height:30px}
.ptp-ty-title{font-size:clamp(26px,8vw,36px)}
.ptp-ty-subtitle{font-size:13px}
.ptp-ty-container{padding:0 12px}
.ptp-ty-card{margin-bottom:12px}
.ptp-ty-card-body{padding:14px}
.ptp-ty-card-header{padding:10px 14px}
.ptp-ty-card-label{font-size:10px;letter-spacing:1px}
.ptp-ty-card-value{font-size:14px}
.ptp-ty-detail{font-size:13px;flex-wrap:wrap;gap:4px}
.ptp-ty-detail-value{max-width:60%;word-break:break-word}
.ptp-ty-detail-value.gold{font-size:16px}
.ptp-ty-upsell{margin-bottom:12px}
.ptp-ty-upsell-body{padding:16px}
.ptp-ty-upsell-title{font-size:16px}
.ptp-ty-upsell-badge{font-size:9px;padding:4px 10px}
.ptp-ty-btn{min-height:48px;font-size:13px;width:100%}
.ptp-ty{padding-bottom:calc(40px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:374px){.ptp-ty-title{font-size:24px}
.ptp-ty-detail{font-size:12px}
.ptp-ty-detail-value{max-width:55%}
}
@media (max-width:480px){.ptp-trainer-profile .review{padding:14px}
.ptp-trainer-profile .review-text{font-size:13px;line-height:1.6}
.ptp-trainer-profile .review-author{font-size:12px}
.ptp-trainer-profile .gallery{grid-template-columns:repeat(3,1fr);gap:6px}
.ptp-trainer-profile .gallery img{border-radius:6px}
.ptp-trainer-profile .bio{font-size:13px;line-height:1.7}
.ptp-trainer-profile .cred{font-size:10px;padding:4px 10px}
.ptp-trainer-profile .loc{padding:12px}
.ptp-trainer-profile .loc-name{font-size:14px}
.ptp-trainer-profile .loc-addr{font-size:12px}
.ptp-trainer-profile .pkg{padding:14px}
.ptp-trainer-profile .pkg-name{font-size:14px}
.ptp-trainer-profile .pkg-price{font-size:18px}
.ptp-trainer-profile .head-name{font-size:20px}
}
@media (max-width:374px){.ptp-trainer-profile .book{max-height:95vh;max-height:95dvh}
.ptp-trainer-profile .book-body{padding:14px 12px}
.ptp-trainer-profile .book-title{font-size:16px}
.ptp-trainer-profile .cal-btn{min-height:42px;font-size:12px}
.ptp-trainer-profile .time{font-size:12px;min-height:42px}
}
@media (max-width:480px){.ft-search{margin:0 12px 16px}
.ft-search input{font-size:16px !important;padding:12px 14px;min-height:48px}
.ft-filters{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding:0 12px 12px;scrollbar-width:none;-ms-overflow-style:none}
.ft-filters::-webkit-scrollbar{display:none}
.ft-filter{flex-shrink:0;font-size:12px;padding:8px 14px;min-height:36px;white-space:nowrap}
.ft-grid{gap:10px;padding:0 12px}
.ft-card{border-radius:10px}
.ft-card-name{font-size:13px}
.ft-card-level{font-size:9px}
.ft-card-price{font-size:14px}
.ft-card-rating{font-size:11px}
.ft-supercoach .ft-card-name{font-size:14px}
.ft-empty{padding:40px 16px}
.ft-empty h3{font-size:18px}
}
@media (max-width:374px){.ft-grid{grid-template-columns:repeat(2,1fr);gap:8px;padding:0 8px}
.ft-card-name{font-size:12px}
.ft-card-price{font-size:13px}
}
@media (max-width:374px){.tl-hero{padding:48px 12px 40px}
.tl-hero h1{font-size:28px !important}
.tl-hero-sub{font-size:14px}
.tl-cta{padding:14px 20px;font-size:13px}
.tl-badge{font-size:9px;padding:6px 14px}
.tl-section{padding:40px 12px}
.tl-stats{display:grid !important;grid-template-columns:1fr 1fr;gap:16px;width:100%;overflow-x:visible;padding-left:0;margin-left:0;margin-right:0}
.tl-stat{min-width:0}
.tl-stat-num{font-size:24px}
}
@media (max-width:374px){.ptp-login-card{margin:0 8px}
.ptp-login-header{padding:20px 16px}
.ptp-login-header h1{font-size:20px}
.ptp-login-form{padding:20px 16px}
.ptp-login-footer{padding:0 16px 16px}
.ptp-auth-form-wrap{padding:32px 16px}
.ptp-auth-card h1{font-size:22px}
}
.ptp-login-page input,.ptp-auth-page input,.ptp-auth-page select{font-size:16px !important}
@media (max-width:1023px){.ptp-mobile-nav,.pd-nav,.app-nav,.mobile-summary-bar,[class*="fixed-bottom"],[class*="bottom-bar"]{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important}
}
@media (max-width:767px){body[class*="ptp-"],body.tp-body{overflow-x:hidden !important}
body[class*="ptp-"] .site-content,body[class*="ptp-"] .entry-content,body[class*="ptp-"] .page-content,body[class*="ptp-"] article,body.tp-body .site-content,body.tp-body .entry-content{overflow-x:hidden !important}
}
@media (hover:none) and (pointer:coarse){.ptp-btn,.ptp-btn-primary,.ptp-btn-lg,.pd-btn,.pd-card-action,.cc-proceed-btn,.cc-empty-btn,.ptp-tier-btn,.ptp-login-btn,.ptp-google-btn,.ptp-save-btn,.ptp-logout,.aa-cta-btn,.pay-btn,.submit-btn,.ptp-ty-btn,.onb-btn{min-height:48px;-webkit-tap-highlight-color:transparent}
.ptp-btn:active,.pd-btn:active,.pd-card-action:active,.cc-proceed-btn:active,.aa-cta-btn:active,.ptp-tier-btn:active,.ptp-ty-btn:active{transform:scale(0.98);opacity:0.9}
}
@media (max-width:767px){input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],input[type="search"],input[type="url"],select,textarea{font-size:16px !important}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}
}
@media (max-height:500px) and (orientation:landscape){.pd-hero,.ptp-ty-hero,.tl-hero,.aa-hero,.ptp-tiers-hero{padding-top:24px;padding-bottom:24px;min-height:auto}
.pd-modal-content,.ptp-trainer-profile .book,.mobile-cart-drawer{max-height:80vh}
}
@media (max-width:320px){h1,.pd-hero h1,.tl-hero h1,.aa-title,.ptp-tiers-title{font-size:22px !important}
.pd-main,.ptp-ty-container,.cc-grid,.aa-breakdown,.aa-compare,.aa-faq{padding-left:8px !important;padding-right:8px !important}
.pd-actions{grid-template-columns:repeat(2,1fr) !important;gap:6px}
}
*:focus-visible{outline:2px solid #FCB900 !important;outline-offset:2px !important;border-radius:4px}
*:focus:not(:focus-visible){outline:none !important}
.ptp-skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:#FCB900;color:#0A0A0A;padding:12px 24px;font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:1px;text-decoration:none;border-radius:0 0 6px 6px;transition:top 0.2s ease}
.ptp-skip-link:focus{top:0;outline:none}
@supports (padding:env(safe-area-inset-bottom)){.ptp-sticky-cta,.cc-sticky-bar,.mobile-cart-drawer,.pd-bottom-nav,.onb-footer,.ptp-checkout-footer,.ptp-ty-footer,.ptp-fixed-bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom)) !important}
.pd-modal-content,.ptp-modal-body,.tg-filter-drawer{padding-bottom:env(safe-area-inset-bottom)}
.ptp-wrap,.pd-main,.ptp-ty-container,.cc-grid,.tg-grid,.tl-content{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
}
@media (max-width:767px){.pd-modal-content,.tg-filter-drawer,.mobile-cart-drawer,.ptp-modal-body,.cc-detail-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
body.ptp-modal-open,body.ptp-drawer-open{overflow:hidden !important;position:fixed !important;width:100% !important;height:100% !important}
}
@media (max-width:767px){.pd-modal,.tg-filter-drawer,.mobile-cart-drawer,.cc-detail-panel{will-change:transform;transform:translateZ(0)}
.ptp-sticky-nav,.mc-mobile-nav,.pd-nav{will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}
}
@media (max-width:767px){.pd-nav a,.pd-nav button,.mc-mobile-nav a,.ptp-header-nav a,.onb-step{min-height:48px !important;display:inline-flex;align-items:center;padding-top:12px;padding-bottom:12px}
.pd-tab,.td-tab,.msg-tab,.ptp-tab{min-height:48px !important;padding:12px 16px !important}
.pd-card-action,.td-card-action,.msg-thread,.tg-card,.ptp-tier-card{min-height:48px}
select{min-height:48px !important;padding-right:36px !important}
input[type="checkbox"],input[type="radio"]{min-width:24px;min-height:24px}
label:has(input[type="checkbox"]),label:has(input[type="radio"]){min-height:48px;display:inline-flex;align-items:center;gap:10px}
.pd-modal-close,.ptp-modal-close,.tg-filter-close,.cc-close{min-width:44px !important;min-height:44px !important;display:flex !important;align-items:center !important;justify-content:center !important}
.ptp-pagination a,.ptp-pagination span{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
}
@media (max-width:767px){.td-nav,.pd-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;white-space:nowrap;-ms-overflow-style:none}
.td-nav::-webkit-scrollbar,.pd-nav::-webkit-scrollbar{display:none}
.td-nav a,.pd-nav a{scroll-snap-align:start;flex-shrink:0}
}
@media (max-width:767px){.ptp-trainer-profile .book-card,.tp-booking-card{position:fixed !important;bottom:0 !important;left:0 !important;right:0 !important;z-index:400;border-radius:16px 16px 0 0 !important;box-shadow:0 -4px 20px rgba(0,0,0,0.15) !important;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px)) !important;max-height:40vh;overflow-y:auto;overscroll-behavior:contain}
body.ptp-trainer-profile-page{padding-bottom:200px !important}
}
@media (max-width:767px){.tg-filter-drawer{position:fixed !important;bottom:0;left:0;right:0;top:auto !important;max-height:85vh;max-height:85dvh;border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform 0.3s cubic-bezier(0.32,0.72,0,1);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:500}
.tg-filter-drawer.open{transform:translateY(0)}
.tg-filter-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:400;opacity:0;pointer-events:none;transition:opacity 0.3s ease}
.tg-filter-backdrop.active{opacity:1;pointer-events:auto}
}
@media (max-width:600px){.ptp-checkout-form,.cc-form{padding-bottom:120px !important}
.cc-coupon-row,.ptp-coupon-row{flex-direction:column;gap:8px}
.cc-coupon-row input,.ptp-coupon-row input{width:100% !important}
.cc-coupon-row button,.ptp-coupon-row button{width:100% !important;min-height:48px}
}
@media (max-width:600px){.cc-item-card,.cart-item{flex-direction:column;gap:12px}
.cc-item-card img,.cart-item img{width:100% !important;height:180px !important;object-fit:cover;border-radius:8px}
.cc-item-remove,.cart-item-remove{position:absolute;top:8px;right:8px;min-width:44px;min-height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center}
}
@media (max-width:767px){.msg-container{height:100vh;height:100dvh;display:flex;flex-direction:column}
.msg-thread-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.msg-composer{position:sticky;bottom:0;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e4e4e7;z-index:10}
.msg-composer textarea{font-size:16px !important;min-height:44px;max-height:120px;resize:none}
}
.ptp-cc-sync-bar{display:none}
@media (max-width:767px){.ptp-cc-sync-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:300;background:#0A0A0A;border-top:2px solid #FCB900;padding:8px 16px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));justify-content:space-around;align-items:center;gap:4px}
.ptp-cc-sync-bar a{display:flex;flex-direction:column;align-items:center;gap:2px;color:#71717A;text-decoration:none;font-family:'Inter',sans-serif;font-size:10px;font-weight:500;padding:6px 12px;border-radius:6px;min-height:48px;justify-content:center;transition:color 0.15s ease}
.ptp-cc-sync-bar a.active{color:#FCB900}
.ptp-cc-sync-bar a svg{width:20px;height:20px}
body.ptp-has-cc-nav{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px)) !important}
}
@media print{.ptp-sticky-nav,.mc-mobile-nav,.pd-nav,.ptp-cc-sync-bar,.ptp-sticky-cta,.cc-sticky-bar,.ptp-skip-link,.tg-filter-btn,.tg-map-toggle,.pd-modal,.tg-filter-drawer,.tg-filter-backdrop{display:none !important}
body{padding:0 !important;margin:0 !important}
}
@media (forced-colors:active){.ptp-btn,.pd-btn,.pd-card-action,.cc-proceed-btn,.ptp-tier-btn,.aa-cta-btn{border:2px solid ButtonText !important}
.pd-tab.active,.td-tab.active,.ptp-tab.active{border-bottom:3px solid Highlight !important}
}
body.ptp-custom-template .elementor-location-header,body.ptp-custom-template [data-elementor-type="header"],body.ptp-custom-template header.site-header,body.ptp-custom-template .site-header,body.ptp-custom-template #masthead,body.ptp-custom-template .ast-above-header,body.ptp-custom-template .ast-below-header,body.ptp-custom-template .ast-main-header-wrap,body.ptp-custom-template .main-header-bar-wrap,body.ptp-custom-template .main-header-bar,body.ptp-custom-template .ast-mobile-header-wrap,body.ptp-custom-template .ast-header-sections-wrap,body.ptp-custom-template nav.elementor-nav-menu,body.ptp-custom-template .elementor-widget-navigation-menu{display:none !important;height:0 !important;min-height:0 !important;overflow:hidden !important;visibility:hidden !important;pointer-events:none !important}
body.ptp-custom-template .site-footer,body.ptp-custom-template #colophon,body.ptp-custom-template .ast-footer-overlay,body.ptp-custom-template footer.site-footer,body.ptp-custom-template .site-below-footer-wrap,body.ptp-custom-template .ast-small-footer,body.ptp-custom-template .ast-above-footer,body.ptp-custom-template .ast-below-footer,body.ptp-custom-template .elementor-location-footer,body.ptp-custom-template [data-elementor-type="footer"]{display:none !important;height:0 !important;overflow:hidden !important}
body.ptp-custom-template{padding-top:0 !important;margin-top:0 !important}
body.admin-bar.ptp-custom-template{margin-top:32px !important}
@media screen and (max-width:782px){body.admin-bar.ptp-custom-template{margin-top:46px !important}
}
body.ptp-training-page .site-footer,body.ptp-training-page footer.site-footer,body.ptp-training-page #colophon,body.ptp-training-page .ast-footer-overlay,body.ptp-training-page .ast-small-footer,body.ptp-training-page .ast-small-footer-section,body.ptp-training-page .site-below-footer-wrap,body.ptp-training-page .ast-footer-copyright,body.ptp-training-page .ast-above-footer,body.ptp-training-page .ast-below-footer,body.ptp-training-page .ast-footer-bar,body.ptp-training-page .ast-footer-bar-section,body.ptp-training-page .ast-builder-footer-grid-columns,body.ptp-training-page .site-footer-primary-section-1,body.ptp-training-page .site-footer-primary-section-2,body.ptp-training-page .site-footer-above-section-1,body.ptp-training-page .site-footer-below-section-1,body.ptp-training-page .site-footer-section,body.ptp-training-page .ast-builder-layout-element,body.ptp-training-page .elementor-location-footer,body.ptp-training-page [data-elementor-type="footer"],body.ptp-training-page .ast-footer-html-1,body.ptp-training-page .ast-footer-html-2,body.ptp-training-page .ast-footer-social-1,body.ptp-training-page .ast-hfb-header,body.ptp-training-page #ast-scroll-top,body.ptp-training-page .ast-scroll-top-icon{display:none !important;height:0 !important;min-height:0 !important;max-height:0 !important;overflow:hidden !important;visibility:hidden !important;margin:0 !important;padding:0 !important;border:none !important;line-height:0 !important;font-size:0 !important;position:absolute !important;width:0 !important;pointer-events:none !important;clip:rect(0,0,0,0) !important}
body.ptp-training-page #page > footer:not(.ptp-footer),body.ptp-training-page .site > footer:not(.ptp-footer){display:none !important;position:absolute !important;width:0 !important;height:0 !important;clip:rect(0,0,0,0) !important}
body.ptp-training-page footer.ptp-footer,body.ptp-training-page .ptp-footer{display:block !important;visibility:visible !important;height:auto !important;max-height:none !important;overflow:visible !important;position:relative !important;width:100% !important;clip:auto !important}
@media (max-width:899px){body.ptp-training-page #page,body.ptp-training-page .site{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px)) !important}
body.ptp-training-page .ptp-mc-root .mc-final{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px)) !important}
body.ptp-training-page .site-content,body.ptp-training-page #content,body.ptp-training-page #primary,body.ptp-training-page .content-area,body.ptp-training-page main,body.ptp-training-page .site-main,body.ptp-training-page .ast-container{padding-bottom:0 !important;margin-bottom:0 !important}
}
@media (max-width:767px){body.ptp-custom-template .ptp-auth-page,body.ptp-custom-template .ptp-login-page{min-height:100vh;min-height:100dvh}
body.ptp-custom-template .ptp-auth-page{margin-top:0 !important;padding-top:0 !important}
body.ptp-trainer-dashboard{overflow-x:hidden !important;-webkit-overflow-scrolling:touch}
body.ptp-trainer-dashboard .td-header,body.ptp-trainer-dashboard .ptp-dash-header{position:sticky;top:0;z-index:200;background:#0A0A0A}
body.ptp-trainer-dashboard .td-nav,body.ptp-parent-dashboard .pd-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none;padding:0 16px}
body.ptp-trainer-dashboard .td-nav::-webkit-scrollbar,body.ptp-parent-dashboard .pd-nav::-webkit-scrollbar{display:none}
body.ptp-parent-dashboard{overflow-x:hidden !important;-webkit-overflow-scrolling:touch}
body.ptp-parent-dashboard .pd-grid,body.ptp-trainer-dashboard .td-grid{display:flex;flex-direction:column;gap:16px;padding:0 16px}
body.ptp-parent-dashboard .pd-card,body.ptp-trainer-dashboard .td-card{max-width:100%;overflow:hidden}
}
@media (max-width:380px){.ptp-auth-form-wrap{padding:16px 12px !important}
.ptp-auth-form-wrap .ptp-form-card{padding:20px 14px !important}
body.ptp-trainer-dashboard .td-stat,body.ptp-parent-dashboard .pd-stat{padding:12px !important}
}
@media (max-width:767px){.tp210-book .tp210-step{border-bottom:1px solid var(--tp-g100,#f3f4f6);padding-bottom:16px;margin-bottom:16px}
.tp210-book .tp210-step:last-of-type{border-bottom:none}
.tp210-book .tp210-step-t{cursor:pointer;-webkit-tap-highlight-color:transparent;position:relative;padding-right:28px}
.tp210-book .tp210-step:not(.step-active) .tp210-pkgs,.tp210-book .tp210-step:not(.step-active) .tp210-grps,.tp210-book .tp210-step:not(.step-active) .tp210-grp-note,.tp210-book .tp210-step:not(.step-active) .tp210-locs,.tp210-book .tp210-step:not(.step-active) .tp210-ac,.tp210-book .tp210-step:not(.step-active) .tp210-dates,.tp210-book .tp210-step:not(.step-active) .tp210-times{display:none !important}
.tp210-book .tp210-step:not(.step-active) .tp210-step-sel{display:inline;font-size:13px;font-weight:600;color:var(--tp-gold,#FCB900);margin-left:8px}
.tp210-book .tp210-step.step-active{border-left:3px solid var(--tp-gold,#FCB900);padding-left:16px;margin-left:-3px}
.tp210-book .tp210-step.step-done .tp210-step-n{background:#22C55E;color:#fff}
.tp210-book .tp210-step.step-done .tp210-step-n::after{content:'\2713';font-size:12px}
.tp210-book .tp210-step.step-done .tp210-step-n span{display:none}
}
@media (max-width:767px){.tp210-dc{min-width:54px;min-height:72px;padding:10px 6px}
.tp210-dc-day{font-size:22px}
.tp210-dates{position:relative}
.tp210-dates.scrolled-end{}
.tp210-tc{min-height:48px;font-size:15px}
}
.th-tc-img{position:relative;overflow:hidden;aspect-ratio:3 / 4}
.th-tc-img img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.tp210-hero img,.tp210-hero-bg{object-fit:cover;object-position:center 25%}
.tp210-msg-avatar{width:44px;height:44px;object-fit:cover;border-radius:50%}
@media (max-width:600px){.td-bottom-nav,.ptp-td-nav{display:flex !important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0;padding:0 4px}
.td-bottom-nav::-webkit-scrollbar,.ptp-td-nav::-webkit-scrollbar{display:none}
.td-bottom-nav .nav-item,.ptp-td-nav .nav-item{flex-shrink:0;min-width:60px;font-size:10px}
.td-bottom-nav .nav-item span,.ptp-td-nav .nav-item span{font-size:9px;white-space:nowrap}
.avail-row{flex-wrap:wrap;gap:8px}
.avail-times{width:100%;display:flex;gap:8px;align-items:center}
.avail-time{flex:1;min-width:0;font-size:14px;padding:10px 8px}
}
@media (max-width:767px){body.tp210 .site-footer,body.tp210 footer.elementor-element,body.tp210 .elementor-location-footer,body.tp210 [data-elementor-type="footer"]{display:none !important}
}
.tp210-pkg.sel{border-color:var(--tp-gold,#FCB900);background:var(--tp-gold-soft,rgba(252,185,0,.08));box-shadow:0 0 0 1px var(--tp-gold,#FCB900);position:relative}
.tp210-pkg.sel::after{content:'\2713';position:absolute;top:6px;right:6px;width:16px;height:16px;background:var(--tp-gold,#FCB900);color:var(--tp-black,#0A0A0A);border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
.tp210-grp.sel{box-shadow:0 0 0 1px var(--tp-gold,#FCB900)}
.tp210-lopt.sel .tp210-lopt-chk svg{opacity:1;color:#fff;animation:tp210-check .2s ease-out}
@keyframes tp210-check{0%{transform:scale(0)}
60%{transform:scale(1.2)}
100%{transform:scale(1)}
}
.tp210-dc.sel{box-shadow:0 0 0 1px var(--tp-gold,#FCB900);transform:translateY(-2px)}
.tp210-tc.sel{box-shadow:0 0 0 1px var(--tp-gold,#FCB900)}
@media (max-width:767px){.tp210-scroll-top,#scrollToTop,.scroll-to-top{bottom:90px !important;right:16px !important}
}
@media (max-width:767px){.tp210-book-body{padding-bottom:80px}
.tp210-cta{box-shadow:0 -4px 20px rgba(0,0,0,.1)}
.tp210-dates a{display:inline-block;padding:8px 16px;min-height:44px;line-height:28px}
}
.th-tc-price b{white-space:nowrap}
/* v19.2.3: Multi-session package scheduler */
.tp210-sessions{margin-top:16px;border:2px solid var(--tp-g200,#e5e7eb);border-radius:12px;padding:16px;background:var(--tp-g50,#FAFAFA)}
.tp210-sessions-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.tp210-sessions-title{display:flex;align-items:center;gap:8px;font-family:'Inter',var(--tp-sans,sans-serif);font-size:13px;font-weight:700;color:var(--tp-black,#0A0A0A);text-transform:uppercase;letter-spacing:.5px}
.tp210-sessions-title svg{color:var(--tp-gold,#FCB900)}
.tp210-sessions-list{display:flex;flex-direction:column;gap:8px}
.tp210-session-card{display:flex;align-items:center;gap:12px;background:#fff;border:2px solid var(--tp-g200,#e5e7eb);border-radius:8px;padding:12px 14px;transition:border-color .15s}
.tp210-session-card:hover{border-color:var(--tp-gold,#FCB900)}
.tp210-session-card-num{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--tp-gold,#FCB900);color:var(--tp-black,#0A0A0A);font-family:'Oswald',var(--tp-serif,sans-serif);font-size:14px;font-weight:700;border-radius:4px;flex-shrink:0}
.tp210-session-card-info{flex:1;min-width:0}
.tp210-session-card-date{font-family:'Inter',var(--tp-sans,sans-serif);font-size:14px;font-weight:700;color:var(--tp-black,#0A0A0A);line-height:1.3}
.tp210-session-card-time{font-family:'Inter',var(--tp-sans,sans-serif);font-size:13px;color:var(--tp-g500,#6b7280);margin-top:1px}
.tp210-session-card-loc{font-family:'Inter',var(--tp-sans,sans-serif);font-size:11px;color:var(--tp-g400,#9ca3af);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tp210-session-card-rm{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--tp-g400,#9ca3af);cursor:pointer;border-radius:6px;flex-shrink:0;padding:0;transition:all .15s}
.tp210-session-card-rm:hover{background:#fee2e2;color:#dc2626}
.tp210-session-card-rm svg{width:16px;height:16px}
.tp210-sessions-add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;margin-top:10px;background:none;border:2px dashed var(--tp-g300,#d1d5db);border-radius:8px;color:var(--tp-gold,#FCB900);font-family:'Inter',var(--tp-sans,sans-serif);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .15s}
.tp210-sessions-add:hover{border-color:var(--tp-gold,#FCB900);background:var(--tp-gold-soft,rgba(252,185,0,.08))}
.tp210-sessions-add:disabled{opacity:.4;cursor:not-allowed}
.tp210-sessions-add svg{flex-shrink:0}
.tp210-sessions-hint{font-family:'Inter',var(--tp-sans,sans-serif);font-size:12px;color:var(--tp-g400,#9ca3af);text-align:center;margin-top:10px;line-height:1.4}
.tp210-sessions-full{font-family:'Inter',var(--tp-sans,sans-serif);font-size:13px;font-weight:700;color:#16a34a;text-align:center;margin-top:10px;padding:10px;background:#f0fdf4;border-radius:6px;border:1px solid #bbf7d0}
@media (max-width:767px){.tp210-sessions{padding:12px;border-radius:10px}
.tp210-session-card{padding:10px 12px;gap:10px}
.tp210-session-card-num{width:24px;height:24px;font-size:12px}
.tp210-session-card-date{font-size:13px}
.tp210-session-card-time{font-size:12px}
.tp210-sessions-add{padding:10px;font-size:12px}
}
