/* Phone reading layout; desktop compositions stay in deck.css. */
@media(max-width:760px){
 html{scroll-padding-top:calc(88px + env(safe-area-inset-top))}
 body{overflow-x:clip}
 .rail{height:calc(88px + env(safe-area-inset-top));padding-left:12px;padding-right:12px}
 .rail-title{right:14px;max-width:210px}
 .rail ol{margin-top:3px;scrollbar-width:none}
 .slide-link{touch-action:manipulation}
 .deck{padding-top:calc(88px + env(safe-area-inset-top));padding-bottom:calc(68px + env(safe-area-inset-bottom))}
 .slide,.slide.active,.slide.before,.slide.after{min-height:calc(100svh - 156px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:100%;overscroll-behavior:auto}
 .inner,.flow-inner,.closing-layout,.who-inner{width:100%;padding:30px 20px 36px;min-width:0}
 .copy,.hero-scene,.split>*{min-width:0;max-width:100%}
 h1{font-size:clamp(32px,9.3vw,42px);line-height:1.12}
 h2,.discovery h2,.journey .flow-heading h2,.closing-copy h2,.who-inner h2{font-size:clamp(28px,7.8vw,36px);line-height:1.15;letter-spacing:-.045em}
 .lede,.quiet,.growth-partner .lede{font-size:15px;line-height:1.7}
 .eyebrow,.mini-label{line-height:1.7;letter-spacing:.1em}
 .hero-photo{height:clamp(260px,80vw,360px);border-radius:64px 18px 18px 18px}
 .hero-photo img{object-position:50% 48%}
 .hero-scene{padding-bottom:0}
 .about-photo,.belle-photo{height:clamp(210px,65vw,300px)}
 .credentials{gap:12px;align-items:center}
 .credentials p{font-size:12px}
 .controls{height:calc(68px + env(safe-area-inset-bottom));padding:8px 12px calc(8px + env(safe-area-inset-bottom))}
 .control-hint{font-size:10px;max-width:125px}
 .control-group{gap:8px}
 .control-group button{width:44px;height:44px;touch-action:manipulation}
 /* Keep the three growth factors horizontal and visible together. */
 .revenue .inner{overflow:visible}
 .revenue-formula{min-width:0;grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr);gap:12px 5px;margin-top:28px;align-items:start}
 .revenue-total{grid-column:1/-1;font-size:24px;text-align:center}
 .revenue-total br{display:none}
 .revenue-formula>.formula-op:nth-child(2){grid-column:1/-1;line-height:1;text-align:center}
 .revenue-term{min-width:0;min-height:130px;padding-top:12px}
 .revenue-term>span{font-size:11px;margin-bottom:12px}
 .revenue-term strong{font-size:clamp(13px,3.8vw,18px);line-height:1.35;overflow-wrap:normal}
 .revenue-term small{font-size:11px;line-height:1.5}
 .formula-op{font-size:20px;align-self:center}
 .revenue-services{min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;padding-top:12px}
 .revenue-services p{font-size:12px;line-height:1.6;margin:0}
 /* Show the full source grid, then let readers swipe through larger Reels. */
 .ig-compare{gap:32px}
 .ig-shot{height:auto;aspect-ratio:auto}
 .ig-shot img{display:block;width:100%;height:auto;object-fit:contain}
 .discovery .current-ig h3,.future-ig h3{font-size:23px;line-height:1.35}
 .ig-compare p{font-size:15px;line-height:1.7}
 .reel-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;overscroll-behavior-x:contain;padding-bottom:10px;scrollbar-width:thin}
 .reel-grid>div{flex:0 0 72%;height:auto;aspect-ratio:3/4;scroll-snap-align:start;border-radius:12px}
 .reel-grid>div>span{font-size:13px;line-height:1.4;padding:40px 12px 14px}
 .reel-grid>div>b{font-size:18px;top:12px;right:10px;padding:7px 9px}
 .future-ig>.mini-label:after{content:' · SWIPE REELS →';font-size:10px;font-weight:500}
 .ig-compare .discovery-note{font-size:12px;line-height:1.6}
 .flow-node{grid-template-columns:36px minmax(0,1fr);gap:0 14px;padding-bottom:24px}
 .flow-node h3{font-size:17px}
 .flow-node p{font-size:14px}
 .flow-bottom strong{font-size:13px;line-height:1.7}
 .campus-photo{height:auto;aspect-ratio:4/3}
 .campus-result .mini-label{font-size:11px}
 .campus-result p,.campus-note{font-size:15px}
 .belle-stat span{font-size:13px;line-height:1.6}
 .who-inner{min-height:calc(100svh - 156px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
 .who-logos{gap:12px;justify-content:space-between}
 .who-logos img{max-width:28%;height:70px}
 .three-lines>div{gap:13px;font-size:15px;line-height:1.6}
 .intro-film{width:100%;margin-top:2px}
 .intro-video{aspect-ratio:16/10;border-radius:14px}
 .video-caption{color:white}
 .closing-copy .cta{width:100%;justify-content:space-between}
 .interview{max-width:280px}
}
@media(max-width:360px){
 .inner,.flow-inner,.closing-layout,.who-inner{padding-left:16px;padding-right:16px}
 .rail-title{font-size:8px;max-width:180px}.rail-title span{font-size:7px}
 .revenue-services p{font-size:11px}
 .control-hint{max-width:105px;font-size:9px}
 .control-group{gap:6px}
}
