/* Project 90 Homepage - mobile first */
.p90-homepage{--p90-bg:#070707;--p90-bg-soft:#101010;--p90-bg-card:#151515;--p90-text:#f7f7f7;--p90-muted:#a8a8a8;--p90-gold:#ffd700;--p90-orange:#ff8c00;--p90-border:rgba(255,255,255,.1);--p90-radius:18px;--p90-shadow:0 20px 60px rgba(0,0,0,.45);background:var(--p90-bg);color:var(--p90-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6;overflow:hidden}.p90-homepage *,.p90-homepage *:before,.p90-homepage *:after{box-sizing:border-box}.p90-homepage img{max-width:100%;display:block}.p90-container{width:min(1180px,calc(100% - 32px));margin:0 auto}.p90-section{padding:76px 0;position:relative}.p90-center{text-align:center}.p90-section-heading{max-width:760px;margin:0 auto 42px}.p90-section-label,.p90-eyebrow{display:inline-block;color:var(--p90-gold);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}.p90-section-heading h2,.p90-story-copy h2,.p90-registration-copy h2{margin:0 0 16px;font-size:clamp(34px,8vw,58px);line-height:1.04;letter-spacing:-.04em}.p90-section-heading p,.p90-story-copy>p,.p90-registration-copy>p{color:var(--p90-muted);font-size:16px;margin:0}.p90-btn,.p90-video-trigger{min-height:52px;padding:14px 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:800;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform 180ms ease,background 180ms ease,border-color 180ms ease,box-shadow 180ms ease}.p90-btn:hover,.p90-video-trigger:hover{transform:translateY(-2px)}.p90-btn-primary{background:linear-gradient(135deg,var(--p90-gold),var(--p90-orange));color:#080808;box-shadow:0 12px 30px rgba(255,140,0,.2)}.p90-btn-primary:hover{box-shadow:0 18px 38px rgba(255,140,0,.3)}.p90-btn-large{padding:17px 30px}.p90-video-trigger{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);color:#fff}.p90-play-icon{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--p90-gold);color:#000;font-size:11px;padding-left:2px}.p90-hero{min-height:min(850px,100svh);display:flex;align-items:center;position:relative;background:linear-gradient(120deg,rgba(0,0,0,.96),rgba(0,0,0,.62)),var(--p90-hero-image),radial-gradient(circle at 80% 20%,rgba(255,140,0,.2),transparent 35%),#050505;background-size:cover;background-position:center}.p90-hero:after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--p90-bg));pointer-events:none}.p90-hero-content{position:relative;z-index:2;padding:90px 0 80px}.p90-hero h1{max-width:880px;margin:0;font-size:clamp(48px,13vw,100px);line-height:.94;letter-spacing:-.065em;font-weight:900}.p90-hero-description{max-width:650px;color:#c4c4c4;font-size:17px;margin:26px 0 30px}.p90-hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}.p90-hero-actions .p90-btn,.p90-hero-actions .p90-video-trigger{width:100%}.p90-countdown{margin-top:36px;max-width:520px}.p90-countdown-label{font-size:11px;font-weight:800;letter-spacing:.15em;color:var(--p90-gold);margin-bottom:10px}.p90-countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.p90-countdown-grid>div{background:rgba(255,255,255,.06);border:1px solid var(--p90-border);padding:12px 5px;text-align:center;border-radius:12px}.p90-countdown strong{display:block;font-size:25px;line-height:1}.p90-countdown span{display:block;margin-top:5px;color:var(--p90-muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.p90-prize-section{background:radial-gradient(circle at 50% 0,rgba(255,215,0,.08),transparent 30%),var(--p90-bg)}.p90-prize-grid{display:grid;gap:16px}.p90-prize-card{position:relative;padding:28px 22px;background:linear-gradient(145deg,#181818,#101010);border:1px solid var(--p90-border);border-radius:var(--p90-radius);overflow:hidden}.p90-prize-first{color:var(--p90-gold);border-color:rgba(255,215,0,.45)}.p90-prize-second{color:#c7c7c7;border-color:rgba(199,199,199,.3)}.p90-prize-third{color:#cd7f32;border-color:rgba(205,127,50,.3)}.p90-prize-consistency{color:var(--p90-gold);border-color:rgba(255,215,0,.28)}.p90-rank{font-size:12px;font-weight:900;letter-spacing:.12em}.p90-prize-card h3{color:#fff;margin:15px 0 4px;font-size:21px}.p90-prize-amount{font-size:clamp(34px,9vw,52px);font-weight:900;line-height:1;letter-spacing:-.05em}.p90-prize-card p{margin:13px 0 0;color:#aaa;font-size:14px}.p90-features{margin:30px 0;display:grid;gap:11px}.p90-feature{display:flex;gap:10px;align-items:center;color:#d2d2d2;font-size:14px}.p90-check{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,215,0,.12);color:var(--p90-gold);font-weight:900}.p90-section-cta{text-align:center}.p90-story-section{background:#0c0c0c}.p90-story-grid{display:grid;gap:38px;align-items:center}.p90-story-copy h2{font-size:clamp(34px,9vw,60px)}.p90-proof-grid{display:grid;gap:10px;margin-top:30px}.p90-proof{background:rgba(255,255,255,.04);border:1px solid var(--p90-border);border-radius:14px;padding:18px}.p90-proof strong{display:block;color:var(--p90-gold);font-size:35px;line-height:1}.p90-proof>span{display:block;margin-top:6px;font-weight:800;color:#fff}.p90-proof p{margin:4px 0 0;color:var(--p90-muted);font-size:13px}.p90-video-card{min-height:330px;border-radius:22px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(255,215,0,.14),transparent 45%),#111;border:1px solid var(--p90-border);box-shadow:var(--p90-shadow)}.p90-video-placeholder{color:var(--p90-muted);text-align:center;padding:30px;font-size:14px}.p90-tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:25px;padding-bottom:4px;scrollbar-width:none}.p90-tabs::-webkit-scrollbar{display:none}.p90-tab{flex:0 0 auto;border:1px solid var(--p90-border);background:#111;color:#aaa;border-radius:999px;padding:12px 17px;font-size:13px;font-weight:800;cursor:pointer}.p90-tab.is-active{background:var(--p90-gold);color:#000;border-color:var(--p90-gold)}.p90-tab-panel[hidden]{display:none}.p90-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.p90-photo-card{position:relative;margin:0;border-radius:14px;overflow:hidden;aspect-ratio:1/1.2;background:#111;border:1px solid var(--p90-border)}.p90-photo-card img{width:100%;height:100%;object-fit:contain;background:#050505}.p90-photo-number{position:absolute;top:10px;left:10px;background:rgba(0,0,0,.72);color:var(--p90-gold);border-radius:7px;padding:4px 7px;font-size:10px;font-weight:900}.p90-video-grid{display:grid;gap:12px}.p90-gallery-video{aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:radial-gradient(circle at center,rgba(255,215,0,.1),transparent 50%),#101010;border:1px solid var(--p90-border)}.p90-gallery-video-inner{height:100%;display:flex;align-items:center;justify-content:center;position:relative}.p90-video-index{position:absolute;top:12px;left:12px;font-size:11px;color:var(--p90-gold);font-weight:900}.p90-process-section{background:#0b0b0b}.p90-process-grid{display:grid;gap:14px}.p90-process-card{padding:25px;background:#131313;border:1px solid var(--p90-border);border-radius:var(--p90-radius)}.p90-process-number{color:var(--p90-gold);font-size:13px;font-weight:900;letter-spacing:.15em;margin-bottom:18px}.p90-process-card h3{margin:0 0 9px;font-size:20px}.p90-process-card p{margin:0;color:var(--p90-muted);font-size:14px}.p90-registration-section{background:radial-gradient(circle at 20% 30%,rgba(255,140,0,.08),transparent 35%),#070707}.p90-registration-box{display:grid;gap:35px;padding:25px;background:linear-gradient(145deg,#171717,#0d0d0d);border:1px solid rgba(255,215,0,.2);border-radius:22px;box-shadow:var(--p90-shadow)}.p90-registration-copy h2{font-size:clamp(38px,9vw,65px)}.p90-registration-promise{margin-top:25px;display:flex;gap:10px;align-items:center;color:#ddd;font-size:14px;font-weight:700}.p90-registration-promise span:first-child{color:var(--p90-gold);font-size:20px}.p90-lead-form{display:grid;gap:16px}.p90-form-field{display:grid;gap:7px}.p90-form-field label{font-size:12px;color:#c9c9c9;font-weight:800}.p90-form-field input,.p90-form-field select{width:100%;min-height:53px;padding:14px 15px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:#0b0b0b;color:#fff;outline:none;font:inherit}.p90-form-field input:focus,.p90-form-field select:focus{border-color:var(--p90-gold);box-shadow:0 0 0 3px rgba(255,215,0,.1)}.p90-btn-submit{width:100%;margin-top:5px}.p90-form-message{display:none;padding:12px;border-radius:10px;font-size:13px;background:rgba(255,255,255,.05)}.p90-form-message.is-visible{display:block}.p90-form-message.is-success{color:#8ee6a4}.p90-form-message.is-error{color:#ff9a9a}.p90-footer{padding:45px 0 35px;background:#030303;border-top:1px solid var(--p90-border)}.p90-footer-brand{font-size:23px;font-weight:900}.p90-footer-tagline{margin:3px 0 22px;color:var(--p90-gold);font-size:13px;font-weight:800}.p90-disclaimer{max-width:900px;color:#777;font-size:11px;line-height:1.7}.p90-footer-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px}.p90-footer-links a{color:#aaa;text-decoration:none;font-size:12px}.p90-empty-state{padding:40px 20px;border:1px dashed rgba(255,255,255,.14);border-radius:15px;text-align:center;color:#777;font-size:13px}.p90-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:15px}.p90-modal.is-open{display:flex}.p90-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.92);backdrop-filter:blur(8px)}.p90-modal-content{position:relative;z-index:2;width:100%;max-width:1050px}.p90-modal-player{background:#000;border-radius:14px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 30px 100px rgba(0,0,0,.7)}.p90-modal-player iframe,.p90-modal-player video{width:100%;height:100%;border:0;display:block}.p90-modal-close{position:absolute;right:0;bottom:calc(100% + 8px);width:40px;height:40px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#151515;color:#fff;font-size:25px;line-height:1;cursor:pointer;z-index:3}@media(min-width:768px){.p90-container{width:min(1180px,calc(100% - 60px))}.p90-section{padding:100px 0}.p90-hero-content{padding:120px 0}.p90-hero-actions{flex-direction:row;align-items:center}.p90-hero-actions .p90-btn,.p90-hero-actions .p90-video-trigger{width:auto}.p90-prize-grid{grid-template-columns:repeat(4,1fr)}.p90-features{grid-template-columns:repeat(2,1fr)}.p90-story-grid{grid-template-columns:1.05fr .95fr;gap:60px}.p90-proof-grid{grid-template-columns:repeat(3,1fr)}.p90-photo-grid{grid-template-columns:repeat(3,1fr);gap:15px}.p90-video-grid{grid-template-columns:repeat(2,1fr)}.p90-process-grid{grid-template-columns:repeat(3,1fr)}.p90-registration-box{grid-template-columns:.9fr 1.1fr;padding:55px;align-items:center}}@media(min-width:1024px){.p90-prize-card{padding:35px}.p90-prize-card:hover{transform:translateY(-5px)}.p90-photo-card{transition:transform 180ms ease,border-color 180ms ease}.p90-photo-card:hover{transform:translateY(-4px);border-color:rgba(255,215,0,.35)}.p90-process-card{min-height:220px}}@media(prefers-reduced-motion:reduce){.p90-homepage *,.p90-homepage *:before,.p90-homepage *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* =========================================================
   LOGIN CTA (NO HOMEPAGE LEAD FORM)
========================================================= */

.p90-login-cta-box {
	text-align: center;
}

.p90-login-cta-box .p90-registration-copy {
	max-width: 760px;
	margin: 0 auto;
}

.p90-login-cta-action {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}

.p90-login-note {
	margin: 0;
	color: var(--p90-muted);
	font-size: 12px;
}

@media (min-width: 768px) {
	.p90-login-cta-box {
		padding: 65px 55px;
	}

	.p90-login-cta-action .p90-btn {
		min-width: 280px;
	}
}

/* =========================================================
   PROJECT 90 CUSTOM HEADER — v1.3.9
   Mobile-first: WhatsApp | Brand | Notifications + Menu
========================================================= */

.p90-site-header {
	position: relative;
	width: 100%;
	z-index: 9000;
	background: rgba(5, 5, 5, 0.97);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.p90-header-sticky {
	position: sticky;
	top: 0;
}

.p90-header-inner {
	position: relative;
	min-height: 64px;
	display: grid;
	grid-template-columns: minmax(40px, 1fr) auto minmax(40px, 1fr);
	align-items: center;
	gap: 8px;
	padding-top: 6px;
	padding-bottom: 6px;
}

.p90-header-side {
	display: flex;
	align-items: center;
	min-width: 0;
}

.p90-header-side-left {
	justify-content: flex-start;
}

.p90-header-side-right {
	justify-content: flex-end;
	gap: 6px;
}

.p90-header-brand {
	grid-column: 2;
	justify-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	max-width: 150px;
	color: #fff;
	text-decoration: none;
	font-weight: 900;
	letter-spacing: -0.03em;
}

.p90-header-brand img {
	display: block;
	width: auto;
	max-width: 116px;
	max-height: 48px;
	object-fit: contain;
}

.p90-header-brand-text {
	font-size: 18px;
	white-space: nowrap;
}

.p90-header-whatsapp,
.p90-header-notifications,
.p90-header-dots {
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
	border-radius: 11px;
}

.p90-header-whatsapp {
	overflow: hidden;
}

/* Click to Chat (HoliThemes) inline shortcode is the source of the WhatsApp action. */
.p90-header-whatsapp .ht-ctc-chat,
.p90-header-whatsapp .ht-ctc-chat-wrapper,
.p90-header-whatsapp .ht-ctc-chat-style {
	position: static !important;
	inset: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	max-width: 38px !important;
	border-radius: 11px !important;
	box-shadow: none !important;
}

.p90-header-whatsapp a,
.p90-header-whatsapp button {
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 11px !important;
}

.p90-header-whatsapp img,
.p90-header-whatsapp svg {
	max-width: 22px !important;
	max-height: 22px !important;
	width: 22px !important;
	height: 22px !important;
}

.p90-header-icon-fallback {
	font-size: 22px;
	line-height: 1;
	color: #25d366;
}

.p90-header-notifications {
	color: #fff;
	text-decoration: none;
	border: 1px solid rgba(255,255,255,.12);
	background: rgba(255,255,255,.035);
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.p90-header-notifications:hover,
.p90-header-notifications:focus-visible {
	border-color: rgba(255, 195, 0, .65);
	background: rgba(255,195,0,.08);
}

.p90-header-bell {
	font-size: 20px;
	line-height: 1;
	filter: grayscale(1) brightness(3);
}

.p90-header-notification-badge {
	position: absolute;
	top: -5px;
	right: -5px;
	min-width: 17px;
	height: 17px;
	padding: 0 4px;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #ff4d2e;
	color: #fff;
	border: 2px solid #050505;
	font-size: 9px;
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.p90-header-dots {
	appearance: none;
	border: 1px solid rgba(255,255,255,.14);
	background: rgba(255,255,255,.035);
	cursor: pointer;
	padding: 0;
	gap: 3px;
	flex-direction: column;
}

.p90-header-dots span {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #fff;
}

.p90-header-dots:hover,
.p90-header-dots:focus-visible,
.p90-header-dots.is-open {
	border-color: rgba(255, 195, 0, .65);
	background: rgba(255,195,0,.08);
}

.p90-header-navigation {
	position: absolute;
	top: 100%;
	left: 8px;
	right: 8px;
	display: none;
	background: rgba(8,8,8,.99);
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 0 0 14px 14px;
	box-shadow: 0 20px 40px rgba(0,0,0,.45);
	overflow: hidden;
}

.p90-header-navigation.is-open {
	display: block;
}

.p90-header-menu {
	width: 100%;
	margin: 0;
	padding: 8px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.p90-header-link,
.p90-header-login {
	padding: 12px 13px;
	color: #d0d0d0;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	border-radius: 9px;
}

.p90-header-link:hover,
.p90-header-link:focus-visible {
	color: var(--p90-gold);
	background: rgba(255,255,255,.04);
}


@media (min-width: 768px) {
	.p90-header-inner {
		min-height: 72px;
	}

	.p90-header-brand img {
		max-width: 140px;
		max-height: 52px;
	}

	.p90-header-navigation {
		left: auto;
		right: 16px;
		width: min(360px, calc(100vw - 32px));
		border-radius: 12px;
	}
}

@media (min-width: 1024px) {
	.p90-header-inner {
		padding-left: 0;
		padding-right: 0;
	}
}

/* Project90 Homepage v1.3.8 — Transformation gallery refinement
 * Requested visual-only refinement: cleaner mobile carousel + non-overflowing tabs.
 * Existing gallery markup, images, URLs and functionality remain unchanged.
 */
@media(max-width:767px){
  .p90-gallery-section .p90-section-heading{margin-bottom:30px}
  .p90-gallery-section .p90-section-heading h2{font-size:clamp(34px,9vw,48px)}
  .p90-gallery-section .p90-section-heading p{max-width:330px;margin-left:auto;margin-right:auto}

  .p90-gallery-section .p90-tabs{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
    width:100%;
    overflow:hidden;
    padding:0;
    margin-bottom:20px;
  }
  .p90-gallery-section .p90-tab{
    width:100%;
    min-width:0;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    padding:12px 10px;
    font-size:12px;
    line-height:1.2;
  }

  .p90-gallery-section .p90-photo-grid{
    display:flex;
    gap:12px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    padding:0 18px 8px 0;
    margin-right:-2px;
  }
  .p90-gallery-section .p90-photo-grid::-webkit-scrollbar{display:none}
  .p90-gallery-section .p90-photo-card{
    flex:0 0 calc(100% - 34px);
    width:calc(100% - 34px);
    aspect-ratio:4/5;
    scroll-snap-align:start;
    border-radius:18px;
  }
  .p90-gallery-section .p90-photo-number{
    top:12px;
    left:12px;
    padding:6px 9px;
    border-radius:9px;
    font-size:10px;
  }
}

@media(min-width:768px){
  .p90-gallery-section .p90-photo-grid{align-items:stretch}
  .p90-gallery-section .p90-photo-card{aspect-ratio:4/5}
}


/* Project90 Homepage v1.3.8 — transformation photo visibility refinement
 * Preserve the complete source image inside each transformation card.
 */
.p90-gallery-section .p90-photo-card img{object-fit:contain;background:#050505}

/* Project90 Homepage v1.3.8 — final transformation refinement
 * Restore the original mobile swipe carousel and remove transformation number badges.
 * Source images remain fully visible with object-fit: contain.
 */
.p90-gallery-section .p90-photo-number{display:none !important}
.p90-gallery-section .p90-photo-card img{object-fit:contain !important;object-position:center center}
@media(max-width:767px){
  .p90-gallery-section .p90-photo-grid{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:12px;
    overflow-x:auto !important;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .p90-gallery-section .p90-photo-grid::-webkit-scrollbar{display:none}
  .p90-gallery-section .p90-photo-card{
    flex:0 0 calc(100% - 34px) !important;
    width:calc(100% - 34px) !important;
    scroll-snap-align:start;
  }
}

/* Project90 Homepage v1.3.8 — mobile hero spacing refinement
 * Reduce the large vertical gap between the header and the hero tagline.
 * Desktop hero positioning remains unchanged.
 */
@media (max-width: 767px) {
  .p90-hero {
    min-height: auto;
    align-items: flex-start;
  }

  .p90-hero-content {
    width: 100%;
    padding: 48px 16px 80px;
  }
}

/* Project90 Homepage v1.3.8 — mobile hero side-spacing refinement
 * Keep the hero content comfortably inset from the viewport edges.
 * Hero section only; no other homepage sections are affected.
 */
@media (max-width: 767px) {
  .p90-hero-content {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* =========================================================
   PROJECT 90 GLOBAL HEADER — v1.4.1
   Global, fixed, mobile-first. Dimensions/offsets are controlled
   from Project 90 -> Global Mobile Header.
========================================================= */
.p90-site-header.p90-header-global{
	position:fixed !important;
	top:0;
	left:0;
	right:0;
	width:100%;
	height:var(--p90-header-height,72px);
	min-height:var(--p90-header-height,72px);
	z-index:2147483000 !important;
	background:#1b1b1b !important;
	border-bottom:1px solid rgba(255,255,255,.08);
	box-shadow:0 3px 18px rgba(0,0,0,.28);
}
body.p90-global-header-active{padding-top:var(--p90-header-height,72px) !important;}
.p90-site-header.p90-header-global .p90-header-inner{
	width:100%;
	box-sizing:border-box;
	height:var(--p90-header-height,72px);
	min-height:var(--p90-header-height,72px);
	padding:0 var(--p90-header-padding-x,20px);
	grid-template-columns:auto minmax(0,1fr) auto;
	gap:10px;
}
.p90-site-header.p90-header-global .p90-header-side-right{
	gap:10px;
	justify-content:flex-end;
	align-items:center;
}
.p90-site-header.p90-header-global .p90-header-whatsapp,
.p90-site-header.p90-header-global .p90-header-notifications{
	width:var(--p90-wa-size,48px) !important;
	height:var(--p90-wa-size,48px) !important;
	min-width:var(--p90-wa-size,48px) !important;
	min-height:var(--p90-wa-size,48px) !important;
	flex:0 0 var(--p90-wa-size,48px) !important;
	transform:translate(var(--p90-wa-x,0px),var(--p90-wa-y,0px));
}
.p90-site-header.p90-header-global .p90-header-notifications{
	width:var(--p90-bell-size,48px) !important;
	height:var(--p90-bell-size,48px) !important;
	min-width:var(--p90-bell-size,48px) !important;
	min-height:var(--p90-bell-size,48px) !important;
	flex-basis:var(--p90-bell-size,48px) !important;
	transform:translate(var(--p90-bell-x,0px),var(--p90-bell-y,0px));
	background:#181818 !important;
	border:1px solid rgba(255,255,255,.13) !important;
	border-radius:14px !important;
}
.p90-site-header.p90-header-global .p90-header-whatsapp{
	background:transparent !important;
	border:0 !important;
	overflow:visible !important;
	transform:translate(var(--p90-wa-x,0px),var(--p90-wa-y,0px));
}
.p90-site-header.p90-header-global .p90-header-whatsapp .ht-ctc-chat,
.p90-site-header.p90-header-global .p90-header-whatsapp .ht-ctc-chat-wrapper,
.p90-site-header.p90-header-global .p90-header-whatsapp .ht-ctc-chat-style,
.p90-site-header.p90-header-global .p90-header-whatsapp a,
.p90-site-header.p90-header-global .p90-header-whatsapp button{
	width:var(--p90-wa-size,48px) !important;
	height:var(--p90-wa-size,48px) !important;
	min-width:var(--p90-wa-size,48px) !important;
	min-height:var(--p90-wa-size,48px) !important;
	border-radius:14px !important;
	margin:0 !important;padding:0 !important;
	box-shadow:none !important;
	display:inline-flex !important;align-items:center !important;justify-content:center !important;
}
.p90-site-header.p90-header-global .p90-header-whatsapp img,
.p90-site-header.p90-header-global .p90-header-whatsapp svg{
	width:var(--p90-wa-icon,36px) !important;height:var(--p90-wa-icon,36px) !important;
	max-width:var(--p90-wa-icon,36px) !important;max-height:var(--p90-wa-icon,36px) !important;
}
.p90-site-header.p90-header-global .p90-header-brand{max-width:180px;justify-self:start;grid-column:1;}
.p90-site-header.p90-header-global .p90-header-brand img{max-width:132px;max-height:52px;}
.p90-site-header.p90-header-global .p90-header-brand-text{font-size:19px;}
.p90-site-header.p90-header-global .p90-header-bell{
	font-size:var(--p90-bell-icon,28px);
	line-height:1;
	filter:grayscale(1) brightness(3.4);
}
.p90-site-header.p90-header-global .p90-header-notification-badge{
	top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;font-size:10px;
	background:#ff4d2e;border:2px solid #1b1b1b;
}
/* The menu control is intentionally icon-only: no square, border or background. */
.p90-site-header.p90-header-global .p90-header-dots{
	appearance:none !important;
	width:var(--p90-dots-size,24px) !important;
	height:var(--p90-dots-size,24px) !important;
	min-width:var(--p90-dots-size,24px) !important;
	min-height:var(--p90-dots-size,24px) !important;
	flex:0 0 var(--p90-dots-size,24px) !important;
	padding:0 !important;
	margin:0 !important;
	border:0 !important;
	background:transparent !important;
	box-shadow:none !important;
	border-radius:0 !important;
	gap:var(--p90-dots-gap,5px) !important;
	transform:translate(var(--p90-dots-x,0px),var(--p90-dots-y,0px));
	cursor:pointer;
}
.p90-site-header.p90-header-global .p90-header-dots span{
	display:block !important;
	visibility:visible !important;
	opacity:1 !important;
	width:var(--p90-dots-icon,6px) !important;
	height:var(--p90-dots-icon,6px) !important;
	min-width:var(--p90-dots-icon,6px) !important;
	min-height:var(--p90-dots-icon,6px) !important;
	max-width:none !important;
	max-height:none !important;
	border-radius:50% !important;
	background:#ffffff !important;
	background-color:#ffffff !important;
	color:#ffffff !important;
	box-shadow:0 0 0 1px #ffffff !important;
}
.p90-site-header.p90-header-global .p90-header-dots:hover,
.p90-site-header.p90-header-global .p90-header-dots:focus-visible,
.p90-site-header.p90-header-global .p90-header-dots.is-open{
	border:0 !important;background:transparent !important;box-shadow:none !important;
}
.p90-site-header.p90-header-global .p90-header-navigation{z-index:5;}

/* Hide common theme/Elementor top headers so Project90 is the sole global header. */
body.p90-global-header-active .elementor-location-header,
body.p90-global-header-active .elementor-location-header > .elementor,
body.p90-global-header-active header.site-header,
body.p90-global-header-active .site-header,
body.p90-global-header-active #masthead,
body.p90-global-header-active .main-header,
body.p90-global-header-active .hello-elementor-header{
	display:none !important;
}

@media (max-width:767px){
	body.admin-bar .p90-site-header.p90-header-global{top:46px;}
	body.admin-bar.p90-global-header-active{padding-top:calc(var(--p90-header-height,72px) + 46px) !important;}
}
@media (min-width:768px){
	body.admin-bar .p90-site-header.p90-header-global{top:32px;}
	body.admin-bar.p90-global-header-active{padding-top:calc(var(--p90-header-height,72px) + 32px) !important;}
}



/* v1.4.4 — Match global header controls to Bottom Navigation inactive icon color. */
.p90-site-header.p90-header-global .p90-header-notifications{
	background:transparent !important;
	border-color:transparent !important;
}
.p90-site-header.p90-header-global .p90-header-notifications:hover,
.p90-site-header.p90-header-global .p90-header-notifications:focus-visible{
	background:rgba(255,255,255,.04) !important;
	border-color:transparent !important;
}
.p90-site-header.p90-header-global .p90-header-bell{
	color:#8f8f8f !important;
	filter:grayscale(1) brightness(1.55) !important;
}
.p90-site-header.p90-header-global .p90-header-notifications.is-unread .p90-header-bell{
	filter:none !important;
}
.p90-site-header.p90-header-global .p90-header-dots span{
	background:#8f8f8f !important;
	background-color:#8f8f8f !important;
	color:#8f8f8f !important;
	box-shadow:none !important;
}

/* =====================================================
   GLOBAL HEADER NOTIFICATION DROPDOWN — v1.4.5
   ===================================================== */
.p90-site-header.p90-header-global{z-index:10000;}
.p90-header-notifications{appearance:none;-webkit-appearance:none;cursor:pointer;}
.p90-header-notification-panel{position:absolute;top:calc(100% + 10px);right:var(--p90-header-padding-x,20px);width:min(410px,calc(100vw - 24px));max-height:min(560px,calc(100vh - var(--p90-header-height,72px) - 24px));overflow:hidden;background:#111;border:1px solid #303030;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.55);z-index:10010;}
.p90-header-notification-panel[hidden]{display:none!important;}
.p90-header-notification-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid #292929;background:#111;}
.p90-header-notification-head strong{color:#fff;font-size:15px;font-weight:800;}
.p90-header-notification-head button{appearance:none;background:transparent;border:0;padding:4px;color:#e6b414;font:700 12px/1 inherit;cursor:pointer;}
.p90-header-notification-head button:disabled{opacity:.55;cursor:default;}
.p90-header-notification-list{max-height:calc(min(560px,100vh - var(--p90-header-height,72px) - 24px) - 54px);overflow-y:auto;overscroll-behavior:contain;}
.p90-header-notification-item{display:flex;gap:10px;padding:14px 16px;text-decoration:none;border-bottom:1px solid #242424;background:#101010;color:#ddd;}
.p90-header-notification-item:last-child{border-bottom:0;}
.p90-header-notification-item:hover{background:#171717;}
.p90-header-notification-item.is-unread{background:#15130b;}
.p90-header-notification-dot{width:8px;height:8px;flex:0 0 8px;margin-top:6px;border-radius:50%;background:transparent;}
.p90-header-notification-item.is-unread .p90-header-notification-dot{background:#e6b414;}
.p90-header-notification-copy{min-width:0;display:flex;flex-direction:column;gap:4px;}
.p90-header-notification-copy strong{color:#fff;font-size:13px;line-height:1.35;font-weight:800;}
.p90-header-notification-copy span{color:#bdbdc2;font-size:12px;line-height:1.45;}
.p90-header-notification-copy small{color:#777;font-size:11px;line-height:1.2;}
.p90-header-notification-empty{padding:30px 18px;color:#777;text-align:center;font-size:13px;}
@media(max-width:767px){
 .p90-header-notification-panel{top:calc(100% + 8px);right:8px;width:min(390px,calc(100vw - 16px));border-radius:16px;}
 .p90-header-notification-copy strong{font-size:13px;}
}


/* Coach/announcement message popout — isolated addition */
.p90-header-message-popout{position:fixed;inset:0;z-index:10020;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--p90-header-height,72px) + 18px) 12px 24px;background:rgba(0,0,0,.42);}
.p90-header-message-popout[hidden]{display:none!important;}
.p90-header-message-popout-card{width:min(420px,100%);max-height:calc(100vh - var(--p90-header-height,72px) - 42px);overflow:auto;background:#111;border:1px solid #303030;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.55);}
.p90-header-message-popout-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #292929;}
.p90-header-message-popout-head strong{color:#fff;font-size:15px;line-height:1.35;font-weight:800;}
.p90-header-message-popout-head button{appearance:none;background:transparent;border:0;color:#aaa;font-size:25px;line-height:1;cursor:pointer;padding:0 2px;}
.p90-header-message-popout-body{padding:18px;color:#c6c6ca;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word;}
.p90-header-message-popout-foot{padding:0 18px 16px;text-align:right;}
.p90-header-message-popout-foot button{appearance:none;background:#e6b414;border:0;color:#111;border-radius:10px;padding:9px 15px;font-size:13px;font-weight:800;cursor:pointer;}
@media(max-width:767px){.p90-header-message-popout{padding:calc(var(--p90-header-height,72px) + 10px) 10px 18px;align-items:flex-start}.p90-header-message-popout-card{width:100%;max-height:calc(100vh - var(--p90-header-height,72px) - 28px);border-radius:14px}.p90-header-message-popout-body{font-size:14px;padding:16px}.p90-header-message-popout-head{padding:14px 16px}.p90-header-message-popout-foot{padding:0 16px 14px}}


/* Dashboard notification history is intentionally hidden; notifications remain available from the global bell. */
body.p90-dashboard-notification-block-hidden .p90n-panel{display:none!important;}


/* Dashboard Stay-on-track cards + Live Coaching full-page popout v1.4.10. */
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions{
	display:grid!important;
	grid-template-columns:repeat(2,minmax(0,1fr))!important;
	gap:14px!important;
	align-items:start!important;
}
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions>a.p90x-track-card{
	box-sizing:border-box!important;
	width:100%!important;
	height:72px!important;
	min-height:72px!important;
	max-height:72px!important;
	min-width:0!important;
	display:flex!important;
	align-items:center!important;
	gap:10px!important;
	position:relative!important;
	padding:12px 15px!important;
	margin:0!important;
	border:1px solid #29292d!important;
	border-radius:18px!important;
	background:#151515!important;
	color:#fff!important;
	text-decoration:none!important;
	box-shadow:none!important;
	overflow:hidden!important;
}
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions>a.p90x-track-card:hover{
	background:#191919!important;
	border-color:#3a3a3f!important;
}
/* v1.4.14: remove decorative gold arrows from the Weekly check-in KPI and the two added track cards. */
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions>a.p90x-track-card .p90x-track-card-arrow{display:none!important;}
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-kpis>div:nth-child(4)::before,
body.p90-dashboard-track-cards-ready .p90x-hub .p90x-kpis>div:nth-child(4)::after{content:none!important;display:none!important;}
.p90x-track-card-icon{flex:0 0 auto;font-size:21px!important;line-height:1!important;}
.p90x-track-card-copy{min-width:0;display:flex;flex:1 1 auto;flex-direction:column;gap:2px;text-align:left;overflow:hidden;}
.p90x-track-card-copy strong{display:block!important;margin:0!important;color:#fff!important;font-size:16px!important;line-height:1.15!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.p90x-track-card-copy small{display:block!important;margin:0!important;color:#999!important;font-size:10px!important;line-height:1.2!important;font-weight:500!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.p90x-track-card-arrow{margin-left:auto;flex:0 0 auto;color:#dba617!important;font-size:20px!important;line-height:1!important;font-weight:700!important;}

/* Full-screen Live Coaching popout. Keep it above the global header and mobile navigation. */
.p90-live-fullscreen-popout{
	position:fixed!important;
	inset:0!important;
	width:100vw!important;
	height:100dvh!important;
	z-index:999998!important;
	background:#0b0b0c!important;
	color:#fff!important;
	overflow-y:auto!important;
	-webkit-overflow-scrolling:touch!important;
	padding:0 0 30px!important;
	box-sizing:border-box!important;
}
.p90-live-fullscreen-popout[hidden]{display:none!important;}
.p90-live-fullscreen-head{
	position:sticky!important;
	top:0!important;
	z-index:3!important;
	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;
	gap:14px!important;
	padding:14px 18px!important;
	background:rgba(14,14,15,.98)!important;
	border-bottom:1px solid #29292d!important;
	box-shadow:0 4px 18px rgba(0,0,0,.35)!important;
}
.p90-live-fullscreen-head>div{min-width:0;display:flex;flex-direction:column;gap:3px;}
.p90-live-fullscreen-head span{font-size:10px!important;line-height:1!important;letter-spacing:.16em!important;font-weight:900!important;color:#dba617!important;}
.p90-live-fullscreen-head strong{font-size:21px!important;line-height:1.1!important;color:#fff!important;font-weight:800!important;}
.p90-live-fullscreen-close{
	appearance:none!important;-webkit-appearance:none!important;
	width:44px!important;height:44px!important;flex:0 0 44px!important;
	border:1px solid #444449!important;border-radius:50%!important;
	background:#1b1b1e!important;color:#fff!important;
	font-size:30px!important;line-height:40px!important;text-align:center!important;
	padding:0!important;margin:0!important;cursor:pointer!important;
	display:flex!important;align-items:center!important;justify-content:center!important;
	position:relative!important;z-index:5!important;
}
.p90-live-fullscreen-close:hover,.p90-live-fullscreen-close:focus{background:#29292d!important;outline:2px solid #dba617!important;outline-offset:2px!important;}
.p90-live-fullscreen-body{width:min(1200px,100%);margin:0 auto;padding:16px!important;box-sizing:border-box!important;}
.p90-live-fullscreen-body .p90-live-wrap{margin:0!important;}
.p90-live-fullscreen-body .p90-live-dropdown-body{display:block!important;}
.p90-live-fullscreen-body .p90-live-dropdown{border-radius:22px!important;}
.p90-live-popout-parking{display:none!important;}
body.p90-live-fullscreen-open{overflow:hidden!important;}
/* v1.4.16: keep the global header below the Live Coaching popout so the Competition YouTube modal (z-index 999999) can appear above the popout without changing the competition plugin. */
body.p90-live-fullscreen-open .p90-site-header.p90-header-global{z-index:999997!important;}

@media(max-width:767px){
	body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions{gap:10px!important;}
	body.p90-dashboard-track-cards-ready .p90x-hub .p90x-actions>a.p90x-track-card{
		height:66px!important;min-height:66px!important;max-height:66px!important;
		padding:10px 12px!important;border-radius:15px!important;gap:8px!important;
	}
	.p90x-track-card-icon{font-size:19px!important;}
	.p90x-track-card-copy strong{font-size:14px!important;}
	.p90x-track-card-copy small{font-size:9px!important;}
	.p90-live-fullscreen-head{padding:12px 13px!important;}
	.p90-live-fullscreen-head strong{font-size:18px!important;}
	.p90-live-fullscreen-close{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:28px!important;}
	.p90-live-fullscreen-body{padding:10px!important;}
}


/* Exercise Library full-page popout: video list, not a YouTube player. */
.p90-exercise-fullscreen-popout{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147483646!important;background:#0b0b0c!important;color:#fff!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:0 0 30px!important;box-sizing:border-box!important;}
.p90-exercise-fullscreen-popout[hidden]{display:none!important;}
.p90-exercise-fullscreen-head{position:sticky!important;top:0!important;z-index:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:14px 18px!important;background:rgba(14,14,15,.98)!important;border-bottom:1px solid #29292d!important;box-shadow:0 4px 18px rgba(0,0,0,.35)!important;}
.p90-exercise-fullscreen-head>div{min-width:0;display:flex;flex-direction:column;gap:3px;}
.p90-exercise-fullscreen-head span{font-size:10px!important;line-height:1!important;letter-spacing:.16em!important;font-weight:900!important;color:#dba617!important;}
.p90-exercise-fullscreen-head strong{font-size:21px!important;line-height:1.1!important;color:#fff!important;font-weight:800!important;}
.p90-exercise-fullscreen-close{appearance:none!important;-webkit-appearance:none!important;width:44px!important;height:44px!important;flex:0 0 44px!important;border:1px solid #444449!important;border-radius:50%!important;background:#1b1b1e!important;color:#fff!important;font-size:30px!important;line-height:40px!important;text-align:center!important;padding:0!important;margin:0!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:5!important;}
.p90-exercise-fullscreen-close:hover,.p90-exercise-fullscreen-close:focus{background:#29292d!important;outline:2px solid #dba617!important;outline-offset:2px!important;}
.p90-exercise-fullscreen-body{width:min(1200px,100%);margin:0 auto;padding:18px!important;box-sizing:border-box!important;}
.p90-exercise-library-status{margin:0 0 16px;color:#999;font-size:13px;line-height:1.5;}
.p90-exercise-library-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important;}
.p90-exercise-video-card{display:flex!important;flex-direction:column!important;min-width:0!important;overflow:hidden!important;background:#151515!important;border:1px solid #29292d!important;border-radius:16px!important;color:#fff!important;text-decoration:none!important;transition:background .15s ease,border-color .15s ease,transform .15s ease!important;}
.p90-exercise-video-card:hover{background:#1a1a1c!important;border-color:#3b3b40!important;transform:translateY(-1px)!important;}
.p90-exercise-video-thumb-wrap{position:relative!important;width:100%!important;aspect-ratio:16/9!important;background:#222!important;overflow:hidden!important;}
.p90-mct-cover-wrap{background:#0b0b0b!important;}
.p90-mct-cover{position:absolute!important;inset:0!important;display:block!important;overflow:hidden!important;background:
 radial-gradient(circle at 82% 20%,rgba(224,169,24,.28),transparent 27%),
 radial-gradient(circle at 18% 88%,rgba(255,255,255,.07),transparent 31%),
 linear-gradient(132deg,#1a1a1a 0%,#0a0a0a 64%,#111 100%)!important;
 color:#fff!important;text-align:left!important;font-family:inherit!important;}
.p90-mct-cover:before{content:"";position:absolute!important;inset:-30%!important;background:
 repeating-linear-gradient(115deg,transparent 0 34px,rgba(255,255,255,.028) 35px 36px),
 linear-gradient(115deg,transparent 38%,rgba(224,169,24,.13) 39%,transparent 40%)!important;transform:rotate(-7deg)!important;}
.p90-mct-cover:after{content:"";position:absolute!important;width:52%!important;aspect-ratio:1!important;right:-18%!important;top:-36%!important;border:1px solid rgba(224,169,24,.3)!important;border-radius:50%!important;box-shadow:0 0 0 18px rgba(224,169,24,.045),0 0 0 38px rgba(224,169,24,.022)!important;}
.p90-mct-cover-top,.p90-mct-cover-kicker,.p90-mct-cover-title,.p90-mct-cover-number,.p90-mct-cover-code{position:absolute!important;z-index:2!important;display:block!important;}
.p90-mct-cover-top{left:18px!important;top:15px!important;font-size:9px!important;letter-spacing:.25em!important;font-weight:900!important;color:#e0a918!important;}
.p90-mct-cover-kicker{left:18px!important;bottom:55px!important;font-size:clamp(12px,1.7vw,18px)!important;line-height:1!important;letter-spacing:.13em!important;font-weight:800!important;color:#fff!important;}
.p90-mct-cover-title{left:18px!important;bottom:35px!important;font-size:clamp(15px,2.3vw,25px)!important;line-height:1!important;letter-spacing:.04em!important;font-weight:950!important;color:#fff!important;}
.p90-mct-cover-number{right:13px!important;bottom:1px!important;font-size:clamp(70px,10vw,118px)!important;line-height:.78!important;letter-spacing:-.08em!important;font-weight:950!important;color:rgba(255,255,255,.075)!important;}
.p90-mct-cover-code{right:18px!important;bottom:17px!important;font-size:9px!important;letter-spacing:.16em!important;font-weight:900!important;color:#e0a918!important;}

.p90-exercise-video-thumb{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
.p90-exercise-video-play{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:48px!important;height:48px!important;border-radius:50%!important;background:rgba(0,0,0,.72)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:19px!important;line-height:1!important;padding-left:2px!important;}
.p90-exercise-video-copy{padding:13px 14px 15px!important;}
.p90-exercise-video-number{display:block!important;margin-bottom:5px!important;color:#dba617!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important;}
.p90-exercise-video-title{display:block!important;color:#fff!important;font-size:14px!important;font-weight:800!important;line-height:1.35!important;overflow-wrap:anywhere!important;}
.p90-exercise-library-loading,.p90-exercise-library-error{padding:36px 12px!important;text-align:center!important;color:#aaa!important;font-size:14px!important;line-height:1.5!important;}
.p90-exercise-library-error{color:#f0aaaa!important;}
body.p90-exercise-fullscreen-open{overflow:hidden!important;}
@media(max-width:900px){.p90-exercise-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:767px){.p90-exercise-fullscreen-head{padding:12px 13px!important}.p90-exercise-fullscreen-head strong{font-size:18px!important}.p90-exercise-fullscreen-close{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:28px!important}.p90-exercise-fullscreen-body{padding:12px!important}.p90-exercise-library-grid{grid-template-columns:1fr!important;gap:12px!important}.p90-exercise-video-copy{padding:12px 13px 14px!important;}.p90-exercise-video-title{font-size:14px!important;}}


/* v1.4.21: Exercise Library individual-video player. This is isolated from the Live Coaching popout. */
.p90-exercise-video-card{appearance:none!important;-webkit-appearance:none!important;width:100%!important;padding:0!important;margin:0!important;text-align:left!important;font:inherit!important;cursor:pointer!important;}
.p90-exercise-video-modal{position:fixed!important;inset:0!important;z-index:2147483646!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;background:rgba(0,0,0,.88)!important;box-sizing:border-box!important;}
.p90-exercise-video-modal[hidden]{display:none!important;}
.p90-exercise-video-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.72)!important;}
.p90-exercise-video-modal-box{position:relative!important;z-index:2!important;width:min(1020px,100%)!important;background:#111!important;border:1px solid #333!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 30px 100px rgba(0,0,0,.75)!important;}
.p90-exercise-video-modal-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:12px 16px!important;background:#111!important;border-bottom:1px solid #29292d!important;color:#fff!important;}
.p90-exercise-video-modal-head strong{font-size:16px!important;line-height:1.2!important;}
.p90-exercise-video-modal-close{appearance:none!important;-webkit-appearance:none!important;width:40px!important;height:40px!important;flex:0 0 40px!important;border:1px solid #444449!important;border-radius:50%!important;background:#1b1b1e!important;color:#fff!important;font-size:27px!important;line-height:1!important;cursor:pointer!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.p90-exercise-video-modal-player{position:relative!important;width:100%!important;aspect-ratio:16/9!important;background:#000!important;overflow:hidden!important;}
/* YouTube's embed can retain its own bottom-left link and bottom-right "Watch on YouTube" overlays.
   These transparent shields hide/capture only those branding hit areas without covering the video. */

.p90-exercise-native-video{display:block!important;width:100%!important;height:100%!important;border:0!important;background:#000!important;object-fit:contain!important;outline:none!important;}
.p90-exercise-video-modal-player>iframe{display:block!important;width:100%!important;height:100%!important;border:0!important;background:#000!important;}
.p90-exercise-native-video::-webkit-media-controls-download-button{display:none!important;}
.p90-exercise-video-modal-status{padding:9px 14px!important;color:#aaa!important;font-size:12px!important;line-height:1.4!important;background:#111!important;}
body.p90-exercise-video-modal-open{overflow:hidden!important;}
@media(max-width:767px){.p90-exercise-video-modal{padding:10px!important}.p90-exercise-video-modal-box{border-radius:13px!important}.p90-exercise-video-modal-head{padding:10px 12px!important}.p90-exercise-video-modal-close{width:38px!important;height:38px!important;flex-basis:38px!important;}}


/* =========================================================
   PROJECT90 BYOB — SEASON 01 VISUAL SYSTEM
   v1.4.33
   Storyline + presentation layer only. Existing behavior,
   notifications, video handling and settings storage remain intact.
========================================================= */

.p90-homepage{
	--p90-ink:#080808;
	--p90-paper:#f3f1eb;
	--p90-accent:#ffd23f;
	--p90-accent-2:#ff8a00;
	--p90-line:rgba(255,255,255,.12);
	--p90-soft-line:rgba(255,255,255,.08);
}

.p90-homepage .p90-hero{
	min-height:min(900px,calc(100svh - 1px));
	background:
		radial-gradient(circle at 78% 28%,rgba(255,210,63,.15),transparent 24%),
		radial-gradient(circle at 18% 76%,rgba(255,138,0,.09),transparent 26%),
		linear-gradient(115deg,#030303 0%,#0b0b0b 48%,#111 100%);
	isolation:isolate;
}

.p90-homepage .p90-hero-overlay{
	background:
		linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.18) 72%,rgba(0,0,0,.56)),
		linear-gradient(180deg,rgba(0,0,0,.18),transparent 48%,rgba(0,0,0,.84));
	z-index:0;
}

.p90-hero-grid{
	position:absolute;
	inset:0;
	opacity:.45;
	background-image:
		linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
		linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
	background-size:56px 56px;
	mask-image:linear-gradient(90deg,rgba(0,0,0,.8),transparent 82%);
	pointer-events:none;
	z-index:0;
}

.p90-hero-grid:after{
	content:"";
	position:absolute;
	inset:0;
	background:repeating-linear-gradient(135deg,transparent 0 11px,rgba(255,210,63,.025) 11px 12px);
}

.p90-hero-glow{
	position:absolute;
	width:280px;
	height:280px;
	border-radius:50%;
	border:1px solid rgba(255,210,63,.12);
	box-shadow:0 0 90px rgba(255,180,0,.08);
	pointer-events:none;
	z-index:0;
}
.p90-hero-glow-one{right:-120px;top:13%;transform:scale(1.5)}
.p90-hero-glow-two{left:-180px;bottom:-120px;transform:scale(.8);border-color:rgba(255,255,255,.08)}

.p90-hero-number{
	position:absolute;
	right:3vw;
	bottom:2%;
	z-index:0;
	font-size:clamp(180px,38vw,560px);
	font-weight:950;
	line-height:.72;
	letter-spacing:-.12em;
	color:transparent;
	-webkit-text-stroke:1px rgba(255,255,255,.065);
	pointer-events:none;
	user-select:none;
}

.p90-hero-content{
	z-index:2;
}

.p90-hero-season{
	display:flex;
	align-items:center;
	gap:10px;
	margin-bottom:18px;
	color:rgba(255,255,255,.66);
	font-size:10px;
	font-weight:900;
	letter-spacing:.18em;
}
.p90-hero-season i{
	width:24px;
	height:1px;
	background:var(--p90-accent);
	display:block;
}

.p90-homepage .p90-eyebrow{
	color:var(--p90-accent);
	margin-bottom:12px;
	letter-spacing:.22em;
}

.p90-homepage .p90-hero h1{
	max-width:1000px;
	font-size:clamp(54px,13vw,122px);
	font-weight:950;
	line-height:.88;
	letter-spacing:-.075em;
	text-wrap:balance;
	text-transform:uppercase;
}

.p90-hero-rule{
	width:min(180px,34vw);
	height:2px;
	margin:25px 0 0;
	background:linear-gradient(90deg,var(--p90-accent),transparent);
}

.p90-homepage .p90-hero-description{
	max-width:650px;
	margin:23px 0 31px;
	color:rgba(255,255,255,.72);
	font-size:clamp(16px,2vw,19px);
	line-height:1.65;
}

.p90-hero-actions .p90-btn{
	gap:14px;
}
.p90-hero-actions .p90-btn span{
	font-size:16px;
	line-height:1;
}
.p90-homepage .p90-btn-primary{
	background:var(--p90-accent);
	box-shadow:0 15px 40px rgba(255,210,63,.15);
}
.p90-homepage .p90-btn-primary:hover{
	background:#ffe16d;
	box-shadow:0 20px 55px rgba(255,210,63,.22);
}
.p90-btn-ghost{
	background:rgba(255,255,255,.035);
	border-color:rgba(255,255,255,.18);
	color:#fff;
}
.p90-btn-ghost:hover{
	background:rgba(255,255,255,.08);
	border-color:rgba(255,255,255,.34);
}

.p90-hero-footnote{
	display:flex;
	flex-wrap:wrap;
	gap:9px 22px;
	margin-top:34px;
	color:rgba(255,255,255,.42);
	font-size:9px;
	font-weight:800;
	letter-spacing:.16em;
}
.p90-hero-footnote span{
	position:relative;
}
.p90-hero-footnote span:not(:last-child):after{
	content:"";
	position:absolute;
	right:-13px;
	top:50%;
	width:3px;
	height:3px;
	border-radius:50%;
	background:var(--p90-accent);
	transform:translateY(-50%);
}

/* Prize section becomes a premium editorial "finish line". */
.p90-prize-section{
	background:
		radial-gradient(circle at 50% 0,rgba(255,210,63,.12),transparent 28%),
		linear-gradient(180deg,#080808,#0d0d0d);
}
.p90-section-orbit{
	position:absolute;
	width:520px;
	height:520px;
	right:-310px;
	top:-190px;
	border:1px solid rgba(255,210,63,.12);
	border-radius:50%;
	pointer-events:none;
}
.p90-section-orbit:before,.p90-section-orbit:after{
	content:"";
	position:absolute;
	inset:42px;
	border:1px solid rgba(255,255,255,.055);
	border-radius:50%;
}
.p90-section-orbit:after{inset:105px;border-color:rgba(255,210,63,.07)}

.p90-homepage .p90-section-heading h2{
	text-wrap:balance;
	font-weight:900;
}
.p90-homepage .p90-section-label{
	letter-spacing:.22em;
}

.p90-prize-card{
	background:
		linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
		#101010;
	border-color:rgba(255,255,255,.09);
	box-shadow:0 20px 60px rgba(0,0,0,.22);
	transition:transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease;
}
.p90-prize-card:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:2px;
	background:linear-gradient(90deg,transparent,var(--p90-accent),transparent);
	opacity:.65;
}
.p90-prize-card:hover{
	border-color:rgba(255,210,63,.28);
	box-shadow:0 28px 80px rgba(0,0,0,.36);
}

.p90-features{
	border-top:1px solid rgba(255,255,255,.08);
	border-bottom:1px solid rgba(255,255,255,.08);
	padding:20px 0;
}
.p90-feature{
	font-size:13px;
	color:rgba(255,255,255,.72);
}
.p90-check{
	background:rgba(255,210,63,.1);
	color:var(--p90-accent);
}

/* Story / manifesto */
.p90-story-section{
	background:
		linear-gradient(90deg,#0a0a0a 0%,#0e0e0e 52%,#090909 100%);
}
.p90-story-copy{
	position:relative;
}
.p90-story-grid-no-video{
	grid-template-columns:minmax(0,1fr) !important;
}
.p90-story-grid-no-video .p90-story-copy{
	width:100%;
	max-width:900px;
	margin:0 auto;
}
.p90-story-marker{
	display:flex;
	align-items:center;
	gap:12px;
	margin-bottom:24px;
	color:rgba(255,255,255,.35);
	font-size:9px;
	font-weight:900;
	letter-spacing:.18em;
}
.p90-story-marker span{
	color:var(--p90-accent);
	font-size:12px;
}
.p90-story-marker b{
	font-weight:900;
}
.p90-story-marker:after{
	content:"";
	width:60px;
	height:1px;
	background:rgba(255,255,255,.14);
}
.p90-story-copy h2{
	font-weight:900;
}
.p90-proof{
	background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
	border-color:rgba(255,255,255,.08);
}
.p90-proof strong{
	font-weight:950;
	color:var(--p90-accent);
}
.p90-video-card{
	background:
		radial-gradient(circle at 50% 40%,rgba(255,210,63,.13),transparent 27%),
		linear-gradient(145deg,#151515,#090909);
	border-color:rgba(255,255,255,.1);
}
.p90-founder-inline-video{
	display:block;
	width:100%;
	height:auto;
	min-height:330px;
	aspect-ratio:16/9;
	object-fit:contain;
	background:#000;
}
.p90-founder-unmute{
	position:absolute;
	left:50%;
	bottom:54px;
	z-index:4;
	transform:translateX(-50%);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-height:42px;
	padding:9px 15px;
	border:1px solid rgba(255,255,255,.35);
	border-radius:999px;
	background:rgba(0,0,0,.82);
	color:#fff;
	font:700 13px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	cursor:pointer;
	box-shadow:0 8px 28px rgba(0,0,0,.38);
}
.p90-founder-unmute:hover,.p90-founder-unmute:focus-visible{
	border-color:var(--p90-accent);
	color:var(--p90-accent);
}

/* Gallery: quiet, premium, image-first */
.p90-gallery-section{
	background:#f3f1eb;
	color:#101010;
}
.p90-gallery-section .p90-section-label{color:#8b6500}
.p90-gallery-section .p90-section-heading p{color:#666}
.p90-gallery-section .p90-photo-card{
	background:#e9e6df;
	border-color:rgba(0,0,0,.08);
	box-shadow:0 12px 30px rgba(0,0,0,.07);
}
.p90-gallery-section .p90-empty-state{
	border-color:rgba(0,0,0,.15);
	color:#777;
	background:rgba(255,255,255,.35);
}
.p90-gallery-section .p90-photo-card img{
	background:#e7e4dd;
}

/* Process: numbered editorial timeline */
.p90-process-section{
	background:#0a0a0a;
}
.p90-founder-profile-video{
	width:100%;
	max-width:900px;
	margin:30px auto 0;
}
.p90-process-card{
	position:relative;
	background:linear-gradient(145deg,#151515,#0d0d0d);
	border-color:rgba(255,255,255,.09);
	padding:30px 25px 27px;
	overflow:hidden;
}
.p90-process-card:after{
	content:"";
	position:absolute;
	right:-30px;
	top:-35px;
	width:120px;
	height:120px;
	border:1px solid rgba(255,210,63,.08);
	border-radius:50%;
}
.p90-process-number{
	color:var(--p90-accent);
}
.p90-process-card h3{
	font-weight:850;
}

/* Registration becomes the Season 1 closing statement. */
.p90-registration-section{
	background:
		radial-gradient(circle at 80% 15%,rgba(255,210,63,.13),transparent 26%),
		#070707;
}
.p90-registration-box{
	position:relative;
	overflow:hidden;
	background:
		linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025)),
		#101010;
	border-color:rgba(255,210,63,.22);
}
.p90-registration-box:before{
	content:"90";
	position:absolute;
	right:-10px;
	bottom:-65px;
	font-size:220px;
	line-height:1;
	font-weight:950;
	letter-spacing:-.1em;
	color:transparent;
	-webkit-text-stroke:1px rgba(255,255,255,.055);
	pointer-events:none;
}
.p90-registration-copy,.p90-login-cta-action{position:relative;z-index:1}
.p90-registration-copy h2{
	font-weight:950;
	text-wrap:balance;
}
.p90-login-note{
	color:rgba(255,255,255,.45);
}

/* Improve rhythm on wide screens. */
@media(min-width:768px){
	.p90-homepage .p90-hero-content{
		padding:150px 0 110px;
	}
	.p90-homepage .p90-hero-actions{
		gap:13px;
	}
	.p90-homepage .p90-hero-actions .p90-btn{
		min-width:190px;
	}
	.p90-hero-footnote{
		margin-top:42px;
	}
	.p90-story-copy{
		padding-right:10px;
	}
	.p90-process-card{
		min-height:250px;
	}
}

@media(min-width:1100px){
	.p90-homepage .p90-hero-content{
		padding-top:170px;
		padding-bottom:130px;
	}
	.p90-hero-number{
		right:7vw;
	}
}

@media(max-width:767px){
	.p90-homepage .p90-hero{
		min-height:calc(100svh - 1px);
	}
	.p90-hero-number{
		right:-18px;
		bottom:8%;
		font-size:250px;
	}
	.p90-hero-grid{background-size:38px 38px}
	.p90-hero-footnote{
		max-width:310px;
	}
	.p90-section-orbit{
		width:340px;height:340px;
		right:-235px;top:-125px;
	}
}

@media(prefers-reduced-motion:no-preference){
	.p90-hero-glow-one{
		animation:p90ByobPulse 8s ease-in-out infinite alternate;
	}
	.p90-hero-number{
		animation:p90ByobFloat 12s ease-in-out infinite alternate;
	}
	@keyframes p90ByobPulse{
		from{transform:scale(1.42);opacity:.65}
		to{transform:scale(1.58);opacity:1}
	}
	@keyframes p90ByobFloat{
		from{transform:translate3d(0,0,0)}
		to{transform:translate3d(-12px,-8px,0)}
	}
}

/* Project90 Homepage v1.4.42 — transformation photo carousel parity with Club 90.
 * Multi-photo galleries keep the complete source image, adapt the carousel height
 * to the visible photo, and expose functional next-photo controls. */
@media(max-width:767px){
  .p90-gallery-section .p90-photo-grid-carousel{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:flex-start!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-left:0!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    padding:0!important;
    margin:0!important;
    transition:height .18s ease;
  }
  .p90-gallery-section .p90-photo-grid-carousel::-webkit-scrollbar{display:none}
  .p90-gallery-section .p90-photo-grid-carousel .p90-photo-card{
    flex:0 0 100%!important;
    width:100%!important;
    max-width:100%!important;
    min-width:100%!important;
    height:auto!important;
    aspect-ratio:auto!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always;
    margin:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .p90-gallery-section .p90-photo-grid-carousel .p90-photo-card img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
  }
  .p90-photo-carousel-shell{position:relative!important;width:100%!important;max-width:100%!important}
  .p90-photo-carousel-next{
    position:absolute!important;
    z-index:5!important;
    top:50%!important;
    right:12px!important;
    transform:translateY(-50%)!important;
    width:42px!important;
    height:42px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.42)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.52)!important;
    color:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    cursor:pointer!important;
    appearance:none!important;
    -webkit-appearance:none!important;
  }
  .p90-photo-carousel-next span{font-size:34px!important;line-height:34px!important;font-weight:400!important;margin:-2px 0 0 2px!important}
  .p90-photo-carousel-next[hidden]{display:none!important}
  .p90-photo-carousel-dots{
    position:absolute!important;
    z-index:5!important;
    left:50%!important;
    bottom:12px!important;
    transform:translateX(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    padding:5px 8px!important;
    border-radius:999px!important;
    background:rgba(0,0,0,.48)!important;
    pointer-events:none!important;
  }
  .p90-photo-carousel-dots i{display:block!important;width:6px!important;height:6px!important;border-radius:50%!important;background:rgba(255,255,255,.55)!important}
  .p90-photo-carousel-dots i.is-active{background:#fff!important}
}


/* Project90 BYOB Season 1 — founder-led affordability campaign.
 * New campaign presentation only. Existing components/layout behavior remain unchanged.
 */
.p90-hero-price{
	display:inline-flex;
	align-items:center;
	width:max-content;
	max-width:100%;
	margin:16px 0 18px;
	padding:9px 13px;
	border:1px solid rgba(255,215,0,.45);
	border-radius:999px;
	background:rgba(255,215,0,.08);
	color:#FFD700;
	font-size:12px;
	font-weight:900;
	letter-spacing:.08em;
	line-height:1;
}
.p90-founder-profile-section{
	width:100%;
	max-width:100%;
	margin:24px 0 0;
	padding:0;
	position:relative;
	display:block;
	clear:both;
}
.p90-founder-profile-media{
	position:relative !important;
	inset:auto !important;
	float:none !important;
	display:block !important;
	width:100% !important;
	max-width:100% !important;
	height:auto;
	aspect-ratio:4/5;
	margin:0 !important;
	padding:0;
	border-radius:20px;
	overflow:hidden;
	background-color:#111;
	background-image:var(--p90-founder-profile-image);
	background-size:cover;
	background-position:center center;
	background-repeat:no-repeat;
	box-shadow:0 18px 45px rgba(0,0,0,.28);
}
.p90-founder-authority{
	margin-top:18px;
	display:grid;
	grid-template-columns:1fr;
	gap:18px;
	padding:20px;
	border:1px solid rgba(255,255,255,.10);
	border-radius:18px;
	background:rgba(255,255,255,.035);
}
.p90-founder-profile-copy{
	min-width:0;
}
.p90-founder-name{
	display:block;
	color:#fff;
	font-size:20px;
	line-height:1.2;
	font-weight:900;
}
.p90-founder-role{
	display:block;
	margin-top:5px;
	color:#bdbdbd;
	font-size:12px;
	font-weight:700;
}
.p90-founder-stats{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
	margin-top:16px;
}
.p90-founder-stats span{
	display:block;
	padding:12px;
	border-radius:12px;
	background:rgba(0,0,0,.22);
}
.p90-founder-stats b{
	display:block;
	color:#fff;
	font-size:12px;
	line-height:1.4;
}
.p90-founder-philosophy{
	margin:15px 0 0 !important;
	color:#c8c8c8;
	font-size:13px;
	line-height:1.7;
}
.p90-registration-price{
	display:inline-flex;
	margin:0 0 10px;
	padding:8px 12px;
	border-radius:999px;
	background:#FFD700;
	color:#080808;
	font-size:13px;
	font-weight:900;
	letter-spacing:.04em;
}
@media(max-width:767px){
	.p90-founder-stats{grid-template-columns:1fr}
	.p90-founder-authority{padding:17px}
	.p90-founder-profile-section{margin-top:22px}
	.p90-founder-profile-media{aspect-ratio:4/5}
	.p90-hero-price{margin-top:12px;margin-bottom:14px}
}

@media(min-width:768px){
	.p90-founder-profile-section{margin-top:28px}
	.p90-founder-profile-media{max-width:420px;aspect-ratio:4/5}
	.p90-founder-authority{grid-template-columns:1fr;align-items:start;gap:20px}
}

/* Project90 Homepage v1.4.52.2 — Live Coaching: header removed, X retained. */
.p90-live-fullscreen-popout .p90-live-fullscreen-head{
    position:absolute!important;
    inset:0!important;
    height:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
    z-index:20!important;
}
.p90-live-fullscreen-popout .p90-live-fullscreen-head>div{
    display:none!important;
}
.p90-live-fullscreen-popout .p90-live-fullscreen-close{
    position:absolute!important;
    top:18px!important;
    right:18px!important;
    margin:0!important;
    pointer-events:auto!important;
}
.p90-live-fullscreen-popout .p90-live-fullscreen-body{
    padding-top:0!important;
}
@media(max-width:767px){
    .p90-live-fullscreen-popout .p90-live-fullscreen-close{
        top:18px!important;
        right:18px!important;
    }
}

/* Project90 Homepage v1.4.52.3 — keep Live Coaching X sticky while scrolling. */
.p90-live-fullscreen-popout .p90-live-fullscreen-close{
    position:fixed!important;
    top:18px!important;
    right:18px!important;
    z-index:2147483647!important;
}
@media(max-width:767px){
    .p90-live-fullscreen-popout .p90-live-fullscreen-close{
        top:18px!important;
        right:18px!important;
    }
}


/* Project90 Homepage v2.9.1 — Live Coaching mobile replay-list fix ONLY.
   Problem observed in the app: the Live popout sat below the persistent mobile
   bottom navigation and inherited/nested overflow could make the replay list
   difficult to scroll through. Desktop behavior is intentionally unchanged. */
@media (max-width:767px){

	/* Match the Exercise Library full-screen layer so Live genuinely sits above
	   the app/site bottom navigation instead of scrolling behind it. */
	.p90-live-fullscreen-popout{
		z-index:2147483646!important;
		height:100dvh!important;
		max-height:100dvh!important;
		overflow-x:hidden!important;
		overflow-y:auto!important;
		-webkit-overflow-scrolling:touch!important;
		overscroll-behavior-y:contain!important;
		touch-action:pan-y!important;
		padding-bottom:calc(34px + env(safe-area-inset-bottom, 0px))!important;
	}

	/* Keep one clear scroll owner: the full-screen popout. Any height/overflow
	   rules from the Live Sessions component must not clip older recordings. */
	.p90-live-fullscreen-popout .p90-live-fullscreen-body,
	.p90-live-fullscreen-popout .p90-live-wrap,
	.p90-live-fullscreen-popout .p90-live-dropdown,
	.p90-live-fullscreen-popout .p90-live-dropdown-body{
		height:auto!important;
		min-height:0!important;
		max-height:none!important;
		overflow:visible!important;
		touch-action:pan-y!important;
	}

	/* All previous lectures flow vertically and contribute to the popout's
	   scroll height. No internal list scrollbar, no clipped final cards. */
	.p90-live-fullscreen-popout .p90-live-history-grid{
		display:grid!important;
		grid-template-columns:minmax(0,1fr)!important;
		width:100%!important;
		height:auto!important;
		min-height:0!important;
		max-height:none!important;
		overflow:visible!important;
		overscroll-behavior:contain!important;
		touch-action:pan-y!important;
	}

	.p90-live-fullscreen-popout .p90-live-history-card{
		width:100%!important;
		max-width:none!important;
		min-width:0!important;
	}

	/* Leave enough breathing room below the final recording even in WebView
	   devices with a gesture/navigation safe area. */
	.p90-live-fullscreen-popout .p90-live-history-grid:last-child{
		margin-bottom:calc(34px + env(safe-area-inset-bottom, 0px))!important;
	}
}


/* Project90 Homepage v2.9.2 — Live Coaching mobile layout refinement ONLY.
   A) use the available mobile width for replay/search cards
   B) force Live recording player into the true visual centre of the screen
   Desktop and Exercise Library presentation remain unchanged. */
@media (max-width:767px){

	/* ---------- Live Coaching replay list: use the screen width ---------- */
	.p90-live-fullscreen-popout .p90-live-fullscreen-body{
		width:100%!important;
		max-width:none!important;
		margin:0!important;
		padding:10px 8px calc(42px + env(safe-area-inset-bottom, 0px))!important;
	}

	.p90-live-fullscreen-popout .p90-live-wrap,
	.p90-live-fullscreen-popout .p90-live-dropdown,
	.p90-live-fullscreen-popout .p90-live-dropdown-body,
	.p90-live-fullscreen-popout .p90-live-replay-search-v150,
	.p90-live-fullscreen-popout .p90-live-history-grid{
		box-sizing:border-box!important;
		width:100%!important;
		max-width:none!important;
		min-width:0!important;
		margin-left:0!important;
		margin-right:0!important;
	}

	.p90-live-fullscreen-popout .p90-live-replay-search-v150{
		padding-left:0!important;
		padding-right:0!important;
	}

	.p90-live-fullscreen-popout .p90-live-replay-search-v150 .p90-live-replay-search-box{
		width:100%!important;
		max-width:none!important;
		min-width:0!important;
		flex:1 1 100%!important;
	}

	.p90-live-fullscreen-popout .p90-live-history-grid{
		grid-template-columns:minmax(0,1fr)!important;
		gap:12px!important;
	}

	.p90-live-fullscreen-popout .p90-live-history-card{
		box-sizing:border-box!important;
		width:100%!important;
		max-width:none!important;
		min-width:0!important;
		margin-left:0!important;
		margin-right:0!important;
	}

	/* ---------- Live recording player: true centre, above app bottom nav ---------- */
	.p90-exercise-video-modal.p90-live-recording-modal{
		z-index:2147483647!important;
		position:fixed!important;
		inset:0!important;
		width:100vw!important;
		height:100dvh!important;
		min-height:100dvh!important;
		max-height:100dvh!important;
		padding:12px!important;
		margin:0!important;
		overflow:hidden!important;
	}

	/* Absolute centring avoids WebView/theme flex overrides that were causing
	   the recording player to settle near the bottom of the visible screen. */
	.p90-exercise-video-modal.p90-live-recording-modal .p90-exercise-video-modal-box{
		position:absolute!important;
		left:50%!important;
		top:50%!important;
		transform:translate(-50%,-50%)!important;
		width:calc(100vw - 24px)!important;
		max-width:720px!important;
		max-height:calc(100dvh - 32px)!important;
		margin:0!important;
		border-radius:14px!important;
	}

	.p90-exercise-video-modal.p90-live-recording-modal .p90-exercise-video-modal-player{
		width:100%!important;
		aspect-ratio:16/9!important;
		max-height:calc(100dvh - 150px)!important;
	}

	/* The persistent app navigation must sit behind an open Live recording. */
	body.p90-exercise-video-modal-open .p90-site-header,
	body.p90-exercise-video-modal-open .p90-mobile-bottom-nav,
	body.p90-exercise-video-modal-open [class*="bottom-nav"],
	body.p90-exercise-video-modal-open [class*="bottom_nav"]{
		z-index:2147483645!important;
	}
}


/* Project90 Homepage v2.9.3 — Exercise Library mobile player centring ONLY.
   v2.9.2 gave Live recordings an explicit absolute-centred modal box, while
   normal Exercise Library videos still relied on flex centring. Some app
   WebViews can place that shared flex modal low on screen. Give Exercise
   Library the same deterministic visual centring without changing Live. */
@media (max-width:767px){

	.p90-exercise-video-modal:not(.p90-live-recording-modal){
		z-index:2147483647!important;
		position:fixed!important;
		inset:0!important;
		width:100vw!important;
		height:100dvh!important;
		min-height:100dvh!important;
		max-height:100dvh!important;
		padding:12px!important;
		margin:0!important;
		overflow:hidden!important;
	}

	.p90-exercise-video-modal:not(.p90-live-recording-modal) .p90-exercise-video-modal-box{
		position:absolute!important;
		left:50%!important;
		top:50%!important;
		transform:translate(-50%,-50%)!important;
		width:calc(100vw - 24px)!important;
		max-width:720px!important;
		max-height:calc(100dvh - 32px)!important;
		margin:0!important;
		border-radius:14px!important;
	}

	.p90-exercise-video-modal:not(.p90-live-recording-modal) .p90-exercise-video-modal-player{
		width:100%!important;
		aspect-ratio:16/9!important;
		max-height:calc(100dvh - 150px)!important;
	}
}
