/* MedGate · blocos de narrativa (problema → guia → plano → contraste → risco) */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 26px;margin-top:6px}
.hero-actions .button{padding:12px 24px;font-size:17px}

/* 3 passos no fluxo animado */
.flow-phase-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:1151px){.flow-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}.flow-canvas{width:min(100%,1040px);max-width:1040px}}
@media(min-width:761px) and (max-width:1150px){.flow-canvas{width:min(100%,900px)}}

/* problema + guia */
.story-problem,.story-risk{position:relative;z-index:2;text-align:center;font-family:inherit}
.story-problem{background:#fff;color:#1d1d1f;padding-top:150px;padding-bottom:130px;box-shadow:0 -24px 70px rgba(255,255,255,.38)}
.story-risk{background:#f5f5f7;color:#1d1d1f;padding-top:130px;padding-bottom:130px}
.story-problem h2,.story-risk h2{margin:0;color:#6e6e73;font-size:clamp(38px,5vw,72px);font-weight:300;letter-spacing:-.055em;line-height:1.04}
.story-problem h2 em,.story-risk h2 em{font-style:normal;color:#000}
.story-problem__head>p:not(.eyebrow){max-width:40ch;margin:26px auto 0;color:#6e6e73;font-size:clamp(17px,1.5vw,21px);font-weight:300;line-height:1.4}
.story-problem__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1040px;margin:72px auto 0;padding:0;list-style:none;text-align:left}
.story-problem__list li,.story-risk__cards article{padding:28px 26px 30px;border:1px solid #e3e7ea;border-radius:22px;background:#fafbfc}
.story-risk__cards article{background:#fff}
.story-problem__list b,.story-risk__cards b{display:block;margin-bottom:10px;color:#1d1d1f;font-size:20px;font-weight:600;letter-spacing:-.02em}
.story-problem__list span,.story-risk__cards p{display:block;margin:0;color:#6e6e73;font-size:16px;line-height:1.45}
.story-guide{max-width:880px;margin:110px auto 0}
.story-guide__mote{margin:0;color:#1d1d1f;font-size:clamp(32px,4vw,56px);font-weight:300;letter-spacing:-.05em;line-height:1.05}
.story-guide__mote em{font-style:normal;color:#0071e3}
.story-guide__text{max-width:52ch;margin:26px auto 0;color:#6e6e73;font-size:clamp(16px,1.4vw,19px);font-weight:300;line-height:1.45}
.story-guide__proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:720px;margin:54px auto 0;padding-top:34px;border-top:1px solid #e3e7ea}
.story-guide__proof dt{color:#1d1d1f;font-size:clamp(30px,3.4vw,46px);font-weight:300;letter-spacing:-.04em}
.story-guide__proof dd{margin:6px 0 0;color:#6e6e73;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}

/* risco */
.story-risk__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1040px;margin:64px auto 0;text-align:left}
.story-risk__faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 48px;max-width:1040px;margin:64px auto 0;padding-top:40px;border-top:1px solid #dcdfe3;text-align:left}
.story-risk__faq dt{color:#1d1d1f;font-size:18px;font-weight:600;letter-spacing:-.015em}
.story-risk__faq dd{margin:8px 0 0;color:#6e6e73;font-size:16px;line-height:1.45}
.story-risk__note{max-width:64ch;margin:36px auto 0;color:#86868b;font-size:13px;line-height:1.5}

@media(max-width:860px){
  .story-problem{padding-top:96px;padding-bottom:84px}.story-risk{padding-top:84px;padding-bottom:84px}
  .story-problem__list,.story-risk__cards,.story-risk__faq{grid-template-columns:1fr;margin-top:44px}
  .story-guide{margin-top:76px}.story-guide__proof{gap:10px}
  .story-guide__proof dd{font-size:10px;letter-spacing:.05em}
}

/* história da Dra. Marina (personagem fictícia) */
.story-chapter{position:relative;z-index:1;max-width:58ch;margin:34px 0 0;padding:2px 0 2px 20px;border-left:2px solid #0071e3;text-align:left;color:#424245;font-size:clamp(16px,1.35vw,18px);font-weight:400;line-height:1.5}
.story-chapter span{display:block;margin-bottom:8px;color:#0071e3;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.story-chapter b{color:#1d1d1f;font-weight:600}
.story-chapter small{display:block;margin-top:8px;color:#86868b;font-size:12px}
.story-chapter--center{margin:60px auto 0}
.story-problem .story-chapter--center{margin:56px auto 0}
.acquisition-flow .story-chapter--center{margin:44px auto 0;width:min(100%,58ch)}
.closing div>p.story-chapter{width:auto;max-width:44ch;margin:26px auto 0;padding:2px 0 2px 18px;border-left-color:#5ac8fa;color:#e5e5ea;font-size:17px;text-align:left}
.closing div>p.story-chapter span{color:#5ac8fa}

/* liquid glass cinza · card do capítulo 1 (linguagem Apple) */
.story-glass-stage{position:relative;isolation:isolate;width:min(100%,880px);margin:64px auto 0}
.story-glass-stage:before,.story-glass-stage:after{position:absolute;z-index:-1;border-radius:50%;content:"";filter:blur(48px);opacity:.8;pointer-events:none}
.story-glass-stage:before{top:-34px;left:-28px;width:260px;height:260px;background:radial-gradient(circle at 40% 40%,#aeb5c1 0%,#cfd3da 52%,rgba(207,211,218,0) 72%);animation:glass-orb-a 18s ease-in-out infinite alternate}
.story-glass-stage:after{right:-28px;bottom:-34px;width:280px;height:280px;background:radial-gradient(circle at 60% 60%,#98a1ae 0%,#c4c9d2 50%,rgba(196,201,210,0) 72%);animation:glass-orb-b 22s ease-in-out infinite alternate}
@keyframes glass-orb-a{to{transform:translate(60px,28px) scale(1.1)}}
@keyframes glass-orb-b{to{transform:translate(-56px,-24px) scale(1.08)}}

.story-chapter--glass{--mx:22%;--my:-10%;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:44px;max-width:none;margin:0;padding:44px 48px;border:0;border-radius:38px;overflow:visible;background:linear-gradient(160deg,rgba(255,255,255,.60) 0%,rgba(234,236,240,.44) 52%,rgba(214,217,224,.40) 100%);-webkit-backdrop-filter:blur(30px) saturate(190%);backdrop-filter:blur(30px) saturate(190%);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(88,96,108,.14),inset 0 0 44px rgba(255,255,255,.30),0 1px 2px rgba(30,36,46,.06),0 14px 26px -14px rgba(30,36,46,.14),0 44px 72px -40px rgba(30,36,46,.30);color:#1d1d1f;text-align:left}
/* brilho especular que acompanha o cursor */
.story-chapter--glass:before{position:absolute;inset:0;z-index:0;border-radius:inherit;background:radial-gradient(460px circle at var(--mx) var(--my),rgba(255,255,255,.62),rgba(255,255,255,0) 62%),linear-gradient(118deg,rgba(255,255,255,.50) 0%,rgba(255,255,255,0) 30%);content:"";pointer-events:none}
/* borda de luz fina (gradiente) */
.story-chapter--glass:after{position:absolute;inset:0;z-index:2;padding:1px;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.18) 38%,rgba(255,255,255,.10) 62%,rgba(255,255,255,.75) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);content:"";pointer-events:none}
.story-glass-body,.story-glass-avatar{position:relative;z-index:1}
.story-chapter .story-glass-label,.story-glass-label{display:block;margin:0 0 14px;color:#6e6e73;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.story-glass-text{margin:0;color:#1d1d1f;font-size:clamp(20px,2.15vw,27px);font-weight:400;letter-spacing:-.018em;line-height:1.3;text-wrap:pretty}
.story-glass-text b{font-weight:600}
.story-glass-note{display:block;margin-top:20px;color:#86868b;font-size:13px;line-height:1.4}

/* avatar circular, como em Contatos */
.story-glass-avatar{display:flex;flex-direction:column;align-items:center;width:172px;margin:0;padding-bottom:30px}
.story-glass-avatar img{display:block;width:172px;height:172px;border-radius:50%;object-fit:cover;object-position:66% 20%;outline:1px solid rgba(0,0,0,.08);outline-offset:-1px;box-shadow:0 0 0 5px rgba(255,255,255,.72),0 0 0 6px rgba(255,255,255,.35),0 1px 2px rgba(30,36,46,.10),0 18px 34px -14px rgba(30,36,46,.42)}
.story-glass-avatar figcaption{position:absolute;bottom:0;left:50%;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 16px 9px;border-radius:20px;background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 0 0 .5px rgba(30,36,46,.08),0 6px 16px -6px rgba(30,36,46,.28);transform:translateX(-50%);white-space:nowrap}
.story-glass-avatar figcaption b{color:#1d1d1f;font-size:14px;font-weight:600;letter-spacing:-.01em;line-height:1.15}
.story-glass-avatar figcaption i{color:#6e6e73;font-size:11px;font-style:normal;line-height:1.15}

@media(max-width:860px){
  .story-glass-stage{margin-top:44px}
  .story-chapter--glass{grid-template-columns:1fr;gap:26px;padding:30px 24px 32px;border-radius:30px}
  .story-glass-avatar{order:-1;align-self:start;justify-self:start;width:128px;padding-bottom:28px}
  .story-glass-avatar img{width:128px;height:128px}
  .story-glass-text{font-size:20px}
  .story-glass-stage:before{left:-24px;width:200px;height:200px}.story-glass-stage:after{right:-24px;width:220px;height:220px}
}
@media(prefers-reduced-motion:reduce){.story-glass-stage:before,.story-glass-stage:after{animation:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.story-chapter--glass{background:rgba(236,237,240,.94)}}

/* guia · empatia e autoridade (seção própria) */
.story-guide-section{position:relative;z-index:2;background:#fff;color:#1d1d1f;text-align:center;padding-top:30px;padding-bottom:130px}
.story-guide-section .story-guide{margin:0 auto}
.story-guide__empathy{margin:0 0 54px;color:#6e6e73;font-size:clamp(20px,2vw,26px);font-weight:300;letter-spacing:-.02em;line-height:1.35}
.story-guide-section .eyebrow{margin-bottom:22px}

/* níveis do problema */
.story-level{display:block;margin-bottom:12px;color:#86868b;font-size:11px;font-style:normal;font-weight:600;letter-spacing:.1em;text-transform:uppercase}

/* acordo e objeções em 3 colunas */
.story-risk__faq{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 36px}
@media(max-width:860px){.story-risk__faq{grid-template-columns:1fr}}

/* chamada para ação */
.story-cta{position:relative;z-index:2;background:#fff;color:#1d1d1f;text-align:center;padding-top:120px;padding-bottom:120px}
.story-cta h2{margin:0;color:#6e6e73;font-size:clamp(40px,5.4vw,76px);font-weight:300;letter-spacing:-.055em;line-height:1.04}
.story-cta h2 em{font-style:normal;color:#000}
.story-cta__text{max-width:36ch;margin:22px auto 32px;color:#6e6e73;font-size:clamp(17px,1.5vw,21px);font-weight:300;line-height:1.4}
.story-cta__actions{margin-top:0}

/* final feliz */
.story-success{background:#fff}
.story-success .story-risk__cards article{background:#fafbfc}
.story-success__line{max-width:30ch;margin:64px auto 0;color:#1d1d1f;font-size:clamp(24px,2.8vw,38px);font-weight:300;letter-spacing:-.035em;line-height:1.18}
@media(max-width:860px){.story-guide-section{padding-bottom:84px}.story-cta{padding-top:84px;padding-bottom:84px}.story-success__line{margin-top:44px}}

/* ajustes do quiz */
.hero-microcopy{margin:14px 0 0!important;color:#a1a1a6;font-size:14px!important;font-weight:400!important}
.story-villain{margin:22px auto 0!important;color:#1d1d1f!important;font-size:clamp(18px,1.6vw,22px)!important;font-weight:400!important}
.story-villain b{font-weight:600}
.story-problem__list li:nth-child(2){border-color:#cfd8e3;background:#fff;box-shadow:0 14px 34px -22px rgba(0,113,227,.35)}
.story-problem__list li:nth-child(2) .story-level{color:#0071e3}
.story-cta__actions--inline{margin-top:40px}

/* menos ruído */
.story-legal{max-width:70ch;color:#6e6e73;font-size:12px;line-height:1.5}
.story-problem .story-glass-stage{margin-top:44px}
.story-problem__list{margin-top:56px}

/* ============ CENA · fundo limpo + janela de vidro (visionOS) na seção Problema ============ */
.story-scene{position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;max-width:1120px;min-height:480px;margin:52px auto 0;padding:clamp(56px,7vw,96px) clamp(20px,4vw,56px);border-radius:44px;background:linear-gradient(180deg,#f5f3ef 0%,#ebe8e2 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 30px 70px -40px rgba(30,36,46,.28)}
.scene-ambient{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.scene-ambient:before{position:absolute;top:-20%;left:56%;width:20%;height:150%;transform:rotate(14deg);background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.85),rgba(255,255,255,0));filter:blur(26px);content:""}
.scene-ambient i{position:absolute;border-radius:50%;filter:blur(60px);will-change:transform}
.scene-ambient i:nth-child(1){top:-8%;right:6%;width:440px;height:440px;background:radial-gradient(circle at 40% 40%,#8f9aab 0%,#bcc4d0 50%,rgba(188,196,208,0) 72%);opacity:.8;animation:scene-orb-a 20s ease-in-out infinite alternate}
.scene-ambient i:nth-child(2){bottom:-22%;left:-6%;width:480px;height:480px;background:radial-gradient(circle,#e3d3bb 0%,#efe4d3 52%,rgba(239,228,211,0) 72%);opacity:.95;animation:scene-orb-b 24s ease-in-out infinite alternate}
.scene-ambient i:nth-child(3){top:34%;left:30%;width:320px;height:320px;background:radial-gradient(circle,#c4d4e8 0%,rgba(196,212,232,0) 70%);opacity:.7;animation:scene-orb-c 18s ease-in-out infinite alternate}
.scene-ambient i:nth-child(4){bottom:-6%;right:8%;width:280px;height:280px;background:radial-gradient(circle,#a9b3c2 0%,rgba(169,179,194,0) 70%);opacity:.6;animation:scene-orb-b 22s ease-in-out infinite alternate-reverse}
@keyframes scene-orb-a{to{transform:translate(-60px,44px) scale(1.08)}}
@keyframes scene-orb-b{to{transform:translate(54px,-36px) scale(1.1)}}
@keyframes scene-orb-c{to{transform:translate(-36px,-44px) scale(1.12)}}

/* janela flutuante */
.scene-popup{position:relative;z-index:2;width:min(100%,640px);perspective:1400px;opacity:0;transform:translateY(34px) scale(.9)}
.scene-popup.is-open{animation:scene-popup-in 1s cubic-bezier(.2,.9,.25,1) forwards,scene-popup-float 9s ease-in-out 1.2s infinite}
@keyframes scene-popup-in{0%{opacity:0;transform:translateY(34px) scale(.88)}55%{opacity:1;transform:translateY(-6px) scale(1.02)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes scene-popup-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.scene-popup__card{transform:rotateX(calc(var(--rx,0)*1deg)) rotateY(calc(var(--ry,0)*1deg));transform-style:preserve-3d;transition:transform .28s ease-out;grid-template-columns:minmax(0,1fr) auto;gap:34px;padding:38px 40px}
.scene-popup .story-glass-avatar{width:132px;padding-bottom:28px}
.scene-popup .story-glass-avatar img{width:132px;height:132px}
.scene-popup .story-glass-text{font-size:clamp(19px,2vw,25px)}
.scene-popup__grabber{display:block;width:104px;height:6px;margin:22px auto 0;border-radius:999px;background:rgba(255,255,255,.8);box-shadow:inset 0 1px 0 #fff,0 0 0 .5px rgba(30,36,46,.1),0 6px 14px -6px rgba(30,36,46,.3);opacity:0;transition:opacity .6s ease .9s}
.scene-chip{position:absolute;right:-30px;bottom:-30px;z-index:3;display:flex;flex-direction:column;gap:2px;padding:12px 18px 13px;border-radius:22px;background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(22px) saturate(185%);backdrop-filter:blur(22px) saturate(185%);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.95),inset 0 0 0 .5px rgba(255,255,255,.7),0 16px 30px -14px rgba(30,36,46,.4);opacity:0;transform:translateY(14px) scale(.9);transition:opacity .6s ease 1.1s,transform .8s cubic-bezier(.2,.9,.25,1.2) 1.1s}
.scene-chip b{color:#1d1d1f;font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.scene-chip span{color:#6e6e73;font-size:12px}
.scene-popup.is-written .scene-popup__grabber{opacity:1}
.scene-popup.is-written .scene-chip{opacity:1;transform:none}

/* texto aparecendo dentro da janela */
.scene-popup .story-glass-label,.scene-popup .story-glass-note,.scene-popup .story-glass-avatar{opacity:0;transition:opacity .7s ease .15s}
.scene-popup .story-glass-avatar{transition-delay:.55s}
.scene-popup.is-written .story-glass-label,.scene-popup.is-written .story-glass-note,.scene-popup.is-written .story-glass-avatar{opacity:1}
.scene-popup .story-glass-text .w{display:inline-block;margin:0;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:none;opacity:0;transform:translateY(8px);filter:blur(6px);transition:opacity .55s ease,transform .55s ease,filter .55s ease;transition-delay:calc(var(--i,0)*42ms + .2s)}
.scene-popup.is-written .story-glass-text .w{opacity:1;transform:none;filter:none}

@media(max-width:860px){
  .story-scene{min-height:0;margin-top:40px;border-radius:32px;padding:48px 16px 60px}
  .scene-popup__card{grid-template-columns:1fr;gap:26px;padding:26px 22px 28px}
  .scene-popup .story-glass-avatar{order:-1;align-self:start;justify-self:start;width:120px}
  .scene-popup .story-glass-avatar img{width:120px;height:120px}
  .scene-chip{right:6px;bottom:-32px}
  .scene-ambient i:nth-child(1){width:320px;height:320px;right:-80px}
  .scene-ambient i:nth-child(2){width:340px;height:340px}
}
@media(prefers-reduced-motion:reduce){
  .scene-popup{opacity:1;transform:none;animation:none!important}
  .scene-popup .story-glass-text .w,.scene-popup .story-glass-label,.scene-popup .story-glass-note,.scene-popup .story-glass-avatar,.scene-popup__grabber,.scene-chip{opacity:1;transform:none;filter:none;transition:none}
  .scene-ambient i{animation:none}
}

/* ============ SEÇÃO 2 · imagem de fundo + vidro líquido ============ */
.story-problem{background:linear-gradient(180deg,rgba(7,12,20,.74) 0%,rgba(7,12,20,.56) 38%,rgba(7,12,20,.66) 68%,rgba(7,12,20,.92) 100%),url("assets/repertorio/problema-sala-cirurgica.jpg") 62% 28%/cover no-repeat,#0a1018;color:#fff;box-shadow:none}
.story-problem .eyebrow{color:rgba(255,255,255,.74)}
.story-problem h2{color:rgba(255,255,255,.7)}
.story-problem h2 em{color:#fff}
.story-problem .story-villain{color:#fff!important}
.story-problem .story-villain b{color:#fff}

/* a cena deixa de ser um painel claro: a janela flutua direto sobre a foto */
.story-scene{overflow:visible;border-radius:0;background:none;box-shadow:none;min-height:520px;padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(60px,7vw,96px)}
.scene-ambient{display:none}

/* ---- vidro líquido · janela ---- */
.story-chapter--glass{background:linear-gradient(150deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.06) 42%,rgba(255,255,255,.1) 100%),linear-gradient(rgba(9,15,25,.38),rgba(9,15,25,.38));-webkit-backdrop-filter:blur(26px) saturate(190%) brightness(1.06);backdrop-filter:blur(26px) saturate(190%) brightness(1.06);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.7),inset 0 -1px 0 rgba(255,255,255,.12),inset 0 0 46px rgba(255,255,255,.12),0 2px 4px rgba(0,0,0,.18),0 24px 60px -18px rgba(0,0,0,.6);color:#fff}
.story-chapter--glass:before{background:radial-gradient(520px circle at var(--mx) var(--my),rgba(255,255,255,.34),rgba(255,255,255,0) 62%),linear-gradient(118deg,rgba(255,255,255,.32) 0%,rgba(255,255,255,0) 32%),linear-gradient(115deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.16) 48%,rgba(255,255,255,0) 66%);background-size:auto,auto,260% 100%;background-position:0 0,0 0,0% 0;animation:lg-sheen 9s ease-in-out infinite alternate}
.story-chapter--glass:after{background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.14) 36%,rgba(160,200,255,.22) 62%,rgba(255,200,230,.45) 100%)}
@keyframes lg-sheen{to{background-position:0 0,0 0,100% 0}}
.story-chapter--glass .story-glass-label{color:rgba(255,255,255,.9)}
.story-chapter--glass .story-glass-text,.story-chapter--glass .story-glass-text b{color:#fff}
.story-chapter--glass .story-glass-note{color:rgba(255,255,255,.78)}
.story-glass-avatar img{box-shadow:0 0 0 5px rgba(255,255,255,.4),0 0 0 6px rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.3),0 18px 34px -14px rgba(0,0,0,.7)}
.story-glass-avatar figcaption{background:rgba(255,255,255,.26);-webkit-backdrop-filter:blur(18px) saturate(190%);backdrop-filter:blur(18px) saturate(190%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 0 0 .5px rgba(255,255,255,.25),0 8px 18px -8px rgba(0,0,0,.55)}
.story-glass-avatar figcaption b{color:#fff}
.story-glass-avatar figcaption i{color:rgba(255,255,255,.75)}
.scene-popup__grabber{background:rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 6px 14px -6px rgba(0,0,0,.6)}
.scene-chip{background:linear-gradient(150deg,rgba(255,255,255,.22),rgba(255,255,255,.08)),linear-gradient(rgba(9,15,25,.38),rgba(9,15,25,.38));-webkit-backdrop-filter:blur(22px) saturate(190%) brightness(1.06);backdrop-filter:blur(22px) saturate(190%) brightness(1.06);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.7),inset 0 0 0 .5px rgba(255,255,255,.3),0 16px 30px -12px rgba(0,0,0,.6)}
.scene-chip b{color:#fff}
.scene-chip span{color:rgba(255,255,255,.75)}

/* ---- vidro líquido · cartões ---- */
.story-problem__list li{position:relative;overflow:hidden;border:0;border-radius:24px;background:linear-gradient(150deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.05) 46%,rgba(255,255,255,.09) 100%),linear-gradient(rgba(9,15,25,.34),rgba(9,15,25,.34));-webkit-backdrop-filter:blur(24px) saturate(185%) brightness(1.05);backdrop-filter:blur(24px) saturate(185%) brightness(1.05);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.6),inset 0 -1px 0 rgba(255,255,255,.1),inset 0 0 36px rgba(255,255,255,.08),0 2px 4px rgba(0,0,0,.16),0 20px 44px -18px rgba(0,0,0,.55)}
.story-problem__list li:before{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,0) 34%);content:"";pointer-events:none}
.story-problem__list li:after{position:absolute;inset:0;padding:1px;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.85) 0%,rgba(255,255,255,.1) 40%,rgba(160,200,255,.2) 68%,rgba(255,200,230,.38) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);content:"";pointer-events:none}
.story-problem__list li>*{position:relative;z-index:1}
.story-problem__list li:nth-child(2){background:linear-gradient(150deg,rgba(120,180,255,.34) 0%,rgba(120,180,255,.12) 46%,rgba(255,255,255,.14) 100%);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.7),inset 0 0 40px rgba(110,170,255,.18),0 2px 4px rgba(0,0,0,.18),0 24px 50px -16px rgba(30,100,220,.55)}
.story-problem .story-level{color:rgba(255,255,255,.78)}
.story-problem__list li:nth-child(2) .story-level{color:#9cc8ff}
.story-problem__list b{color:#fff}
.story-problem__list span:not(.story-level){color:rgba(255,255,255,.78)}

/* ---- refração real (Chrome/Edge): ativada por JS quando o navegador suporta ---- */
.lg-refract .story-chapter--glass,.lg-refract .scene-chip,.lg-refract .story-problem__list li{-webkit-backdrop-filter:url(#liquid-glass) blur(3px) saturate(185%) brightness(1.06);backdrop-filter:url(#liquid-glass) blur(3px) saturate(185%) brightness(1.06)}

@media(max-width:860px){
  .story-problem{background-position:68% 20%}
  .story-scene{min-height:0}
}
@media(prefers-reduced-motion:reduce){.story-chapter--glass:before{animation:none}}

/* ============ SEÇÃO 2 · palco sticky com a médica 3D (Sketchfab) ============ */
.story-problem{height:460svh;padding:0;overflow:visible;background:#0a1018;box-shadow:none}
.problem-stage{position:sticky;top:0;height:100svh;overflow:clip;isolation:isolate;background:#0a1018}
.ps-bg{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,12,20,.80) 0%,rgba(7,12,20,.64) 45%,rgba(7,12,20,.84) 100%),url("assets/repertorio/problema-sala-cirurgica.jpg") 62% 30%/cover no-repeat}

/* a médica: camada de fundo, integrada com bordas em gradiente (o Sketchfab não entrega fundo transparente) */
.ps-model{position:absolute;z-index:3;top:0;left:50%;width:min(68vw,1040px);height:100%;transform:translateX(-50%);overflow:hidden;opacity:0;transition:opacity 1s ease;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 54% 66% at 50% 44%,#000 50%,transparent 100%);mask-image:radial-gradient(ellipse 54% 66% at 50% 44%,#000 50%,transparent 100%)}
.ps-model.is-ready{opacity:1}
.ps-model iframe{position:absolute;top:0;left:0;width:100%;height:calc(100% + 150px);border:0;background:#0a0f17;pointer-events:none}

.ps-panels{position:absolute;inset:0;z-index:4;pointer-events:none}
.ps-panel{position:absolute;visibility:hidden}
.ps-panel--a{left:clamp(24px,5vw,72px);top:50%;transform:translateY(-50%);width:min(44vw,680px)}
.ps-panel--b{right:clamp(24px,5vw,72px);top:50%;transform:translateY(-50%);width:min(40vw,560px)}
.ps-panel--c{left:clamp(24px,5vw,72px);right:clamp(24px,5vw,72px);bottom:clamp(40px,8vh,84px)}
.ps-panel--a .eyebrow{margin:0 0 18px}
.ps-panel--a h2{margin:0;font-size:clamp(46px,6.2vw,96px);line-height:1.02;letter-spacing:-.055em}
.ps-panel--a .ps-line{display:inline-block}
.ps-panel--a .story-villain{margin:30px 0 0!important;font-size:clamp(18px,1.6vw,23px)!important}
.ps-panel--b .story-chapter--glass{grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:30px 32px}
.ps-panel--b .story-glass-text{font-size:clamp(18px,1.55vw,23px)}
.ps-panel--b .story-glass-avatar{width:104px;padding-bottom:26px}
.ps-panel--b .story-glass-avatar img{width:104px;height:104px}
.ps-panel .story-glass-text .w{display:inline-block;margin:0;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:none}
.ps-panel--c .story-problem__list{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;margin:0;gap:18px}
.ps-panel--c .story-problem__list li{padding:22px 24px 24px}

/* indicador, controles e crédito */
.ps-ui{position:absolute;z-index:5;top:82px;right:clamp(24px,5vw,72px);display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.8);font-size:13px;font-weight:600;letter-spacing:.12em;pointer-events:none}
.ps-count b{color:#fff;font-weight:600}
.ps-bar{width:84px;height:2px;border-radius:2px;background:rgba(255,255,255,.22);overflow:hidden}
.ps-bar i{display:block;width:100%;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}
.ps-explore{position:absolute;z-index:8;top:76px;left:clamp(24px,5vw,72px);padding:10px 18px;border:0;border-radius:999px;background:linear-gradient(150deg,rgba(255,255,255,.22),rgba(255,255,255,.08)),rgba(9,15,25,.38);-webkit-backdrop-filter:blur(20px) saturate(190%);backdrop-filter:blur(20px) saturate(190%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 0 0 .5px rgba(255,255,255,.3),0 10px 24px -10px rgba(0,0,0,.6);color:#fff;font:600 13px/1 inherit;font-family:inherit;letter-spacing:.01em;cursor:pointer;opacity:.0;transition:opacity .6s ease}
.ps-explore:not([hidden]){opacity:1}
.ps-explore:hover{background:linear-gradient(150deg,rgba(255,255,255,.3),rgba(255,255,255,.12)),rgba(9,15,25,.38)}
.ps-credit{position:absolute;z-index:5;left:clamp(24px,5vw,72px);bottom:16px;margin:0;font-size:11px;letter-spacing:.02em}
.ps-credit a{color:rgba(255,255,255,.62);text-decoration:none}
.ps-credit a:hover{color:#fff;text-decoration:underline}
.ps-veil{position:absolute;inset:0;z-index:6;background:#fff;opacity:0;pointer-events:none}

/* modo explorar: o iframe passa a receber o ponteiro; o controle por scroll fica pausado */
.is-exploring .ps-model{z-index:7;pointer-events:auto;-webkit-mask-image:none;mask-image:none}
.is-exploring .ps-model iframe{pointer-events:auto}
.is-exploring .ps-panel{visibility:hidden!important}

/* sem 3D (falha do Sketchfab ou sem WebGL): o palco continua legível, sem a médica */
.no-3d .ps-model,.no-3d .ps-explore,.no-3d .ps-credit{display:none}

@media(max-width:860px){
  .story-problem{height:420svh}
  .ps-model{left:0;width:100%;transform:none;-webkit-mask-image:radial-gradient(ellipse 80% 56% at 50% 36%,#000 48%,transparent 100%);mask-image:radial-gradient(ellipse 80% 56% at 50% 36%,#000 48%,transparent 100%)}
  .problem-stage:after{position:absolute;left:0;right:0;bottom:0;z-index:3;height:64%;background:linear-gradient(to top,rgba(7,12,20,.94) 0%,rgba(7,12,20,.78) 55%,rgba(7,12,20,0) 100%);content:"";pointer-events:none}
  .ps-panel--a{left:20px;right:20px;top:auto;bottom:11%;transform:none;width:auto}
  .ps-panel--a h2{font-size:clamp(38px,11vw,54px)}
  .ps-panel--a .story-villain{margin-top:18px!important;font-size:17px!important}
  .ps-panel--b{left:14px;right:14px;top:auto;bottom:8%;transform:none;width:auto}
  .ps-panel--b .story-chapter--glass{grid-template-columns:1fr;padding:22px 20px 24px;gap:0}
  .ps-panel--b .story-glass-avatar{display:none}
  .ps-panel--b .story-glass-text{font-size:19px}
  .ps-panel--c{left:14px;right:14px;bottom:5%}
  .ps-panel--c .story-problem__list{grid-template-columns:1fr;gap:10px}
  .ps-panel--c .story-problem__list li{padding:14px 18px 16px}
  .ps-panel--c .story-problem__list li b{margin-bottom:4px;font-size:16px}
  .ps-panel--c .story-problem__list li span:not(.story-level){font-size:13px;line-height:1.35}
  .ps-panel--c .story-level{margin-bottom:6px;font-size:10px}
  .ps-ui{top:70px;right:20px}
  .ps-explore{top:66px;left:20px;padding:8px 14px;font-size:12px}
  .ps-credit{left:16px;bottom:8px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.ps-model{transition:none}.ps-explore{transition:none}}

/* ajustes de composição: a médica desloca de lado conforme o painel, e o texto nunca fica sobre o corpo dela */
.ps-model{--ps-shift:0vw;transform:translateX(calc(-50% + var(--ps-shift)))}
.ps-panel--a{width:min(36vw,540px)}
.ps-panel--a h2{font-size:clamp(40px,5vw,78px)}
.ps-panel--b{width:min(38vw,540px)}
.ps-panel--c .story-problem__list li{background:linear-gradient(150deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.04) 46%,rgba(255,255,255,.08) 100%),linear-gradient(rgba(9,15,25,.64),rgba(9,15,25,.64))}
.ps-panel--c .story-problem__list li:nth-child(2){background:linear-gradient(150deg,rgba(120,180,255,.30) 0%,rgba(120,180,255,.1) 46%,rgba(255,255,255,.1) 100%),linear-gradient(rgba(9,15,25,.6),rgba(9,15,25,.6))}
@media(max-width:860px){.ps-model{transform:none}}

/* mobile: reafirma as larguras depois dos ajustes de composição (a ordem do CSS as sobrescrevia) */
@media(max-width:860px){
  .ps-panel--a{left:20px;right:20px;top:auto;bottom:11%;transform:none;width:auto}
  .ps-panel--a h2{font-size:clamp(38px,11vw,54px)}
  .ps-panel--b{left:14px;right:14px;top:auto;bottom:8%;transform:none;width:auto}
  .ps-panel--b .story-chapter--glass{grid-template-columns:1fr;padding:22px 20px 24px;gap:0}
  .ps-panel--c{left:14px;right:14px;bottom:5%}
  .ps-model{transform:none}
}

/* degradê lateral (estilo streaming): escurece o lado direito de forma suave e uniforme, sem faixas verticais */
.ps-bg{background:linear-gradient(to left,rgba(5,8,14,.97) 0%,rgba(5,8,14,.93) 20%,rgba(5,8,14,.80) 36%,rgba(5,8,14,.52) 52%,rgba(5,8,14,.20) 68%,rgba(5,8,14,0) 82%),linear-gradient(180deg,rgba(7,12,20,.80) 0%,rgba(7,12,20,.64) 45%,rgba(7,12,20,.84) 100%),url("assets/repertorio/problema-sala-cirurgica.jpg") 62% 30%/cover no-repeat}
@media(max-width:860px){.ps-bg{background:linear-gradient(to left,rgba(5,8,14,.9) 0%,rgba(5,8,14,.6) 38%,rgba(5,8,14,0) 70%),linear-gradient(180deg,rgba(7,12,20,.80) 0%,rgba(7,12,20,.64) 45%,rgba(7,12,20,.84) 100%),url("assets/repertorio/problema-sala-cirurgica.jpg") 62% 30%/cover no-repeat}}

/* aquecimento: enquanto o modelo 3D carrega, o iframe precisa estar dentro da viewport para o navegador renderizá-lo */
.ps-warm .ps-model{position:fixed;top:0;left:0;width:640px;height:420px;transform:none;-webkit-mask-image:none;mask-image:none;opacity:0;pointer-events:none;z-index:1}

/* abertura do site depois da tela de carregamento */
html.site-ready .hero-copy{animation:site-open 1.1s cubic-bezier(.2,.8,.2,1) backwards}
@keyframes site-open{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html.site-ready .hero-copy{animation:none}#preloader,.pl-logo{transition-duration:.01s}}

/* card da Dra. Marina: somente texto (sem foto, círculo ou etiqueta) */
.ps-panel--b .story-chapter--glass{grid-template-columns:1fr;gap:0;padding:34px 38px 32px}
.ps-panel--b .story-glass-text{font-size:clamp(19px,1.7vw,25px)}
@media(max-width:860px){.ps-panel--b .story-chapter--glass{padding:22px 20px 24px}}
