/* Shared multi-page platform system. Kept separate so the motion homepage remains easy to tune. */
.platform-page{background:#101010;color:#f5f5f2;min-height:100vh}.platform-page main{position:relative;isolation:isolate}.platform-page .page-main{overflow:hidden}.platform-page .skip{z-index:50}
.platform-page .page-hero{position:relative;min-height:560px;display:flex;align-items:flex-end;padding:95px 6% 80px;overflow:hidden;perspective:1300px;transform-style:preserve-3d;background:#111;border-bottom:1px solid #333}.platform-page .page-hero-media{position:absolute;inset:0 0 0 30%;z-index:-2;overflow:hidden}.platform-page .page-hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101010 0%,#101010cf 18%,#10101013 74%),linear-gradient(0deg,#101010 0%,transparent 42%)}.platform-page .page-hero-media img{width:100%;height:120%;object-fit:cover;object-position:60% center;filter:brightness(.62) saturate(.78);transform:translate3d(var(--hero-x,0px),var(--hero-shift,0px),0) scale(1.04);transition:transform .7s cubic-bezier(.2,.7,.2,1)}.platform-page .page-hero-copy{position:relative;z-index:2;max-width:820px;transform:translateZ(80px);transform-style:preserve-3d}.platform-page .page-hero h1{font-size:clamp(4rem,8vw,8rem);line-height:.88;font-style:italic;text-transform:uppercase}.platform-page .page-hero h1 .accent{color:var(--orange)}.platform-page .page-hero p:not(.eyebrow){max-width:570px;color:#c8c8c8;font-size:1.1rem;line-height:1.6}.platform-page .page-hero .eyebrow{display:flex;align-items:center;gap:12px;color:#ddd}.platform-page .page-hero .hero-rule{background:var(--orange)}.platform-page .page-hero-frame{position:absolute;inset:26px 4%;border:1px solid #ffffff33;z-index:1;transform:translateZ(110px) rotateX(1deg);pointer-events:none;box-shadow:inset 0 0 0 1px #0006}.platform-page .page-hero-frame:before{content:'';position:absolute;left:-1px;top:-1px;width:70px;height:70px;border-left:4px solid var(--orange);border-top:4px solid var(--orange)}.platform-page .page-hero-tag{position:absolute;right:6%;top:18%;z-index:3;background:var(--orange);color:#101010;padding:15px 18px;font-family:'Barlow Condensed',Arial,sans-serif;font-size:2.4rem;font-style:italic;font-weight:800;transform:translateZ(150px) rotateY(-17deg) rotateZ(-5deg);box-shadow:15px 18px 0 #0007}.platform-page .page-hero-tag small{display:block;font-family:Barlow,Arial,sans-serif;font-style:normal;font-size:.55rem;letter-spacing:.14em;line-height:1.4}.platform-page .page-hero-index{position:absolute;right:6%;bottom:45px;color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-size:2rem}.platform-page .page-hero-index small{font-family:Barlow,Arial,sans-serif;color:#aaa;font-size:.65rem;letter-spacing:.14em;margin-left:12px}
.platform-page .platform-section{padding:100px 6%;position:relative}.platform-page .platform-section.light{background:#f0f0ec;color:#111}.platform-page .platform-section.orange{background:var(--orange);color:#101010}.platform-page .platform-section.dark{background:#151515}.platform-page .section-lead{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px}.platform-page .section-lead h2{font-size:clamp(3rem,5vw,5.8rem);text-transform:uppercase}.platform-page .section-lead p{max-width:420px;color:#aaa;line-height:1.65;margin:0}.platform-page .light .section-lead p,.platform-page .orange .section-lead p{color:#484848}.platform-page .outline-text{color:transparent;-webkit-text-stroke:1px #999}.platform-page .orange .outline-text{color:transparent;-webkit-text-stroke-color:#111}
.platform-page .platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.platform-page .tilt-card{position:relative;min-height:250px;padding:28px;background:#1d1d1d;border:1px solid #3f3f3f;color:#f5f5f2;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateZ(var(--card-z,0px));transform-style:preserve-3d;transition:transform .3s ease,border-color .3s,box-shadow .3s;background-image:radial-gradient(280px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ff642827,transparent 68%);overflow:hidden}.platform-page .tilt-card:before{content:attr(data-number);position:absolute;right:-4px;bottom:-10px;font-family:'Barlow Condensed',Arial,sans-serif;font-style:italic;font-weight:800;font-size:9rem;line-height:.8;color:transparent;-webkit-text-stroke:1px #ffffff2c;transform:translateZ(16px)}.platform-page .tilt-card:after{content:'';position:absolute;inset:10px;border:1px solid #ffffff12;pointer-events:none;transform:translateZ(18px)}.platform-page .tilt-card:hover,.platform-page .tilt-card:focus-visible{--card-z:13px;border-color:var(--orange);box-shadow:0 26px 45px #0008}.platform-page .tilt-card>*{position:relative;z-index:1;transform:translateZ(28px)}.platform-page .tilt-card .card-kicker{font-size:.7rem;letter-spacing:.14em;color:#bbb;display:block;margin-bottom:60px}.platform-page .tilt-card h3{font-size:2.5rem;text-transform:uppercase;margin-bottom:10px}.platform-page .tilt-card p{color:#aaa;line-height:1.5;max-width:270px;margin:0}.platform-page .tilt-card .card-arrow{position:absolute;right:26px;top:22px;border:1px solid #777;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:1.35rem;transition:transform .3s,background .3s;color:#ddd}.platform-page .tilt-card:hover .card-arrow{background:var(--orange);color:#111;border-color:var(--orange);transform:rotate(45deg)}
.platform-page .pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#333}.platform-page .pillar{position:relative;min-height:330px;padding:34px;background:#181818;overflow:hidden;transform-style:preserve-3d}.platform-page .pillar:nth-child(2){background:#24201e}.platform-page .pillar:nth-child(3){background:#202329}.platform-page .pillar:before{content:'';position:absolute;right:-15px;bottom:-50px;width:210px;height:210px;border:1px solid #ffffff2b;border-radius:50%;transform:rotateX(67deg) rotateZ(-18deg) translateZ(40px)}.platform-page .pillar h3{font-size:3.4rem;text-transform:uppercase;margin:60px 0 15px}.platform-page .pillar p{max-width:280px;color:#aaa;line-height:1.55}.platform-page .pillar .pillar-number{color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-size:2rem;font-style:italic}.platform-page .pillar a{display:inline-flex;margin-top:20px;color:#fff;border-bottom:1px solid var(--orange);padding-bottom:7px}
.platform-page .service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.platform-page .service-card{position:relative;padding:32px;border:1px solid #3e3e3e;background:#1a1a1a;min-height:250px;overflow:hidden;transform-style:preserve-3d;transition:transform .35s,border-color .3s}.platform-page .service-card:hover{transform:perspective(900px) rotateX(2deg) rotateY(-2deg) translateZ(12px);border-color:var(--orange)}.platform-page .service-card h3{font-size:2.7rem;text-transform:uppercase;margin:45px 0 13px}.platform-page .service-card p{color:#aaa;line-height:1.55;max-width:440px}.platform-page .service-card .service-line{position:absolute;right:25px;top:25px;width:95px;height:1px;background:var(--orange);transform:rotate(-35deg);transform-origin:right}.platform-page .service-card ul{display:flex;flex-wrap:wrap;gap:7px;padding:0;list-style:none}.platform-page .service-card li{border:1px solid #515151;padding:7px 10px;font-size:.78rem;color:#ccc}
.platform-page .filter-row{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin:25px 0 35px;border-bottom:1px solid #444}.platform-page .filter-row button{background:none;color:#aaa;border:0;border-bottom:3px solid transparent;padding:14px 0;font-weight:600;min-height:50px}.platform-page .filter-row button.active{color:#fff;border-color:var(--orange)}.platform-page .search-field{background:#1b1b1b;color:#eee;border:1px solid #555;padding:14px 16px;min-height:48px;margin-left:auto;min-width:230px}.platform-page .coach-card{display:flex;flex-direction:column;min-height:390px;padding:0;overflow:hidden}.platform-page .coach-card .coach-photo{height:205px;background:#252525;position:relative;overflow:hidden}.platform-page .coach-card .coach-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.3) contrast(1.08);transition:transform .5s}.platform-page .coach-card:hover .coach-photo img{transform:scale(1.07)}.platform-page .coach-card .coach-photo:after{content:'PUBLIC PROFILE';position:absolute;bottom:12px;left:14px;color:#111;background:var(--orange);font-size:.6rem;font-weight:700;padding:5px 7px}.platform-page .coach-card .coach-info{padding:23px;flex:1}.platform-page .coach-card h3{font-size:2.2rem;text-transform:uppercase}.platform-page .coach-card .coach-role{color:var(--orange);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:6px 0 16px}.platform-page .coach-card p{color:#aaa;line-height:1.5;margin:0}.platform-page .coach-meta{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #444;margin-top:22px;padding-top:15px;color:#bbb;font-size:.8rem}
.platform-page .event-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.platform-page .event-card{position:relative;padding:28px;min-height:275px;background:#1a1a1a;border:1px solid #444;transform-style:preserve-3d;transition:transform .35s,border-color .3s}.platform-page .event-card:hover{transform:perspective(1000px) rotateX(2deg) rotateY(-2deg) translateZ(10px);border-color:var(--orange)}.platform-page .event-card .demo-label{display:inline-block;background:#ff64282b;color:#ff956d;border:1px solid #ff642866;padding:6px 8px;font-size:.62rem;letter-spacing:.1em}.platform-page .event-card .event-date{position:absolute;right:25px;top:25px;color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-size:2.5rem;line-height:.8;text-align:right}.platform-page .event-card .event-date small{display:block;color:#aaa;font-family:Barlow,Arial,sans-serif;font-size:.6rem;letter-spacing:.12em;margin-top:8px}.platform-page .event-card h3{font-size:2.5rem;text-transform:uppercase;max-width:350px;margin:45px 0 12px}.platform-page .event-card p{color:#aaa;line-height:1.5;max-width:450px}.platform-page .event-card a{display:inline-flex;color:#fff;border-bottom:1px solid var(--orange);padding-bottom:7px;margin-top:15px}
.platform-page .gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:100px;gap:12px}.platform-page .gallery-item{position:relative;overflow:hidden;border:1px solid #444;background:#222;min-height:100%;transform-style:preserve-3d}.platform-page .gallery-item:nth-child(1){grid-column:span 7;grid-row:span 4}.platform-page .gallery-item:nth-child(2){grid-column:span 5;grid-row:span 3}.platform-page .gallery-item:nth-child(3){grid-column:span 5;grid-row:span 3}.platform-page .gallery-item:nth-child(n+4){grid-column:span 3;grid-row:span 2}.platform-page .gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s;filter:saturate(.8)}.platform-page .gallery-item:hover img{transform:scale(1.09);filter:saturate(1.1)}.platform-page .gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 15px 12px;background:linear-gradient(transparent,#000c);color:#fff;font-size:.8rem}.platform-page .gallery-item .media-type{color:var(--orange);font-size:.6rem;letter-spacing:.1em;display:block;margin-bottom:4px}
.platform-page .story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.platform-page .story-grid h2{font-size:clamp(3rem,5vw,5rem);text-transform:uppercase}.platform-page .story-copy{color:#aaa;line-height:1.7}.platform-page .story-copy strong{color:#fff}.platform-page .process-list{counter-reset:step;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#444}.platform-page .process-list div{background:#181818;padding:25px;min-height:125px}.platform-page .process-list b{color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-size:2rem}.platform-page .process-list strong{display:block;margin-top:10px}.platform-page .process-list span{display:block;color:#999;font-size:.9rem;margin-top:6px;line-height:1.45}
.platform-page .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px}.platform-page .contact-list{display:grid;gap:20px}.platform-page .contact-item{border-top:1px solid #444;padding-top:18px}.platform-page .contact-item span{display:block;color:#888;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.platform-page .contact-item a,.platform-page .contact-item address{font-style:normal;font-size:1.3rem;color:#fff}.platform-page .form-card{padding:34px;background:#1a1a1a;border:1px solid #444}.platform-page .form-card form{gap:14px}.platform-page .form-card label{color:#ddd;font-weight:500}.platform-page .form-card input,.platform-page .form-card select,.platform-page .form-card textarea{background:#222;color:#eee;border:1px solid #555;padding:14px;min-height:52px}.platform-page .form-card textarea{min-height:125px;resize:vertical}.platform-page .form-card .button{margin-top:5px}.platform-page .form-message{color:#aaa;font-size:.85rem;line-height:1.5}
.platform-page .impact-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#333}.platform-page .impact-stat{padding:28px;background:#1a1a1a}.platform-page .impact-stat strong{display:block;color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-style:italic;font-size:3.6rem}.platform-page .impact-stat span{color:#aaa;font-size:.75rem;letter-spacing:.12em}
.platform-page .admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:calc(100vh - 128px)}.platform-page .admin-sidebar{background:#171717;border-right:1px solid #333;padding:30px 20px}.platform-page .admin-sidebar h2{font-size:2rem;margin:0 0 25px}.platform-page .admin-sidebar a{display:block;padding:13px 10px;color:#aaa;border-bottom:1px solid #303030}.platform-page .admin-sidebar a:hover{color:#fff;background:#222}.platform-page .admin-main{padding:60px 5%;max-width:1400px}.platform-page .admin-main>h1{font-size:clamp(3rem,5vw,5.5rem);font-style:italic;text-transform:uppercase}.platform-page .admin-main>p{color:#aaa;line-height:1.6}.platform-page .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:32px 0}.platform-page .admin-stat-card{background:#1b1b1b;border:1px solid #444;padding:22px;transform-style:preserve-3d}.platform-page .admin-stat-card strong{display:block;color:var(--orange);font-family:'Barlow Condensed',Arial,sans-serif;font-size:3rem}.platform-page .admin-stat-card span{color:#aaa;font-size:.8rem}.platform-page .admin-table{width:100%;border-collapse:collapse;margin-top:25px}.platform-page .admin-table th,.platform-page .admin-table td{text-align:left;border-bottom:1px solid #444;padding:15px 10px;color:#ccc}.platform-page .admin-table th{color:#fff;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.platform-page .status-demo{color:#ff956d;font-size:.7rem;letter-spacing:.08em}.platform-page .notice-bar{padding:18px;border-left:3px solid var(--orange);background:#252525;color:#bbb;line-height:1.55}
.platform-page .whatsapp{position:fixed;right:24px;bottom:24px;width:54px;height:54px;border-radius:50%;background:#22c869;color:#07180e;display:grid;place-items:center;font-weight:800;z-index:20;box-shadow:0 8px 20px #0008;transform:translateZ(50px);transition:transform .25s}.platform-page .whatsapp:hover{transform:translateY(-6px) scale(1.05)}
@media(max-width:950px){.platform-page .platform-grid{grid-template-columns:repeat(2,1fr)}.platform-page .pillar-grid{grid-template-columns:1fr}.platform-page .service-grid,.platform-page .event-grid,.platform-page .story-grid,.platform-page .contact-grid{grid-template-columns:1fr;gap:35px}.platform-page .impact-strip{grid-template-columns:repeat(3,1fr)}.platform-page .admin-shell{grid-template-columns:190px 1fr}.platform-page .stat-grid{grid-template-columns:repeat(2,1fr)}.platform-page .page-hero{min-height:500px}.platform-page .page-hero-media{inset:0}.platform-page .page-hero-copy{max-width:680px}.platform-page .page-hero-media:after{background:linear-gradient(90deg,#101010e8 0%,#1010108a 62%,#10101033 100%),linear-gradient(0deg,#101010 0%,transparent 48%)}}
@media(max-width:620px){.platform-page .platform-section{padding:72px 6%}.platform-page .page-hero{min-height:620px;padding:75px 6% 76px}.platform-page .page-hero h1{font-size:clamp(3.4rem,15vw,6rem)}.platform-page .page-hero p:not(.eyebrow){font-size:1rem}.platform-page .page-hero-frame{inset:18px 5%}.platform-page .page-hero-tag{right:8%;top:19%;font-size:1.7rem;padding:12px}.platform-page .page-hero-index{right:8%;bottom:30px;font-size:1.6rem}.platform-page .platform-grid{grid-template-columns:1fr}.platform-page .service-grid,.platform-page .event-grid{grid-template-columns:1fr}.platform-page .tilt-card{min-height:235px}.platform-page .pillar{min-height:275px}.platform-page .pillar h3{font-size:2.7rem;margin-top:42px}.platform-page .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:125px}.platform-page .gallery-item:nth-child(1),.platform-page .gallery-item:nth-child(2),.platform-page .gallery-item:nth-child(3),.platform-page .gallery-item:nth-child(n+4){grid-column:span 1;grid-row:span 2}.platform-page .gallery-item:nth-child(1){grid-column:span 2;grid-row:span 3}.platform-page .impact-strip{grid-template-columns:repeat(2,1fr)}.platform-page .impact-stat strong{font-size:2.8rem}.platform-page .admin-shell{display:block}.platform-page .admin-sidebar{display:flex;flex-wrap:wrap;gap:8px;padding:13px}.platform-page .admin-sidebar h2{width:100%;font-size:1.5rem;margin-bottom:5px}.platform-page .admin-sidebar a{padding:9px;font-size:.78rem}.platform-page .admin-main{padding:40px 6%}.platform-page .stat-grid{grid-template-columns:1fr 1fr}.platform-page .admin-table{font-size:.8rem}.platform-page .admin-table th,.platform-page .admin-table td{padding:10px 5px}.platform-page .search-field{margin-left:0;width:100%}.platform-page .process-list{grid-template-columns:1fr}.platform-page .whatsapp{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.platform-page .page-hero-media img,.platform-page .tilt-card,.platform-page .service-card,.platform-page .event-card,.platform-page .whatsapp{transform:none!important;transition:none!important}.platform-page .page-hero-tag{transform:none}.platform-page .page-hero-frame{transform:none}}

/* Sitewide 3D scene layer. Every interior page shares the same depth system as
   the home campaign: a moving frame, parallax media, floating chapter marker,
   staged reveals and cards that respond to the pointer. */
.platform-page {
  --scene-orange: var(--orange, #ff6428);
  perspective: 1600px;
  background:
    radial-gradient(circle at 88% 10%, rgba(255,100,40,.08), transparent 24rem),
    #101010;
}
.platform-page main { transform-style: preserve-3d; }
.platform-page .page-hero {
  isolation: isolate;
  transform-style: preserve-3d;
  background:
    radial-gradient(circle at 80% 15%, rgba(255,100,40,.18), transparent 25rem),
    #101010;
}
.platform-page .page-hero:before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .25;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, #000, transparent 82%);
}
.platform-page .page-hero-media {
  transform: translate3d(0,0,0) scale(1.015);
  transform-style: preserve-3d;
  will-change: transform;
}
.platform-page .page-hero-media:before {
  content: '';
  position: absolute;
  inset: 8% 6% 8% 8%;
  z-index: 1;
  border: 1px solid rgba(255,255,255,.2);
  transform: translateZ(80px) rotateY(-4deg);
  pointer-events: none;
}
.platform-page .page-hero-media img {
  will-change: transform, filter;
}
.platform-page .page-hero-copy {
  transform: translate3d(var(--copy-x,0px), var(--copy-y,0px), 80px) rotateX(var(--hero-rx,0deg));
  will-change: transform;
}
.platform-page .page-hero-frame {
  transform: translate3d(var(--hero-x,0px), var(--hero-y,0px), 110px) rotateX(calc(1deg + var(--hero-rx,0deg))) rotateY(calc(-1.2deg + var(--hero-ry,0deg)));
  will-change: transform;
}
.platform-page .page-hero-frame:after {
  content: '';
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 74px;
  height: 74px;
  border-right: 4px solid var(--scene-orange);
  border-bottom: 4px solid var(--scene-orange);
}
.platform-page .page-hero-tag {
  transform: translate3d(var(--badge-x,0px),var(--badge-y,0px),150px) rotateX(var(--hero-rx,0deg)) rotateY(calc(-17deg + var(--hero-ry,0deg))) rotateZ(-5deg);
  transform-style: preserve-3d;
  will-change: transform;
}
.platform-page .page-hero-index { text-shadow: 0 0 20px rgba(255,100,40,.22); }
.platform-page .platform-section {
  overflow: hidden;
  isolation: isolate;
  transform-style: preserve-3d;
}
.platform-page .platform-section:before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .15;
  background-image: linear-gradient(115deg, transparent 0 49.8%, rgba(255,100,40,.65) 50%, transparent 50.2%);
  background-size: 130px 130px;
  transform: translate3d(var(--section-shift,0px),0,0) skewY(-2deg);
  animation: platform-grid-drift 24s linear infinite;
}
.platform-page .platform-section.light:before {
  opacity: .22;
  background-image: linear-gradient(115deg, transparent 0 49.8%, rgba(17,17,17,.38) 50%, transparent 50.2%);
}
.platform-page .platform-section.orange:before { opacity: .17; }
.platform-page .platform-reveal,
.platform-page .tilt-card,
.platform-page .service-card,
.platform-page .event-card,
.platform-page .pillar,
.platform-page .gallery-item,
.platform-page .process-list > div,
.platform-page .impact-stat,
.platform-page .contact-item {
  will-change: transform;
}
.platform-page .platform-reveal { transform-style: preserve-3d; }
.platform-page .tilt-card,
.platform-page .service-card,
.platform-page .event-card,
.platform-page .gallery-item,
.platform-page .admin-stat-card {
  box-shadow: 0 16px 0 rgba(0,0,0,.25), 0 22px 42px rgba(0,0,0,.12);
}
.platform-page .tilt-card:after,
.platform-page .service-card:after,
.platform-page .event-card:after,
.platform-page .gallery-item:after,
.platform-page .pillar:after {
  content: '';
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(255,255,255,.1);
  pointer-events: none;
  transform: translateZ(22px);
}
.platform-page .pillar,
.platform-page .process-list > div,
.platform-page .impact-stat,
.platform-page .contact-item {
  transition: transform .45s cubic-bezier(.2,.7,.2,1), background-color .35s;
}
.platform-page .pillar:hover,
.platform-page .process-list > div:hover,
.platform-page .impact-stat:hover,
.platform-page .contact-item:hover {
  transform: translate3d(0,-8px,18px);
}
.platform-page .gallery-item figcaption { transform: translateZ(22px); }
.platform-page .whatsapp { animation: platform-float 4.5s ease-in-out infinite; }
.motion-active.platform-page .page-hero-media { animation: platform-media-breathe 13s ease-in-out infinite alternate; }
.motion-active.platform-page .page-hero-frame { animation: platform-frame-float 7s ease-in-out infinite; }
.motion-active.platform-page .page-hero-tag { animation: platform-tag-float 5s ease-in-out infinite; }
.motion-active.platform-page .platform-section { --section-shift: 0px; }

@keyframes platform-media-breathe { from { transform: translate3d(0,0,0) scale(1.015); } to { transform: translate3d(-1.2%, -1%, 0) scale(1.055); } }
@keyframes platform-frame-float { 0%,100% { margin-top: 0; } 50% { margin-top: -7px; } }
@keyframes platform-tag-float { 0%,100% { margin-top: 0; } 50% { margin-top: -13px; } }
@keyframes platform-grid-drift { from { background-position: 0 0; } to { background-position: 260px 130px; } }
@keyframes platform-float { 0%,100% { transform: translateZ(50px) translateY(0); } 50% { transform: translateZ(50px) translateY(-7px); } }

@media(max-width:620px){
  .platform-page .page-hero-media:before { inset: 7% 5% 9%; }
  .platform-page .page-hero-copy { transform: translate3d(var(--copy-x,0px),var(--copy-y,0px),40px); }
  .platform-page .page-hero-frame { transform: translateZ(55px) rotateX(1deg); }
  .platform-page .page-hero-tag { transform: translate3d(var(--badge-x,0px),var(--badge-y,0px),80px) rotateY(-10deg) rotateZ(-5deg); }
  .platform-page .platform-section:before { background-size: 90px 90px; }
}

@media(prefers-reduced-motion:reduce){
  .platform-page .page-hero-media,
  .platform-page .page-hero-frame,
  .platform-page .page-hero-tag,
  .platform-page .platform-section:before,
  .platform-page .whatsapp { animation:none!important; }
  .platform-page .page-hero-copy,
  .platform-page .page-hero-frame,
  .platform-page .page-hero-tag,
  .platform-page .platform-section:before { transform:none!important; }
}

/* Keep the editorial light chapters legible when a page uses the default
   section class. The chapter still carries dark 3D cards for contrast. */
.platform-page .platform-section:not(.dark):not(.orange) {
  color: #111;
}
.platform-page .platform-section:not(.dark):not(.orange) .eyebrow { color: #555; }
.platform-page .platform-section:not(.dark):not(.orange) .section-lead > p,
.platform-page .platform-section:not(.dark):not(.orange) .story-copy,
.platform-page .platform-section:not(.dark):not(.orange) .story-copy p,
.platform-page .platform-section:not(.dark):not(.orange) .contact-item span,
.platform-page .platform-section:not(.dark):not(.orange) .contact-item address {
  color: #5e5e5a;
}
.platform-page .platform-section:not(.dark):not(.orange) .outline-text {
  -webkit-text-stroke-color: #777;
}
.platform-page .service-card,
.platform-page .event-card,
.platform-page .admin-stat-card {
  color: #f5f5f2;
}
/* Coach portrait template */
.platform-page .coach-card .coach-photo{height:250px;aspect-ratio:4/3;background:radial-gradient(circle at 72% 22%,rgba(255,91,28,.4),transparent 33%),linear-gradient(145deg,#323232 0%,#161616 72%);isolation:isolate}
.platform-page .coach-card .coach-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,91,28,.12),transparent 42%,rgba(0,0,0,.7));z-index:1;pointer-events:none}
.platform-page .coach-card .coach-photo img{opacity:.78;mix-blend-mode:normal;filter:grayscale(.14) contrast(1.08) saturate(.92);transform:scale(1.03);object-position:center 18%;}
.platform-page .coach-card:hover .coach-photo img{transform:scale(1.1)}
.platform-page .coach-card .coach-photo .photo-kicker{position:absolute;top:16px;left:16px;z-index:2;color:#fff;border:1px solid rgba(255,255,255,.45);background:rgba(17,17,17,.48);padding:6px 8px;font-size:.58rem;letter-spacing:.14em;font-weight:700}
.platform-page .coach-card .coach-photo .photo-initials{position:absolute;left:16px;bottom:36px;z-index:2;color:#fff;font-size:5.4rem;line-height:.84;letter-spacing:-.08em;text-shadow:0 8px 26px rgba(0,0,0,.35)}
.platform-page .coach-card .coach-photo .photo-status{position:absolute;left:18px;top:48px;bottom:auto;z-index:2;max-width:150px;color:#f0f0f0;font-size:.52rem;line-height:1.25;letter-spacing:.08em;text-transform:uppercase}
.platform-page .coach-card .coach-photo:after{content:'PORTRAIT SLOT';left:auto;right:14px;bottom:14px;font-size:.52rem;letter-spacing:.08em}
@media (max-width:700px){.platform-page .coach-card .coach-photo{height:220px}.platform-page .coach-card .coach-photo .photo-initials{font-size:4.8rem}}
@media (max-width:700px){.platform-page .coach-card h3{font-size:1.75rem;line-height:.98}.platform-page .coach-card .coach-info{padding:18px}.platform-page .coach-card .coach-photo .photo-initials{font-size:4.5rem}}

/* Editorial image layer for the home page */
.home-page .campaign-visual{background-color:#151515;background-image:linear-gradient(135deg,rgba(255,94,26,.82),rgba(255,94,26,.08) 42%,transparent 43%),linear-gradient(180deg,rgba(5,5,5,.08),rgba(5,5,5,.76)),url('assets/programs-collage.png');background-position:center;background-size:cover;}
.home-page .campaign-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center;opacity:.36;mix-blend-mode:screen;filter:saturate(.88) contrast(1.08);transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .4s ease;}
.home-page .campaign-visual:hover .campaign-image{transform:scale(1.05);opacity:.5;}
.home-page .campaign-visual > span{z-index:2;}
.home-page .feature-image{display:block;width:100%;height:220px;object-fit:cover;object-position:center 32%;margin-top:30px;border:1px solid rgba(17,17,17,.16);filter:saturate(.82) contrast(1.05);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease;}
.home-page .feature:hover .feature-image{transform:scale(1.025);filter:saturate(1) contrast(1.08);}
.home-page .school{background-image:linear-gradient(90deg,rgba(241,91,34,.96) 0%,rgba(241,91,34,.9) 43%,rgba(241,91,34,.35) 100%),url('assets/wellness-session.png');background-position:center;background-size:cover;}
@media(max-width:600px){.home-page .feature-image{height:190px}.home-page .campaign-image{object-position:62% center}}
