/* Extasiz Theme main styles */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: calc(var(--header-height) + 24px);
}

body {
    margin: 0;
    min-height: 100vh;
    background: var(--c-canvas);
    color: var(--c-text);
    font-family: var(--font-text);
    line-height: 1.5;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body.menu-open {
    overflow: hidden;
}

img,
svg,
video {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
}

.container {
    width: var(--container);
    margin-inline: auto;
}

.skip-link {
    position: absolute;
    left: 1rem;
    top: 1rem;
    z-index: 999;
    transform: translateY(-150%);
    padding: 0.75rem 1rem;
    background: var(--c-gold);
    color: var(--c-ink);
    border-radius: var(--r-md);
    font-weight: 700;
}

.skip-link:focus {
    transform: translateY(0);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 80;
    background: rgba(14, 42, 71, 0.94);
    border-bottom: 1px solid rgba(201, 162, 75, 0.42);
    color: var(--c-on-navy);
    backdrop-filter: blur(18px);
}

.site-header__inner {
    min-height: var(--header-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.site-branding {
    position: relative;
    z-index: 91;
    flex: 0 0 auto;
}

.site-logo {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    color: var(--c-on-navy);
    font-family: var(--font-display);
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: 0.005em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.site-logo img {
    width: auto;
    max-height: 42px;
}

.site-header__navigation {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1.25rem;
}

.site-nav__menu {
    display: flex;
    align-items: center;
    gap: clamp(0.85rem, 2vw, 1.35rem);
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-nav__menu a {
    position: relative;
    color: var(--c-on-navy-muted);
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    transition: color var(--dur-micro) var(--ease-ui);
}

.site-nav__menu a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -0.4rem;
    height: 1px;
    transform: scaleX(0);
    transform-origin: left;
    background: var(--c-gold);
    transition: transform var(--dur-micro) var(--ease-ui);
}

.site-nav__menu a:hover {
    color: var(--c-on-navy);
}

.site-nav__menu a:hover::after {
    transform: scaleX(1);
}

.site-header__cta {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0.72rem 1rem;
    border: 1px solid var(--c-gold);
    border-radius: var(--r-md);
    background: rgba(201, 162, 75, 0.08);
    color: var(--c-on-navy);
    font-size: 0.88rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background-color var(--dur-ui) var(--ease-ui), color var(--dur-ui) var(--ease-ui), transform var(--dur-micro) var(--ease-ui);
}

.site-header__cta:hover {
    background: var(--c-gold);
    color: var(--c-ink);
    transform: translateY(-1px);
}

.site-menu-toggle {
    position: relative;
    z-index: 91;
    display: none;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--c-line-navy);
    border-radius: var(--r-md);
    background: rgba(255, 255, 255, 0.04);
    color: var(--c-on-navy);
    cursor: pointer;
}

.site-menu-toggle span {
    position: absolute;
    left: 12px;
    right: 12px;
    height: 1px;
    background: currentColor;
    transition: transform 180ms var(--ease-ui), top 180ms var(--ease-ui);
}

.site-menu-toggle span:first-child {
    top: 17px;
}

.site-menu-toggle span:last-child {
    top: 25px;
}

.site-menu-toggle[aria-expanded="true"] span:first-child {
    top: 21px;
    transform: rotate(45deg);
}

.site-menu-toggle[aria-expanded="true"] span:last-child {
    top: 21px;
    transform: rotate(-45deg);
}

.theme-empty-state {
    min-height: calc(100vh - var(--header-height));
    display: grid;
    align-items: center;
    padding: var(--space-section) 0;
    background:
        linear-gradient(135deg, rgba(14, 42, 71, 0.06), rgba(201, 162, 75, 0.08)),
        var(--c-canvas);
}

.theme-empty-state__inner {
    max-width: 900px;
}

.theme-empty-state h1,
.entry-title,
.content-stack h1 {
    margin: 0;
    max-width: 980px;
    color: var(--c-ink);
    font-family: var(--font-display);
    font-size: var(--fs-display-xl);
    font-weight: 800;
    line-height: 0.95;
    letter-spacing: 0.005em;
    text-transform: uppercase;
}

.theme-empty-state p:not(.eyebrow),
.entry-content {
    max-width: 680px;
    margin-top: 1.5rem;
    color: var(--c-muted);
    font-size: var(--fs-lead);
    line-height: 1.7;
}

.button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0.8rem 1.15rem;
    border: 1px solid transparent;
    border-radius: var(--r-md);
    font-weight: 700;
    text-decoration: none;
}

.section {
    padding: var(--space-section) 0;
}

.content-stack {
    max-width: 850px;
}

.site-footer {
    border-top: 1px solid rgba(201, 162, 75, 0.42);
    background: var(--c-ink);
    color: var(--c-on-navy);
}

.site-footer__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(180px, 0.45fr) minmax(220px, 0.55fr);
    gap: clamp(2rem, 5vw, 5rem);
    padding: clamp(3rem, 7vw, 5rem) 0;
}

.site-footer__logo {
    display: inline-flex;
    color: var(--c-on-navy);
    font-family: var(--font-display);
    font-size: clamp(1.4rem, 3vw, 2.25rem);
    font-weight: 800;
    letter-spacing: 0.005em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.site-footer__brand p {
    max-width: 470px;
    margin: 1rem 0 0;
    color: var(--c-on-navy-muted);
}

.site-footer__label {
    margin: 0 0 1rem;
    color: var(--c-gold);
    font-size: var(--fs-label);
    font-weight: 500;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.site-footer__label::before {
    content: "/ ";
}

.site-footer__menu {
    display: grid;
    gap: 0.65rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer__menu a,
.site-footer__contact a,
.site-footer__contact span {
    color: var(--c-on-navy-muted);
    text-decoration: none;
}

.site-footer__menu a:hover,
.site-footer__contact a:hover {
    color: var(--c-on-navy);
}

.site-footer__contact {
    display: grid;
    align-content: start;
    gap: 0.65rem;
}

.site-footer__bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    padding: 1.25rem 0;
    border-top: 1px solid var(--c-line-navy);
    color: var(--c-on-navy-muted);
    font-size: 0.88rem;
}

.site-footer__bottom p {
    margin: 0;
}

.site-footer__disclaimer {
    max-width: 760px;
}

@media (max-width: 960px) {
    :root {
        --header-height: 72px;
    }

    .site-menu-toggle {
        display: inline-grid;
    }

    .site-header__navigation {
        position: fixed;
        inset: 0;
        z-index: 90;
        width: 100vw;
        min-height: 100svh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: clamp(1.5rem, 5vw, 2.5rem);
        padding: calc(var(--header-height) + 2.5rem) 1.25rem 2rem;
        overflow-x: hidden;
        overflow-y: auto;
        text-align: center;
        background:
            radial-gradient(circle at top left, rgba(201, 162, 75, 0.14), transparent 30rem),
            rgba(14, 42, 71, 0.99);
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
        transform: translateY(-8px);
        transition: opacity 180ms var(--ease-ui), transform 180ms var(--ease-ui), visibility 180ms var(--ease-ui);
    }

    .site-header.is-menu-open .site-header__navigation {
        opacity: 1;
        pointer-events: auto;
        visibility: visible;
        transform: translateY(0);
    }

    .site-nav {
        width: min(100%, 620px);
        margin-inline: auto;
    }

    .site-nav__menu {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: clamp(0.8rem, 3vw, 1.25rem);
        margin: 0;
        padding: 0;
        text-align: center;
    }

    .site-nav__menu li {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .site-nav__menu a {
        display: inline-block;
        max-width: 100%;
        color: var(--c-on-navy);
        font-family: var(--font-display);
        font-size: clamp(2.15rem, 11vw, 4rem);
        font-weight: 800;
        line-height: 0.95;
        letter-spacing: 0.005em;
        text-align: center;
        text-transform: uppercase;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    .site-nav__menu a::after {
        display: none;
    }

    .site-header__cta {
        width: min(100%, 360px);
        min-height: 54px;
        padding-inline: 1.25rem;
        text-align: center;
    }

    .site-footer__inner,
    .site-footer__bottom {
        grid-template-columns: 1fr;
    }

    .site-footer__bottom {
        gap: 0.75rem;
    }
}

@media (max-width: 420px) {
    .site-nav__menu a {
        font-size: clamp(2rem, 14vw, 3.25rem);
    }

    .site-header__cta {
        width: min(100%, 330px);
    }
}

/* ------------------------------------------------------------
   Extasiz Legal Header / Footer refinement v0.7.0
   Matches the premium attorney landing direction.
------------------------------------------------------------ */
.site-utility {
    background: var(--c-navy);
    color: #cdd6e2;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-bottom: 1px solid var(--c-line-navy);
}

.site-utility__inner {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.site-utility__lang,
.site-utility__links {
    display: flex;
    align-items: center;
}

.site-utility__lang {
    gap: 2px;
}

.site-utility__lang button {
    padding: 4px 8px;
    border: 0;
    background: transparent;
    color: #8b97a8;
    cursor: pointer;
    font: inherit;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: color .25s var(--ease-ui);
}

.site-utility__lang button.is-active,
.site-utility__lang button:hover {
    color: var(--c-gold);
}

.site-utility__lang span {
    color: #3c4d63;
}

.site-utility__links {
    gap: clamp(.8rem, 2vw, 1.65rem);
}

.site-utility__links a {
    color: #cdd6e2;
    text-decoration: none;
    transition: color .25s var(--ease-ui);
}

.site-utility__links a:hover {
    color: var(--c-gold);
}

.site-utility__sep {
    width: 1px;
    height: 14px;
    background: var(--c-line-navy);
}

.site-utility__phone {
    color: #fff !important;
    font-weight: 700;
}

.site-header {
    top: 0;
    background: rgba(245, 241, 232, .88);
    border-bottom: 1px solid rgba(14, 28, 48, .14);
    color: var(--c-navy);
    backdrop-filter: blur(14px);
}

.admin-bar .site-header {
    top: 32px;
}

.site-header__inner {
    min-height: var(--header-height);
}

.site-logo {
    gap: 13px;
    min-height: 44px;
    color: var(--c-navy);
    font-family: var(--font-display);
}

.site-logo__mark {
    position: relative;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1.5px solid var(--c-navy);
    border-radius: 50%;
}

.site-logo__mark::after {
    content: "";
    position: absolute;
    inset: 6px;
    border: 1px solid var(--c-gold);
    border-radius: 50%;
}

.site-logo__mark span {
    position: relative;
    z-index: 1;
    color: var(--c-navy);
    font-size: 14px;
    font-weight: 900;
    letter-spacing: -.02em;
}

.site-logo__custom img {
    width: auto;
    max-height: 42px;
}

.site-logo__text {
    display: grid;
    gap: 3px;
    line-height: 1.05;
}

.site-logo__text b {
    color: var(--c-navy);
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.site-logo__text small {
    color: var(--c-gold);
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: .34em;
    text-transform: uppercase;
}

.site-header__navigation {
    gap: clamp(1rem, 2.4vw, 2rem);
}

.site-nav__menu {
    gap: clamp(1rem, 2.5vw, 2.125rem);
}

.site-nav__menu a {
    color: var(--c-navy);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.site-nav__menu a::after {
    bottom: -7px;
    height: 1.5px;
    background: var(--c-gold);
}

.site-nav__menu a:hover {
    color: var(--c-navy);
}

.site-header__cta {
    min-height: 44px;
    padding: 13px 22px;
    border: 0;
    border-radius: 0;
    background: var(--c-gold);
    color: var(--c-navy);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .05em;
}

.site-header__cta:hover {
    background: var(--c-navy);
    color: #fff;
    transform: translateY(-2px);
}

.site-menu-toggle {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--c-navy);
}

.site-menu-toggle span {
    left: 8px;
    right: 8px;
    height: 2px;
}

.site-menu-toggle span:first-child { top: 13px; }
.site-menu-toggle span:nth-child(2) { top: 20px; }
.site-menu-toggle span:last-child { top: 27px; }
.site-menu-toggle[aria-expanded="true"] span:first-child { top: 20px; transform: rotate(45deg); }
.site-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.site-menu-toggle[aria-expanded="true"] span:last-child { top: 20px; transform: rotate(-45deg); }

.site-footer {
    border-top: 0;
    background: var(--c-ink);
    color: #aeb8c5;
}

.site-footer__inner {
    grid-template-columns: 1.35fr 1fr 1fr;
    padding: clamp(4rem, 7vw, 5rem) 0 clamp(3rem, 5vw, 3.5rem);
    border-bottom: 1px solid var(--c-line-navy);
}

.site-footer__logo {
    color: #fff;
    font-size: clamp(1.2rem, 2.4vw, 1.8rem);
}

.site-footer__brand p {
    max-width: 320px;
    color: #aeb8c5;
    font-size: 14px;
    line-height: 1.7;
}

.site-footer__label {
    color: var(--c-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
}

.site-footer__label::before {
    content: none;
}

.site-footer__menu a,
.site-footer__contact a,
.site-footer__contact span {
    color: #aeb8c5;
    font-size: 14px;
    font-weight: 300;
    text-decoration: none;
}

.site-footer__menu a:hover,
.site-footer__contact a:hover {
    color: #fff;
}

.site-footer__bottom {
    padding: 30px 0;
    border-top: 0;
    color: #6b7686;
    font-size: 12px;
}

@media (max-width: 960px) {
    :root { --header-height: 72px; }

    .site-utility__inner {
        min-height: auto;
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        padding-block: 8px;
    }

    .site-utility__links {
        justify-content: center;
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .site-header__navigation {
        background:
            radial-gradient(circle at top left, rgba(194, 160, 83, .16), transparent 30rem),
            rgba(14, 28, 48, .99);
    }

    .site-nav__menu a {
        color: #fff;
        font-size: clamp(2.15rem, 11vw, 4rem);
    }

    .site-header__cta {
        width: min(100%, 360px);
        min-height: 54px;
    }

    .site-footer__inner,
    .site-footer__bottom {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 782px) {
    .admin-bar .site-header { top: 46px; }
}

@media (max-width: 720px) {
    .site-header__navigation .site-header__cta {
        display: inline-flex;
    }

    .site-logo__text b {
        font-size: 14px;
    }

    .site-logo__text small {
        font-size: 8.5px;
        letter-spacing: .22em;
    }
}

/* Fight My Injury responsive header refinements v1.0.0 */
.site-logo__custom img{width:auto;max-height:58px}
.site-mobile-dock{display:none}

@media (max-width: 960px) {
    body.show-mobile-dock{padding-bottom:68px}
    .site-mobile-dock{
        position:fixed;
        left:12px;
        right:12px;
        bottom:12px;
        z-index:95;
        display:grid;
        grid-template-columns:repeat(3,1fr);
        overflow:hidden;
        border:1px solid rgba(255,255,255,.22);
        border-radius:16px;
        background:rgba(19,89,140,.94);
        color:#fff;
        box-shadow:0 18px 42px rgba(0,0,0,.24);
        backdrop-filter:blur(14px);
        transform:translateY(calc(100% + 22px));
        opacity:0;
        pointer-events:none;
        transition:transform 240ms var(--ease-ui), opacity 240ms var(--ease-ui);
    }
    body.show-mobile-dock .site-mobile-dock{
        transform:translateY(0);
        opacity:1;
        pointer-events:auto;
    }
    .site-mobile-dock a{
        min-height:58px;
        display:grid;
        place-items:center;
        gap:3px;
        padding:8px 4px;
        border-right:1px solid rgba(255,255,255,.18);
        color:#fff;
        font-size:12px;
        font-weight:800;
        text-decoration:none;
        letter-spacing:.02em;
    }
    .site-mobile-dock a:last-child{border-right:0}
    .site-mobile-dock a span{font-size:15px;line-height:1;color:rgba(255,255,255,.78)}

    .site-header__navigation{
        align-items:stretch;
        justify-content:flex-start;
        gap:1.2rem;
        padding:calc(var(--header-height) + 2rem) 24px 2rem;
        text-align:left;
        background:
            radial-gradient(circle at top left, rgba(194,160,83,.12), transparent 22rem),
            var(--c-canvas);
        color:var(--c-navy);
    }
    .site-nav{width:min(100%,520px);margin-inline:auto}
    .site-nav__menu{
        align-items:stretch;
        justify-content:flex-start;
        gap:0;
        text-align:left;
    }
    .site-nav__menu li{justify-content:flex-start;border-bottom:1px solid rgba(14,28,48,.12)}
    .site-nav__menu a{
        width:100%;
        padding:16px 0;
        color:var(--c-navy);
        font-family:var(--font-display);
        font-size:clamp(15px,4.2vw,19px);
        font-weight:700;
        line-height:1.25;
        letter-spacing:.12em;
        text-align:left;
        text-transform:uppercase;
        white-space:normal;
        overflow-wrap:normal;
    }
    .site-nav__menu a:hover{color:var(--c-gold)}
    .site-header__navigation .site-header__cta{
        width:min(100%,520px);
        min-height:50px;
        margin-inline:auto;
        background:var(--c-gold);
        color:var(--c-navy);
        border:0;
        letter-spacing:.08em;
    }
    .site-header.is-menu-open .site-menu-toggle{color:var(--c-navy)}
    .site-logo__custom img{max-height:46px;max-width:210px}
}

@media (max-width: 720px) {
    .site-utility__links{gap:12px 16px;font-size:11px}
    .site-utility__phone{display:inline-flex;width:100%;justify-content:center;margin-top:2px}
    .site-utility__sep{display:none}
    .site-logo__custom img{max-height:42px;max-width:190px}
}
.site-footer__logo img{width:auto;max-height:70px;max-width:280px}

/* Fight My Injury final polish v1.1.0 */
.site-logo__custom img,
.site-footer__logo img{
    width:auto;
    max-width:280px;
    height:auto;
    object-fit:contain;
}
.site-logo__custom img{max-height:58px}
.site-footer__logo img{max-height:82px}

.site-footer{
    position:relative;
    overflow:hidden;
    background:#0b1118;
}
.site-footer::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.16;
    background-image:linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
    background-size:100% 33.33%,25% 100%;
}
.site-footer__inner,
.site-footer__bottom{position:relative;z-index:1}
.site-footer__inner{
    grid-template-columns:1.2fr .8fr 1fr 1.15fr;
    gap:clamp(2rem,4vw,4rem);
}
.site-footer__contact address{
    margin:0;
    color:#aeb8c5;
    font-size:14px;
    font-style:normal;
    font-weight:300;
    line-height:1.7;
}
.site-footer__map-frame{
    position:relative;
    overflow:hidden;
    min-height:180px;
    border:1px solid rgba(194,160,83,.32);
    background:rgba(255,255,255,.04);
    box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.site-footer__map-frame iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
    filter:grayscale(1) contrast(.95) brightness(.86);
    opacity:.78;
}
.site-footer__directions{
    display:inline-flex;
    margin-top:14px;
    color:var(--c-gold);
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-decoration:none;
    text-transform:uppercase;
}
.site-footer__directions:hover{color:#fff}
.site-footer__copyright{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:flex-end;text-align:right}
.site-footer__credit a{color:var(--c-gold);text-decoration:none;font-weight:600}
.site-footer__credit a:hover{color:#fff}

@media (max-width: 960px) {
    .site-utility__inner{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
    }
    .site-utility__lang{justify-content:center}
    .site-utility__links{
        width:100%;
        justify-content:center;
        flex-wrap:nowrap;
        gap:10px;
        overflow-x:auto;
        white-space:nowrap;
        scrollbar-width:none;
        font-size:10.5px;
        letter-spacing:.11em;
    }
    .site-utility__links::-webkit-scrollbar{display:none}
    .site-utility__phone{
        display:inline-flex;
        width:auto;
        justify-content:center;
        margin-top:0;
        font-weight:800;
        letter-spacing:.08em;
    }
    .site-utility__sep{
        display:block;
        flex:0 0 auto;
        height:13px;
        margin-inline:1px;
    }

    .site-menu-toggle{
        border:1px solid transparent;
        border-radius:999px;
        transition:background 240ms var(--ease-ui), border-color 240ms var(--ease-ui), transform 240ms var(--ease-ui);
    }
    .site-menu-toggle:hover{background:rgba(14,28,48,.05)}
    .site-menu-toggle span{left:10px;right:10px;height:2px}
    .site-menu-toggle span:first-child{top:16px}
    .site-menu-toggle span:nth-child(2){top:24px;opacity:1}
    .site-menu-toggle[aria-expanded="true"]{
        background:rgba(14,28,48,.075);
        border-color:rgba(14,28,48,.16);
        transform:rotate(90deg);
    }
    .site-menu-toggle[aria-expanded="true"] span:first-child{top:20px;transform:rotate(45deg)}
    .site-menu-toggle[aria-expanded="true"] span:nth-child(2){top:20px;opacity:1;transform:rotate(-45deg)}

    .site-header__navigation{
        transform:translateY(-12px) scale(.985);
        transition:opacity 340ms var(--ease-ui), transform 340ms var(--ease-ui), visibility 340ms var(--ease-ui);
        background:
            radial-gradient(circle at top left, rgba(194,160,83,.14), transparent 24rem),
            linear-gradient(180deg, #fbf8f1 0%, #f5f1e8 100%);
    }
    .site-header.is-menu-open .site-header__navigation{transform:translateY(0) scale(1)}
    .site-header.is-menu-open .site-nav__menu li{animation:xz-menu-item-in 420ms var(--ease-ui) both}
    .site-header.is-menu-open .site-nav__menu li:nth-child(1){animation-delay:70ms}
    .site-header.is-menu-open .site-nav__menu li:nth-child(2){animation-delay:105ms}
    .site-header.is-menu-open .site-nav__menu li:nth-child(3){animation-delay:140ms}
    .site-header.is-menu-open .site-nav__menu li:nth-child(4){animation-delay:175ms}
    .site-header.is-menu-open .site-nav__menu li:nth-child(5){animation-delay:210ms}
    .site-header.is-menu-open .site-nav__menu li:nth-child(6){animation-delay:245ms}
    @keyframes xz-menu-item-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

    body.show-mobile-dock{padding-bottom:76px}
    .site-mobile-dock{
        left:14px;
        right:14px;
        bottom:12px;
        border:1px solid rgba(194,160,83,.38);
        border-radius:18px;
        background:rgba(14,28,48,.94);
        box-shadow:0 20px 54px rgba(0,0,0,.32);
    }
    .site-mobile-dock a{
        min-height:60px;
        border-right:1px solid rgba(194,160,83,.22);
        color:#f7f1e4;
        font-size:11px;
        font-weight:600;
        letter-spacing:.13em;
        text-transform:uppercase;
    }
    .site-mobile-dock a span{
        min-height:14px;
        color:var(--c-gold);
        font-size:10px;
        font-weight:800;
        letter-spacing:.12em;
        opacity:1;
    }

    .site-footer__inner{grid-template-columns:1fr 1fr;gap:2.5rem}
    .site-footer__bottom{grid-template-columns:1fr}
    .site-footer__copyright{justify-content:flex-start;text-align:left}
}

@media (max-width: 720px) {
    .site-utility__inner{padding-block:8px}
    .site-utility__lang button{font-size:11px;letter-spacing:.18em}
    .site-utility__links{gap:8px;font-size:9.8px;letter-spacing:.1em}
    .site-utility__sep{height:12px}
    .site-logo__custom img{max-height:44px;max-width:196px}
    .site-footer__inner{grid-template-columns:1fr}
    .site-footer__map-frame{min-height:220px}
}

/* Fight My Injury header/footer logo controls v1.2.0 */
.site-header .site-logo__custom img{
    max-height:var(--site-logo-max-height, 38px) !important;
    max-width:clamp(150px, 13vw, 220px) !important;
    width:auto;
    height:auto;
    object-fit:contain;
}
.site-header .site-logo{
    min-height:38px;
}
.site-header__navigation{
    gap:clamp(.8rem, 1.75vw, 1.55rem);
}
.site-nav__menu{
    gap:clamp(.75rem, 1.65vw, 1.65rem);
}
.site-nav__menu a{
    font-size:12.25px;
    letter-spacing:.055em;
}
.site-header__cta{
    padding-inline:18px;
    white-space:nowrap;
}

.site-footer{
    background:
        radial-gradient(circle at 12% 8%, rgba(194,160,83,.12), transparent 24rem),
        linear-gradient(135deg, var(--site-footer-bg, #0E1C30) 0%, #081423 62%, #050a12 100%) !important;
}
.site-footer::before{
    opacity:.12;
}
.site-footer::after{
    content:"";
    position:absolute;
    inset:auto 0 0 0;
    height:1px;
    background:linear-gradient(90deg, transparent, rgba(194,160,83,.72), transparent);
    pointer-events:none;
}
.site-footer__logo img{
    max-height:var(--site-footer-logo-max-height, 82px) !important;
    max-width:min(300px, 100%) !important;
    width:auto;
    height:auto;
    object-fit:contain;
}
.site-footer__inner{
    border-bottom-color:rgba(194,160,83,.18);
}
.site-footer__bottom{
    color:rgba(223,229,236,.58);
}
.site-footer__disclaimer{
    color:rgba(223,229,236,.54);
}

@media (max-width:1180px){
    .site-nav__menu{gap:clamp(.55rem, 1.25vw, 1rem)}
    .site-nav__menu a{font-size:11.4px;letter-spacing:.045em}
    .site-header__cta{padding-inline:15px;font-size:12px}
    .site-header .site-logo__custom img{max-width:180px !important}
}

@media (max-width:960px){
    .site-header .site-logo__custom img{
        max-height:min(var(--site-logo-max-height, 38px), 42px) !important;
        max-width:190px !important;
    }
    .site-nav__menu a{
        font-size:clamp(15px, 4.2vw, 19px);
        letter-spacing:.12em;
    }
}

@media (max-width:720px){
    .site-header .site-logo__custom img{
        max-height:min(var(--site-logo-max-height, 38px), 38px) !important;
        max-width:170px !important;
    }
}


/* Extasiz footer visibility fix v1.4.0
   Footer motion disabled: legal/disclaimer and developer credit must never remain hidden. */
.site-footer__brand,
.site-footer__nav,
.site-footer__contact,
.site-footer__map,
.site-footer__bottom,
.site-reveal,
.site-motion-ready .site-reveal{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
}
.site-footer__bottom{
    display:grid!important;
    visibility:visible!important;
}

/* Fight My Injury anchor/menu controls v1.5.0 */
@media (max-width: 960px){
    .site-header.is-menu-open .site-nav__menu li:nth-child(7){animation-delay:280ms}
}


/* Extasiz mobile footer / dock safe-area fix v1.5.1
   Keeps the footer visually closed on mobile browsers and hides the quick dock on iPad/tablet. */
html{
    background:#071523;
}
body.show-mobile-dock{
    padding-bottom:0!important;
}
@media (max-width:640px){
    body.show-mobile-dock .site-footer{
        padding-bottom:calc(88px + env(safe-area-inset-bottom, 0px));
    }
    .site-mobile-dock{
        left:14px;
        right:14px;
        bottom:calc(10px + env(safe-area-inset-bottom, 0px));
        max-width:min(520px, calc(100vw - 28px));
        margin-inline:auto;
    }
}
@media (min-width:641px){
    body.show-mobile-dock{
        padding-bottom:0!important;
    }
    .site-mobile-dock{
        display:none!important;
    }
}

/* Extasiz iPad footer closure fix v1.5.2
   Prevents Safari/iPad from exposing the cream body background after the footer.
   Main keeps the light canvas; footer/browser safe areas stay navy. */
html,
body{
    background:#071523!important;
}
.site-main{
    background:var(--c-canvas);
    position:relative;
    z-index:1;
}
.site-footer{
    position:relative;
    z-index:2;
    overflow:hidden;
    margin-bottom:-1px;
}
@media (min-width:641px) and (max-width:1180px){
    body.show-mobile-dock{
        padding-bottom:0!important;
    }
    .site-mobile-dock{
        display:none!important;
    }
    .site-footer{
        padding-bottom:calc(24px + env(safe-area-inset-bottom, 0px));
    }
}
@supports (-webkit-touch-callout:none){
    @media (min-width:641px) and (max-width:1180px){
        .site-footer{
            padding-bottom:calc(34px + env(safe-area-inset-bottom, 0px));
        }
    }
}



/* Extasiz mobile menu compositor/stability fix v1.5.3
   Prevents iOS/Android repaint flicker where the logo and close icon disappear
   while the full-screen menu is animating. The menu panel now starts below the
   sticky header instead of painting underneath it. */
@media (max-width: 960px){
    .site-header{
        z-index:1000;
        isolation:isolate;
        transform:translateZ(0);
        -webkit-transform:translateZ(0);
        will-change:transform;
        backface-visibility:hidden;
        -webkit-backface-visibility:hidden;
    }
    .site-branding,
    .site-menu-toggle{
        position:relative;
        z-index:1005;
        transform:translateZ(0);
        -webkit-transform:translateZ(0);
        backface-visibility:hidden;
        -webkit-backface-visibility:hidden;
        will-change:transform;
    }
    .site-header__navigation{
        inset:var(--header-height) 0 0 0!important;
        top:var(--header-height)!important;
        right:0!important;
        bottom:0!important;
        left:0!important;
        z-index:995;
        height:calc(100svh - var(--header-height));
        min-height:0!important;
        padding:24px 24px calc(28px + env(safe-area-inset-bottom, 0px))!important;
        overflow-x:hidden;
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
        transform:translate3d(0,-10px,0) scale(.992);
        will-change:opacity, transform;
        backface-visibility:hidden;
        -webkit-backface-visibility:hidden;
    }
    .site-header.is-menu-open .site-header__navigation{
        transform:translate3d(0,0,0) scale(1)!important;
    }
    .site-header.is-menu-open .site-logo,
    .site-header.is-menu-open .site-logo__custom,
    .site-header.is-menu-open .site-logo__custom img,
    .site-header.is-menu-open .site-menu-toggle,
    .site-header.is-menu-open .site-menu-toggle span{
        opacity:1!important;
        visibility:visible!important;
    }
    body.menu-open .site-mobile-dock{
        opacity:0!important;
        pointer-events:none!important;
    }
}
@supports (height: 100dvh){
    @media (max-width: 960px){
        .site-header__navigation{
            height:calc(100dvh - var(--header-height));
        }
    }
}
.admin-bar .site-header__navigation{
    top:calc(32px + var(--header-height))!important;
    height:calc(100svh - 32px - var(--header-height));
}
@media (max-width: 782px){
    .admin-bar .site-header__navigation{
        top:calc(46px + var(--header-height))!important;
        height:calc(100svh - 46px - var(--header-height));
    }
}
@supports (height: 100dvh){
    .admin-bar .site-header__navigation{
        height:calc(100dvh - 32px - var(--header-height));
    }
    @media (max-width: 782px){
        .admin-bar .site-header__navigation{
            height:calc(100dvh - 46px - var(--header-height));
        }
    }
}

/* Extasiz desktop admin-bar header guard v1.5.4
   The mobile menu safe-area admin offsets must never force a full-height nav
   on desktop while logged in. This keeps the desktop header compact. */
@media (min-width: 961px){
    .admin-bar .site-header__navigation,
    body.admin-bar .site-header__navigation{
        position:static!important;
        inset:auto!important;
        top:auto!important;
        right:auto!important;
        bottom:auto!important;
        left:auto!important;
        width:auto!important;
        height:auto!important;
        min-height:0!important;
        padding:0!important;
        overflow:visible!important;
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:none!important;
        background:transparent!important;
    }
    .admin-bar .site-header__inner,
    body.admin-bar .site-header__inner{
        height:auto!important;
        min-height:var(--header-height)!important;
        align-items:center!important;
    }
    .admin-bar .site-menu-toggle,
    body.admin-bar .site-menu-toggle{
        display:none!important;
    }
}


/* Extasiz footer map performance fix v1.5.5
   Replaces the heavy Google Maps iframe with an instant-loading premium map preview.
   The card still opens Google Maps when tapped/clicked. */
.site-footer__map-frame--static{
    display:block;
    text-decoration:none;
    color:#243248;
    isolation:isolate;
    background:
        linear-gradient(90deg, transparent 0 38%, rgba(95,105,118,.35) 38% 39%, transparent 39% 100%),
        linear-gradient(90deg, transparent 0 67%, rgba(95,105,118,.3) 67% 68.5%, transparent 68.5% 100%),
        linear-gradient(0deg, transparent 0 32%, rgba(95,105,118,.32) 32% 34%, transparent 34% 100%),
        linear-gradient(0deg, transparent 0 63%, rgba(95,105,118,.28) 63% 65%, transparent 65% 100%),
        radial-gradient(circle at 58% 48%, rgba(10,20,34,.18), transparent 0 4px, transparent 5px),
        linear-gradient(135deg, #ddd9cf 0%, #cfcfcf 46%, #e4dfd3 100%);
    filter:grayscale(1) contrast(.96) brightness(.86);
    transition:filter 240ms var(--ease-ui), transform 240ms var(--ease-ui), border-color 240ms var(--ease-ui);
}
.site-footer__map-frame--static:hover{
    filter:grayscale(.88) contrast(1) brightness(.94);
    transform:translateY(-1px);
    border-color:rgba(194,160,83,.56);
}
.site-footer__map-frame--static::before,
.site-footer__map-frame--static::after{
    content:"";
    position:absolute;
    inset:auto;
    pointer-events:none;
    z-index:1;
}
.site-footer__map-frame--static::before{
    left:49%;
    top:38%;
    width:34px;
    height:34px;
    border-radius:50% 50% 50% 0;
    background:#172231;
    transform:rotate(-45deg);
    box-shadow:0 8px 20px rgba(0,0,0,.28);
}
.site-footer__map-frame--static::after{
    left:calc(49% + 8px);
    top:calc(38% + 8px);
    width:12px;
    height:12px;
    border-radius:999px;
    background:#c2a053;
    transform:rotate(0deg);
}
.site-footer__map-pin{
    position:absolute;
    left:calc(49% + 42px);
    top:calc(38% + 4px);
    z-index:2;
    color:#172231;
    font-size:18px;
    font-weight:800;
    letter-spacing:.04em;
    line-height:1;
}
.site-footer__map-street{
    position:absolute;
    z-index:2;
    color:rgba(23,34,49,.76);
    font-size:13px;
    font-weight:800;
    letter-spacing:.02em;
    line-height:1;
    text-transform:none;
    white-space:nowrap;
}
.site-footer__map-street--one{left:44%;top:25%;transform:rotate(-10deg)}
.site-footer__map-street--two{left:43%;top:58%;transform:rotate(8deg)}
.site-footer__map-street--three{right:8%;top:18%;writing-mode:vertical-rl;transform:rotate(180deg)}
.site-footer__map-open{
    position:absolute;
    left:16px;
    top:16px;
    z-index:3;
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 14px;
    background:rgba(255,255,255,.72);
    color:#172231;
    border:1px solid rgba(23,34,49,.08);
    box-shadow:0 8px 18px rgba(0,0,0,.12);
    font-size:13px;
    font-weight:700;
}
@media (max-width:720px){
    .site-footer__map-street{font-size:12px}
    .site-footer__map-pin{font-size:16px;left:calc(49% + 38px)}
    .site-footer__map-open{font-size:12px;min-height:34px;padding-inline:12px}
}

/* Extasiz premium integrated footer map v1.5.6
   Uses a custom lightweight branded map panel instead of a heavy Google Maps iframe. */
.site-footer--premium-map{
    --footer-gold:#c9a24b;
    --footer-gold-2:#e0bb68;
    --footer-navy:#071523;
    --footer-navy-2:#0b1b2f;
    --footer-text:#f6efe2;
    --footer-muted:#aeb8c5;
    --footer-line:rgba(201,162,75,.24);
    border-top:1px solid rgba(201,162,75,.38)!important;
    background:
        radial-gradient(circle at 9% 10%, rgba(45,74,111,.3), transparent 29rem),
        radial-gradient(circle at 78% 92%, rgba(201,162,75,.08), transparent 26rem),
        linear-gradient(135deg, var(--site-footer-bg, #071523) 0%, #09182a 50%, #050b13 100%)!important;
    color:var(--footer-text);
}
.site-footer--premium-map::before{
    opacity:.18!important;
    background-image:
        linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.10) 1px, transparent 1px)!important;
    background-size:100% 25%, 14.285% 100%!important;
}
.site-footer--premium-map .site-footer__inner{
    display:grid;
    grid-template-columns:minmax(260px,.82fr) minmax(145px,.42fr) minmax(190px,.52fr) minmax(235px,.66fr) minmax(260px,.74fr);
    grid-template-areas:
        "brand nav practice contact office"
        "brand map map map map";
    gap:clamp(2rem,3.2vw,4.25rem) clamp(1.5rem,3vw,3.75rem);
    align-items:start;
    padding:clamp(4.5rem,7vw,6.75rem) 0 clamp(1.75rem,3vw,2.8rem);
    border-bottom:0!important;
}
.site-footer--premium-map .site-footer__brand{grid-area:brand;align-self:stretch;padding-right:clamp(1.5rem,2.5vw,3rem);border-right:1px solid var(--footer-line)}
.site-footer--premium-map .site-footer__nav{grid-area:nav}
.site-footer--premium-map .site-footer__practice{grid-area:practice}
.site-footer--premium-map .site-footer__contact{grid-area:contact}
.site-footer--premium-map .site-footer__office{grid-area:office}
.site-footer--premium-map .site-footer__map{grid-area:map;min-width:0}
.site-footer--premium-map .site-footer__logo{
    display:inline-flex;
    margin:0 0 1.9rem;
}
.site-footer--premium-map .site-footer__logo img{
    max-height:var(--site-footer-logo-max-height, 92px)!important;
    max-width:min(330px, 100%)!important;
    width:auto;
    height:auto;
    object-fit:contain;
}
.site-footer--premium-map .site-footer__brand p{
    max-width:360px;
    margin:0;
    color:var(--footer-muted);
    font-size:clamp(15px,1vw,17px);
    line-height:1.7;
}
.site-footer--premium-map .site-footer__phone-feature{
    margin-top:clamp(2.1rem,3.6vw,3.7rem);
    padding-top:clamp(1.9rem,2.7vw,3rem);
    border-top:1px solid var(--footer-line);
}
.site-footer--premium-map .site-footer__phone-feature a{
    display:inline-flex;
    align-items:center;
    gap:16px;
    color:var(--footer-text);
    font-family:var(--font-display, Georgia, serif);
    font-size:clamp(2rem,3vw,3.1rem);
    line-height:1;
    letter-spacing:.01em;
    text-decoration:none;
}
.site-footer--premium-map .site-footer__phone-feature a:hover{color:#fff}
.site-footer--premium-map .site-footer__phone-note{
    display:block;
    margin-top:1.25rem;
    color:var(--footer-gold-2);
    font-size:12px;
    font-weight:700;
    letter-spacing:.115em;
    line-height:1.45;
    text-transform:uppercase;
}
.site-footer--premium-map .site-footer__label{
    position:relative;
    margin:0 0 1.35rem;
    color:var(--footer-gold-2);
    font-size:13px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.site-footer--premium-map .site-footer__label::before{content:none!important}
.site-footer--premium-map .site-footer__label::after{
    content:"";
    display:block;
    width:38px;
    height:1px;
    margin-top:.8rem;
    background:linear-gradient(90deg, var(--footer-gold), transparent);
}
.site-footer--premium-map .site-footer__menu{
    display:grid;
    gap:.82rem;
    margin:0;
    padding:0;
    list-style:none;
}
.site-footer--premium-map .site-footer__menu a{
    color:var(--footer-text);
    font-size:clamp(14px,.95vw,16px);
    font-weight:400;
    line-height:1.35;
    text-decoration:none;
    transition:color 180ms var(--ease-ui), transform 180ms var(--ease-ui);
}
.site-footer--premium-map .site-footer__menu a:hover{
    color:var(--footer-gold-2);
    transform:translateX(2px);
}
.site-footer--premium-map .site-footer__contact,
.site-footer--premium-map .site-footer__office{
    position:relative;
    display:grid;
    align-content:start;
    gap:1.2rem;
}
.site-footer--premium-map .site-footer__contact::before,
.site-footer--premium-map .site-footer__office::before,
.site-footer--premium-map .site-footer__practice::before{
    content:"";
    position:absolute;
    left:calc(-1 * clamp(.9rem,1.8vw,2rem));
    top:-.7rem;
    bottom:-.7rem;
    width:1px;
    background:linear-gradient(180deg, transparent, var(--footer-line), transparent);
}
.site-footer--premium-map .site-footer__contact-row,
.site-footer--premium-map .site-footer__office-row{
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    align-items:center;
    gap:1rem;
    color:var(--footer-text);
    text-decoration:none;
}
.site-footer--premium-map .site-footer__contact-row:hover,
.site-footer--premium-map .site-footer__office-row:hover{color:var(--footer-gold-2)}
.site-footer--premium-map .site-footer__icon{
    display:inline-grid;
    width:42px;
    height:42px;
    place-items:center;
    border:1px solid rgba(201,162,75,.72);
    border-radius:999px;
    color:var(--footer-gold-2);
    font-size:17px;
    font-weight:700;
    line-height:1;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025), 0 0 20px rgba(201,162,75,.04);
}
.site-footer--premium-map .site-footer__office address{
    margin:0;
    color:var(--footer-text);
    font-size:clamp(14px,.95vw,16px);
    font-style:normal;
    font-weight:400;
    line-height:1.65;
}
.site-footer--premium-map .site-footer__map-panel{
    position:relative;
    display:block;
    min-height:clamp(250px,24vw,350px);
    overflow:hidden;
    border:1px solid rgba(201,162,75,.62);
    border-radius:28px;
    text-decoration:none;
    isolation:isolate;
    background:
        linear-gradient(25deg, transparent 0 27%, rgba(201,162,75,.22) 27% 27.7%, transparent 27.7% 100%),
        linear-gradient(145deg, transparent 0 53%, rgba(201,162,75,.18) 53% 53.65%, transparent 53.65% 100%),
        linear-gradient(78deg, transparent 0 39%, rgba(255,255,255,.13) 39% 39.55%, transparent 39.55% 100%),
        linear-gradient(100deg, transparent 0 69%, rgba(255,255,255,.1) 69% 69.6%, transparent 69.6% 100%),
        linear-gradient(173deg, transparent 0 43%, rgba(255,255,255,.1) 43% 43.55%, transparent 43.55% 100%),
        linear-gradient(0deg, transparent 0 31%, rgba(255,255,255,.08) 31% 31.45%, transparent 31.45% 100%),
        linear-gradient(0deg, transparent 0 67%, rgba(201,162,75,.16) 67% 67.55%, transparent 67.55% 100%),
        radial-gradient(circle at 48% 47%, rgba(201,162,75,.2), transparent 0 12px, transparent 13px),
        linear-gradient(135deg, rgba(13,31,53,.97), rgba(6,17,31,.98));
    box-shadow:0 25px 70px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.025);
    transition:transform 240ms var(--ease-ui), border-color 240ms var(--ease-ui), box-shadow 240ms var(--ease-ui);
}
.site-footer--premium-map .site-footer__map-panel::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    opacity:.16;
    background-image:
        linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px),
        linear-gradient(35deg, transparent 0 49%, rgba(255,255,255,.18) 49% 49.35%, transparent 49.35% 100%),
        linear-gradient(125deg, transparent 0 58%, rgba(255,255,255,.15) 58% 58.35%, transparent 58.35% 100%);
    background-size:48px 48px,48px 48px,160px 160px,190px 190px;
}
.site-footer--premium-map .site-footer__map-panel::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 49% 46%, rgba(201,162,75,.2), transparent 10rem),
        linear-gradient(90deg, rgba(7,21,35,.28), transparent 24%, transparent 74%, rgba(7,21,35,.34));
}
.site-footer--premium-map .site-footer__map-panel:hover{
    transform:translateY(-2px);
    border-color:rgba(224,187,104,.86);
    box-shadow:0 30px 82px rgba(0,0,0,.42), 0 0 0 1px rgba(201,162,75,.1);
}
.site-footer--premium-map .site-footer__map-label,
.site-footer--premium-map .site-footer__map-road,
.site-footer--premium-map .site-footer__map-highway{
    position:absolute;
    z-index:2;
    color:rgba(246,239,226,.72);
    font-size:clamp(11px,.85vw,14px);
    font-weight:700;
    letter-spacing:.055em;
    line-height:1.15;
    text-transform:none;
    white-space:nowrap;
    pointer-events:none;
}
.site-footer--premium-map .site-footer__map-label{
    color:rgba(224,187,104,.86);
    font-size:clamp(13px,.95vw,16px);
    letter-spacing:.13em;
    text-transform:uppercase;
}
.site-footer--premium-map .site-footer__map-label--uptown{left:11%;top:52%}
.site-footer--premium-map .site-footer__map-label--river{right:35%;top:38%}
.site-footer--premium-map .site-footer__map-road--one{left:10%;top:17%;transform:rotate(-9deg)}
.site-footer--premium-map .site-footer__map-road--two{left:12%;bottom:15%;transform:rotate(-9deg)}
.site-footer--premium-map .site-footer__map-road--three{left:27%;top:39%;transform:rotate(80deg)}
.site-footer--premium-map .site-footer__map-road--four{left:43%;top:14%;transform:rotate(82deg)}
.site-footer--premium-map .site-footer__map-highway{
    right:31%;
    top:65%;
    display:inline-grid;
    width:35px;
    height:30px;
    place-items:center;
    clip-path:polygon(50% 0, 90% 18%, 82% 100%, 18% 100%, 10% 18%);
    border:1px solid rgba(201,162,75,.6);
    color:var(--footer-gold-2);
    font-size:12px;
    background:rgba(7,21,35,.72);
}
.site-footer--premium-map .site-footer__map-marker{
    position:absolute;
    left:47%;
    top:34%;
    z-index:3;
    width:46px;
    height:46px;
    border-radius:50% 50% 50% 0;
    background:linear-gradient(145deg, #f0ca75, #a97820);
    transform:rotate(-45deg);
    box-shadow:0 14px 34px rgba(0,0,0,.42), 0 0 0 8px rgba(201,162,75,.11), 0 0 0 16px rgba(201,162,75,.055);
}
.site-footer--premium-map .site-footer__map-marker::before{
    content:"";
    position:absolute;
    inset:13px;
    border-radius:999px;
    background:#071523;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.site-footer--premium-map .site-footer__map-card{
    position:absolute;
    right:clamp(1.25rem,3vw,3.8rem);
    top:50%;
    z-index:4;
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:1.15rem;
    align-items:center;
    width:min(360px, 42%);
    min-height:120px;
    padding:1.35rem 1.45rem;
    border:1px solid rgba(224,187,104,.72);
    border-radius:22px;
    background:linear-gradient(135deg, rgba(11,27,47,.92), rgba(5,12,22,.96));
    box-shadow:0 22px 56px rgba(0,0,0,.36), 0 0 32px rgba(201,162,75,.08);
    color:var(--footer-text);
    transform:translateY(-50%);
}
.site-footer--premium-map .site-footer__map-card-icon{
    display:grid;
    width:52px;
    height:52px;
    place-items:center;
    border:1px solid rgba(224,187,104,.64);
    border-radius:999px;
    color:var(--footer-gold-2);
    font-size:30px;
    line-height:1;
}
.site-footer--premium-map .site-footer__map-card strong,
.site-footer--premium-map .site-footer__map-card span span{
    display:block;
}
.site-footer--premium-map .site-footer__map-card strong{
    margin:0 0 .45rem;
    color:var(--footer-gold-2);
    font-size:clamp(14px,1vw,17px);
    line-height:1.3;
}
.site-footer--premium-map .site-footer__map-card span span{
    color:var(--footer-text);
    font-size:clamp(13px,.95vw,15px);
    line-height:1.45;
}
.site-footer--premium-map .site-footer__bottom{
    display:block!important;
    position:relative;
    z-index:1;
    padding:1.65rem 0 2rem;
    border-top:1px solid var(--footer-line)!important;
    color:var(--footer-muted);
}
.site-footer--premium-map .site-footer__disclaimer{
    max-width:980px;
    margin:0 0 1.45rem!important;
    color:rgba(174,184,197,.82);
    font-size:12.5px;
    line-height:1.65;
}
.site-footer--premium-map .site-footer__legal-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:1.25rem;
}
.site-footer--premium-map .site-footer__copyright,
.site-footer--premium-map .site-footer__credit{
    margin:0!important;
    color:rgba(174,184,197,.88);
    font-size:13px;
    line-height:1.45;
}
.site-footer--premium-map .site-footer__credit{text-align:right}
.site-footer--premium-map .site-footer__credit a,
.site-footer--premium-map .site-footer__legal-links a{
    color:var(--footer-gold-2);
    text-decoration:none;
}
.site-footer--premium-map .site-footer__credit a:hover,
.site-footer--premium-map .site-footer__legal-links a:hover{color:#fff}
.site-footer--premium-map .site-footer__legal-links{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:.7rem 1rem;
    font-size:13px;
    white-space:nowrap;
}
.site-footer--premium-map .site-footer__legal-links a + a::before{
    content:"•";
    margin-right:1rem;
    color:var(--footer-gold-2);
}
@media (max-width:1240px){
    .site-footer--premium-map .site-footer__inner{
        grid-template-columns:minmax(240px,.95fr) repeat(2,minmax(160px,.62fr));
        grid-template-areas:
            "brand nav practice"
            "brand contact office"
            "map map map";
    }
    .site-footer--premium-map .site-footer__brand{padding-right:2rem}
    .site-footer--premium-map .site-footer__contact::before,
    .site-footer--premium-map .site-footer__office::before,
    .site-footer--premium-map .site-footer__practice::before{display:none}
}
@media (max-width:860px){
    .site-footer--premium-map .site-footer__inner{
        grid-template-columns:1fr 1fr;
        grid-template-areas:
            "brand brand"
            "nav practice"
            "contact office"
            "map map";
        padding-top:3.5rem;
    }
    .site-footer--premium-map .site-footer__brand{
        padding-right:0;
        border-right:0;
        border-bottom:1px solid var(--footer-line);
        padding-bottom:2.3rem;
    }
    .site-footer--premium-map .site-footer__phone-feature{margin-top:2rem;padding-top:1.75rem}
    .site-footer--premium-map .site-footer__map-panel{min-height:300px;border-radius:22px}
    .site-footer--premium-map .site-footer__map-card{right:1.2rem;width:min(330px, 52%)}
    .site-footer--premium-map .site-footer__legal-row{grid-template-columns:1fr;text-align:left}
    .site-footer--premium-map .site-footer__legal-links{justify-content:flex-start}
    .site-footer--premium-map .site-footer__credit{text-align:left}
}
@media (max-width:640px){
    .site-footer--premium-map .site-footer__inner{
        grid-template-columns:1fr;
        grid-template-areas:
            "brand"
            "nav"
            "practice"
            "contact"
            "office"
            "map";
        gap:2rem;
    }
    .site-footer--premium-map .site-footer__logo img{max-width:280px!important}
    .site-footer--premium-map .site-footer__phone-feature a{font-size:2.05rem}
    .site-footer--premium-map .site-footer__map-panel{min-height:360px}
    .site-footer--premium-map .site-footer__map-label--river{right:12%;top:27%}
    .site-footer--premium-map .site-footer__map-marker{left:50%;top:35%;width:42px;height:42px}
    .site-footer--premium-map .site-footer__map-card{
        left:1rem;
        right:1rem;
        top:auto;
        bottom:1rem;
        width:auto;
        min-height:108px;
        padding:1rem;
        transform:none;
        grid-template-columns:44px minmax(0,1fr);
    }
    .site-footer--premium-map .site-footer__map-card-icon{width:44px;height:44px;font-size:24px}
    .site-footer--premium-map .site-footer__legal-links{white-space:normal}
}

/* Extasiz premium footer refinement v1.5.7
   Keeps the approved footer direction, removes temporary/non-page nav clutter,
   reduces the oversized phone treatment, and uses a real map preview image. */
.site-footer--premium-map .site-footer__phone-feature a{
    font-size:clamp(1.65rem, 1.85vw, 2.2rem)!important;
    line-height:1.08!important;
    white-space:nowrap!important;
}
.site-footer--premium-map .site-footer__phone-note{
    max-width:280px;
    letter-spacing:.095em!important;
}
.site-footer--premium-map .site-footer__map-panel{
    border:0!important;
    border-radius:26px!important;
    background-image:
        linear-gradient(90deg, rgba(7,21,35,.42), rgba(7,21,35,.14) 44%, rgba(7,21,35,.34)),
        linear-gradient(0deg, rgba(7,21,35,.35), rgba(7,21,35,.06) 42%, rgba(7,21,35,.48)),
        url('../images/fmi-footer-map-houston.jpg')!important;
    background-position:center center!important;
    background-size:cover!important;
    box-shadow:0 26px 70px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.site-footer--premium-map .site-footer__map-panel::before{
    opacity:.12!important;
    z-index:1!important;
    background-image:
        linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.1) 1px, transparent 1px)!important;
    background-size:72px 72px!important;
}
.site-footer--premium-map .site-footer__map-panel::after{
    z-index:2!important;
    background:
        radial-gradient(circle at 48% 48%, rgba(201,162,75,.13), transparent 12rem),
        linear-gradient(90deg, rgba(7,21,35,.36), transparent 34%, rgba(7,21,35,.42))!important;
}
.site-footer--premium-map .site-footer__map-panel:hover{
    border-color:transparent!important;
    box-shadow:0 30px 82px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.05)!important;
}
.site-footer--premium-map .site-footer__map-label,
.site-footer--premium-map .site-footer__map-road,
.site-footer--premium-map .site-footer__map-highway{
    display:none!important;
}
.site-footer--premium-map .site-footer__map-marker{
    left:47%!important;
    top:33%!important;
    z-index:3!important;
    opacity:.92;
}
.site-footer--premium-map .site-footer__map-card{
    border:0!important;
    border-radius:20px!important;
    background:linear-gradient(135deg, rgba(7,21,35,.9), rgba(5,12,22,.96))!important;
    box-shadow:0 22px 58px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.055)!important;
}
.site-footer--premium-map .site-footer__map-card-icon{
    border:0!important;
    background:rgba(201,162,75,.12)!important;
    box-shadow:inset 0 0 0 1px rgba(201,162,75,.2)!important;
}
.site-footer--premium-map .site-footer__map-card em{
    display:inline-block;
    margin-top:.65rem;
    color:var(--footer-gold-2);
    font-size:11px;
    font-style:normal;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.site-footer--premium-map .site-footer__copyright{
    justify-content:flex-start!important;
    text-align:left!important;
    width:100%!important;
}
.site-footer--premium-map .site-footer__legal-row{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
}
@media (max-width:640px){
    .site-footer--premium-map .site-footer__phone-feature a{
        font-size:clamp(1.75rem, 8vw, 2.05rem)!important;
        white-space:normal!important;
    }
    .site-footer--premium-map .site-footer__map-panel{
        min-height:330px!important;
        border-radius:22px!important;
    }
    .site-footer--premium-map .site-footer__map-card{
        border:0!important;
        box-shadow:0 18px 44px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,255,255,.05)!important;
    }
}
.site-footer--premium-map .site-footer__map-marker{
    display:none!important;
}

/* Extasiz safe footer rollback v1.6.1
   Base: v1.5.7. Replaces the footer map image/fake vector treatment with a real Google Maps iframe,
   adds Facebook/Instagram/TikTok icons, and returns the featured phone number to a normal text size. */
.site-footer--premium-map .site-footer__phone-feature a{
    font-family:inherit!important;
    font-size:clamp(15px, .95vw, 17px)!important;
    font-weight:500!important;
    letter-spacing:0!important;
    line-height:1.4!important;
    white-space:normal!important;
    color:var(--footer-text)!important;
}
.site-footer--premium-map .site-footer__phone-feature .site-footer__icon{
    width:38px!important;
    height:38px!important;
    font-size:15px!important;
}
.site-footer--premium-map .site-footer__phone-note{
    max-width:260px!important;
    margin-top:.9rem!important;
    font-size:11px!important;
    line-height:1.55!important;
    letter-spacing:.105em!important;
}
.site-footer--premium-map .site-footer__socials{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:.8rem!important;
    margin-top:1.6rem!important;
}
.site-footer--premium-map .site-footer__socials a{
    display:inline-grid!important;
    width:40px!important;
    height:40px!important;
    place-items:center!important;
    border:1px solid rgba(201,162,75,.66)!important;
    border-radius:999px!important;
    color:var(--footer-gold-2)!important;
    background:rgba(7,21,35,.28)!important;
    text-decoration:none!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025), 0 10px 22px rgba(0,0,0,.16)!important;
    transition:transform 180ms var(--ease-ui), color 180ms var(--ease-ui), border-color 180ms var(--ease-ui), background 180ms var(--ease-ui)!important;
}
.site-footer--premium-map .site-footer__socials a:hover{
    transform:translateY(-2px)!important;
    color:#fff!important;
    border-color:rgba(224,187,104,.92)!important;
    background:rgba(18,36,61,.48)!important;
}
.site-footer--premium-map .site-footer__social-icon,
.site-footer--premium-map .site-footer__social-icon svg{
    display:block!important;
    width:18px!important;
    height:18px!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe{
    position:relative!important;
    display:block!important;
    min-height:clamp(245px, 21vw, 315px)!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:24px!important;
    padding:0!important;
    background:#071523!important;
    box-shadow:0 26px 70px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.045)!important;
    isolation:isolate!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe iframe{
    position:absolute!important;
    inset:-1px!important;
    z-index:0!important;
    width:calc(100% + 2px)!important;
    height:calc(100% + 2px)!important;
    border:0!important;
    filter:grayscale(1) invert(.88) sepia(.18) hue-rotate(165deg) saturate(.82) brightness(.62) contrast(1.08)!important;
    opacity:.9!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    opacity:1!important;
    background:
        radial-gradient(circle at 48% 48%, rgba(201,162,75,.16), transparent 13rem),
        linear-gradient(90deg, rgba(7,21,35,.56), rgba(7,21,35,.18) 42%, rgba(7,21,35,.48)),
        linear-gradient(0deg, rgba(5,12,22,.32), transparent 45%, rgba(5,12,22,.24))!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    pointer-events:none!important;
    border-radius:inherit!important;
    background:none!important;
    box-shadow:inset 0 0 0 1px rgba(201,162,75,.18), inset 0 0 48px rgba(7,21,35,.55)!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-open{
    position:absolute!important;
    left:clamp(1rem,2vw,1.45rem)!important;
    bottom:clamp(1rem,2vw,1.35rem)!important;
    z-index:3!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:.85rem 1.1rem!important;
    border:1px solid rgba(201,162,75,.48)!important;
    border-radius:999px!important;
    background:rgba(7,21,35,.82)!important;
    color:var(--footer-gold-2)!important;
    font-size:11px!important;
    font-weight:800!important;
    letter-spacing:.14em!important;
    line-height:1!important;
    text-decoration:none!important;
    text-transform:uppercase!important;
    box-shadow:0 14px 34px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.035)!important;
    backdrop-filter:blur(12px)!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-open:hover{
    color:#fff!important;
    border-color:rgba(224,187,104,.86)!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-marker,
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-card,
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-label,
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-road,
.site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-highway{
    display:none!important;
}
.site-footer--premium-map .site-footer__copyright{
    text-align:left!important;
    justify-self:start!important;
}
.site-footer--premium-map .site-footer__credit{
    text-align:right!important;
    justify-self:end!important;
}

@media (max-width:640px){
    .site-footer--premium-map .site-footer__phone-feature a{
        justify-content:flex-start!important;
        font-size:17px!important;
    }
    .site-footer--premium-map .site-footer__socials{
        justify-content:flex-start!important;
    }
    .site-footer--premium-map .site-footer__map-panel--iframe{
        min-height:260px!important;
        border-radius:20px!important;
    }
    .site-footer--premium-map .site-footer__map-panel--iframe .site-footer__map-open{
        left:50%!important;
        transform:translateX(-50%)!important;
        white-space:nowrap!important;
    }
    .site-footer--premium-map .site-footer__legal-row{
        display:grid!important;
        grid-template-columns:1fr!important;
        justify-items:center!important;
        gap:.9rem!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__credit{
        max-width:320px!important;
        text-align:center!important;
        justify-self:center!important;
    }
    .site-footer--premium-map .site-footer__legal-links{
        justify-content:center!important;
        white-space:normal!important;
    }
}

/* Extasiz safe footer polish v1.6.2
   Keeps the real Google Maps iframe clean, removes the map CTA bubble,
   locks footer icons to inline SVG, and centers the responsive footer. */
.site-footer--premium-map .site-footer__icon svg,
.site-footer--premium-map .site-footer__social-icon svg{
    display:block!important;
    width:18px!important;
    height:18px!important;
}
.site-footer--premium-map .site-footer__icon{
    font-family:inherit!important;
    font-size:0!important;
}
.site-footer--premium-map .site-footer__phone-feature a{
    font-family:inherit!important;
    font-size:clamp(15px, .95vw, 17px)!important;
    font-weight:500!important;
    line-height:1.4!important;
    letter-spacing:0!important;
    white-space:normal!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe{
    border:1px solid rgba(201,162,75,.18)!important;
    border-radius:22px!important;
    background:#071523!important;
    box-shadow:0 22px 56px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.site-footer--premium-map .site-footer__map-panel--iframe iframe{
    filter:none!important;
    opacity:1!important;
}
.site-footer--premium-map .site-footer__map-panel::before,
.site-footer--premium-map .site-footer__map-panel::after,
.site-footer--premium-map .site-footer__map-panel--iframe::before,
.site-footer--premium-map .site-footer__map-panel--iframe::after{
    content:none!important;
    display:none!important;
}
.site-footer--premium-map .site-footer__map-open{
    display:none!important;
}

@media (max-width:640px){
    .site-footer--premium-map .site-footer__inner{
        text-align:center!important;
        justify-items:center!important;
    }
    .site-footer--premium-map .site-footer__brand,
    .site-footer--premium-map .site-footer__nav,
    .site-footer--premium-map .site-footer__practice,
    .site-footer--premium-map .site-footer__contact,
    .site-footer--premium-map .site-footer__office,
    .site-footer--premium-map .site-footer__map{
        width:100%!important;
        text-align:center!important;
        justify-self:center!important;
    }
    .site-footer--premium-map .site-footer__brand{
        display:grid!important;
        justify-items:center!important;
        padding-right:0!important;
        border-right:0!important;
    }
    .site-footer--premium-map .site-footer__logo,
    .site-footer--premium-map .site-footer__socials,
    .site-footer--premium-map .site-footer__menu{
        justify-content:center!important;
        justify-items:center!important;
        margin-inline:auto!important;
    }
    .site-footer--premium-map .site-footer__brand p,
    .site-footer--premium-map .site-footer__phone-note,
    .site-footer--premium-map .site-footer__disclaimer,
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__credit{
        margin-left:auto!important;
        margin-right:auto!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__label{
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__label::after{
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .site-footer--premium-map .site-footer__phone-feature{
        display:grid!important;
        justify-items:center!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__phone-feature a{
        justify-content:center!important;
        font-size:16px!important;
    }
    .site-footer--premium-map .site-footer__socials{
        display:flex!important;
    }
    .site-footer--premium-map .site-footer__contact-row,
    .site-footer--premium-map .site-footer__office-row{
        display:inline-grid!important;
        grid-template-columns:42px auto!important;
        justify-content:center!important;
        justify-items:start!important;
        align-items:center!important;
        margin-left:auto!important;
        margin-right:auto!important;
        text-align:left!important;
    }
    .site-footer--premium-map .site-footer__office address{
        text-align:left!important;
    }
    .site-footer--premium-map .site-footer__map-panel--iframe{
        min-height:260px!important;
        border-radius:20px!important;
    }
    .site-footer--premium-map .site-footer__legal-row{
        display:grid!important;
        grid-template-columns:1fr!important;
        justify-items:center!important;
        gap:.9rem!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__legal-links{
        justify-content:center!important;
        white-space:normal!important;
    }
}

/* Extasiz footer responsive alignment v1.6.3
   Keeps the real Google Maps iframe clean, removes decorative contact/office icons on responsive sizes,
   and centers the footer for phone and iPad vertical layouts. */
@media (max-width:1100px){
    .site-footer--premium-map .site-footer__inner{
        justify-items:center!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__brand,
    .site-footer--premium-map .site-footer__nav,
    .site-footer--premium-map .site-footer__practice,
    .site-footer--premium-map .site-footer__contact,
    .site-footer--premium-map .site-footer__office,
    .site-footer--premium-map .site-footer__map{
        width:100%!important;
        max-width:720px!important;
        justify-self:center!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__brand{
        display:grid!important;
        justify-items:center!important;
        padding-right:0!important;
        border-right:0!important;
    }
    .site-footer--premium-map .site-footer__logo,
    .site-footer--premium-map .site-footer__socials{
        justify-content:center!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .site-footer--premium-map .site-footer__brand p,
    .site-footer--premium-map .site-footer__phone-note,
    .site-footer--premium-map .site-footer__disclaimer,
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__credit{
        margin-left:auto!important;
        margin-right:auto!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__label{
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__label::after{
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .site-footer--premium-map .site-footer__menu{
        justify-items:center!important;
    }
    .site-footer--premium-map .site-footer__phone-feature{
        display:grid!important;
        justify-items:center!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__phone-feature a{
        justify-content:center!important;
    }
    .site-footer--premium-map .site-footer__contact .site-footer__icon,
    .site-footer--premium-map .site-footer__office .site-footer__icon{
        display:none!important;
    }
    .site-footer--premium-map .site-footer__contact-row,
    .site-footer--premium-map .site-footer__office-row{
        display:block!important;
        width:max-content!important;
        max-width:100%!important;
        margin-left:auto!important;
        margin-right:auto!important;
        text-align:center!important;
        color:var(--footer-text)!important;
    }
    .site-footer--premium-map .site-footer__office address,
    .site-footer--premium-map .site-footer__contact-row span:last-child{
        display:block!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__legal-row{
        display:grid!important;
        grid-template-columns:1fr!important;
        justify-items:center!important;
        gap:.85rem!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__credit{
        max-width:360px!important;
        justify-self:center!important;
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__legal-links{
        justify-content:center!important;
    }
}

@media (max-width:640px){
    .site-footer--premium-map .site-footer__inner{
        gap:2.15rem!important;
    }
    .site-footer--premium-map .site-footer__nav,
    .site-footer--premium-map .site-footer__practice,
    .site-footer--premium-map .site-footer__contact,
    .site-footer--premium-map .site-footer__office{
        border-top:1px solid rgba(201,162,75,.12)!important;
        padding-top:1.8rem!important;
    }
    .site-footer--premium-map .site-footer__contact-row,
    .site-footer--premium-map .site-footer__office-row{
        width:100%!important;
    }
    .site-footer--premium-map .site-footer__map-panel--iframe{
        min-height:280px!important;
    }
    .site-footer--premium-map .site-footer__copyright{
        display:block!important;
        width:100%!important;
        text-align:center!important;
    }
}


/* Extasiz footer/tablet polish + softer mobile menu motion v1.6.4
   Small surgical fixes: center legal row on tablet/iPad and slow menu open/close slightly. */
@media (max-width:1100px){
    .site-footer--premium-map .site-footer__bottom,
    .site-footer--premium-map .site-footer__legal-row,
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__legal-links,
    .site-footer--premium-map .site-footer__credit{
        text-align:center!important;
    }
    .site-footer--premium-map .site-footer__legal-row{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        grid-template-columns:1fr!important;
        gap:.9rem!important;
        width:100%!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .site-footer--premium-map .site-footer__copyright,
    .site-footer--premium-map .site-footer__credit{
        display:block!important;
        width:100%!important;
        max-width:none!important;
        margin-left:auto!important;
        margin-right:auto!important;
        justify-self:center!important;
        align-self:center!important;
    }
    .site-footer--premium-map .site-footer__legal-links{
        width:100%!important;
        justify-content:center!important;
        justify-self:center!important;
    }
}
@media (max-width:960px){
    .site-header__navigation{
        transition:opacity 520ms var(--ease-ui), transform 520ms var(--ease-ui), visibility 520ms var(--ease-ui)!important;
    }
    .site-menu-toggle{
        transition:background 340ms var(--ease-ui), border-color 340ms var(--ease-ui), transform 340ms var(--ease-ui)!important;
    }
    .site-menu-toggle span{
        transition:transform 300ms var(--ease-ui), top 300ms var(--ease-ui), opacity 300ms var(--ease-ui)!important;
    }
    .site-header.is-menu-open .site-nav__menu li{
        animation-duration:520ms!important;
    }
}


/* Fight My Injury header navigation refinement v1.6.5
   English-only utility bar + centered quick-contact actions + curated hub dropdowns. */
.site-utility__inner{
    justify-content:center!important;
}
.site-utility__links{
    width:100%;
    justify-content:center;
}

@media (min-width:961px){
    .site-nav__item--has-submenu{
        position:relative;
    }
    .site-nav__item--has-submenu>a{
        display:inline-flex;
        align-items:center;
        gap:7px;
    }
    .site-nav__chevron{
        width:6px;
        height:6px;
        margin-top:-3px;
        border-right:1.5px solid currentColor;
        border-bottom:1.5px solid currentColor;
        transform:rotate(45deg);
        transition:transform 220ms var(--ease-ui);
    }
    .site-nav__submenu{
        position:absolute;
        top:calc(100% + 17px);
        left:50%;
        z-index:120;
        width:max-content;
        min-width:260px;
        max-width:320px;
        margin:0;
        padding:10px 0 8px;
        list-style:none;
        border:1px solid rgba(14,28,48,.12);
        border-top:3px solid var(--c-gold);
        background:rgba(251,248,241,.985);
        box-shadow:0 22px 52px rgba(9,20,35,.18);
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transform:translate(-50%,8px);
        transition:opacity 190ms var(--ease-ui), transform 190ms var(--ease-ui), visibility 190ms var(--ease-ui);
    }
    .site-nav__submenu::before{
        content:"";
        position:absolute;
        left:0;
        right:0;
        bottom:100%;
        height:20px;
    }
    .site-nav__item--has-submenu:hover>.site-nav__submenu,
    .site-nav__item--has-submenu:focus-within>.site-nav__submenu,
    .site-nav__item--has-submenu.is-desktop-open>.site-nav__submenu{
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:translate(-50%,0);
    }
    .site-nav__item--has-submenu:hover>a .site-nav__chevron,
    .site-nav__item--has-submenu:focus-within>a .site-nav__chevron{
        transform:rotate(225deg) translate(-1px,-1px);
    }
    .site-nav__submenu li{
        display:block;
        border:0;
    }
    .site-nav__submenu a{
        display:flex;
        align-items:center;
        justify-content:space-between;
        width:100%;
        padding:10px 18px;
        color:var(--c-navy)!important;
        font-size:11.5px!important;
        font-weight:650!important;
        line-height:1.25;
        letter-spacing:.045em!important;
        text-transform:uppercase;
        white-space:nowrap;
        transition:background 180ms var(--ease-ui), color 180ms var(--ease-ui), padding 180ms var(--ease-ui);
    }
    .site-nav__submenu a::after{
        display:none!important;
    }
    .site-nav__submenu a:hover,
    .site-nav__submenu a:focus{
        padding-left:22px;
        background:rgba(194,160,83,.10);
        color:var(--c-navy)!important;
    }
    .site-nav__submenu-all{
        margin-top:6px;
        padding-top:6px;
        border-top:1px solid rgba(14,28,48,.11)!important;
    }
    .site-nav__submenu-all a{
        color:#98762f!important;
        font-weight:750!important;
    }
}

@media (max-width:960px){
    .site-nav__item--has-submenu{
        display:block!important;
    }
    .site-nav__item--has-submenu>a{
        display:flex!important;
        align-items:center;
        justify-content:space-between;
        gap:16px;
    }
    .site-nav__chevron{
        flex:0 0 auto;
        width:8px;
        height:8px;
        margin-right:4px;
        border-right:1.5px solid var(--c-gold);
        border-bottom:1.5px solid var(--c-gold);
        transform:rotate(45deg);
    }
    .site-nav__submenu{
        display:grid;
        gap:0;
        width:100%;
        margin:0 0 8px;
        padding:0 0 7px 18px;
        list-style:none;
        border-left:1px solid rgba(194,160,83,.42);
    }
    .site-nav__submenu li{
        border-bottom:1px solid rgba(14,28,48,.08)!important;
    }
    .site-nav__submenu li:last-child{
        border-bottom:0!important;
    }
    .site-nav__submenu a{
        padding:10px 0!important;
        color:#40516a!important;
        font-family:var(--font-display);
        font-size:11.5px!important;
        font-weight:650!important;
        line-height:1.35!important;
        letter-spacing:.075em!important;
        text-transform:uppercase;
    }
    .site-nav__submenu a::after{
        display:none!important;
    }
    .site-nav__submenu-all a{
        color:#9b7934!important;
        font-weight:750!important;
    }
}

@media (max-width:720px){
    .site-utility__inner{
        align-items:center;
    }
    .site-utility__links{
        justify-content:center!important;
    }
}

/* Fight My Injury desktop mega-menu + closed mobile accordions v1.6.7
   Header navigation only. Desktop uses wide editorial mega panels; mobile keeps
   the existing simple list but submenu groups start collapsed. */
@media (min-width:961px){
    .site-header{
        overflow:visible;
    }
    .site-header__navigation,
    .site-nav,
    .site-nav__menu,
    .site-nav__item--has-submenu{
        position:static!important;
    }
    .site-nav__parent-row{
        position:relative;
        display:flex;
        align-items:center;
    }
    /* Invisible hover bridge between the centered nav label and the mega panel.
       This removes the dead zone that could close the menu while moving the
       pointer from the top-level item into a mega-menu link. */
    .site-nav__item--has-submenu>.site-nav__parent-row::after{
        content:"";
        position:absolute;
        top:100%;
        left:-14px;
        right:-14px;
        height:48px;
        z-index:139;
        background:transparent;
    }
    .site-nav__submenu-toggle{
        display:none!important;
    }
    .site-nav__item--has-submenu>.site-nav__parent-row>a{
        display:inline-flex;
        align-items:center;
        gap:8px;
    }
    .site-nav__chevron--desktop{
        display:inline-block;
    }
    .site-nav__submenu{
        position:absolute!important;
        top:100%!important;
        left:50%!important;
        right:auto!important;
        z-index:140!important;
        display:grid!important;
        width:min(1180px,calc(100vw - 48px))!important;
        min-width:0!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        list-style:none!important;
        overflow:hidden;
        border:1px solid rgba(14,28,48,.12)!important;
        border-top:4px solid var(--c-gold)!important;
        background:#fbf8f1!important;
        box-shadow:0 28px 72px rgba(7,21,35,.20)!important;
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transform:translate(-50%,12px)!important;
        transition:opacity 220ms var(--ease-ui),transform 260ms var(--ease-ui),visibility 220ms var(--ease-ui)!important;
    }
    .site-nav__submenu::before{
        content:"";
        position:absolute;
        left:0;
        right:0;
        bottom:100%;
        height:12px;
    }
    .site-nav__item--has-submenu:hover>.site-nav__submenu,
    .site-nav__item--has-submenu:focus-within>.site-nav__submenu{
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:translate(-50%,0)!important;
    }
    .site-nav__submenu--practice{
        grid-template-columns:minmax(250px,1.12fr) repeat(3,minmax(190px,1fr))!important;
    }
    .site-nav__submenu--locations{
        grid-template-columns:minmax(270px,1.05fr) repeat(2,minmax(240px,1fr))!important;
    }
    .site-nav__submenu--attorneys{
        grid-template-columns:minmax(270px,1.05fr) repeat(3,minmax(200px,1fr))!important;
    }
    .site-nav__mega-intro{
        display:flex!important;
        flex-direction:column;
        align-items:flex-start;
        justify-content:flex-end;
        min-height:100%;
        padding:34px 32px!important;
        border:0!important;
        background:
            linear-gradient(180deg,rgba(14,28,48,.04),rgba(14,28,48,.20)),
            #0e1c30!important;
        color:#fff;
    }
    .site-nav__submenu--practice .site-nav__mega-intro{
        grid-row:span 3;
    }
    .site-nav__submenu--locations .site-nav__mega-intro{
        grid-row:span 2;
    }
    .site-nav__submenu--attorneys .site-nav__mega-intro{
        grid-row:span 1;
    }
    .site-nav__mega-kicker{
        display:block;
        margin-bottom:16px;
        color:var(--c-gold);
        font-size:10px;
        font-weight:700;
        line-height:1.2;
        letter-spacing:.22em;
        text-transform:uppercase;
    }
    .site-nav__mega-intro>strong{
        display:block;
        max-width:260px;
        color:#fff;
        font-size:clamp(21px,1.55vw,27px);
        font-weight:800;
        line-height:1.02;
        letter-spacing:-.025em;
        text-transform:uppercase;
    }
    .site-nav__mega-intro>p{
        max-width:270px;
        margin:16px 0 24px;
        color:#b6c1cf;
        font-size:13px;
        font-weight:300;
        line-height:1.55;
    }
    .site-nav__mega-view{
        display:inline-flex!important;
        align-items:center;
        gap:12px;
        padding:0!important;
        color:var(--c-gold)!important;
        font-size:10.5px!important;
        font-weight:750!important;
        letter-spacing:.09em!important;
        text-transform:uppercase!important;
    }
    .site-nav__mega-view:hover{
        color:#fff!important;
    }
    .site-nav__mega-link,
    .site-nav__submenu-all{
        display:block!important;
        min-width:0;
        border:0!important;
        border-right:1px solid rgba(14,28,48,.11)!important;
        border-bottom:1px solid rgba(14,28,48,.11)!important;
        background:#fbf8f1;
    }
    .site-nav__submenu--practice .site-nav__submenu-all{
        grid-column:span 2;
    }
    .site-nav__mega-link>a,
    .site-nav__submenu-all>a{
        position:relative;
        display:flex!important;
        flex-direction:column;
        align-items:flex-start!important;
        justify-content:center!important;
        width:100%;
        min-height:110px;
        padding:22px 50px 22px 24px!important;
        background:transparent!important;
        color:var(--c-navy)!important;
        white-space:normal!important;
        transition:background 220ms var(--ease-ui),padding 220ms var(--ease-ui)!important;
    }
    .site-nav__mega-link>a::after,
    .site-nav__submenu-all>a::after{
        display:none!important;
    }
    .site-nav__mega-link>a>span,
    .site-nav__submenu-all>a>span:first-child{
        color:var(--c-navy);
        font-size:12px;
        font-weight:750;
        line-height:1.2;
        letter-spacing:.055em;
        text-transform:uppercase;
    }
    .site-nav__mega-link>a>small{
        display:block;
        max-width:230px;
        margin-top:8px;
        color:#66758a;
        font-size:11.5px;
        font-weight:300;
        line-height:1.45;
        letter-spacing:0;
        text-transform:none;
    }
    .site-nav__mega-link>a>i,
    .site-nav__submenu-all>a>i{
        position:absolute;
        top:50%;
        right:22px;
        color:var(--c-gold);
        font-size:17px;
        font-style:normal;
        transform:translateY(-50%);
        transition:transform 220ms var(--ease-ui);
    }
    .site-nav__mega-link>a:hover,
    .site-nav__mega-link>a:focus{
        padding-left:28px!important;
        background:#fff!important;
    }
    .site-nav__mega-link>a:hover>i,
    .site-nav__mega-link>a:focus>i,
    .site-nav__submenu-all>a:hover>i,
    .site-nav__submenu-all>a:focus>i{
        transform:translate(4px,-50%);
    }
    .site-nav__submenu-all{
        margin:0!important;
        padding:0!important;
        border-top:0!important;
        background:rgba(194,160,83,.10)!important;
    }
    .site-nav__submenu-all>a{
        color:#8c6c2b!important;
    }
    .site-nav__submenu-all>a:hover,
    .site-nav__submenu-all>a:focus{
        background:rgba(194,160,83,.17)!important;
        padding-left:28px!important;
    }
}

@media (max-width:960px){
    .site-nav__item--has-submenu{
        display:block!important;
    }
    .site-nav__parent-row{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) 52px;
        align-items:center;
        width:100%;
        border-bottom:1px solid rgba(14,28,48,.12);
    }
    .site-nav__parent-row>a{
        min-width:0;
        border-bottom:0!important;
    }
    .site-nav__chevron--desktop{
        display:none!important;
    }
    .site-nav__submenu-toggle{
        display:grid!important;
        place-items:center;
        width:52px;
        height:52px;
        padding:0;
        border:0;
        background:transparent;
        color:var(--c-gold);
        cursor:pointer;
    }
    .site-nav__submenu-toggle .site-nav__chevron{
        width:9px;
        height:9px;
        margin:0;
        border-right:1.5px solid currentColor;
        border-bottom:1.5px solid currentColor;
        transform:rotate(45deg) translate(-2px,-2px);
        transition:transform 280ms var(--ease-ui);
    }
    .site-nav__item--has-submenu.is-submenu-open .site-nav__submenu-toggle .site-nav__chevron{
        transform:rotate(225deg) translate(-1px,-1px);
    }
    .site-nav__submenu{
        display:block!important;
        width:100%!important;
        max-height:0;
        margin:0!important;
        padding:0 0 0 18px!important;
        overflow:hidden;
        border:0!important;
        border-left:1px solid rgba(194,160,83,.42)!important;
        opacity:0;
        visibility:hidden;
        transition:max-height 420ms var(--ease-ui),opacity 260ms var(--ease-ui),visibility 260ms var(--ease-ui),padding 420ms var(--ease-ui)!important;
    }
    .site-nav__item--has-submenu.is-submenu-open>.site-nav__submenu{
        max-height:720px;
        padding:6px 0 10px 18px!important;
        opacity:1;
        visibility:visible;
    }
    .site-nav__mega-intro{
        display:none!important;
    }
    .site-nav__mega-link,
    .site-nav__submenu-all{
        display:block!important;
        border-bottom:1px solid rgba(14,28,48,.08)!important;
    }
    .site-nav__mega-link>a,
    .site-nav__submenu-all>a{
        position:relative;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        width:100%;
        min-height:0!important;
        padding:11px 34px 11px 0!important;
        color:#40516a!important;
        font-family:var(--font-display);
        font-size:11.5px!important;
        font-weight:650!important;
        line-height:1.35!important;
        letter-spacing:.075em!important;
        text-transform:uppercase!important;
    }
    .site-nav__mega-link>a::after,
    .site-nav__submenu-all>a::after{
        display:none!important;
    }
    .site-nav__mega-link>a>small,
    .site-nav__mega-link>a>i,
    .site-nav__submenu-all>a>i{
        display:none!important;
    }
    .site-nav__submenu-all{
        border-bottom:0!important;
    }
    .site-nav__submenu-all>a{
        color:#9b7934!important;
        font-weight:750!important;
    }
    .site-header.is-menu-open .site-nav__submenu li{
        animation:none!important;
    }
}

/* v1.6.7 final nav micro-polish */
@media (min-width:961px){
    .site-nav__mega-view{display:none!important}
    .site-nav__item--has-submenu:hover>.site-nav__parent-row>a .site-nav__chevron--desktop,
    .site-nav__item--has-submenu:focus-within>.site-nav__parent-row>a .site-nav__chevron--desktop,
    .site-nav__item--has-submenu.is-desktop-open>.site-nav__parent-row>a .site-nav__chevron--desktop{
        transform:rotate(225deg) translate(-1px,-1px);
    }
}
@media (max-width:960px){
    .site-nav__item--has-submenu{border-bottom:1px solid rgba(14,28,48,.12)!important}
    .site-nav__parent-row{border-bottom:0!important}
}


/* v1.6.7 desktop mega-menu hover bridge / hover-intent support.
   Header navigation only; no visual or mobile layout changes. */
@media (min-width:961px){
    .site-nav__item--has-submenu.is-desktop-open>.site-nav__submenu{
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:translate(-50%,0)!important;
    }
}


/* Extasiz header quick-contact cleanup v1.6.8
   Keep only Call, Text and phone in the utility bar. On phones the dock now
   prioritizes Text, Call and Free Case Review instead of Email/Chat. */
@media (max-width:640px){
    .site-mobile-dock__case{
        padding-inline:8px!important;
        line-height:1.15;
        text-align:center;
    }
}

/* Extasiz header quick-contact spacing v1.6.9
   Give Call, Text and the phone number clearer separation, with larger touch
   targets on responsive layouts. Utility bar only. */
.site-utility__links{
    gap:clamp(1.1rem,2.35vw,2rem)!important;
}
.site-utility__links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
}
@media (max-width:960px){
    .site-utility__links{
        gap:18px!important;
    }
    .site-utility__links a{
        min-width:44px;
        min-height:36px;
        padding-inline:3px;
    }
    .site-utility__phone{
        min-width:auto!important;
        padding-inline:5px;
    }
    .site-utility__sep{
        margin-inline:2px!important;
    }
}
@media (max-width:420px){
    .site-utility__links{
        gap:16px!important;
    }
}


/* Caso Peleado one-page identity */
html{scroll-behavior:smooth}
.site-logo__text{display:inline-flex;align-items:baseline;gap:.28em;font-family:inherit;font-size:clamp(18px,2vw,26px);line-height:1;letter-spacing:.02em;color:#fff;white-space:nowrap}
.site-logo__text strong{font-weight:800}
.site-logo__text em{font-style:normal;font-weight:300;letter-spacing:.08em}
.site-logo__text--footer{font-size:clamp(24px,2.6vw,34px)}
section[id]{scroll-margin-top:120px}


/* ============================================================
   Caso Peleado v1.1.0 — one-page header/footer polish
   Final overrides intentionally live last to neutralize legacy FMI rules.
============================================================ */
:root{--header-height:78px}
.site-utility{background:#081523!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
.site-utility__inner{min-height:34px!important;justify-content:flex-end!important}
.site-utility__links{gap:22px!important}
.site-utility__links a{min-height:34px!important;font-size:11px!important;letter-spacing:.1em!important;color:#b7c3d2!important}
.site-utility__phone{color:#fff!important;font-weight:700!important}
.site-header{background:rgba(248,246,240,.94)!important;border-bottom:1px solid rgba(14,28,48,.11)!important;box-shadow:0 10px 30px rgba(11,17,24,.035)!important}
.site-header__inner{min-height:78px!important;gap:1.5rem!important}
.site-logo{min-height:48px!important;color:#0e1c30!important}
.site-logo__text{font-size:clamp(22px,2.15vw,30px)!important;color:#0e1c30!important;gap:.22em!important;letter-spacing:-.025em!important}
.site-logo__text strong{font-weight:900!important;letter-spacing:-.04em!important}
.site-logo__text em{color:#b58c32!important;font-weight:500!important;letter-spacing:.035em!important}
.site-logo__custom img,.site-logo img{max-height:52px!important}
.site-header__navigation{gap:clamp(.9rem,1.8vw,1.55rem)!important}
.site-nav__menu{gap:clamp(.85rem,1.75vw,1.6rem)!important}
.site-nav__menu a{font-size:11.5px!important;letter-spacing:.065em!important;font-weight:700!important;color:#1c3048!important}
.site-header__cta{min-height:46px!important;padding:13px 19px!important;background:#0e1c30!important;color:#fff!important;border:1px solid #0e1c30!important;letter-spacing:.055em!important}
.site-header__cta:hover{background:#c2a053!important;color:#0e1c30!important;border-color:#c2a053!important}
.site-menu-toggle{color:#0e1c30!important}

/* compact footer sized for a one-page campaign/home hybrid */
.site-footer{background:var(--site-footer-bg,#071523)!important;border-top:1px solid rgba(194,160,83,.32)!important}
.site-footer__grid{display:grid!important;grid-template-columns:1.35fr .72fr .78fr .9fr!important;gap:clamp(2rem,4vw,4.25rem)!important;padding:clamp(3rem,5vw,4rem) 0 2.7rem!important;align-items:start!important}
.site-footer__brand p{max-width:360px!important;margin:16px 0 0!important;color:#9aa9ba!important;font-size:13.5px!important;line-height:1.7!important}
.site-footer__logo{font-size:clamp(1.45rem,2.5vw,2rem)!important}
.site-logo__text--footer{color:#fff!important;font-size:clamp(25px,2.8vw,36px)!important}
.site-logo__text--footer em{color:#c2a053!important}
.site-footer__label{margin:4px 0 16px!important;color:#cdb26f!important;font-size:10.5px!important;letter-spacing:.16em!important}
.site-footer__menu{gap:9px!important}
.site-footer__menu a,.site-footer__contact-row,.site-footer__office-row{color:#a9b6c5!important;font-size:13px!important;line-height:1.5!important;text-decoration:none!important}
.site-footer__contact,.site-footer__office{display:grid!important;gap:10px!important;align-content:start!important}
.site-footer__contact-row,.site-footer__office-row{display:flex!important;gap:10px!important;align-items:flex-start!important}
.site-footer__office address{margin:0!important;font-style:normal!important}
.site-footer__bottom{display:block!important;padding:20px 0 24px!important;border-top:1px solid rgba(255,255,255,.09)!important;color:#718095!important;font-size:10.5px!important}
.site-footer__disclaimer{max-width:980px!important;line-height:1.55!important}
.site-footer__legal-row{display:flex!important;justify-content:space-between!important;gap:20px!important;margin-top:12px!important}
.site-footer__credit a{color:#aab6c5!important}

@media(max-width:1080px){
  .site-nav__menu a{font-size:10.5px!important}
  .site-footer__grid{grid-template-columns:1.25fr 1fr 1fr!important}
  .site-footer__office{grid-column:2 / 4!important}
}
@media(max-width:960px){
  :root{--header-height:70px}
  .site-utility{display:none!important}
  .site-header__inner{min-height:70px!important}
  .site-logo__text{font-size:23px!important}
  .site-header__navigation{background:linear-gradient(145deg,#f8f5ed 0%,#f1eadc 100%)!important}
  .site-nav__menu{gap:.55rem!important}
  .site-nav__menu a{color:#0e1c30!important;font-size:clamp(1.8rem,8.8vw,3.4rem)!important;line-height:1!important}
  .site-header__cta{width:min(100%,360px)!important}
  .site-footer__grid{grid-template-columns:1fr 1fr!important}
  .site-footer__brand{grid-column:1 / -1!important}
  .site-footer__office{grid-column:auto!important}
}
@media(max-width:640px){
  .site-footer__grid{grid-template-columns:1fr!important;gap:26px!important;padding:42px 0 30px!important}
  .site-footer__legal-row{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .site-footer__brand p{max-width:100%!important}
  .site-mobile-dock{z-index:95!important}
}

/* Caso Peleado v1.1.1 — footer logo size follows Customizer px exactly */
.site-footer .site-footer__logo img,
.site-footer--premium-map .site-footer__logo img{
    height:var(--site-footer-logo-height, 92px)!important;
    max-height:none!important;
    width:auto!important;
    max-width:none!important;
    object-fit:contain;
}


/* Caso Peleado refinement v1.1.2 — sophisticated mobile menu, configurable glass header, centered mobile footer + office map */
.site-header{
    background:rgba(var(--site-header-rgb,245,241,232),var(--site-header-opacity,.88)) !important;
    -webkit-backdrop-filter:blur(var(--site-header-blur,14px));
    backdrop-filter:blur(var(--site-header-blur,14px));
}

.site-footer__grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(240px,1.15fr) minmax(150px,.72fr) minmax(190px,.82fr) minmax(210px,.9fr);
    gap:clamp(2rem,4vw,4rem);
    padding:clamp(3.5rem,6vw,5rem) 0 clamp(2.6rem,5vw,3.8rem);
    border-bottom:1px solid rgba(194,160,83,.18);
}
.site-footer__brand,.site-footer__nav,.site-footer__contact,.site-footer__office{min-width:0}
.site-footer__office-row,
.site-footer__contact-row{
    display:flex;
    gap:.65rem;
    align-items:flex-start;
    color:#aeb8c5;
    font-size:14px;
    font-weight:300;
    line-height:1.65;
    text-decoration:none;
}
.site-footer__office-row address{margin:0;font-style:normal}
.site-footer__office-row:hover,.site-footer__contact-row:hover{color:#fff}
.site-footer__logo img{
    max-height:var(--site-footer-logo-height,82px) !important;
    max-width:none !important;
    width:auto !important;
    height:var(--site-footer-logo-height,82px) !important;
}
.site-footer__map{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(210px,.38fr) minmax(0,1.62fr);
    gap:clamp(1.5rem,4vw,3.5rem);
    align-items:center;
    padding:clamp(2.4rem,4.5vw,3.8rem) 0;
    border-bottom:1px solid rgba(194,160,83,.18);
}
.site-footer__map-copy p:not(.site-footer__label){
    max-width:360px;
    margin:.2rem 0 0;
    color:#aeb8c5;
    font-size:14px;
    line-height:1.7;
}
.site-footer__map-frame{
    min-height:250px;
    border-radius:2px;
}

@media (max-width:960px){
    .site-header__navigation{
        justify-content:flex-start !important;
        padding:calc(var(--header-height) + 2.25rem) clamp(28px,7vw,54px) 2.25rem !important;
        background:
            radial-gradient(circle at 12% 4%,rgba(194,160,83,.11),transparent 22rem),
            linear-gradient(180deg,#f8f5ed 0%,#f3eee3 100%) !important;
        text-align:left !important;
    }
    .site-nav{
        width:min(100%,560px) !important;
        margin:0 !important;
    }
    .site-nav__menu{
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:0 !important;
        text-align:left !important;
    }
    .site-nav__menu li{
        position:relative;
        justify-content:flex-start !important;
        border-bottom:1px solid rgba(14,28,48,.12) !important;
    }
    .site-nav__menu li:first-child{border-top:1px solid rgba(14,28,48,.12)}
    .site-nav__menu a{
        display:flex !important;
        align-items:center;
        justify-content:space-between;
        width:100% !important;
        min-height:66px;
        padding:18px 0 !important;
        color:var(--c-navy) !important;
        font-family:var(--font-display);
        font-size:clamp(18px,4.6vw,26px) !important;
        font-weight:650 !important;
        line-height:1.08 !important;
        letter-spacing:.095em !important;
        text-align:left !important;
        text-transform:uppercase;
        white-space:normal;
        overflow-wrap:normal;
    }
    .site-nav__menu a::after{
        content:"↗" !important;
        position:static !important;
        display:block !important;
        width:auto !important;
        height:auto !important;
        margin-left:1rem;
        background:none !important;
        color:var(--c-gold);
        font-size:.72em;
        font-weight:400;
        opacity:.65;
        transform:none !important;
    }
    .site-nav__menu a:hover{color:var(--c-gold) !important}
    .site-header__navigation .site-header__cta{
        width:min(100%,560px) !important;
        min-height:54px;
        margin:1.2rem 0 0 !important;
        background:var(--c-navy) !important;
        color:#fff !important;
        font-size:12px;
        letter-spacing:.14em;
    }
    .site-header.is-menu-open .site-menu-toggle{
        color:var(--c-navy) !important;
        background:rgba(14,28,48,.035) !important;
        border-color:rgba(14,28,48,.12) !important;
    }

    .site-footer__grid{
        grid-template-columns:1fr 1fr;
        gap:2.5rem 2rem;
    }
    .site-footer__map{grid-template-columns:1fr}
    .site-footer__map-copy p:not(.site-footer__label){max-width:520px}
}

@media (max-width:720px){
    .site-header__navigation{
        padding:calc(var(--header-height) + 1.75rem) 28px 2rem !important;
    }
    .site-nav__menu a{
        min-height:58px;
        padding:15px 0 !important;
        font-size:clamp(17px,5.5vw,22px) !important;
        letter-spacing:.085em !important;
    }
    .site-header__navigation .site-header__cta{margin-top:1rem !important}

    .site-footer__grid,
    .site-footer__map,
    .site-footer__bottom{
        text-align:center;
    }
    .site-footer__grid{
        grid-template-columns:1fr;
        gap:2.25rem;
        padding-top:3rem;
    }
    .site-footer__brand,
    .site-footer__nav,
    .site-footer__contact,
    .site-footer__office,
    .site-footer__map-copy{
        display:flex;
        flex-direction:column;
        align-items:center;
    }
    .site-footer__brand p,
    .site-footer__map-copy p:not(.site-footer__label){
        margin-inline:auto;
        text-align:center;
    }
    .site-footer__menu{justify-items:center}
    .site-footer__menu a{text-align:center}
    .site-footer__contact-row,
    .site-footer__office-row{
        justify-content:center;
        text-align:center;
    }
    .site-footer__office-row address{text-align:center}
    .site-footer__label{text-align:center}
    .site-footer__map{gap:1.5rem}
    .site-footer__map-frame{width:100%;min-height:260px}
    .site-footer__directions{justify-content:center}
    .site-footer__bottom{justify-items:center}
    .site-footer__disclaimer{margin-inline:auto;text-align:center}
    .site-footer__legal-row{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:.55rem;
        text-align:center;
    }
    .site-footer__copyright{
        justify-content:center !important;
        text-align:center !important;
    }
    .site-footer__credit{text-align:center}
}

/* ============================================================
   Caso Peleado Theme v1.1.3 — header color controls + footer art
============================================================ */
.site-header .site-nav__menu a{
    color:var(--site-header-link, #0E1C30) !important;
}
.site-header .site-nav__menu a:hover,
.site-header .site-nav__menu a:focus-visible,
.site-header .site-nav__menu .current-menu-item > a{
    color:var(--site-header-link-hover, #C2A053) !important;
}
.site-header .site-header__cta{
    background:var(--site-header-cta-bg, #0E1C30) !important;
    color:var(--site-header-cta-text, #fff) !important;
    border-color:var(--site-header-cta-bg, #0E1C30) !important;
}
.site-header .site-header__cta:hover,
.site-header .site-header__cta:focus-visible{
    filter:brightness(1.08);
    color:var(--site-header-cta-text, #fff) !important;
}
.site-menu-toggle{
    color:var(--site-menu-icon, #0E1C30) !important;
}
.site-menu-toggle span{
    background:currentColor !important;
}
.site-header.is-menu-open .site-menu-toggle,
.site-menu-toggle[aria-expanded="true"]{
    color:var(--site-menu-icon, #0E1C30) !important;
}

/* Optional low-opacity image behind the footer. */
.site-footer{
    isolation:isolate;
}
.site-footer::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    background-image:var(--site-footer-bg-image, none);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    opacity:var(--site-footer-bg-image-opacity, .12);
}
.site-footer > *{
    position:relative;
    z-index:2;
}


/* Caso Peleado Theme v1.1.4 — reliable footer background artwork layer */
.site-footer{position:relative!important;isolation:isolate;}
.site-footer__background-art{
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}
.site-footer::before{z-index:1;}
.site-footer::after{
    z-index:1;
    background-image:none!important;
    opacity:1!important;
}
.site-footer > .container{position:relative;z-index:2;}


/* Caso Peleado Theme v1.1.6 — independent responsive menu palette */
@media (max-width: 960px) {
    .site-header .site-header__navigation{
        background-color:var(--mobile-menu-bg, #F5F1E8) !important;
        color:var(--mobile-menu-link, #0E1C30) !important;
    }
    .site-header .site-nav__menu > li{
        border-bottom-color:var(--mobile-menu-divider, #D8D1C2) !important;
    }
    .site-header .site-nav__menu a,
    .site-header .site-nav__menu a:visited{
        color:var(--mobile-menu-link, #0E1C30) !important;
    }
    .site-header .site-nav__menu a::after{
        color:var(--mobile-menu-arrow, #C2A053) !important;
    }
    .site-header .site-nav__menu a:hover,
    .site-header .site-nav__menu a:focus-visible,
    .site-header .site-nav__menu .current-menu-item > a{
        color:var(--mobile-menu-link-hover, #C2A053) !important;
    }
    .site-header .site-header__navigation .site-header__cta,
    .site-header .site-header__navigation .site-header__cta:visited{
        background:var(--mobile-menu-cta-bg, #0E1C30) !important;
        color:var(--mobile-menu-cta-text, #FFFFFF) !important;
        border-color:var(--mobile-menu-cta-bg, #0E1C30) !important;
    }
    .site-header .site-header__navigation .site-header__cta:hover,
    .site-header .site-header__navigation .site-header__cta:focus-visible{
        background:var(--mobile-menu-cta-bg, #0E1C30) !important;
        color:var(--mobile-menu-cta-text, #FFFFFF) !important;
        filter:brightness(.94);
    }
    .site-header .site-menu-toggle{
        color:var(--site-menu-icon, #0E1C30) !important;
    }
    .site-header.is-menu-open .site-menu-toggle,
    .site-header .site-menu-toggle[aria-expanded="true"]{
        color:var(--mobile-menu-close-icon, #0E1C30) !important;
        background:var(--mobile-menu-toggle-bg, #F5F1E8) !important;
        border-color:var(--mobile-menu-toggle-border, #D8D1C2) !important;
    }
    .site-header.is-menu-open .site-menu-toggle span,
    .site-header .site-menu-toggle[aria-expanded="true"] span{
        background:var(--mobile-menu-close-icon, #0E1C30) !important;
    }
}


/* ============================================================
   Caso Peleado Theme v1.1.7 — footer legal readability polish
============================================================ */
.site-footer__bottom{
    padding-top:2rem !important;
    padding-bottom:2rem !important;
}
.site-footer__disclaimer{
    font-size:15px !important;
    line-height:1.7 !important;
    color:rgba(255,255,255,.58) !important;
}
.site-footer__copyright,
.site-footer__credit{
    font-size:14px !important;
    line-height:1.6 !important;
    color:rgba(255,255,255,.58) !important;
}
.site-footer__credit a{
    color:#C9A548 !important;
    font-weight:700 !important;
    text-decoration:none !important;
}
.site-footer__credit a:hover,
.site-footer__credit a:focus-visible{
    color:#E0BD64 !important;
    text-decoration:underline !important;
    text-underline-offset:3px;
}
@media (max-width:720px){
    .site-footer__disclaimer{font-size:14px !important;}
    .site-footer__copyright,
    .site-footer__credit{font-size:13.5px !important;}
}
