.fg-navigation-anchor, #top, #pasos, #quienes, #servicios, #cuando, #casos, #contacto {
    scroll-margin-top: 92px;
}
/* Keep all seven links inside the fixed header at tablet widths. */
#header-section #ut-navigation a { vertical-align: top; }
@media (min-width: 768px) and (max-width: 1199px) {
    #header-section .ha-header-front {
        display: flex; flex-direction: column; align-items: center;
    }
    #header-section .ha-header-front > div {
        float: none; width: 100%; padding: 0;
    }
    #header-section .logo { text-align: center; line-height: 32px; }
    #header-section .logo img { width: 180px; max-height: 28px; }
    #header-section #ut-navigation {
        float: none; width: 100%; padding: 0; height: 48px;
        display: flex; align-items: center; justify-content: center; gap: 18px;
        line-height: 48px;
    }
    #header-section #ut-navigation a {
        flex: 0 0 auto; padding: 0; white-space: nowrap; letter-spacing: .5px;
    }
    #header-section #ut-navigation a:after { display: none; }
}
.fg-whatsapp {
    position: fixed; right: max(20px, env(safe-area-inset-right));
    bottom: max(22px, env(safe-area-inset-bottom)); z-index: 9000;
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    min-height: 56px; padding: 0 18px; border-radius: 32px;
    background: #087b43; color: #fff !important; text-decoration: none !important;
    font: 600 15px/1.2 Arial, sans-serif; box-shadow: 0 4px 18px #0004;
}
.fg-whatsapp:hover { background: #065f34; color: #fff; }
.fg-whatsapp svg { width: 28px; height: 28px; fill: currentColor; flex-shrink: 0; }
.fg-whatsapp:focus-visible, .fg-consent button:focus-visible, .fg-settings:focus-visible {
    outline: 3px solid #2078cf; outline-offset: 4px;
}
.fg-form { text-align: left; }
.fg-form label { display: block; margin: 12px 0 5px; font-weight: 600; }
.fg-form input, .fg-form textarea { box-sizing: border-box; width: 100%; max-width: 100%; }
.fg-form textarea { min-height: 125px; resize: vertical; }
.contact-form.fg-form input:not([type="hidden"]), .contact-form.fg-form textarea {
    background: #0006; color: #fff; border: 1px solid #ffffff70;
    border-radius: 3px; padding: 12px; min-height: 46px; font: 16px/1.5 Arial, sans-serif;
}
.contact-form.fg-form input:focus, .contact-form.fg-form textarea:focus {
    outline: 2px solid #f3c900; outline-offset: 2px;
}
.fg-form .fg-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.fg-form button { cursor: pointer; min-height: 44px; }
.fg-form button:disabled { cursor: wait; opacity: .65; }
.fg-form [aria-invalid="true"] { outline: 2px solid #c84040; }
.fg-form-status:not(:empty) { padding: 12px; border: 1px solid currentColor; border-radius: 4px; }
.fg-form [data-fg-turnstile] { margin: 16px 0 8px; min-height: 65px; }
.fg-form .fg-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.fg-form a { text-decoration: underline; }
.fg-privacy-note { font-size: 13px; line-height: 1.5; margin: 12px 0; }
.fg-consent {
    position: fixed; bottom: 92px; left: 18px; z-index: 9100;
    width: min(420px, calc(100vw - 36px)); box-sizing: border-box;
    max-height: 60vh; overflow-y: auto; padding: 20px; border: 1px solid #ddd;
    border-radius: 10px; background: #fff; color: #222; text-align: left;
    box-shadow: 0 4px 24px #0003; font: 15px/1.5 Arial, sans-serif;
}
.fg-consent[hidden] { display: none; }
.fg-consent p { margin: 0 0 14px; }
.fg-consent button { background: #fff; border: 1px solid #555; color: #222; padding: 10px 13px; margin: 4px 6px 0 0; border-radius: 4px; cursor: pointer; min-height: 44px; }
.fg-consent a { color: #175a91; text-decoration: underline; }
.fg-privacy-footer { padding: 16px 100px 100px 18px; text-align: center; font: 13px/1.5 Arial, sans-serif; }
.fg-settings { border: 0; background: transparent; color: inherit; text-decoration: underline; cursor: pointer; padding: 10px; }
.fg-standalone { margin: 0; color: #252525; background: #f5f5f3; font: 16px/1.65 Arial, sans-serif; }
.fg-standalone main { max-width: 760px; margin: 40px auto; padding: 26px; background: #fff; }
.fg-standalone h1 { font-size: 30px; line-height: 1.2; }
.fg-standalone input, .fg-standalone textarea { padding: 12px; font: inherit; border: 1px solid #888; border-radius: 4px; }
.fg-standalone button[type="submit"] { padding: 12px 20px; background: #087b43; color: #fff; border: 0; border-radius: 4px; }
@media (max-width: 600px) {
    .fg-whatsapp { right: 14px; bottom: max(16px, env(safe-area-inset-bottom)); width: 56px; padding: 0; }
    .fg-whatsapp span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
    .fg-form .fg-field-row { grid-template-columns: 1fr; gap: 0; }
    .fg-standalone main { margin: 0; padding: 22px 16px 90px; }
}
