/* Smoked glass and graphite: optical depth on controls, quiet framing on content. */
:root {
  --glass-surface: linear-gradient(145deg, #59606d32 0%, #2c2d3438 40%, #090a0e94 100%);
  --glass-edge: #dbe4f038;
  --glass-shadow: inset 0 1px 0 #ffffff38, inset 0 -1px 0 #0009, 0 8px 20px #0005;
  --panel-surface: linear-gradient(145deg, #3d41451c, #151419ad 42%, #0c0b0eeb);
}
/* The red primary action retains the brand, with the same polished edge as the controls. */
.button[data-apply], .hero--film .hero-actions .button, .final-cta>.button {
  position:relative;
  isolation:isolate;
  border-radius:10px;
  border:1px solid #efb7b345;
  background:linear-gradient(155deg,#bb65554a 0%,#9e342f59 45%,#76211e70 100%);
  box-shadow:inset 0 1px 1px #ffe6dd38,inset 0 -1px 1px #28080640,0 8px 24px #0003!important;
  backdrop-filter:blur(14px) saturate(1.1);
  -webkit-backdrop-filter:blur(14px) saturate(1.1);
  text-shadow:0 1px 3px #24080580;
  color:#fff;
  transition:background .25s,box-shadow .25s,transform .25s;
}
.button[data-apply]:before {
  content:'';position:absolute;inset:2px;border-radius:inherit;
  border-top:1px solid #ffe7ec2b;pointer-events:none;
}
.button[data-apply]:hover, .hero--film .hero-actions .button:hover, .final-cta>.button:hover {
  border-color:#f0c2bc70;
  background:linear-gradient(155deg,#c777655e,#a741396b 45%,#81282180);
  box-shadow:inset 0 1px 1px #ffe6dd4d,inset 0 -1px 1px #28080640,0 10px 26px #0004!important;
}
.button[data-apply]:active {transform:translateY(1px);}
/* Shared circular hardware: a fine silver rim, broad soft reflection and dark core. */
.round-control, .hero--film .motion-control, .play-circle {
  position:relative;isolation:isolate;flex-shrink:0;
  border-radius:50%;border:1px solid var(--glass-edge);
  background:var(--glass-surface)!important;
  box-shadow:var(--glass-shadow),0 0 0 1px #0004;
  backdrop-filter:blur(20px) saturate(1.2);
  -webkit-backdrop-filter:blur(20px) saturate(1.2);
  color:#f2f4f8;
  transition:background .2s,box-shadow .2s,transform .2s,border-color .2s;
}
.round-control, .hero--film .motion-control {width:48px;height:48px;min-width:48px;min-height:48px;}
.round-control:before, .hero--film .motion-control:before, .play-circle:before {
  content:'';position:absolute;inset:2px;border-radius:inherit;
  border:1px solid transparent;border-top-color:#f4f8ff40;border-left-color:#f4f8ff16;pointer-events:none;
}
.round-control:after, .hero--film .motion-control:after, .play-circle:after {
  content:'';position:absolute;left:22%;right:22%;top:9%;height:18%;
  border-radius:50%;background:#f3f6ff12;filter:blur(4px);pointer-events:none;
}
.round-control svg, .motion-control svg {width:19px;height:19px;stroke-width:1.8;}
.round-control:hover, .hero--film .motion-control:hover, .local-video-cover:hover .play-circle {
  background:linear-gradient(145deg,#7a83964a,#32343e70 48%,#121218cf)!important;
  border-color:#e9efff60;box-shadow:inset 0 1px #ffffff60,inset 0 -1px #0009,0 9px 22px #0006;
}
.round-control:active {transform:scale(.96);}
.hero--film .motion-control {position:absolute;}
.play-circle {width:72px;height:72px;}
.carousel-controls {gap:14px;}
.results-carousel>.carousel-controls, .message-carousel>.carousel-controls {
  width:max-content;max-width:calc(100% - 40px);margin-inline:auto;
  padding:8px 12px;border-radius:999px;border:1px solid #cad3df18;
  background:linear-gradient(170deg,#ffffff09,#0b0c1166);box-shadow:inset 0 1px #ffffff0d,0 12px 24px #0002;
}
.carousel-count {font-variant-numeric:tabular-nums;color:#b8b9c4;font-size:11px;}
/* Polished edges do not sit over the actual before/after evidence. */
.result-slide, .spoken-card {border-color:#dce3f12e;border-radius:20px;box-shadow:inset 0 1px #ffffff28,0 18px 45px #0005;}
.result-slide {border:1px solid #dce3ec45;background:linear-gradient(145deg,#454a5052,#17191bbd 48%,#0b0c0ddd);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0006,0 18px 45px #0005;}
.result-caption {background:linear-gradient(125deg,#808a9824,#24272b75 50%,#141619b8);border-top:1px solid #ccd6e326;}
.result-slide .comparison-labels, .coach-comparison>.comparison-labels {
  background:linear-gradient(135deg,#aab3be29,#626a7620 48%,#c0cad418);
  border:0;border-bottom:1px solid #dce5ef38;
  box-shadow:inset 0 1px #ffffff2e,inset 1px 0 #ffffff10,inset -1px 0 #ffffff10;color:#e4e7eb;
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  position:relative;isolation:isolate;
}
.comparison-labels span {display:inline-flex;align-items:center;}
.spoken-card {background:var(--panel-surface);}
/* Framework: a single frosted chapter surface and a framed player. */
.method {background:radial-gradient(ellipse at 50% 55%,#41475516,transparent 65%),#080809;}
.method-layout {gap:46px;align-items:center;}
.chapters {padding:28px;border:1px solid #d4dce62c;border-radius:24px;background:var(--panel-surface);box-shadow:inset 0 1px #fff2,0 20px 50px #0003;}
.chapters>.eyebrow {color:#a8a9b6;}
.chapters>button {font-size:19px;border-color:#b6c1d61b;gap:14px;grid-template-columns:42px minmax(0,1fr) 20px;}
.chapters>button[aria-pressed='true'] {background:linear-gradient(90deg,#ad4e6528,transparent);}
.chapter-time {color:#c2a9b7;}
.inline-video {border:1px solid #dce4ee40;border-radius:22px;box-shadow:inset 0 1px #ffffff38,0 22px 55px #0006,0 0 0 5px #bac4df06;}
.player-meta {padding-inline:6px;}
/* Ako's progress uses one dark glass frame, including its navigation. */
.coach-gallery {padding:12px 12px 16px;border:1px solid #d3dce53b;border-radius:26px;background:var(--panel-surface);box-shadow:inset 0 1px #ffffff36,inset 0 -1px #0007,0 24px 60px #0005;}
.coach-deck {border-radius:17px;border:1px solid #cad5e71f;box-shadow:0 10px 28px #0003;}
.coach-card {border:0;border-radius:16px;}
.coach-card img, .coach-card video, .coach-comparison-media {background:linear-gradient(120deg,#17171c,#09090b);}
.coach-gallery .carousel-controls {margin-top:14px;gap:10px;}
.coach-current-title {color:#ded8e2;font-size:12px;}
.coach-gallery .coach-scroll-note {margin-top:14px;font-size:11px;}
/* Coaching keeps the existing layout, with quiet graphite surfaces. */
.deliverables>div {border-color:#cdd5e22a;border-radius:20px;background:var(--panel-surface);box-shadow:inset 0 1px #ffffff19,0 12px 30px #0002;}
.deliverables>div>span {color:#dc899a;}
.coaching-intro .button {min-height:58px;}
/* One centred finish, including the eyebrow, action and supporting line. */
.final-cta {text-align:center;background:radial-gradient(ellipse at 50% 100%,#7133483d,transparent 65%),#101012;}
.final-cta>.eyebrow {justify-content:center;}
.final-cta h2 {margin-inline:auto;max-width:1180px;}
.final-cta>.button {display:inline-flex;justify-content:center;width:auto;min-width:252px;}
.final-cta>p:last-child {display:block;margin:24px auto 0;}
.testimonial-controls {display:none;}
@media(max-width:900px) {
  .chapters {padding:24px;}
  .method-layout {gap:34px;}
  .coach-gallery {padding:10px 10px 14px;}
}
@media(max-width:700px) {
  .hero--film .hero-actions .button {min-height:56px;padding-inline:26px;}
  .hero--film .motion-control {width:44px;height:44px;min-width:44px;min-height:44px;}
  .results-carousel>.carousel-controls {gap:12px;padding:7px 10px;margin-top:12px;}
  .result-slide {border-radius:17px;}
  .spoken-reviews {display:flex;align-items:stretch;gap:16px;max-width:none;width:calc(100% + 2 * var(--gutter));margin-inline:calc(-1 * var(--gutter));padding:8px var(--gutter) 22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;}
  .spoken-reviews::-webkit-scrollbar {display:none;}
  .spoken-card {flex:0 0 calc(100vw - 70px);max-width:430px;scroll-snap-align:start;scroll-snap-stop:always;opacity:1!important;transform:none!important;}
  .spoken-frame, .spoken-card:nth-child(even) .spoken-frame {aspect-ratio:1.08;height:auto;}
  .spoken-card h3, .spoken-card:nth-child(even) h3 {margin:22px 20px 12px;font-size:11px;}
  .spoken-card p, .spoken-card:nth-child(even) p {font-size:20px;line-height:1.28;padding:0 22px 28px;min-height:116px;}
  .spoken-frame .play-circle {width:62px;height:62px;}
  .testimonial-controls {display:flex;justify-content:center;align-items:center;gap:14px;margin:3px auto 0;}
  .testimonial-controls .testimonial-count {min-width:43px;text-align:center;font-size:11px;color:#c9bac4;font-variant-numeric:tabular-nums;}
  .testimonial-controls .round-control {width:44px;height:44px;min-width:44px;min-height:44px;}
  .message-carousel {margin-top:74px;}
  .chapters {padding:21px;border-radius:20px;}
  .chapters>button {font-size:15px;gap:12px;}
  .inline-video {border-radius:18px;}
  .coach-gallery {border-radius:23px;}
  .coach-gallery .carousel-controls {gap:8px;}
  .coach-gallery .round-control {width:44px;height:44px;min-width:44px;min-height:44px;}
  .coach-gallery .coach-current-title {font-size:11px;}
  .deliverables>div {border-radius:18px;}
  .final-cta>.button {width:auto;min-width:255px;padding-inline:24px;}
  .final-cta>p:last-child {margin:22px auto 0;max-width:300px;}
}
@media(prefers-reduced-transparency:reduce) {
  .round-control, .play-circle, .hero--film .motion-control {background:#292a31!important;backdrop-filter:none;-webkit-backdrop-filter:none;}
  .button[data-apply] {background:#79332e!important;backdrop-filter:none;-webkit-backdrop-filter:none;}
}
@media(prefers-reduced-motion:reduce) {.round-control,.button[data-apply],.play-circle{transition:none;}}
.local-video-cover .play-circle {position:relative;inset:auto;transform:none;display:grid;place-items:center;}

/* Keep the evidence prominent: a quiet status line replaces the rotation controls. */
.carousel-status {display:flex;justify-content:center;align-items:center;gap:18px;margin:18px auto 0;min-height:18px;}
.carousel-status .carousel-count {font-size:10px;letter-spacing:.12em;color:#a8a9ad;}
.carousel-status .progress-dot.is-current {background:#ee3024;}
/* Original messages sit inside a graphite frame with a separate glass reading action. */
.message-image {padding:9px 9px 70px;border:1px solid #d7e2f233;border-radius:23px;background:linear-gradient(150deg,#35383b,#151618 35%,#090a0c);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0009,0 22px 50px #0005;}
.message-image img {border-radius:15px;max-height:460px;background:#0b1013;}
.message-card.is-current .message-image {box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0009,0 24px 65px #0006;}
.message-expand {position:absolute;bottom:13px;left:14px;right:14px;min-height:44px;padding:8px 9px 8px 17px;justify-content:space-between;flex-direction:row-reverse;border:1px solid #f2f5ff30;border-radius:999px;background:linear-gradient(135deg,#727b8a24,#2b2e335e 40%,#111317b8);box-shadow:inset 0 1px #fff3,inset 0 -1px #0008,0 5px 15px #0003;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#f8f8fa;font-size:12px;letter-spacing:.01em;transition:border-color .2s,background .2s;}
.message-expand svg {width:28px;height:28px;padding:7px;border-radius:50%;background:linear-gradient(150deg,#ff4937,#cf160d);box-shadow:inset 0 1px #ffb2a66b;color:white;}
.message-image:hover .message-expand {border-color:#ffffff61;background:linear-gradient(135deg,#8d97a43b,#3538408a 40%,#1a1c21df);}
.message-caption {color:#c2c5cb;}
@media(max-width:700px){
  .message-image {padding:8px 8px 68px;border-radius:22px;}
  .message-image img {max-height:390px;border-radius:14px;}
  .message-expand {left:12px;right:12px;bottom:12px;}
  .carousel-status {margin-top:12px;}
}

/* Keep the full conversation and its original subtitles visible. */
.spoken-card--call .spoken-frame video {object-fit:contain;object-position:center;}
