.navgroup {
  position: relative;
}
.language-note {
  max-width: 620px;
  margin: 20px 0 0;
  padding-left: 14px;
  border-left: 2px solid #c6a56b;
  color: #526067;
  font-size: 14px;
  line-height: 1.55;
}
.language-note-light {
  color: #d2dadd;
}
.navgroup summary {
  cursor: pointer;
  list-style: none;
}
.navgroup summary::-webkit-details-marker {
  display: none;
}
.navgroup summary:after {
  content: " +";
  color: #806536;
}
.navgroup[open] summary:after {
  content: " −";
}
.navgroup > div {
  display: none;
  position: absolute;
  top: 28px;
  left: -18px;
  min-width: 220px;
  padding: 14px;
  background: #fffdf8;
  border: 1px solid var(--line);
  box-shadow: 0 14px 30px #0b1f2a1a;
}
.navgroup[open] > div {
  display: block;
}
.navgroup > div a {
  display: block;
  padding: 8px 5px;
}
body .hero h1,
body .hero h2,
body .hero h3,
body .pagehero h1,
body .pagehero h2,
body .contrast h1,
body .contrast h2,
body .contrast h3,
body .closing h1,
body .closing h2,
body .closing h3,
body .assessment h1,
body .assessment h2,
body .assessment h3 {
  color: #fff !important;
}
body .hero h1 em,
body .hero h2 em,
body .contrast h1 em,
body .contrast h2 em,
body .closing h1 em,
body .closing h2 em {
  color: var(--sand) !important;
}
footer.et-l--footer {
  display: block !important;
  grid-template-columns: none !important;
  padding: 0 !important;
  font-size: inherit !important;
}
footer.et-l--footer > .et_builder_inner_content,
footer.et-l--footer .et_pb_section {
  width: 100% !important;
  max-width: none !important;
}
footer.et-l--footer .et_pb_row {
  width: min(90%, 1180px) !important;
  max-width: 1180px !important;
  margin: auto !important;
}
footer.et-l--footer .et_pb_section {
  padding-top: 34px !important;
  padding-bottom: 24px !important;
}
footer.et-l--footer .et_pb_row {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
footer.et-l--footer .et_pb_column_0_tb_footer ul {
  columns: 2;
  column-gap: 36px;
  margin-top: 8px;
}
footer.et-l--footer .et_pb_column_0_tb_footer li {
  break-inside: avoid;
  margin-bottom: 3px;
}
footer.et-l--footer .et_pb_column_0_tb_footer p {
  margin-bottom: 8px;
}
@media (width<=700px) {
  footer.et-l--footer .et_pb_column_0_tb_footer ul {
    columns: 1;
  }
  footer.et-l--footer .et_pb_row {
    width: calc(100% - 48px) !important;
  }
}
.pillargrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
}
.pillar {
  background: var(--white);
  padding: 38px;
  min-height: 310px;
  display: flex;
  flex-direction: column;
}
.pillar:hover {
  background: #fff;
}
.pillar b,
.flowgrid b {
  color: var(--sand);
  font-size: 12px;
}
.pillar h3 {
  margin-top: 48px;
  font-size: 25px;
}
.pillar p {
  color: var(--muted);
}
.pillar span {
  margin-top: auto;
  font-size: 13px;
  font-weight: 600;
}
.serviceflow {
  background: #f8f5ef;
}
.serviceflow > h2 {
  max-width: 760px;
}
.flowgrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  margin-top: 45px;
}
.flowgrid article {
  background: var(--white);
  padding: 38px;
  min-height: 240px;
}
.flowgrid h3 {
  margin-top: 35px;
}
.flowgrid p {
  color: var(--muted);
}
.scopegrid,
.packages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--line);
  padding: 1px;
}
.scopegrid article,
.packages article {
  background: var(--white);
  padding: 42px;
}
.scopegrid h3,
.packages h3 {
  font-size: 25px;
}
.scopegrid p,
.packages p,
.packages li {
  color: var(--muted);
}
.packages {
  background: var(--navy);
  padding: 7vw 6vw;
  gap: 18px;
}
.packages article {
  min-height: 390px;
}
.packages ul {
  margin: 25px 0;
  padding-left: 18px;
  list-style: disc;
}
.packages li {
  margin: 9px 0;
}
.notice {
  background: var(--cream);
  padding: 36px 6vw;
}
.notice strong {
  font-family: Manrope, sans-serif;
  font-size: 22px;
}
.notice p {
  max-width: 900px;
  margin: 8px 0;
}
.notice a {
  font-weight: 600;
  border-bottom: 1px solid;
}
.fenich-contact-form {
  background: #f8f5ef;
  display: grid;
  gap: 18px;
  padding: 40px;
}
.fenich-contact-form label {
  display: grid;
  gap: 7px;
  font-size: 12px;
  font-weight: 600;
}
.fenich-contact-form small a {
  text-decoration: underline;
}
.formstatus {
  padding: 15px;
  margin-bottom: 15px;
}
.formstatus.success {
  background: #e8f5ed;
  color: #165b35;
}
.formstatus.error {
  background: #fff0ed;
  color: #8d2d1f;
}
.fg-floating-ctas {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 999999;
  display: flex;
  gap: 10px;
  filter: drop-shadow(0 10px 22px rgba(10, 31, 37, 0.24));
}
.fg-floating-ctas a {
  display: inline-flex;
  min-height: 50px;
  padding: 12px 20px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  transition: transform 0.2s ease;
}
.fg-floating-ctas a:hover,
.fg-floating-ctas a:focus-visible {
  transform: translateY(-2px);
}
.fg-floating-consultation {
  color: #0b2930;
  background: #e8c995;
  border: 1px solid #e8c995;
}
.fg-floating-whatsapp {
  color: #fff;
  background: #168f55;
  border: 1px solid #168f55;
}
.fg-floating-whatsapp:before {
  content: "●";
  margin-right: 8px;
  font-size: 11px;
}
footer {
  grid-template-columns: 1.25fr repeat(4, 1fr);
}
@media (width<=1050px) {
  .navgroup {
    width: 100%;
  }
  .navgroup > div {
    position: static;
    box-shadow: none;
    border: 0;
    padding: 6px 0 6px 14px;
  }
  .navgroup > div a {
    padding: 6px 0;
  }
}
@media (width<=700px) {
  .pillargrid,
  .flowgrid,
  .scopegrid,
  .packages {
    grid-template-columns: 1fr;
  }
  .pillar,
  .flowgrid article {
    min-height: auto;
  }
  .packages {
    padding: 70px 24px;
  }
  .packages article {
    min-height: auto;
  }
  .fg-floating-ctas {
    right: 10px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 10px;
    gap: 8px;
  }
  .fg-floating-ctas a {
    flex: 1 1 50%;
    min-height: 52px;
    padding: 10px 8px;
    font-size: 12px;
  }
  .mobilebar {
    display: none !important;
  }
  footer {
    grid-template-columns: 1fr;
  }
  .fenich-contact-form {
    padding: 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .fg-floating-ctas a {
    transition: none;
  }
}
