html,
body {
  font-family: Verdana, "Segoe UI", Tahoma, sans-serif;
  font-weight: 400;
  line-height: 1.5;
}
h1,
h2,
h3 {
  font-weight: 700;
}

:root{--maxw:1100px;--accent:#004276;--text:#333;--bg:#fff;--nav-hover:#d9e7f5;--nav-active:#cbdcf0}
*{box-sizing:border-box}
html,
body{margin:0;padding:0}
body { font-family: 'Open Sans', Verdana, Arial, Helvetica, sans-serif;background:var(--bg);line-height:1.5}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;margin:.5rem;display:inline-block;background:#fffbcc;padding:.5rem .75rem;border:1px solid #e6d900}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.site-header{padding:0;min-height:0}
.primary-nav ul{list-style:none;margin:0 auto;display:flex;max-width:var(--maxw);flex-wrap:wrap;justify-content:flex-start}
.primary-nav li{margin:0;padding:0}
.primary-nav li.lang{margin-left:auto}
.primary-nav a{display:inline-block;padding:.5rem .9rem;border:1px solid var(--nav-border);border-radius:6px;background:linear-gradient(#f6fbff,#e8f0f8);box-shadow:inset 0 1px 0 #fff;font-weight:600;line-height:1}
.primary-nav a:hover{background:var(--nav-hover)}
.primary-nav a[aria-current="page"]{background:var(--nav-active)}
.container{max-width:var(--maxw);margin:1.5rem auto;padding:0 1rem;display:grid;gap:2rem}
.container.single{grid-template-columns:1fr}
@media (min-width:900px){.container{grid-template-columns:1fr 320px;align-items:start}}
.site-header a{display:block}
.site-header a:link,
.site-header a:visited{text-decoration:none}
.site-footer .footer-inner{
  text-align: center;
}
.site-footer .footer-links a{
  color:#bfbfbf;
  text-decoration:none;
  padding:0 2px;
}
.site-footer .footer-links a:hover{ color:#ffffff; text-decoration:underline; }
.site-footer .footer-lang a{
  color:#bfbfbf; text-decoration:none;
}
.site-footer .footer-lang a:hover{ color:#ffffff; text-decoration:underline; }
.site-footer .footer-copy{
  font-size:1rem;
}
.site-footer{
  background:#1b1b1b !important;
  border-top:none !important;
  padding:28px 0 36px !important;
  width:100% !important;
  text-align:center !important;
}
.site-footer .footer-inner{ max-width:1100px; margin:0 auto; }
.site-footer .footer-links{
  margin:0 0 12px 0 !important;
  font-size:1.05rem !important;
  color:#bfbfbf !important;
}
.site-footer .footer-lang{ margin:0 0 12px 0 !important; }
.site-footer a:hover{ color:#ffffff !important; text-decoration:underline !important; }
.site-footer .footer-copy{ color:#bfbfbf !important; }

@media (min-width: 900px){
  .container{ align-items:stretch; }
}
.site-header {
  background: linear-gradient(
    to bottom,
    #fcfcfc 0%,
    #d6d6d6 25%,
    #adadad 50%,
    #848484 75%,
    #5d5d5d 100%
  );
  border-bottom: 1px solid #c5c5c5;
}
.content .foto_izqda {
  float: left;
  margin: 0 1.5rem 1rem 0;
  height: auto;
}
@media (max-width: 640px){
  .content .foto_izqda {
    float: none;
    display: block;
    margin: 0 auto 1rem auto;
  }
}
.content h1,
.content h2,
.content h3 {
  font-family: 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
  font-weight: 600;
}
.primary-nav {
  margin-top: 0;

}
.primary-nav { margin-bottom: 0; }
.container { margin-top: 0; }
.content h1 { margin-top: 4px; }
.content h2 { margin-top: 4px; }
.primary-nav li.active > a,
.primary-nav li.active > a:visited {
  background-color: #d6e6f7;
  border-color: #9db6cf;
  font-weight: 600;
}
.primary-nav a,
.primary-nav li a {
  font-family: Verdana, "Segoe UI", Tahoma, sans-serif !important;
  font-weight: 400 !important;
}
.primary-nav a,
.primary-nav li a,
.primary-nav a:hover,
.primary-nav a:focus,
.primary-nav a:active,
.primary-nav a:visited,
.primary-nav a[aria-current="page"] {
  font-family: Verdana, "Segoe UI", Tahoma, sans-serif !important;
  font-weight: 400 !important;
}
h1 {
  font-family: Verdana, "Segoe UI", Tahoma, sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.25;
  margin-top: 0.5rem;
  margin-bottom: 1.5rem;
}
.container{ margin-bottom:0 !important; }
.site-footer{ padding-top:24px !important; margin-top:0 !important; }
.site-footer,
.site-footer * {
  color: #aaa !important;
  text-decoration: none;
}

.site-footer a:hover {
  color: #fff;
}
:root{
  --footer-bg: #1f1f1f;
  --footer-fg: #aaa;
  --footer-fg-hover: #fff;
}

.site-footer{
  background: var(--footer-bg);
  color: var(--footer-fg) !important;
}
.site-footer *{
  color: var(--footer-fg) !important;
}
.site-footer a{
  text-decoration: none !important;
}
.site-footer a:hover,
.site-footer a:focus{
  color: var(--footer-fg-hover) !important;
  text-decoration: underline;
}
.container,
.container.single {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 1rem;
  display: block;
}

@media (min-width: 900px) {
  .container,
.container.single {
    display: block !important;
    grid-template-columns: none !important;
    align-items: initial !important;
  }
}

.content {
  width: 100%;
  max-width: none;
  padding: 24px 0 8rem;
}
:root {
  --font-apple-like: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
  --nav-bg: #f5f5f7;
  --nav-border: #d2d2d7;
  --nav-text: #1d1d1f;
  --nav-text-muted: #424245;
  --nav-home-bg: #ffffff;
  --nav-home-bg-hover: #ececf0;
}

html,
body,
input {
  font-family: var(--font-apple-like) !important;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  color: #1d1d1f;
}

.content,
.content p,
.content a,
.site-footer,
.site-footer a {
  font-family: var(--font-apple-like) !important;
}

h1,
h2,
h3,
.content h1,
.content h2,
.content h3 {
  font-family: var(--font-apple-like) !important;
  letter-spacing: -0.015em;
}

h1,
.content h1 {
  font-weight: 500 !important;
  line-height: 1.17;
}

h2,
h3,
.content h2,
.content h3 {
  font-weight: 500 !important;
}

.primary-nav {
  background: var(--nav-bg) !important;
  border-top: 1px solid var(--nav-border) !important;
  border-bottom: 1px solid var(--nav-border) !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.primary-nav ul {
  padding: 0 1rem !important;
  gap: 1.35rem !important;
  align-items: center;
}

.primary-nav a,
.primary-nav li a,
.primary-nav a:visited,
.primary-nav a:active,
.primary-nav a[aria-current="page"] {
  font-family: var(--font-apple-like) !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--nav-text-muted) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
}

.primary-nav a:hover,
.primary-nav a:focus,
.primary-nav li a:hover,
.primary-nav li a:focus {
  color: var(--nav-text) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: transparent !important;
}

.primary-nav a[aria-current="page"] {
  color: var(--nav-text) !important;
  font-weight: 600 !important;
}
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
  min-width: 34px;
  min-height: 30px;
  padding: 0.35rem 0.6rem !important;
  border: 1px solid var(--nav-border) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  color: var(--nav-text-muted) !important;
  font-weight: 500 !important;
}

.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a:focus {
  color: var(--nav-text) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.primary-nav li:first-child > a[aria-current="page"] {
  color: var(--nav-text) !important;
  background: #ededf0 !important;
  font-weight: 700 !important;
}
:root {
  --nav-text-black: #000000;
}
.primary-nav a,
.primary-nav li a,
.primary-nav a:visited,
.primary-nav a:active,
.primary-nav a[aria-current="page"],
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: color 0.15s ease-in-out;
}

.primary-nav a:hover,
.primary-nav a:focus,
.primary-nav li a:hover,
.primary-nav li a:focus,
.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a:focus {
  color: var(--nav-text-black) !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
  background: var(--nav-home-bg) !important;
}

.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a:focus {
  background: var(--nav-home-bg) !important;
}
.primary-nav a[aria-current="page"],
.primary-nav li:first-child > a[aria-current="page"] {
  color: var(--nav-text-black) !important;
  font-weight: 400 !important;
}
:root {
  --nav-text-default: #4d4d4f;
  --nav-text-hover: #000000;
  --page-title-dark-grey: #3a3a3c;
}
.primary-nav a,
.primary-nav li a,
.primary-nav a:link,
.primary-nav a:visited,
.primary-nav a:active,
.primary-nav a:focus,
.primary-nav a:hover,
.primary-nav a[aria-current="page"],
.primary-nav a[aria-current="page"]:hover,
.primary-nav li.active > a,
.primary-nav li.active > a:link,
.primary-nav li.active > a:visited,
.primary-nav li.active > a:active,
.primary-nav li.active > a:focus,
.primary-nav li.active > a:hover,
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:link,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a:active,
.primary-nav li:first-child > a:focus,
.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a[aria-current="page"],
.primary-nav li:first-child > a[aria-current="page"]:hover {
  font-family: var(--font-apple-like) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  transform: none !important;
  transition: color 0.15s ease-in-out !important;
}
.primary-nav a,
.primary-nav li a,
.primary-nav a:link,
.primary-nav a:visited,
.primary-nav a:active,
.primary-nav a[aria-current="page"],
.primary-nav li.active > a,
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:link,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a:active,
.primary-nav li:first-child > a[aria-current="page"] {
  color: var(--nav-text-default) !important;
}
.primary-nav a:hover,
.primary-nav a:focus,
.primary-nav li a:hover,
.primary-nav li a:focus,
.primary-nav a[aria-current="page"]:hover,
.primary-nav a[aria-current="page"]:focus,
.primary-nav li.active > a:hover,
.primary-nav li.active > a:focus,
.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a:focus,
.primary-nav li:first-child > a[aria-current="page"]:hover,
.primary-nav li:first-child > a[aria-current="page"]:focus {
  color: var(--nav-text-hover) !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transform: none !important;
}
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a:focus,
.primary-nav li:first-child > a[aria-current="page"],
.primary-nav li:first-child > a[aria-current="page"]:hover,
.primary-nav li:first-child > a[aria-current="page"]:focus {
  min-width: 34px !important;
  min-height: 30px !important;
  padding: 0.35rem 0.6rem !important;
  border: 1px solid var(--nav-border) !important;
  border-radius: 8px !important;
  background: var(--nav-home-bg) !important;
  box-shadow: none !important;
}
h1,
.content h1 {
  color: var(--page-title-dark-grey) !important;
}
.front_pral img.homepage-image {
  margin: 1.6rem 0 !important;
}
.content {
  font-size: 17px;
}
:root {
  --shared-ui-text-size: 17px;
}
.content,
.content p,
.content a,
.content span {
  font-size: var(--shared-ui-text-size) !important;
}
.primary-nav a,
.primary-nav li a,
.primary-nav a:link,
.primary-nav a:visited,
.primary-nav a:active,
.primary-nav a:focus,
.primary-nav a:hover,
.primary-nav a[aria-current="page"],
.primary-nav a[aria-current="page"]:focus,
.primary-nav a[aria-current="page"]:hover,
.primary-nav li.active > a,
.primary-nav li.active > a:link,
.primary-nav li.active > a:visited,
.primary-nav li.active > a:active,
.primary-nav li.active > a:focus,
.primary-nav li.active > a:hover,
.primary-nav li:first-child > a,
.primary-nav li:first-child > a:link,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a:active,
.primary-nav li:first-child > a:focus,
.primary-nav li:first-child > a:hover,
.primary-nav li:first-child > a[aria-current="page"],
.primary-nav li:first-child > a[aria-current="page"]:focus,
.primary-nav li:first-child > a[aria-current="page"]:hover {
  font-size: var(--shared-ui-text-size) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  transform: none !important;
}
.site-footer,
.site-footer *,
.site-footer a,
.site-footer .footer-inner,
.site-footer .footer-links,
.site-footer .footer-links a,
.site-footer .footer-lang,
.site-footer .footer-lang a,
.site-footer .footer-copy {
  font-size: var(--shared-ui-text-size) !important;
}
.content,
.content p,
.content a,
.content span {
  line-height: 1.65 !important;
}
:root {
  --content-photo-vertical-spacing: 2.2rem;
}
.content img:not(.foto_izqda),
.front_pral img.homepage-image {
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
  margin-top: var(--content-photo-vertical-spacing) !important;
  margin-bottom: var(--content-photo-vertical-spacing) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.content img.foto_izqda {
  margin-top: 0.25rem !important;
  margin-right: 1.5rem !important;
  margin-bottom: var(--content-photo-vertical-spacing) !important;
  margin-left: 0 !important;
}

@media (max-width: 640px) {
  .content img.foto_izqda {
    margin-top: var(--content-photo-vertical-spacing) !important;
    margin-right: auto !important;
    margin-bottom: var(--content-photo-vertical-spacing) !important;
    margin-left: auto !important;
  }
}
@media (max-width: 700px) {
  .primary-nav {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }

  .primary-nav li {
    flex: 0 0 auto !important;
  }
  .primary-nav li:not(.lang) > a {
    white-space: nowrap !important;
  }
}

@media (max-width: 420px) {
  .primary-nav ul {
    padding-left: 0.85rem !important;
    padding-right: 0.85rem !important;
    gap: 0.6rem 1rem !important;
  }
  .primary-nav a,
.primary-nav li a,
.primary-nav li.lang a,
.primary-nav li.lang span {
    font-size: 16px !important;
  }
}
.mobile-nav-checkbox,
.mobile-nav-button {
  display: none;
}

@media (max-width: 700px) {
  .primary-nav {
    padding: 0.85rem 1rem !important;
  }
  .mobile-nav-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    padding: 0.7rem 1rem !important;
    border: 1px solid var(--nav-border) !important;
    border-radius: 10px !important;
    background: var(--nav-home-bg) !important;
    box-shadow: none !important;
    color: var(--nav-text-default) !important;
    font-family: var(--font-apple-like) !important;
    font-size: var(--shared-ui-text-size) !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    user-select: none !important;
  }

  .mobile-nav-button:hover,
.mobile-nav-button:focus {
    color: var(--nav-text-hover) !important;
    background: var(--nav-home-bg) !important;
  }
  .mobile-nav-checkbox {
    position: absolute !important;
    inline-size: 1px !important;
    block-size: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
  }
  .primary-nav ul {
    display: none !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0.95rem 0 0 !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.65rem !important;
  }

  .mobile-nav-checkbox:checked ~ ul {
    display: flex !important;
  }

  .primary-nav li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .primary-nav li:not(:first-child):not(.lang) > a {
    display: block !important;
    width: 100% !important;
    padding: 0.18rem 0 !important;
    white-space: normal !important;
  }
  .primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
    display: inline-flex !important;
    width: auto !important;
  }
  .primary-nav li.lang {
    order: initial !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-top: 0.35rem !important;
    padding-top: 0.85rem !important;
    border-top: 1px solid var(--nav-border) !important;
    line-height: 1.45 !important;
  }

  .primary-nav li.lang a,
.primary-nav li.lang span {
    display: inline !important;
    white-space: nowrap !important;
    line-height: 1.45 !important;
    vertical-align: baseline !important;
  }
}

@media (max-width: 420px) {
  .mobile-nav-button,
.primary-nav a,
.primary-nav li a,
.primary-nav li.lang a,
.primary-nav li.lang span {
    font-size: 16px !important;
  }
}
@media (max-width: 700px) {
  .mobile-nav-button {
    width: fit-content !important;
    min-width: 9rem !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .mobile-nav-checkbox:checked ~ ul {
    align-items: flex-start !important;
  }

  .primary-nav li {
    text-align: left !important;
  }

  .primary-nav li:not(:first-child):not(.lang) > a {
    text-align: left !important;
  }

  .primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
    margin: 0 !important;
  }

  .primary-nav li.lang {
    text-align: left !important;
  }
  .site-footer .footer-inner {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .site-footer .footer-links {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    line-height: 1.35 !important;
  }

  .site-footer .footer-links .footer-sep {
    display: none !important;
  }

  .site-footer .footer-lang {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.35rem !important;
    line-height: 1.35 !important;
  }

  .site-footer .footer-lang span[aria-hidden="true"] {
    display: none !important;
  }

  .site-footer .footer-copy {
    margin-top: 1.1rem !important;
    line-height: 1.35 !important;
  }
}
.site-header.css-brand-header {
  padding: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(0,0,0,0.24) !important;
}

.site-header.css-brand-header .brand-link,
.site-header.css-brand-header .brand-link:link,
.site-header.css-brand-header .brand-link:visited,
.site-header.css-brand-header .brand-link:hover,
.site-header.css-brand-header .brand-link:active {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: var(--maxw) !important;
  margin: 0 auto !important;
  text-align: center !important;
  text-decoration: none !important;
  color: inherit !important;
}

.site-header.css-brand-header .brand-subtitle {
  display: block !important;
}

.site-header.css-brand-header .brand-title {
  position: relative !important;
  z-index: 0 !important;
  display: inline-block !important;
  white-space: nowrap !important;
}
.site-header.css-brand-header .brand-title::before {
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  color: rgba(0,0,0,0.28) !important;
  -webkit-text-fill-color: rgba(0,0,0,0.28) !important;
  background: none !important;
  text-shadow:
    0 6px 7px rgba(0,0,0,0.65),
    0 13px 12px rgba(0,0,0,0.36) !important;
  transform: translateY(2px) !important;
  filter: blur(1.2px) !important;
}

@media (max-width: 700px) {

  .site-header.css-brand-header .brand-title::before {
    filter: blur(0.9px) !important;
    transform: translateY(1.5px) !important;
  }
}

.site-header.css-brand-header .brand-link,
.site-header.css-brand-header .brand-link:link,
.site-header.css-brand-header .brand-link:visited,
.site-header.css-brand-header .brand-link:hover,
.site-header.css-brand-header .brand-link:active {
  min-height: clamp(102px, 12.2vw, 130px) !important;
  padding: clamp(0.62rem, 1.25vw, 0.88rem) 1rem clamp(0.62rem, 1.2vw, 0.88rem) !important;
}
.site-header.css-brand-header .brand-title::before {
  content: none !important;
  display: none !important;
}

.site-header.css-brand-header .brand-subtitle {
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
}

@media (max-width: 700px) {
  .site-header.css-brand-header .brand-link,
.site-header.css-brand-header .brand-link:link,
.site-header.css-brand-header .brand-link:visited {
    min-height: 92px !important;
    padding: 0.82rem 0.75rem 0.78rem !important;
  }
}

@media (max-width: 380px) {

  .site-header.css-brand-header .brand-subtitle {
    margin-top: 0.5rem !important;
  }
}
.site-header.css-brand-header {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,0.84) 0%, rgba(255,255,255,0.30) 36%, rgba(255,255,255,0) 66%),
    linear-gradient(to bottom,
      #f7f7f7 0%,
      #e9e9e9 18%,
      #d0d0d0 43%,
      #ababab 66%,
      #8a8a8a 84%,
      #737373 100%) !important;
}

.site-header.css-brand-header .brand-subtitle {
  margin-bottom: 0.18rem !important;
}

@media (max-width: 700px) {

  .site-header.css-brand-header .brand-subtitle {
    margin-bottom: 0.08rem !important;
  }
}
.site-header.css-brand-header .brand-link,
.site-header.css-brand-header .brand-link:link,
.site-header.css-brand-header .brand-link:visited,
.site-header.css-brand-header .brand-link:hover,
.site-header.css-brand-header .brand-link:active {
  padding-top: clamp(0.85rem, 1.65vw, 1.12rem) !important;
  padding-bottom: clamp(1.35rem, 2.35vw, 1.8rem) !important;
}

@media (max-width: 700px) {
  .site-header.css-brand-header .brand-link,
.site-header.css-brand-header .brand-link:link,
.site-header.css-brand-header .brand-link:visited {
    padding-top: 1rem !important;
    padding-bottom: 1.35rem !important;
  }
}
@media (max-width: 700px) {
  .site-header.css-brand-header .brand-title {
    text-shadow:
      0 -1px 1px rgba(255,255,255,0.68),
      0 1px 1px rgba(0,0,0,0.22),
      0 2px 2px rgba(0,0,0,0.28),
      0 5px 5px rgba(0,0,0,0.22),
      0 8px 8px rgba(0,0,0,0.16) !important;
  }
}
.site-header.css-brand-header .brand-title {
  font-weight: 700 !important;
  line-height: 0.96 !important;
  letter-spacing: 0.075em !important;
  text-transform: uppercase !important;
}

.site-header.css-brand-header .brand-subtitle {
  margin-top: clamp(0.66rem, 1.18vw, 1rem) !important;
}

@media (max-width: 700px) {
  .site-header.css-brand-header .brand-title {
    font-family: "Perpetua Titling MT", "Baskerville Old Face", "Constantia", "Georgia", "Times New Roman", serif !important;
    font-weight: 700 !important;
    filter: blur(0.12px) !important;
  }

  .site-header.css-brand-header .brand-subtitle {
    margin-top: 0.76rem !important;
  }
}
@media (max-width: 1180px) {
  .primary-nav {
    padding: 0.85rem 1rem !important;
  }

  .mobile-nav-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: fit-content !important;
    min-width: 9rem !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0.7rem 1rem !important;
    border: 1px solid var(--nav-border) !important;
    border-radius: 10px !important;
    background: var(--nav-home-bg) !important;
    box-shadow: none !important;
    color: var(--nav-text-default) !important;
    font-family: var(--font-apple-like) !important;
    font-size: var(--shared-ui-text-size) !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    user-select: none !important;
  }

  .mobile-nav-button:hover,
.mobile-nav-button:focus {
    color: var(--nav-text-hover) !important;
    background: var(--nav-home-bg) !important;
  }

  .mobile-nav-checkbox {
    position: absolute !important;
    inline-size: 1px !important;
    block-size: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
  }

  .primary-nav ul {
    display: none !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0.95rem 0 0 !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 0.65rem !important;
  }

  .mobile-nav-checkbox:checked ~ ul {
    display: flex !important;
  }

  .primary-nav li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .primary-nav li:not(:first-child):not(.lang) > a {
    display: block !important;
    width: 100% !important;
    padding: 0.18rem 0 !important;
    white-space: normal !important;
    text-align: left !important;
  }

  .primary-nav li:first-child > a,
.primary-nav li:first-child > a:visited,
.primary-nav li:first-child > a[aria-current="page"] {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
  }

  .primary-nav li.lang {
    order: initial !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-top: 0.35rem !important;
    padding-top: 0.85rem !important;
    border-top: 1px solid var(--nav-border) !important;
    text-align: left !important;
    line-height: 1.45 !important;
  }

  .primary-nav li.lang a,
.primary-nav li.lang span {
    display: inline !important;
    white-space: nowrap !important;
    line-height: 1.45 !important;
    vertical-align: baseline !important;
  }
}
.site-header.css-brand-header .brand-title {
  font-size: clamp(3rem, 5.8vw, 4.12rem) !important;
}

.site-header.css-brand-header .brand-subtitle {
  font-size: clamp(1.08rem, 2vw, 1.34rem) !important;
}
@media (max-width: 1180px) {
  .site-header.css-brand-header .brand-title {
    font-size: clamp(2.75rem, 6.35vw, 4.12rem) !important;
    letter-spacing: 0.055em !important;
  }

  .site-header.css-brand-header .brand-subtitle {
    font-size: clamp(1rem, 2.5vw, 1.28rem) !important;
  }
}
@media (max-width: 700px) {
  .site-header.css-brand-header .brand-title {
    font-size: clamp(2.1rem, 10.8vw, 3rem) !important;
    letter-spacing: 0.02em !important;
    line-height: 0.98 !important;
  }

  .site-header.css-brand-header .brand-subtitle {
    font-size: clamp(0.88rem, 3.65vw, 1.08rem) !important;
    line-height: 1.15 !important;
    max-width: 96vw !important;
  }
}

@media (max-width: 380px) {
  .site-header.css-brand-header .brand-title {
    font-size: clamp(1.9rem, 10.1vw, 2.35rem) !important;
    letter-spacing: 0.012em !important;
  }

  .site-header.css-brand-header .brand-subtitle {
    font-size: clamp(0.82rem, 3.45vw, 0.98rem) !important;
  }
}
:root {
  --photo-corner-radius: 14px;
}

.content img {
  border-radius: var(--photo-corner-radius);
}
.content img {
  display: block;
  width: 80%;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  float: none;
}
.content img:not(.foto_izqda),
.content img.foto_izqda {
  display: block !important;
  width: 80% !important;
  max-width: 80% !important;
  height: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
}
.front_pral img.homepage-image {
  display: block !important;
  height: auto !important;
  float: none !important;
}
html,
body {
  min-height: 100%;
}

body {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

main.container {
  flex: 1 0 auto;
}

.site-footer {
  flex-shrink: 0;
}
main.container {
  width: 100%;
  box-sizing: border-box;
}
.content {
  padding-bottom: 4rem !important;
}
.site-header.css-brand-header .brand-subtitle {
  color: #333333 !important;
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
  filter: none !important;
}

#automocion,
#informatica,
#maquinaria-agricola,
#maquinaria-construccion,
#maquinaria-manipulacion,
#neumaticos,
#maquinas-herramienta-mecanizado,
#industria-ferroviaria,
#nautica,
#fabricas,
#marketing {
  scroll-margin-top: 1rem;
}
.language-pairs {
  display: grid;
}

.language-pair {
  display: grid;
  align-items: center;
  gap: 1rem;
  font-weight: 400;
}

.language-arrow {
  color: #777;
  font-size: 1.1em;
  line-height: 1;
}

@media (max-width: 480px) {
  .language-pair {
    gap: 0.65rem;
    padding: 0.65rem 0.8rem;
  }
}

.language-pair {
  max-width: 100%;
}

.language-pair {
  box-sizing: border-box;
}

.language-pair > span:first-child,
.language-pair > span:last-child,
.language-arrow {
  text-align: center;
}

.language-arrow {
  display: block;
}
.language-pair {
  padding-left: 0.85rem;
  padding-right: 0.85rem;
}
#automocion,
#informatica,
#maquinaria-agricola,
#maquinaria-construccion,
#maquinaria-manipulacion,
#neumaticos,
#maquinas-herramienta-mecanizado,
#industria-ferroviaria,
#otras-maquinas,
#nautica,
#fabricas,
#marketing {
  font-size: 1.4rem;
  margin-top: 3rem;
  margin-bottom: 0.9rem;
  padding-top: 1.1rem;
  border-top: 1px solid #e2e2e2;
}

#automocion {
  margin-top: 1.5rem;
  padding-top: 0;
  border-top: 0;
}
.specialization-heading {
  font-size: 1.4rem;
  margin-bottom: 0.9rem;
}

#automocion.specialization-heading {
  padding-top: 0;
  border-top: 0;
}

.major-section-heading {
  margin-bottom: 1.2rem;
}
.specialization-heading {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

.specialization-heading::before {
  content: "";
  display: block;
  border-top: 1px solid #e2e2e2;
}

#automocion.specialization-heading {
  margin-top: 1.5rem !important;
}

#automocion.specialization-heading::before {
  display: none;
}

.major-section-heading {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

.major-section-heading::before {
  content: "";
  display: block;
  border-top: 1px solid #cfcfcf;
}
.specialization-heading::before {
  margin: 1.6rem 0 1.6rem !important;
}
.major-section-heading::before {
  margin: 1.6rem 0 1.6rem !important;
}

.services-major-heading,
.service-heading {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.service-heading {
  font-size: 1.4rem;
}

.services-major-heading::before {
  content: "";
  display: block;
  border-top: 1px solid #cfcfcf;
  margin: 1.6rem 0 1.6rem;
}

.service-heading::before {
  content: "";
  display: block;
  border-top: 1px solid #e2e2e2;
  margin: 1.6rem 0 1.6rem;
}

.first-service-heading::before {
  display: none;
}
.email-link {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: #999;
  text-underline-offset: 0.14em;
}

.email-link:hover,
.email-link:focus-visible {
  color: #000;
  text-decoration-color: currentColor;
}
.content img.profile-photo-square {
  display: block !important;
  float: left !important;
  width: 320px !important;
  max-width: 34% !important;
  height: auto !important;
  margin: 0.25rem 1.5rem 1rem 0 !important;
  border-radius: var(--photo-corner-radius);
}
#areas-de-especializacion {
  clear: both;
}

@media (max-width: 700px) {
  .content img.profile-photo-square {
    float: none !important;
    width: min(100%, 320px) !important;
    max-width: 80% !important;
    margin: 0.5rem auto 1.5rem !important;
  }
}
#areas-de-especializacion {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

#areas-de-especializacion::before {
  content: "";
  display: block;
  border-top: 1px solid #cfcfcf;
  margin: 1.6rem 0 1.6rem;
}
.language-pairs {
  width: fit-content;
  max-width: 100%;
  margin: 1rem 0 2rem;
}

.language-pair {
  width: auto;
  grid-template-columns: 6.5rem 1.25rem 6.5rem;
  column-gap: 0.35rem;
  justify-content: start;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.language-pair > span:first-child,
.language-pair > span:last-child {
  width: 6.5rem;
  text-align: center;
}

.language-arrow {
  width: 1.25rem;
  text-align: center;
}
.language-pair > span:first-child {
  text-align: left;
}
.language-pairs {
  gap: 0.15rem;
}

.language-pair {
  padding: 0.2rem 0;
}
.site-header.css-brand-header .brand-title {
  font-family: "Trebuchet MS", Arial, sans-serif !important;
  color: #4d4d4d !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  text-fill-color: currentColor !important;
  -webkit-text-stroke: 0 !important;
  filter: none !important;
  text-shadow: 0 0 3px #fff, 0 0 7px rgba(255,255,255,.9), 0 3px 3px rgba(0,0,0,.28) !important;
}
.expertise-gallery {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.35rem 1rem;
  margin: 1.25rem 0 2rem;
}

.expertise-card {
  min-width: 0;
  margin: 0;
  text-align: center;
}

.expertise-image-link {
  display: block;
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
}

.expertise-card-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 2;
  margin: 0 !important;
  border-radius: 13px !important;
  object-fit: cover;
  transition: transform 220ms ease;
}

.expertise-text-link {
  display: inline-block;
  margin-top: 0.62rem;
  color: inherit;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: underline;
  text-decoration-color: #999;
  text-underline-offset: 0.16em;
}

.expertise-image-link:hover,
.expertise-image-link:focus-visible {
  border-color: rgba(0, 0, 0, 0.25);
}

.expertise-image-link:hover .expertise-card-image,
.expertise-image-link:focus-visible .expertise-card-image {
  transform: scale(1.025);
}

.expertise-text-link:hover,
.expertise-text-link:focus-visible {
  color: #000;
  text-decoration-color: currentColor;
}

#otras-maquinas {
  scroll-margin-top: 1rem;
}

@media (max-width: 900px) {
  .expertise-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.4rem 1rem;
  }
}

@media (max-width: 520px) {
  .expertise-gallery {
    grid-template-columns: 1fr;
    gap: 1.35rem;
  }
}
.expertise-image-link {
  overflow: hidden;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 14px;
  background: transparent !important;
  box-shadow: none !important;
}

.content .expertise-gallery .expertise-card-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 2;
  margin: 0 !important;
  border-radius: 14px !important;
  object-fit: cover;
}

.expertise-image-link:hover,
.expertise-image-link:focus-visible {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-2px);
}
.expertise-gallery {
  column-gap: 0.75rem;
}

.expertise-image-link {
  width: 94%;
  margin-right: auto;
  margin-left: auto;
}

.content .expertise-gallery .expertise-card a.expertise-image-link img.expertise-card-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}
.expertise-gallery {
  margin-bottom: 1.65rem;
  border-bottom: 1px solid #cfcfcf;
}
#areas-de-especializacion::before {
  margin-top: 2.5rem;
}
.specialization-heading::before {
  margin-top: 2.5rem !important;
  margin-bottom: 1.6rem !important;
}
.major-section-heading::before {
  margin-top: 2.5rem !important;
  margin-bottom: 1.6rem !important;
}
.expertise-gallery {
  margin-top: 2.75rem;
  padding-bottom: 3.75rem;
}
.front_pral > img.homepage-image + .major-section-heading::before {
  display: none !important;
}
.closing-home-summary {
  margin-top: 0;
}

.closing-home-summary::before {
  content: "";
  display: block;
  border-top: 1px solid #cfcfcf;
  margin: 2.5rem 0 1.6rem;
}
.homepage-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin: 2.3rem 0 0.5rem;
}

.homepage-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.78rem 1.25rem;
  border: 1px solid #9a9a9a;
  border-radius: 999px;
  background: transparent;
  color: #3d3d3d;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.25;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.10);
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.homepage-cta-button:hover,
.homepage-cta-button:focus-visible {
  background: #f1f1f1;
  border-color: #7a7a7a;
  color: #222;
  transform: translateY(-1px);
  box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
}

@media (max-width: 640px) {
  .homepage-cta-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .homepage-cta-button {
    width: 100%;
  }
}
.service-heading[id] {
  scroll-margin-top: 1.25rem;
}
.content .front_pral img.section-content-image {
  width: 65% !important;
  max-width: 65% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.content .front_pral img.homepage-image {
  width: 65% !important;
  max-width: 65% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
