.elementor-3856 .elementor-element.elementor-element-16ea755{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-5f9e061{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-3dac239{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3856 .elementor-element.elementor-element-e177326 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3856 .elementor-element.elementor-element-e177326 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3856 .elementor-element.elementor-element-e177326 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-type-html{padding-bottom:0px;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .e-form__buttons__wrapper__button-next{background-color:#ea445a;color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-button[type="submit"]{background-color:#ea445a;color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .e-form__buttons__wrapper__button-next:hover{background-color:#c9304a;color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-button[type="submit"]:hover{background-color:#c9304a;color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-3856 .elementor-element.elementor-element-e177326{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-3856 .elementor-element.elementor-element-5eefcf4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-f772e29{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-9877167{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-fc85cc2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--flex-wrap:wrap;--background-transition:0.3s;}.elementor-3856 .elementor-element.elementor-element-d0541bd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}/* Start custom CSS *//* ===== Base Grifonsa ===== */
.gh-sec{--gh-navy:#23295f;--gh-accent:#ea445a;--gh-accent-d:#c9304a;--gh-ink:#1c1f33;--gh-muted:#62667a;--gh-line:#e7e4dc;--gh-warm:#f6f4ef;font-family:inherit}
.gh-sec .elementor-widget{margin-bottom:0!important}
.gh-sec.e-con{--padding-top:0;--padding-bottom:0;padding-top:88px!important;padding-bottom:88px!important}
.gh-sec .e-con{--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0}
.gh-sec p{margin:0}
.gh-eyebrow{font-size:13px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gh-accent)!important;margin-bottom:12px!important}
.gh-sec .gh-h1 .elementor-heading-title{font-size:clamp(34px,4.6vw,56px)!important;line-height:1.06!important;font-weight:700!important;letter-spacing:-.02em;color:var(--gh-ink)!important;text-transform:none!important}
.gh-sec .gh-h2 .elementor-heading-title{font-size:clamp(28px,3.2vw,40px)!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.015em;color:var(--gh-ink)!important;text-transform:none!important}
.gh-lead{font-size:19px!important;line-height:1.6!important;color:var(--gh-muted)!important;max-width:34em;margin-top:20px!important}
.gh-text{font-size:17px!important;line-height:1.65!important;color:var(--gh-muted)!important;margin-top:16px!important}
.gh-btns.e-con{gap:12px!important;margin-top:30px}
.gh-btn .elementor-button{border-radius:999px!important;padding:17px 30px!important;font-size:14px!important;font-weight:700!important;letter-spacing:.04em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s,transform .2s;line-height:1!important}
.gh-btn--primary .elementor-button{background:var(--gh-accent)!important;color:#fff!important;border:2px solid var(--gh-accent)!important;box-shadow:0 12px 24px -12px rgba(234,68,90,.7)}
.gh-btn--primary .elementor-button:hover{background:var(--gh-accent-d)!important;border-color:var(--gh-accent-d)!important;transform:translateY(-1px)}
.gh-btn--ghost .elementor-button{background:transparent!important;color:var(--gh-ink)!important;border:2px solid #cfcbc0!important}
.gh-btn--ghost .elementor-button:hover{border-color:var(--gh-ink)!important}
.gh-link .elementor-button{background:none!important;padding:0!important;color:var(--gh-accent)!important;font-weight:700!important;font-size:15px!important;border:0!important}
.gh-link .elementor-button:hover{color:var(--gh-accent-d)!important;text-decoration:underline}

.gh-checks{list-style:none;margin:24px 0 0!important;padding:0!important;display:grid;gap:12px}
.gh-checks li{position:relative;padding-left:32px;font-size:16px;line-height:1.5;color:#fff;margin:0!important}
.gh-checks li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--gh-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4.5 8.2 2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat}

/* ===== Contacto ===== */
/* Cabecera */
.gc-hero.e-con{background:linear-gradient(180deg,var(--gh-warm) 0%,#fff 100%);padding-top:72px!important;padding-bottom:80px!important}
.gc-hero>.e-con-inner{flex-direction:column!important;align-items:flex-start!important;gap:0!important}
.gc-hero .gh-lead{max-width:40em}
.gc-quick-w{width:100%;margin-top:44px!important}
.gc-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gc-q{position:relative;display:flex;flex-direction:column;gap:4px;padding:26px 26px 24px;border-radius:22px;background:#fff;border:1px solid var(--gh-line);color:var(--gh-ink)!important;text-decoration:none!important;transition:transform .25s,box-shadow .25s,border-color .25s;overflow:hidden}
.gc-q:hover{transform:translateY(-4px);border-color:#d8d4c9;box-shadow:0 24px 48px -28px rgba(28,31,51,.45)}
.gc-q-ico{display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;border-radius:16px;background:#fdecef;color:var(--gh-accent)}
.gc-q-ico svg{width:22px;height:22px}
.gc-q-label{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gh-muted)}
.gc-q strong{font-size:21px;line-height:1.3;font-weight:700;color:var(--gh-ink);word-break:break-word}
.gc-q-cta{margin-top:12px;font-size:14px;font-weight:700;color:var(--gh-accent)}
.gc-q-cta::after{content:"→";margin-left:6px;display:inline-block;transition:transform .2s}
.gc-q:hover .gc-q-cta::after{transform:translateX(4px)}
.gc-q--main{background:var(--gh-navy);border-color:var(--gh-navy);color:#fff!important}
.gc-q--main .gc-q-ico{background:rgba(255,255,255,.12);color:#fff}
.gc-q--main .gc-q-label{color:rgba(255,255,255,.7)}
.gc-q--main strong{color:#fff}
.gc-q--main .gc-q-cta{color:#ff9aa8}
.gc-q--main::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(234,68,90,.45),transparent 70%);pointer-events:none}

/* Formulario + datos */
.gc-main.e-con{padding-top:24px!important}
.gc-main>.e-con-inner{flex-direction:row!important;gap:32px!important;align-items:flex-start!important}
.gc-form-card.e-con{flex:1 1 60%!important;width:auto!important;background:#fff;border:1px solid var(--gh-line);border-radius:28px;padding:44px 44px 40px!important;box-shadow:0 30px 60px -40px rgba(28,31,51,.35)}
.gc-form-card .gh-text{margin-top:10px!important;margin-bottom:28px!important}
.gc-side.e-con{flex:0 0 37%!important;width:auto!important;position:sticky;top:110px}
.gc-side .elementor-widget-html,.gc-visit-map .elementor-widget-html{width:100%;flex-shrink:0}
.gc-visit-map .elementor-widget-container{width:100%}

/* Campos del formulario (Elementor Pro) */
.gc-form .elementor-form-fields-wrapper{row-gap:18px}
.gc-form .elementor-field-group{margin-bottom:0!important}
.gc-form .elementor-field-label{font-size:14px!important;font-weight:600!important;color:var(--gh-ink)!important;margin-bottom:7px!important;text-transform:none!important;letter-spacing:0!important}
.gc-form .elementor-field-textual{min-height:54px;padding:14px 16px!important;border:1px solid var(--gh-line)!important;border-radius:14px!important;background:#fbfaf7!important;font-size:15px!important;color:var(--gh-ink)!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s,background .2s}
.gc-form .elementor-field-textual::placeholder{color:#9a9daa!important;opacity:1}
.gc-form .elementor-field-textual:hover{border-color:#d3cfc4!important}
.gc-form .elementor-field-textual:focus{outline:0!important;background:#fff!important;border-color:var(--gh-navy)!important;box-shadow:0 0 0 4px rgba(35,41,95,.1)!important}
.gc-form textarea.elementor-field-textual{min-height:160px;resize:vertical;line-height:1.55}
.gc-form .elementor-field-type-acceptance .elementor-field-subgroup,.gc-form .elementor-field-option{display:flex;align-items:flex-start;gap:10px}
.gc-form .elementor-field-type-acceptance label{font-size:14px!important;line-height:1.5;color:var(--gh-muted)!important}
.gc-form .elementor-field-type-acceptance a{color:var(--gh-navy)!important;text-decoration:underline}
.gc-form input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--gh-accent);flex:none}
.gc-form .elementor-field-type-submit{margin-top:8px}
.gc-form .elementor-button[type=submit]{width:100%;min-height:58px;justify-content:center;border-radius:999px!important;background:var(--gh-accent)!important;border:0!important;color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 14px 28px -14px rgba(234,68,90,.8);transition:background .2s,transform .2s}
.gc-form .elementor-button[type=submit]:hover{background:var(--gh-accent-d)!important;transform:translateY(-1px)}
.gc-form .elementor-message{margin-top:16px!important;padding:14px 16px;border-radius:14px;font-size:15px!important}
.gc-form .elementor-message-success{background:#e9f7ef;color:#12643b!important}
.gc-form .elementor-message-danger,.gc-form .elementor-error .elementor-message{background:#fdecef;color:#a3203a!important}
.gc-form .elementor-message::before{display:none!important}
.gc-form .elementor-error .elementor-field-textual{border-color:var(--gh-accent)!important}
.gc-form-note{display:flex;align-items:center;gap:8px;margin-top:18px!important;font-size:13px;color:var(--gh-muted)}
.gc-form-note svg{width:16px;height:16px;flex:none;color:var(--gh-navy)}

/* Tarjeta de datos */
.gc-info{position:relative;padding:34px 32px;border-radius:26px;color:#fff;background:radial-gradient(500px 260px at 100% 0%,rgba(234,68,90,.35),transparent 60%),linear-gradient(150deg,#23295f,#2f3680);overflow:hidden}
.gc-info h3,.gc-tips h3{margin:0 0 22px!important;font-size:20px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important}
.gc-info h3{color:#fff!important}
.gc-info-list{list-style:none;margin:0!important;padding:0!important;display:grid;gap:20px}
.gc-info-list li{display:flex;gap:14px;align-items:flex-start;margin:0!important}
.gc-i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.12);flex:none}
.gc-i svg{width:19px;height:19px;color:#fff}
.gc-info-list small{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:3px}
.gc-info-list p{margin:0!important;font-size:16px;line-height:1.5;color:#fff}
.gc-info-list a{color:#fff!important;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.35);transition:border-color .2s}
.gc-info-list a:hover{border-color:#fff}
.gc-tips{margin-top:18px;padding:30px 32px;border-radius:26px;background:var(--gh-warm);border:1px solid var(--gh-line)}
.gc-tips h3{color:var(--gh-ink)!important;margin-bottom:8px!important}
.gc-tips>p{margin:0!important;font-size:15px;line-height:1.55;color:var(--gh-muted)}
.gc-tick{list-style:none;margin:16px 0 0!important;padding:0!important;display:grid;gap:10px}
.gc-tick li{position:relative;margin:0!important;padding-left:30px;font-size:15px;line-height:1.45;color:var(--gh-ink)}
.gc-tick li::before{content:"";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--gh-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4.5 8.2 2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.gc-tips .gc-tips-foot{margin-top:18px!important;padding-top:16px;border-top:1px dashed #d8d3c6;font-size:14px}
.gc-tips-foot a{color:var(--gh-navy)!important;font-weight:700;text-decoration:underline}

/* Cómo llegar */
.gc-visit.e-con{background:var(--gh-warm)}
.gc-visit>.e-con-inner{flex-direction:row!important;gap:64px!important;align-items:center!important}
.gc-visit-text.e-con{flex:1 1 44%!important;width:auto!important}
.gc-visit-map.e-con{flex:1 1 56%!important;width:auto!important}
.gc-map{position:relative;display:block;width:100%;aspect-ratio:16/11;border-radius:28px;overflow:hidden;background:#e8edf3;box-shadow:0 30px 60px -36px rgba(35,41,95,.5);text-decoration:none!important}
.gc-map svg.gc-map-bg{position:absolute;inset:0;width:100%;height:100%}
.gc-pin{position:absolute;left:50%;top:46%;transform:translate(-50%,-100%);width:46px;height:58px;filter:drop-shadow(0 10px 12px rgba(35,41,95,.35))}
.gc-pin-pulse{position:absolute;left:50%;top:46%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:rgba(234,68,90,.35);animation:gc-pulse 2.2s ease-out infinite}
@keyframes gc-pulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(3.4);opacity:0}}
.gc-map-label{position:absolute;left:20px;bottom:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px -16px rgba(28,31,51,.4)}
.gc-map-label b{display:block;font-size:16px;color:var(--gh-ink)}
.gc-map-label b+span{font-size:14px;color:var(--gh-muted)}
.gc-map-go{color:#fff!important;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:999px;background:var(--gh-navy);color:#fff;font-size:13px;font-weight:700;letter-spacing:.03em;white-space:nowrap;transition:background .2s}
.gc-map:hover .gc-map-go{background:var(--gh-accent)}

/* Responsive */
@media (max-width:1200px){.gh-sec.e-con{padding-left:24px!important;padding-right:24px!important}}
@media (max-width:1024px){
 .gh-sec.e-con{padding-top:64px!important;padding-bottom:64px!important;padding-left:24px!important;padding-right:24px!important}
 .gc-main>.e-con-inner{flex-direction:column!important}
 .gc-form-card.e-con,.gc-side.e-con{flex-basis:auto!important;width:100%!important;position:relative;top:auto}
 .gc-visit>.e-con-inner{gap:40px!important}
}
@media (max-width:767px){
 .gh-sec.e-con{padding-top:52px!important;padding-bottom:52px!important;padding-left:18px!important;padding-right:18px!important}
 .gc-hero.e-con{padding-top:36px!important;padding-bottom:48px!important}
 .gh-lead{font-size:17px!important}
 .gc-quick-w{margin-top:30px!important}
 .gc-quick{grid-template-columns:1fr;gap:12px}
 .gc-q{display:grid;grid-template-columns:46px 1fr;column-gap:14px;row-gap:2px;align-items:center;padding:18px}
 .gc-q-ico{margin:0;width:46px;height:46px;grid-row:1/span 2}
 .gc-q-label{grid-column:2;align-self:end;font-size:12px}
 .gc-q strong{grid-column:2;align-self:start;font-size:18px}
 .gc-q-cta{display:none}
 .gc-main.e-con{padding-top:8px!important}
 .gc-form-card.e-con{padding:28px 20px 24px!important;border-radius:22px}
 .gc-info,.gc-tips{padding:26px 22px;border-radius:22px}
 .gc-visit>.e-con-inner{flex-direction:column!important}
 .gc-visit-text.e-con,.gc-visit-map.e-con{flex-basis:auto!important;width:100%!important}
 .gc-map{aspect-ratio:4/5}
 .gh-btns.e-con{flex-direction:column!important;align-items:stretch!important}
 .gh-btn .elementor-button{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.gc-q,.gc-pin-pulse{transition:none;animation:none}}/* End custom CSS */