
/* Revisão de ritmo editorial, 01 nov 2026 */
:root{--refine-bg:#f8f7f3}
html{scroll-padding-top:82px}
body{overflow-x:hidden}
.header-refined .headerline{grid-template-columns:minmax(220px,270px) minmax(0,1fr) minmax(165px,205px)!important;min-height:90px!important}
.header-refined .gastrobrand .logo-gastro-new{max-height:76px!important;mix-blend-mode:multiply!important}
.header-refined .institution .logo-iff-new{max-height:75px!important;mix-blend-mode:multiply!important}
.header-refined .gastrobrand,.header-refined .institution{background:transparent!important}
.header-refined .nav-tip{text-align:left!important;line-height:1.5!important;white-space:normal!important}
.header-refined .navbar .contact-nav{display:none!important}
.location-inner{gap:14px!important}
.location-address,.location-address strong{font-family:inherit!important;font-size:12px!important;font-weight:400!important;letter-spacing:0!important}
.location-address strong{font-weight:700!important}
.location-contact{font-size:11px;display:flex;align-items:center;gap:5px;white-space:nowrap}
.location-contact a{color:#195937;text-underline-offset:3px}
.location-map{background:transparent!important;padding-top:8px}
.location-map iframe{height:240px!important;background:transparent;border:1px solid #d5dfd5!important}
.kicker{display:inline-flex!important;align-items:center;gap:12px}
.kicker:after{content:"";height:2px;width:28px;background:#219448;display:inline-block;flex:none}
.hero{padding:34px 0 31px!important;min-height:auto!important}
.hero-grid{gap:28px!important;align-items:center}
.hero h1{font-size:clamp(44px,5.1vw,72px)!important;line-height:1.04!important;margin:12px 0 20px!important}
.hero-sketch img{max-height:370px!important;object-fit:contain}
.hero p{margin-bottom:20px!important}
.section{padding-top:44px!important;padding-bottom:44px!important}
.section.small,.lab-intro-home{padding-top:28px!important;padding-bottom:28px!important}
.section-head{display:block!important;margin-bottom:23px!important}
.section-head>p{margin:10px 0 0!important;max-width:780px!important;text-align:left!important;font-size:14px!important;line-height:1.65!important}
.section-head .h2{max-width:780px;line-height:1.15}
.featuregrid{gap:15px!important}
.feature{min-height:210px!important}
.lab-intro-box{align-items:center!important;gap:30px!important}
.lab-intro-box img{height:260px!important;max-height:none!important;width:100%!important;object-fit:contain!important;mix-blend-mode:multiply}
.calendar-month-footer .calendar-agenda{max-height:240px!important;overflow-y:auto!important;scrollbar-width:thin;overscroll-behavior:contain;padding-right:10px!important}
.calendar-month-footer{min-height:0!important}
.calendar-panel,.agenda-aside{padding:22px!important}
.agenda-layout{align-items:start!important}
.agenda-layout>.agenda-aside p,.calendar-sections article p{max-width:640px!important;text-align:left!important}
.events-preview-section .section-head,.events-full-section .section-head{margin-top:15px!important}
.calendar-sections{margin-bottom:28px!important}
.events-full-section .calendar-sections+.container{margin-top:18px}
.lab-opening{padding:36px 0 25px!important}
.lab-opening-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;gap:32px!important;align-items:center!important}
.lab-opening-grid>figure{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
.lab-plan-in-hero{border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;background:transparent!important;display:block!important}
.lab-plan-in-hero img{display:block!important;width:100%!important;height:auto!important;max-height:660px!important;object-fit:contain!important;mix-blend-mode:multiply!important;filter:contrast(1.08)}
.lab-plan-in-hero:hover img{transform:scale(1.045)}
.lab-opening-grid figcaption{font-size:11px;color:#66766a;margin-top:8px;text-align:left}
.manual-section{padding-top:28px!important}
.manual-heading{max-width:870px;margin-bottom:23px!important}
.manual-heading p{max-width:780px}
.manual-accordion{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important;gap:12px!important}
.manual-item{min-width:0!important;border:1px solid #d9e3da!important;background:#f4f5f0!important;border-radius:12px!important;margin:0!important;overflow:hidden}
.manual-item summary{padding:18px!important;min-height:85px!important;display:flex!important;align-items:center!important;gap:10px!important}
.manual-item[open]{background:#fff!important;border-color:#7f9e87!important;box-shadow:0 12px 28px #1739240d}
.manual-item .manual-copy{padding:0 18px 20px!important;font-size:13px!important;line-height:1.68!important}
.manual-index{font-size:11px!important}
.manual-name{font-size:14px!important;line-height:1.3!important}
.manual-expander{margin-left:auto}
@media(max-width:1240px){.header-refined .navbar{display:none!important}.header-refined .menu-toggle{display:flex!important}}
@media(max-width:1020px){.manual-accordion{grid-template-columns:repeat(2,minmax(0,1fr))!important}.lab-opening-grid{grid-template-columns:1fr 1fr!important}.location-inner{flex-wrap:wrap}}
@media(max-width:700px){.header-refined .headerline{grid-template-columns:minmax(0,1fr) 36px minmax(105px,140px)!important;min-height:75px!important}.header-refined .gastrobrand .logo-gastro-new{max-height:62px!important}.header-refined .institution .logo-iff-new{max-height:60px!important}.hero{padding:24px 0!important}.hero-grid{gap:15px!important}.hero h1{font-size:clamp(38px,10vw,53px)!important}.hero-sketch img{max-height:245px!important}.section{padding:29px 0!important}.lab-opening-grid{display:block!important}.lab-opening-grid>figure{margin-top:20px!important}.lab-plan-in-hero img{max-height:none!important}.manual-accordion{grid-template-columns:1fr 1fr!important;gap:8px!important}.manual-item summary{padding:13px!important;min-height:80px!important}.manual-item .manual-copy{padding:0 12px 14px!important;font-size:12px!important}.manual-name{font-size:12px!important}.location-contact{white-space:normal;flex:1 1 100%;font-size:10px}.location-map iframe{height:200px!important}.featuregrid{grid-template-columns:1fr!important}.lab-intro-box img{height:auto!important;max-height:240px!important}.events-preview-section .agenda-layout,.agenda-layout{grid-template-columns:1fr!important}}
@media(max-width:380px){.manual-accordion{grid-template-columns:1fr!important}}


/* Revisão de cartões e ícones: desenhos em área própria, sem sobreposição à leitura. */
.featuregrid{align-items:stretch}
.feature{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 52px!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  column-gap:12px!important;
  row-gap:13px!important;
  align-items:start!important;
  min-height:230px!important;
  padding:clamp(21px,2.4vw,29px)!important;
}
.feature > .upper{
  grid-column:1!important;
  grid-row:1!important;
  align-self:center!important;
  margin:0!important;
}
.feature > img.icon{
  position:static!important;
  inset:auto!important;
  grid-column:2!important;
  grid-row:1!important;
  width:43px!important;
  height:43px!important;
  max-width:100%!important;
  opacity:.32!important;
  object-fit:contain!important;
  justify-self:end!important;
  align-self:center!important;
  filter:none!important;
  transform:none!important;
}
.feature > div:not(.upper){
  grid-column:1 / -1!important;
  grid-row:2!important;
  padding:0!important;
  min-width:0!important;
}
.feature > div:not(.upper) h3{
  max-width:100%!important;
  margin:3px 0 13px!important;
  font-size:clamp(23px,2.1vw,30px)!important;
  line-height:1.14!important;
  overflow-wrap:break-word;
}
.feature > div:not(.upper) p{
  font-size:14px!important;
  line-height:1.62!important;
  max-width:100%!important;
  margin:0!important;
}
.feature > a.link{
  grid-column:1 / -1!important;
  grid-row:3!important;
  align-self:end!important;
  justify-self:start!important;
  margin:2px 0 0!important;
  min-width:0!important;
  max-width:100%!important;
  line-height:1.4!important;
}
.smallcard:has(> img.sigil) > img.sigil{
  position:static!important;
  display:block!important;
  margin:0 0 13px auto!important;
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  opacity:.35!important;
}
@media(max-width:680px){
 .feature{grid-template-columns:minmax(0,1fr) 45px!important;min-height:0!important;padding:22px!important;row-gap:13px!important}
 .feature > img.icon{width:39px!important;height:39px!important}
 .feature > div:not(.upper) h3{font-size:clamp(23px,6vw,28px)!important;line-height:1.14!important}
 .feature > div:not(.upper) p{font-size:13.5px!important;line-height:1.6!important}
 .feature > a.link{font-size:13px!important}
}
@media(max-width:380px){
 .feature{padding:18px!important}
 .feature > div:not(.upper) h3{font-size:23px!important}
}


/* Ajustes de navegação editorial e cartões clicáveis, 01/11/2026 */
.brow {display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px 28px!important}
.brow > h2,.brow > .h2 {min-width:0!important;margin:0!important}
.brow > a.link {display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;white-space:nowrap!important;max-width:100%!important;line-height:1.3!important;margin:0!important;text-align:center!important}
a.editorial-action,a.link,a.button,.hero-support-links a,.campus-link a {overflow-wrap:normal}
a.editorial-action {display:inline-flex;align-items:center;gap:9px;white-space:nowrap;max-width:100%}
a.editorial-action span {flex-shrink:0}
.instagram-feature > .instagram-card-link {display:block;height:100%;color:inherit;text-decoration:none;cursor:pointer;border-radius:inherit;overflow:hidden}
.instagram-feature > .instagram-card-link:focus-visible {outline:3px solid #206c44;outline-offset:-3px}
.instagram-feature > .instagram-card-link:hover .ig-square img {transform:scale(1.025)}
.instagram-feature .ig-square img {transition:transform .2s ease}
@media(max-width:700px){
  .brow {align-items:flex-start!important;flex-direction:column!important;gap:14px!important}
  .brow > a.link {align-self:flex-start!important;padding:9px 0!important;font-size:clamp(13px,3.5vw,16px)!important}
  .brow > h2,.brow > .h2 {width:100%!important}
  a.editorial-action {font-size:clamp(12px,3.4vw,15px)}
}
@media(prefers-reduced-motion:reduce){.instagram-feature .ig-square img{transition:none}}
