/* November round: the big idea, numbers, masterminds, TTI, and the 95% hook. */

/* ------------------------------------------------------------ Big idea: E + R = O */
.big-idea { padding: clamp(84px, 11vw, 150px) 0; position: relative; overflow: hidden; }
.big-idea::before { content: ""; position: absolute; inset: auto -10% -40% -10%; height: 70%; background: radial-gradient(closest-side, rgba(239,61,50,.22), transparent); pointer-events: none; }
.idea-head { position: relative; text-align: center; }
.idea-equation { margin: 18px 0 0; font-family: var(--display); font-weight: 400; line-height: .86; }
.idea-eq { display: flex; justify-content: center; align-items: baseline; gap: clamp(10px, 2.6vw, 38px); font-size: clamp(110px, 21vw, 330px); letter-spacing: -.01em; }
.idea-eq b { font-weight: 400; color: var(--paper); }
.idea-eq i { font-style: normal; color: var(--red); font-size: .62em; }
.idea-eq .idea-o { color: transparent; -webkit-text-stroke: 3px var(--red); }
.is-shifted .idea-eq .idea-o { color: var(--red); -webkit-text-stroke-color: var(--red); transition: color .6s ease; }
.idea-sub { display: block; margin-top: clamp(14px, 2vw, 26px); font-size: clamp(30px, 4.6vw, 70px); letter-spacing: .02em; color: var(--paper); }
.idea-sub em { font-style: normal; color: var(--red); }
.idea-key { display: flex; justify-content: center; gap: 14px; margin-top: 22px; font-size: 15px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: #b6b0a6; }
.idea-key i { font-style: normal; color: var(--red); }
.idea-manifesto { list-style: none; margin: clamp(46px, 6vw, 80px) auto 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); max-width: 1180px; border-top: 1px solid var(--dark-line); }
.idea-manifesto li { padding: 26px 26px 0 0; font-size: clamp(20px, 1.7vw, 26px); line-height: 1.3; font-weight: 600; color: var(--paper); }
.idea-manifesto li + li { padding-left: 26px; border-left: 1px solid var(--dark-line); }
.idea-manifesto span { display: block; margin-bottom: 10px; font-size: 14px; letter-spacing: .2em; color: var(--red); }
.idea-manifesto-key { color: var(--red) !important; }
.big-idea .mindset-stage { margin-top: clamp(50px, 6vw, 84px); }
.idea-try { font-size: 15px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #b6b0a6; margin-bottom: 18px; }
.idea-board { display: grid; gap: 14px; }
.idea-step { display: grid; grid-template-columns: 78px 1fr; gap: 18px; align-items: start; padding: 20px; border: 1px solid var(--dark-line); background: rgba(255,255,255,.02); transition: background .4s ease, border-color .4s ease; }
.idea-letter { font-family: var(--display); font-size: 74px; line-height: .9; color: transparent; -webkit-text-stroke: 2px var(--red); }
.idea-step-label { font-size: 15px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--paper); margin-bottom: 12px; }
.idea-step-label em { display: block; margin-top: 4px; font-style: normal; font-weight: 500; letter-spacing: 0; text-transform: none; font-size: 16px; color: #b6b0a6; }
.idea-board .vx-chips { grid-template-columns: 1fr 1fr; gap: 8px; }
.idea-board .vx-chip { border-color: var(--dark-line); color: var(--paper); font-size: 16px; padding: 12px 14px; }
.idea-board .vx-chip:hover { border-color: var(--paper); }
.idea-board .vx-chip[aria-pressed="true"] { background: var(--paper); color: var(--ink); border-color: var(--paper); }
.idea-board .vx-toggle { border-color: var(--paper); }
.idea-board .vx-toggle button { color: var(--paper); }
.idea-board .vx-toggle button[aria-pressed="true"] { background: var(--paper); color: var(--ink); }
.idea-board .vx-toggle button[data-ero-mode="respond"][aria-pressed="true"] { background: var(--red); color: var(--white); }
.idea-response { margin-top: 14px; font-size: 19px; line-height: 1.45; color: var(--paper); }
.idea-result { font-family: var(--display); font-size: clamp(30px, 2.8vw, 42px); line-height: 1.05; letter-spacing: .01em; }
.idea-board .vx-ero-outcome[data-ero-tone="respond"] .idea-letter { color: var(--white); -webkit-text-stroke-color: var(--white); }
.idea-board .vx-ero-outcome[data-ero-tone="respond"] .idea-step-label, .idea-board .vx-ero-outcome[data-ero-tone="respond"] .idea-step-label em { color: rgba(255,255,255,.88); }
.idea-board .vx-ero-outcome[data-ero-tone="react"] { background: #2b2a28; border-color: #2b2a28; }

/* ------------------------------------------------------------ Home numbers band */
.numbers-band { background: #121212; color: var(--paper); border-top: 1px solid #2c2a27; border-bottom: 1px solid #2c2a27; }
.numbers-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.num { display: block; padding: clamp(34px, 4vw, 56px) clamp(16px, 2vw, 30px); color: inherit; text-decoration: none; }
.num + .num { border-left: 1px solid #2c2a27; }
.num-value { font-family: var(--display); font-size: clamp(76px, 8vw, 128px); line-height: .9; color: var(--paper); }
.num-value sup { font-size: .45em; color: var(--red); vertical-align: top; margin-left: 4px; }
.num h2 { margin-top: 16px; font-size: 17px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--red); }
.num p:not(.num-value) { margin-top: 8px; font-size: 17px; line-height: 1.5; color: #c9c3b9; max-width: 260px; }
.num-mic { color: var(--red); }
.num-mic svg { width: clamp(70px, 7vw, 108px); height: auto; display: block; }
.num-podcast { transition: background .3s ease; }
.num-podcast:hover, .num-podcast:focus-visible { background: #1d1b19; }
.num-listen { display: inline-block; margin-top: 6px; font-weight: 700; color: var(--paper); }

/* ------------------------------------------------------------ About credentials */
.about-creds { list-style: none; margin: clamp(46px, 6vw, 80px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 2px solid var(--ink); border-bottom: 1px solid var(--line); }
.about-creds li { padding: 24px 20px 24px 0; }
.about-creds li + li { padding-left: 20px; border-left: 1px solid var(--line); }
.about-creds strong { display: block; font-size: 14px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--red); }
.about-creds span { display: block; margin-top: 8px; font-family: var(--display); font-size: clamp(30px, 3vw, 44px); line-height: 1; }

/* ------------------------------------------------------------ Mastermind rooms */
.mm-rooms-v2 { padding: clamp(84px, 10vw, 140px) 0; background: var(--paper); }
.mm-rooms-head { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; align-items: end; margin-bottom: clamp(40px, 5vw, 64px); }
.mm-rooms-head .copy { font-size: 19px; }
.mm-feature { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(30px, 5vw, 80px); align-items: center; padding: clamp(34px, 5vw, 70px); background: var(--ink); color: var(--paper); position: relative; overflow: hidden; }
.mm-tag { font-size: 14px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #c9c3b9; }
.mm-tag span { color: var(--red); margin-right: 12px; }
.mm-feature h3 { margin-top: 18px; font-family: var(--display); font-weight: 400; font-size: clamp(54px, 6.4vw, 104px); line-height: .9; }
.mm-feature h3 span { color: var(--red); }
.mm-feature-lead { margin-top: 22px; font-size: 20px; line-height: 1.5; max-width: 560px; color: #e4ded4; }
.mm-feature-points { list-style: none; padding: 0; margin: 24px 0 30px; display: flex; flex-wrap: wrap; gap: 10px; }
.mm-feature-points li { padding: 10px 16px; border: 1px solid #4a4640; font-size: 16px; font-weight: 600; }
.mm-weeks { position: relative; aspect-ratio: 1; width: min(100%, 420px); justify-self: center; }
.mm-weeks-ring { position: absolute; inset: 0; }
.mm-weeks-ring span { position: absolute; left: 50%; top: 50%; width: 10px; height: 26px; margin: -13px 0 0 -5px; background: #3e3a35; transform-origin: 50% 50%; }
.mm-weeks-ring span { transform: rotate(calc(var(--i) * 6.923deg)) translateY(calc(-1 * min(19vw, 186px))); }
.mm-weeks-ring span.on { background: var(--red); height: 34px; }
.mm-weeks-core { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; }
.mm-weeks-core strong { font-family: var(--display); font-weight: 400; font-size: clamp(90px, 10vw, 150px); line-height: .85; color: var(--paper); }
.mm-weeks-core span { margin-top: 8px; font-size: 15px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #c9c3b9; line-height: 1.5; }
@media (prefers-reduced-motion: no-preference) {
  .mm-feature .mm-weeks-ring span { animation: mm-week 5.2s linear infinite; animation-delay: calc(var(--i) * .1s); }
  @keyframes mm-week { 0%, 6% { background: var(--red); } 14%, 100% { background: #3e3a35; } }
  .mm-feature .mm-weeks-ring span.on { animation: none; }
  .motion-paused .mm-weeks-ring span { animation-play-state: paused; }
}
.mm-rooms-sub { margin: clamp(46px, 6vw, 72px) 0 18px; font-size: 15px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.mm-rooms-sub span { color: var(--red); margin-right: 12px; }
.mm-room-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.mm-room-grid li { position: relative; display: flex; flex-direction: column; min-height: 300px; padding: 24px 20px; background: var(--white); border: 1px solid var(--line); transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease; }
.mm-room-grid li:hover { transform: translateY(-6px); border-color: var(--ink); box-shadow: 0 18px 40px rgba(0,0,0,.08); }
.mm-room-n { font-family: var(--display); font-size: 56px; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px var(--red); }
.mm-room-who { margin-top: 18px; font-size: 16px; line-height: 1.45; color: var(--muted); }
.mm-room-grid h3 { margin-top: auto; padding-top: 18px; font-family: var(--display); font-weight: 400; font-size: 30px; line-height: 1; }
.mm-room-note { margin-top: 12px; font-size: 15px; font-weight: 700; color: var(--red); }

/* ------------------------------------------------------------ Elite path */
.mm-elite { position: relative; overflow: hidden; padding: clamp(96px, 12vw, 170px) 0; }
.mm-elite-image, .mm-elite-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mm-elite-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(14,13,12,.94) 0%, rgba(14,13,12,.82) 48%, rgba(14,13,12,.55) 100%); }
.mm-elite-inner { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(36px, 6vw, 90px); align-items: center; }
.mm-elite .copy { margin-top: 20px; font-size: 20px; color: #e4ded4; max-width: 440px; }
.mm-elite-path { list-style: none; margin: 0; padding: 0; counter-reset: s; position: relative; }
.mm-elite-path::before { content: ""; position: absolute; left: 11px; top: 14px; bottom: 14px; width: 2px; background: linear-gradient(var(--red), rgba(239,61,50,.2)); }
.mm-elite-path li { position: relative; padding: 0 0 34px 54px; }
.mm-elite-path li:last-child { padding-bottom: 0; }
.mm-elite-path li::before { content: ""; position: absolute; left: 0; top: 4px; width: 24px; height: 24px; border: 2px solid var(--red); background: #141210; }
.mm-elite-path li:last-child::before { background: var(--red); }
.mm-elite-path span { font-size: 14px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--red); }
.mm-elite-path h3 { margin-top: 8px; font-family: var(--display); font-weight: 400; font-size: clamp(30px, 2.8vw, 42px); line-height: 1.02; color: var(--paper); }
.mm-elite-path p { margin-top: 8px; font-size: 18px; color: #c9c3b9; }

/* ------------------------------------------------------------ Retreats */
.mm-retreat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(18px, 2.4vw, 34px); }
.mm-retreat figure { position: relative; margin: 0; aspect-ratio: 3 / 2; overflow: hidden; }
.mm-retreat figure picture, .mm-retreat figure img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s ease; }
.mm-retreat:hover figure img { transform: scale(1.04); }
.mm-retreat figcaption { position: absolute; right: 10px; bottom: 10px; padding: 4px 8px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; background: rgba(0,0,0,.55); color: #f5f2ed; }
.mm-retreat > div { padding: 24px 4px 0; }
.mm-retreat .mm-tag { color: var(--muted); }
.mm-retreat h3 { margin-top: 12px; font-family: var(--display); font-weight: 400; font-size: clamp(34px, 3.4vw, 52px); line-height: 1; }
.mm-retreat p:not(.mm-tag) { margin-top: 12px; font-size: 18px; line-height: 1.55; max-width: 560px; }
.mm-light-link { display: inline-flex; margin-top: 14px; color: inherit; }

/* ------------------------------------------------------------ TTI */
.tti { padding: clamp(84px, 10vw, 140px) 0; }
.tti-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 6vw, 96px); align-items: center; }
.tti .lead { margin-top: 24px; font-size: clamp(24px, 2.2vw, 32px); color: var(--paper); }
.tti .copy { margin-top: 14px; font-size: 19px; color: #d8d2c8; max-width: 540px; }
.tti-points { list-style: none; margin: 30px 0 0; padding: 0; display: grid; gap: 0; border-top: 1px solid var(--dark-line); }
.tti-points li { display: grid; grid-template-columns: 150px 1fr; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--dark-line); font-size: 18px; }
.tti-points strong { color: var(--red); font-weight: 700; }
.tti-points span { color: #d8d2c8; }
.tti-visual { display: grid; gap: 22px; justify-items: center; }
.tti-wheel { position: relative; width: min(100%, 460px); aspect-ratio: 1; border-radius: 50%; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 6px; background: var(--ink); }
.tti-wheel .q { display: grid; place-content: center; text-align: center; padding: 18px; transition: transform .4s ease, filter .4s ease; }
.tti-wheel .q b { font-family: var(--display); font-weight: 400; font-size: clamp(64px, 7vw, 104px); line-height: .9; color: var(--white); }
.tti-wheel .q i { font-style: normal; margin-top: 6px; font-size: 13px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.85); }
.q-d { background: var(--red); padding-right: 40px !important; padding-bottom: 40px !important; }
.q-i { background: #c9a227; padding-left: 40px !important; padding-bottom: 40px !important; }
.q-s { background: #3f7d58; padding-right: 40px !important; padding-top: 40px !important; }
.q-c { background: #2f5d8a; padding-left: 40px !important; padding-top: 40px !important; }
.tti-wheel:hover .q { filter: saturate(.6) brightness(.8); }
.tti-wheel .q:hover { filter: none; transform: scale(1.03); }
.tti-core { position: absolute; left: 50%; top: 50%; width: 32%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; display: grid; place-content: center; background: var(--paper); color: var(--ink); font-family: var(--display); font-size: clamp(30px, 3vw, 44px); box-shadow: 0 0 0 10px var(--ink); }
.tti-legend { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; width: min(100%, 460px); }
.tti-legend p { padding: 14px 16px; border: 1px solid var(--dark-line); font-family: var(--display); font-size: 28px; line-height: 1; color: var(--paper); }
.tti-legend span { display: block; margin-bottom: 8px; font-family: var(--body); font-size: 13px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--red); }
.tti-note { grid-column: 1 / -1; font-size: 14px; color: #8f897f; }

/* ------------------------------------------------------------ Inner Blueprint: 95% */
.ib-95 { background: var(--red); color: var(--white); padding: clamp(84px, 10vw, 140px) 0; overflow: hidden; }
.ib-95-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(36px, 6vw, 96px); align-items: center; }
.ib-95 .eyebrow { color: rgba(255,255,255,.85); }
.ib-95-title { font-family: var(--display); font-weight: 400; font-size: clamp(150px, 21vw, 330px); line-height: .82; letter-spacing: -.01em; }
.ib-95 .lead { margin-top: 14px; font-size: clamp(26px, 2.6vw, 38px); line-height: 1.2; font-weight: 700; max-width: 640px; }
.ib-95 .copy { margin-top: 18px; font-size: 19px; color: rgba(255,255,255,.9); max-width: 560px; }
.ib-95-meter { display: grid; grid-template-rows: auto auto 1fr; height: min(70vh, 560px); border: 2px solid var(--white); }
.ib-95-top { padding: 14px 18px; font-size: 15px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; background: var(--white); color: var(--red); }
.ib-95-top span, .ib-95-deep span { display: block; font-family: var(--display); font-size: 44px; letter-spacing: 0; line-height: 1; }
.ib-95-line { position: relative; height: 2px; background: var(--white); }
.ib-95-line span { position: absolute; right: 10px; top: 6px; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
.ib-95-deep { display: flex; flex-direction: column; justify-content: flex-end; padding: 18px; font-size: 15px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; background: repeating-linear-gradient(180deg, rgba(0,0,0,.14) 0 2px, transparent 2px 14px), #b9261d; }
.ib-95-deep span { font-size: clamp(64px, 7vw, 110px); }

/* ------------------------------------------------------------ Inner Blueprint: cross-link */
.ib-cross { background: var(--ink); color: var(--paper); padding: clamp(64px, 8vw, 110px) 0; }
.ib-cross-inner { display: grid; grid-template-columns: auto 1fr auto; gap: clamp(28px, 4vw, 64px); align-items: center; }
.ib-cross-flags { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.ib-cross-flags span { display: grid; place-content: center; width: clamp(64px, 6vw, 92px); aspect-ratio: 1; border: 2px solid var(--red); border-radius: 50%; font-family: var(--display); font-size: clamp(24px, 2.2vw, 34px); color: var(--paper); }
.ib-cross .copy { margin-top: 14px; font-size: 19px; color: #d8d2c8; max-width: 560px; }

/* ------------------------------------------------------------ Tablet */
@media (max-width: 1100px) {
  .numbers-grid { grid-template-columns: 1fr 1fr; }
  .num:nth-child(3) { border-left: 0; }
  .num:nth-child(n+3) { border-top: 1px solid #2c2a27; }
  .mm-room-grid { grid-template-columns: repeat(3, 1fr); }
  .about-creds { grid-template-columns: 1fr 1fr; }
  .about-creds li:nth-child(3) { padding-left: 0; border-left: 0; }
  .about-creds li:nth-child(n+3) { border-top: 1px solid var(--line); }
  .ib-cross-inner { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .idea-manifesto { grid-template-columns: 1fr; }
  .idea-manifesto li, .idea-manifesto li + li { padding: 20px 0; border-left: 0; border-bottom: 1px solid var(--dark-line); }
  .mm-feature, .mm-elite-inner, .tti-grid, .ib-95-grid, .mm-rooms-head { grid-template-columns: 1fr; }
  .mm-weeks { width: min(100%, 340px); }
  .mm-weeks-ring span { transform: rotate(calc(var(--i) * 6.923deg)) translateY(-150px); }
  .ib-95-meter { height: 300px; order: 2; }
}

/* ------------------------------------------------------------ Phone */
@media (max-width: 600px) {
  .idea-eq { font-size: 31vw; gap: 2vw; }
  .idea-eq .idea-o { -webkit-text-stroke-width: 2px; }
  .idea-sub { font-size: 11vw; line-height: .95; }
  .idea-key { gap: 8px; font-size: 13px; letter-spacing: .12em; flex-wrap: wrap; }
  .idea-manifesto li { font-size: 22px; }
  .idea-step { grid-template-columns: 1fr; gap: 6px; padding: 18px 16px; }
  .idea-letter { font-size: 58px; }
  .idea-board .vx-chips { grid-template-columns: 1fr; }
  .idea-board .vx-chip { font-size: 17px; min-height: 48px; }
  .numbers-grid { grid-template-columns: 1fr 1fr; }
  .num { padding: 28px 14px; }
  .num-value { font-size: 22vw; }
  .num h2 { font-size: 14px; letter-spacing: .08em; }
  .num p:not(.num-value) { font-size: 16px; }
  .about-creds { grid-template-columns: 1fr 1fr; }
  .about-creds li, .about-creds li + li { padding: 18px 12px 18px 0; }
  .about-creds li:nth-child(even) { padding-left: 12px; }
  .about-creds span { font-size: 28px; }
  .mm-feature { padding: 30px 20px; }
  .mm-feature h3 { font-size: 17vw; }
  .mm-feature-lead { font-size: 18px; }
  .mm-weeks { width: 280px; }
  .mm-weeks-ring span { width: 7px; height: 18px; margin: -9px 0 0 -3.5px; transform: rotate(calc(var(--i) * 6.923deg)) translateY(-124px); }
  .mm-weeks-ring span.on { height: 24px; }
  .mm-weeks-core strong { font-size: 96px; }
  .mm-room-grid { grid-template-columns: 1fr; }
  .mm-room-grid li { min-height: 0; display: grid; grid-template-columns: 64px 1fr; column-gap: 14px; padding: 20px 18px; }
  .mm-room-n { grid-row: span 3; font-size: 48px; }
  .mm-room-who { margin-top: 0; }
  .mm-room-grid h3 { padding-top: 8px; font-size: 28px; }
  .mm-retreat-grid { grid-template-columns: 1fr; gap: 40px; }
  .mm-elite-shade { background: linear-gradient(180deg, rgba(14,13,12,.9), rgba(14,13,12,.84)); }
  .mm-elite-path li { padding-left: 46px; }
  .tti-points li { grid-template-columns: 1fr; gap: 4px; }
  .tti-wheel .q b { font-size: 16vw; }
  .tti-wheel .q i { font-size: 11px; letter-spacing: .1em; }
  .tti-legend p { font-size: 24px; }
  .ib-95-title { font-size: 46vw; }
  .ib-95 .lead { font-size: 26px; }
  .ib-cross-flags span { width: 72px; }
}

/* Review fixes */
.idea-board .vx-ero-outcome::before { content: none !important; display: none !important; }
.idea-board .idea-step.vx-ero-outcome { display: grid; grid-template-columns: 78px 1fr; }
.idea-result { text-transform: uppercase; }
@media (max-width: 600px) { .idea-board .idea-step.vx-ero-outcome { grid-template-columns: 1fr; } }
@media (max-width: 600px) {
  .idea-step, .idea-board .idea-step.vx-ero-outcome { grid-template-columns: 44px 1fr; gap: 12px; }
  .idea-letter { font-size: 50px; }
}
/* TTI wheel: center each quadrant's content on its diagonal so labels stay inside the circle */
.tti-wheel .q { padding: 0 !important; }
.tti-wheel .q b { font-size: clamp(54px, 5.6vw, 88px); }
.tti-wheel .q-d { padding: 16% 0 0 16% !important; }
.tti-wheel .q-i { padding: 16% 16% 0 0 !important; }
.tti-wheel .q-s { padding: 0 0 16% 16% !important; }
.tti-wheel .q-c { padding: 0 16% 16% 0 !important; }
.ib-95-title { margin-top: 22px; }
@media (max-width: 600px) { .tti-wheel .q b { font-size: 13vw; } .tti-wheel .q i { font-size: 10px; letter-spacing: .06em; } }
@media (max-width: 600px) {
  .tti-wheel .q-d { padding: 6% 0 0 4% !important; }
  .tti-wheel .q-i { padding: 6% 4% 0 0 !important; }
  .tti-wheel .q-s { padding: 0 0 6% 4% !important; }
  .tti-wheel .q-c { padding: 0 4% 6% 0 !important; }
}
.mm-feature > *, .mm-elite-inner > *, .tti-grid > *, .ib-95-grid > *, .mm-rooms-head > * { min-width: 0; }
@media (max-width: 600px) {
  .mm-feature h3 { font-size: 12.4vw; }
  .mm-feature .button { white-space: normal; }
  .num h2 { letter-spacing: .04em; }
}

/* Round 2: Inner Blueprint links */
.ib-link { color: inherit; text-decoration: underline; text-decoration-color: var(--red); text-decoration-thickness: 2px; text-underline-offset: .2em; transition: color .2s ease; }
.ib-link:hover, .ib-link:focus-visible { color: var(--red); }
.ib-95 .ib-link { text-decoration-color: var(--white); }
.ib-95 .ib-link:hover, .ib-95 .ib-link:focus-visible { color: var(--white); text-decoration-thickness: 3px; }
.actions .ib-visit { align-self: center; }

/* Round 2: the 95% iceberg */
.ib-95-meter.has-photo { position: relative; display: block; height: auto; aspect-ratio: 4 / 5; overflow: hidden; border: 0; background: #071012; box-shadow: 0 30px 70px rgba(0,0,0,.28); }
.ib-95-meter.has-photo picture { position: absolute; inset: 0; }
.ib-95-meter.has-photo .ib-95-photo { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.ib-95-meter.has-photo .ib-95-top { position: absolute; top: 0; left: 0; right: 0; z-index: 1; display: flex; align-items: baseline; gap: 12px; padding: 16px 20px; background: none; color: var(--white); text-shadow: 0 2px 14px rgba(0,0,0,.65); }
.ib-95-meter.has-photo .ib-95-top span { display: inline; font-size: 36px; color: var(--white); }
.ib-95-meter.has-photo .ib-95-line { position: absolute; left: 0; right: 0; top: 14.8%; z-index: 1; height: 1px; background: rgba(255,255,255,.8); }
.ib-95-meter.has-photo .ib-95-line span { color: var(--white); text-shadow: 0 1px 8px rgba(0,0,0,.7); }
.ib-95-meter.has-photo .ib-95-deep { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 90px 22px 22px; background: linear-gradient(transparent, rgba(0,0,0,.72)); color: var(--white); }

/* Round 2: the coach map behind the cross-link */
.ib-cross.has-map { position: relative; overflow: hidden; }
.ib-cross-map { position: absolute; inset: 0; }
.ib-cross-map picture, .ib-cross-map img { display: block; width: 100%; height: 100%; }
.ib-cross-map img { object-fit: cover; object-position: 72% center; }
.ib-cross-map::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,20,20,.94) 0%, rgba(20,20,20,.72) 48%, rgba(20,20,20,.35) 100%); }
.ib-cross.has-map > .wrap { position: relative; z-index: 1; }

/* Round 2: TTI session photo */
.tti-photo { grid-column: 1 / -1; position: relative; margin: clamp(8px, 2vw, 24px) 0 0; overflow: hidden; }
.tti-photo img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; max-height: 560px; object-fit: cover; }
.tti-photo figcaption, .mm-room-credit { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.tti-photo figcaption { position: absolute; right: 12px; bottom: 10px; padding: 5px 9px; color: rgba(255,255,255,.85); background: rgba(0,0,0,.5); }

/* Round 2: Entrepreneur room backdrop */
.mm-feature.has-photo > .mm-feature-bg { position: absolute; inset: 0; z-index: 0; }
.mm-feature-bg picture, .mm-feature-bg img { display: block; width: 100%; height: 100%; }
.mm-feature-bg img { object-fit: cover; object-position: center; }
.mm-feature-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(14,14,14,.96) 0%, rgba(14,14,14,.84) 52%, rgba(14,14,14,.58) 100%); }
.mm-feature.has-photo > :not(.mm-feature-bg) { position: relative; z-index: 1; }

/* Round 2: room card photos */
.mm-room-grid li.has-photo { overflow: hidden; }
.mm-room-photo { margin: -24px -20px 20px; aspect-ratio: 4 / 3; overflow: hidden; background: var(--ink); }
.mm-room-photo picture, .mm-room-photo img { display: block; width: 100%; height: 100%; }
.mm-room-photo img { object-fit: cover; transition: transform .6s ease; }
.mm-room-grid li.has-photo:hover .mm-room-photo img { transform: scale(1.06); }
.mm-room-credit { margin-top: 14px; color: var(--muted); }

@media (max-width: 900px) {
  .mm-feature-bg::after { background: linear-gradient(180deg, rgba(14,14,14,.9) 0%, rgba(14,14,14,.8) 100%); }
  .ib-cross-map::after { background: linear-gradient(180deg, rgba(20,20,20,.88) 0%, rgba(20,20,20,.6) 100%); }
}
@media (max-width: 600px) {
  .mm-room-photo { grid-column: 1 / -1; margin: -20px -18px 16px; aspect-ratio: 16 / 9; }
  .ib-95-meter.has-photo .ib-95-top { padding: 10px 14px; gap: 8px; }
  .ib-95-meter.has-photo .ib-95-top span { font-size: 26px; }
  .tti-photo figcaption { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .mm-room-photo img { transition: none; }
  .mm-room-grid li.has-photo:hover .mm-room-photo img { transform: none; }
}

/* Round 2: keep every TTI label clear of the center circle */
.tti-core { width: 27%; }
.tti-wheel .q i { letter-spacing: .08em; font-size: 12px; }
.tti-wheel .q-d { padding: 20% 0 0 20% !important; }
.tti-wheel .q-i { padding: 20% 20% 0 0 !important; }
.tti-wheel .q-s { padding: 0 0 20% 20% !important; }
.tti-wheel .q-c { padding: 0 20% 20% 0 !important; }
@media (max-width: 600px) {
  .tti-wheel .q i { font-size: 10px; letter-spacing: .04em; }
  .tti-wheel .q-d { padding: 10% 0 0 8% !important; }
  .tti-wheel .q-i { padding: 10% 8% 0 0 !important; }
  .tti-wheel .q-s { padding: 0 0 10% 8% !important; }
  .tti-wheel .q-c { padding: 0 8% 10% 0 !important; }
}
@media (max-width: 600px) {
  .tti-photo figcaption { position: static; display: block; padding: 8px 0 0; background: none; color: #8f897f; font-size: 12px !important; }
  .ib-95-meter.has-photo .ib-95-top { font-size: 12px !important; letter-spacing: .08em; }
  .ib-95-meter.has-photo .ib-95-top span { font-size: 24px !important; }
}

/* Room cards 02-06: richer descriptions, 3 by 2 grid with a "find your room" card */
.mm-grid6 { grid-template-columns: repeat(3, 1fr) !important; gap: 18px; }
.mm-grid6 > li { display: flex !important; flex-direction: column; min-height: 0; padding: 0 !important; }
.mm-grid6 .mm-room-photo { margin: 0 !important; aspect-ratio: 16 / 10; }
.mm-grid6 .mm-room-body { display: flex; flex-direction: column; flex: 1; padding: 22px 24px 26px; }
.mm-grid6 .mm-room-head { display: flex; align-items: center; gap: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--line); position: relative; }
.mm-grid6 .mm-room-head::after { content: ""; position: absolute; left: 0; bottom: -1px; height: 2px; width: 0; background: var(--red); transition: width .5s ease; }
.mm-grid6 > li:hover .mm-room-head::after { width: 100%; }
.mm-grid6 .mm-room-n { font-size: 44px; grid-row: auto; }
.mm-grid6 .mm-room-who { margin: 0; font-size: 14px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; line-height: 1.35; color: var(--muted); }
.mm-grid6 h3 { margin-top: 0; padding-top: 16px; font-size: 30px; }
.mm-room-desc { margin-top: 12px; font-size: 17px; line-height: 1.55; color: var(--ink); }
.mm-room-tags { list-style: none; margin: auto 0 0; padding: 18px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.mm-room-tags li { padding: 6px 11px; font-size: 13px; font-weight: 700; letter-spacing: .04em; border: 1px solid var(--line); background: var(--paper); }
.mm-grid6 .mm-room-note { margin-top: 14px; }
.mm-grid6 .mm-room-cta { background: var(--ink); border-color: var(--ink); color: var(--white); justify-content: center; }
.mm-grid6 .mm-room-cta .mm-room-body { justify-content: center; padding: 34px 30px; }
.mm-room-cta-kicker { font-size: 14px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--red); }
.mm-grid6 .mm-room-cta h3 { font-size: clamp(36px, 3.2vw, 48px); color: var(--white); padding-top: 12px; }
.mm-grid6 .mm-room-cta .mm-room-desc { color: rgba(255,255,255,.82); }
.mm-grid6 .mm-room-cta .actions { margin-top: 22px; }
@media (max-width: 1100px) { .mm-grid6 { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 600px) {
  .mm-grid6 { grid-template-columns: 1fr !important; }
  .mm-grid6 .mm-room-photo { aspect-ratio: 16 / 9; }
  .mm-grid6 .mm-room-body { padding: 18px 18px 22px; }
  .mm-grid6 h3 { font-size: 28px; padding-top: 12px; }
}
@media (prefers-reduced-motion: reduce) { .mm-grid6 .mm-room-head::after { transition: none; } }
.mm-grid6 .mm-room-tags li { display: inline-flex !important; align-items: center; min-height: 0 !important; height: auto; padding: 6px 11px !important; margin: 0; border: 1px solid var(--line); background: var(--paper); box-shadow: none; transform: none !important; aspect-ratio: auto; }
.mm-grid6 .mm-room-tags li::before, .mm-grid6 .mm-room-tags li::after { content: none !important; }
