/* FETAESP V4 — Terra que organiza. Portável entre páginas Elementor.
   Fraunces + Source Sans 3. Classes nativas em seções, colunas e widgets. */
.fetaesp-v4 {
  --forest:#173D2B; --leaf:#2F7445; --gold:#E2B444; --ivory:#F6F1E5;
  --ink:#26332B; --muted:#526057; --line:#CCD1C2;
  --display:'Fraunces',Georgia,serif; --body:'Source Sans 3',Arial,sans-serif;
  font-family:var(--body); color:var(--ink); isolation:isolate;
}
html { scroll-behavior:smooth; }
.fetaesp-v4 *, .fetaesp-v4 *::before, .fetaesp-v4 *::after { box-sizing:border-box; }
.fetaesp-v4 .elementor-container { max-width:1200px; }
.fetaesp-v4 .elementor-column { min-width:0; }
.fetaesp-v4 .elementor-widget { margin-bottom:0!important; min-width:0; }
.fetaesp-v4 .elementor-widget-wrap { gap:18px; }
.fetaesp-v4 .elementor-element-populated { padding:0; }
.fetaesp-v4 p { margin:0; line-height:1.65; }
.fetaesp-v4 .elementor-widget-text-editor,
.fetaesp-v4 .elementor-button,
.fetaesp-v4 .elementor-post__meta-data,
.fetaesp-v4 .v2-mobile-menu { font-family:var(--body)!important; }
.fetaesp-v4 h1, .fetaesp-v4 h2, .fetaesp-v4 h3 {
  font-family:var(--display)!important; font-optical-sizing:auto;
  font-weight:600!important; letter-spacing:-.035em!important; text-wrap:balance;
}
.fetaesp-v4 .v4-kicker .elementor-heading-title {
  font-family:var(--body)!important; font-size:12px!important; font-weight:600;
  line-height:1.45; letter-spacing:1.7px!important;
}
.fetaesp-v4 .elementor-button {
  min-height:48px; display:inline-flex; align-items:center; justify-content:center;
  font:600 16px/1.25 var(--body)!important; border-radius:2px!important;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.fetaesp-v4 a { transition:color .18s ease,background-color .18s ease,border-color .18s ease; }
.fetaesp-v4 a:focus-visible, .fetaesp-v4 summary:focus-visible {
  outline:3px solid var(--forest); outline-offset:5px;
}
.fetaesp-v4.v2-hero a:focus-visible, .fetaesp-v4.v2-about a:focus-visible,
.fetaesp-v4.v2-footer a:focus-visible, .fetaesp-v4.v2-utility a:focus-visible {
  outline-color:var(--ivory);
}
.fetaesp-v4 .v2-skip {
  position:absolute; top:-250px; left:24px; z-index:9999; background:var(--ivory);
  color:var(--forest); padding:16px 22px; font-weight:600;
}
.fetaesp-v4 .v2-skip:focus { top:12px; }
.fetaesp-v4.v2-skip-section { padding:0!important; }
.fetaesp-v4.v2-skip-section .elementor-widget-wrap { padding:0!important; gap:0; }
.fetaesp-v4.v2-utility { padding-top:0!important; padding-bottom:0!important; }
.fetaesp-v4.v2-utility .elementor-container { align-items:center; }
.fetaesp-v4.v2-utility .elementor-column:last-child .elementor-widget-wrap { justify-content:flex-end; }
.fetaesp-v4.v2-utility .elementor-heading-title { font-size:12px!important; letter-spacing:1.5px!important; }
.fetaesp-v4.v2-utility .elementor-button { min-height:44px; padding:0!important; font-size:12px!important; }
.fetaesp-v4.v2-header {
  background:#fff; padding-top:14px!important; padding-bottom:14px!important;
  border-bottom:1px solid #173D2B20; position:relative; z-index:10;
}
.fetaesp-v4.v2-header>.elementor-container {
  display:grid; grid-template-columns:190px minmax(0,1fr); align-items:center; gap:28px;
}
.fetaesp-v4.v2-header .elementor-column { width:auto!important; }
.fetaesp-v4 .v2-brand img { width:160px; height:86px; object-fit:contain; display:block; }
.fetaesp-v4 .v2-desktop-nav>.elementor-widget-wrap { justify-content:flex-end; align-items:center; gap:2px; }
.fetaesp-v4 .v2-desktop-nav .elementor-button {
  padding:14px 16px!important; color:var(--forest)!important; background:transparent!important;
}
.fetaesp-v4 .v2-desktop-nav .elementor-widget-button:last-child .elementor-button {
  border-left:1px solid var(--line)!important; margin-left:10px; padding-left:26px!important;
}
.fetaesp-v4 .v2-mobile-nav { display:none!important; }
.fetaesp-v4 .v2-mobile-menu { position:relative; text-align:right; }
.fetaesp-v4 .v2-mobile-menu summary {
  list-style:none; cursor:pointer; min-height:44px; display:flex; align-items:center;
  justify-content:flex-end; gap:10px; color:var(--forest); font-size:16px; font-weight:600;
}
.fetaesp-v4 .v2-mobile-menu summary::-webkit-details-marker { display:none; }
.fetaesp-v4 .v2-mobile-menu summary svg { width:22px; height:22px; }
.fetaesp-v4 .v2-mobile-menu nav {
  position:absolute; right:0; top:52px; background:#fff; box-shadow:0 10px 30px #173D2B22;
  width:260px; max-width:calc(100vw - 36px); padding:12px; z-index:100;
}
.fetaesp-v4 .v2-mobile-menu nav a {
  display:block; min-height:48px; padding:14px; color:var(--forest); font-size:16px;
  text-align:left; text-decoration:none;
}
.fetaesp-v4 .v2-mobile-menu nav a:hover { background:var(--ivory); }
.fetaesp-v4.v2-hero {
  background:var(--forest); position:relative; overflow:hidden;
  padding-top:52px!important; padding-bottom:64px!important;
}
.fetaesp-v4.v2-hero::before,
.fetaesp-v4.v2-about::before,
.fetaesp-v4.v2-footer::after {
  content:''; position:absolute; pointer-events:none; z-index:-1;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='760' height='230' viewBox='0 0 760 230'%3E%3Cg fill='none' stroke='%23E2B444' stroke-width='1'%3E%3Cpath d='M-40 230C100 120 170 270 320 160S610 90 810 10'/%3E%3Cpath d='M-40 205C100 95 170 245 320 135S610 65 810 -15'/%3E%3Cpath d='M-40 180C100 70 170 220 320 110S610 40 810 -40'/%3E%3Cpath d='M-40 155C100 45 170 195 320 85S610 15 810 -65'/%3E%3Cpath d='M-40 130C100 20 170 170 320 60S610 -10 810 -90'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.fetaesp-v4.v2-hero::before { left:-100px; bottom:-40px; width:700px; height:230px; opacity:.19; }
.fetaesp-v4.v2-hero>.elementor-container,
.fetaesp-v4.v2-about>.elementor-container {
  display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:54px; align-items:center; position:relative; z-index:1;
}
.fetaesp-v4.v2-hero .elementor-column,
.fetaesp-v4.v2-about .elementor-column { width:auto!important; }
.fetaesp-v4 .v2-hero-copy>.elementor-element-populated { align-content:center; row-gap:24px; column-gap:10px; }
.fetaesp-v4 .v2-hero-copy .v4-kicker .elementor-heading-title { font-size:13px!important; letter-spacing:2px!important; }
.fetaesp-v4 .v2-hero-title h1 { line-height:1.02!important; letter-spacing:-.045em!important; color:var(--ivory); }
.fetaesp-v4 .v3-title-pre { display:block; font-size:clamp(31px,3.7vw,49px); line-height:1.14; letter-spacing:-.025em; font-weight:500; }
.fetaesp-v4 .v3-title-main { display:block; font-size:clamp(72px,8.4vw,112px); line-height:.96; letter-spacing:-.045em; margin-top:6px; }
.fetaesp-v4 .v3-title-place { display:block; font-size:clamp(48px,5.3vw,72px); line-height:1.09; font-weight:500; margin-top:5px; font-style:italic; color:var(--gold); }
.fetaesp-v4 .v2-hero-copy .elementor-widget-text-editor { max-width:390px; font-size:19px!important; color:var(--ivory); }
.fetaesp-v4 .v2-primary-action .elementor-button {
  background:var(--gold)!important; color:var(--forest)!important;
  padding:18px 24px!important; min-height:56px; border:1px solid var(--gold)!important;
}
.fetaesp-v4 .v2-primary-action .elementor-button:hover { background:var(--ivory)!important; border-color:var(--ivory)!important; }
.fetaesp-v4 .v2-secondary-action { width:100%!important; margin-top:-12px; }
.fetaesp-v4 .v2-secondary-action .elementor-button {
  padding:6px 0!important; min-height:44px; background:transparent!important; color:var(--ivory)!important;
  border:0!important; justify-content:flex-start; text-decoration:underline;
  text-underline-offset:6px; text-decoration-color:#E2B44490;
}
.fetaesp-v4 .v2-secondary-action .elementor-button:hover { text-decoration-color:var(--gold); }
.fetaesp-v4 .v2-hero-image { position:relative; }
.fetaesp-v4 .v2-hero-image img {
  display:block; width:100%; height:558px; object-fit:cover; object-position:65% center;
  border-radius:160px 2px 2px 2px;
}
.fetaesp-v4 .v2-hero-image::after {
  content:''; position:absolute; right:-12px; bottom:-12px; width:38%; height:105px;
  border-right:1px solid var(--gold); border-bottom:1px solid var(--gold); pointer-events:none;
}
.fetaesp-v4 .v2-image-caption p {
  display:flex; justify-content:space-between; font-size:11px!important;
  letter-spacing:.06em; gap:10px; margin-top:12px; color:var(--ivory);
}
.fetaesp-v4 .v2-image-caption span { letter-spacing:0; text-transform:none; }
.fetaesp-v4.v2-services { padding-top:0!important; padding-bottom:0!important; background:var(--ivory); }
.fetaesp-v4.v2-services>.elementor-container { display:grid; grid-template-columns:1.2fr 1fr 1fr; }
.fetaesp-v4.v2-services .elementor-column { width:auto!important; padding:38px 30px; border-right:1px solid var(--line); }
.fetaesp-v4.v2-services .elementor-column:first-child { padding-left:0; border-top:4px solid var(--gold); }
.fetaesp-v4.v2-services .elementor-column:last-child { padding-right:0; border-right:0; }
.fetaesp-v4.v2-services .elementor-widget-wrap { gap:13px; }
.fetaesp-v4.v2-services h2 { font-size:29px!important; line-height:1.18!important; }
.fetaesp-v4.v2-services .elementor-widget-text-editor { font-size:17px!important; color:var(--muted); }
.fetaesp-v4 .v4-service-icon { width:56px!important; margin-bottom:7px!important; }
.fetaesp-v4 .v4-service-icon svg { display:block; width:48px; height:48px; }
.fetaesp-v4 .v2-text-link .elementor-button {
  padding:6px 0!important; background:transparent!important; justify-content:flex-start; border-radius:0!important;
}
.fetaesp-v4 .v2-text-link .elementor-button-text {
  border-bottom:1px solid currentColor; text-decoration:none; transition:border-color .18s ease;
}
.fetaesp-v4 .v2-text-link .elementor-button:hover .elementor-button-text { border-bottom-color:transparent; }
.fetaesp-v4.v2-news { padding-top:82px!important; padding-bottom:82px!important; background:#fff; }
.fetaesp-v4.v2-news h2 { font-size:clamp(36px,4.7vw,62px)!important; line-height:1.08!important; max-width:780px; }
.fetaesp-v4.v2-news>.elementor-container>.elementor-column>.elementor-widget-wrap { gap:18px; }
.fetaesp-v4 .v2-news-grid { margin-top:26px; padding-top:32px; border-top:1px solid var(--line); }
.fetaesp-v4 .v2-news-grid .elementor-posts-container {
  display:grid!important; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;
  gap:30px 42px!important; align-items:stretch;
}
.fetaesp-v4 .v2-news-grid .elementor-post:first-child { grid-column:1; grid-row:1/span 2; }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) { grid-column:2; }
.fetaesp-v4 .v2-news-grid .elementor-post__card {
  background:transparent; border:0; border-radius:0; box-shadow:none!important;
  display:flex!important; flex-direction:column; height:100%; overflow:visible;
}
.fetaesp-v4 .v2-news-grid .elementor-post__thumbnail__link { order:0; margin:0!important; overflow:hidden; }
.fetaesp-v4 .v2-news-grid .elementor-post__thumbnail { padding-bottom:0!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__thumbnail img {
  position:static!important; transform:none!important; width:100%!important;
  object-fit:cover; display:block;
}
.fetaesp-v4 .v2-news-grid .elementor-post__thumbnail::after { display:none!important; }
.fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail__link,
.fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail,
.fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail img { height:310px!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__meta-data {
  order:1; font:14px/1.6 var(--body)!important; color:var(--muted)!important;
  border:0!important; padding:18px 0 0!important;
}
.fetaesp-v4 .v2-news-grid .elementor-post__text {
  order:2; padding:16px 0 0!important; margin:0!important; flex:1!important;
  display:flex!important; flex-direction:column!important; gap:16px;
}
.fetaesp-v4 .v2-news-grid .elementor-post__title {
  font:500 26px/1.2 var(--display)!important; letter-spacing:-.025em!important;
  margin:0!important; display:-webkit-box; -webkit-line-clamp:4;
  -webkit-box-orient:vertical; overflow:hidden; text-wrap:balance;
}
.fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__title { font-size:34px!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__title a { color:var(--forest)!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__title a:hover { color:var(--leaf)!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__read-more {
  display:inline-flex; align-items:center; min-height:44px; align-self:flex-start;
  margin:0!important; margin-top:auto!important; color:var(--forest)!important;
  font:600 16px/1.4 var(--body)!important; text-transform:none!important;
  text-decoration:underline; text-underline-offset:5px; text-decoration-color:var(--line);
}
.fetaesp-v4 .v2-news-grid .elementor-post__read-more-wrapper { margin-top:auto!important; }
.fetaesp-v4 .v2-news-grid .elementor-post__avatar { display:none!important; }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__card {
  display:grid!important; grid-template-columns:145px minmax(0,1fr);
  grid-template-rows:auto 1fr; column-gap:22px; row-gap:12px;
  padding-bottom:20px; border-bottom:1px solid var(--line);
}
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail__link { grid-column:1; grid-row:1/span 2; }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail__link,
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail,
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail img { height:109px!important; }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail img { object-fit:contain!important; background:var(--ivory); }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__meta-data { grid-column:2; grid-row:1; padding:0!important; }
.fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__text { grid-column:2; grid-row:2; padding:0!important; gap:8px; }
.fetaesp-v4.v2-about { background:var(--forest); padding-top:82px!important; padding-bottom:64px!important; position:relative; overflow:hidden; }
.fetaesp-v4.v2-about::before { right:-190px; top:20px; width:500px; height:180px; opacity:.12; transform:rotate(155deg); }
.fetaesp-v4.v2-about>.elementor-container { grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr); gap:72px; }
.fetaesp-v4.v2-about h2 { font-size:clamp(38px,4.5vw,60px)!important; line-height:1.12!important; }
.fetaesp-v4.v2-about .elementor-widget-text-editor { font-size:18px!important; max-width:490px; color:var(--ivory); }
.fetaesp-v4 .v2-principles { padding-left:38px!important; border-left:1px solid #657763; }
.fetaesp-v4 .v2-principles h3 { font-size:31px!important; font-weight:500!important; letter-spacing:-.025em!important; }
.fetaesp-v4 .v2-principles .elementor-widget-heading:not(:first-child) { padding-top:22px; border-top:1px solid #657763; }
.fetaesp-v4 .v4-sprout svg { width:32px; height:32px; display:block; }
.fetaesp-v4 .v4-sprout { width:32px!important; }
.fetaesp-v4.v4-union-banner { background:var(--forest); padding-top:0!important; padding-bottom:76px!important; }
.fetaesp-v4.v4-union-banner>.elementor-container>.elementor-column>.elementor-widget-wrap { position:relative; gap:0; }
.fetaesp-v4 .v4-union-image img {
  display:block; width:100%; height:430px; object-fit:cover; object-position:center;
  border-radius:2px 100px 2px 2px;
}
.fetaesp-v4 .v4-union-quote {
  position:absolute; left:30px; bottom:58px; width:min(620px,calc(100% - 60px))!important;
  padding:24px 28px; background:#173D2BEF; border-left:3px solid var(--gold);
}
.fetaesp-v4 .v4-union-quote h2 { color:var(--ivory); font-size:clamp(30px,3.1vw,42px)!important; line-height:1.16!important; font-weight:500!important; }
.fetaesp-v4 .v4-union-caption p { display:flex; justify-content:space-between; gap:16px; padding-top:16px; font-size:12px; color:var(--ivory); }
.fetaesp-v4 .v4-union-caption strong { letter-spacing:1.5px; font-size:11px; font-weight:600; }
.fetaesp-v4.v2-contact { background:var(--ivory); padding-top:62px!important; padding-bottom:62px!important; border-bottom:1px solid var(--line); }
.fetaesp-v4.v2-contact>.elementor-container { align-items:center; gap:48px; }
.fetaesp-v4.v2-contact .elementor-column:first-child { width:calc(65% - 24px); }
.fetaesp-v4.v2-contact .elementor-column:last-child { width:calc(35% - 24px); }
.fetaesp-v4.v2-contact h2 { font-size:54px!important; }
.fetaesp-v4.v2-contact .elementor-widget-text-editor { font-size:18px!important; }
.fetaesp-v4.v2-footer { background:var(--forest); position:relative; overflow:hidden; padding-bottom:76px!important; }
.fetaesp-v4.v2-footer::after { bottom:0; right:0; width:540px; height:150px; opacity:.2; }
.fetaesp-v4.v2-footer .elementor-column { padding-right:40px; }
.fetaesp-v4.v2-footer .elementor-column:last-child { padding-right:0; }
.fetaesp-v4.v2-footer .elementor-widget-wrap { gap:6px; }
.fetaesp-v4.v2-footer .elementor-widget-heading { margin-bottom:14px!important; }
.fetaesp-v4 .v2-footer-brand .elementor-widget-wrap { gap:16px; }
.fetaesp-v4 .v4-footer-wordmark .elementor-heading-title { font:600 40px/1.1 var(--display)!important; letter-spacing:-.035em!important; }
.fetaesp-v4 .v2-footer-link .elementor-button { padding:0!important; min-height:44px; font-size:16px!important; }
@media (min-width:768px) and (max-width:1024px) {
  .fetaesp-v4.v2-header>.elementor-container { grid-template-columns:180px 1fr; gap:12px; }
  .fetaesp-v4 .v2-brand img { width:160px; height:86px; }
  .fetaesp-v4 .v2-desktop-nav .elementor-button { font-size:14px!important; padding:14px 8px!important; }
  .fetaesp-v4 .v2-desktop-nav .elementor-widget-button:last-child .elementor-button { margin-left:4px; padding-left:14px!important; }
  .fetaesp-v4.v2-hero>.elementor-container { gap:32px; }
  .fetaesp-v4 .v3-title-pre { font-size:35px; }
  .fetaesp-v4 .v3-title-main { font-size:80px; }
  .fetaesp-v4 .v3-title-place { font-size:54px; }
  .fetaesp-v4 .v2-hero-image img { height:530px; border-top-left-radius:120px; }
  .fetaesp-v4 .v2-hero-copy .elementor-widget-text-editor { font-size:18px!important; }
  .fetaesp-v4.v2-services .elementor-column { padding:30px 20px; }
  .fetaesp-v4.v2-services h2 { font-size:25px!important; }
  .fetaesp-v4.v2-about>.elementor-container { gap:38px; }
  .fetaesp-v4 .v2-principles { padding-left:28px!important; }
  .fetaesp-v4 .v4-union-image img { height:360px; }
}
@media (min-width:768px) and (max-width:900px) {
  .fetaesp-v4.v2-header>.elementor-container { grid-template-columns:1fr auto; }
  .fetaesp-v4 .v2-desktop-nav { display:none!important; }
  .fetaesp-v4 .v2-mobile-nav { display:block!important; }
  .fetaesp-v4 .v2-news-grid .elementor-posts-container { grid-template-columns:1fr 1fr!important; gap:32px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child { grid-column:1/-1; grid-row:auto; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(2) { grid-column:1; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(3) { grid-column:2; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__card { display:flex!important; border:0; padding:0; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail__link,
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail,
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail img { height:200px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__meta-data { padding:18px 0 0!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__text { padding:16px 0 0!important; }
}
@media (max-width:767px) {
  .fetaesp-v4.elementor-section { padding-left:22px!important; padding-right:22px!important; }
  .fetaesp-v4.v2-skip-section { padding:0!important; }
  .fetaesp-v4.v2-utility { display:none!important; }
  .fetaesp-v4.v2-header { padding-top:12px!important; padding-bottom:12px!important; }
  .fetaesp-v4.v2-header>.elementor-container { grid-template-columns:1fr auto; gap:12px; }
  .fetaesp-v4 .v2-brand img { width:125px; height:67px; }
  .fetaesp-v4 .v2-desktop-nav { display:none!important; }
  .fetaesp-v4 .v2-mobile-nav { display:block!important; }
  .fetaesp-v4.v2-hero { padding-top:32px!important; padding-bottom:34px!important; }
  .fetaesp-v4.v2-hero>.elementor-container,
  .fetaesp-v4.v2-about>.elementor-container { grid-template-columns:1fr; gap:28px; }
  .fetaesp-v4.v2-hero::before { left:-130px; bottom:-55px; width:480px; opacity:.15; }
  .fetaesp-v4 .v3-title-pre { font-size:clamp(27px,8vw,34px); line-height:1.1; }
  .fetaesp-v4 .v3-title-main { font-size:clamp(65px,19vw,83px); margin-top:6px; }
  .fetaesp-v4 .v3-title-place { font-size:clamp(46px,13.5vw,58px); margin-top:4px; }
  .fetaesp-v4 .v2-hero-copy .elementor-widget-text-editor { font-size:18px!important; max-width:350px; }
  .fetaesp-v4 .v2-hero-copy>.elementor-element-populated { gap:20px; }
  .fetaesp-v4 .v2-primary-action, .fetaesp-v4 .v2-secondary-action { width:100%!important; }
  .fetaesp-v4 .v2-primary-action .elementor-button { width:100%; min-height:56px; padding:17px 14px!important; }
  .fetaesp-v4 .v2-secondary-action { margin-top:-6px; }
  .fetaesp-v4 .v2-secondary-action .elementor-button { width:100%; min-height:44px; justify-content:center; }
  .fetaesp-v4 .v2-hero-image img { height:285px; border-top-left-radius:80px; object-position:65% 60%; }
  .fetaesp-v4 .v2-hero-image::after { right:-7px; bottom:-7px; height:60px; width:30%; }
  .fetaesp-v4 .v2-image-caption p { font-size:10px!important; margin-top:4px; }
  .fetaesp-v4.v2-services>.elementor-container { grid-template-columns:1fr; }
  .fetaesp-v4.v2-services .elementor-column { padding:26px 0; border-right:0; border-top:1px solid var(--line); }
  .fetaesp-v4.v2-services .elementor-column:first-child { padding-top:30px; border-top:4px solid var(--gold); }
  .fetaesp-v4.v2-services .elementor-column:last-child { padding-bottom:30px; }
  .fetaesp-v4.v2-services .elementor-widget-wrap { column-gap:14px; row-gap:12px; }
  .fetaesp-v4.v2-services .v4-service-icon { margin-bottom:0!important; }
  .fetaesp-v4.v2-services .v4-kicker { width:calc(100% - 70px)!important; align-self:center; }
  .fetaesp-v4.v2-services h2 { font-size:30px!important; }
  .fetaesp-v4.v2-news { padding-top:46px!important; padding-bottom:48px!important; }
  .fetaesp-v4.v2-news h2 { font-size:38px!important; line-height:1.13!important; }
  .fetaesp-v4 .v2-news-grid { margin-top:10px; padding-top:24px; }
  .fetaesp-v4 .v2-news-grid .elementor-posts-container { grid-template-columns:1fr!important; gap:34px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child,
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) { grid-column:1; grid-row:auto; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__card { display:flex!important; grid-template-columns:none; border:0; padding:0; }
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail__link,
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail,
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__thumbnail img { height:260px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail__link,
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail,
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__thumbnail img { height:210px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__meta-data { padding:18px 0 0!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post:nth-child(n+2) .elementor-post__text { padding:14px 0 0!important; gap:14px; }
  .fetaesp-v4 .v2-news-grid .elementor-post:first-child .elementor-post__title { font-size:29px!important; }
  .fetaesp-v4 .v2-news-grid .elementor-post__title { font-size:27px!important; }
  .fetaesp-v4.v2-about { padding-top:48px!important; padding-bottom:32px!important; }
  .fetaesp-v4.v2-about h2 { font-size:40px!important; line-height:1.16!important; }
  .fetaesp-v4 .v2-principles { padding:26px 0 0!important; border-left:0; border-top:1px solid #657763; }
  .fetaesp-v4 .v2-principles h3 { font-size:32px!important; }
  .fetaesp-v4.v4-union-banner { padding-bottom:42px!important; }
  .fetaesp-v4 .v4-union-image img { height:230px; border-top-right-radius:65px; object-position:center; }
  .fetaesp-v4 .v4-union-quote { position:relative; left:auto; bottom:auto; width:100%!important; padding:24px 0 0; background:transparent; border-left:0; }
  .fetaesp-v4 .v4-union-quote h2 { font-size:33px!important; line-height:1.2!important; }
  .fetaesp-v4 .v4-union-caption p { flex-wrap:wrap; gap:4px 12px; padding-top:18px; }
  .fetaesp-v4.v2-contact { padding-top:40px!important; padding-bottom:42px!important; }
  .fetaesp-v4.v2-contact>.elementor-container { display:grid; grid-template-columns:1fr; gap:24px; }
  .fetaesp-v4.v2-contact .elementor-column { width:100%!important; }
  .fetaesp-v4.v2-contact h2 { font-size:40px!important; }
  .fetaesp-v4.v2-footer { padding-bottom:62px!important; }
  .fetaesp-v4.v2-footer>.elementor-container { display:grid; grid-template-columns:1fr 1fr; gap:28px 18px; }
  .fetaesp-v4.v2-footer .elementor-column { width:auto!important; padding:0; }
  .fetaesp-v4 .v2-footer-brand { grid-column:1/-1; }
  .fetaesp-v4 .v2-footer-link .elementor-button { font-size:15px!important; }
}
@media (max-width:359px) {
  .fetaesp-v4.elementor-section { padding-left:18px!important; padding-right:18px!important; }
  .fetaesp-v4 .v2-brand img { width:125px; height:67px; }
  .fetaesp-v4 .v2-mobile-menu summary { gap:6px; font-size:15px; }
  .fetaesp-v4 .v2-primary-action .elementor-button { font-size:15px!important; }
  .fetaesp-v4.v2-footer>.elementor-container { grid-template-columns:1fr; }
  .fetaesp-v4 .v2-footer-brand { grid-column:auto; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .fetaesp-v4 *, .fetaesp-v4 *::before, .fetaesp-v4 *::after { transition:none!important; }
}


/* FETAESP V5 — integração da marca aprovada à composição V4.
   Acrescentar depois do CSS existente, na Home e no modelo global.
   Não substitui os estilos nem as estruturas nativas das páginas. */

.fetaesp-v4,
.v4-inner {
  --gold: #F5A40D !important;
  --v4-harvest: #F5A40D !important;
}

/* A assinatura horizontal mantém proporção 3:1 e espaço óptico próprio. */
.fetaesp-v4.v2-header {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
.fetaesp-v4.v2-header > .elementor-container {
  grid-template-columns: 266px minmax(0, 1fr);
  gap: 26px;
}
.fetaesp-v4 .v2-brand img {
  display: block;
  width: 252px !important;
  max-width: 100% !important;
  height: 84px !important;
  object-fit: contain;
  object-position: left center;
}
.fetaesp-v4 .v2-brand a {
  display: inline-block;
  max-width: 100%;
}
.fetaesp-v4 .v2-mobile-menu summary {
  min-height: 44px;
  min-width: 80px;
}
.fetaesp-v4 .v2-mobile-menu nav a {
  min-height: 48px;
}

/* O amarelo-alaranjado acompanha a marca nos acentos sobre verde. */
.fetaesp-v4.v2-hero .v4-kicker .elementor-heading-title,
.fetaesp-v4.v2-about .v4-kicker .elementor-heading-title,
.fetaesp-v4 .v3-title-place {
  color: var(--gold) !important;
}
.fetaesp-v4 .v2-secondary-action .elementor-button {
  text-decoration-color: #F5A40D90;
}
.fetaesp-v4 svg [fill="#E2B444"] {
  fill: var(--gold);
}
.fetaesp-v4 svg[stroke="#E2B444"] {
  stroke: var(--gold);
}

/* Ativa somente quando o wordmark antigo é substituído por imagem nativa.
   A placa clara conserva as cores oficiais e dá contraste no rodapé verde. */
.fetaesp-v4.v2-footer .v4-footer-wordmark.elementor-widget-image {
  width: 296px !important;
  max-width: 100% !important;
  margin-bottom: 4px !important;
}
.fetaesp-v4.v2-footer .v4-footer-wordmark.elementor-widget-image > .elementor-widget-container {
  background: var(--ivory, #F6F1E5);
  padding: 12px 18px;
  border-radius: 2px;
}
.fetaesp-v4.v2-footer .v4-footer-wordmark.elementor-widget-image img {
  display: block;
  width: 260px !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 1;
  object-fit: contain;
}
.fetaesp-v4.v2-footer .v2-footer-brand .elementor-widget-text-editor {
  max-width: 46ch;
}

@media (min-width: 901px) and (max-width: 1024px) {
  .fetaesp-v4.v2-header > .elementor-container {
    grid-template-columns: 238px minmax(0, 1fr);
    gap: 16px;
  }
  .fetaesp-v4 .v2-brand img {
    width: 228px !important;
    height: 76px !important;
  }
}

@media (max-width: 900px) {
  .fetaesp-v4.v2-header > .elementor-container {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
  }
}

@media (max-width: 767px) {
  .fetaesp-v4 .v2-brand img {
    width: 186px !important;
    height: 62px !important;
  }
  .fetaesp-v4.v2-footer .v4-footer-wordmark.elementor-widget-image {
    width: 272px !important;
  }
  .fetaesp-v4.v2-footer .v4-footer-wordmark.elementor-widget-image > .elementor-widget-container {
    padding: 12px 16px;
  }
}

@media (max-width: 359px) {
  .fetaesp-v4.v2-header > .elementor-container {
    gap: 10px;
  }
  .fetaesp-v4 .v2-brand img {
    width: 162px !important;
    height: 54px !important;
  }
  .fetaesp-v4 .v2-mobile-menu summary {
    min-width: 74px;
  }
}

/* FETAESP V5 — botão do formulário integrado à identidade do portal. */
.fetaesp-v4 .wpforms-container button.wpforms-submit {
  background: #173D2B !important;
  color: #F6F1E5 !important;
  border: 1px solid #173D2B !important;
  border-radius: 0 !important;
  min-height: 48px;
  box-shadow: none !important;
  font: 600 1rem/1.3 'Source Sans 3', sans-serif !important;
}
.fetaesp-v4 .wpforms-container button.wpforms-submit:hover {
  background: #2F7445 !important;
  border-color: #2F7445 !important;
}
.fetaesp-v4 .wpforms-container button.wpforms-submit:focus-visible {
  outline: 3px solid #F5A40D !important;
  outline-offset: 4px;
}

/* FETAESP V6 — a marca antiga apresenta o sol, a mão, a planta e o nome.
   A PNG aprovada permanece intacta. Apenas seus recortes são animados.
   Máscaras geométricas aproximadas isolam áreas; a PNG integral encerra a cena.
   Entrada única de 3,4s. Sem loop, JavaScript ou atraso de navegação. */
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly {
  position: relative;
  display: block !important;
  width: 252px;
  height: 84px;
  max-width: 100%;
  isolation: isolate;
}
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain;
  object-position: left center;
}
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly__final {
  position: relative;
  z-index: 3;
  opacity: 1;
}
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly__previous {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly__pieces {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  overflow: visible;
  pointer-events: none;
}
.fetaesp-brand-assembly__pieces > g {
  transform-box: view-box;
  transform-origin: 17% 66%;
}
.fetaesp-brand-assembly__pieces > .fetaesp-brand-assembly__name {
  transform-origin: 34% 65%;
}
.fetaesp-v4 .v2-brand .fetaesp-brand-assembly:focus-visible {
  outline: 2px solid #173D2B;
  outline-offset: 5px;
  border-radius: 2px;
}
@media (prefers-reduced-motion: no-preference) {
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__previous { animation: fetaesp-v6-previous 3.4s ease-in-out 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__pieces { animation: fetaesp-v6-pieces 3.4s linear 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__sun { animation: fetaesp-v6-sun 3.4s ease-out 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__hand { animation: fetaesp-v6-hand 3.4s ease-out 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__plant { animation: fetaesp-v6-plant 3.4s ease-out 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__name { animation: fetaesp-v6-name 3.4s ease-out 1 both; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__final { animation: fetaesp-v6-final 3.4s ease-in-out 1 both; }
}
@keyframes fetaesp-v6-previous {
  0%, 12% { opacity: 1; transform: translateY(0); }
  31%, 100% { opacity: 0; transform: translateY(-2px); }
}
@keyframes fetaesp-v6-pieces {
  0%, 88% { opacity: 1; }
  96%, 100% { opacity: 0; }
}
@keyframes fetaesp-v6-sun {
  0%, 15% { opacity: 0; transform: translateY(10%); }
  32%, 100% { opacity: 1; transform: translateY(0); }
}
@keyframes fetaesp-v6-hand {
  0%, 25% { opacity: 0; transform: translate(-2%, 3%); }
  49%, 100% { opacity: 1; transform: translate(0, 0); }
}
@keyframes fetaesp-v6-plant {
  0%, 34% { opacity: 0; transform: scaleY(.28); }
  61%, 100% { opacity: 1; transform: scaleY(1); }
}
@keyframes fetaesp-v6-name {
  0%, 47% { opacity: 0; transform: translateX(2%); }
  74%, 100% { opacity: 1; transform: translateX(0); }
}
@keyframes fetaesp-v6-final {
  0%, 80% { opacity: 0; }
  90%, 100% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__previous,
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__pieces { display: none; animation: none; }
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly__final { opacity: 1; animation: none; }
}
@media (min-width: 901px) and (max-width: 1024px) {
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly { width: 228px; height: 76px; }
}
@media (max-width: 767px) {
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly { width: 186px; height: 62px; }
}
@media (max-width: 359px) {
  .fetaesp-v4 .v2-brand .fetaesp-brand-assembly { width: 162px; height: 54px; }
}

/* FETAESP V7 — endereço e telefone à vista no topo e no rodapé.
   Acrescentar depois dos estilos atuais da Home e dos modelos globais. */

.fetaesp-v4.v2-utility {
  display: block !important;
}
.fetaesp-v4.v2-utility > .elementor-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 24px;
}
.fetaesp-v4.v2-utility > .elementor-container > .elementor-column {
  width: auto !important;
  min-width: 0;
}
.fetaesp-v4.v2-utility .v7-top-address .elementor-heading-title {
  font-family: var(--body, 'Source Sans 3', Arial, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--ivory, #F6F1E5) !important;
  overflow-wrap: anywhere;
}
.fetaesp-v4.v2-utility .v7-top-address .elementor-heading-title a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  max-width: 100%;
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.fetaesp-v4.v2-utility .v2-utility-phone .elementor-button {
  font-size: 14px !important;
  line-height: 1.4;
  white-space: nowrap;
}

.fetaesp-v4.v2-footer .v7-footer-address {
  max-width: 30ch;
  color: var(--ivory, #F6F1E5) !important;
  font-family: var(--body, 'Source Sans 3', Arial, sans-serif) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  overflow-wrap: anywhere;
}
.fetaesp-v4.v2-footer .v7-footer-address p {
  margin: 0;
}
.fetaesp-v4.v2-footer .v7-footer-address address {
  margin: 0;
  font-style: normal;
}
.fetaesp-v4.v2-footer .v7-footer-address a {
  display: inline-block;
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

@media (max-width: 767px) {
  .fetaesp-v4.v2-utility {
    padding-top: 8px !important;
    padding-bottom: 0 !important;
  }
  .fetaesp-v4.v2-utility > .elementor-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .fetaesp-v4.v2-utility .elementor-column:last-child .elementor-widget-wrap {
    justify-content: flex-start;
  }
  .fetaesp-v4.v2-utility .v2-utility-phone {
    text-align: left;
  }
}

/* FETAESP V8 — assinatura institucional e navegação persistente.
   Acrescentar após V4, marca V5/V6 e endereço V7.
   Sticky: ativar nativamente na seção .v2-header (Topo, todos os dispositivos,
   offset 0, ficar na coluna Não). Este arquivo não simula eventos de rolagem. */

html {
  --v8-header-height: 112px;
  --v8-admin-offset: 0px;
  scroll-padding-top: calc(var(--v8-header-height) + var(--v8-admin-offset) + 16px);
}
html:has(body.admin-bar) { --v8-admin-offset: 32px; }

.fetaesp-v4.v2-header {
  z-index: 1000;
  overflow: visible;
}
.fetaesp-v4.v2-header.elementor-sticky--active {
  top: var(--v8-admin-offset, 0px) !important;
  box-shadow: 0 6px 22px #173D2B12;
}
/* Usar esta classe somente na Home quando sticky nativo não estiver ativo.
   No cabeçalho global usar o recurso nativo, pois seu wrapper é mais curto
   do que o conteúdo da página. Não aplicar as duas estratégias juntas. */
body:not(.elementor-editor-active) .fetaesp-v4.v2-header.v8-sticky-css {
  position: sticky;
  top: var(--v8-admin-offset, 0px);
}

/* A faixa legal acompanha a base verde e preserva a hierarquia do rodapé. */
.fetaesp-v4.v2-footer { padding-bottom: 36px !important; }
.fetaesp-v4.v7-footer-legal {
  background: var(--forest, #173D2B);
  color: var(--ivory, #F6F1E5);
  padding-top: 0 !important;
  padding-right: 40px !important;
  padding-bottom: 28px !important;
  padding-left: 40px !important;
}
.fetaesp-v4.v7-footer-legal > .elementor-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px 40px;
  border-top: 1px solid #F6F1E533;
  padding-top: 22px;
}
.fetaesp-v4.v7-footer-legal > .elementor-container > .elementor-column {
  width: auto !important;
  min-width: 0;
  padding: 0;
}
.fetaesp-v4.v7-footer-legal .elementor-widget-wrap { gap: 8px; }
.fetaesp-v4.v7-footer-legal p { margin: 0 !important; }
.fetaesp-v4.v7-footer-legal .v8-footer-copyright .elementor-heading-title,
.fetaesp-v4.v7-footer-legal .v8-footer-copyright p {
  color: var(--ivory, #F6F1E5) !important;
  font-family: var(--body, 'Source Sans 3', Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin: 0 !important;
  overflow-wrap: anywhere;
}
.fetaesp-v4.v7-footer-legal .v8-mb-credit {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 44px;
  max-width: 100%;
  gap: 18px;
  color: var(--ivory, #F6F1E5);
  text-decoration: none;
}
.fetaesp-v4.v7-footer-legal .v8-mb-credit img {
  display: block;
  width: 118px;
  max-width: 30vw;
  height: 84px;
  object-fit: contain;
}
.fetaesp-v4.v7-footer-legal .v8-mb-credit__copy {
  display: grid;
  gap: 2px;
  font-family: var(--body, 'Source Sans 3', Arial, sans-serif);
  line-height: 1.4;
}
.fetaesp-v4.v7-footer-legal .v8-mb-credit__label { font-size: 12px; }
.fetaesp-v4.v7-footer-legal .v8-mb-credit strong {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  text-underline-offset: 4px;
}
.fetaesp-v4.v7-footer-legal .v8-mb-credit:hover strong { text-decoration: underline; }
.fetaesp-v4.v7-footer-legal a:focus-visible {
  outline: 3px solid var(--ivory, #F6F1E5);
  outline-offset: 5px;
}

@media (max-width: 782px) {
  html:has(body.admin-bar) { --v8-admin-offset: 46px; }
}
@media (max-width: 767px) {
  html { --v8-header-height: 90px; }
  .fetaesp-v4.v2-footer { padding-bottom: 28px !important; }
  .fetaesp-v4.v7-footer-legal {
    padding-right: 22px !important;
    padding-left: 22px !important;
  }
  .fetaesp-v4.v7-footer-legal > .elementor-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    padding-top: 22px;
  }
  .fetaesp-v4.v7-footer-legal .v8-mb-credit { gap: 16px; }
  .fetaesp-v4.v7-footer-legal .v8-mb-credit img { width: 105px; height: 76px; }
}
@media (max-width: 600px) {
  /* A barra WordPress é absoluta nesta largura e sai da tela ao rolar. */
  html:has(body.admin-bar) { --v8-admin-offset: 0px; }
}
@media (max-width: 359px) {
  html { --v8-header-height: 82px; }
  .fetaesp-v4.v7-footer-legal .v8-mb-credit img { width: 92px; height: 67px; }
}
    