/* Portrait kiosks: CSS viewport, independent of physical screen size or OS scaling. */
@media (orientation:portrait) and (min-width:700px) and (min-height:1000px) {
  .kiosk:has(:is([data-screen="home"],[data-screen="presentation"],[data-screen="customer"],[data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="processing"],[data-screen="analysis"]).active) { width:100%; }
  .kiosk:has(:is([data-screen="home"],[data-screen="presentation"],[data-screen="customer"],[data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="processing"],[data-screen="analysis"]).active) .topbar { height:132px; padding:30px 7%; }
  .kiosk:has(:is([data-screen="home"],[data-screen="presentation"],[data-screen="customer"],[data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="processing"],[data-screen="analysis"]).active) .icon-button { width:64px; height:64px; }
  :is([data-screen="home"],[data-screen="presentation"],[data-screen="customer"],[data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="processing"],[data-screen="analysis"]) { min-height:calc(100svh - 132px); padding:44px 7% 56px; }
  :is([data-screen="presentation"],[data-screen="customer"],[data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="processing"],[data-screen="analysis"]) h2 { font-size:clamp(48px,6vw,68px); }
  :is([data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="analysis"]) .step-heading > p:last-child { font-size:24px; }
  :is([data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="analysis"]) :is(.step-row,.eyebrow) { font-size:16px; }
  :is([data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="analysis"]) .sticky-action { padding-top:36px; }
  :is([data-screen="lenses"],[data-screen="preferences"],[data-screen="marcas"],[data-screen="multifocal"],[data-screen="antireflexo"],[data-screen="fotossensivel"],[data-screen="analysis"],[data-screen="customer"]) :is(.primary-button,.secondary-button) { min-height:82px; font-size:22px; }
  [data-screen="lenses"] .option-list { gap:22px; margin:44px 0; }
  [data-screen="lenses"] .choice-card { min-height:180px; padding:30px; gap:24px; }
  [data-screen="lenses"] .choice-copy b { font-size:30px; }
  [data-screen="lenses"] .choice-copy small { font-size:21px; }
  [data-screen="lenses"] .choice-copy strong { font-size:21px; }
  [data-screen="preferences"] .question-list { grid-template-columns:1fr; gap:22px; }
  [data-screen="preferences"] .question-title h3 { font-size:27px; }
  [data-screen="preferences"] .question-title small { font-size:14px; }
  [data-screen="preferences"] .answer-group button { min-height:66px; font-size:20px; }
  [data-screen="home"] .home-intro { grid-template-columns:1fr; gap:36px; flex:initial; padding:20px 0 48px; }
  [data-screen="home"] h1 { font-size:clamp(76px,9vw,108px); }
  [data-screen="home"] .home-invitation { font-size:32px; max-width:700px; }
  [data-screen="home"] .hero-subtitle { font-size:24px; max-width:760px; }
  [data-screen="home"] .eyebrow { font-size:14px; }
  [data-screen="home"] .home-actions { max-width:650px; }
  [data-screen="home"] .primary-button { min-height:84px; font-size:25px; }
  [data-screen="home"] .home-actions p { font-size:17px; }
  [data-screen="home"] .home-companion { width:clamp(260px,32vh,430px); }
  [data-screen="home"] .home-guide { margin-top:auto; }
  [data-screen="home"] .home-guide-heading p { font-size:25px; }
  [data-screen="home"] .home-guide-heading > span { font-size:13px; }
  [data-screen="home"] .home-guide-cards h2 { font-size:25px; }
  [data-screen="home"] .home-guide-cards p { font-size:18px; }
  [data-screen="home"] .home-signature { font-size:15px; }
  [data-screen="customer"].active { grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto 1fr; align-content:start; }
  [data-screen="customer"] .customer-form { grid-column:1; grid-row:3; margin-top:44px; padding:40px; gap:30px; }
  [data-screen="customer"] .customer-heading > p:last-child { max-width:760px; font-size:24px; }
  [data-screen="customer"] .customer-field { font-size:21px; }
  [data-screen="customer"] .customer-field input { height:76px; font-size:24px; }
  [data-screen="customer"] .customer-field small { font-size:17px; }
  [data-screen="customer"] .consent-check p { font-size:18px; }
  [data-screen="customer"] .consent-check b { font-size:19px; }
  [data-screen="customer"] .privacy-link { font-size:18px; min-height:66px; }
  [data-screen="presentation"] .presentation-avatar { width:330px; height:330px; margin-bottom:60px; }
  [data-screen="presentation"] .presentation-copy { font-size:25px; max-width:650px; }
  [data-screen="presentation"] .presentation-speaking { font-size:22px; margin-top:30px; }
  [data-screen="presentation"] .presentation-skip { min-height:82px; width:min(520px,100%); font-size:23px; }
  [data-screen="processing"] .processing-intro { font-size:24px; }
  [data-screen="processing"] .processing-message { font-size:30px; }
  [data-screen="analysis"] .recommendation-card { padding:36px; }
  [data-screen="analysis"] .recommendation-card h3 { font-size:40px; }
  [data-screen="analysis"] .recommendation-card > p, [data-screen="analysis"] .recommendation-card ul { font-size:23px; }
  [data-screen="analysis"] .recommendation-note { font-size:19px; }
  [data-screen="analysis"] .triple-action { grid-template-columns:1fr 1fr; }
  [data-screen="analysis"] .triple-action .primary-button { grid-column:1 / -1; }
}
[data-screen="lenses"] .step-heading > p:not(.eyebrow) { color:#b4c4da; font-size:18px; line-height:1.6; }
[data-screen="analysis"] .analysis-message { background:#e3edfb; border-radius:16px; padding:20px; }
[data-screen="analysis"] .analysis-message p, [data-screen="analysis"] .analysis-message b { color:#10213b; font-size:16px; line-height:1.5; }
@media (orientation:portrait) and (min-width:700px) and (min-height:1000px) {
 [data-screen="lenses"] .step-heading > p:not(.eyebrow) { font-size:24px; }
 [data-screen="analysis"] .analysis-message p, [data-screen="analysis"] .analysis-message b { font-size:21px; }
}
@media (orientation:portrait) and (min-width:700px) and (min-height:1000px) and (max-height:1650px) {
 [data-screen="lenses"] .choice-card { min-height:150px; padding:22px; }
 [data-screen="lenses"] .choice-copy b { font-size:27px; }
 [data-screen="lenses"] .choice-copy small, [data-screen="lenses"] .choice-copy strong { font-size:18px; }
 [data-screen="lenses"] .option-list { margin:30px 0; gap:16px; }
}
