
.program-detail-page{background:#fff}
.program-detail-hero{--program-hero:none;position:relative;min-height:660px;color:#fff;background:#01050d;overflow:hidden}
.program-detail-hero:before{content:"";position:absolute;inset:0;background-image:var(--program-hero);background-size:cover;background-position:center 40%;filter:saturate(.92) contrast(1.05)}
.program-detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.82) 37%,rgba(0,0,0,.22) 70%,rgba(0,0,0,.06) 100%)}
.program-hero-inner{position:relative;z-index:2;min-height:660px;padding-top:112px;display:flex;flex-direction:column;justify-content:center}
.breadcrumb{position:absolute;top:98px;left:0;display:flex;gap:9px;align-items:center;font-size:12px;color:#d8e0ec}.breadcrumb a:hover{color:#4c8cff}
.program-hero-copy{max-width:650px;padding-top:35px}.program-eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:.16em;color:#5d97ff;font-size:12px;margin-bottom:18px}
.program-detail-hero h1{font-size:clamp(52px,6vw,88px);margin:0 0 20px;max-width:820px}.program-detail-hero p{font-size:19px;line-height:1.6;max-width:620px;margin:0 0 28px;color:#eef3fa}
.program-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:center}.program-intro-image{border-radius:12px;overflow:hidden;box-shadow:0 24px 60px rgba(3,17,42,.16);position:relative}.program-intro-image:after{content:"";position:absolute;inset:auto 0 0;height:5px;background:#095dff}.program-intro-image img{width:100%;height:500px;object-fit:cover}.program-intro-copy>p{font-size:18px;line-height:1.75;color:#46505e}.kicker-left{text-align:left}.detail-title{font-size:clamp(40px,4.8vw,62px);margin:0 0 20px}.audience-box{border-left:4px solid #095dff;background:#f3f7ff;padding:20px 24px;margin-top:30px}.audience-box strong{text-transform:uppercase;font-size:13px;letter-spacing:.08em}.audience-box p{margin:6px 0 0;color:#485362}
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:42px}.benefit-card{background:#fff;border:1px solid #e0e6ef;border-radius:9px;padding:28px 24px;min-height:160px;box-shadow:0 8px 24px rgba(1,12,32,.035)}.benefit-check{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#095dff;color:#fff;font-weight:900;margin-bottom:22px}.benefit-card h3{font-family:Impact,"Arial Narrow",sans-serif;font-weight:400;text-transform:uppercase;font-size:23px;margin:0}
.detail-dark-section{background:linear-gradient(135deg,#01050d,#07162b);color:#fff;position:relative;overflow:hidden}.detail-dark-section:after{content:"GF";position:absolute;right:-20px;bottom:-100px;font:italic 420px/.8 Impact,"Arial Narrow",sans-serif;color:rgba(9,93,255,.055)}.detail-dark-section .container{position:relative;z-index:2}.session-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}.session-step{border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:34px 30px;background:rgba(255,255,255,.035)}.session-step>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#095dff;font-weight:900;margin-bottom:24px}.session-step h3{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:28px;font-weight:400;margin:0 0 12px}.session-step p{margin:0;color:#cbd5e1;line-height:1.65}
.schedule-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.schedule-layout>div:first-child>p{font-size:17px;color:#566171}.schedule-note{font-weight:800;color:#095dff;margin-top:22px}.schedule-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.schedule-chips span{border:1px solid #d9e2ef;border-radius:8px;padding:17px;text-align:center;font-weight:900;background:#fff;box-shadow:0 7px 20px rgba(0,12,36,.035)}
.detail-pricing-grid{display:grid;gap:22px;margin-top:46px;align-items:stretch}.detail-pricing-3{grid-template-columns:repeat(3,1fr)}.detail-pricing-4{grid-template-columns:repeat(4,1fr)}.detail-price-card{background:#fff;border:1px solid #dfe5ee;border-radius:10px;padding:30px 24px;display:flex;flex-direction:column;text-align:center;box-shadow:0 10px 30px rgba(2,13,34,.045);position:relative}.detail-price-card.featured{border-color:#095dff;box-shadow:0 15px 40px rgba(9,93,255,.13);transform:translateY(-6px)}.detail-price-card.featured:before{content:"MÁS ELEGIDO";position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#095dff;color:#fff;border-radius:30px;padding:6px 14px;font-size:10px;font-weight:900;letter-spacing:.08em;white-space:nowrap}.detail-plan-name{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:24px;min-height:58px;display:grid;place-items:center}.detail-plan-price{font-size:44px;font-weight:900;color:#095dff;line-height:1;margin-top:12px}.detail-plan-suffix{font-size:13px;margin-top:6px;color:#5d6673}.detail-price-card p{color:#596474;line-height:1.55;flex:1;margin:22px 0 26px}
.quick-booking-section{background:#fff}.quick-booking-shell{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px;align-items:start;border:1px solid #dfe6ef;border-radius:14px;padding:48px;background:linear-gradient(135deg,#f8faff,#fff);box-shadow:0 20px 60px rgba(2,17,45,.08)}.quick-booking-copy p{font-size:17px;color:#566171}.quick-booking-form fieldset{border:0;padding:0;margin:0 0 24px}.quick-booking-form legend{font-weight:900;text-transform:uppercase;font-size:13px;letter-spacing:.06em;margin-bottom:12px}.quick-plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.quick-plan-option{cursor:pointer}.quick-plan-option input{position:absolute;opacity:0;pointer-events:none}.quick-plan-option span{display:block;border:1px solid #d9e1ec;border-radius:8px;padding:15px 16px;background:#fff;min-height:76px}.quick-plan-option strong,.quick-plan-option small{display:block}.quick-plan-option small{color:#677180;margin-top:4px}.quick-plan-option input:checked+span{border-color:#095dff;box-shadow:0 0 0 2px rgba(9,93,255,.13);background:#f4f8ff}.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-fields label{font-weight:800;font-size:13px}.quick-fields input,.quick-fields select{display:block;width:100%;margin-top:8px;border:1px solid #d8e0eb;border-radius:7px;padding:14px;background:#fff}.quick-summary{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dce3ed;border-bottom:1px solid #dce3ed;padding:16px 0;margin:22px 0;font-size:13px}.quick-summary span{color:#657080}.quick-summary strong{text-align:right}
.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.faq-layout>div:first-child>p{color:#5d6775;font-size:17px}.faq-list{display:grid;gap:12px}.faq-item{background:#fff;border:1px solid #dfe5ee;border-radius:8px;overflow:hidden}.faq-question{width:100%;border:0;background:#fff;padding:19px 20px;display:flex;justify-content:space-between;align-items:center;text-align:left;font-weight:900}.faq-symbol{font-size:24px;color:#095dff}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-answer>p{overflow:hidden;margin:0;padding:0 20px;color:#596473;line-height:1.65}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer>p{padding-bottom:20px}.faq-item.open .faq-symbol{transform:rotate(45deg)}
.related-program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}.related-program-card{border:1px solid #dfe5ee;border-radius:10px;overflow:hidden;background:#fff;transition:.2s}.related-program-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px rgba(2,15,38,.1)}.related-program-card img{width:100%;height:220px;object-fit:cover}.related-program-card>div{padding:20px}.related-program-card strong{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:22px;font-weight:400;display:block}.related-program-card span{font-size:13px;color:#095dff;font-weight:900;margin-top:8px;display:block}.detail-final-cta{background:#030b17;color:#fff;padding:55px 0}.detail-final-cta .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.detail-final-cta h2{font-size:42px;margin:0 0 8px}.detail-final-cta p{margin:0;color:#cad4e1}
.developer-credit{color:#b8c1cf;text-decoration:none;transition:color .2s}.developer-credit:hover{color:#fff}.footer-icon{display:inline-grid;place-items:center;width:32px;height:32px;flex:0 0 32px;color:#fff}.footer-contact-link{gap:12px}
@media(max-width:1050px){.program-intro-grid,.schedule-layout,.quick-booking-shell,.faq-layout{gap:40px}.detail-pricing-4{grid-template-columns:repeat(2,1fr)}.benefits-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.program-detail-hero,.program-hero-inner{min-height:650px}.program-detail-hero:after{background:linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.46) 45%,rgba(0,0,0,.96))}.program-hero-inner{justify-content:flex-end;padding-bottom:55px}.breadcrumb{top:86px;left:0;max-width:100%;overflow:hidden;white-space:nowrap}.program-hero-copy{padding-top:0}.program-detail-hero h1{font-size:50px}.program-detail-hero p{font-size:16px}.program-intro-grid,.schedule-layout,.quick-booking-shell,.faq-layout{grid-template-columns:1fr}.program-intro-image img{height:350px}.benefits-grid,.session-steps-grid,.detail-pricing-3,.detail-pricing-4,.related-program-grid{grid-template-columns:1fr}.schedule-chips{grid-template-columns:repeat(2,1fr)}.quick-booking-shell{padding:28px 20px}.quick-plan-grid,.quick-fields{grid-template-columns:1fr}.quick-summary{display:block}.quick-summary strong{display:block;text-align:left;margin-top:6px}.detail-price-card.featured{transform:none}.detail-final-cta .container{display:block;text-align:center}.detail-final-cta .btn{margin-top:24px}.footer-bottom{display:grid!important;gap:10px!important;text-align:center}}

/* Membership access callout */
.membership-access-strip{background:#071324;color:#fff;padding:22px 0}
.membership-access-strip .container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.membership-access-strip strong{display:block;font-family:Impact,"Arial Narrow",sans-serif;font-size:24px;font-weight:400;text-transform:uppercase}
.membership-access-strip span{display:block;color:#c8d2e1;margin-top:3px}
@media(max-width:720px){.membership-access-strip .container{align-items:stretch;flex-direction:column}.membership-access-strip .btn{width:100%}}

.quick-trainer-note{margin:10px 0 0;color:#667181;font-size:12px}
.quick-fields{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.quick-fields{grid-template-columns:1fr}}
