/* Portal do Beto — navegação, leitura e painéis em telas de toque. */
.pb-menu-toggle,.pb-observatory-tools{display:none}
.pb-site-header .pb-primary-nav{min-width:0}
.pb-site-header .pb-primary-nav a[aria-current=page]{font-weight:800;text-decoration:underline;text-underline-offset:5px}
@media screen{
  img,video{max-width:100%}
  main,section,article,aside,.container,.wrap,.dh-wrap{min-width:0}
  input,select,textarea,button{max-width:100%}
  .pb-table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px}
  .pb-table-scroll:focus-visible{outline:3px solid #b77825;outline-offset:3px}
  dialog{box-sizing:border-box;max-width:calc(100vw - 24px);max-height:90vh;max-height:90dvh;overflow:auto}
  :is(a,button,input,select,summary):focus-visible{outline:3px solid #b77825;outline-offset:4px}
  .pb-observatory-tools button{font:700 14px/1.3 system-ui;padding:12px 15px;min-height:46px;border:1px solid #4a708b;border-radius:8px;background:#0b2030;color:#f0f8ff}
  .pb-observatory-tools button[aria-expanded=true]{background:#32d4a4;color:#052219;border-color:#32d4a4}
}
@media screen and (max-width:1180px){
  /* Os dados continuam visíveis no tablet; o painel não desaparece. */
  body.observatory-body{overflow:auto}
  .obs-topbar{height:auto}
  .obs-shell{height:auto;min-height:0;display:grid;grid-template-columns:250px minmax(0,1fr);grid-template-rows:minmax(480px,65vh) auto;grid-template-rows:minmax(480px,65dvh) auto}
  .obs-shell>.obs-left{grid-column:1;grid-row:1;max-height:75vh;max-height:75dvh;overflow-y:auto}
  .obs-shell>.obs-map-wrap{grid-column:2;grid-row:1;min-height:480px}
  .obs-shell>.obs-right{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;grid-column:1/-1;grid-row:2;overflow:visible;border-left:0}
  .obs-right>.obs-group{margin-top:0;min-width:0}
}
@media screen and (max-width:1024px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{overflow-wrap:break-word}
  /* Sem JavaScript, os links continuam acessíveis. */
  header .menu,.obs-topbar .menu{display:flex;flex-wrap:wrap}
  .pb-site-header.pb-nav-shell,.pb-site-header>.pb-nav-shell{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center!important;justify-content:space-between;gap:12px;min-height:64px}
  .pb-site-header.pb-nav-shell{padding:14px 5%}
  .pb-site-header>.pb-nav-shell{padding-block:12px}
  .pb-site-header .brand,.pb-site-header .dh-brand{font-size:17px;max-width:calc(100% - 112px);white-space:normal}
  .pb-site-header .pb-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex-shrink:0;min-height:44px;padding:10px 14px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font:700 14px/1 system-ui;letter-spacing:0;cursor:pointer;order:2;margin-left:auto}
  .pb-site-header .pb-primary-nav{display:none!important;order:5;flex:0 0 100%;width:100%;max-height:65vh;max-height:65dvh;overflow-y:auto;overscroll-behavior:contain;gap:4px!important;padding:10px 0 0;margin:0;align-items:stretch}
  .pb-site-header.pb-nav-open .pb-primary-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}
  .pb-site-header .pb-primary-nav a{display:flex;align-items:center;min-height:46px;padding:10px 12px;line-height:1.4;font-size:15px;border:1px solid #82988955;border-radius:6px;overflow-wrap:anywhere}
  .pb-site-header .cta{display:none}
  input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important;min-height:44px}
  button,.btn,.button,.dh-button,.pill{min-height:44px}
  button{touch-action:manipulation}
  .searchbar input,.newsletter input,.ai-row input{min-width:0}
  .hero-actions .btn,.actions .button{display:inline-flex;align-items:center;justify-content:center;text-align:center}
  .hero .eyebrow,.hero-small .eyebrow{max-width:100%;white-space:normal}
  .hero h1,.hero-small h1{overflow-wrap:break-word}
  .grid3,.grid4,.products,.split,.collections{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats{gap:14px}
  .stats>*,.grid3>*,.grid4>*,.products>*,.split>*,.collections>*{min-width:0}
  .resource-grid,.history-grid,.dh-editorial,.culture-library{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dh-nav nav,.site-header nav{min-width:0}
  .dh-tools{gap:10px}
  .dh-tools input{min-width:52px}
  .dh-tools select{min-width:120px}
  .dh-tools .dh-grow{margin-left:0}
  .dh-links a,.news-tabs button,.dh-tabs button{min-height:44px;display:inline-flex;align-items:center}
  .map iframe{height:380px}
  .obs-sidebar button,.layer-switch,.feed-tabs button,.history-tabs button,.intel-tabs button,.situation-actions button{min-height:44px}
  .layer-switch input,.alert-check input{flex-shrink:0;width:22px;height:22px}
  .obs-map-wrap .map-top-status{max-width:calc(100% - 70px);pointer-events:none}
  .obs-map-wrap .map-legend{max-width:calc(100% - 28px);font-size:11px;gap:6px 10px}
  .obs-toast{max-width:90vw;overflow-wrap:anywhere}
  dialog iframe,#shipsFrame{height:min(65vh,640px)!important;height:min(65dvh,640px)!important}
}
@media screen and (max-width:760px){
  .container,.wrap,.dh-wrap{width:92%}
  .hero{padding-top:36px;padding-bottom:28px}
  .hero-small{padding-top:32px}
  .section,.dh-section{padding-block:30px}
  .hero h1{font-size:clamp(34px,8.5vw,49px);line-height:1.12}
  .hero p{font-size:16px;line-height:1.65}
  .resource-grid,.history-grid,.dh-editorial,.culture-library,.culture-split,.culture-titlelist,.news-headline-grid,.products,.split{grid-template-columns:minmax(0,1fr)}
  .culture-hero{grid-template-columns:1fr;padding:30px 0}
  .culture-hero h1{font-size:clamp(36px,10vw,56px)}
  .culture-graphic{display:none}
  .culture-feature{grid-template-columns:1fr;gap:15px}
  .culture-feature h2{font-size:28px}
  .culture-provider iframe{max-width:100%}
  .resource,.dh-story,.news-highlight{padding:21px}
  .resource h3,.dh-story h3{font-size:23px;line-height:1.25}
  .dh-section-head,.section-heading{display:block}
  .dh-classroom{grid-template-columns:1fr;padding:24px;gap:15px}
  .dh-hero{grid-template-columns:minmax(0,1fr) 96px;gap:14px;padding-top:30px}
  .dh-hero h1{font-size:clamp(32px,8vw,44px);letter-spacing:-.045em}
  .dh-calendar{box-shadow:4px 4px 0 #e8e2d5;transform:none}
  .dh-calendar strong{font-size:44px}
  .dh-calendar div,.dh-calendar small{font-size:9px;letter-spacing:.04em}
  .dh-lead{font-size:16px}
  .dh-tools{align-items:center}
  .dh-tools button{padding:10px 12px}
  .dh-tools label{font-size:12px}
  .dh-events li{grid-template-columns:64px minmax(0,1fr);gap:12px}
  .dh-events .dh-year{font-size:25px}
  .dh-events p{font-size:15px}
  .dh-events a,.dh-story a{overflow-wrap:anywhere}
  .affiliate-slot{min-width:0}
  .searchbar{flex-wrap:wrap}
  .searchbar input{flex:1 1 180px;width:100%}
  .newsletter input{min-width:0;flex-basis:100%}
  .newsletter button{width:100%}
  .tool{max-width:100%}
  .tool,.shop-strip{padding:20px}
  .shop-strip .btn{width:100%;text-align:center}
  .card{padding:20px}
  .card p{overflow-wrap:anywhere}
  .observatory-body .obs-shell{display:flex;flex-direction:column;height:auto;min-height:0}
  .obs-shell>.obs-map-wrap{order:1;flex:none;min-height:380px;height:58vh;height:58dvh;max-height:640px}
  .obs-shell>.obs-left{order:2;max-height:none;overflow:visible;border-right:0}
  .obs-shell>.obs-right{order:3;display:block!important;overflow:visible}
  .obs-right>.obs-group{margin-top:18px}
  .pb-observatory-tools{display:flex;gap:10px;padding:12px 4%;background:#071725;align-items:center;flex-wrap:wrap}
  .pb-observatory-tools button{flex:1}
  .pb-obs-ready .obs-shell>.obs-left:not(.pb-panel-open),.pb-obs-ready .obs-shell>.obs-right:not(.pb-panel-open){display:none!important}
  .pb-obs-ready .obs-shell>.pb-panel-open{order:0;max-height:65vh;max-height:65dvh;overflow-y:auto;overscroll-behavior:contain;border-bottom:1px solid #34516a}
  .pb-obs-ready .obs-heading{display:block}
  .obs-map-wrap .map-top-status{left:10px;top:10px;gap:5px;max-width:calc(100% - 62px)}
  .map-top-status span{font-size:10px;padding:5px 7px}
  .obs-map-wrap .map-legend{bottom:32px;left:10px;max-width:calc(100% - 20px);padding:7px}
  .ai-row{grid-template-columns:minmax(0,1fr) auto}
  .ai-row button{font-size:12px;padding-inline:10px}
  #shipsDialog>div{flex-wrap:wrap;gap:10px!important}
  #shipsDialog h2{font-size:22px;max-width:100%}
}
@media screen and (max-width:480px){
  .pb-site-header.pb-nav-open .pb-primary-nav{grid-template-columns:1fr}
  .grid3,.grid4,.collections{grid-template-columns:minmax(0,1fr)}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats strong{font-size:24px}
  .hero-actions,.actions{gap:10px}
  .hero-actions>.btn,.actions>.button{flex:1 1 140px}
  .map iframe{height:310px}
  .dh-hero{grid-template-columns:minmax(0,1fr) 84px}
  .dh-calendar strong{font-size:40px}
  .dh-tools #today,.dh-tools #print{flex:1 1 130px}
  .dh-tools .dh-primary{flex:1 1 130px}
  .dh-search{width:100%}
  .culture-provider{padding:14px}
  .dh-footer,.footer{overflow-wrap:anywhere}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
@media print{.pb-menu-toggle,.pb-observatory-tools{display:none!important}.pb-table-scroll{overflow:visible!important}}
