@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,500;1,600&family=Manrope:wght@300;400;500;600;700;800&display=swap');

:root{
  --black:#030507;
  --black-2:#07090d;
  --surface:#0b0f14;
  --surface-2:#10151c;
  --surface-3:#171d25;
  --text:#f3f5f7;
  --text-soft:#c7ccd2;
  --muted:#858c95;
  --line:rgba(255,255,255,.105);
  --line-strong:rgba(255,255,255,.18);
  --accent:#ff6b1a;
  --accent-hot:#ff8b47;
  --gold:#c8a86b;
  --blue:#1e3a6d;
  --success:#79b998;
  --warning:#d7a35a;
  --danger:#dc7777;
  --max:1280px;
  --header:82px;
  --radius:22px;
  --shadow:0 28px 90px rgba(0,0,0,.45);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;background:var(--black);color:var(--text);font-family:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--accent);color:#080808}
.public-shell,.public-main,.app-shell{min-height:100vh}
.container{width:min(calc(100% - 52px),var(--max));margin:0 auto}
.narrow{width:min(calc(100% - 52px),880px);margin:0 auto}
.hidden{display:none!important}

/* Typography */
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-hot)}
.eyebrow:before{content:"";width:34px;height:1px;background:currentColor}
.kicker{font-size:.66rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--muted)}
.display{font-size:clamp(3.5rem,7.4vw,7.8rem);line-height:.91;letter-spacing:-.06em;font-weight:600;margin:0;text-wrap:balance}
.h1{font-size:clamp(3rem,6vw,6.2rem);line-height:.94;letter-spacing:-.055em;font-weight:600;margin:0;text-wrap:balance}
.h2{font-size:clamp(2.4rem,4.6vw,4.85rem);line-height:.98;letter-spacing:-.05em;font-weight:600;margin:0;text-wrap:balance}
.h3{font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;letter-spacing:-.03em;margin:0}
.editorial{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.025em}
.accent{color:var(--accent-hot)}
.lead{font-size:clamp(1.02rem,1.45vw,1.28rem);line-height:1.72;color:var(--text-soft);max-width:760px;font-weight:400}
.copy{color:#aba8a2;line-height:1.8}
.muted{color:var(--muted)}
.small{font-size:.88rem}
.tiny{font-size:.74rem}
.rule{height:1px;background:var(--line)}
.section{position:relative;padding:122px 0;border-top:1px solid rgba(255,255,255,.045)}
.section-head{display:grid;grid-template-columns:1.05fr .72fr;gap:72px;align-items:end;margin-bottom:66px}
.section-head .lead{margin:0}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));border-radius:18px;padding:26px}

/* ambient lights */
.ambient{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none;opacity:.32}
.ambient-one{width:520px;height:520px;background:rgba(255,106,26,.16);right:-220px;top:5%}
.ambient-two{width:600px;height:600px;background:rgba(30,58,109,.4);left:-280px;bottom:-180px}

/* Header */
.site-header{height:var(--header);position:sticky;top:0;z-index:90;display:flex;align-items:center;background:rgba(5,5,6,.78);backdrop-filter:blur(22px) saturate(120%);border-bottom:1px solid rgba(255,255,255,.075)}
.header-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}
.brand{justify-self:start;display:inline-flex;align-items:center;min-width:150px}
.brand-logo{display:block;max-width:150px;max-height:45px}.brand-logo img{max-height:45px;width:auto;object-fit:contain}
.brand-word{display:inline-flex;align-items:center;gap:11px;font-size:.83rem;letter-spacing:.17em}.brand-word strong{font-size:1rem;letter-spacing:.11em}.brand-word i{width:1px;height:24px;background:var(--line-strong)}.brand-word span{font-size:.67rem;color:#aaa69e}
.site-nav{display:flex;align-items:center;gap:30px}
.nav-link{position:relative;padding:31px 0 28px;font-size:.78rem;font-weight:600;color:#9f9b94;letter-spacing:.02em;transition:.25s}
.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:1px;background:var(--accent-hot);transition:.25s}
.nav-link:hover,.nav-link.active{color:#fff}.nav-link:hover:after,.nav-link.active:after{right:0}
.header-actions{justify-self:end;display:flex;align-items:center;gap:10px}
.header-cta{height:44px;display:inline-flex;align-items:center;gap:18px;padding:0 17px;border:1px solid var(--line-strong);font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.025);transition:.25s}
.header-cta:hover{border-color:rgba(255,106,26,.5);background:rgba(255,106,26,.08)}.header-cta span{color:var(--accent-hot);font-size:1rem}
.mobile-toggle{display:none;width:46px;height:44px;border:1px solid var(--line);background:transparent;position:relative}.mobile-toggle span{position:absolute;left:12px;right:12px;height:1px;background:#fff}.mobile-toggle span:first-child{top:17px}.mobile-toggle span:last-child{top:25px}
.mobile-menu{position:fixed;inset:var(--header) 0 0;z-index:85;background:rgba(5,5,6,.985);backdrop-filter:blur(20px)}
.mobile-menu-inner{padding:48px 26px;display:grid}.menu-label{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}.mobile-nav{padding:18px 0;border-bottom:1px solid var(--line);font-size:clamp(1.8rem,8vw,3.3rem);letter-spacing:-.04em;font-weight:500;display:flex;justify-content:space-between}.mobile-nav span{font-size:.65rem;color:var(--accent-hot);letter-spacing:.1em}.mobile-client{margin-top:28px;color:var(--text-soft);font-size:.9rem}

/* buttons and links */
.btn{min-height:52px;padding:0 21px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;transition:.25s}
.btn-primary{background:linear-gradient(135deg,#ef8d55,#c85c30);color:#070707;box-shadow:0 12px 34px rgba(255,106,26,.18)}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 16px 46px rgba(255,106,26,.25)}
.btn-outline-light{border-color:var(--line-strong);color:#f2eee7;background:rgba(255,255,255,.02)}.btn-outline-light:hover{border-color:rgba(255,106,26,.52);background:rgba(255,106,26,.07)}
.btn-dark{background:#111;color:#fff;border-color:var(--line)}
.btn-outline{border-color:var(--line);color:#fff;background:transparent}
.text-link{display:inline-flex;align-items:center;gap:14px;color:#b9b5ad;font-size:.82rem;font-weight:600;border-bottom:1px solid transparent;padding-bottom:5px;transition:.22s}.text-link span{color:var(--accent-hot)}.text-link:hover{color:#fff;border-bottom-color:rgba(255,106,26,.4)}.text-link.large{font-size:.94rem}

/* Hero */
.premium-hero{min-height:calc(100vh - var(--header));position:relative;overflow:hidden;background:radial-gradient(circle at 78% 25%,rgba(255,106,26,.08),transparent 22%),radial-gradient(circle at 10% 85%,rgba(30,58,109,.16),transparent 28%),#030507}
.premium-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 49.95%,rgba(255,255,255,.04) 50%,transparent 50.05%);pointer-events:none}
.hero-grid{min-height:calc(100vh - var(--header));display:grid;grid-template-columns:1.03fr .97fr;gap:56px;align-items:stretch}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:84px 0 86px;position:relative;z-index:2}
.hero-overline{display:flex;align-items:center;gap:13px;color:#8f8b84;font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:28px}.hero-overline i{width:40px;height:1px;background:var(--accent)}
.hero-copy .display{max-width:760px}.hero-copy .lead{max-width:650px;margin:30px 0 34px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero-principles{margin-top:66px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:720px}.hero-principles span{font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;color:#77746f}
.hero-media{position:relative;min-height:650px;overflow:hidden;margin-right:calc((100vw - min(calc(100vw - 52px),var(--max)))/-2);background:#07090d;border-left:1px solid var(--line)}
.hero-media.has-image .media-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.06)}
.hero-media-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,6,.45),transparent 30%),linear-gradient(180deg,transparent 46%,rgba(5,5,6,.72));pointer-events:none}
.visual-placeholder{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,rgba(255,106,26,.16),transparent 19%),linear-gradient(145deg,#0a0e13 0%,#06090d 45%,#11131a 100%)}
.visual-placeholder:before,.visual-placeholder:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.07);border-radius:50%}.visual-placeholder:before{width:520px;height:520px}.visual-placeholder:after{width:340px;height:340px}
.visual-placeholder strong{font-size:clamp(9rem,18vw,19rem);letter-spacing:-.1em;line-height:1;color:rgba(255,255,255,.045)}
.visual-placeholder small{position:absolute;left:42px;bottom:42px;font-size:.64rem;letter-spacing:.2em;color:#817d77;text-transform:uppercase}.visual-index{position:absolute;right:36px;top:36px;font-size:.62rem;color:#7d7973;letter-spacing:.17em}.visual-ring{position:absolute;width:140px;height:140px;border:1px solid rgba(255,106,26,.3);border-radius:50%;box-shadow:0 0 90px rgba(255,106,26,.08)}
.media-signature{position:absolute;right:34px;bottom:32px;z-index:2;text-align:right}.media-signature span{display:block;font-size:.56rem;letter-spacing:.21em;color:#8b8780}.media-signature b{display:block;margin-top:5px;font-size:.64rem;letter-spacing:.1em;color:#d2cec6}
.hero-scroll{position:absolute;left:26px;bottom:26px;display:flex;align-items:center;gap:10px;transform:rotate(-90deg);transform-origin:left bottom;color:#5f5c58;font-size:.55rem;letter-spacing:.2em}.hero-scroll i{width:32px;height:1px;background:#5f5c58}

/* video */
.video-intro-section{background:#06090d}
.video-intro-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:64px;align-items:center}
.video-intro-copy .h2{margin:20px 0 24px}.video-intro-copy .lead{font-size:1.02rem}.micro-proof{margin-top:34px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#8c8882;font-size:.63rem;letter-spacing:.12em;text-transform:uppercase}.micro-proof i{width:3px;height:3px;border-radius:50%;background:var(--accent)}
.video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line-strong);background:#05080c;box-shadow:var(--shadow)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%}
.video-placeholder{display:flex;align-items:flex-end;padding:38px;background:radial-gradient(circle at 68% 36%,rgba(255,106,26,.19),transparent 18%),linear-gradient(135deg,#090d12,#08090d 58%,#15100e)}
.video-noise{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:44px 44px}
.video-glow{position:absolute;width:380px;height:380px;border-radius:50%;border:1px solid rgba(255,106,26,.18);right:10%;top:50%;transform:translateY(-50%);box-shadow:0 0 100px rgba(255,106,26,.07)}
.video-topline{position:absolute;left:28px;right:28px;top:23px;display:flex;justify-content:space-between;font-size:.56rem;letter-spacing:.16em;color:#77736e}.video-play{position:absolute;right:12%;top:50%;transform:translateY(-50%);width:92px;height:92px;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.025);box-shadow:0 0 0 18px rgba(255,255,255,.012)}.video-play span{font-size:1.15rem;margin-left:4px;color:var(--accent-hot)}
.video-copy{position:relative;z-index:2;max-width:440px}.video-copy h3{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.04em;margin:14px 0 8px}.video-copy p{color:#aaa69f;max-width:380px}.video-copy small{display:block;margin-top:16px;color:#6f6c67;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}

/* Narrative */
.narrative-section{background:#030507}
.narrative-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px}.narrative-title .h2{margin-top:22px}.narrative-body>.lead{margin-top:0}
.dual-list{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:44px;border-top:1px solid var(--line)}.dual-list>div{padding-top:22px}.dual-list ul{list-style:none;padding:0;margin:18px 0 0}.dual-list li{padding:12px 0;border-top:1px solid rgba(255,255,255,.065);color:#aaa7a0;font-size:.9rem}.dual-list li:before{content:"↳";color:var(--accent);margin-right:10px}

/* Pillars */
.pillars-section{background:radial-gradient(circle at 50% 0,rgba(255,106,26,.06),transparent 30%),#07090d}
.pillars-editorial{border-top:1px solid var(--line-strong)}
.pillar-line{position:relative;display:grid;grid-template-columns:90px 1fr auto;gap:26px;align-items:center;min-height:220px;border-bottom:1px solid var(--line);overflow:hidden;transition:.3s}.pillar-line:hover{background:rgba(255,255,255,.018);padding-left:16px}.pillar-num{font-size:.65rem;letter-spacing:.18em;color:var(--accent-hot)}.pillar-line h3{font-size:clamp(2.5rem,5vw,5rem);font-weight:500;letter-spacing:-.055em;margin:0 0 10px}.pillar-line p{max-width:620px;color:#97938d;margin:0}.pillar-letter{font-size:9rem;font-weight:700;line-height:1;letter-spacing:-.09em;color:rgba(255,255,255,.025);padding-right:20px}

/* Method */
.method-section{background:#030507}.method-head{max-width:900px;margin-bottom:68px}.method-head .h2{margin-top:20px}
.process-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-strong)}
.process-step{min-height:260px;padding:27px 26px 20px 0;border-right:1px solid var(--line);position:relative}.process-step:not(:first-child){padding-left:26px}.process-step:last-child{border-right:0}.process-step>span{font-size:.62rem;color:var(--accent-hot);letter-spacing:.15em}.process-step h3{font-size:1.45rem;letter-spacing:-.03em;margin:70px 0 10px}.process-step p{color:#898680;font-size:.88rem;line-height:1.7;margin:0}

/* coach */
.coach-section{background:#06090d}.coach-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center}.history-grid{align-items:start}
.about-media{position:relative;min-height:650px;border:1px solid var(--line);overflow:hidden;background:#090d12}.about-media.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.about-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(5,5,6,.72));pointer-events:none}
.portrait-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 43%,rgba(255,106,26,.12),transparent 18%),linear-gradient(155deg,#0d1218,#06090d)}.portrait-placeholder strong{font-size:20rem;line-height:1;color:rgba(255,255,255,.035);font-weight:800}.portrait-placeholder span{position:absolute;top:30px;left:30px;font-size:.58rem;letter-spacing:.18em;color:#716e68}.portrait-placeholder i{position:absolute;width:150px;height:150px;border-radius:50%;border:1px solid rgba(255,106,26,.25)}.portrait-placeholder small{position:absolute;left:30px;bottom:30px;max-width:240px;color:#77736d;font-size:.65rem;letter-spacing:.09em;text-transform:uppercase}
.coach-copy .h2{margin:20px 0 24px}.coach-copy>.copy{max-width:680px}.proof-lines{margin:38px 0 34px;border-top:1px solid var(--line)}.proof-lines>div{display:grid;grid-template-columns:160px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.proof-lines b{font-size:.83rem}.proof-lines span{color:#88857f;font-size:.82rem}

/* services preview */
.services-preview-section,.service-selection{background:#030507}.service-preview-list{display:grid;gap:18px}.service-preview{position:relative;min-height:390px;border:1px solid var(--line);overflow:hidden;background:#090d12}.service-preview-bg{position:absolute;inset:0;background:radial-gradient(circle at 82% 45%,rgba(255,106,26,.12),transparent 18%),linear-gradient(105deg,#0d1218 0%,#07090d 58%,#10131a 100%);transition:.45s}.service-preview.has-image .service-preview-bg{background:linear-gradient(90deg,rgba(5,5,6,.96) 0%,rgba(5,5,6,.76) 48%,rgba(5,5,6,.28) 100%),var(--service-image) center/cover no-repeat}.service-preview:nth-child(2) .service-preview-bg{background:radial-gradient(circle at 82% 42%,rgba(30,58,109,.34),transparent 21%),linear-gradient(105deg,#0d1218,#07090d 58%,#0d1018)}.service-preview:nth-child(2).has-image .service-preview-bg{background:linear-gradient(90deg,rgba(5,5,6,.96) 0%,rgba(5,5,6,.76) 48%,rgba(5,5,6,.28) 100%),var(--service-image) center/cover no-repeat}.service-preview:hover .service-preview-bg{transform:scale(1.018);filter:brightness(1.08)}
.service-preview-content{position:relative;z-index:2;height:100%;min-height:390px;padding:34px 38px;display:grid;grid-template-columns:180px 1fr 200px;align-items:end;gap:38px}.service-preview-meta{align-self:start;display:flex;gap:18px;align-items:center;color:#77736d;font-size:.61rem;letter-spacing:.13em;text-transform:uppercase}.service-preview-meta span:first-child{color:var(--accent-hot)}.service-preview-main h3{font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.055em;font-weight:500;margin:0 0 15px}.service-preview-main p{max-width:660px;color:#aaa69f;margin:0}.service-fit{margin-top:28px;display:grid;grid-template-columns:100px 1fr;gap:18px;padding-top:17px;border-top:1px solid var(--line);max-width:720px}.service-fit span{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:#6e6b66}.service-fit b{font-size:.8rem;color:#aaa69f;font-weight:500;line-height:1.65}.service-arrow{justify-self:end;align-self:end;display:flex;align-items:center;gap:16px;font-size:.73rem;text-transform:uppercase;letter-spacing:.09em;color:#b4b0a8}.service-arrow b{width:48px;height:48px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:1rem;color:var(--accent-hot);transition:.2s}.service-arrow:hover b{background:var(--accent);color:#030507;border-color:var(--accent)}
.center-action{text-align:center;margin-top:34px}.service-preview-list.large .service-preview{min-height:450px}.service-preview-list.large .service-preview-content{min-height:450px}

/* final CTA */
.final-cta{background:radial-gradient(circle at 50% 100%,rgba(255,106,26,.14),transparent 32%),#07090d}.final-cta-inner{text-align:center;max-width:960px}.final-cta h2{font-size:clamp(3rem,6.5vw,6.6rem);line-height:.94;letter-spacing:-.055em;font-weight:600;margin:24px auto}.final-cta p{max-width:700px;margin:0 auto 32px;color:#9f9b94}

/* generic page hero */
.premium-page-hero{min-height:560px;display:flex;align-items:center;padding:100px 0 88px;background:radial-gradient(circle at 80% 25%,rgba(255,106,26,.09),transparent 20%),#05080c;position:relative;overflow:hidden}
.page-hero-grid{display:grid;grid-template-columns:1.15fr .55fr;gap:80px;align-items:end;position:relative;z-index:2}.page-hero .eyebrow{margin-bottom:24px}.page-hero .lead{margin:26px 0 0;max-width:760px}.hero-side-code{align-self:end;border-left:1px solid var(--line-strong);padding-left:24px;display:grid;gap:13px;font-size:.62rem;letter-spacing:.13em;color:#85817b}.hero-side-code i{width:42px;height:1px;background:var(--accent)}

/* principles / credentials */
.principles-section{background:#07090d}.principle-list{border-top:1px solid var(--line-strong)}.principle-list>div{display:grid;grid-template-columns:80px 260px 1fr;gap:28px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.principle-list span{font-size:.62rem;color:var(--accent-hot);letter-spacing:.14em}.principle-list h3{font-size:1.65rem;margin:0}.principle-list p{color:#8d8983;margin:0;max-width:700px}
.credential-section{background:#030507}.credential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.credential-item{border:1px solid var(--line);background:#0a0a0c;min-height:430px;display:flex;flex-direction:column}.credential-image,.credential-placeholder{height:300px;border-bottom:1px solid var(--line);overflow:hidden;background:#0d1218}.credential-image img{width:100%;height:100%;object-fit:cover}.credential-placeholder{display:grid;place-items:center;position:relative}.credential-placeholder span{font-size:7rem;font-weight:800;letter-spacing:-.1em;color:rgba(255,255,255,.04)}.credential-placeholder b{position:absolute;font-size:2rem;color:var(--accent-hot);font-weight:400}.credential-item>div:last-child{padding:22px}.credential-item h3{font-size:1.2rem;margin:8px 0 0}

/* services page */
.services-film{background:#06090d}.decision-section{background:#07090d}.decision-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.decision-grid .h2{margin-top:20px}.decision-grid .lead{margin-top:0}.decision-grid .text-link{margin-top:28px}

/* service detail */
.service-detail-hero{position:relative;min-height:690px;display:flex;align-items:end;overflow:hidden;background:#04070a}.service-detail-bg{position:absolute;inset:0;background:radial-gradient(circle at 80% 30%,rgba(255,106,26,.15),transparent 22%),linear-gradient(120deg,#04070a,#0d0d11 58%,#131017)}.service-detail-hero.has-image .service-detail-bg{background:linear-gradient(90deg,rgba(5,5,6,.97) 0%,rgba(5,5,6,.82) 45%,rgba(5,5,6,.38) 100%),var(--detail-image) center/cover no-repeat}.service-detail-grid{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:1.2fr .55fr;gap:80px;align-items:end;padding-top:130px;padding-bottom:82px}.service-detail-grid .h1{margin:18px 0 26px;max-width:860px}.service-detail-actions{margin-top:38px;display:flex;align-items:center;gap:28px;flex-wrap:wrap}.service-detail-note{border-left:1px solid rgba(255,106,26,.5);padding-left:24px;margin-bottom:6px}.service-detail-note p{color:#b3afa8;line-height:1.7;margin:12px 0 0}
.detail-value{background:#030507}.detail-value-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.detail-value-grid .h2{margin-top:22px}.detail-value-grid>.lead{margin-top:0}.detail-feature-list{margin-top:40px;border-top:1px solid var(--line)}.detail-feature-list>div{display:grid;grid-template-columns:60px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.detail-feature-list span{font-size:.61rem;color:var(--accent-hot);letter-spacing:.12em}.detail-feature-list b{font-size:.92rem;font-weight:500;color:#b7b3ac}
.detail-process{background:#07090d}

/* form */
.application-section{background:radial-gradient(circle at 5% 30%,rgba(30,58,109,.13),transparent 25%),#030507}.form-shell{display:grid;grid-template-columns:.68fr 1.32fr;gap:58px;align-items:start}.form-aside{position:sticky;top:112px}.form-aside .h2{margin:20px 0 22px}.investment-panel{margin-top:36px;padding:25px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);display:grid}.investment-panel>span{font-size:.61rem;letter-spacing:.16em;text-transform:uppercase;color:#77736d}.investment-panel strong{font-size:3.15rem;letter-spacing:-.055em;margin-top:9px}.investment-panel small{font-size:.72rem;color:#8a8680}.investment-panel i{width:44px;height:1px;background:var(--accent);margin:22px 0}.investment-panel p{font-size:.78rem;color:#7f7b75;line-height:1.7;margin:0}
.form-card{border:1px solid var(--line-strong);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));padding:34px 36px;box-shadow:0 24px 80px rgba(0,0,0,.2)}.form-intro{padding-bottom:28px}.form-index{font-size:.6rem;color:var(--accent-hot);letter-spacing:.16em}.form-intro h3{font-size:2rem;letter-spacing:-.04em;margin:11px 0 7px}.form-intro p{color:#88847e;font-size:.85rem;max-width:650px}.form-section{padding:31px 0;border-top:1px solid var(--line)}.form-section>.kicker{display:block;margin-bottom:18px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:.72rem;font-weight:600;color:#aaa69f;letter-spacing:.02em}.field input,.field textarea,.field select{width:100%;border:1px solid rgba(255,255,255,.12);background:#0a0a0c;color:#ece8e0;padding:13px 14px;border-radius:0;outline:none;transition:.22s}.field textarea{min-height:112px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#56534f}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(255,106,26,.65);box-shadow:0 0 0 2px rgba(255,106,26,.08)}.field select option{background:#0b0b0d;color:#fff}.form-consent{display:grid;gap:14px}.check-row{display:flex;gap:11px;align-items:flex-start;color:#95918a;font-size:.79rem}.check-row input{accent-color:var(--accent);margin-top:3px}.form-submit{margin-top:14px;width:100%}.success-box{padding:32px;border:1px solid rgba(121,185,152,.35);background:rgba(121,185,152,.06)}

/* contact */
.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:36px}.contact-panel{padding:42px;border:1px solid var(--line);background:linear-gradient(145deg,#0e0e11,#06090d)}.contact-panel .h2{margin:20px 0}.contact-list{margin-top:44px}.contact-item{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-top:1px solid var(--line)}.contact-item span{font-size:.62rem;color:#77736d;text-transform:uppercase;letter-spacing:.11em}.contact-item b{font-size:.82rem;font-weight:500;color:#bdb9b1}

/* footer */
.site-footer{padding:86px 0 26px;background:#030304;border-top:1px solid var(--line)}.footer-top{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:end}.footer-statement h2{font-size:clamp(2.7rem,5vw,5.4rem);line-height:.95;letter-spacing:-.055em;font-weight:600;margin:24px 0 0}.footer-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-links{display:grid;gap:11px;margin-top:14px}.footer-links a{font-size:.82rem;color:#89857f}.footer-links a:hover{color:#fff}.footer-bottom{margin-top:70px;padding-top:19px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#5f5c58;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}

/* ======= Admin + Portal ======= */
.auth-page{min-height:100vh;background:radial-gradient(circle at 50% 12%,rgba(255,106,26,.13),transparent 24%),#030507;display:grid;place-items:center;padding:28px}.auth-card{width:min(100%,470px);border:1px solid var(--line-strong);background:#090d12;padding:36px;box-shadow:0 35px 100px rgba(0,0,0,.48)}.auth-logo{display:flex;justify-content:flex-start;margin-bottom:26px}.brand-mark{width:48px;height:48px;border:1px solid rgba(255,106,26,.45);display:grid;place-items:center;color:var(--accent-hot);font-size:.7rem;font-weight:800;letter-spacing:.08em}.auth-card h1{font-size:2.2rem;letter-spacing:-.045em;margin:14px 0 8px}.auth-card p{color:#88847e}.demo-box{margin-top:20px;padding:15px;border:1px solid var(--line);background:#07090d;font-size:.78rem;color:#85817a}.admin-form .field input,.admin-form .field textarea,.admin-form .field select{background:#07090d}
.dashboard-shell{min-height:100vh;background:#06090d;display:grid;grid-template-columns:254px 1fr;color:#eeeae3}.sidebar{background:#030507;border-right:1px solid var(--line);padding:24px 17px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.side-brand{display:flex;align-items:center;gap:11px;padding:0 8px 22px;border-bottom:1px solid var(--line);font-size:.85rem;font-weight:700}.side-nav{display:grid;gap:3px;margin-top:20px;overflow:auto}.side-link{border:0;background:transparent;color:#7f7b75;text-align:left;padding:11px 10px;font-size:.78rem;font-weight:600;transition:.2s}.side-link:hover,.side-link.active{background:rgba(255,255,255,.045);color:#fff}.side-link.active{box-shadow:inset 2px 0 0 var(--accent)}.side-icon{display:inline-block;width:24px;color:var(--accent-hot);font-size:.7rem}.side-bottom{margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.dashboard-main{min-width:0}.dash-topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:rgba(8,8,10,.9);backdrop-filter:blur(18px);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.dash-title{font-size:1.55rem;letter-spacing:-.035em;margin:0}.dash-sub{color:#77736d;font-size:.78rem;margin-top:3px}.dash-actions{display:flex;gap:9px;align-items:center}.dash-content{padding:28px}.mini-btn{height:38px;padding:0 13px;border:1px solid var(--line);background:#0d1218;color:#c5c1ba;font-size:.74rem;font-weight:700}.mini-btn:hover{border-color:var(--line-strong);color:#fff}.mini-btn.primary{background:var(--accent);border-color:var(--accent);color:#080808}.mini-btn.danger{color:var(--danger)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.metric,.panel{border:1px solid var(--line);background:#0a0e13}.metric{padding:20px}.metric-label{color:#77736d;font-size:.7rem}.metric-value{font-size:2rem;letter-spacing:-.05em;font-weight:700;margin-top:8px}.metric-foot{font-size:.7rem;color:#625f5a;margin-top:6px}.panel{padding:21px;margin-bottom:17px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.panel-head h3{margin:0;font-size:1rem}.panel-head p{margin:3px 0 0;color:#706c67;font-size:.74rem}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:680px}.data-table th{text-align:left;font-size:.63rem;text-transform:uppercase;letter-spacing:.1em;color:#6d6964;padding:10px 11px;border-bottom:1px solid var(--line)}.data-table td{padding:12px 11px;border-bottom:1px solid rgba(255,255,255,.055);font-size:.78rem;vertical-align:middle;color:#aaa69f}.data-table td b{color:#ece8e1}.data-table tr:last-child td{border-bottom:0}.status{display:inline-flex;padding:5px 8px;border:1px solid var(--line);font-size:.62rem;font-weight:700;color:#95918b;background:#0d1218}.status.green{border-color:rgba(121,185,152,.3);color:var(--success);background:rgba(121,185,152,.07)}.status.orange{border-color:rgba(215,163,90,.3);color:var(--warning);background:rgba(215,163,90,.07)}.status.red{border-color:rgba(220,119,119,.3);color:var(--danger);background:rgba(220,119,119,.07)}.status.dark{color:#c9c5be}.empty{padding:38px 18px;text-align:center;color:#6f6b65}.chart-bars{display:grid;gap:11px}.bar-row{display:grid;grid-template-columns:140px 1fr 44px;gap:12px;align-items:center;font-size:.72rem;color:#9a968f}.bar-track{height:7px;background:#16161a;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--gold))}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.82);z-index:100;display:grid;place-items:center;padding:20px}.modal{width:min(100%,850px);max-height:90vh;overflow:auto;border:1px solid var(--line-strong);background:#090d12;padding:26px;box-shadow:var(--shadow)}.modal.wide{width:min(100%,1150px)}.modal-head{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:22px}.modal-head h2{margin:0;letter-spacing:-.04em}.close-btn{width:40px;height:40px;border:1px solid var(--line);background:#0d1218;color:#fff}.tabs{display:flex;gap:6px;overflow:auto;padding-bottom:6px;margin-bottom:18px}.tab{border:1px solid var(--line);background:#0e0e11;color:#8f8b85;padding:8px 12px;font-size:.7rem;font-weight:700;white-space:nowrap}.tab.active{background:var(--accent);color:#080808;border-color:var(--accent)}

/* builder */
.plan-builder{display:grid;gap:15px}.day-card{border:1px solid var(--line);background:#090d12;overflow:hidden}.day-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#0d1218}.day-title-input{border:0;background:transparent;color:#fff;font-weight:700;font-size:.95rem;outline:none;width:60%}.exercise-table{width:100%;border-collapse:collapse;min-width:980px}.exercise-table th{background:#06090d;text-align:left;padding:8px;font-size:.61rem;color:#6f6b65;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--line)}.exercise-table td{padding:7px;border-bottom:1px solid rgba(255,255,255,.055)}.exercise-table input{width:100%;padding:9px;border:1px solid var(--line);background:#06090d;color:#ddd9d1;font-size:.72rem}.exercise-table .w-name{min-width:180px}.exercise-table .w-note{min-width:200px}.plan-actions{display:flex;gap:8px;padding:13px 15px}.link-btn{border:0;background:transparent;color:var(--accent-hot);font-weight:700;font-size:.72rem;padding:6px}

/* media */
.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.media-card{border:1px solid var(--line);padding:14px;background:#0a0a0c}.media-preview{height:170px;overflow:hidden;background:#030507;display:grid;place-items:center;color:#62605b;font-size:.7rem;margin-bottom:12px;position:relative}.media-preview img{width:100%;height:100%;object-fit:cover}.file-input{font-size:.7rem}

/* portal */
.portal-welcome{background:radial-gradient(circle at 85% 25%,rgba(255,106,26,.14),transparent 20%),linear-gradient(135deg,#0e0e12,#07090d);border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;overflow:hidden;position:relative}.portal-welcome:after{content:"ARN";position:absolute;right:-20px;bottom:-70px;font-size:12rem;font-weight:800;letter-spacing:-.1em;color:rgba(255,255,255,.025)}.portal-welcome p{color:#8d8983;max-width:620px}.service-badge{display:inline-flex;padding:6px 10px;border:1px solid rgba(255,106,26,.25);color:var(--accent-hot);font-size:.65rem;font-weight:700}.portal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.summary-item{background:#0a0e13;border:1px solid var(--line);padding:16px}.summary-item small{color:#6f6b65}.summary-item b{display:block;margin-top:5px}.plan-view-day{margin-bottom:18px;border:1px solid var(--line);overflow:hidden}.plan-view-day h3{margin:0;padding:15px 17px;background:#0d1218}.plan-view-table{width:100%;border-collapse:collapse;min-width:720px}.plan-view-table th,.plan-view-table td{text-align:left;padding:11px;border-bottom:1px solid rgba(255,255,255,.055);font-size:.74rem}.plan-view-table th{font-size:.6rem;text-transform:uppercase;letter-spacing:.07em;color:#6f6b65;background:#06090d}.calendar-list{display:grid;gap:9px}.calendar-item{display:grid;grid-template-columns:72px 1fr auto;gap:15px;align-items:center;padding:14px;border:1px solid var(--line);background:#090d12}.date-box{text-align:center;padding:8px;background:#0d1218}.date-box b{display:block;font-size:1.2rem}.date-box span{font-size:.6rem;text-transform:uppercase;color:#706c67}

.toast{position:fixed;right:22px;bottom:22px;z-index:200;background:#11161d;color:#fff;padding:13px 17px;border:1px solid var(--line-strong);box-shadow:0 16px 40px rgba(0,0,0,.4);font-size:.78rem;animation:toastIn .25s ease}
@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.fade-in{animation:fade .5s ease both}@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Responsive */
@media(max-width:1080px){
  .header-inner{grid-template-columns:1fr auto}.site-nav{display:none}.header-actions{justify-self:end}.mobile-toggle{display:block}.header-cta{display:none}
  .hero-grid{grid-template-columns:1fr}.premium-hero:after{display:none}.hero-copy{padding:90px 0 56px}.hero-media{margin-right:0;min-height:620px;border:1px solid var(--line)}.hero-principles{max-width:none}
  .video-intro-grid,.narrative-grid,.coach-grid,.detail-value-grid{grid-template-columns:1fr;gap:48px}.section-head{grid-template-columns:1fr;gap:28px}.service-preview-content{grid-template-columns:120px 1fr}.service-arrow{grid-column:2;justify-self:start}.process-rail{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2){border-right:0}.process-step:nth-child(3),.process-step:nth-child(4){border-top:1px solid var(--line)}
  .page-hero-grid,.service-detail-grid{grid-template-columns:1fr;gap:44px}.hero-side-code,.service-detail-note{max-width:520px}.service-detail-hero{min-height:620px}
  .form-shell{grid-template-columns:1fr}.form-aside{position:static}.investment-panel{max-width:500px}.footer-top{grid-template-columns:1fr;gap:58px}.footer-columns{max-width:500px}
  .dashboard-shell{grid-template-columns:84px 1fr}.sidebar{padding:18px 9px}.side-brand span:not(.brand-mark),.side-link .label,.side-bottom .label{display:none}.side-link{text-align:center;padding:11px 4px}.side-icon{width:auto}.metric-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:760px){
  :root{--header:70px}.container,.narrow{width:min(calc(100% - 28px),var(--max))}.section{padding:88px 0}
  .display{font-size:clamp(3.15rem,15vw,5.7rem)}.h1{font-size:clamp(2.9rem,13vw,5rem)}.h2{font-size:clamp(2.35rem,10.5vw,4rem)}
  .hero-copy{padding:72px 0 42px}.hero-copy .lead{margin:24px 0 28px}.hero-principles{grid-template-columns:1fr 1fr;margin-top:44px}.hero-media{min-height:500px}.visual-placeholder strong{font-size:10rem}.visual-placeholder small{left:22px;bottom:22px}.visual-index{right:22px;top:22px}.media-signature{right:22px;bottom:22px}.hero-scroll{display:none}
  .video-placeholder{padding:24px;min-height:330px}.video-play{width:70px;height:70px;right:10%;top:35%}.video-copy h3{font-size:2rem}.video-intro-grid{gap:34px}
  .dual-list{grid-template-columns:1fr}.pillar-line{grid-template-columns:55px 1fr;min-height:190px}.pillar-letter{display:none}.pillar-line h3{font-size:2.7rem}.process-rail{grid-template-columns:1fr}.process-step,.process-step:not(:first-child){padding:23px 0;border-right:0;border-top:1px solid var(--line);min-height:auto}.process-step:first-child{border-top:0}.process-step h3{margin:28px 0 8px}
  .about-media{min-height:520px}.proof-lines>div{grid-template-columns:1fr;gap:5px}
  .service-preview-content{padding:26px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:430px}.service-preview-meta{position:absolute;top:26px;left:26px}.service-preview-main h3{font-size:3rem}.service-fit{grid-template-columns:1fr}.service-arrow{justify-self:auto}.center-action .btn{width:100%}
  .premium-page-hero{min-height:500px;padding:76px 0}.service-detail-grid{padding-top:100px;padding-bottom:60px}.service-detail-actions{gap:20px}.principle-list>div{grid-template-columns:45px 1fr}.principle-list p{grid-column:2}.credential-grid{grid-template-columns:1fr}.decision-grid{grid-template-columns:1fr;gap:30px}.detail-value-grid{gap:36px}
  .form-card{padding:25px 19px}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-grid{grid-template-columns:1fr}.contact-panel{padding:28px 22px}.footer-columns{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}.final-cta h2{font-size:clamp(2.8rem,13vw,5rem)}
  .dashboard-shell{display:block}.sidebar{position:fixed;bottom:0;top:auto;left:0;right:0;width:100%;height:69px;z-index:80;padding:7px 6px;border-right:0;border-top:1px solid var(--line)}.side-brand,.side-bottom{display:none}.side-nav{display:flex;margin:0;overflow-x:auto;gap:2px}.side-link{min-width:62px;display:grid;place-items:center}.side-link .label{display:block;font-size:.52rem;margin-top:2px}.side-icon{display:block}.dashboard-main{padding-bottom:75px}.dash-topbar{height:68px;padding:0 14px}.dash-content{padding:16px 12px}.dash-title{font-size:1.25rem}.dash-sub{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:14px}.metric-value{font-size:1.55rem}.panel{padding:14px}.media-grid{grid-template-columns:1fr}.portal-welcome{grid-template-columns:1fr;padding:22px}.portal-summary{grid-template-columns:1fr}.calendar-item{grid-template-columns:60px 1fr}.calendar-item .status{grid-column:2}.bar-row{grid-template-columns:90px 1fr 32px}.modal{padding:18px 14px}.dash-actions .mini-btn:not(.primary){display:none}
}

@media(max-width:460px){
  .hero-actions{align-items:stretch;flex-direction:column}.hero-actions .btn{width:100%}.hero-actions .text-link{justify-content:center}.hero-principles{grid-template-columns:1fr 1fr}.footer-columns{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr 1fr}.service-detail-actions{align-items:stretch;flex-direction:column}.service-detail-actions .btn{width:100%}.form-submit{font-size:.69rem}.contact-item{display:grid;gap:5px}
}

/* =========================================================
   V3 — PUBLIC BRAND REFINEMENT
   Dark premium / editorial athletic / softer geometry
   ========================================================= */
:root{
  --header:76px;
  --radius:16px;
  --text-soft:#d5d1c9;
  --muted:#918d86;
  --line:rgba(255,255,255,.09);
  --line-strong:rgba(255,255,255,.16);
}

/* more controlled type scale */
.display{font-size:clamp(3.25rem,6vw,6.15rem);line-height:.94;letter-spacing:-.052em;font-weight:570}
.h1{font-size:clamp(2.85rem,5.1vw,5.15rem);line-height:.98;letter-spacing:-.048em;font-weight:570}
.h2{font-size:clamp(2.15rem,3.7vw,3.95rem);line-height:1.02;letter-spacing:-.043em;font-weight:560}
.h3{font-size:clamp(1.25rem,1.75vw,1.65rem)}
.lead{font-size:clamp(1rem,1.2vw,1.16rem);line-height:1.72}
.section{padding:108px 0}
.section-head{gap:58px;margin-bottom:54px}

/* refined top navigation */
.site-header{background:rgba(4,4,5,.84);border-bottom:1px solid rgba(255,255,255,.065)}
.header-inner{grid-template-columns:1fr auto 1fr;gap:42px}
.site-nav{gap:34px}
.nav-link{padding:28px 0 25px;font-size:.74rem;letter-spacing:.055em;color:#a8a39b}
.nav-link:after{bottom:17px}
.header-cta{height:42px;border-radius:999px;padding:0 18px;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.13)}
.brand-word strong{font-weight:760}.brand-word span{letter-spacing:.17em}

/* optional page/section background photography */
.premium-hero.has-page-bg,
.premium-page-hero.has-page-bg{background-image:linear-gradient(90deg,rgba(4,4,5,.96) 0%,rgba(4,4,5,.83) 48%,rgba(4,4,5,.58) 100%),var(--page-bg);background-size:cover;background-position:center}
.premium-page-hero.has-page-bg:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.48));z-index:0}
.premium-page-hero.has-page-bg .container{position:relative;z-index:2}

/* athletic signal — subtle, not gym cliché */

/* hero balance */
.hero-copy{padding:76px 0 78px}
.hero-copy .display{max-width:700px}
.hero-copy .lead{max-width:610px;margin:26px 0 30px}
.hero-principles{margin-top:52px;max-width:650px}
.hero-media{min-height:610px}
.visual-placeholder strong{font-size:clamp(8rem,14vw,15rem)}
.media-signature b{font-weight:600;letter-spacing:.16em}

/* video becomes an editorial feature instead of another rectangle */
.video-frame{border-radius:0 52px 0 52px;border-color:rgba(255,255,255,.13);box-shadow:0 35px 100px rgba(0,0,0,.38)}
.video-intro-grid{grid-template-columns:.78fr 1.22fr;gap:70px}
.video-placeholder{min-height:410px}
.video-copy h3{font-size:clamp(1.7rem,2.6vw,2.65rem)}

/* narrative flow — no card grid */
.problem-flow{margin-top:44px;padding-top:24px;border-top:1px solid var(--line-strong);display:grid;grid-template-columns:1fr 40px 1fr 40px 1fr;gap:18px;align-items:start}
.problem-flow>div{position:relative;padding-right:12px}
.problem-flow>div span{display:block;color:var(--accent-hot);font-size:.61rem;letter-spacing:.16em;margin-bottom:28px}
.problem-flow>div b{display:block;font-size:1.03rem;font-weight:620;margin-bottom:10px;letter-spacing:-.02em}
.problem-flow>div p{margin:0;color:#8e8a84;font-size:.85rem;line-height:1.7}
.problem-flow>i{align-self:center;color:#5d5a55;font-style:normal;text-align:center}

/* pillars remain open and editorial */
.pillar-line{min-height:192px}
.pillar-line h3{font-size:clamp(2.3rem,4vw,4.25rem)}
.pillar-letter{font-size:7.7rem}

/* process has more rhythm, less box feeling */
.process-step{min-height:235px}
.process-step h3{margin:56px 0 10px}
.process-step:after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent);transition:.35s}
.process-step:hover:after{width:72%}

/* portrait geometry */
.about-media{min-height:620px;border:0;border-radius:0 76px 0 76px;box-shadow:0 30px 90px rgba(0,0,0,.3)}
.about-media:before{content:"";position:absolute;z-index:3;inset:18px -18px -18px 18px;border-right:1px solid rgba(255,106,26,.18);border-bottom:1px solid rgba(255,106,26,.18);border-radius:0 76px 0 76px;pointer-events:none}
.coach-grid{gap:82px}
.proof-lines>div{grid-template-columns:175px 1fr}

/* service previews — open compositions, not cards */
.service-preview-list{gap:28px}
.service-preview{border:0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);border-radius:0 58px 0 0;min-height:350px;background:#06090d}
.service-preview:nth-child(2){margin-left:6%;border-radius:58px 0 0 0}
.service-preview-content{min-height:350px;padding:32px 42px;grid-template-columns:150px 1fr 190px}
.service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:400px}
.service-preview-main h3{font-size:clamp(2.35rem,4.2vw,4.3rem)}
.service-arrow b{border-radius:50%;width:52px;height:52px}

/* history — richer personal brand narrative */
.history-hero .hero-side-code{gap:14px}
.history-signature{display:flex;align-items:center;gap:14px;margin-top:34px;color:#8e8a83;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.history-signature span{font-weight:800;color:var(--accent-hot)}.history-signature i{width:42px;height:1px;background:rgba(255,106,26,.5)}
.disciplines-section{background:radial-gradient(circle at 78% 8%,rgba(255,106,26,.07),transparent 25%),#070709}
.discipline-stage{display:grid;grid-template-columns:1.16fr .92fr .92fr;gap:18px;align-items:end}
.discipline-visual{min-height:440px;position:relative;overflow:hidden;background:linear-gradient(155deg,#0d1218,#06090d);border-bottom:1px solid var(--line-strong);border-radius:0 48px 0 0}
.discipline-visual:nth-child(2){min-height:375px}.discipline-visual:nth-child(3){min-height:410px;border-radius:48px 0 0 0}
.discipline-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.08)}
.discipline-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(4,4,5,.9))}
.discipline-visual>span{position:absolute;z-index:2;top:24px;left:26px;color:var(--accent-hot);font-size:.62rem;letter-spacing:.16em}
.discipline-visual h3{position:absolute;z-index:2;left:26px;bottom:25px;margin:0;font-size:clamp(1.6rem,2.7vw,2.7rem);font-weight:560;letter-spacing:-.04em}
.progress-section{background:#030507}
.progress-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:78px;align-items:center}
.progress-copy .h2{margin:20px 0 24px}.progress-copy .copy{max-width:590px}
.progress-mosaic{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;min-height:600px;align-items:stretch}
.progress-main,.progress-side{overflow:hidden;position:relative;background:#0a0a0d}
.progress-main{border-radius:0 72px 0 0}.progress-side{margin-top:92px;border-radius:0 0 0 48px}
.progress-main img,.progress-side img{width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.06)}
.progress-placeholder{height:100%;min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 45%,rgba(255,106,26,.12),transparent 22%),linear-gradient(145deg,#0e0e12,#070709);position:relative;overflow:hidden}
.progress-placeholder.small{min-height:430px}.progress-placeholder:before{content:"";position:absolute;width:290px;height:290px;border:1px solid rgba(255,255,255,.055);border-radius:50%}
.progress-placeholder strong{font-size:clamp(2rem,4vw,4rem);letter-spacing:.05em;color:rgba(255,255,255,.1)}
.progress-placeholder span{margin-top:12px;color:#79756f;font-size:.6rem;letter-spacing:.16em}

/* principles/credentials are lines and evidence, not boxes */
.principle-list>div{border-top-color:var(--line-strong)}
.credential-item{border:0;border-top:1px solid var(--line-strong);background:transparent;padding-top:20px}
.credential-image,.credential-placeholder{border-radius:0 34px 0 0;overflow:hidden}

/* services decision */
.decision-lines{display:grid;gap:0;border-top:1px solid var(--line-strong)}
.decision-lines>div{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:210px 1fr;gap:28px}
.decision-lines span{font-size:.74rem;color:#d9d4cb;font-weight:650}
.decision-lines p{margin:0;color:#8c8881;line-height:1.7}
.decision-lines .text-link{margin-top:24px;justify-self:start}

/* service detail softer composition */
.service-detail-note{border-radius:0 34px 0 0;background:rgba(8,8,10,.56);backdrop-filter:blur(12px)}
.detail-feature-list>div{border-left:0;border-right:0}
.investment-panel{border-radius:0 34px 0 0}
.form-card{border-radius:0 34px 0 0}

/* public final CTA less oversized */
.final-cta h2{font-size:clamp(2.7rem,5vw,5.25rem);max-width:900px}

/* admin media grouping */
.media-group+.media-group{margin-top:18px}
.media-group .media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:1080px){
  .service-preview:nth-child(2){margin-left:0}
  .problem-flow{grid-template-columns:1fr;gap:0}.problem-flow>i{display:none}.problem-flow>div{padding:18px 0;border-bottom:1px solid var(--line)}.problem-flow>div span{margin-bottom:10px}
  .discipline-stage{grid-template-columns:1fr 1fr}.discipline-visual:first-child{grid-column:1/-1;min-height:520px}.discipline-visual:nth-child(2),.discipline-visual:nth-child(3){min-height:400px}
  .progress-layout{grid-template-columns:1fr;gap:48px}
  .media-group .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
  .section{padding:82px 0}.display{font-size:clamp(3rem,13.5vw,4.8rem)}.h1{font-size:clamp(2.65rem,11.5vw,4.2rem)}.h2{font-size:clamp(2.15rem,9.2vw,3.45rem)}
  .hero-copy{padding:64px 0 38px}.hero-media{min-height:470px}  .video-frame{border-radius:0 34px 0 34px}.about-media{min-height:500px;border-radius:0 46px 0 46px}.about-media:before{border-radius:0 46px 0 46px}
  .service-preview,.service-preview:nth-child(2){border-radius:0 34px 0 0}.service-preview-content{min-height:400px;padding:25px}.service-preview-main h3{font-size:2.75rem}
  .discipline-stage{grid-template-columns:1fr}.discipline-visual:first-child{grid-column:auto}.discipline-visual,.discipline-visual:nth-child(2),.discipline-visual:nth-child(3){min-height:380px;border-radius:0 34px 0 0}
  .progress-mosaic{grid-template-columns:1fr;min-height:auto}.progress-main{min-height:500px;border-radius:0 48px 0 0}.progress-side{margin-top:0;min-height:360px;border-radius:0 0 0 36px}.progress-placeholder{min-height:500px}.progress-placeholder.small{min-height:360px}
  .decision-lines>div{grid-template-columns:1fr;gap:8px}
  .media-group .media-grid{grid-template-columns:1fr}
}

/* =========================================================
   V4 — compact premium scale / responsive refinement
   Keeps the dark editorial direction while reducing vertical
   excess, normalising typography and refining interactions.
   ========================================================= */
:root{
  --header:72px;
  --max:1240px;
  --radius:16px;
}
.container{width:min(calc(100% - 44px),var(--max))}
.narrow{width:min(calc(100% - 44px),860px)}

/* Scale: designed to read correctly at browser zoom 100% */
.display{font-size:clamp(3rem,5.15vw,5.65rem);line-height:.95;letter-spacing:-.052em}
.h1{font-size:clamp(2.75rem,4.7vw,4.95rem);line-height:.97;letter-spacing:-.048em}
.h2{font-size:clamp(2rem,3.35vw,3.65rem);line-height:1;letter-spacing:-.043em}
.h3{font-size:clamp(1.22rem,1.65vw,1.62rem)}
.lead{font-size:clamp(.98rem,1.15vw,1.1rem);line-height:1.65}
.copy{line-height:1.72}
.section{padding:76px 0}
.section-head{gap:48px;margin-bottom:42px}
.eyebrow{font-size:.63rem;letter-spacing:.2em}

/* Navigation */
.site-header{height:var(--header)}
.header-inner{gap:26px}
.site-nav{gap:26px}
.nav-link{padding:25px 0 23px;font-size:.74rem}
.nav-link:after{bottom:15px}
.header-cta{height:40px;padding:0 16px;font-size:.69rem;border-radius:8px}
.brand-word strong{font-size:.96rem}.brand-word span{font-size:.63rem}

/* Buttons: more crafted, less template/editorial */
.btn{min-height:46px;padding:0 18px;border-radius:8px;gap:13px;font-size:.71rem;letter-spacing:.075em;position:relative;overflow:hidden;isolation:isolate}
.btn:before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:.28s;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.14) 50%,transparent 80%);transform:translateX(-70%)}
.btn:hover:before{opacity:1;transform:translateX(70%)}
.btn-primary{background:linear-gradient(135deg,#f09a66 0%,#d27143 58%,#b95832 100%);box-shadow:0 10px 28px rgba(255,106,26,.15);border-color:rgba(255,255,255,.08)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(255,106,26,.22)}
.btn-outline-light{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));border-color:rgba(255,255,255,.16)}
.btn span:last-child,.header-cta span{font-size:.92rem}
.text-link{font-size:.79rem;gap:11px}.text-link.large{font-size:.9rem}

/* Home hero: premium but not full-screen oversized */
.premium-hero{min-height:0}
.hero-grid{min-height:clamp(540px,68vh,680px);grid-template-columns:1.02fr .98fr;gap:42px}
.hero-copy{padding:52px 0 54px}
.hero-overline{margin-bottom:21px}
.hero-copy .display{max-width:650px}
.hero-copy .lead{max-width:590px;margin:22px 0 27px}
.hero-actions{gap:22px}
.hero-principles{margin-top:36px;padding-top:16px;max-width:620px;gap:12px}
.hero-principles span{font-size:.62rem}
.hero-media{min-height:0;height:100%}
.visual-placeholder:before{width:430px;height:430px}.visual-placeholder:after{width:280px;height:280px}
.visual-placeholder strong{font-size:clamp(7rem,11vw,12rem)}
.hero-scroll{display:none}

/* Video feature */
.video-intro-grid{grid-template-columns:.76fr 1.24fr;gap:48px}
.video-intro-copy .h2{margin:16px 0 19px}
.micro-proof{margin-top:24px}
.video-placeholder{min-height:320px}
.video-frame{border-radius:0 38px 0 38px}
.video-play{width:74px;height:74px;box-shadow:0 0 0 13px rgba(255,255,255,.012)}
.video-copy h3{font-size:clamp(1.55rem,2.25vw,2.25rem)}
.video-embedded{isolation:isolate}
.video-expand{position:absolute;right:14px;bottom:14px;z-index:4;height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:rgba(5,5,6,.78);backdrop-filter:blur(12px);color:#eeeae3;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:8px;transition:.2s}
.video-expand:hover{background:rgba(255,106,26,.16);border-color:rgba(255,106,26,.45)}
.video-modal-frame{aspect-ratio:16/9;width:100%;background:#000;border:1px solid var(--line-strong)}
.video-modal-frame iframe{display:block;width:100%;height:100%}

/* Narrative */
.narrative-grid{grid-template-columns:.84fr 1.16fr;gap:60px}
.narrative-title .h2{margin-top:16px}
.problem-flow{margin-top:30px;padding-top:19px;gap:14px}
.problem-flow>div span{margin-bottom:16px}
.problem-flow>div b{font-size:.98rem;margin-bottom:7px}
.problem-flow>div p{font-size:.81rem;line-height:1.62}

/* Three pillars */
.pillar-line{grid-template-columns:70px 1fr auto;gap:22px;min-height:132px}
.pillar-line:hover{padding-left:10px}
.pillar-line h3{font-size:clamp(2rem,3.1vw,3.25rem);margin-bottom:6px}
.pillar-line p{max-width:680px;font-size:.9rem;line-height:1.58}
.pillar-letter{font-size:5.25rem;padding-right:14px}

/* Method/process */
.method-head{max-width:820px;margin-bottom:38px}
.method-head .h2{margin-top:15px}
.process-step{min-height:158px;padding:20px 20px 18px 0}
.process-step:not(:first-child){padding-left:20px}
.process-step h3{font-size:1.28rem;margin:31px 0 7px}
.process-step p{font-size:.82rem;line-height:1.55}

/* Coach */
.coach-grid{gap:56px}
.about-media{min-height:500px;border-radius:0 54px 0 54px}
.about-media:before{border-radius:0 54px 0 54px}
.proof-lines>div{grid-template-columns:155px 1fr}

/* Services previews */
.service-preview-list{gap:20px}
.service-preview,.service-preview-content{min-height:276px}
.service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:310px}
.service-preview-content{padding:25px 30px;grid-template-columns:130px 1fr 165px;gap:28px}
.service-preview-main h3{font-size:clamp(2.05rem,3.35vw,3.45rem);margin-bottom:10px}
.service-preview-main p{font-size:.9rem;line-height:1.58}
.service-fit{margin-top:18px}
.service-arrow b{width:46px;height:46px}
.center-action{margin-top:28px}

/* Final CTA */
.final-cta{padding:72px 0}
.final-cta h2{font-size:clamp(2.25rem,3.8vw,3.95rem);line-height:.99;max-width:800px;margin:17px auto}
.final-cta p{margin-bottom:24px}

/* Interior page heroes */
.premium-page-hero{min-height:420px;padding:66px 0 58px}
.page-hero-grid{gap:56px}
.page-hero .eyebrow{margin-bottom:18px}.page-hero .lead{margin-top:20px}
.hero-side-code{padding-left:20px}
.service-detail-hero{min-height:520px}
.service-detail-grid{gap:56px;padding-top:96px;padding-bottom:58px}
.service-detail-grid .h1{margin:14px 0 20px}
.service-detail-actions{margin-top:28px}

/* History imagery: consistent geometry at every desktop width */
.discipline-stage{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.discipline-visual,.discipline-visual:nth-child(2),.discipline-visual:nth-child(3){min-height:0;aspect-ratio:4/5;border-radius:0 34px 0 0;margin:0}
.discipline-visual:nth-child(3){border-radius:34px 0 0 0}
.discipline-visual h3{font-size:clamp(1.45rem,2vw,2.15rem);bottom:20px;left:21px}
.discipline-visual>span{top:20px;left:21px}
.progress-layout{grid-template-columns:.88fr 1.12fr;gap:52px}
.progress-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-height:0}
.progress-main,.progress-side{margin:0;min-height:0;aspect-ratio:4/5;border-radius:0 44px 0 0}
.progress-side{border-radius:44px 0 0 0}
.progress-placeholder,.progress-placeholder.small{min-height:0;height:100%}
.principle-list>div{grid-template-columns:65px 220px 1fr;padding:22px 0}
.principle-list h3{font-size:1.45rem}
.credential-grid{gap:16px}
.credential-item{min-height:350px}
.credential-image,.credential-placeholder{height:230px}
.credential-item>div:last-child{padding:18px}

/* Services and decision */
.decision-grid{grid-template-columns:.86fr 1.14fr;gap:58px}
.decision-lines>div{padding:17px 0;grid-template-columns:180px 1fr}
.detail-feature-list>div{padding-top:18px;padding-bottom:18px}

/* Admin media controls */
.media-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.media-actions .mini-btn{flex:1}
.mini-btn:disabled{opacity:.35;cursor:not-allowed}
.admin-clear{margin-top:7px;padding:0;border:0;background:none;color:#9a7564;font-size:.68rem}
.admin-clear:hover{color:#e0a17d}
.table-link,.meeting-link{display:inline-flex;margin-top:5px;color:var(--accent-hot);font-size:.7rem;font-weight:700;border-bottom:1px solid rgba(255,106,26,.3);padding-bottom:2px}
.row-actions{display:flex;gap:6px;white-space:nowrap}
.field small{display:block;margin-top:6px;color:#77736d;font-size:.67rem;line-height:1.45}

/* Dashboard compactness */
.dash-topbar{height:70px}
.dash-content{padding:24px}
.panel{padding:20px}
.portal-welcome{padding:24px}

@media(max-width:1080px){
  .section{padding:68px 0}
  .display{font-size:clamp(3rem,6vw,4.8rem)}
  .h1{font-size:clamp(2.65rem,5.4vw,4.4rem)}
  .h2{font-size:clamp(1.95rem,4vw,3.2rem)}
  .hero-grid{min-height:570px;gap:32px}
  .hero-copy{padding:46px 0}
  .hero-media{min-height:0}
  .video-intro-grid,.narrative-grid,.coach-grid,.detail-value-grid{gap:38px}
  .section-head{gap:24px;margin-bottom:34px}
  .discipline-stage{grid-template-columns:repeat(3,minmax(0,1fr))}
  .discipline-visual:first-child{grid-column:auto;min-height:0}
  .progress-layout{gap:38px}
  .service-preview-content{grid-template-columns:110px 1fr 145px;padding:23px 25px}
}

@media(max-width:840px){
  :root{--header:68px}
  .container,.narrow{width:min(calc(100% - 34px),var(--max))}
  .site-nav{display:none}.mobile-toggle{display:block}
  .header-inner{grid-template-columns:1fr auto}.header-actions{grid-column:2}.header-cta{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:auto;gap:0}
  .hero-copy{padding:46px 0 36px}
  .hero-media{height:430px;min-height:430px;margin-right:calc((100vw - min(calc(100vw - 34px),var(--max)))/-2);margin-left:0}
  .hero-principles{margin-top:28px}
  .video-intro-grid,.narrative-grid,.coach-grid,.detail-value-grid,.progress-layout{grid-template-columns:1fr}
  .discipline-stage{grid-template-columns:repeat(3,minmax(0,1fr))}
  .progress-layout{gap:34px}.progress-mosaic{max-width:680px}
  .service-preview-content{grid-template-columns:90px 1fr;min-height:280px}.service-arrow{grid-column:2;justify-self:start}
  .service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:300px}
  .page-hero-grid,.service-detail-grid{grid-template-columns:1fr;gap:30px}
  .premium-page-hero{min-height:360px}.service-detail-hero{min-height:480px}
}

@media(max-width:760px){
  .section{padding:54px 0}
  .display{font-size:clamp(2.75rem,11vw,3.85rem)}
  .h1{font-size:clamp(2.45rem,10vw,3.65rem)}
  .h2{font-size:clamp(1.95rem,8vw,2.75rem)}
  .lead{font-size:.98rem;line-height:1.6}
  .hero-copy{padding:40px 0 30px}
  .hero-copy .lead{margin:18px 0 22px}
  .hero-media{height:400px;min-height:400px}
  .hero-principles{grid-template-columns:repeat(2,1fr);row-gap:10px}
  .video-intro-grid{gap:28px}.video-frame{border-radius:0 28px 0 28px}
  .problem-flow{margin-top:22px}
  .pillar-line{grid-template-columns:44px 1fr;gap:12px;min-height:112px;padding:16px 0}
  .pillar-line h3{font-size:2.05rem}.pillar-letter{display:none}
  .method-head{margin-bottom:24px}
  .process-step,.process-step:not(:first-child){min-height:auto;padding:18px 0}.process-step h3{margin:18px 0 6px}
  .about-media{min-height:420px;border-radius:0 38px 0 38px}.about-media:before{border-radius:0 38px 0 38px}
  .service-preview,.service-preview:nth-child(2){border-radius:0 28px 0 0}
  .service-preview-content{grid-template-columns:1fr;min-height:250px;padding:22px;gap:14px}.service-preview-meta{align-self:start}.service-arrow{grid-column:1}
  .service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:270px}
  .final-cta{padding:54px 0}.final-cta h2{font-size:clamp(2.15rem,9vw,3rem)}
  .premium-page-hero{min-height:320px;padding:52px 0 46px}.service-detail-grid{padding-top:78px;padding-bottom:46px}.service-detail-hero{min-height:440px}
  .discipline-stage{grid-template-columns:1fr;gap:12px}.discipline-visual,.discipline-visual:nth-child(2),.discipline-visual:nth-child(3),.discipline-visual:first-child{aspect-ratio:16/10;min-height:0;border-radius:0 28px 0 0}
  .progress-mosaic{grid-template-columns:1fr 1fr;gap:10px}.progress-main,.progress-side{aspect-ratio:4/5;min-height:0;border-radius:0 28px 0 0}
  .principle-list>div{grid-template-columns:42px 1fr;gap:12px;padding:18px 0}.principle-list p{grid-column:2}
  .credential-item{min-height:0}.credential-image,.credential-placeholder{height:220px}
  .decision-grid{gap:24px}.decision-lines>div{grid-template-columns:1fr;gap:6px}
  .video-expand{height:34px;right:10px;bottom:10px}
}

@media(max-width:520px){
  .container,.narrow{width:min(calc(100% - 26px),var(--max))}
  .section{padding:48px 0}
  .display{font-size:clamp(2.55rem,12.5vw,3.35rem)}
  .h1{font-size:clamp(2.35rem,11.5vw,3.2rem)}
  .h2{font-size:clamp(1.85rem,9.3vw,2.5rem)}
  .hero-media{height:350px;min-height:350px;margin-right:-13px;margin-left:-13px;border-left:0}
  .hero-actions{gap:14px}.hero-actions .btn{width:100%}.hero-actions .text-link{width:100%}
  .hero-principles{grid-template-columns:1fr 1fr}
  .progress-mosaic{grid-template-columns:1fr}.progress-main,.progress-side{aspect-ratio:4/5}
  .footer-statement h2{font-size:2rem}
  .row-actions{flex-direction:column}
}

/* =========================================================
   V5 — refined scale, density and brand details
   ========================================================= */
:root{--header:72px}

/* Typography: preserve editorial character without oversized display */
.display{font-size:clamp(2.65rem,4.35vw,4.65rem);line-height:.98;letter-spacing:-.048em}
.h1{font-size:clamp(2.35rem,3.9vw,4.05rem);line-height:.99;letter-spacing:-.045em}
.h2{font-size:clamp(1.72rem,2.75vw,3rem);line-height:1.03;letter-spacing:-.04em}
.h3{font-size:clamp(1.12rem,1.45vw,1.48rem)}
.lead{font-size:clamp(.94rem,1.02vw,1.04rem);line-height:1.62}

/* Overall rhythm: shorter, more deliberate vertical cadence */
.section{padding:62px 0}
.section-head{gap:42px;margin-bottom:32px}

/* Header lockup: uploaded logo can coexist with ARN / COACH signature */
.brand{min-width:172px}
.brand-lockup{display:inline-flex;align-items:center;gap:11px;min-width:0}
.brand-logo{display:flex;align-items:center;max-width:82px;max-height:34px;flex:0 0 auto}
.brand-logo img{display:block;max-width:82px;max-height:34px;width:auto;height:auto;object-fit:contain}
.brand-word{gap:9px;white-space:nowrap}
.brand-word strong{font-size:.9rem}
.brand-word i{height:20px}
.brand-word span{font-size:.59rem}
.nav-link{padding:22px 0 20px}
.nav-link:after{bottom:12px}
.header-cta{height:38px;padding:0 14px;border-radius:7px;font-size:.66rem}

/* Buttons: smaller, more precise and less boxy */
.btn{min-height:42px;padding:0 15px;border-radius:7px;gap:10px;font-size:.675rem;letter-spacing:.07em}
.btn span:last-child,.header-cta span{font-size:.82rem}
.btn-primary{box-shadow:0 8px 24px rgba(255,106,26,.13)}
.btn-primary:hover{box-shadow:0 11px 28px rgba(255,106,26,.2)}

/* Home density */
.hero-grid{min-height:clamp(490px,61vh,610px);gap:36px}
.hero-copy{padding:39px 0 41px}
.hero-overline{margin-bottom:17px}
.hero-copy .display{max-width:590px}
.hero-copy .lead{max-width:560px;margin:18px 0 22px}
.hero-actions{gap:18px}
.hero-principles{margin-top:27px;padding-top:13px;max-width:585px}
.hero-media{min-height:0}
.video-intro-grid{gap:40px}
.video-intro-copy .h2{margin:13px 0 15px}
.micro-proof{margin-top:19px}
.video-placeholder{min-height:290px}
.video-play{width:66px;height:66px;box-shadow:0 0 0 10px rgba(255,255,255,.012)}
.video-copy h3{font-size:clamp(1.38rem,1.9vw,1.95rem)}

.narrative-grid{gap:50px}
.problem-flow{margin-top:24px;padding-top:16px}
.problem-flow>div span{margin-bottom:11px}

.pillar-line{grid-template-columns:62px 1fr auto;gap:19px;min-height:108px}
.pillar-line h3{font-size:clamp(1.72rem,2.45vw,2.62rem);margin-bottom:4px}
.pillar-line p{font-size:.86rem;line-height:1.52}
.pillar-letter{font-size:4.2rem;padding-right:10px}

.method-head{max-width:760px;margin-bottom:28px}
.process-step{min-height:132px;padding:16px 17px 14px 0}
.process-step:not(:first-child){padding-left:17px}
.process-step h3{font-size:1.16rem;margin:24px 0 5px}
.process-step p{font-size:.79rem;line-height:1.48}

.coach-grid{gap:48px}
.about-media{min-height:445px;border-radius:0 46px 0 46px}
.about-media:before{border-radius:0 46px 0 46px}
.proof-lines>div{padding:14px 0}

.service-preview-list{gap:16px}
.service-preview,.service-preview-content{min-height:245px}
.service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:270px}
.service-preview-content{padding:22px 26px;grid-template-columns:118px 1fr 150px;gap:24px}
.service-preview-main h3{font-size:clamp(1.76rem,2.7vw,2.8rem);margin-bottom:8px}
.service-preview-main p{font-size:.86rem;line-height:1.52}
.service-fit{margin-top:14px;padding-top:13px}
.center-action{margin-top:22px}

/* Service action: no circular diagonal-arrow badge */
.service-arrow{gap:9px;font-size:.68rem;color:#b8b4ad}
.service-arrow span{padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.12);transition:.22s}
.service-arrow b{width:auto!important;height:auto!important;border:0!important;border-radius:0!important;background:none!important;color:var(--accent-hot)!important;font-size:1.05rem!important;line-height:1;transition:transform .22s!important}
.service-arrow:hover span{color:#fff;border-bottom-color:rgba(255,106,26,.48)}
.service-arrow:hover b{transform:translateX(4px)}

/* CTA and footer no longer dominate the page */
.final-cta{padding:52px 0}
.final-cta h2{font-size:clamp(1.9rem,2.95vw,3.15rem);line-height:1.02;max-width:720px;margin:13px auto}
.final-cta p{max-width:620px;margin:0 auto 19px;font-size:.92rem}
.site-footer{padding:62px 0 22px}
.footer-top{gap:66px}
.footer-statement h2{font-size:clamp(1.85rem,2.65vw,2.95rem);line-height:1.01;margin:17px 0 0}
.footer-bottom{margin-top:48px}

/* Interior pages compactness */
.premium-page-hero{min-height:360px;padding:54px 0 48px}
.service-detail-hero{min-height:450px}
.service-detail-grid{gap:48px;padding-top:78px;padding-bottom:48px}
.service-detail-grid .h1{margin:11px 0 16px}
.service-detail-actions{margin-top:22px}
.discipline-visual h3{font-size:clamp(1.3rem,1.7vw,1.82rem)}
.progress-layout{gap:44px}
.principle-list>div{padding:18px 0}
.principle-list h3{font-size:1.28rem}
.credential-item{min-height:320px}
.credential-image,.credential-placeholder{height:205px}

/* Settings checkbox */
.check{display:flex;align-items:flex-start;gap:10px;color:#d7d2ca;font-size:.8rem;line-height:1.5;cursor:pointer}
.check input{width:16px;height:16px;margin-top:2px;accent-color:#df8051}

@media(max-width:1080px){
  .section{padding:58px 0}
  .display{font-size:clamp(2.55rem,5.25vw,4.15rem)}
  .h1{font-size:clamp(2.3rem,4.7vw,3.75rem)}
  .h2{font-size:clamp(1.68rem,3.35vw,2.72rem)}
  .hero-grid{min-height:520px;gap:28px}
  .hero-copy{padding:36px 0}
  .service-preview-content{grid-template-columns:100px 1fr 132px;padding:20px 23px}
}

@media(max-width:840px){
  :root{--header:66px}
  .brand{min-width:0}
  .brand-logo{max-width:68px;max-height:30px}.brand-logo img{max-width:68px;max-height:30px}
  .brand-word strong{font-size:.84rem}.brand-word span{font-size:.55rem}
  .hero-copy{padding:37px 0 29px}
  .hero-media{height:390px;min-height:390px}
  .service-preview-content{grid-template-columns:82px 1fr;min-height:245px}
  .service-preview-list.large .service-preview,.service-preview-list.large .service-preview-content{min-height:260px}
}

@media(max-width:760px){
  .section{padding:50px 0}
  .display{font-size:clamp(2.35rem,10.8vw,3.45rem)}
  .h1{font-size:clamp(2.12rem,9.5vw,3.15rem)}
  .h2{font-size:clamp(1.62rem,7.3vw,2.45rem)}
  .lead{font-size:.94rem;line-height:1.58}
  .section-head{margin-bottom:27px}
  .pillar-line{grid-template-columns:48px 1fr;min-height:auto;padding:18px 0}
  .pillar-letter{display:none}
  .pillar-line h3{font-size:1.75rem}
  .process-step{min-height:118px}
  .final-cta{padding:44px 0}
  .final-cta h2{font-size:clamp(1.75rem,7.5vw,2.35rem);max-width:540px}
  .footer-statement h2{font-size:clamp(1.7rem,7vw,2.25rem)}
  .service-preview-content{min-height:225px;padding:19px;gap:12px}
  .service-preview-main h3{font-size:2rem}
}

@media(max-width:520px){
  .container,.narrow{width:min(calc(100% - 28px),var(--max))}
  .brand-lockup{gap:8px}
  .brand-logo{max-width:44px;max-height:26px}.brand-logo img{max-width:44px;max-height:26px}
  .brand-word{gap:7px}.brand-word strong{font-size:.78rem}.brand-word i{height:17px}.brand-word span{font-size:.5rem}
  .display{font-size:clamp(2.18rem,10.9vw,3rem)}
  .h1{font-size:clamp(2rem,9.8vw,2.8rem)}
  .h2{font-size:clamp(1.55rem,7.5vw,2.15rem)}
  .btn{min-height:40px;padding:0 13px;font-size:.65rem}
  .hero-media{height:340px;min-height:340px}
  .video-placeholder{min-height:250px}
  .service-preview-main h3{font-size:1.8rem}
  .service-arrow{margin-top:4px}
  .final-cta h2{font-size:clamp(1.65rem,8vw,2.08rem)}
}


/* V6 — cooler premium system + client access workflow */
.client-access{height:38px;padding:0 11px;display:inline-flex;align-items:center;gap:7px;color:#aeb5bd;font-size:.66rem;font-weight:650;letter-spacing:.02em;border:1px solid transparent;border-radius:7px;transition:.22s}
.client-access svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}
.client-access:hover{color:#fff;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.09)}
.site-header{background:rgba(3,5,7,.86)}
.public-main{background:#030507}
.social-list{gap:8px}.social-link{display:flex!important;align-items:center;gap:10px;width:max-content;min-height:28px;color:#939aa3!important;transition:.2s}.social-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex:none}.social-link svg .social-play{fill:currentColor;stroke:none}.social-link:hover{color:#fff!important;transform:translateX(2px)}.social-link.is-disabled{opacity:.34;cursor:default}.social-link.is-disabled:hover{transform:none;color:#939aa3!important}
.site-footer{background:#020406}.footer-statement h2{color:#f2f4f6}.footer-bottom{color:#69717a}
.btn-primary{background:linear-gradient(135deg,#ff7a2e,#e95118);box-shadow:0 10px 28px rgba(255,106,26,.14)}
.btn-primary:hover{box-shadow:0 15px 34px rgba(255,106,26,.2)}

/* Applications / CRM */
.application-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:20px}.application-summary>div{background:#080c11;padding:15px 16px;min-height:76px}.application-summary strong{display:block;margin-top:7px;color:#edf1f4;font-size:.8rem}.application-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.72fr);gap:18px;align-items:start}.application-answers{border:1px solid var(--line);background:#080c11}.application-answer-section+.application-answer-section{border-top:1px solid var(--line)}.answer-section-title{padding:12px 16px;background:#0c1117;color:#8e98a3;font-size:.63rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.answer-row{display:grid;grid-template-columns:190px 1fr;gap:18px;padding:13px 16px;border-top:1px solid rgba(255,255,255,.045)}.answer-row:first-of-type{border-top:0}.answer-row span{font-size:.69rem;color:#7e8791;line-height:1.5}.answer-row p{margin:0;color:#d1d6db;font-size:.78rem;line-height:1.62;white-space:pre-wrap}.application-workflow{display:grid;gap:14px;position:sticky;top:0}.application-access,.workflow-card{border:1px solid var(--line);background:#0a0f15;padding:18px}.application-access{border-top:2px solid rgba(255,106,26,.65)}.application-access.is-active{border-top-color:rgba(121,185,152,.7)}.application-access h3{margin:8px 0 7px;font-size:1.05rem}.application-access p{margin:0 0 15px;color:#838c96;font-size:.73rem;line-height:1.6}.workflow-card .admin-form{margin-top:13px}.workflow-card textarea{min-height:100px}.provision-note{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;padding:14px 15px;margin-bottom:18px;border:1px solid var(--line);background:#080c11}.provision-note span{color:var(--accent-hot);font-size:.67rem;font-weight:800}.provision-note p{margin:0;color:#8f98a2;font-size:.76rem;line-height:1.65}.inline-field{display:flex;gap:7px}.inline-field input{min-width:0;flex:1}.provision-actions{display:flex;justify-content:flex-end;margin-top:18px}.credential-delivery{display:grid;gap:14px}.credential-delivery h3{margin:6px 0 0}.success-dot{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 22px rgba(121,185,152,.5)}.credential-pair{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:13px 0;border-top:1px solid var(--line)}.credential-pair span{color:#7e8791;font-size:.7rem}.credential-pair strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;letter-spacing:.03em}.credential-actions{display:flex;gap:8px;flex-wrap:wrap;padding-top:4px}.access-user{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#c9d0d7;font-size:.73rem}

/* Cooler admin/portal surfaces */
.dashboard-shell{background:#06090d;color:#eef1f4}.sidebar{background:#030507}.dash-topbar{background:rgba(6,9,13,.92)}.metric,.panel,.media-card,.calendar-item,.day-card{background:#090d12}.modal{background:#080c11}.auth-card{background:#090d12}.admin-form .field input,.admin-form .field textarea,.admin-form .field select,.exercise-table input{background:#06090d}.bar-fill{background:linear-gradient(90deg,var(--accent),#e2b86f)}

@media(max-width:1050px){.client-access span{display:none}.client-access{width:38px;justify-content:center;padding:0}.application-layout{grid-template-columns:1fr}.application-workflow{position:static}.application-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.client-access{display:none}.application-summary{grid-template-columns:1fr 1fr}.answer-row{grid-template-columns:1fr;gap:5px}.inline-field{flex-direction:column}.credential-pair{grid-template-columns:1fr;gap:5px}}


/* V9 - Home depurada + footer compacto */
.home-clean-note{display:none}
.site-footer{padding:36px 0 16px}
.footer-top{grid-template-columns:1.12fr .88fr;gap:46px;align-items:start}
.footer-statement{max-width:620px}
.footer-statement .eyebrow{font-size:.58rem}
.footer-statement h2{font-size:clamp(1.42rem,1.9vw,2.05rem);line-height:1.08;letter-spacing:-.035em;margin:10px 0 0;max-width:600px}
.footer-columns{gap:28px}
.footer-links{gap:8px;margin-top:10px}
.footer-links a,.social-link{font-size:.76rem}
.footer-bottom{margin-top:28px;padding-top:13px;font-size:.61rem}
.services-preview-section{background:linear-gradient(180deg,#030507 0%,#020406 100%)}
.pillars-section{background:radial-gradient(circle at 50% 0,rgba(255,106,26,.045),transparent 27%),#07090d}
.video-intro-section{background:linear-gradient(180deg,#06090d 0%,#05080b 100%)}
@media(max-width:760px){
  .site-footer{padding:30px 0 15px}
  .footer-top{gap:28px}
  .footer-statement h2{font-size:clamp(1.38rem,6vw,1.72rem);line-height:1.1}
  .footer-bottom{margin-top:22px}
}
@media(max-width:520px){
  .site-footer{padding:27px 0 14px}
  .footer-statement h2{font-size:1.35rem}
  .footer-columns{gap:22px}
}
.public-main .video-intro-section,
.public-main .pillars-section,
.public-main .services-preview-section{padding-top:54px;padding-bottom:54px}
@media(max-width:1080px){
  .footer-top{grid-template-columns:1fr;gap:30px}
  .footer-columns{max-width:520px}
}
@media(max-width:760px){
  .public-main .video-intro-section,
  .public-main .pillars-section,
  .public-main .services-preview-section{padding-top:46px;padding-bottom:46px}
}
@media(max-width:520px){
  .public-main .video-intro-section,
  .public-main .pillars-section,
  .public-main .services-preview-section{padding-top:40px;padding-bottom:40px}
}


/* =========================================================
   V10 — coherencia global / interior pages + management audit
   Home V9 remains the visual reference.
   ========================================================= */

/* Interior pages inherit the same compact rhythm as Home. */
.public-main .premium-page-hero{
  min-height:310px;
  padding:42px 0 38px;
}
.public-main .page-hero-grid{gap:36px;align-items:center}
.public-main .page-hero-grid>div:first-child{max-width:760px}
.public-main .page-hero-grid .lead{max-width:610px;margin-top:16px}
.public-main .hero-side-code{gap:10px;font-size:.58rem;letter-spacing:.12em}
.public-main .hero-side-code i{width:34px}

/* Keep all non-Home public sections on the same measured vertical cadence. */
.history-intro,
.disciplines-section,
.progress-section,
.principles-section,
.credential-section,
.services-film,
.service-selection,
.decision-section,
.detail-value,
.detail-process,
.application-section,
.contact-hero + .section{padding-top:50px;padding-bottom:50px}

.history-intro .coach-grid{gap:42px}
.history-intro .about-media{min-height:380px;border-radius:0 38px 0 38px}
.history-intro .about-media:before{border-radius:0 38px 0 38px;inset:12px -12px -12px 12px}
.history-intro .coach-copy .h2{margin:12px 0 14px}
.history-intro .coach-copy .lead{margin-bottom:12px}
.history-signature{margin-top:22px}

.disciplines-section .section-head,
.principles-section .section-head,
.credential-section .section-head{margin-bottom:28px}
.discipline-stage{gap:14px}
.discipline-visual{min-height:330px;border-radius:0 34px 0 0}
.discipline-visual:nth-child(2){min-height:290px}
.discipline-visual:nth-child(3){min-height:310px;border-radius:34px 0 0 0}
.discipline-visual>span{top:18px;left:20px}
.discipline-visual h3{left:20px;bottom:19px;font-size:clamp(1.24rem,1.75vw,1.72rem)}

.progress-layout{gap:42px}
.progress-copy .h2{margin:12px 0 16px}
.progress-mosaic{min-height:420px;gap:10px}
.progress-main{border-radius:0 42px 0 0}
.progress-side{margin-top:54px;border-radius:0 0 0 34px}
.progress-placeholder{min-height:390px}
.progress-placeholder.small{min-height:310px}

.principle-list>div{grid-template-columns:62px 210px 1fr;gap:22px;padding:15px 0}
.principle-list h3{font-size:1.16rem}
.principle-list p{font-size:.82rem;line-height:1.55}

.credential-grid{gap:14px}
.credential-item{min-height:248px;padding-top:14px}
.credential-image,.credential-placeholder{height:154px;border-radius:0 28px 0 0}
.credential-item>div:last-child{padding:15px 2px 2px}
.credential-item h3{font-size:1rem;margin-top:6px}
.credential-placeholder span{font-size:4.8rem}

/* Services page follows Home's dark sequence and density. */
.services-film{background:linear-gradient(180deg,#06090d 0%,#05080b 100%)}
.service-selection{background:#030507}
.decision-section{background:#07090d}
.services-film .video-intro-grid{gap:40px}
.service-selection .service-preview-list.large{gap:14px}
.service-preview-list.large .service-preview,
.service-preview-list.large .service-preview-content{min-height:245px}
.decision-grid{gap:48px}
.decision-grid .h2{margin-top:12px}
.decision-lines>div{padding:15px 0;grid-template-columns:190px 1fr;gap:22px}
.decision-lines p{line-height:1.55;font-size:.84rem}
.decision-lines .text-link{margin-top:18px}

/* Compact end-of-page conversion strips; no oversized editorial wall. */
.public-main .final-cta{padding:30px 0;background:radial-gradient(circle at 50% 100%,rgba(255,106,26,.08),transparent 40%),#05080b}
.public-main .final-cta-inner{max-width:900px}
.public-main .final-cta .eyebrow{font-size:.55rem}
.public-main .final-cta h2{font-size:clamp(1.28rem,1.85vw,1.72rem);line-height:1.12;letter-spacing:-.025em;max-width:650px;margin:8px auto 12px}
.public-main .final-cta p{font-size:.8rem;line-height:1.5;max-width:570px;margin:0 auto 0}
.public-main .final-cta .btn{margin-top:3px}

/* Individual service pages: premium but concise before the form. */
.service-detail-hero{min-height:390px}
.service-detail-grid{gap:40px;padding-top:66px;padding-bottom:42px}
.service-detail-grid .h1{max-width:700px;margin:9px 0 14px}
.service-detail-grid .lead{max-width:610px}
.service-detail-note{padding:22px;max-width:430px}
.service-detail-actions{margin-top:18px}
.detail-value-grid{gap:54px}
.detail-value-grid .h2{margin-top:12px}
.detail-feature-list{margin-top:24px}
.detail-feature-list>div{padding:12px 0}
.detail-process .section-head{margin-bottom:26px}
.detail-process .process-step{min-height:112px;padding-top:13px;padding-bottom:12px}
.detail-process .process-step h3{margin:19px 0 4px;font-size:1.05rem}
.detail-process .process-step p{font-size:.76rem;line-height:1.45}
.application-section .form-shell{gap:44px}
.form-aside .h2{margin:12px 0 15px}
.investment-panel{margin-top:24px;padding:18px 0}
.investment-panel strong{font-size:2.45rem}
.investment-panel i{margin:15px 0}

/* Contact page: same proportion and open composition. */
.contact-grid{gap:28px}
.contact-panel{padding:28px;border-radius:0 30px 0 0}
.contact-panel .h2{margin:12px 0 14px}
.contact-list{margin-top:26px}
.contact-item{padding:11px 0}
.contact-form{border-radius:0 30px 0 0}

/* Footer: deliberately secondary on every public page. */
.site-footer{padding:22px 0 11px}
.footer-top{grid-template-columns:1.05fr .95fr;gap:30px;align-items:start}
.footer-statement{max-width:500px}
.footer-statement .eyebrow{font-size:.5rem;letter-spacing:.13em}
.footer-statement h2{font-size:clamp(1.05rem,1.25vw,1.32rem);line-height:1.13;letter-spacing:-.022em;margin:6px 0 0;max-width:460px;font-weight:560}
.footer-columns{gap:22px}
.footer-columns .kicker{font-size:.54rem}
.footer-links{gap:5px;margin-top:7px}
.footer-links a,.social-link{font-size:.69rem;min-height:23px}
.social-link svg{width:14px;height:14px}
.footer-bottom{margin-top:16px;padding-top:9px;font-size:.54rem;letter-spacing:.065em}

/* Management naming and media cards: utilitarian, clear, not oversized. */
.media-group .media-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.media-card{padding:12px}
.media-preview{height:145px}
.media-actions{margin-top:9px}

@media(max-width:1080px){
  .public-main .premium-page-hero{min-height:285px;padding:38px 0 34px}
  .discipline-stage{grid-template-columns:1fr 1fr}
  .discipline-visual:first-child{grid-column:1/-1;min-height:350px}
  .discipline-visual:nth-child(2),.discipline-visual:nth-child(3){min-height:300px}
  .progress-layout{gap:30px}
  .footer-top{grid-template-columns:1fr;gap:18px}
  .footer-columns{max-width:460px}
}

@media(max-width:760px){
  .public-main .premium-page-hero{min-height:auto;padding:38px 0 34px}
  .history-intro,.disciplines-section,.progress-section,.principles-section,.credential-section,.services-film,.service-selection,.decision-section,.detail-value,.detail-process,.application-section,.contact-hero + .section{padding-top:42px;padding-bottom:42px}
  .history-intro .about-media{min-height:360px}
  .discipline-stage{grid-template-columns:1fr;gap:10px}
  .discipline-visual,.discipline-visual:first-child,.discipline-visual:nth-child(2),.discipline-visual:nth-child(3){grid-column:auto;min-height:0;aspect-ratio:16/9;border-radius:0 26px 0 0}
  .progress-mosaic{min-height:0;grid-template-columns:1fr 1fr}
  .progress-main,.progress-side{min-height:0;aspect-ratio:4/5;margin-top:0;border-radius:0 26px 0 0}
  .progress-placeholder,.progress-placeholder.small{min-height:0;height:100%}
  .principle-list>div{grid-template-columns:40px 1fr;gap:10px;padding:14px 0}
  .principle-list p{grid-column:2}
  .credential-grid{grid-template-columns:1fr 1fr}
  .credential-image,.credential-placeholder{height:180px}
  .decision-grid{gap:24px}
  .decision-lines>div{grid-template-columns:1fr;gap:4px;padding:13px 0}
  .service-detail-hero{min-height:360px}
  .service-detail-grid{padding-top:58px;padding-bottom:36px;gap:26px}
  .detail-value-grid{gap:24px}
  .application-section .form-shell{gap:28px}
  .site-footer{padding:19px 0 10px}
  .footer-top{gap:16px}
  .footer-statement h2{font-size:1.08rem;max-width:420px}
  .footer-columns{grid-template-columns:1fr 1fr;gap:18px}
  .footer-bottom{margin-top:13px}
  .media-group .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:520px){
  .history-intro,.disciplines-section,.progress-section,.principles-section,.credential-section,.services-film,.service-selection,.decision-section,.detail-value,.detail-process,.application-section,.contact-hero + .section{padding-top:38px;padding-bottom:38px}
  .progress-mosaic{grid-template-columns:1fr}
  .progress-main,.progress-side{aspect-ratio:4/5}
  .credential-grid{grid-template-columns:1fr}
  .credential-image,.credential-placeholder{height:190px}
  .public-main .final-cta{padding:25px 0}
  .public-main .final-cta h2{font-size:1.18rem}
  .footer-columns{grid-template-columns:1fr;gap:13px}
  .footer-statement h2{font-size:1rem}
  .footer-links{gap:4px}
  .footer-bottom{font-size:.5rem}
  .media-group .media-grid{grid-template-columns:1fr}
}

/* V11 - Services closing block simplified */
.decision-note{
  margin:18px 0 0;
  padding-top:16px;
  border-top:1px solid var(--line);
  color:#8c8881;
  font-size:.8rem;
  line-height:1.55;
  max-width:640px;
}
@media(max-width:760px){
  .decision-note{margin-top:14px;padding-top:14px;font-size:.78rem}
}


/* V12 - Services closing block proportion + reading order */
.decision-intro .h2{
  margin-bottom:14px;
}
.decision-after{
  margin:0;
  font-size:clamp(1.35rem,2vw,2rem);
  line-height:1.05;
}
.decision-note{
  grid-column:1 / -1;
  width:100%;
  max-width:none;
  margin:4px 0 0;
  padding-top:15px;
  border-top:1px solid var(--line);
}
@media(max-width:760px){
  .decision-after{font-size:1.45rem}
  .decision-note{margin-top:0;padding-top:13px}
}

/* V13 - services closing block visual correction */
.decision-intro .h2{
  line-height:1.08;
  max-width:11ch;
}
.decision-lines{
  align-self:center;
  width:100%;
}
.decision-note{
  grid-column:1 / -1;
  justify-self:center;
  width:fit-content;
  max-width:min(760px, 100%);
  margin:16px auto 0;
  padding-top:14px;
  text-align:center;
  border-top:1px solid var(--line);
}
@media(min-width:761px){
  .decision-lines{margin-top:10px;}
}
@media(max-width:760px){
  .decision-intro .h2{max-width:none;}
  .decision-lines{margin-top:4px;}
  .decision-note{max-width:100%;}
}

/* V14 - compact services close + consistent embedded services video */
.decision-section{padding-top:38px;padding-bottom:38px}
.decision-grid{align-items:center}
.decision-intro{align-self:center}
.decision-title{
  font-size:clamp(1.85rem,2.7vw,2.85rem);
  line-height:1.04;
  max-width:none !important;
  margin:10px 0 10px !important;
  letter-spacing:-.04em;
}
.decision-title span{display:block;white-space:nowrap}
.decision-after{margin-top:8px}
.decision-lines{margin-top:0 !important;align-self:center}
.decision-note{margin-top:10px;padding-top:12px}
.services-film .video-embedded .video-expand{display:flex;visibility:visible;opacity:1}
@media(max-width:760px){
  .decision-section{padding-top:34px;padding-bottom:34px}
  .decision-title{font-size:clamp(1.7rem,7.6vw,2.3rem);line-height:1.07}
  .decision-title span{white-space:normal}
  .decision-note{margin-top:8px;padding-top:11px}
}

/* =========================================================
   V15 - Evidence motion + viewport consistency
   ========================================================= */
html{
  font-size:16px;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{min-width:320px}
.public-shell,.public-main,.app-shell{width:100%;min-width:0}
.container,.narrow,
.page-hero-grid>*,.section-head>*,.video-intro-grid>*,.progress-layout>*,
.service-detail-grid>*,.detail-value-grid>*,.contact-grid>*{min-width:0}
img,video,iframe,svg{max-width:100%}
.h1,.h2,.display{overflow-wrap:normal;word-break:normal;hyphens:none}

/* Evidence personal: two-layer before/after composition. */
.progress-mosaic{
  position:relative;
  display:block;
  width:100%;
  height:clamp(370px,34vw,490px);
  min-height:0;
  max-width:690px;
  margin-inline:auto;
  isolation:isolate;
  overflow:visible;
}
.progress-main,.progress-side{
  position:absolute;
  min-height:0;
  margin:0;
  aspect-ratio:auto;
  overflow:hidden;
  background:#080b0f;
  transition:transform .48s cubic-bezier(.2,.75,.2,1),opacity .38s ease,filter .38s ease,border-color .38s ease,box-shadow .48s ease;
  will-change:transform;
  outline:none;
}
.progress-main{
  z-index:1;
  left:0;
  top:0;
  width:69%;
  height:88%;
  border:1px solid rgba(255,255,255,.2);
  border-radius:0 38px 0 0;
  transform:translate3d(0,0,0) rotate(-1.15deg);
  box-shadow:0 24px 58px rgba(0,0,0,.26);
}
.progress-side{
  z-index:2;
  right:0;
  bottom:0;
  width:58%;
  height:79%;
  border:1px solid rgba(255,107,26,.43);
  border-radius:38px 0 0 0;
  transform:translate3d(0,0,0) rotate(1deg);
  box-shadow:0 30px 72px rgba(0,0,0,.4),0 0 0 1px rgba(255,107,26,.04);
}
.progress-main img,.progress-side img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.88) contrast(1.06) brightness(.92);
  transition:filter .42s ease,transform .55s cubic-bezier(.2,.75,.2,1);
}
.progress-card:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 58%,rgba(2,4,7,.67));
  transition:opacity .35s ease;
}
.progress-tag{
  position:absolute;
  z-index:4;
  left:16px;
  bottom:14px;
  display:flex;
  align-items:baseline;
  gap:8px;
  padding:7px 9px;
  background:rgba(3,5,7,.58);
  border-left:2px solid currentColor;
  backdrop-filter:blur(8px);
  color:#d8dde2;
  font-size:.59rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.progress-after .progress-tag{color:var(--accent-hot)}
.progress-tag small{
  color:#8d949c;
  font-size:.5rem;
  font-weight:600;
  letter-spacing:.1em;
}

@media (hover:hover) and (pointer:fine){
  .progress-card{cursor:default}
  .progress-main:hover,.progress-main:focus-visible{
    z-index:5;
    transform:translate3d(-7px,-5px,0) rotate(-.35deg) scale(1.025);
    border-color:rgba(255,255,255,.42);
    box-shadow:0 34px 84px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.05);
  }
  .progress-side:hover,.progress-side:focus-visible{
    z-index:5;
    transform:translate3d(7px,-7px,0) rotate(.3deg) scale(1.025);
    border-color:rgba(255,139,71,.84);
    box-shadow:0 38px 92px rgba(0,0,0,.52),0 0 42px rgba(255,107,26,.12);
  }
  .progress-main:hover img,.progress-main:focus-visible img,
  .progress-side:hover img,.progress-side:focus-visible img{
    filter:saturate(.98) contrast(1.08) brightness(1.02);
    transform:scale(1.018);
  }
  .progress-mosaic:has(.progress-main:hover) .progress-side,
  .progress-mosaic:has(.progress-main:focus-visible) .progress-side{
    z-index:1;
    opacity:.67;
    filter:brightness(.8);
    transform:translate3d(13px,8px,0) rotate(1.8deg) scale(.975);
  }
  .progress-mosaic:has(.progress-side:hover) .progress-main,
  .progress-mosaic:has(.progress-side:focus-visible) .progress-main{
    z-index:1;
    opacity:.67;
    filter:brightness(.8);
    transform:translate3d(-12px,7px,0) rotate(-1.9deg) scale(.975);
  }
}

/* Touch/small screens: both images remain fully accessible without hover. */
@media (max-width:760px), (hover:none){
  .progress-mosaic{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    height:auto;
    max-width:680px;
    overflow:hidden;
  }
  .progress-main,.progress-side{
    position:relative;
    inset:auto;
    width:auto;
    height:auto;
    aspect-ratio:4/5;
    transform:none;
    border-radius:0 24px 0 0;
    opacity:1;
    filter:none;
  }
  .progress-main{z-index:1}
  .progress-side{z-index:1}
}
@media (max-width:520px){
  .progress-mosaic{grid-template-columns:1fr;gap:12px}
  .progress-main,.progress-side{aspect-ratio:4/5}
}

/* V16 - evidence size balance + motion on disciplines and credentials */
.progress-main{
  width:67%;
  height:87%;
}
.progress-side{
  width:61%;
  height:82%;
}

.discipline-visual,
.credential-item,
.credential-image,
.credential-placeholder{
  transition:transform .42s cubic-bezier(.2,.75,.2,1), box-shadow .42s ease, border-color .35s ease, filter .35s ease, opacity .35s ease;
}
.discipline-visual img,
.credential-image img{
  transition:transform .62s cubic-bezier(.2,.75,.2,1), filter .42s ease;
}

@media (hover:hover) and (pointer:fine){
  .discipline-visual,
  .credential-item{cursor:default}

  .discipline-visual:hover,
  .discipline-visual:focus-within{
    transform:translateY(-6px) scale(1.008);
    box-shadow:0 26px 66px rgba(0,0,0,.34), 0 0 0 1px rgba(255,255,255,.05);
  }
  .discipline-visual:hover img,
  .discipline-visual:focus-within img{
    transform:scale(1.04);
    filter:saturate(.94) contrast(1.08) brightness(1.02);
  }
  .discipline-stage:has(.discipline-visual:hover) .discipline-visual:not(:hover){
    transform:translateY(2px) scale(.992);
    opacity:.9;
    filter:brightness(.92);
  }

  .credential-item:hover,
  .credential-item:focus-within{
    transform:translateY(-5px);
  }
  .credential-item:hover .credential-image,
  .credential-item:hover .credential-placeholder,
  .credential-item:focus-within .credential-image,
  .credential-item:focus-within .credential-placeholder{
    box-shadow:0 20px 54px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.05);
    border-color:rgba(255,154,95,.35);
  }
  .credential-item:hover .credential-image img,
  .credential-item:focus-within .credential-image img{
    transform:scale(1.04);
    filter:saturate(.96) contrast(1.06) brightness(1.02);
  }
  .credential-grid:has(.credential-item:hover) .credential-item:not(:hover){
    opacity:.92;
    transform:translateY(2px);
  }
}

@media (max-width:760px), (hover:none){
  .discipline-visual,
  .credential-item,
  .credential-image,
  .credential-placeholder,
  .discipline-visual img,
  .credential-image img{
    transition:none;
  }
}


/* V17 - Hybrid application form details */
.investment-service{
  display:block;
  margin-bottom:8px;
  color:var(--accent-hot)!important;
  font-size:.68rem!important;
  font-weight:750;
  letter-spacing:.14em!important;
  text-transform:uppercase;
}
.field-with-unit{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:stretch;
  border:1px solid rgba(255,255,255,.12);
  background:#0a0a0c;
  transition:.22s;
}
.field-with-unit:focus-within{
  border-color:rgba(255,106,26,.65);
  box-shadow:0 0 0 2px rgba(255,106,26,.08);
}
.field-with-unit input{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.field-with-unit span{
  display:grid;
  place-items:center;
  min-width:52px;
  padding:0 12px;
  border-left:1px solid rgba(255,255,255,.09);
  color:#77736d;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* V18 - service value composition + hybrid investment emphasis */
.detail-value-grid > div:first-child{
  align-self:center;
}
.detail-value-grid > div:first-child .h2{
  max-width:12ch;
}
.investment-value{
  display:flex;
  align-items:baseline;
  gap:10px;
  margin-top:8px;
  white-space:nowrap;
}
.investment-value strong{
  margin:0;
  font-size:2.45rem;
  line-height:1;
  letter-spacing:-.055em;
}
.investment-separator,
.investment-cycle{
  color:var(--accent-hot);
}
.investment-separator{
  font-size:1.55rem;
  font-weight:500;
  line-height:1;
}
.investment-cycle{
  font-size:1.18rem;
  font-weight:700;
  letter-spacing:-.02em;
  text-transform:none;
}
@media(max-width:760px){
  .detail-value-grid > div:first-child{align-self:auto}
  .detail-value-grid > div:first-child .h2{max-width:none}
  .investment-value{gap:8px}
  .investment-value strong{font-size:2.2rem}
  .investment-separator{font-size:1.35rem}
  .investment-cycle{font-size:1.05rem}
}

/* V19 - compact service value block + lighter application surface */
.detail-value{
  padding-top:46px;
  padding-bottom:46px;
}
.detail-value-grid{
  gap:56px;
  align-items:center;
}
.detail-value-grid > div:first-child{
  align-self:center;
}
.detail-value-grid > div:first-child .h2{
  max-width:11.5ch;
  margin-top:12px;
  line-height:1.01;
}
.detail-value-grid > div:nth-child(2) > .lead{
  margin:0 0 14px;
  line-height:1.55;
}
.detail-feature-list{
  margin-top:14px;
}
.detail-feature-list > div{
  padding:9px 0;
  grid-template-columns:48px 1fr;
  gap:12px;
}
.detail-feature-list b{
  font-size:.88rem;
  line-height:1.35;
}

.application-section .form-card{
  background:linear-gradient(145deg,#191d22 0%,#15191e 52%,#11151a 100%);
  border-color:rgba(255,255,255,.12);
  box-shadow:0 28px 76px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
.application-section .form-intro p{
  color:#a6a29b;
}
.application-section .form-section{
  border-top-color:rgba(255,255,255,.10);
}
.application-section .field label{
  color:#c1bdb6;
}
.application-section .field input,
.application-section .field textarea,
.application-section .field select,
.application-section .field-with-unit{
  background:#0b0e12;
  border-color:rgba(255,255,255,.13);
}
.application-section .field input::placeholder,
.application-section .field textarea::placeholder{
  color:#666b70;
}
.application-section .check-row{
  color:#aaa69f;
}

@media(max-width:760px){
  .detail-value{
    padding-top:38px;
    padding-bottom:38px;
  }
  .detail-value-grid{
    gap:28px;
  }
  .detail-value-grid > div:first-child .h2{
    max-width:none;
  }
  .detail-feature-list > div{
    padding:10px 0;
  }
}


/* V20 - service page readability, return action visibility, and mirrored value treatment */
.service-value-title{
  display:grid;
  justify-items:center;
  gap:8px;
  text-align:center;
  max-width:15ch;
  margin-top:14px;
}
.service-value-title span{
  display:block;
}
.detail-value{
  padding-top:40px;
  padding-bottom:40px;
}
.detail-value-grid{
  gap:46px;
  align-items:center;
}
.detail-value-grid > div:first-child{
  display:grid;
  align-content:center;
  justify-items:center;
  gap:10px;
}
.detail-value-grid > div:first-child .eyebrow{
  justify-self:center;
}
.detail-value-grid > div:first-child .h2{
  max-width:15ch;
  margin-top:0;
  line-height:1.03;
}
.detail-value-grid > div:nth-child(2) > .lead{
  margin:0 0 12px;
}
.detail-feature-list{
  margin-top:10px;
}
.detail-feature-list > div{
  padding:8px 0;
}
.service-return-btn{
  background:linear-gradient(180deg,rgba(14,16,20,.84),rgba(10,12,15,.68));
  border-color:rgba(255,255,255,.22);
  color:#f1ece4;
  box-shadow:0 14px 38px rgba(0,0,0,.22);
  backdrop-filter:blur(12px);
}
.service-return-btn:hover{
  border-color:rgba(255,106,26,.46);
  background:linear-gradient(180deg,rgba(18,21,25,.9),rgba(12,14,18,.78));
}
.service-return-btn span:first-child{
  font-size:.92rem;
}
.application-section .form-card{
  background:linear-gradient(145deg,#2a3037 0%,#22272e 52%,#1a1f25 100%);
  border-color:rgba(255,255,255,.14);
}
.investment-panel .investment-value{
  margin-top:10px;
}
.investment-panel .investment-cycle{
  font-size:1.28rem;
}
@media(max-width:760px){
  .service-value-title{
    max-width:none;
    justify-items:start;
    text-align:left;
    gap:6px;
  }
  .detail-value{
    padding-top:36px;
    padding-bottom:36px;
  }
  .detail-value-grid{
    gap:24px;
  }
  .detail-value-grid > div:first-child{
    justify-items:start;
  }
  .detail-value-grid > div:first-child .eyebrow,
  .detail-value-grid > div:first-child .h2{
    justify-self:start;
    max-width:none;
  }
  .service-detail-actions{
    align-items:stretch;
  }
  .service-return-btn{
    width:100%;
    justify-content:center;
  }
}


/* V21 - fix service title line breaks + refine return link */
.detail-value{
  padding-top:34px;
  padding-bottom:34px;
}
.detail-value-grid{
  gap:40px;
  align-items:center;
}
.detail-value-grid > div:first-child{
  gap:8px;
}
.service-value-title{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  max-width:none !important;
  width:100%;
  margin-top:0 !important;
  font-size:clamp(2.15rem,3.25vw,3.45rem);
  line-height:.98 !important;
  letter-spacing:-.05em;
}
.service-value-title .line-1,
.service-value-title .line-2{
  display:block;
  white-space:nowrap;
}
.detail-feature-list{
  margin-top:8px;
}
.detail-feature-list > div{
  padding:7px 0;
}
.service-detail-actions{
  gap:16px;
}
.service-return-link{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(7,9,12,.32);
  color:#ece7de;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.075em;
  text-transform:uppercase;
  backdrop-filter:blur(14px);
  box-shadow:0 10px 26px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
  transition:.22s ease;
}
.service-return-link:hover{
  transform:translateY(-1px);
  border-color:rgba(255,106,26,.42);
  background:rgba(10,13,17,.52);
  color:#fff;
  box-shadow:0 14px 32px rgba(0,0,0,.24);
}
.service-return-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  color:var(--accent-hot);
  font-size:.82rem;
  line-height:1;
}
@media(max-width:980px){
  .service-value-title{
    font-size:clamp(2rem,5vw,3rem);
  }
  .service-value-title .line-1,
  .service-value-title .line-2{
    white-space:normal;
  }
}
@media(max-width:760px){
  .detail-value{
    padding-top:30px;
    padding-bottom:30px;
  }
  .detail-value-grid{
    gap:22px;
  }
  .service-value-title{
    align-items:flex-start;
    text-align:left;
    font-size:clamp(1.9rem,7vw,2.5rem);
    line-height:1.02 !important;
  }
  .service-return-link{
    width:100%;
  }
  .service-return-icon{
    width:20px;
    height:20px;
  }
}


/* V22 - final service detail fixes */
.detail-value{
  padding-top:28px !important;
  padding-bottom:28px !important;
}
.detail-value-grid{
  grid-template-columns:1.08fr .92fr !important;
  gap:34px !important;
  align-items:center !important;
}
.detail-value-grid > div:first-child{
  display:grid !important;
  align-content:center !important;
  justify-items:center !important;
  gap:8px !important;
  min-width:0;
}
.detail-value-grid > div:first-child .eyebrow{
  justify-self:center !important;
}
.detail-value-grid > div:nth-child(2){
  min-width:0;
}
.detail-value-grid > div:nth-child(2) > .lead{
  margin:0 0 10px !important;
}
.service-value-title{
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  text-align:center !important;
  letter-spacing:-.052em !important;
}
.service-value-title .line-1,
.service-value-title .line-2{
  display:block;
  white-space:nowrap;
}
.service-value-title--hybrid{
  font-size:clamp(2.2rem,3.15vw,3.35rem) !important;
  line-height:.98 !important;
}
.service-value-title--hybrid .line-1{
  font-size:1em;
}
.service-value-title--hybrid .line-2{
  font-size:1em;
}
.service-value-title--integral{
  font-size:clamp(1.85rem,2.45vw,2.65rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.04em !important;
}
.service-value-title--integral .line-1{
  font-size:1em;
}
.service-value-title--integral .line-2{
  font-size:.98em;
}
.detail-feature-list{
  margin-top:8px !important;
}
.detail-feature-list > div{
  padding:7px 0 !important;
}
.service-detail-actions{
  gap:14px !important;
}
.service-return-link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(255,170,102,.28);
  background:linear-gradient(180deg,rgba(14,16,20,.92),rgba(8,10,14,.88));
  color:#f5efe6;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.065em;
  text-transform:uppercase;
  box-shadow:0 14px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.03);
  transition:transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.service-return-link:hover{
  transform:translateY(-1px);
  border-color:rgba(255,126,48,.58);
  background:linear-gradient(180deg,rgba(18,21,26,.96),rgba(10,12,16,.92));
  color:#fff;
  box-shadow:0 16px 32px rgba(0,0,0,.34);
}
.service-return-icon{
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,106,26,.12);
  color:var(--accent-hot);
  font-size:.82rem;
  line-height:1;
}
@media(max-width:1180px){
  .detail-value-grid{
    grid-template-columns:1fr 1fr !important;
    gap:28px !important;
  }
  .service-value-title--hybrid{
    font-size:clamp(2rem,3.5vw,3rem) !important;
  }
  .service-value-title--integral{
    font-size:clamp(1.72rem,2.7vw,2.28rem) !important;
  }
}
@media(max-width:980px){
  .detail-value-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  .service-value-title,
  .service-value-title .line-1,
  .service-value-title .line-2{
    white-space:normal;
  }
}
@media(max-width:760px){
  .detail-value{
    padding-top:24px !important;
    padding-bottom:24px !important;
  }
  .service-value-title{
    align-items:flex-start !important;
    text-align:left !important;
    gap:5px !important;
  }
  .service-value-title--hybrid{
    font-size:clamp(1.85rem,8vw,2.35rem) !important;
  }
  .service-value-title--integral{
    font-size:clamp(1.65rem,7vw,2.1rem) !important;
  }
  .service-return-link{
    width:100%;
  }
}


/* V23 - editorial left alignment for service value titles */
.detail-value-grid > div:first-child{
  justify-items:start !important;
  text-align:left !important;
}
.detail-value-grid > div:first-child .eyebrow{
  justify-self:start !important;
}
.service-value-title{
  align-items:flex-start !important;
  justify-content:flex-start !important;
  text-align:left !important;
  width:auto !important;
}
.service-value-title--hybrid{
  max-width:10.6ch !important;
}
.service-value-title--integral{
  max-width:15.2ch !important;
}
@media(max-width:980px){
  .detail-value-grid > div:first-child{
    justify-items:start !important;
    text-align:left !important;
  }
}


/* V24 - better use of width in service include blocks */
.detail-value-grid{
  grid-template-columns:.82fr 1.18fr !important;
  gap:42px !important;
  align-items:start !important;
}
.detail-value-grid > div:first-child{
  align-self:center;
}
.detail-value-grid > div:nth-child(2){
  width:100%;
}
.detail-feature-list{
  margin-top:12px !important;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  grid-template-rows:repeat(3, auto);
  grid-auto-flow:column;
  column-gap:42px;
  row-gap:0;
  align-items:start;
}
.detail-feature-list > div{
  padding:11px 0 !important;
  min-width:0;
}
.detail-feature-list b{
  line-height:1.35;
}
@media(max-width:1180px){
  .detail-value-grid{
    grid-template-columns:.9fr 1.1fr !important;
    gap:32px !important;
  }
  .detail-feature-list{
    column-gap:28px;
  }
}
@media(max-width:980px){
  .detail-value-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  .detail-feature-list{
    display:block;
  }
}


/* V26 - only typography correction requested: preserve V24 proportions */
.service-value-title--hybrid{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-style:italic !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
}
.service-value-title--hybrid .line-1,
.service-value-title--hybrid .line-2{
  font-family:inherit !important;
  font-style:inherit !important;
  font-weight:inherit !important;
  letter-spacing:inherit !important;
}

/* V27 - use substantially more horizontal canvas only in "Que incluye" */
.detail-value .container{
  width:min(calc(100% - 56px), 1580px) !important;
  max-width:none !important;
}
.detail-value-grid{
  grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr) !important;
  gap:64px !important;
}
.detail-value-grid > div:nth-child(2){
  min-width:0;
}
.detail-feature-list{
  width:100% !important;
  column-gap:54px !important;
}
@media(max-width:1400px){
  .detail-value .container{
    width:min(calc(100% - 44px), 1360px) !important;
  }
  .detail-value-grid{
    grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr) !important;
    gap:46px !important;
  }
  .detail-feature-list{
    column-gap:36px !important;
  }
}
@media(max-width:980px){
  .detail-value .container{
    width:min(calc(100% - 30px), 100%) !important;
  }
  .detail-value-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
}
@media(max-width:520px){
  .detail-value .container{
    width:min(calc(100% - 22px), 100%) !important;
  }
}

/* V28 - integral service title uses the same editorial type treatment as hybrid,
   without increasing size, so it feels more airy and visually coherent. */
.service-value-title--integral{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-style:italic !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
  font-size:clamp(1.8rem,2.28vw,2.45rem) !important;
  line-height:1.02 !important;
  max-width:15.5ch !important;
}
.service-value-title--integral .line-1,
.service-value-title--integral .line-2{
  font-family:inherit !important;
  font-style:inherit !important;
  font-weight:inherit !important;
  letter-spacing:inherit !important;
}
@media(max-width:1180px){
  .service-value-title--integral{
    font-size:clamp(1.68rem,2.45vw,2.18rem) !important;
    max-width:16ch !important;
  }
}
@media(max-width:760px){
  .service-value-title--integral{
    font-size:clamp(1.6rem,6.5vw,2rem) !important;
    max-width:none !important;
  }
}


/* =========================================================
   V31 — Admin + portal premium refinement
   More visual relevance, softer geometry, clearer hierarchy
   ========================================================= */
:root{
  --dash-bg:#071019;
  --dash-surface:#0c1520;
  --dash-surface-2:#101b28;
  --dash-surface-3:#142131;
  --dash-line:rgba(195,214,235,.12);
  --dash-line-strong:rgba(195,214,235,.2);
  --dash-text:#edf3f8;
  --dash-soft:#a8b3bf;
  --dash-shadow:0 26px 80px rgba(0,0,0,.38);
}

.auth-page{
  min-height:100vh;
  padding:34px;
  background:
    radial-gradient(circle at 14% 18%, rgba(73,123,201,.16), transparent 22%),
    radial-gradient(circle at 88% 14%, rgba(255,122,46,.18), transparent 18%),
    linear-gradient(135deg,#05080d 0%,#071019 52%,#06090e 100%);
}
.auth-layout{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:24px;
  align-items:stretch;
}
.auth-stage,
.auth-card{
  border:1px solid var(--dash-line);
  box-shadow:var(--dash-shadow);
  backdrop-filter:blur(16px) saturate(120%);
}
.auth-stage{
  position:relative;
  overflow:hidden;
  border-radius:34px 34px 34px 14px;
  background:
    linear-gradient(145deg,rgba(12,21,32,.96),rgba(9,15,23,.92)),
    linear-gradient(145deg,rgba(255,255,255,.02),rgba(255,255,255,.01));
}
.auth-stage:before,
.auth-stage:after{
  content:"";
  position:absolute;
  border-radius:50%;
  filter:blur(8px);
  pointer-events:none;
}
.auth-stage:before{width:280px;height:280px;right:-100px;top:-80px;background:radial-gradient(circle,rgba(255,122,46,.22),transparent 68%)}
.auth-stage:after{width:320px;height:320px;left:-90px;bottom:-130px;background:radial-gradient(circle,rgba(73,123,201,.2),transparent 68%)}
.auth-stage-inner{position:relative;z-index:1;padding:48px 46px;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}
.auth-stage-title{font-size:clamp(2.2rem,3.6vw,4rem);line-height:.97;letter-spacing:-.05em;margin:18px 0 14px;max-width:670px}
.auth-stage-copy{margin:0;max-width:680px;color:#b6c1cc;font-size:1rem;line-height:1.8}
.auth-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px}
.auth-highlight{padding:20px 18px;border:1px solid rgba(195,214,235,.12);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}
.auth-highlight span{display:inline-flex;min-width:34px;height:34px;padding:0 10px;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,122,46,.14);color:#ff9a63;font-size:.7rem;font-weight:800;letter-spacing:.08em}
.auth-highlight h3{margin:16px 0 8px;font-size:1rem;letter-spacing:-.02em}
.auth-highlight p{margin:0;color:#93a0ac;font-size:.8rem;line-height:1.65}
.auth-card{
  width:100%;
  border-radius:34px 14px 34px 34px;
  background:linear-gradient(180deg,rgba(14,23,35,.97),rgba(10,17,27,.94));
  padding:34px 34px 28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.auth-logo{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.brand-mark{border-radius:14px;background:rgba(255,122,46,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.auth-brand-copy{display:flex;flex-direction:column;gap:4px}
.auth-brand-copy strong{font-size:1rem;letter-spacing:-.02em}
.auth-brand-copy small{color:#8f9ba8;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}
.auth-copy h2{font-size:2rem;letter-spacing:-.04em;margin:10px 0 10px}
.auth-copy p{margin:0 0 0;color:#a2afbc;line-height:1.75;font-size:.92rem}
.auth-form{margin-top:24px;display:grid;gap:14px}
.admin-form .field label{color:#b8c3ce;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}
.admin-form .field input,
.admin-form .field textarea,
.admin-form .field select,
.exercise-table input{
  background:linear-gradient(180deg,#0a131d,#0d1723);
  border:1px solid rgba(195,214,235,.14);
  border-radius:16px;
  color:var(--dash-text);
  padding:14px 15px;
}
.admin-form .field input::placeholder,
.admin-form .field textarea::placeholder{color:#657383}
.admin-form .field input:focus,
.admin-form .field textarea:focus,
.admin-form .field select:focus,
.exercise-table input:focus{border-color:rgba(255,122,46,.5);box-shadow:0 0 0 3px rgba(255,122,46,.08)}
.auth-submit{width:100%;margin-top:2px;border-radius:16px;min-height:54px}
.auth-footer{display:grid;gap:14px;margin-top:18px}
.demo-box{margin-top:0;padding:16px 17px;border-radius:18px;border:1px solid rgba(195,214,235,.12);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));font-size:.79rem;color:#9faab5}
.demo-box b{display:block;color:#eef3f8;margin-bottom:10px}
.demo-creds{display:flex;flex-wrap:wrap;gap:8px}
.demo-creds span{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(195,214,235,.12);background:#0b131d;color:#dbe3ea;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}
.auth-back{padding-top:4px}
.auth-back a{display:inline-flex;align-items:center;gap:8px;color:#98a5b2}
.auth-back a:hover{color:#fff}

.dashboard-shell{
  min-height:100vh;
  background:
    radial-gradient(circle at 88% 10%, rgba(255,122,46,.07), transparent 16%),
    radial-gradient(circle at 12% 88%, rgba(73,123,201,.08), transparent 18%),
    linear-gradient(180deg,#060b12 0%,#09111a 100%);
  grid-template-columns:290px 1fr;
  color:var(--dash-text);
}
.sidebar{
  background:linear-gradient(180deg,#08111b 0%,#060d15 100%);
  border-right:1px solid var(--dash-line);
  padding:24px 18px 20px;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.02);
}
.side-brand{display:flex;align-items:center;gap:14px;padding:4px 10px 20px;border-bottom:1px solid var(--dash-line)}
.side-brand-copy{display:flex;flex-direction:column;gap:3px}
.side-brand-copy strong{font-size:1rem;letter-spacing:-.02em}
.side-brand-copy small{color:#7f8c99;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}
.side-intro{padding:16px 10px 6px}
.side-intro p{margin:8px 0 0;color:#8794a1;font-size:.8rem;line-height:1.65}
.side-nav{display:grid;gap:8px;margin-top:18px;padding-right:2px}
.side-link{
  border:1px solid transparent;
  background:transparent;
  color:#93a0ac;
  text-align:left;
  padding:13px 14px;
  font-size:.79rem;
  font-weight:700;
  display:flex;
  align-items:center;
  gap:12px;
  border-radius:16px;
  transition:.22s;
}
.side-link:hover{background:rgba(255,255,255,.035);border-color:rgba(195,214,235,.07);color:#fff;transform:translateX(2px)}
.side-link.active{
  background:linear-gradient(135deg,rgba(255,122,46,.14),rgba(73,123,201,.08));
  border-color:rgba(255,122,46,.22);
  color:#fff;
  box-shadow:0 12px 32px rgba(0,0,0,.18);
}
.side-icon{
  width:30px;
  height:30px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(255,255,255,.04);
  color:#ff9a63;
  font-size:.78rem;
}
.side-link.active .side-icon{background:rgba(255,122,46,.16);color:#ffb183}
.logout-link{margin-top:8px}
.side-bottom{padding:16px 4px 0;border-top:1px solid var(--dash-line)}
.dashboard-main{min-width:0;padding:18px 18px 24px}
.dash-topbar{
  height:auto;
  min-height:94px;
  padding:20px 24px;
  border:1px solid var(--dash-line);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(12,21,32,.88),rgba(10,18,28,.82));
  box-shadow:var(--dash-shadow);
  position:sticky;
  top:16px;
  z-index:30;
  backdrop-filter:blur(18px);
}
.dash-heading{display:grid;gap:5px}
.dash-context{display:inline-flex;width:max-content;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,122,46,.2);background:rgba(255,122,46,.08);color:#ff9a63;font-size:.65rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.dash-title{font-size:1.8rem;letter-spacing:-.04em}
.dash-sub{color:#91a0ae;font-size:.82rem;margin-top:0}
.dash-actions{gap:10px}
.dash-content{padding:18px 2px 0}
.mini-btn{
  height:40px;
  padding:0 14px;
  border:1px solid rgba(195,214,235,.12);
  border-radius:14px;
  background:linear-gradient(180deg,#0e1722,#0b131d);
  color:#d2dbe3;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.mini-btn:hover{border-color:rgba(255,122,46,.24);background:linear-gradient(180deg,#121d29,#0c1520);color:#fff}
.mini-btn.primary{background:linear-gradient(135deg,#ff7a2e,#e95c24);border-color:#ff7a2e;color:#081018}
.mini-btn.primary:hover{filter:brightness(1.05)}
.mini-btn.danger{color:#ff9a9a}
.status{
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(195,214,235,.12);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.1em;
  background:#0c1520;
}
.metric-grid{gap:16px;margin-bottom:18px}
.metric,
.panel,
.media-card,
.calendar-item,
.day-card,
.summary-item,
.plan-view-day,
.application-answers,
.application-access,
.workflow-card,
.provision-note{
  border:1px solid var(--dash-line);
  background:linear-gradient(180deg,rgba(12,21,32,.92),rgba(10,17,26,.92));
  box-shadow:var(--dash-shadow);
}
.metric{
  padding:22px;
  border-radius:24px;
  position:relative;
  overflow:hidden;
}
.metric:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),rgba(73,123,201,.8),transparent)}
.metric-label{color:#91a0ae;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.metric-value{font-size:2.15rem;color:#fff}
.metric-foot{font-size:.75rem;color:#708090}
.panel{padding:22px;border-radius:26px;margin-bottom:18px}
.panel-head{margin-bottom:20px}
.panel-head h3{font-size:1.05rem;letter-spacing:-.02em}
.panel-head p{color:#7f8d9b;font-size:.77rem}
.grid-2,.grid-3,.grid-4{gap:18px}
.data-table{min-width:760px}
.data-table th{
  font-size:.62rem;
  letter-spacing:.14em;
  color:#7f8d9b;
  padding:12px 12px;
  border-bottom:1px solid rgba(195,214,235,.08);
}
.data-table td{
  padding:13px 12px;
  border-bottom:1px solid rgba(195,214,235,.06);
  color:#d3dce5;
  font-size:.79rem;
}
.data-table td b{color:#fff}
.data-table tr:hover td{background:rgba(255,255,255,.016)}
.table-link{color:#ffb183}
.empty{padding:40px 18px;color:#7d8b98}
.chart-bars{gap:14px}
.bar-row{color:#b4c0cb}
.bar-track{height:8px;border-radius:999px;background:#0a1017;overflow:hidden;border:1px solid rgba(195,214,235,.06)}
.bar-fill{background:linear-gradient(90deg,#ff7a2e,#e2b86f,#5d87d1);border-radius:999px}

.portal-welcome{
  border-radius:30px;
  padding:28px;
  background:
    radial-gradient(circle at 85% 18%,rgba(255,122,46,.17),transparent 22%),
    linear-gradient(145deg,#0f1823,#0b131d);
  border:1px solid var(--dash-line);
}
.portal-welcome p{color:#a9b5c0}
.service-badge{border-radius:999px;padding:7px 11px;background:rgba(255,122,46,.08);border-color:rgba(255,122,46,.2)}
.portal-summary{gap:14px;margin-top:20px}
.summary-item{border-radius:22px;padding:17px 18px}
.summary-item small{color:#7d8b98;text-transform:uppercase;letter-spacing:.08em}
.summary-item b{color:#fff;font-size:1rem;letter-spacing:-.01em}
.plan-view-day{border-radius:24px;overflow:hidden}
.plan-view-day h3{padding:16px 18px;background:#0e1722;color:#fff}
.plan-view-table th{background:#09111a;color:#80909f}
.plan-view-table td{color:#d5dee7}
.calendar-list{gap:12px}
.calendar-item{border-radius:22px;padding:15px 16px}
.date-box{border-radius:18px;background:#0f1823;border:1px solid rgba(195,214,235,.08);color:#fff}
.date-box span{color:#81909d}

.application-summary{gap:1px;border-radius:24px;overflow:hidden}
.application-summary>div{background:#0d1621;padding:16px 18px}
.answer-section-title{background:#0f1823;color:#94a2b0}
.answer-row span{color:#7f8d9a}
.answer-row p{color:#d7dfe7}
.application-access,.workflow-card{border-radius:24px}
.provision-note{border-radius:20px}
.credential-pair strong{color:#f3f7fb}

.media-card{border-radius:24px}
.modal{border-radius:28px;border:1px solid var(--dash-line)}

@media(max-width:1080px){
  .auth-layout{grid-template-columns:1fr}
  .auth-stage-grid{grid-template-columns:1fr}
  .dashboard-shell{grid-template-columns:94px 1fr}
  .side-brand-copy,.side-intro,.side-link .label,.side-bottom .label{display:none}
  .side-link{justify-content:center;padding:12px 8px}
}
@media(max-width:760px){
  .auth-page{padding:18px}
  .auth-stage-inner,.auth-card{padding:24px}
  .auth-stage-title{font-size:clamp(1.9rem,8vw,3rem)}
  .dashboard-shell{display:block}
  .dashboard-main{padding:10px 10px 78px}
  .dash-topbar{top:10px;padding:16px 16px;border-radius:20px;min-height:unset}
  .dash-title{font-size:1.35rem}
  .dash-content{padding-top:12px}
  .metric-grid{grid-template-columns:1fr 1fr;gap:10px}
  .metric,.panel{border-radius:20px}
  .portal-welcome{padding:22px;border-radius:22px}
  .summary-item,.calendar-item,.plan-view-day,.application-access,.workflow-card{border-radius:18px}
}
@media(max-width:520px){
  .auth-copy h2{font-size:1.7rem}
  .auth-stage-title{font-size:1.75rem}
  .demo-creds{flex-direction:column}
  .metric-grid{grid-template-columns:1fr}
}


/* =========================================================
   V32 — requested structural refinements
   ========================================================= */

/* Center dashboard top action labels precisely. */
.dash-actions .mini-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1;
}

/* Public brand logo: more visible while preserving header balance. */
.brand-logo,
.brand-logo img{
  max-width:116px !important;
  max-height:48px !important;
}
.brand-logo img{width:auto;height:auto;object-fit:contain}
@media(max-width:1080px){
  .brand-logo,.brand-logo img{max-width:96px !important;max-height:42px !important}
}
@media(max-width:760px){
  .brand-logo,.brand-logo img{max-width:78px !important;max-height:36px !important}
}
@media(max-width:520px){
  .brand-logo,.brand-logo img{max-width:66px !important;max-height:32px !important}
}

/* Formation certificates: 3 visible, horizontal carousel prepared for more. */
.credential-head-side{display:grid;gap:18px;align-items:end}
.credential-nav{display:flex;justify-content:flex-end;gap:8px}
.credential-nav button{
  width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);
  background:rgba(255,255,255,.035);color:#f3f5f7;font-size:1rem;display:grid;place-items:center;
  transition:.22s;
}
.credential-nav button:hover{border-color:rgba(255,122,46,.45);background:rgba(255,122,46,.08);transform:translateY(-1px)}
.credential-carousel{overflow:hidden}
.credential-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 28px)/3);
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding-bottom:3px;
}
.credential-track::-webkit-scrollbar{display:none}
.credential-track .credential-item{scroll-snap-align:start;margin:0;min-width:0}
@media(max-width:900px){.credential-track{grid-auto-columns:calc((100% - 14px)/2)}}
@media(max-width:560px){.credential-track{grid-auto-columns:88%}.credential-nav{justify-content:flex-start}}

/* Week-based plan builder. */
.plan-structure-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px}
.plan-structure-head h3{margin:0;font-size:1.08rem}
.plan-structure-head p{margin:5px 0 0;color:#7f8d9b;font-size:.76rem}
.week-tabs,.portal-week-tabs{
  display:flex;gap:8px;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:none;
}
.week-tabs::-webkit-scrollbar,.portal-week-tabs::-webkit-scrollbar{display:none}
.week-tab{
  flex:none;min-height:40px;padding:0 15px;border-radius:14px;border:1px solid var(--dash-line);
  background:#0b141f;color:#93a0ac;font-size:.72rem;font-weight:800;letter-spacing:.04em;transition:.2s;
}
.week-tab:hover{color:#fff;border-color:rgba(255,122,46,.26)}
.week-tab.active{color:#fff;background:linear-gradient(135deg,rgba(255,122,46,.18),rgba(73,123,201,.09));border-color:rgba(255,122,46,.34);box-shadow:0 10px 24px rgba(0,0,0,.16)}
.plan-weeks{display:block}
.week-panel,.portal-week-panel{display:none}
.week-panel.active,.portal-week-panel.active{display:block}
.week-panel{
  border:1px solid var(--dash-line);border-radius:24px;padding:18px;background:linear-gradient(180deg,rgba(11,20,30,.86),rgba(8,15,23,.78));
}
.week-panel-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--dash-line)}
.week-title-input{display:block;margin-top:5px;max-width:360px;border:0;background:transparent;color:#fff;font-size:1.25rem;font-weight:750;letter-spacing:-.03em;outline:none;padding:0}
.plan-builder{display:grid;gap:16px}
.day-card{border-radius:22px !important;border:1px solid var(--dash-line)!important;background:linear-gradient(180deg,#0d1722,#0a121b)!important;overflow:hidden}
.day-head{padding:15px 17px!important;background:linear-gradient(180deg,#111d2a,#0e1824)!important;border-bottom:1px solid var(--dash-line)}
.day-head>div:first-child{display:grid;gap:4px;min-width:0;flex:1}
.day-index{font-size:.58rem;font-weight:800;letter-spacing:.14em;color:#ff9a63}
.day-title-input{width:min(100%,460px)!important;font-size:1rem!important}
.training-block{padding:16px 16px 5px}
.training-block + .training-block{border-top:1px solid var(--dash-line);margin-top:8px}
.warmup-block{background:linear-gradient(180deg,rgba(226,184,111,.035),transparent)}
.training-block-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:10px}
.training-block-head p{margin:4px 0 0;color:#71808e;font-size:.72rem}
.exercise-table{min-width:1080px}
.exercise-table th{color:#82909d!important;background:#08111a!important}
.exercise-table td{border-bottom:1px solid rgba(195,214,235,.055)!important}
.exercise-table input{border-radius:10px!important;padding:9px 10px!important}
.plan-save-row{display:flex;justify-content:flex-end;margin-top:20px}

/* Portal: week-by-week plan with warm-up clearly separated. */
.portal-plan-panel{overflow:hidden}
.portal-week-tabs{margin:4px 0 14px}
.portal-week-panel{animation:fadePlanWeek .2s ease}
@keyframes fadePlanWeek{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
.portal-week-heading{display:flex;align-items:baseline;gap:14px;padding:9px 2px 14px}
.portal-week-heading h3{margin:0;font-size:1.2rem}
.plan-view-day{padding-bottom:6px}
.plan-view-day>h3{border-bottom:1px solid var(--dash-line)}
.plan-block{padding:13px 14px 4px}
.plan-block + .plan-block{border-top:1px solid var(--dash-line);margin-top:8px}
.plan-block-label{font-size:.62rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#ff9a63;margin-bottom:9px}
.plan-view-table{min-width:900px}

@media(max-width:760px){
  .plan-structure-head,.week-panel-head,.training-block-head{align-items:stretch;flex-direction:column}
  .week-panel{padding:12px;border-radius:18px}
  .training-block{padding:13px 10px 4px}
  .credential-head-side{gap:12px}
}

/* =========================================================
   V34 — certificate documents + clean planning workspace
   Single coherent override block (replaces duplicated V33 rules)
   ========================================================= */

/* ---------- Formation / certifications ---------- */
.credential-section{overflow:visible}
.credential-head-side{display:grid;gap:14px;align-items:end}
.credential-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:2px}
.credential-nav-rule{display:none}
.credential-nav .credential-nav-btn{
  width:auto !important;min-width:104px;height:38px !important;padding:0 13px !important;
  border:1px solid rgba(255,255,255,.11) !important;border-radius:12px !important;
  background:rgba(255,255,255,.018) !important;color:#aeb5bc !important;
  display:inline-flex !important;align-items:center;justify-content:center;gap:9px;
  font-size:.66rem !important;font-weight:750;letter-spacing:.09em;text-transform:uppercase;
  box-shadow:none !important;position:relative;
  transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease;
}
.credential-nav .credential-nav-btn:before,.credential-nav .credential-nav-btn:after{display:none !important;content:none !important}
.credential-nav .credential-nav-btn:hover{color:#ffad7f !important;border-color:rgba(255,122,46,.28) !important;background:rgba(255,122,46,.045) !important;transform:translateY(-1px)}
.credential-nav-arrow{color:var(--accent-hot);font-size:.92rem;line-height:1;transition:transform .2s ease}
.credential-nav-btn:first-child:hover .credential-nav-arrow{transform:translateX(-3px)}
.credential-nav-btn:last-child:hover .credential-nav-arrow{transform:translateX(3px)}

.credential-carousel{overflow:hidden;margin-top:4px;padding:3px 0 10px}
.credential-track{
  display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;
  overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  scrollbar-width:none;padding:3px 2px 10px;
}
.credential-track::-webkit-scrollbar{display:none}
.credential-track .credential-item{
  scroll-snap-align:start;min-width:0;min-height:0 !important;margin:0;padding-top:13px;
  border:0 !important;border-top:1px solid rgba(255,255,255,.14) !important;
  background:transparent !important;transform:none !important;opacity:1 !important;
}
.credential-image,.credential-placeholder{
  width:100%;height:auto !important;aspect-ratio:1.55 / 1;
  border:1px solid rgba(255,255,255,.09) !important;border-radius:18px !important;
  background:linear-gradient(145deg,#101820,#080d12) !important;overflow:hidden;
  display:grid;place-items:center;position:relative;
}
.credential-image{padding:0;cursor:default !important}
.credential-image:before{display:none !important;content:none !important}
.credential-image img{
  width:100% !important;height:100% !important;max-width:none;max-height:none;
  object-fit:cover !important;object-position:center !important;filter:none !important;opacity:1 !important;
  transform:none !important;box-shadow:none !important;transition:filter .2s ease !important;
}
.credential-image:hover img{width:100% !important;height:100% !important;transform:none !important;filter:brightness(.92) !important;box-shadow:none !important}
.credential-item>div:last-child{padding:12px 2px 3px !important}
.credential-item h3{margin:5px 0 0;font-size:.92rem;line-height:1.3}
.credential-placeholder span{font-size:4rem}

/* Full document preview appears only while hovering; no click, zoom cursor or blurry transform. */
.certificate-hover-preview{
  position:fixed;left:50%;top:50%;z-index:10050;
  width:min(66vw,900px);height:min(76vh,690px);padding:18px;
  display:grid;place-items:center;pointer-events:none;
  border:1px solid rgba(255,255,255,.16);border-radius:24px;
  background:rgba(6,10,15,.96);box-shadow:0 40px 120px rgba(0,0,0,.72);
  backdrop-filter:blur(18px);opacity:0;visibility:hidden;
  transform:translate(-50%,-48%) scale(.985);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
.certificate-hover-preview.visible{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}
.certificate-hover-preview img{width:100%;height:100%;object-fit:contain;object-position:center;filter:none;image-rendering:auto}

/* Management panel: compact landscape preview while preserving the source file. */
.certificate-media-preview{height:190px !important;padding:10px;background:#0a1016 !important;border-radius:16px !important}
.certificate-media-preview img{width:100% !important;height:100% !important;object-fit:contain !important;object-position:center !important}

/* ---------- Planning modal / week-day structure ---------- */
.modal.plan-modal{
  width:min(98vw,1700px) !important;
  max-width:1700px !important;
  max-height:95vh !important;
  padding:30px 32px 34px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  border-radius:30px !important;
  border:1px solid var(--dash-line) !important;
  background:linear-gradient(180deg,#08111a,#070e16) !important;
}
.plan-modal .modal-head{
  position:sticky;
  top:-30px;
  z-index:20;
  margin:-30px -32px 24px;
  padding:24px 32px 18px;
  background:linear-gradient(180deg,rgba(8,15,23,.99),rgba(8,15,23,.96));
  border-bottom:1px solid var(--dash-line);
  backdrop-filter:blur(18px);
}
.plan-modal #plan-editor{width:100%;max-width:none}
.plan-modal .plan-structure-head{margin-top:2px}
.plan-modal .week-tabs{padding:3px 1px 13px;margin-bottom:3px}
.plan-modal .week-panel{
  padding:20px;
  border:1px solid rgba(195,214,235,.11) !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,rgba(12,22,33,.94),rgba(8,16,25,.9)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
  overflow:hidden;
}
.plan-modal .week-panel-head{
  margin:0 0 18px;
  padding:0 0 16px;
  border-bottom:1px solid rgba(195,214,235,.1);
}
.plan-modal .week-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.plan-modal .remove-week-btn{border-color:rgba(220,119,119,.18) !important;background:rgba(220,119,119,.035) !important;color:#d98d8d !important}
.plan-modal .remove-week-btn:hover{border-color:rgba(220,119,119,.34) !important;background:rgba(220,119,119,.075) !important;color:#ffaaaa !important}
.plan-modal .plan-builder{display:grid;gap:18px}
.plan-modal .day-card{
  margin:0;
  border:1px solid rgba(195,214,235,.12) !important;
  border-radius:20px !important;
  background:#0a131d !important;
  overflow:hidden !important;
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
.plan-modal .day-head{
  margin:0;
  padding:15px 18px !important;
  background:linear-gradient(180deg,#111d2a,#0e1824) !important;
  border:0 !important;
  border-bottom:1px solid rgba(195,214,235,.1) !important;
}
.plan-modal .training-block{
  margin:0 !important;
  padding:18px !important;
  border:0 !important;
  background:transparent;
}
.plan-modal .warmup-block{
  background:linear-gradient(180deg,rgba(226,184,111,.028),rgba(226,184,111,.008));
}
.plan-modal .training-block + .training-block{
  margin:0 !important;
  border-top:1px solid rgba(195,214,235,.1) !important;
}
.plan-modal .training-block-head{
  margin:0 0 12px;
  padding:0;
}
.plan-modal .table-wrap{
  width:100%;
  overflow:hidden !important;
  border:1px solid rgba(195,214,235,.09);
  border-radius:14px;
  background:#071019;
}
.plan-modal .exercise-table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.plan-modal .exercise-table th,
.plan-modal .exercise-table td{
  min-width:0 !important;
  border-left:0 !important;
  border-right:0 !important;
}
.plan-modal .exercise-table th{
  padding:9px 7px !important;
  border-top:0 !important;
  border-bottom:1px solid rgba(195,214,235,.08) !important;
  background:#08111a !important;
}
.plan-modal .exercise-table td{
  padding:7px 5px !important;
  border-bottom:1px solid rgba(195,214,235,.055) !important;
  background:#0a131d;
}
.plan-modal .exercise-table tbody tr:last-child td{border-bottom:0 !important}
.plan-modal .exercise-table th:nth-child(1),
.plan-modal .exercise-table td:nth-child(1){width:18%}
.plan-modal .exercise-table th:nth-child(2),
.plan-modal .exercise-table td:nth-child(2){width:7%}
.plan-modal .exercise-table th:nth-child(3),
.plan-modal .exercise-table td:nth-child(3){width:8%}
.plan-modal .exercise-table th:nth-child(4),
.plan-modal .exercise-table td:nth-child(4){width:9%}
.plan-modal .exercise-table th:nth-child(5),
.plan-modal .exercise-table td:nth-child(5){width:9%}
.plan-modal .exercise-table th:nth-child(6),
.plan-modal .exercise-table td:nth-child(6){width:24%}
.plan-modal .exercise-table th:nth-child(7),
.plan-modal .exercise-table td:nth-child(7){width:20%}
.plan-modal .exercise-table th:nth-child(8),
.plan-modal .exercise-table td:nth-child(8){width:5%}
.plan-modal .exercise-table input,
.plan-modal .exercise-table .w-name,
.plan-modal .exercise-table .w-note{
  width:100% !important;
  min-width:0 !important;
  padding:9px 9px !important;
  border-radius:9px !important;
  font-size:.74rem !important;
}
.plan-modal .exercise-table td:last-child{text-align:center}
.plan-modal .exercise-table td:last-child .link-btn{
  width:30px;
  height:30px;
  padding:0;
  display:inline-grid;
  place-items:center;
  border-radius:9px;
  background:rgba(255,255,255,.035);
}
.plan-modal .plan-save-row{padding-top:2px}

/* Below desktop width, switch the exercise row itself to a clean card layout.
   This avoids reintroducing a nested horizontal scrollbar. */
@media(max-width:1180px){
  .modal.plan-modal{
    width:98vw !important;
    padding:26px 22px 30px !important;
  }
  .plan-modal .modal-head{top:-26px;margin:-26px -22px 22px;padding:20px 22px 16px}
  .plan-modal .exercise-table,
  .plan-modal .exercise-table tbody,
  .plan-modal .exercise-table tr{display:block;width:100%}
  .plan-modal .exercise-table thead{display:none}
  .plan-modal .table-wrap{border:0;background:transparent;overflow:visible !important}
  .plan-modal .exercise-table tr{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 12px;
    padding:14px;
    margin:0 0 10px;
    border:1px solid rgba(195,214,235,.09);
    border-radius:16px;
    background:#0a131d;
  }
  .plan-modal .exercise-table tr:last-child{margin-bottom:0}
  .plan-modal .exercise-table td{
    width:auto !important;
    padding:0 !important;
    border:0 !important;
    background:transparent;
  }
  .plan-modal .exercise-table td::before{
    display:block;
    margin:0 0 5px;
    color:#7f8d9a;
    font-size:.58rem;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
  }
  .plan-modal .exercise-table td:nth-child(1)::before{content:'Ejercicio'}
  .plan-modal .exercise-table td:nth-child(2)::before{content:'Series'}
  .plan-modal .exercise-table td:nth-child(3)::before{content:'Reps'}
  .plan-modal .exercise-table td:nth-child(4)::before{content:'Descanso'}
  .plan-modal .exercise-table td:nth-child(5)::before{content:'Porcentaje'}
  .plan-modal .exercise-table td:nth-child(6)::before{content:'Indicaciones'}
  .plan-modal .exercise-table td:nth-child(7)::before{content:'Video'}
  .plan-modal .exercise-table td:nth-child(8){display:flex;align-items:flex-end;justify-content:flex-end}
  .plan-modal .exercise-table td:nth-child(1),
  .plan-modal .exercise-table td:nth-child(6),
  .plan-modal .exercise-table td:nth-child(7){grid-column:1/-1}
}

@media(max-width:900px){
  .credential-track{grid-auto-columns:calc((100% - 16px)/2)}
  .credential-image,.credential-placeholder{aspect-ratio:1.48 / 1}
}
@media(max-width:760px){
  .credential-nav{justify-content:flex-start}
  .credential-nav .credential-nav-btn{min-width:100px}
  .credential-track{grid-auto-columns:88%}
  .credential-image{padding:0}
  .modal.plan-modal{
    width:100% !important;
    max-height:96vh !important;
    padding:20px 14px 24px !important;
    border-radius:20px !important;
  }
  .plan-modal .modal-head{top:-20px;margin:-20px -14px 18px;padding:18px 14px 14px}
  .plan-modal .week-panel{padding:13px;border-radius:18px !important}
  .plan-modal .training-block{padding:13px !important}
  .plan-modal .exercise-table tr{grid-template-columns:1fr}
  .plan-modal .exercise-table td{grid-column:auto !important}
}

@media(hover:none),(max-width:760px){
  .certificate-hover-preview{display:none !important}
}
@media(max-width:760px){
  .plan-modal .week-panel-actions{width:100%;justify-content:flex-start}
}


/* =========================================================
   V36 — automatic image adaptation by visual slot
   ========================================================= */
.media-auto-panel{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  gap:28px;
  align-items:center;
  background:
    radial-gradient(circle at 88% 15%,rgba(255,122,46,.09),transparent 26%),
    linear-gradient(145deg,#0d1722,#0a121b) !important;
}
.media-auto-panel h3{margin:8px 0 7px;font-size:1.12rem;letter-spacing:-.025em}
.media-auto-panel p{margin:0;max-width:720px;color:#8e9aa6;font-size:.8rem;line-height:1.7}
.media-auto-points{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.media-auto-points span{
  min-height:42px;display:flex;align-items:center;padding:0 12px;border-radius:14px;
  border:1px solid rgba(195,214,235,.09);background:rgba(255,255,255,.025);
  color:#aeb9c4;font-size:.69rem;line-height:1.4;
}
.media-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}
.media-card-title-row>b{min-width:0}
.media-auto-badge{
  flex:none;display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;
  border:1px solid rgba(121,185,152,.2);background:rgba(121,185,152,.055);
  color:#8bc8a7;font-size:.55rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
}
.media-format-hint{margin-top:5px;color:#71808f;font-size:.64rem;line-height:1.45}
@media(max-width:900px){
  .media-auto-panel{grid-template-columns:1fr}
}
@media(max-width:560px){
  .media-auto-points{grid-template-columns:1fr}
  .media-card-title-row{align-items:flex-start;flex-direction:column}
}

/* =========================================================
   V37 — non-destructive image storage + editable framing
   ========================================================= */
.smart-media-img{
  object-fit:var(--img-fit,cover) !important;
  object-position:var(--img-pos,50% 50%) !important;
}

/* Background-based visual slots now respect the same fit/position controls. */
.premium-hero.has-page-bg,
.premium-page-hero.has-page-bg{
  background-size:cover,var(--img-fit,cover) !important;
  background-position:center,var(--img-pos,50% 50%) !important;
  background-repeat:no-repeat,no-repeat !important;
}
.service-preview.has-image .service-preview-bg,
.service-preview:nth-child(2).has-image .service-preview-bg{
  background-size:cover,var(--img-fit,cover) !important;
  background-position:center,var(--img-pos,50% 50%) !important;
  background-repeat:no-repeat,no-repeat !important;
}
.service-detail-hero.has-image .service-detail-bg{
  background-size:cover,var(--img-fit,cover) !important;
  background-position:center,var(--img-pos,50% 50%) !important;
  background-repeat:no-repeat,no-repeat !important;
}

/* When the user asks to show the whole photo, keep the surrounding surface intentional. */
.hero-media.has-image,
.about-media.has-image,
.discipline-visual.has-image,
.progress-card{
  background:linear-gradient(145deg,#09111a,#05090e) !important;
}

.media-framing-controls{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(195,214,235,.09);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}
.media-framing-controls .field{margin:0}
.media-framing-controls select{
  width:100%;
  border-radius:12px !important;
  background:#08111a !important;
  border:1px solid rgba(195,214,235,.12) !important;
}
.media-position-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.media-position-grid label{
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px 10px;
  align-items:center;
  color:#9eabb8;
  font-size:.68rem;
  font-weight:700;
}
.media-position-grid output{
  color:#ff9a63;
  font-size:.64rem;
  font-variant-numeric:tabular-nums;
}
.media-position-grid input[type="range"]{
  grid-column:1/-1;
  width:100%;
  accent-color:#ff7a2e;
  cursor:pointer;
}
.media-framing-actions{
  display:flex;
  gap:8px;
  margin-top:13px;
  flex-wrap:wrap;
}
.media-preview.framing-preview{
  background:
    linear-gradient(135deg,rgba(73,123,201,.06),rgba(255,122,46,.045)),
    #05090e;
}
.media-preview.framing-preview img{
  transition:object-position .16s ease, filter .16s ease;
}
.media-format-hint{
  color:#7d8b98 !important;
}

@media(max-width:700px){
  .media-position-grid{grid-template-columns:1fr}
}

/* V39 - backend status */
.production-box p{margin:8px 0 0;line-height:1.55;color:#98a6b4}
.connection-error{border-color:rgba(220,119,119,.35)!important;background:rgba(220,119,119,.06)!important}
.connection-error b{color:#f1b0b0!important}

/* V40 - SEO + campaign settings inside management panel */
.seo-page-settings{display:grid;gap:14px;margin:20px 0}
.seo-page-row{border:1px solid var(--dash-line);background:linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.012));border-radius:20px;padding:16px}
.seo-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.seo-page-head>div{display:flex;align-items:center;gap:12px;min-width:0}
.seo-page-head small{color:#748291;font-size:.72rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.seo-page-row textarea{min-height:86px}
.tracking-events{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}
.tracking-events span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid rgba(255,139,71,.18);background:rgba(255,106,26,.055);border-radius:999px;color:#d7dee6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.69rem}
.admin-form code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#d7dee6;background:#0b131d;padding:2px 6px;border-radius:6px}
@media(max-width:760px){.seo-page-head{align-items:flex-start;flex-direction:column}.seo-page-head>div{align-items:flex-start;flex-direction:column;gap:4px}}

/* =========================================================
   V42 — production responsive system + PWA ergonomics
   Final cross-device normalization layer
   ========================================================= */

/* Safer wrapping/min-width rules across every layout. */
.public-main *,
.dashboard-shell *,
.auth-page *{min-width:0}
.public-main h1,.public-main h2,.public-main h3,.public-main p,
.dashboard-shell h1,.dashboard-shell h2,.dashboard-shell h3,.dashboard-shell p,
.auth-page h1,.auth-page h2,.auth-page h3,.auth-page p{overflow-wrap:break-word}
.btn,.mini-btn,.header-cta,.client-access,.mobile-nav,.service-return-link{white-space:normal;text-align:center}
.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
img,iframe,video{max-width:100%}

/* PWA install actions remain invisible until the browser says installation is possible. */
.pwa-install-action[hidden],.pwa-install-mini[hidden]{display:none!important}
.pwa-install-action{
  width:100%;min-height:46px;margin-top:0;padding:0 16px;border:1px solid rgba(195,214,235,.14);
  border-radius:16px;background:linear-gradient(180deg,#0d1722,#0a131d);color:#dce5ec;
  display:flex;align-items:center;justify-content:center;gap:10px;font-size:.75rem;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;transition:.2s ease;
}
.pwa-install-action:hover{border-color:rgba(255,122,46,.3);color:#fff;background:linear-gradient(180deg,#111d29,#0d1722)}
.pwa-install-icon{color:#ff9a63;font-size:1rem;line-height:1}
.pwa-install-mini{display:inline-flex!important;align-items:center;justify-content:center}

/* Prevent accidental full-page horizontal drift. */
html,body{max-width:100%;overflow-x:hidden}
.public-shell,.public-main,.dashboard-shell,.auth-page{max-width:100vw}

@media(max-width:1080px){
  /* Grid/flex blocks must collapse without forcing children outside viewport. */
  .grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head,.video-intro-grid,.coach-grid,.progress-layout,.detail-value-grid,.contact-grid,.form-shell{min-width:0}
  .auth-layout{width:min(100%,860px)}
}

@media(max-width:840px){
  /* Public navigation */
  .site-header{height:var(--header)}
  .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:12px}
  .brand{max-width:calc(100vw - 116px);overflow:hidden}
  .brand-lockup{max-width:100%}
  .header-actions{gap:6px}
  .mobile-toggle{flex:none;border-radius:12px}
  .mobile-menu{overflow-y:auto;overscroll-behavior:contain}
  .mobile-menu-inner{width:min(100%,680px);margin:0 auto;padding:38px 24px 42px}
  .mobile-nav{align-items:center;gap:18px}

  /* Public content remains centered in the available canvas, not pinned to either edge. */
  .public-main .hero-copy,
  .public-main .page-hero-grid>div:first-child,
  .public-main .service-detail-grid>div:first-child,
  .public-main .video-intro-copy,
  .public-main .coach-copy,
  .public-main .progress-copy,
  .public-main .decision-intro,
  .public-main .form-aside,
  .public-main .contact-panel{
    width:100%;max-width:680px;margin-left:auto;margin-right:auto;
  }
  .public-main .section-head{width:100%;max-width:760px;margin-left:auto;margin-right:auto}
  .hero-media,.about-media,.progress-mosaic,.video-frame,.credential-carousel,.service-preview-list{width:100%;max-width:100%}

  /* Login screens */
  .auth-layout{grid-template-columns:1fr;gap:16px;width:min(100%,700px)}
  .auth-stage,.auth-card{border-radius:26px}
  .auth-stage-inner{padding:34px}
  .auth-card{padding:30px}
  .auth-stage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .auth-highlight{padding:16px 14px;border-radius:18px}
}

@media(max-width:760px){
  /* Universal mobile spacing */
  .container,.narrow{width:min(calc(100% - 30px),var(--max))!important}
  .section{padding:46px 0!important}

  /* Mobile public typography and narrative alignment */
  .public-main .hero-copy,
  .public-main .page-hero-grid>div:first-child,
  .public-main .service-detail-grid>div:first-child,
  .public-main .video-intro-copy,
  .public-main .section-head,
  .public-main .coach-copy,
  .public-main .progress-copy,
  .public-main .decision-intro,
  .public-main .form-aside,
  .public-main .contact-panel,
  .public-main .final-cta-inner,
  .footer-statement{text-align:center}

  .public-main .eyebrow,
  .public-main .hero-overline{justify-content:center}
  .public-main .hero-copy .lead,
  .public-main .page-hero-grid .lead,
  .public-main .service-detail-grid .lead,
  .public-main .video-intro-copy .lead,
  .public-main .section-head .lead,
  .public-main .coach-copy .lead,
  .public-main .progress-copy .lead,
  .public-main .decision-intro .lead,
  .public-main .form-aside .lead,
  .public-main .contact-panel .lead,
  .public-main .copy{margin-left:auto;margin-right:auto}

  .hero-actions,.service-detail-actions,.center-action,.micro-proof{justify-content:center}
  .hero-principles{margin-left:auto;margin-right:auto;text-align:center}
  .hero-principles span{display:flex;justify-content:center;align-items:center}
  .hero-media{margin-left:0!important;margin-right:0!important;border-radius:0 28px 0 28px;overflow:hidden}

  .page-hero-grid,.service-detail-grid{justify-items:center;text-align:center}
  .hero-side-code{justify-content:center;margin-left:auto;margin-right:auto}
  .service-detail-note{margin-left:auto;margin-right:auto;text-align:left}

  /* Keep editorial lists readable while centering the section as a whole. */
  .pillars-editorial,.principle-list,.decision-lines,.detail-feature-list,.process-rail{width:100%;max-width:680px;margin-left:auto;margin-right:auto;text-align:left}
  .pillar-line{grid-template-columns:42px minmax(0,1fr)!important}
  .pillar-line h3,.pillar-line p{text-align:left}
  .process-step{text-align:center}
  .process-step p{max-width:520px;margin-left:auto;margin-right:auto}

  .about-media,.progress-mosaic,.discipline-stage,.credential-carousel,.service-preview-list,.video-frame{margin-left:auto;margin-right:auto}
  .discipline-stage{width:100%}
  .credential-head{text-align:center}
  .credential-head-side{justify-items:center}
  .credential-nav{justify-content:center!important}

  /* Forms: headings may be centered, controls remain left-aligned for usability. */
  .form-card,.contact-form{text-align:left}
  .form-card .field,.contact-form .field{text-align:left}
  .form-card .form-intro{text-align:center}
  .form-card .form-intro p{margin-left:auto;margin-right:auto}
  .application-section .form-shell{gap:24px}
  .investment-panel{text-align:left;margin-left:auto;margin-right:auto;width:100%;max-width:520px}

  /* Footer */
  .footer-top{justify-items:center;text-align:center}
  .footer-columns{width:100%;max-width:520px;margin-left:auto;margin-right:auto}
  .footer-links{align-items:center}
  .social-list{align-items:center}
  .footer-bottom{text-align:center;align-items:center}

  /* Auth */
  .auth-page{padding:16px}
  .auth-layout{width:100%;gap:12px}
  .auth-stage,.auth-card{border-radius:22px}
  .auth-stage-inner{padding:24px 22px}
  .auth-card{padding:24px 22px}
  .auth-stage{text-align:center}
  .auth-stage .eyebrow{justify-content:center}
  .auth-stage-title,.auth-stage-copy{margin-left:auto;margin-right:auto}
  .auth-stage-grid{grid-template-columns:1fr;gap:9px;margin-top:22px}
  .auth-highlight{text-align:left;display:grid;grid-template-columns:auto 1fr;gap:0 12px;align-items:start}
  .auth-highlight span{grid-row:1/3}
  .auth-highlight h3{margin:2px 0 5px}
  .auth-highlight p{grid-column:2}
  .auth-logo{justify-content:center;text-align:left}
  .auth-copy{text-align:center}
  .auth-copy p{margin-left:auto;margin-right:auto}

  /* Dashboard / portal mobile shell */
  .dashboard-shell{display:block!important;min-height:100svh}
  .dashboard-main{padding:10px 10px calc(86px + env(safe-area-inset-bottom))!important}
  .dash-topbar{top:10px;min-height:0!important;padding:14px!important;border-radius:20px;gap:12px}
  .dash-heading{min-width:0;flex:1}
  .dash-title{font-size:1.28rem!important;line-height:1.1}
  .dash-context{font-size:.56rem;padding:5px 8px}
  .dash-actions{flex:none;gap:6px;align-self:flex-start}
  .dash-actions .status{display:none}
  .dash-actions .mini-btn{min-height:36px;height:auto;padding:7px 10px;font-size:.65rem}
  .dash-content{padding:12px 0 0!important}
  .sidebar{
    position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;
    width:auto!important;height:calc(64px + env(safe-area-inset-bottom))!important;z-index:90!important;
    padding:7px 7px env(safe-area-inset-bottom)!important;border:1px solid var(--dash-line)!important;
    border-radius:20px!important;background:rgba(7,14,22,.96)!important;backdrop-filter:blur(18px)!important;
    box-shadow:0 18px 50px rgba(0,0,0,.42)!important;
  }
  .side-brand,.side-intro,.side-bottom{display:none!important}
  .side-nav{height:50px;display:flex!important;align-items:center;gap:4px;margin:0!important;padding:0!important;overflow-x:auto;scrollbar-width:none}
  .side-nav::-webkit-scrollbar{display:none}
  .side-link{min-width:64px!important;height:50px!important;padding:5px 7px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;border-radius:14px!important;text-align:center!important;transform:none!important}
  .side-link .side-icon{width:23px!important;height:23px!important;border-radius:8px!important;font-size:.68rem!important}
  .side-link .label{display:block!important;font-size:.49rem!important;line-height:1!important;white-space:nowrap!important}
  .metric-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important;gap:10px!important}
  .metric,.panel{border-radius:20px!important;padding:16px!important}
  .panel-head{align-items:flex-start;gap:12px;flex-wrap:wrap}
  .panel-head>div{min-width:0;flex:1 1 220px}
  .panel-head>.mini-btn{flex:none}
  .media-grid{grid-template-columns:1fr!important}
  .portal-welcome{grid-template-columns:1fr!important;padding:20px!important;border-radius:22px!important;text-align:center}
  .portal-welcome p{margin-left:auto;margin-right:auto}
  .portal-summary{grid-template-columns:1fr!important}
  .summary-item{text-align:left}
  .calendar-item{grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important}
  .calendar-item .status{grid-column:2}
  .bar-row{grid-template-columns:84px minmax(0,1fr) 30px!important;gap:8px!important}
  .toast{left:14px;right:14px;bottom:calc(84px + env(safe-area-inset-bottom));text-align:center;border-radius:14px}

  /* Client workout tables become cards instead of horizontal spreadsheets. */
  .portal-plan-panel .table-wrap{overflow:visible}
  .portal-plan-panel .plan-view-table,
  .portal-plan-panel .plan-view-table tbody,
  .portal-plan-panel .plan-view-table tr{display:block;width:100%;min-width:0!important}
  .portal-plan-panel .plan-view-table thead{display:none}
  .portal-plan-panel .plan-view-table tr{padding:13px;margin-bottom:10px;border:1px solid rgba(195,214,235,.09);border-radius:16px;background:#0a131d}
  .portal-plan-panel .plan-view-table td{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;width:100%!important;padding:7px 0!important;border:0!important;text-align:left}
  .portal-plan-panel .plan-view-table td::before{color:#7f8d9a;font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .portal-plan-panel .plan-view-table td:nth-child(1)::before{content:'Ejercicio'}
  .portal-plan-panel .plan-view-table td:nth-child(2)::before{content:'Series'}
  .portal-plan-panel .plan-view-table td:nth-child(3)::before{content:'Reps'}
  .portal-plan-panel .plan-view-table td:nth-child(4)::before{content:'Descanso'}
  .portal-plan-panel .plan-view-table td:nth-child(5)::before{content:'Porcentaje'}
  .portal-plan-panel .plan-view-table td:nth-child(6)::before{content:'Indicaciones'}
  .portal-plan-panel .plan-view-table td:nth-child(7)::before{content:'Video'}

  /* Modal fit */
  .modal-backdrop{padding:10px!important;align-items:flex-start!important;overflow-y:auto}
  .modal{width:min(100%,720px)!important;max-height:none!important;margin:auto!important;border-radius:20px!important}
  .modal-head{gap:12px}
  .modal-head h2{font-size:1.35rem;line-height:1.1}
  .close-btn{flex:none}
  .week-tabs,.portal-week-tabs{max-width:100%}
  .week-tab{min-height:38px;padding:0 12px}
}

@media(max-width:520px){
  .container,.narrow{width:min(calc(100% - 24px),var(--max))!important}
  .site-header .container{width:min(calc(100% - 20px),var(--max))!important}
  .brand-logo{max-width:54px!important;max-height:30px!important}
  .brand-logo img{max-width:54px!important;max-height:30px!important}
  .brand-word strong{font-size:.75rem!important}.brand-word span{font-size:.48rem!important}
  .client-access{width:36px!important;height:36px!important;padding:0!important;justify-content:center!important}
  .client-access span{display:none!important}
  .mobile-toggle{width:40px;height:38px}
  .mobile-menu-inner{padding:28px 18px 34px}
  .mobile-nav{font-size:clamp(1.55rem,8vw,2.15rem);padding:15px 0}

  .display{font-size:clamp(2.05rem,10.7vw,2.9rem)!important}
  .h1{font-size:clamp(1.95rem,9.8vw,2.7rem)!important}
  .h2{font-size:clamp(1.52rem,7.5vw,2.05rem)!important}
  .lead{font-size:.92rem!important;line-height:1.58!important}
  .hero-copy{padding:32px 0 24px!important}
  .hero-media{height:330px!important;min-height:330px!important}
  .hero-principles{grid-template-columns:1fr 1fr!important;gap:8px 12px!important}
  .hero-principles span{font-size:.6rem!important}
  .service-detail-actions{width:100%;flex-direction:column;align-items:stretch}
  .service-detail-actions>*{width:100%!important}
  .service-detail-note{width:100%;padding:18px!important}
  .service-preview-content{padding:18px!important}
  .credential-track{grid-auto-columns:92%!important}
  .credential-nav{width:100%;justify-content:center!important;flex-wrap:wrap}
  .credential-nav .credential-nav-btn{min-width:0!important;flex:1 1 120px}
  .form-card{padding:22px 16px!important}
  .fields{grid-template-columns:1fr!important}
  .field.full{grid-column:auto!important}
  .footer-columns{grid-template-columns:1fr!important}

  .auth-page{padding:10px}
  .auth-stage-inner,.auth-card{padding:20px 17px}
  .auth-stage-title{font-size:1.7rem!important}
  .auth-copy h2{font-size:1.55rem!important}
  .auth-highlight{padding:14px 12px}

  .dashboard-main{padding-left:8px!important;padding-right:8px!important}
  .dash-topbar{padding:12px!important}
  .dash-context{display:none}
  .dash-actions .pwa-install-mini{max-width:92px;line-height:1.05}
  .panel-head>.mini-btn{width:100%}
  .data-table{min-width:620px}
  .portal-plan-panel .plan-view-table td{grid-template-columns:82px minmax(0,1fr)}
  .modal.plan-modal{padding:18px 10px 22px!important;border-radius:18px!important}
  .plan-modal .modal-head{margin:-18px -10px 16px!important;padding:16px 10px 13px!important;top:-18px!important}
  .plan-modal .week-panel{padding:10px!important}
  .plan-modal .training-block{padding:10px!important}
}

/* Safe-area behavior for installed PWA / notched devices. */
@supports(padding:max(0px)){
  @media(display-mode:standalone){
    body{min-height:100svh}
    .site-header{padding-top:env(safe-area-inset-top);height:calc(var(--header) + env(safe-area-inset-top))}
    .mobile-menu{top:calc(var(--header) + env(safe-area-inset-top))}
    .auth-page{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}
  }
}

/* V42 final mobile refinements found during visual QA. */
@media(max-width:760px){
  .detail-value-grid>div:first-child{
    justify-items:center!important;
    text-align:center!important;
    align-self:auto!important;
    width:100%!important;
  }
  .detail-value-grid>div:first-child .eyebrow{justify-self:center!important}
  .service-value-title,
  .service-value-title--hybrid,
  .service-value-title--integral{
    width:100%!important;
    max-width:680px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .service-value-title .line-1,
  .service-value-title .line-2{white-space:normal!important}

  /* On phones the action comes first: clients/admins should not have to scroll to log in. */
  .auth-card{order:1}
  .auth-stage{order:2}
}
