/* V84 — refinamento estrutural UX/UI responsivo, preservando identidade ConsAgro */
:root{
  --ui-radius-sm:12px;
  --ui-radius:16px;
  --ui-radius-lg:24px;
  --ui-space-1:6px;
  --ui-space-2:10px;
  --ui-space-3:16px;
  --ui-space-4:24px;
  --ui-space-5:36px;
  --ui-space-6:56px;
  --ui-shadow:0 14px 34px rgba(14,42,28,.10);
  --ui-hairline:rgba(23,58,41,.14);
  --mobile-dock-h:60px;
  --mobile-tabs-h:40px;
}
html{scroll-behavior:smooth;scroll-padding-top:64px;overflow-x:clip}
body{overflow-x:clip}
section[id]{scroll-margin-top:64px}
::selection{background:#234d35;color:#fff}
a,button,summary{-webkit-tap-highlight-color:rgba(35,77,53,.10)}
.button,.header-cta{min-height:44px}

/* Navigation: lighter, contextual, non-dominant */
.section-tabs{box-shadow:none}
.section-tabs a::after{content:"";position:absolute;left:17px;right:17px;bottom:5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .24s var(--ease)}
.section-tabs a.is-active{color:var(--forest);font-weight:750}
.section-tabs a.is-active::after{transform:scaleX(1)}

/* Research hierarchy */
.research-copy .stat{margin-block:14px 18px}
.research-copy small{line-height:1.6}
.scope-list article{transition:background .22s ease,border-color .22s ease}

/* Consulting factors: interactive affordance without inventing new technical copy */
.decision-factors span{position:relative;cursor:default;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.decision-factors span::before{content:"";width:6px;height:6px;border-radius:50%;background:rgba(35,77,53,.38);margin-right:7px;flex:none}
.decision-factors span:hover{background:rgba(35,77,53,.055);border-color:rgba(35,77,53,.24);color:var(--forest)}
.decision-factors span:active{transform:scale(.985)}

/* Method continuity */
.method-rail{position:relative}
.method-rail article{position:relative}
.method-rail b{font-variant-numeric:tabular-nums}

/* Image consistency */
.research-visual,.consult-photo,.network-photo,.person figure,.journal-grid button,.location-map-v77{overflow:hidden}
.research-visual img,.consult-photo img,.network-photo img,.person figure img,.journal-grid img{object-fit:cover}
.img-field-eval{object-position:center 42%}
.img-group{object-position:center 38%}
.img-experimental,.img-aerial-hero{object-position:center center}

/* Contact/location: preserve V77 but normalize depth */
.contact-v77 .contact-whatsapp-v77,.location-v77{box-shadow:0 12px 28px rgba(8,34,22,.08)}
.location-map-v77 iframe{border-radius:inherit}
.location-links-v77 a{min-height:64px}

/* Fixed dock: one structural rule wins over legacy cascade */
@media (max-width:900px){
  html{scroll-padding-top:calc(var(--mobile-tabs-h) + 12px)}
  body{padding-bottom:calc(var(--mobile-dock-h) + 30px + env(safe-area-inset-bottom,0px))!important}
  section[id]{scroll-margin-top:calc(var(--mobile-tabs-h) + 12px)}
  .site-header{position:relative!important;height:70px!important;padding:7px 16px!important}
  .site-header .brand{width:146px!important;height:54px!important}
  .site-header .brand img{max-height:48px!important}
  .site-header.open nav{top:70px!important;max-height:calc(100dvh - 70px)!important}

  .section-tabs{position:sticky!important;top:0!important;height:var(--mobile-tabs-h)!important;z-index:800!important;display:flex!important;justify-content:flex-start!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;background:rgba(250,249,245,.96)!important;border-bottom:1px solid var(--ui-hairline);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .section-tabs a{height:100%;display:flex;align-items:center;flex:0 0 auto!important;min-width:max-content;padding:0 14px!important;font-size:8.5px!important;letter-spacing:.095em!important;scroll-snap-align:start}
  .section-tabs a::after{left:14px;right:14px;bottom:4px}

  .hero{height:118svh!important;min-height:720px}
  .hero-sticky{height:100svh!important;min-height:620px!important}
  .hero-copy{left:clamp(18px,5vw,24px)!important;width:calc(100% - clamp(36px,10vw,48px))!important;bottom:calc(100px + env(safe-area-inset-bottom,0px))!important}
  .hero-copy h1{font-size:clamp(36px,10.5vw,50px)!important;line-height:1!important;letter-spacing:-.045em!important;text-wrap:balance}
  .hero-copy p{font-size:14px;line-height:1.55;max-width:38ch}
  .hero-actions{flex-wrap:wrap;gap:10px 16px}

  .manifest,.research,.consulting,.network,.team,.locations,.scope,.journal{padding-left:clamp(18px,5vw,24px)!important;padding-right:clamp(18px,5vw,24px)!important}
  .manifest,.research,.consulting,.network,.team,.scope,.journal{padding-top:clamp(68px,15vw,92px)!important;padding-bottom:clamp(68px,15vw,92px)!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{font-size:clamp(31px,8.7vw,44px)!important;line-height:1.06!important;letter-spacing:-.038em!important;text-wrap:balance}
  .eyebrow{margin-bottom:14px!important;font-size:9px;letter-spacing:.15em}
  p{max-width:65ch}

  /* Research: number and proof stay connected */
  .research{gap:34px!important}
  .research-visual{aspect-ratio:4/3!important;height:auto!important;border-radius:var(--ui-radius-lg) var(--ui-radius-lg) var(--ui-radius-sm) var(--ui-radius-sm)!important}
  .research-copy{max-width:none!important}
  .stat{align-items:flex-start!important;margin:8px 0 12px!important}
  .stat strong{font-size:clamp(76px,24vw,116px)!important;line-height:.82!important;letter-spacing:-.07em!important}
  .stat sup{font-size:22px!important;margin-top:3px!important}
  .research-copy h2{font-size:clamp(25px,7.4vw,34px)!important;line-height:1.1;margin-bottom:18px!important}
  .research-copy p{margin-bottom:0}
  .research-copy small{margin-top:18px!important;padding-top:16px;border-top:1px solid var(--ui-hairline)}
  .scope{gap:34px!important}
  .scope-list article{padding:20px 0!important}
  .scope-note{margin-top:8px!important}

  /* Consulting: compact interactive chips */
  .consulting{gap:38px!important}
  .consult-copy p{margin-bottom:22px!important}
  .decision-factors{display:flex!important;flex-wrap:wrap;gap:8px!important;margin:22px 0 26px!important}
  .decision-factors span{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;width:auto!important;min-height:38px!important;padding:8px 11px!important;border:1px solid var(--ui-hairline)!important;border-radius:999px!important;background:rgba(255,255,255,.24)!important;font-size:8.5px!important;letter-spacing:.07em!important}
  .consult-photo{aspect-ratio:4/3!important;height:auto!important;border-radius:var(--ui-radius-lg)!important}

  /* Method: one continuous mobile process */
  .method{padding:clamp(72px,16vw,96px) clamp(20px,5vw,26px)!important}
  .method-intro{display:block!important;margin-bottom:38px!important}
  .method-intro p{margin-top:18px!important;max-width:42ch}
  .method-rail{display:block!important;background:transparent!important;padding-left:18px}
  .method-rail::before{content:"";position:absolute;left:23px;top:12px;bottom:20px;width:1px;background:rgba(255,255,255,.22)}
  .method-rail article{min-height:0!important;padding:0 0 30px 38px!important;background:transparent!important;border:0!important}
  .method-rail article:last-child{padding-bottom:0!important}
  .method-rail article::before{content:"";position:absolute;left:-1px;top:6px;width:13px;height:13px;border-radius:50%;background:var(--forest);border:2px solid rgba(255,255,255,.72);box-shadow:0 0 0 5px rgba(255,255,255,.06);transition:background .25s ease,transform .25s ease}
  .method-rail article.is-current::before{background:#b7c9bb;transform:scale(1.08)}
  .method-rail b{display:block;margin-bottom:5px;color:rgba(255,255,255,.48)!important}
  .method-rail h3{margin:0 0 7px!important;font-size:19px!important}
  .method-rail p{margin:0;max-width:36ch;font-size:13px!important}

  /* People/network/media: avoid arbitrary fixed heights */
  .network-photo,.person figure{height:auto!important;aspect-ratio:4/3!important;border-radius:var(--ui-radius-lg)!important}
  .cinematic{height:72svh!important;min-height:480px;max-height:680px}
  .journal-grid{gap:10px!important}
  .journal-grid button{min-height:0!important;aspect-ratio:4/3;border-radius:var(--ui-radius-sm)!important}

  /* Contact and map: bottom dock can never cover final content */
  .contact-v77{padding-bottom:calc(var(--mobile-dock-h) + 58px + env(safe-area-inset-bottom,0px))!important}
  footer{padding-bottom:calc(var(--mobile-dock-h) + 42px + env(safe-area-inset-bottom,0px))!important}
  .contact-v77 .contact-actions{gap:14px!important}
  .contact-v77 .contact-whatsapp-v77{min-height:76px!important;border-radius:var(--ui-radius-lg)!important}
  .location-v77{border-radius:var(--ui-radius-lg)!important;overflow:hidden}
  .location-map-v77{height:clamp(168px,46vw,220px)!important}
  .location-links-v77 a{min-height:64px;padding:13px 14px!important}

  .mobile-actionbar,.radar-v60 .mobile-actionbar{
    position:fixed!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;
    left:50%!important;right:auto!important;bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;transform:translate3d(-50%,0,0)!important;
    width:min(calc(100% - 20px),430px)!important;height:var(--mobile-dock-h)!important;min-height:var(--mobile-dock-h)!important;margin:0!important;padding:5px!important;gap:4px!important;
    border:1px solid rgba(23,58,41,.12)!important;border-radius:20px!important;background:rgba(246,244,237,.94)!important;box-shadow:0 12px 30px rgba(12,39,25,.14)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:1200!important
  }
  .mobile-actionbar a,.radar-v60 .mobile-actionbar a{height:50px!important;min-height:50px!important;min-width:0!important;padding:0 6px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;border-radius:15px!important;font-size:8px!important;letter-spacing:.04em!important;overflow:hidden!important;white-space:nowrap!important;transition:transform .16s ease,background .16s ease!important}
  .mobile-actionbar a:active{transform:scale(.97)}
  .mobile-actionbar .actionbar-radar{background:var(--forest)!important;color:#fff!important}
  .mobile-actionbar .dock-icon-v77{width:18px!important;height:18px!important}
  .mobile-actionbar .dock-icon-v77 svg{width:15px!important;height:15px!important}

  /* Radar mobile */
  .radar-hub{padding-left:clamp(16px,4.5vw,22px)!important;padding-right:clamp(16px,4.5vw,22px)!important;padding-bottom:calc(var(--mobile-dock-h) + 48px + env(safe-area-inset-bottom,0px))!important}
  .radar-hub-hero{padding-top:clamp(48px,12vw,72px)!important}
  .radar-hub-hero h1{font-size:clamp(36px,10vw,50px)!important;line-height:1!important;letter-spacing:-.045em!important}
  .radar-weather-panel,.radar-market,.radar-news,.radar-disclaimer{border-radius:var(--ui-radius-lg)!important}
  .windy-frame{min-height:clamp(300px,80vw,420px)!important;border-radius:var(--ui-radius)!important;overflow:hidden}
  .market-ticker,.radar-weather-forecast,.calendar-strip,.radar-filters{scrollbar-width:none}
  .market-ticker::-webkit-scrollbar,.radar-weather-forecast::-webkit-scrollbar,.calendar-strip::-webkit-scrollbar,.radar-filters::-webkit-scrollbar{display:none}
}

@media (max-width:430px){
  .manifest,.research,.consulting,.network,.team,.locations,.scope,.journal{padding-left:18px!important;padding-right:18px!important}
  .section-tabs a{padding-inline:13px!important}
  .contact-v77{padding-left:16px!important;padding-right:16px!important}
  .contact-v77 .contact-whatsapp-v77{grid-template-columns:44px minmax(0,1fr) 28px!important;padding:13px 12px!important}
  .contact-v77 .contact-copy b{font-size:15px!important}
  .contact-v77 .contact-copy em{font-size:10px!important}
  .location-head-v77{padding:16px!important}
  .location-links-v77 a{grid-template-columns:30px minmax(0,1fr) 26px!important;gap:9px!important}
}

@media (max-width:360px){
  .hero-copy h1{font-size:36px!important}
  .hero-actions .button{width:100%}
  .hero-actions .text-link{padding:8px 2px}
  .decision-factors span{font-size:8px!important;padding-inline:9px!important}
  .mobile-actionbar,.radar-v60 .mobile-actionbar{width:calc(100% - 14px)!important}
  .mobile-actionbar a,.radar-v60 .mobile-actionbar a{font-size:7.2px!important;padding-inline:3px!important}
  .mobile-actionbar .dock-icon-v77{width:16px!important}
}

@media (min-width:901px){
  section[id]{scroll-margin-top:140px}
  .section-tabs a.is-active::after{transform:scaleX(1)}
  .decision-factors span{display:flex;align-items:center}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .section-tabs a::after,.decision-factors span,.method-rail article::before,.mobile-actionbar a{transition:none!important}
}
@media (max-width:900px){
  body.is-scrolling .mobile-actionbar,
  body.is-scrolling.radar-v60 .mobile-actionbar{transform:translate3d(-50%,calc(100% + 26px + env(safe-area-inset-bottom,0px)),0)!important;opacity:.18;pointer-events:none}
  .mobile-actionbar,.radar-v60 .mobile-actionbar{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s ease!important}
}
@media (prefers-reduced-motion:reduce) and (max-width:900px){
  body.is-scrolling .mobile-actionbar,body.is-scrolling.radar-v60 .mobile-actionbar{transition:none!important}
}
