:root{
  --et-navy:#0f172a;
  --et-navy-2:#1e2a44;
  --et-gold:#b8945a;
  --et-gold-dark:#8f7140;
  --et-bg:#f7f8fa;
  --et-border:#e5e7eb;
  --et-text:#1f2430;
  --et-text-soft:#5b6472;
  --et-radius:14px;
  --et-shadow:0 4px 16px rgba(15,23,42,.06);
  --et-shadow-lg:0 20px 40px rgba(15,23,42,.12);
}

body{
  color:var(--et-text);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{
  font-family:"Fraunces","Georgia",serif;
  letter-spacing:-0.01em;
  color:var(--et-navy);
}
p{ color:var(--et-text-soft); line-height:1.7; }

a{ transition:color .2s ease; }

/* ---------- HEADER ---------- */
.wp-block-template-part:has(.wp-block-navigation){
  position:sticky; top:0; z-index:100;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid var(--et-border);
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.wp-block-site-title a{
  font-family:"Fraunces","Georgia",serif;
  font-weight:600;
  color:var(--et-navy) !important;
  letter-spacing:-0.01em;
}
.wp-block-navigation{ font-family:"Inter",system-ui,sans-serif; }
.wp-block-navigation-item > .wp-block-navigation-item__content{
  font-weight:500;
  font-size:15px;
  color:var(--et-text) !important;
  padding:8px 14px !important;
  border-radius:8px;
  position:relative;
}
.wp-block-navigation-item > .wp-block-navigation-item__content:hover{
  color:var(--et-navy) !important;
  background:rgba(184,148,90,.10);
}
.wp-block-navigation__submenu-container{
  border-radius:12px !important;
  box-shadow:var(--et-shadow-lg) !important;
  border:1px solid var(--et-border) !important;
  padding:6px !important;
  overflow:hidden;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content{
  border-radius:8px !important;
  font-size:14px !important;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{
  background:var(--et-bg) !important;
}

/* ---------- BUTTONS ---------- */
.wp-block-button__link{
  border-radius:999px !important;
  font-weight:600 !important;
  padding:14px 28px !important;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease !important;
  box-shadow:0 6px 16px rgba(15,23,42,.12);
}
.wp-block-button__link:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(15,23,42,.18);
}
.wp-block-buttons .wp-block-button:not(.is-style-outline) .wp-block-button__link{
  background:var(--et-gold) !important;
  color:#1a1406 !important;
  border:none !important;
}
.wp-block-buttons .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{
  background:var(--et-gold-dark) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link{
  border:1.5px solid currentColor !important;
  background:transparent !important;
  box-shadow:none;
}

/* ---------- HERO (dark group) ---------- */
.wp-block-group[style*="background-color:#111827"],
.wp-block-group[style*="background-color: #111827"]{
  background:linear-gradient(135deg,var(--et-navy) 0%,var(--et-navy-2) 100%) !important;
  position:relative;
  overflow:hidden;
  border-radius:0 0 28px 28px;
}
.wp-block-group[style*="#111827"] h1,
.wp-block-group[style*="#111827"] p{ color:#f4f2ee !important; }
.wp-block-group[style*="#111827"]::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(600px 300px at 85% -10%, rgba(184,148,90,.18), transparent 60%),
    radial-gradient(500px 260px at -10% 110%, rgba(184,148,90,.10), transparent 60%);
  pointer-events:none;
}

/* ---------- CARDS (áreas de trabajo) ---------- */
.wp-block-column.has-border-color{
  background:#fff;
  border-color:var(--et-border) !important;
  border-radius:var(--et-radius) !important;
  box-shadow:var(--et-shadow);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.wp-block-column.has-border-color:hover{
  transform:translateY(-6px);
  box-shadow:var(--et-shadow-lg);
  border-color:var(--et-gold) !important;
}
.wp-block-column.has-border-color h3{
  font-size:20px;
  overflow-wrap:normal;
  word-break:keep-all;
  hyphens:none;
}
.wp-block-column.has-border-color p a{
  color:var(--et-gold-dark);
  font-weight:600;
  text-decoration:none;
}
.wp-block-column.has-border-color p a:hover{ color:var(--et-navy); }

/* ---------- ZONA DE ACTUACIÓN / TRUST SECTIONS ---------- */
.wp-block-group[style*="background-color:#f3f4f6"],
.wp-block-group[style*="background-color: #f3f4f6"]{
  background:var(--et-bg) !important;
  border-radius:28px;
}

/* ---------- FOOTER ---------- */
.wp-site-blocks > footer,
footer.wp-block-template-part{
  background:var(--et-navy) !important;
  border-top:none !important;
  margin-top:40px;
}
footer.wp-block-template-part *{ color:#cbd3e1 !important; }
footer.wp-block-template-part p[style*="font-weight:600"]{
  color:#f4f2ee !important;
  font-family:"Fraunces","Georgia",serif;
  font-size:19px !important;
}
footer.wp-block-template-part a{ color:#e7d9bd !important; }
footer.wp-block-template-part a:hover{ color:var(--et-gold) !important; }

/* ---------- GENERIC SECTION POLISH ---------- */
.wp-block-group{ border-radius:var(--et-radius); }
::selection{ background:rgba(184,148,90,.35); }

/* ---------- FOCUS STATES ---------- */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:2px solid var(--et-gold) !important;
  outline-offset:2px;
}

/* ---------- FORMS (Contact Form 7) ---------- */
.wpcf7-form input[type=text], .wpcf7-form input[type=email], .wpcf7-form input[type=tel], .wpcf7-form textarea{
  border:1px solid var(--et-border) !important;
  border-radius:10px !important;
  padding:12px 14px !important;
  font-size:15px !important;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.wpcf7-form input:focus, .wpcf7-form textarea:focus{
  border-color:var(--et-gold) !important;
  box-shadow:0 0 0 3px rgba(184,148,90,.15) !important;
  outline:none !important;
}
.wpcf7-form input[type=submit]{
  background:var(--et-navy) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  padding:14px 30px !important;
  font-weight:600 !important;
  cursor:pointer;
  transition:transform .18s ease, background-color .18s ease;
}
.wpcf7-form input[type=submit]:hover{ background:var(--et-navy-2) !important; transform:translateY(-2px); }

@media (max-width:781px){
  .wp-block-navigation__responsive-container.is-menu-open{
    background:var(--et-navy) !important;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
    color:#f4f2ee !important;
  }
}

/* ---------- CONTENT LINKS (lists, paragraphs) ---------- */
.entry-content a:not(.wp-block-button__link),
.wp-block-post-content a:not(.wp-block-button__link),
main a:not(.wp-block-button__link):not(.wp-block-navigation-item__content){
  color:var(--et-gold-dark);
  text-decoration:none;
  border-bottom:1px solid rgba(184,148,90,.35);
  transition:color .18s ease, border-color .18s ease;
}
main a:not(.wp-block-button__link):not(.wp-block-navigation-item__content):hover{
  color:var(--et-navy);
  border-bottom-color:var(--et-navy);
}
.wp-block-list{ padding-left:4px; }
.wp-block-list li{ margin-bottom:8px; }
.wp-block-list li::marker{ color:var(--et-gold); }

