/* Web-only reading layouts. The PDF and wide-screen compositions stay unchanged. */
@media (max-width:900px), (max-height:500px) {
  body{--header:60px}
  main{scroll-snap-type:none;overflow-x:hidden;position:relative}
  .site-header{height:var(--header)}
  .screen{display:block;height:auto;min-height:0;overflow:clip;scroll-snap-align:none}
  .frame,.overview .frame{width:100%;height:auto;transform:none!important}
  #main .studio{width:100%;height:auto;min-height:0;padding:36px 24px 28px;overflow:visible;transform:none;translate:none}
  #main .studio>*{translate:none}
  #main .studio .mast{position:static;inset:auto;width:auto;height:auto;min-height:15px;margin-bottom:28px}
  #main .studio h1{position:static;inset:auto;width:auto;max-width:none;font-size:clamp(32px,5.3vw,44px);line-height:1.12;text-align:left;letter-spacing:-.035em}
  #main .studio h2{font-size:27px;line-height:1.18}
  #main .studio h3{font-size:24px;line-height:1.2}
  #main .studio p{font-size:16px;line-height:1.55}
  #main .studio .label,#main .studio .eyebrow{font-size:11px}
  #main .studio .body{position:relative;inset:auto;height:auto;display:block;margin-top:28px}
  #main .studio .folio{position:static;margin-top:32px;font-size:11px}
  #main .studio .contact{position:static;inset:auto;width:auto;font-size:14px;line-height:1.6}
  #main .studio .contact .person{flex-wrap:wrap}
  #main .studio .contact a{display:inline-block;padding:4px 0;overflow-wrap:anywhere}
  .back-to-close{display:block;position:static;transform:none;padding:18px 24px 28px;text-align:center;font-size:14px}
  .screen:not(.overview) .frame{max-width:760px;margin:auto}
  .screen.solution,.screen.traction{background:#fff}
  .screen.product,.screen.ask{background:var(--blue)}
  .screen.market{background:var(--ink)}
  .screen.competition{background:var(--paper)}
  .screen.go-to-market{background:var(--paper)}
  #slide-select{min-height:44px}
  .download,.one-pager-download{min-height:44px;align-content:center}

  /* Cinematic cover keeps its photograph and contact details within the flow. */
  #main .overview .studio.cover-new{min-height:calc(100svh - var(--header));display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:54px 24px 24px}
  #main .overview .mast{display:none}
  #main .overview h1{font-size:clamp(40px,9.8vw,72px);line-height:1.04}
  #main .overview .intro{position:static;margin-top:24px;width:auto;max-width:550px;font-size:17px}
  #main .overview .contact{position:relative;margin-top:44px;padding-right:34px;z-index:1;font-size:12px}
  #main .overview .contact .person{font-size:13px}
  #main .overview .origin{font-size:30px}
  .film-toggle{right:16px;bottom:28px;width:44px;height:44px}

  /* Vision is a readable essay rather than a scaled landscape slide. */
  #main .endgame-new h1 em{font-size:35px;line-height:1.15;margin-top:15px}
  #main .endgame-new .thesis-copy{position:static;width:auto;margin-top:30px}
  #main .endgame-new .thesis-copy p{font-size:17px;line-height:1.65}
  #main .endgame-new .thesis-copy p+p{margin-top:24px}
  #main .endgame-new .thesis-copy strong{font-size:27px;line-height:1.25}
  #main .endgame-new .logical-choice{white-space:normal;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 C45 5 85 10 132 7 S225 5 298 3' fill='none' stroke='%238ea8ff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") left bottom -4px/100% 9px no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone}
  #main .endgame-new .logical-choice:after{content:none}

  /* Brazil: price contrast first, structural barriers on an ink panel below. */
  #main .problem-new{background:var(--paper)}
  #main .problem-new .problem-proof{position:static;width:auto;margin-top:22px}
  #main .problem-new .body>div:first-child{position:static;width:auto}
  #main .problem-new .prices{gap:20px;justify-content:space-between}
  #main .problem-new .price-col{padding-top:0}
  #main .problem-new .price-col span{position:static;display:block;font-size:10px;white-space:normal;min-height:30px}
  #main .problem-new .price-col b{font-size:clamp(66px,18vw,100px)}
  #main .problem-new .prices:after{left:45%;top:50px;width:40px;height:30px}
  #main .problem-new .context{width:auto;margin-top:22px}
  #main .problem-new .reasons{position:static;margin:32px -24px -28px;padding:30px 24px;background:var(--ink);gap:22px}
  #main .problem-new .reason{padding-bottom:22px}
  #main .problem-new .reason p{margin-top:12px}
  #main .problem-new .folio{display:none}

  /* Source, import, finance becomes a vertical operating journey. */
  #main .solution-new{background:#fff}
  #main .solution-new h1{text-align:center}
  #main .solution-new .promise-lead{font-size:18px;line-height:1.4}
  #main .solution-new .intro{position:static;font:500 28px/1.25 Caveat,cursive;text-align:center}
  #main .solution-new .endpoints{position:static;display:flex;justify-content:space-between;margin:32px 0 20px;font-size:12px;gap:16px}
  #main .solution-new .flow{position:static;display:block;background:var(--paper);margin:0 -24px;padding:24px}
  #main .solution-new .stage{padding:0 0 28px 25px;border-top:0;border-left:2px solid var(--blue);text-align:left;margin-left:5px}
  #main .solution-new .stage:last-child{border-left-style:dashed;padding-bottom:0}
  #main .solution-new .stage:before{left:-1px;top:0}
  #main .solution-new .stage h2{margin:10px 0 0;max-width:none}
  #main .solution-new .stage p{margin-top:10px}
  #main .product-new{background:var(--blue);padding-bottom:44px}
  #main .product-new h1{text-align:center}
  #main .product-new .body{margin-top:28px}
  #main .product-new .demo-frame{height:auto;aspect-ratio:16/9}
  #main .product-new .demo-frame img{position:static;width:100%;height:auto}
  #main .product-new .play-new{top:50%;width:60px;height:60px}
  #main .product-new .play-new:after{left:25px;top:20px;border-left-width:16px;border-top-width:10px;border-bottom-width:10px}
  #main .product-new .folio{color:#dce5ff}

  #main .model-new .customer-volume{padding:24px;background:var(--paper);margin:0 -24px 30px}
  #main .model-new .customer-volume:before{display:none}
  #main .model-new .customer-volume b{font-size:64px;margin-top:10px}
  #main .model-new .revenue-comparison{grid-template-columns:1fr;gap:28px;margin-top:22px}
  #main .model-new .revenue-stage{padding-top:20px}
  #main .model-new .revenue-stage b{font-size:70px;margin-top:12px}
  #main .model-new .model-assumptions{font-size:13px}
  #main .model-new .fee-breakdown p{font-size:16px}

  #main .traction-new{background:#fff;display:flex;flex-direction:column}
  #main .traction-new .body{order:2;display:grid;grid-template-columns:minmax(0,1fr);gap:30px}
  #main .traction-new .customer-chart,#main .traction-new .revenue-chart{height:auto}
  #main .traction-new .customer-chart svg{width:280px;height:255px;max-width:100%;margin:auto}
  #main .traction-new .revenue-chart svg{width:100%;height:auto;max-width:500px}
  #main .traction-new .pipeline{position:static;order:3;margin:32px -24px 0;padding:28px 24px;background:var(--blue)}
  #main .traction-new .pipeline b{font-size:80px}
  #main .traction-new .pipeline p{margin-top:24px;padding-top:20px}
  #main .traction-new .folio{order:4;color:var(--muted)}

  #main .customers-new .buyer-line{position:static;width:auto;margin-top:22px}
  #main .customers-new .quote-group{position:static;width:auto;margin-top:10px}
  #main .customers-new .quote{font:500 31px/1.25 Caveat,cursive}
  #main .customers-new .quote-by{font-size:14px;margin-top:20px}
  #main .customers-new .source-detail{position:static;width:auto;grid-template-columns:1fr;gap:22px;margin-top:32px;padding-top:24px}
  #main .customers-new .source-detail p{max-width:none;margin-top:10px}
  #main .customers-new .customer-list{position:static;border-left:0;border-top:1px solid #d9d6d0;padding:28px 0 0;margin-top:30px;gap:0}
  #main .customers-new .customer img{max-width:100%;height:42px}
  #main .customers-new .customer p{max-width:none;margin:16px 0 24px}

  #main .gtm-new{background:var(--paper);display:flex;flex-direction:column}
  #main .gtm-new .eyebrow,#main .gtm-new .folio{color:var(--blue)}
  #main .gtm-new .mast{order:0}
  #main .gtm-new .body{display:contents}
  #main .gtm-new h1{order:3;margin-top:10px}
  #main .gtm-new .inbound{position:static;width:auto;order:1;margin:0 -24px;padding:28px 24px;background:var(--blue)}
  #main .gtm-new .inbound h2{font-size:34px}
  #main .gtm-new .audience{position:static;margin:32px 0 26px;gap:20px}
  #main .gtm-new .big{font-size:70px}
  #main .gtm-new .unit{margin:0;width:auto;font-size:18px}
  #main .gtm-new .unit small{font-size:15px}
  #main .gtm-new .growth{position:static;width:100%;height:auto}
  #main .gtm-new .conversion{position:static;order:2;width:auto;height:115px;display:flex;align-items:center;gap:20px}
  #main .gtm-new .conversion svg{position:static;width:110px;height:42px;transform:rotate(90deg);flex-shrink:0}
  #main .gtm-new .conversion span{position:static;font-size:14px}
  #main .gtm-new .channels{position:static;order:4;grid-template-columns:1fr;gap:24px;margin-top:28px}
  #main .gtm-new .channel h2{margin-top:14px}
  #main .gtm-new .channel p{margin-top:12px}
  #main .gtm-new .folio{order:5}

  #main .market-new .market-why,#main .market-new .market-measure,#main .market-new .market-assumptions{position:static;width:auto;margin-top:22px}
  #main .market-new .market-measure{font-size:13px}
  #main .market-new .market-measure span{display:block;margin:5px 0 0;font-size:12px}
  #main .market-new .body{display:flex;flex-direction:column}
  #main .market-new .map-wrap{position:static;order:0;width:100%;height:auto;aspect-ratio:600/330}
  #main .market-new .tiers-new{order:1;display:grid;grid-template-columns:1fr;gap:28px;margin-top:24px}
  #main .market-new .tier{position:static;width:auto;padding-top:18px}
  #main .market-new .tier b{font-size:84px}
  #main .market-new .tier p{font-size:16px}
  #main .market-new .global-basis,#main .market-new .market-assumptions{font-size:13px}

  #main .competition-new h1{font-size:28px}
  #main .competition-new h1 em{font-size:34px;line-height:1.15}
  #main .competition-new .body{width:100%;height:540px;margin-top:24px}
  #main .competition-new .vertical-label{width:74px;top:100px;height:420px}
  #main .competition-new .vertical-label .label{top:-70px;font-size:9px}
  #main .competition-new .vertical-label p{top:75px;font-size:12px;line-height:1.4}
  #main .competition-new .vertical-label .low{top:310px}
  #main .competition-new .matrix{left:82px;right:0;top:100px;height:420px;grid-template-rows:250px 170px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  #main .competition-new .axis-x{left:82px;top:51px;font-size:12px;gap:10px}
  #main .competition-new .axis-x .label{font-size:9px}
  #main .competition-new .quadrant{padding:12px 8px;text-align:center}
  #main .competition-new .matrix p{font-size:12px;line-height:1.4}
  #main .competition-new .matrix .tandom-difference{font-size:14px;margin-top:16px}
  #main .competition-new .matrix .brand{width:100%;max-width:140px}
  #main .competition-new .competitor-logos{flex-direction:column;gap:12px;margin-top:18px}
  #main .competition-new .competitor,#main .competition-new .competitor img{max-width:76px}
  #main .competition-new .matrix h2{font-size:14px}
  #main .competition-new .matrix h2 span{display:block;font-size:28px;margin:0 0 6px}
  #main .competition-new .matrix .providers{font-size:18px}

  #main .moat-new .moat-body{position:static;display:flex;flex-direction:column;gap:28px;margin-top:28px}
  #main .moat-new .flywheel{width:100%;height:auto;aspect-ratio:510/380}
  #main .moat-new .loop-arrows{width:100%;height:100%}
  #main .moat-new .loop-step h2{font-size:clamp(15px,4.4vw,25px)}
  #main .moat-new .volume{left:35.9%;top:3.9%;width:27.5%}
  #main .moat-new .advantage{left:49.6%;top:37.6%;width:51%}
  #main .moat-new .benefit{left:36.7%;top:77.6%;width:47.1%}
  #main .moat-new .growth{left:0;top:40.8%;width:41.4%}
  #main .moat-new .volume h2{font-size:clamp(18px,5vw,29px)}
  #main .moat-new .moat-detail{padding-top:0}
  #main .moat-new .financing-detail{margin-top:0;padding-top:24px}
  #main .moat-new .country-mechanisms{grid-template-columns:1fr;gap:24px}
  #main .moat-new .country-mechanisms p{font-size:16px}

  #main .founder .portrait{position:relative;inset:auto;width:auto;display:grid;grid-template-columns:80px 1fr 44px;column-gap:18px;align-items:center;margin-bottom:28px}
  #main .founder .portrait>img{width:80px;height:94px;grid-row:1/3}
  #main .founder .portrait h2{font-size:24px;white-space:normal;margin:0;align-self:end}
  #main .founder .portrait p{font-size:14px;margin:4px 0 0;align-self:start;grid-column:2}
  #main .founder .portrait .linkedin{position:static;grid-column:3;grid-row:1/3;width:44px;height:44px;padding:10px}
  #main .founder .career{grid-template-columns:1fr;gap:28px;padding-top:28px}
  #main .founder .achievement:nth-child(2){padding-top:24px;border-top:1px solid var(--line)}
  #main .founder .achievement h2{font:400 18px/1.45 Inter,sans-serif}
  #main .founder .achievement p{max-width:none}
  #main .founder .big{font-size:72px}
  #main .founder .investor-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 14px}
  #main .founder .finance{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}
  #main .founder .finance h3{margin-top:14px}
  #main .founder .finance .companies{flex-direction:row;flex-wrap:wrap;gap:24px;margin-top:24px}

  #main .ask-new{background:var(--blue)}
  #main .ask-new:before{display:none}
  #main .ask-new h1,#main .ask-new h1 em{color:var(--paper)}
  #main .ask-new .capital-efficiency{position:static;margin-top:24px;color:#e0e7ff}
  #main .ask-new .body{display:flex;flex-direction:column}
  #main .ask-new .funding,#main .ask-new .funds,#main .ask-new .invested{position:static;width:auto}
  #main .ask-new .funding{order:0}
  #main .ask-new .funds{order:1;margin-top:26px}
  #main .ask-new .funds li{font-size:19px}
  #main .ask-new .revenue-chart{position:static;order:2;margin:32px -24px;padding:28px 24px;background:#fff}
  #main .ask-new .growth-chart{width:100%;height:auto;max-width:none}
  #main .ask-new .ask-assumptions{font-size:13px}
  #main .ask-new .invested{order:3}
  #main .ask-new .backer p{font-size:12px;white-space:normal;line-height:1.45}
  #main .ask-new .backer strong{font-size:18px}
  #main .ask-new .backer-name{gap:10px}
  #main .ask-new .backer+.backer{margin-top:22px}

  #main .close-new.with-appendix h1{font-size:46px}
  #main .close-new.with-appendix h1 em{font-size:34px;line-height:1.2;margin-top:24px}
  #main .close-new .mast{display:none}
  #main .close-new .sign-off{position:static;text-align:left;font-size:32px;margin-top:32px}
  #main .close-new .contact{margin-top:22px;text-align:left}
  #main .close-new .contact .person{gap:8px 14px}
  #main .close-new .contact strong{font-size:19px}
  #main .close-new .appendix-index{position:static;width:auto;margin-top:32px;padding:26px 0 0;border-left:0;border-top:1px solid #f5f2ec40}
  #main .close-new .appendix-index p{font-size:11px}
  #main .close-new .index-links{margin-top:14px}
  #main .close-new .index-links a{min-height:58px;height:auto;padding:14px 0;font-size:17px}

  /* Appendices: keep every assumption, with tables and timelines readable. */
  #main .sourcing-evidence,#main .appendix-economics,#main .appendix-financing{background:#fff}
  #main .sourcing-evidence .case,#main .sourcing-evidence .comparison,#main .sourcing-evidence .costs{position:static;width:auto}
  #main .sourcing-evidence .case{margin-top:24px;font-size:17px}
  #main .sourcing-evidence .case span{font-size:14px}
  #main .sourcing-evidence .comparison{margin-top:28px}
  #main .sourcing-evidence .price{height:auto;margin-bottom:30px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:baseline}
  #main .sourcing-evidence .price-label{font-size:15px}
  #main .sourcing-evidence .price strong{position:static;font-size:46px}
  #main .sourcing-evidence .price strong small{font-size:22px}
  #main .sourcing-evidence .price-bar{margin-top:4px}
  #main .sourcing-evidence .price p{font-size:13px;width:100%}
  #main .sourcing-evidence .costs{background:var(--paper);margin:24px -24px -28px;padding:28px 24px}
  #main .sourcing-evidence .costs dl>div{font-size:16px}
  #main .sourcing-evidence .costs .basis{font-size:13px}
  #main .sourcing-evidence .folio{display:none}
  #main .appendix-economics .scenario{position:static;margin-top:24px;font-size:15px}
  #main .appendix-economics .scenario span{display:block;height:6px;visibility:hidden}
  #main .appendix-economics .income-table{position:static;width:100%;margin-top:26px;display:block}
  #main .appendix-economics .income-table span{font-size:13px}
  #main .appendix-economics .income-total{position:static;padding:26px 24px;margin:30px -24px -28px;border:0;background:var(--paper)}
  #main .appendix-economics .income-total strong{font-size:78px}
  #main .appendix-economics .income-total .sum,#main .appendix-economics .income-total .basis{font-size:14px}
  #main .appendix-economics .folio{display:none}
  #main .appendix-financing .mast{flex-wrap:wrap;gap:12px}
  #main .appendix-financing .next{margin-left:0}
  #main .appendix-financing .trade-cycle{position:static;margin-top:28px}
  #main .appendix-financing .cycle-caption span{display:block;margin:8px 0 0;font-size:14px}
  #main .appendix-financing .milestones{width:100%;grid-template-columns:1fr;gap:26px;margin-top:28px;text-align:left;padding-left:28px}
  #main .appendix-financing .milestones:before{left:4px;right:auto;top:8px;bottom:8px;border-top:0;border-left:1.5px solid #b4c2e8}
  #main .appendix-financing .milestones i{position:absolute;left:-27px;top:7px;margin:0}
  #main .appendix-financing .milestones strong{font-size:17px;margin-top:6px}
  #main .appendix-financing .milestones .day{font-size:13px}
  #main .appendix-financing .funding-stages{grid-template-columns:1fr;gap:22px;margin-top:24px}
  #main .appendix-financing .funding-stages span{font-size:11px}
  #main .appendix-financing .funding-stages p{font-size:18px}
  #main .appendix-financing .country-mechanisms{position:static;margin:32px -24px -28px;padding:28px 24px;background:var(--paper);grid-template-columns:1fr;gap:28px}
  #main .appendix-financing .country-mechanisms section+section{border-left:0;border-top:1px solid #d6d5d0;margin:0;padding:28px 0 0}
  #main .appendix-financing .country-mechanisms h2{margin-top:12px}
  #main .appendix-financing .country-mechanisms p{font-size:16px}
  #main .appendix-financing .folio{display:none}
  #main .appendix-market .measure{position:static;margin-top:24px;font-size:14px}
  #main .appendix-market .market-columns{position:static;grid-template-columns:1fr;gap:30px;margin-top:26px}
  #main .appendix-market .market-value{font-size:76px}
  #main .appendix-market .market-scope span{font-size:13px}
  #main .appendix-market .calculation p{font-size:16px}
  #main .appendix-market .calculation .flow-basis,#main .appendix-market .calculation .flow-basis span{font-size:14px}
  #main .appendix-market .region-sum>div{font-size:16px;margin-bottom:9px}
  #main .appendix-market .foreign-rate,#main .appendix-market .proxy{font-size:14px}
  #main .appendix-market .brazil-pricing{position:static;width:auto;margin-top:30px;padding-top:24px}
  #main .appendix-market .brazil-pricing p{font-size:15px}
  #main .traction-new .customer-chart,#main .traction-new .revenue-chart{min-width:0}
  #main .traction-new svg .fee-label{font-size:15px}
  #main .traction-new svg .tick{font-size:15px}
  #main .gtm-new .growth svg{display:block;width:100%;height:auto}
  #main .gtm-new .growth .tick,#main .gtm-new .growth .chart-label{font-size:16px}
  #main .ask-new .growth-tick{font-size:20px}
  #main .ask-new .growth-date{font-size:22px}
  #main .ask-new .growth-customers{font-size:20px}
  #main .ask-new .growth-value{font-size:44px}
  #main .appendix-economics .income-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  #main .appendix-economics .income-table tbody{display:block}
  #main .appendix-economics .income-table tr{display:grid;grid-template-columns:1fr auto;gap:14px;padding:24px 0;border-top:1px solid var(--line)}
  #main .appendix-economics .income-table tr.financing{border-top:2px dashed var(--blue)}
  #main .appendix-economics .income-table tr>*{border:0;padding:0;width:auto}
  #main .appendix-economics .income-table td:not(.amount){grid-column:1/-1;grid-row:2;font-size:16px;line-height:1.5}
  #main .appendix-economics .income-table .amount{grid-column:2;grid-row:1;align-self:center}

}
@media (min-width:600px) and (max-width:900px) {
  #main .studio{padding-left:40px;padding-right:40px}
  #main .model-new .revenue-comparison,#main .gtm-new .channels,#main .moat-new .country-mechanisms{grid-template-columns:1fr 1fr}
  #main .market-new .tiers-new{grid-template-columns:1fr 1fr}
  #main .market-new .tier:last-child{grid-column:1/-1}
}
@media (max-width:360px) {
  #main .ask-new .backer{gap:10px}
  #main .ask-new .backer strong{font-size:17px}
  #main .ask-new .dhl-crop{width:62px}
  #main .ask-new .dhl-crop img{width:62px;top:-15px}
}
