/* V85 — compactação estrutural + estabilidade de scroll mobile */
:root{
  --m-pad:clamp(18px,5vw,22px);
  --m-s1:8px;--m-s2:12px;--m-s3:16px;--m-s4:24px;--m-s5:36px;--m-section:clamp(48px,12vw,60px);
  --mobile-tabs-h:38px;
  --mobile-dock-h:56px;
  --mobile-dock-gap:14px;
}

@media (max-width:900px){
  html{
    overflow-x:clip!important;
    overflow-y:visible!important;
    scroll-padding-top:calc(var(--mobile-tabs-h) + 10px)!important;
    -webkit-text-size-adjust:100%;
  }
  body{
    overflow-x:clip!important;
    overflow-y:visible!important;
    min-height:100%;
    padding-bottom:calc(var(--mobile-dock-h) + var(--mobile-dock-gap) + env(safe-area-inset-bottom,0px))!important;
    line-height:1.52;
    overscroll-behavior-y:auto;
    touch-action:pan-y pinch-zoom;
  }
  main{overflow:visible!important;min-width:0}
  section[id]{scroll-margin-top:calc(var(--mobile-tabs-h) + 10px)!important}

  /* sticky nav is the only sticky element after the hero */
  .section-tabs{
    height:var(--mobile-tabs-h)!important;
    min-height:var(--mobile-tabs-h)!important;
    top:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    scroll-snap-type:none!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    touch-action:pan-x pan-y;
    overscroll-behavior-x:contain;
  }
  .section-tabs::-webkit-scrollbar{display:none}
  .section-tabs a{padding-inline:12px!important;font-size:8px!important;letter-spacing:.085em!important}

  /* hero: same content, less dead scroll */
  .hero{height:100svh!important;min-height:620px!important;max-height:820px!important}
  .hero-sticky{height:100svh!important;min-height:620px!important;max-height:820px!important;position:relative!important;top:auto!important}
  .hero-copy{left:var(--m-pad)!important;width:calc(100% - (var(--m-pad) * 2))!important;bottom:calc(82px + env(safe-area-inset-bottom,0px))!important}
  .hero-copy .eyebrow{margin-bottom:9px!important}
  .hero-copy h1{font-size:clamp(34px,9.8vw,46px)!important;line-height:.98!important;margin-bottom:14px!important}
  .hero-copy p{font-size:13px!important;line-height:1.48!important;margin-bottom:18px!important;max-width:36ch!important}
  .hero-actions{gap:8px 14px!important}
  .hero-actions .button{min-height:42px;padding:10px 16px!important}
  .hero-data{margin-top:18px!important;gap:10px!important}

  /* global vertical density */
  .manifest,.research,.consulting,.network,.team,.scope,.journal,.radar,.faq{
    padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important;
    padding-top:var(--m-section)!important;padding-bottom:var(--m-section)!important;
  }
  .eyebrow{margin-bottom:8px!important;font-size:8.5px!important;letter-spacing:.14em!important}
  .manifest-title h2,.scope-title h2,.method-intro h2,.team>header h2,.journal>header h2,.locations>header h2,.consult-copy h2,.network-copy h2,.contact h2,.faq h2,.radar-head h2{
    font-size:clamp(28px,7.8vw,38px)!important;line-height:1.04!important;letter-spacing:-.035em!important;
  }
  p{line-height:1.52}

  /* A ConsAgro: one editorial composition */
  .manifest{gap:18px!important;row-gap:18px!important}
  .manifest-title h2{margin-bottom:0!important}
  .manifest-body{padding-top:0!important;max-width:none!important}
  .manifest-body .lead{font-size:17px!important;line-height:1.35!important;margin-bottom:8px!important}
  .manifest-body p:not(.lead){font-size:13px!important;line-height:1.55!important;margin-bottom:0!important}
  .facts{padding-top:16px!important;gap:10px!important}
  .facts strong{font-size:24px!important}
  .facts span{font-size:9.5px!important;line-height:1.35!important}
  .logic{margin:0 var(--m-pad) 42px!important;padding:14px 0!important;gap:8px 10px!important;font-size:10px!important;line-height:1.4!important}

  /* Research: image + metric + proof kept together */
  .research{gap:22px!important}
  .research-visual{aspect-ratio:16/10!important;border-radius:18px!important}
  .research-copy .eyebrow{margin-bottom:8px!important}
  .stat{display:inline-flex!important;vertical-align:middle!important;margin:0 8px 6px 0!important}
  .stat strong{font-size:clamp(62px,19vw,82px)!important;line-height:.82!important}
  .stat sup{font-size:18px!important}
  .research-copy h2{display:inline!important;font-size:clamp(20px,5.7vw,26px)!important;line-height:1.05!important;margin:0!important}
  .research-copy p{clear:both;margin-top:12px!important;font-size:13px!important;line-height:1.55!important}
  .research-copy small{margin-top:12px!important;padding-top:11px!important;font-size:8.5px!important;line-height:1.4!important}

  /* evaluated scope: dense editorial rows, not tall cards */
  .scope{gap:20px!important}
  .scope-list article{grid-template-columns:28px minmax(0,1fr)!important;gap:4px 10px!important;padding:14px 0!important}
  .scope-list article h3{font-size:13px!important}
  .scope-list article p{grid-column:2!important;font-size:12px!important;line-height:1.48!important}
  .scope-note{font-size:12px!important;line-height:1.5!important;margin-top:0!important}

  /* method: shorter continuous timeline */
  .method{padding:var(--m-section) var(--m-pad)!important}
  .method-intro{margin-bottom:24px!important}
  .method-intro p{margin-top:10px!important;font-size:13px!important;line-height:1.5!important}
  .method-rail{padding-left:14px!important}
  .method-rail::before{left:19px!important;top:9px!important;bottom:14px!important}
  .method-rail article{padding:0 0 18px 32px!important}
  .method-rail article::before{width:11px!important;height:11px!important;top:5px!important}
  .method-rail b{margin-bottom:2px!important;font-size:8.5px!important}
  .method-rail h3{font-size:17px!important;margin:0 0 3px!important}
  .method-rail p{font-size:12px!important;line-height:1.45!important}

  /* cinematic remains visual but no longer consumes most of a viewport */
  .cinematic{height:56svh!important;min-height:390px!important;max-height:520px!important}
  .cinematic>div{left:var(--m-pad)!important;right:var(--m-pad)!important;bottom:28px!important}
  .cinematic h2{font-size:clamp(30px,8vw,40px)!important}

  /* Consulting */
  .consulting{gap:24px!important}
  .consult-copy h2{margin-bottom:12px!important}
  .consult-copy p{font-size:13px!important;line-height:1.55!important;margin-bottom:14px!important}
  .decision-factors{margin:14px 0 18px!important;gap:6px!important}
  .decision-factors span{min-height:34px!important;padding:7px 10px!important;font-size:8px!important}
  .consult-photo{aspect-ratio:4/5!important;border-radius:20px!important}

  /* Independence + network */
  .independence{padding:var(--m-section) var(--m-pad)!important;gap:24px!important}
  .independence figure{aspect-ratio:16/10!important;height:auto!important;border-radius:18px!important}
  .independence h2{font-size:clamp(28px,7.8vw,38px)!important;margin-bottom:12px!important}
  .independence p{font-size:13px!important;line-height:1.55!important;margin-bottom:0!important}
  .network{gap:20px!important}
  .network-stat strong{font-size:70px!important}
  .network-stat span{font-size:10px!important}
  .network-copy h2{margin-bottom:12px!important}
  .network-copy p{font-size:13px!important;line-height:1.55!important;margin:0!important}
  .network-photo{aspect-ratio:16/10!important;border-radius:18px!important}

  /* Team and experimental crew */
  .team>header{margin-bottom:28px!important}
  .person,.person.reverse{gap:20px!important;margin-bottom:44px!important}
  .person:last-child{margin-bottom:0!important}
  .person figure{aspect-ratio:4/3!important;border-radius:18px!important}
  .person-copy h3{font-size:clamp(25px,7vw,32px)!important;margin:10px 0 5px!important}
  .person-copy h4{font-size:9px!important;margin-bottom:12px!important}
  .person-copy p{font-size:12.5px!important;line-height:1.5!important;margin-bottom:0!important}
  .person-copy dl{margin-top:16px!important}
  .person-copy dl div{grid-template-columns:92px 1fr!important;gap:10px!important;padding:10px 0!important}
  dt{font-size:8.5px!important} dd{font-size:11px!important;line-height:1.45!important}
  .experiment{padding:var(--m-section) var(--m-pad)!important}
  .experiment-title{margin-bottom:24px!important}
  .experiment-title h2{font-size:clamp(28px,7.8vw,38px)!important}
  .experiment-grid{gap:0!important}
  .experiment-grid article{padding:14px 0!important}
  .experiment-grid h3{font-size:20px!important;margin:8px 0 4px!important}
  .experiment-grid h4{font-size:9px!important;margin-bottom:8px!important}
  .experiment-grid p{font-size:12px!important;line-height:1.5!important;margin:0!important}

  /* Field gallery */
  .journal>header{margin-bottom:24px!important}
  .journal-grid{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important;gap:8px!important}
  .journal-grid .j1{grid-column:1/-1!important;aspect-ratio:16/9!important}
  .journal-grid button:not(.j1){aspect-ratio:1/1!important}

  /* Radar home + FAQ */
  .radar-head{display:block!important;margin-bottom:20px!important}
  .radar-head .radar-deck{font-size:12.5px!important;line-height:1.5!important;margin-bottom:14px!important}
  .radar-status{min-width:0!important;padding:10px 0 0!important;border-left:0!important;border-top:1px solid var(--ui-hairline)!important}
  .home-radar-item{grid-template-columns:30px 1fr!important;gap:10px!important;padding:16px 0!important}
  .home-radar-item h3{font-size:18px!important;margin:5px 0 8px!important}
  .radar-foot{display:block!important;padding-top:18px!important}
  .radar-foot p{font-size:11px!important;line-height:1.45!important;margin-bottom:14px!important}
  .faq header{margin-bottom:18px!important}
  .faq summary{padding:16px 0!important;font-size:14px!important}
  .faq details p{padding:0 0 16px!important;font-size:12.5px!important;line-height:1.5!important}

  /* Contact/location and final reserve */
  .contact-v77{padding:var(--m-section) var(--m-pad) calc(var(--mobile-dock-h) + 28px + env(safe-area-inset-bottom,0px))!important;gap:22px!important}
  .contact-intro h2{margin-bottom:12px!important}
  .contact-intro p{font-size:13px!important;margin-bottom:0!important}
  .contact-v77 .contact-actions{gap:10px!important}
  .contact-v77 .contact-whatsapp-v77{min-height:68px!important;padding:10px 12px!important;border-radius:18px!important}
  .location-head-v77{padding:13px 14px!important}
  .location-map-v77{height:clamp(142px,38vw,176px)!important}
  .location-links-v77 a{min-height:56px!important;padding:10px 12px!important}
  footer{padding:26px var(--m-pad) calc(var(--mobile-dock-h) + 22px + env(safe-area-inset-bottom,0px))!important}

  /* fixed dock: stable, never animated out of the viewport */
  .mobile-actionbar,.radar-v60 .mobile-actionbar{
    width:min(calc(100% - 16px),420px)!important;
    height:var(--mobile-dock-h)!important;min-height:var(--mobile-dock-h)!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    padding:4px!important;gap:3px!important;border-radius:18px!important;
    transform:translate3d(-50%,0,0)!important;opacity:1!important;pointer-events:auto!important;
    transition:none!important;
  }
  .mobile-actionbar a,.radar-v60 .mobile-actionbar a{height:46px!important;min-height:46px!important;border-radius:14px!important;font-size:7.5px!important}
  body.is-scrolling .mobile-actionbar,body.is-scrolling.radar-v60 .mobile-actionbar{transform:translate3d(-50%,0,0)!important;opacity:1!important;pointer-events:auto!important}

  /* Radar page density */
  .radar-hub{padding:calc(var(--mobile-tabs-h) + 22px) var(--m-pad) calc(var(--mobile-dock-h) + 34px + env(safe-area-inset-bottom,0px))!important}
  .radar-hub-hero{padding:28px 0 36px!important}
  .radar-hub-hero h1{font-size:clamp(34px,9vw,46px)!important;margin:10px 0 14px!important}
  .radar-hub-hero p{font-size:13px!important;line-height:1.5!important}
  .radar-weather-panel,.market-panel,.radar-news-simple{padding:36px 0!important}
  .radar-weather-panel>header,.market-panel>header,.radar-news-simple>header{margin-bottom:18px!important}
  .windy-frame{min-height:260px!important;max-height:360px!important}
  .market-card{min-height:112px!important;padding:16px!important}
  .radar-headline{padding:18px 0!important}
}

@media (max-width:360px){
  :root{--m-pad:16px;--m-section:44px}
  .hero-copy h1{font-size:32px!important}
  .facts{grid-template-columns:1fr 1fr!important}
  .facts div:last-child{grid-column:1/-1}
  .mobile-actionbar,.radar-v60 .mobile-actionbar{width:calc(100% - 12px)!important}
  .mobile-actionbar a,.radar-v60 .mobile-actionbar a{font-size:7px!important;padding-inline:2px!important}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
}
