/* ==========================================================
   AZZAM CENTER V2 — PHASE 1
   HEADER + HERO
========================================================== */

/* ---------- HEADER ---------- */

.az-header {
    position: fixed;
    top: 0;
    inset-inline: 0;
    z-index: 1000;
    min-height: 82px;
    display: flex;
    align-items: center;
    background: rgba(13, 12, 10, .78);
    border-bottom: 1px solid rgba(198, 162, 75, .14);
    backdrop-filter: blur(18px);
    transition:
        background .25s ease,
        box-shadow .25s ease,
        min-height .25s ease;
}

.az-header.is-scrolled {
    min-height: 72px;
    background: rgba(13, 12, 10, .94);
    box-shadow: 0 14px 38px rgba(0, 0, 0, .18);
}

.az-header-inner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 42px;
}

.az-brand {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: var(--az-white);
}

.az-brand-logo {
    width: 52px;
    height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 8px 18px rgba(198, 162, 75, .18));
}

.az-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1;
}

.az-brand-copy strong {
    color: var(--az-gold-light);
    font-size: 19px;
    font-weight: 800;
    letter-spacing: .08em;
}

.az-brand-copy span {
    margin-top: 6px;
    color: rgba(255, 255, 255, .54);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .13em;
}

.az-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 34px;
}

.az-nav a {
    position: relative;
    padding: 29px 0;
    color: rgba(255, 255, 255, .77);
    font-size: 13px;
    font-weight: 700;
    transition: color .2s ease;
}

.az-nav a::after {
    content: "";
    position: absolute;
    right: 50%;
    left: 50%;
    bottom: 20px;
    height: 2px;
    background: var(--az-gold);
    transition: right .2s ease, left .2s ease;
}

.az-nav a:hover,
.az-nav a.is-active {
    color: var(--az-gold-light);
}

.az-nav a:hover::after,
.az-nav a.is-active::after {
    right: 0;
    left: 0;
}

.az-header-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.az-theme-toggle,
.az-menu-toggle {
    border: 0;
}

.az-theme-toggle {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    color: var(--az-gold-light);
    border: 1px solid rgba(198, 162, 75, .16);
    border-radius: 12px;
    background: rgba(255, 255, 255, .025);
}

.az-login-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 18px;
    color: var(--az-black);
    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold),
        var(--az-gold-dark)
    );
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 12px;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 10px 26px rgba(198, 162, 75, .15);
}

.az-menu-toggle {
    width: 44px;
    height: 44px;
    display: none;
    place-items: center;
    padding: 10px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .035);
}

.az-menu-toggle span {
    width: 22px;
    height: 2px;
    display: block;
    margin: 3px auto;
    background: var(--az-gold-light);
    transition: transform .25s ease, opacity .25s ease;
}

/* ---------- HERO ---------- */

.az-hero {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
    display: flex;
    align-items: center;
    padding: 130px 0 72px;
    color: var(--az-white);
    background:
        radial-gradient(circle at 12% 20%, rgba(198, 162, 75, .11), transparent 30%),
        linear-gradient(130deg, #0d0c0a 0%, #15130f 52%, #211d18 100%);
}

.az-hero-bg,
.az-hero-overlay,
.az-hero-glow {
    position: absolute;
    pointer-events: none;
}

.az-hero-bg {
    z-index: -4;
    inset: 0;
}

.az-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .09;
    filter: grayscale(.45) contrast(1.08);
}

.az-hero-overlay {
    z-index: -3;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(13, 12, 10, .96) 0%,
            rgba(13, 12, 10, .80) 44%,
            rgba(13, 12, 10, .48) 100%
        );
}

.az-hero-glow {
    z-index: -2;
    border-radius: 50%;
    filter: blur(18px);
}

.az-hero-glow-one {
    width: 560px;
    height: 560px;
    top: -280px;
    right: 8%;
    background: rgba(198, 162, 75, .12);
}

.az-hero-glow-two {
    width: 480px;
    height: 480px;
    bottom: -300px;
    left: 8%;
    background: rgba(234, 211, 138, .06);
}

.az-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr);
    gap: clamp(40px, 6vw, 90px);
    align-items: center;
}

.az-hero-content {
    max-width: 650px;
}

.az-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
    color: var(--az-gold-light);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
}

.az-hero-eyebrow i {
    font-size: 10px;
}

.az-hero h1 {
    margin: 0;
    color: var(--az-white);
    font-size: clamp(50px, 5.4vw, 82px);
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -.035em;
}

.az-hero h1 span {
    display: block;
    margin-top: 7px;
    color: var(--az-gold-light);
}

.az-hero-lead {
    max-width: 590px;
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: clamp(14px, 1.2vw, 17px);
    line-height: 2;
}

.az-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 34px;
}

.az-hero-primary,
.az-hero-secondary {
    min-width: 180px;
    gap: 11px;
}

.az-hero-secondary {
    color: var(--az-gold-light);
    background: rgba(255, 255, 255, .018);
    border-color: rgba(198, 162, 75, .36);
}

.az-hero-trust {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: 44px;
}

.az-trust-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.az-trust-item strong {
    color: var(--az-gold-light);
    font-size: 13px;
    font-weight: 800;
}

.az-trust-item span {
    color: rgba(255, 255, 255, .48);
    font-size: 10px;
}

.az-trust-divider {
    width: 1px;
    height: 34px;
    background: rgba(198, 162, 75, .20);
}

.az-hero-visual {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.az-hero-image-wrap {
    position: relative;
    width: min(100%, 660px);
    height: 600px;
    overflow: hidden;
    border-radius: 38px 38px 150px 38px;
    box-shadow: 0 36px 90px rgba(0, 0, 0, .38);
}

.az-hero-image-wrap::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0;
    border: 1px solid rgba(234, 211, 138, .23);
    border-radius: inherit;
    pointer-events: none;
}

.az-hero-image-wrap::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(13, 12, 10, .46),
            transparent 40%
        );
}

.az-hero-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.01);
    filter: saturate(.88) contrast(1.05) brightness(.94);
}

.az-hero-badge {
    position: absolute;
    z-index: 4;
    right: -22px;
    bottom: 68px;
    min-width: 300px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 15px 18px;
    background: rgba(13, 12, 10, .84);
    border: 1px solid rgba(198, 162, 75, .30);
    border-radius: 16px;
    backdrop-filter: blur(14px);
    box-shadow: 0 22px 50px rgba(0, 0, 0, .28);
}

.az-badge-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    color: var(--az-black);
    background: linear-gradient(135deg, var(--az-gold-light), var(--az-gold));
    border-radius: 13px;
}

.az-hero-badge div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.az-hero-badge strong {
    color: var(--az-gold-light);
    font-size: 12px;
}

.az-hero-badge span {
    color: rgba(255, 255, 255, .56);
    font-size: 9px;
}

.az-hero-scroll {
    position: absolute;
    right: 24px;
    bottom: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .34);
    font-size: 7px;
    letter-spacing: .20em;
}

.az-hero-scroll i {
    width: 1px;
    height: 34px;
    background: linear-gradient(to bottom, var(--az-gold), transparent);
}

/* ---------- Placeholder sections ---------- */

.az-v2-test-section {
    min-height: 150px;
    display: grid;
    place-items: center;
    border-bottom: 1px solid rgba(198, 162, 75, .12);
    background: var(--az-white);
    color: var(--az-text);
    font-weight: 800;
}

/* ---------- Responsive ---------- */

@media (max-width: 1100px) {
    .az-header-inner {
        gap: 22px;
    }

    .az-nav {
        gap: 20px;
    }

    .az-nav a {
        font-size: 12px;
    }

    .az-hero-grid {
        grid-template-columns: 1fr 1fr;
    }

    .az-hero-visual {
        min-height: 540px;
    }

    .az-hero-image-wrap {
        height: 520px;
    }
}

@media (max-width: 900px) {
    .az-header {
        min-height: 72px;
    }

    .az-header-inner {
        grid-template-columns: auto 1fr auto;
    }

    .az-brand-copy {
        display: none;
    }

    .az-nav {
        position: fixed;
        top: 72px;
        right: 12px;
        left: 12px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 12px;
        background: rgba(13, 12, 10, .97);
        border: 1px solid rgba(198, 162, 75, .18);
        border-radius: 16px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, .35);
        opacity: 0;
        visibility: hidden;
        transform: translateY(-12px);
        transition: .22s ease;
    }

    .az-nav.is-open {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .az-nav a {
        padding: 14px 16px;
        border-radius: 10px;
    }

    .az-nav a::after {
        display: none;
    }

    .az-nav a:hover,
    .az-nav a.is-active {
        background: rgba(198, 162, 75, .08);
    }

    .az-menu-toggle {
        display: block;
    }

    .az-hero {
        min-height: auto;
        padding: 120px 0 64px;
    }

    .az-hero-grid {
        grid-template-columns: 1fr;
    }

    .az-hero-content {
        max-width: 700px;
        margin-inline: auto;
        text-align: center;
    }

    .az-hero-eyebrow,
    .az-hero-actions,
    .az-hero-trust {
        justify-content: center;
    }

    .az-hero-visual {
        min-height: 520px;
    }

    .az-hero-image-wrap {
        width: min(100%, 620px);
        height: 500px;
        border-radius: 34px;
    }

    .az-hero-badge {
        right: 50%;
        bottom: -18px;
        transform: translateX(50%);
    }
}

@media (max-width: 575px) {
    .az-container {
        width: min(100% - 24px, 1320px);
    }

    .az-header-actions {
        gap: 8px;
    }

    .az-theme-toggle {
        display: none;
    }

    .az-login-link {
        min-height: 40px;
        padding-inline: 13px;
        font-size: 10px;
    }

    .az-brand-logo {
        width: 43px;
        height: 43px;
    }

    .az-hero {
        padding-top: 104px;
    }

    .az-hero h1 {
        font-size: 42px;
    }

    .az-hero-lead {
        font-size: 13px;
    }

    .az-hero-actions {
        width: 100%;
    }

    .az-hero-primary,
    .az-hero-secondary {
        width: 100%;
    }

    .az-hero-trust {
        gap: 13px;
    }

    .az-trust-divider {
        height: 28px;
    }

    .az-hero-visual {
        min-height: 410px;
    }

    .az-hero-image-wrap {
        height: 390px;
        border-radius: 24px;
    }

    .az-hero-badge {
        width: calc(100% - 24px);
        min-width: 0;
        bottom: -22px;
    }

    .az-hero-scroll {
        display: none;
    }
}


/* ==========================================================
   V2 — STATS SECTION
========================================================== */

.az-stats-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 90% 10%, rgba(198, 162, 75, .07), transparent 28%),
        radial-gradient(circle at 8% 92%, rgba(198, 162, 75, .045), transparent 26%),
        var(--az-ivory);
}

.az-stats-section::before {
    content: "";
    position: absolute;
    top: 0;
    right: 8%;
    left: 8%;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(198, 162, 75, .34),
        transparent
    );
}

.az-stats-heading {
    position: relative;
    z-index: 2;
}

.az-stats-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.az-stat-card {
    min-height: 158px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 24px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .98),
            rgba(248, 245, 239, .98)
        );

    border: 1px solid rgba(198, 162, 75, .16);
    border-radius: 20px;

    box-shadow:
        0 14px 34px rgba(13, 12, 10, .075);

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease;
}

.az-stat-card::before {
    content: "";
    position: absolute;
    top: -80px;
    left: -80px;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: rgba(198, 162, 75, .06);
    transition: transform .35s ease;
}

.az-stat-card::after {
    content: "";
    position: absolute;
    right: 24px;
    bottom: 0;
    width: 54px;
    height: 2px;
    background: linear-gradient(
        90deg,
        var(--az-gold-dark),
        var(--az-gold-light)
    );
}

.az-stat-card:hover {
    transform: translateY(-6px);
    border-color: rgba(198, 162, 75, .34);
    box-shadow:
        0 24px 48px rgba(13, 12, 10, .12);
}

.az-stat-card:hover::before {
    transform: scale(1.22);
}

.az-stat-icon {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold),
            var(--az-gold-dark)
        );

    border-radius: 17px;

    box-shadow:
        0 12px 26px rgba(198, 162, 75, .18);
}

.az-stat-icon i {
    font-size: 20px;
}

.az-stat-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.az-stat-number {
    display: block;
    color: var(--az-text);
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1;
    font-weight: 800;
    letter-spacing: -.04em;
}

.az-stat-label {
    color: var(--az-text-soft);
    font-size: 12px;
    line-height: 1.6;
    font-weight: 700;
}

.az-stat-card-featured {
    color: var(--az-white);

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(198, 162, 75, .12),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            var(--az-dark),
            var(--az-dark-soft)
        );

    border-color: rgba(198, 162, 75, .28);

    box-shadow:
        0 20px 46px rgba(13, 12, 10, .18);
}

.az-stat-card-featured .az-stat-number {
    color: var(--az-gold-light);
}

.az-stat-card-featured .az-stat-label {
    color: rgba(255, 255, 255, .68);
}

.az-stat-card-featured::after {
    background: linear-gradient(
        90deg,
        var(--az-gold),
        var(--az-gold-light)
    );
}

.az-stats-signature {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;

    margin-top: 38px;

    color: var(--az-text-soft);
    text-align: center;
}

.az-stats-signature-line {
    width: min(120px, 10vw);
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(198, 162, 75, .52)
        );
}

.az-stats-signature-line:last-child {
    transform: scaleX(-1);
}

.az-stats-signature > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex-wrap: wrap;
}

.az-stats-signature i {
    color: var(--az-gold);
    font-size: 9px;
}

.az-stats-signature strong {
    color: var(--az-gold-dark);
    font-size: 11px;
    font-weight: 800;
}

.az-stats-signature small {
    width: 100%;
    color: rgba(27, 24, 20, .42);
    font-size: 7px;
    letter-spacing: .16em;
}

/* Reveal animation */
.az-stat-card {
    opacity: 0;
    transform: translateY(24px);
}

.az-stat-card.az-visible {
    opacity: 1;
    transform: translateY(0);
    transition:
        opacity .55s ease,
        transform .55s ease,
        box-shadow .28s ease,
        border-color .28s ease;
}

.az-stat-card.az-visible:hover {
    transform: translateY(-6px);
}

@media (max-width: 900px) {
    .az-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .az-stats-section {
        padding-block: 64px;
    }

    /* Keep dashboard/stat cards in two columns on real mobile devices. */
    .az-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .az-stat-card {
        min-width: 0;
        min-height: 118px;
        padding: 14px;
    }

    .az-stat-icon {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
        border-radius: 13px;
    }

    .az-stat-number {
        font-size: 29px;
    }

    .az-stats-signature {
        gap: 12px;
    }

    .az-stats-signature-line {
        width: 42px;
    }
}


/* ==========================================================
   V2 — TRAINING SECTION
========================================================== */

.az-training-section {
    position: relative;
    overflow: hidden;
    color: var(--az-white);
    background:
        radial-gradient(circle at 16% 8%, rgba(198, 162, 75, .08), transparent 27%),
        radial-gradient(circle at 88% 92%, rgba(234, 211, 138, .04), transparent 24%),
        linear-gradient(145deg, #11100d 0%, #17140f 48%, #241d16 100%);
}

.az-training-section::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .13;
    background-image:
        linear-gradient(rgba(198, 162, 75, .09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(198, 162, 75, .09) 1px, transparent 1px);
    background-size: 72px 72px;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 22%, #000 78%, transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 22%, #000 78%, transparent);
}

.az-training-heading {
    position: relative;
    z-index: 2;
}

.az-training-heading span {
    color: var(--az-gold-light);
}

.az-training-heading h2 {
    color: var(--az-white);
}

.az-training-heading p {
    color: rgba(255, 255, 255, .62);
}

.az-training-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.az-training-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-width: 0;

    background: rgba(255, 255, 255, .035);
    border: 1px solid rgba(198, 162, 75, .18);
    border-radius: 22px;

    box-shadow:
        0 22px 54px rgba(0, 0, 0, .22);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.az-training-card:hover {
    transform: translateY(-8px);
    border-color: rgba(198, 162, 75, .42);
    box-shadow:
        0 30px 68px rgba(0, 0, 0, .31);
}

.az-training-card-featured {
    border-color: rgba(234, 211, 138, .40);
    box-shadow:
        0 25px 64px rgba(0, 0, 0, .32),
        0 0 0 1px rgba(198, 162, 75, .07);
}

.az-training-media {
    position: relative;
    height: 255px;
    overflow: hidden;
    background: var(--az-black);
}

.az-training-media::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            to top,
            rgba(13, 12, 10, .74) 0%,
            rgba(13, 12, 10, .12) 48%,
            transparent 100%
        );
}

.az-training-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .65s cubic-bezier(.2, .8, .2, 1),
        filter .3s ease;
    filter: saturate(.84) contrast(1.04) brightness(.88);
}

.az-training-card:hover .az-training-media img {
    transform: scale(1.055);
    filter: saturate(.94) contrast(1.05) brightness(.94);
}

.az-training-index {
    position: absolute;
    z-index: 3;
    left: 18px;
    bottom: 14px;

    color: rgba(255, 255, 255, .34);

    font-family: "Cairo", sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
}

.az-training-badge {
    position: absolute;
    z-index: 3;
    top: 16px;
    right: 16px;

    padding: 7px 10px;

    color: var(--az-black);
    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold)
    );

    border-radius: 999px;

    font-size: 9px;
    font-weight: 800;
}

.az-training-body {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 25px 26px;
    text-align: center;
}

.az-training-icon {
    width: 54px;
    height: 54px;

    display: grid;
    place-items: center;

    margin-top: -27px;
    margin-bottom: 17px;

    position: relative;
    z-index: 4;

    color: var(--az-black);

    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold),
        var(--az-gold-dark)
    );

    border: 5px solid #181510;
    border-radius: 17px;

    box-shadow:
        0 12px 28px rgba(198, 162, 75, .15);
}

.az-training-icon i {
    font-size: 17px;
}

.az-training-body h3 {
    margin: 0;

    color: var(--az-gold-light);

    font-size: 20px;
    line-height: 1.5;
    font-weight: 800;
}

.az-training-body > p {
    min-height: 92px;

    margin: 12px 0 0;

    color: rgba(255, 255, 255, .62);

    font-size: 12px;
    line-height: 1.95;
}

.az-training-features {
    width: 100%;

    display: grid;
    gap: 8px;

    margin: 19px 0 0;
    padding: 17px 0 0;

    list-style: none;

    border-top: 1px solid rgba(198, 162, 75, .13);
}

.az-training-features li {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    color: rgba(255, 255, 255, .75);

    font-size: 10.5px;
    font-weight: 600;
}

.az-training-features li i {
    width: 18px;
    height: 18px;

    display: grid;
    place-items: center;

    color: var(--az-gold-light);

    background: rgba(198, 162, 75, .08);

    border-radius: 50%;

    font-size: 7px;
}

.az-training-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    margin-top: auto;
    padding-top: 21px;

    color: var(--az-gold-light);

    font-size: 10.5px;
    font-weight: 800;
}

.az-training-link i {
    transition: transform .2s ease;
}

.az-training-link:hover i {
    transform: translateX(-4px);
}

/* Benefits */

.az-training-benefits {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    margin-top: 24px;

    overflow: hidden;

    background: rgba(255, 255, 255, .025);

    border: 1px solid rgba(198, 162, 75, .15);
    border-radius: 18px;
}

.az-training-benefit {
    min-height: 104px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;

    padding: 18px 14px;
}

.az-training-benefit + .az-training-benefit {
    border-inline-start: 1px solid rgba(198, 162, 75, .13);
}

.az-training-benefit-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;

    display: grid;
    place-items: center;

    color: var(--az-gold-light);

    background: rgba(198, 162, 75, .07);

    border: 1px solid rgba(198, 162, 75, .20);
    border-radius: 13px;
}

.az-training-benefit > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.az-training-benefit strong {
    color: var(--az-white);
    font-size: 11.5px;
    font-weight: 800;
}

.az-training-benefit span {
    color: rgba(255, 255, 255, .45);
    font-size: 9px;
}

/* CTA */

.az-training-cta {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;

    margin-top: 24px;
    padding: 24px 28px;

    background:
        linear-gradient(
            90deg,
            rgba(198, 162, 75, .09),
            rgba(255, 255, 255, .025)
        );

    border: 1px solid rgba(198, 162, 75, .18);
    border-radius: 18px;
}

.az-training-cta > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.az-training-cta > div > span {
    color: var(--az-gold-light);
    font-size: 10px;
    font-weight: 800;
}

.az-training-cta > div > strong {
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    line-height: 1.7;
}

.az-training-cta .az-btn {
    flex: 0 0 auto;
    gap: 10px;
}

/* Reveal */

.az-training-card,
.az-training-benefit,
.az-training-cta {
    opacity: 0;
    transform: translateY(25px);
}

.az-training-card.az-visible,
.az-training-benefit.az-visible,
.az-training-cta.az-visible {
    opacity: 1;
    transform: translateY(0);
    transition:
        opacity .55s ease,
        transform .55s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.az-training-card.az-visible:hover {
    transform: translateY(-8px);
}

@media (max-width: 1000px) {
    .az-training-grid {
        grid-template-columns: 1fr;
        max-width: 680px;
        margin-inline: auto;
    }

    .az-training-media {
        height: 320px;
    }

    .az-training-body > p {
        min-height: 0;
    }

    .az-training-benefits {
        grid-template-columns: repeat(2, 1fr);
    }

    .az-training-benefit:nth-child(3) {
        border-inline-start: 0;
        border-top: 1px solid rgba(198, 162, 75, .13);
    }

    .az-training-benefit:nth-child(4) {
        border-top: 1px solid rgba(198, 162, 75, .13);
    }
}

@media (max-width: 650px) {
    .az-training-section {
        padding-block: 66px;
    }

    .az-training-media {
        height: 235px;
    }

    .az-training-body {
        padding-inline: 18px;
    }

    .az-training-benefits {
        grid-template-columns: 1fr;
    }

    .az-training-benefit {
        justify-content: flex-start;
        min-height: 86px;
        padding-inline: 20px;
    }

    .az-training-benefit + .az-training-benefit,
    .az-training-benefit:nth-child(3),
    .az-training-benefit:nth-child(4) {
        border-inline-start: 0;
        border-top: 1px solid rgba(198, 162, 75, .13);
    }

    .az-training-cta {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
    }

    .az-training-cta .az-btn {
        width: 100%;
    }
}


/* ==========================================================
   V2 — SERVICES SECTION
========================================================== */

.az-services-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 10% 10%, rgba(198, 162, 75, .045), transparent 25%),
        radial-gradient(circle at 88% 92%, rgba(198, 162, 75, .04), transparent 22%),
        var(--az-white);
}

.az-services-heading {
    position: relative;
    z-index: 2;
}

.az-services-tabs {
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 auto 30px;
    padding: 6px;
    background: var(--az-ivory);
    border: 1px solid rgba(198, 162, 75, .15);
    border-radius: 15px;
}

.az-services-tab {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 20px;
    color: var(--az-text-soft);
    background: transparent;
    border: 0;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 800;
    transition: .22s ease;
}

.az-services-tab i {
    color: var(--az-gold-dark);
}

.az-services-tab.is-active {
    color: var(--az-black);
    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold),
        var(--az-gold-dark)
    );
    box-shadow: 0 8px 20px rgba(198, 162, 75, .16);
}

.az-services-tab.is-active i {
    color: var(--az-black);
}

.az-services-panel {
    position: relative;
    z-index: 2;
}

.az-services-panel[hidden] {
    display: none !important;
}

.az-services-grid {
    display: grid;
    gap: 14px;
}

.az-services-grid-stallions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.az-services-grid-mares {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.az-service-card {
    min-height: 205px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    text-align: right;

    color: var(--az-text);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.99),
            rgba(248,245,239,.96)
        );

    border: 1px solid rgba(13,12,10,.075);
    border-radius: 19px;

    box-shadow:
        0 10px 28px rgba(13,12,10,.065);

    transition:
        transform .27s ease,
        border-color .27s ease,
        box-shadow .27s ease;
}

.az-service-card::before {
    content: "";
    position: absolute;
    top: -58px;
    left: -58px;
    width: 135px;
    height: 135px;
    border-radius: 50%;
    background: rgba(198,162,75,.065);
    transition: transform .35s ease;
}

.az-service-card::after {
    content: "";
    position: absolute;
    right: 24px;
    bottom: 0;
    width: 50px;
    height: 2px;
    background: linear-gradient(
        90deg,
        var(--az-gold-dark),
        var(--az-gold-light)
    );
}

.az-service-card:hover {
    transform: translateY(-6px);
    border-color: rgba(198,162,75,.38);
    box-shadow: 0 22px 44px rgba(13,12,10,.11);
}

.az-service-card:hover::before {
    transform: scale(1.22);
}

.az-service-card-number {
    position: absolute;
    top: 20px;
    left: 20px;
    color: rgba(27,24,20,.13);
    font-family: "Cairo", sans-serif;
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
}

.az-service-card-icon {
    width: 55px;
    height: 55px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;

    color: var(--az-black);

    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold),
        var(--az-gold-dark)
    );

    border-radius: 15px;
    box-shadow: 0 10px 24px rgba(198,162,75,.16);
}

.az-service-card-icon i {
    font-size: 18px;
}

.az-service-card strong {
    color: var(--az-text);
    font-size: 14px;
    line-height: 1.55;
    font-weight: 800;
}

.az-service-card small {
    margin-top: 7px;
    color: var(--az-text-soft);
    font-size: 10px;
    line-height: 1.65;
}

.az-service-card-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 22px;
    color: var(--az-gold-dark);
    font-size: 9.5px;
    font-weight: 800;
}

.az-service-card-action i {
    transition: transform .2s ease;
}

.az-service-card:hover .az-service-card-action i {
    transform: translateX(-4px);
}

/* ---------- SERVICE DIALOG ---------- */

.az-service-dialog-backdrop {
    position: fixed;
    inset: 0;
    z-index: 3000;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    background: rgba(13,12,10,.72);
    backdrop-filter: blur(7px);

    transition:
        opacity .22s ease,
        visibility .22s ease;
}

.az-service-dialog-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.az-service-dialog {
    position: fixed;
    inset: 0;
    z-index: 3010;

    display: grid;
    place-items: center;
    padding: 20px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(10px);

    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease;
}

.az-service-dialog.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.az-service-dialog-card {
    width: min(560px, 100%);
    position: relative;
    padding: 42px 38px 36px;
    text-align: center;

    background:
        radial-gradient(circle at 50% 0%, rgba(198,162,75,.08), transparent 32%),
        var(--az-white);

    color: var(--az-text);

    border: 1px solid rgba(198,162,75,.38);
    border-radius: 25px;

    box-shadow:
        0 34px 100px rgba(0,0,0,.34);
}

.az-service-dialog-close {
    position: absolute;
    top: 14px;
    left: 14px;

    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    color: var(--az-text);
    background: var(--az-ivory);

    border: 1px solid rgba(13,12,10,.08);
    border-radius: 50%;
}

.az-service-dialog-icon {
    width: 78px;
    height: 78px;

    display: grid;
    place-items: center;

    margin: 0 auto 18px;

    color: var(--az-black);

    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold),
        var(--az-gold-dark)
    );

    border-radius: 21px;

    box-shadow:
        0 16px 34px rgba(198,162,75,.20);
}

.az-service-dialog-icon i {
    font-size: 26px;
}

.az-service-dialog-kicker {
    color: var(--az-gold-dark);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .17em;
}

.az-service-dialog-card h3 {
    margin: 8px 0 12px;
    color: var(--az-text);
    font-size: 25px;
    line-height: 1.5;
    font-weight: 800;
}

.az-service-dialog-card p {
    margin: 0;
    color: var(--az-text-soft);
    font-size: 13px;
    line-height: 2;
}

.az-service-dialog-footer {
    display: flex;
    justify-content: center;
    margin-top: 25px;
}

.az-service-dialog-footer .az-btn {
    gap: 10px;
}

html.az-service-dialog-open,
body.az-service-dialog-open {
    overflow: hidden;
}

/* Reveal */
.az-service-card {
    opacity: 0;
    transform: translateY(20px);
}

.az-service-card.az-visible {
    opacity: 1;
    transform: translateY(0);
    transition:
        opacity .48s ease,
        transform .48s ease,
        border-color .27s ease,
        box-shadow .27s ease;
}

.az-service-card.az-visible:hover {
    transform: translateY(-6px);
}

@media (max-width: 900px) {
    .az-services-grid-stallions,
    .az-services-grid-mares {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .az-services-section {
        padding-block: 64px;
    }

    .az-services-tabs {
        width: 100%;
    }

    .az-services-tab {
        flex: 1;
        justify-content: center;
        padding-inline: 10px;
    }

    .az-services-grid-stallions,
    .az-services-grid-mares {
        grid-template-columns: 1fr;
    }

    .az-service-card {
        min-height: 180px;
    }

    .az-service-dialog-card {
        padding: 38px 20px 28px;
    }

    .az-service-dialog-card h3 {
        font-size: 22px;
    }
}


/* ==========================================================
   V2 — AVAILABLE STALLIONS
========================================================== */

.az-stallions-section {
    position: relative;
    overflow: hidden;

    color: var(--az-white);

    background:
        radial-gradient(circle at 84% 12%, rgba(198,162,75,.10), transparent 28%),
        radial-gradient(circle at 10% 92%, rgba(234,211,138,.045), transparent 24%),
        linear-gradient(145deg, #0c0b09, #15130f 52%, #211b15);
}

.az-stallions-section::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .11;
    pointer-events: none;

    background-image:
        linear-gradient(rgba(198,162,75,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(198,162,75,.08) 1px, transparent 1px);

    background-size: 80px 80px;

    -webkit-mask-image:
        linear-gradient(to bottom, transparent, #000 22%, #000 82%, transparent);

    mask-image:
        linear-gradient(to bottom, transparent, #000 22%, #000 82%, transparent);
}

.az-stallions-heading {
    position: relative;
    z-index: 2;
}

.az-stallions-heading span {
    color: var(--az-gold-light);
}

.az-stallions-heading h2 {
    color: var(--az-white);
}

.az-stallions-heading p {
    color: rgba(255,255,255,.62);
}

.az-stallions-toolbar {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    margin-bottom: 18px;
}

.az-stallions-count {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: rgba(255,255,255,.58);

    font-size: 10.5px;
}

.az-stallions-count i {
    color: var(--az-gold);
    font-size: 9px;
}

.az-stallions-count strong {
    color: var(--az-gold-light);
}

.az-stallions-controls {
    display: flex;
    gap: 8px;
}

.az-stallion-nav {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    color: var(--az-gold-light);

    background: rgba(255,255,255,.035);

    border: 1px solid rgba(198,162,75,.22);
    border-radius: 12px;

    transition: .2s ease;
}

.az-stallion-nav:hover {
    color: var(--az-black);
    background: linear-gradient(
        135deg,
        var(--az-gold-light),
        var(--az-gold)
    );
}

.az-stallions-viewport {
    position: relative;
    z-index: 2;

    width: 100%;
    overflow: hidden;
}

.az-stallions-track {
    display: flex;
    gap: 20px;

    transform: translateX(0);
    transition: transform .55s cubic-bezier(.2,.8,.2,1);
    will-change: transform;
}

.az-stallion-card {
    width: calc((100% - 40px) / 3);
    min-width: calc((100% - 40px) / 3);

    overflow: hidden;

    color: var(--az-text);
    background: var(--az-white);

    border: 1px solid rgba(198,162,75,.21);
    border-radius: 22px;

    box-shadow:
        0 24px 58px rgba(0,0,0,.26);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.az-stallion-card:hover {
    transform: translateY(-7px);
    border-color: rgba(234,211,138,.42);

    box-shadow:
        0 30px 70px rgba(0,0,0,.34);
}

.az-stallion-media {
    height: 310px;

    position: relative;
    overflow: hidden;

    background: var(--az-black);
}

.az-stallion-media img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    filter:
        saturate(.88)
        contrast(1.04)
        brightness(.92);

    transition:
        transform .65s cubic-bezier(.2,.8,.2,1),
        filter .3s ease;
}

.az-stallion-card:hover .az-stallion-media img {
    transform: scale(1.045);
    filter:
        saturate(.97)
        contrast(1.04)
        brightness(.98);
}

.az-stallion-media-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(13,12,10,.62),
            transparent 44%
        );

    pointer-events: none;
}

.az-stallion-season,
.az-stallion-available {
    position: absolute;
    z-index: 2;
    top: 16px;

    min-height: 29px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

    padding: 0 10px;

    border-radius: 999px;

    font-size: 8.5px;
    font-weight: 800;

    backdrop-filter: blur(10px);
}

.az-stallion-season {
    right: 16px;

    color: var(--az-gold-light);

    background: rgba(13,12,10,.76);

    border: 1px solid rgba(198,162,75,.26);
}

.az-stallion-available {
    left: 16px;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );
}

.az-stallion-body {
    padding: 24px;
}

.az-stallion-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
}

.az-stallion-title h3 {
    margin: 0;

    color: var(--az-text);

    font-size: 20px;
    line-height: 1.45;
    font-weight: 800;
}

.az-stallion-title h4 {
    margin: 5px 0 0;

    color: var(--az-gold-dark);

    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
}

.az-stallion-mark {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;

    display: grid;
    place-items: center;

    color: var(--az-gold-dark);

    background: rgba(198,162,75,.08);

    border-radius: 11px;
}

.az-stallion-mark i {
    font-size: 10px;
}

.az-stallion-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;

    margin-top: 18px;
}

.az-stallion-meta > div {
    min-width: 0;

    padding: 12px;

    background: var(--az-ivory);

    border: 1px solid rgba(13,12,10,.06);
    border-radius: 12px;
}

.az-stallion-meta span,
.az-stallion-price span {
    display: block;

    color: var(--az-text-soft);

    font-size: 8px;
    font-weight: 700;
}

.az-stallion-meta strong {
    display: block;

    margin-top: 5px;

    overflow: hidden;

    color: var(--az-text);

    font-size: 10px;
    font-weight: 800;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.az-stallion-description {
    min-height: 69px;

    margin: 17px 0 0;

    color: var(--az-text-soft);

    font-size: 10.5px;
    line-height: 1.9;
}

.az-stallion-price {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;

    margin-top: 17px;
    padding-top: 16px;

    border-top: 1px solid rgba(13,12,10,.07);
}

.az-stallion-price strong {
    color: var(--az-gold-dark);

    font-size: 14px;
    font-weight: 800;
}

.az-stallion-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;

    margin-top: 19px;
}

.az-stallion-actions .az-btn {
    min-height: 44px;
    gap: 8px;

    padding-inline: 10px;

    font-size: 9.5px;
}

.az-stallion-details {
    color: var(--az-text);

    background: var(--az-white);

    border: 1px solid rgba(198,162,75,.34);
}

.az-stallion-details:hover {
    color: var(--az-gold-dark);

    border-color: rgba(198,162,75,.58);
}

.az-stallion-order {
    color: var(--az-black);
}

.az-stallions-dots {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    margin-top: 28px;
}

.az-stallions-dot {
    width: 7px;
    height: 7px;

    padding: 0;

    background: rgba(255,255,255,.22);

    border: 0;
    border-radius: 999px;

    transition:
        width .24s ease,
        background .24s ease;
}

.az-stallions-dot.is-active {
    width: 28px;

    background: var(--az-gold);
}

/* Empty state */

.az-stallions-empty {
    position: relative;
    z-index: 2;

    max-width: 620px;

    margin-inline: auto;
    padding: 48px 28px;

    text-align: center;

    background: rgba(255,255,255,.035);

    border: 1px solid rgba(198,162,75,.20);
    border-radius: 22px;
}

.az-stallions-empty-icon {
    width: 68px;
    height: 68px;

    display: grid;
    place-items: center;

    margin: 0 auto 18px;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );

    border-radius: 19px;
}

.az-stallions-empty h3 {
    margin: 0;

    color: var(--az-gold-light);

    font-size: 20px;
}

.az-stallions-empty p {
    max-width: 500px;

    margin: 12px auto 0;

    color: rgba(255,255,255,.60);

    font-size: 11px;
    line-height: 1.9;
}

/* ==========================================================
   V2 — STALLION DIALOG
========================================================== */

.az-stallion-dialog-backdrop {
    position: fixed;
    inset: 0;
    z-index: 4000;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    background: rgba(13,12,10,.78);
    backdrop-filter: blur(8px);

    transition:
        opacity .22s ease,
        visibility .22s ease;
}

.az-stallion-dialog-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.az-stallion-dialog {
    position: fixed;
    inset: 0;
    z-index: 4010;

    display: grid;
    place-items: center;

    padding: 20px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(12px);

    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease;
}

.az-stallion-dialog.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;

    transform: translateY(0);
}

.az-stallion-dialog-card {
    width: min(1060px, 100%);
    max-height: calc(100dvh - 40px);

    position: relative;
    overflow: auto;

    color: var(--az-white);

    background:
        radial-gradient(circle at 86% 0%, rgba(198,162,75,.10), transparent 28%),
        linear-gradient(145deg, #0f0e0b, #1c1813);

    border: 1px solid rgba(198,162,75,.34);
    border-radius: 26px;

    box-shadow:
        0 38px 120px rgba(0,0,0,.52);
}

.az-stallion-dialog-close {
    position: absolute;
    z-index: 5;
    top: 15px;
    left: 15px;

    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );

    border: 0;
    border-radius: 50%;

    box-shadow:
        0 12px 28px rgba(0,0,0,.22);
}

.az-stallion-dialog-layout {
    display: grid;
    grid-template-columns: minmax(330px, .92fr) minmax(0, 1.08fr);
}

.az-stallion-dialog-media {
    min-height: 650px;

    position: relative;
    overflow: hidden;

    background: var(--az-black);
}

.az-stallion-dialog-media::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(13,12,10,.62),
            transparent 44%
        );
}

.az-stallion-dialog-media img {
    width: 100%;
    height: 100%;

    min-height: 650px;

    display: block;

    object-fit: cover;
}

.az-stallion-dialog-season {
    position: absolute;
    z-index: 2;
    right: 20px;
    bottom: 20px;

    padding: 8px 11px;

    color: var(--az-gold-light);

    background: rgba(13,12,10,.74);

    border: 1px solid rgba(198,162,75,.28);
    border-radius: 999px;

    font-size: 9px;
    font-weight: 800;

    backdrop-filter: blur(9px);
}

.az-stallion-dialog-content {
    padding: 54px 42px 40px;
}

.az-stallion-dialog-kicker {
    color: var(--az-gold-light);

    font-size: 9px;
    font-weight: 800;
    letter-spacing: .16em;
}

.az-stallion-dialog-content h3 {
    margin: 8px 0 0;

    color: var(--az-white);

    font-size: 34px;
    line-height: 1.35;
    font-weight: 800;
}

.az-stallion-dialog-content h4 {
    margin: 5px 0 0;

    color: var(--az-gold-light);

    font-size: 13px;
    font-weight: 700;
}

.az-stallion-dialog-divider {
    display: flex;
    align-items: center;
    gap: 8px;

    margin: 18px 0 22px;
}

.az-stallion-dialog-divider span {
    width: 45px;
    height: 1px;

    background:
        linear-gradient(
            to left,
            transparent,
            var(--az-gold)
        );
}

.az-stallion-dialog-divider span:last-child {
    transform: scaleX(-1);
}

.az-stallion-dialog-divider i {
    width: 6px;
    height: 6px;

    transform: rotate(45deg);

    border: 1px solid var(--az-gold);
}

.az-stallion-dialog-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
}

.az-stallion-dialog-info > div {
    min-width: 0;

    padding: 13px;

    background: rgba(255,255,255,.035);

    border: 1px solid rgba(198,162,75,.16);
    border-radius: 12px;
}

.az-stallion-dialog-info span {
    display: block;

    color: var(--az-gold-light);

    font-size: 8px;
    font-weight: 800;
}

.az-stallion-dialog-info strong {
    display: block;

    margin-top: 6px;

    overflow: hidden;

    color: rgba(255,255,255,.87);

    font-size: 10px;
    font-weight: 700;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.az-stallion-dialog-description {
    margin: 22px 0 0;

    color: rgba(255,255,255,.65);

    font-size: 11px;
    line-height: 2;
}

.az-stallion-dialog-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;

    margin-top: 24px;
}

.az-stallion-dialog-actions .az-btn {
    min-height: 48px;
    gap: 9px;

    font-size: 10px;
}

.az-stallion-dialog-more {
    color: var(--az-gold-light);

    background: rgba(255,255,255,.025);

    border: 1px solid rgba(198,162,75,.30);
}

html.az-stallion-dialog-open,
body.az-stallion-dialog-open {
    overflow: hidden;
}

/* Reveal */

.az-stallion-card {
    opacity: 0;
    transform: translateY(22px);
}

.az-stallion-card.az-visible {
    opacity: 1;
    transform: translateY(0);

    transition:
        opacity .5s ease,
        transform .5s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.az-stallion-card.az-visible:hover {
    transform: translateY(-7px);
}

@media (max-width: 1000px) {
    .az-stallion-card {
        width: calc((100% - 20px) / 2);
        min-width: calc((100% - 20px) / 2);
    }

    .az-stallion-dialog-layout {
        grid-template-columns: 1fr;
    }

    .az-stallion-dialog-media,
    .az-stallion-dialog-media img {
        min-height: 380px;
        max-height: 430px;
    }
}

@media (max-width: 650px) {
    .az-stallions-section {
        padding-block: 66px;
    }

    .az-stallion-card {
        width: 100%;
        min-width: 100%;
    }

    .az-stallion-media {
        height: 300px;
    }

    .az-stallions-toolbar {
        align-items: flex-end;
    }

    .az-stallion-dialog {
        padding: 7px;
    }

    .az-stallion-dialog-card {
        max-height: calc(100dvh - 14px);
        border-radius: 19px;
    }

    .az-stallion-dialog-media,
    .az-stallion-dialog-media img {
        min-height: 300px;
        max-height: 330px;
    }

    .az-stallion-dialog-content {
        padding: 30px 18px 24px;
    }

    .az-stallion-dialog-content h3 {
        font-size: 27px;
    }

    .az-stallion-dialog-info {
        grid-template-columns: 1fr 1fr;
    }

    .az-stallion-dialog-actions {
        grid-template-columns: 1fr;
    }
}


/* ==========================================================
   V2 — ABOUT STRIP
========================================================== */

.az-about-strip {
    position: relative;
    overflow: hidden;
    padding: 74px 0;

    background:
        radial-gradient(circle at 12% 0%, rgba(198,162,75,.055), transparent 26%),
        var(--az-ivory);

    border-top: 1px solid rgba(198,162,75,.12);
}

.az-about-strip-inner {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(500px, 1.1fr);
    gap: 70px;
    align-items: center;
}

.az-about-kicker {
    display: block;
    margin-bottom: 9px;

    color: var(--az-gold-dark);

    font-size: 9px;
    font-weight: 800;
    letter-spacing: .18em;
}

.az-about-strip-copy h2 {
    margin: 0;

    color: var(--az-text);

    font-size: clamp(29px, 3.2vw, 43px);
    line-height: 1.45;
    font-weight: 800;
}

.az-about-strip-copy h2 span {
    display: block;
    color: var(--az-gold-dark);
}

.az-about-strip-copy p {
    max-width: 570px;

    margin: 15px 0 0;

    color: var(--az-text-soft);

    font-size: 12px;
    line-height: 2;
}

.az-about-features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.az-about-features article {
    min-height: 145px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 13px;

    padding: 20px;

    background: rgba(255,255,255,.82);

    border: 1px solid rgba(198,162,75,.15);
    border-radius: 17px;

    box-shadow: 0 10px 28px rgba(13,12,10,.055);
}

.az-about-features article > span {
    width: 43px;
    height: 43px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );

    border-radius: 12px;
}

.az-about-features article > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.az-about-features strong {
    color: var(--az-text);
    font-size: 11px;
    font-weight: 800;
}

.az-about-features small {
    color: var(--az-text-soft);
    font-size: 8.5px;
    line-height: 1.6;
}

/* ==========================================================
   V2 — FOOTER
========================================================== */

.az-footer {
    position: relative;
    overflow: hidden;

    padding: 74px 0 0;

    color: var(--az-white);

    background:
        radial-gradient(circle at 80% 0%, rgba(198,162,75,.09), transparent 30%),
        linear-gradient(145deg, #0b0a08, #11100d 52%, #1b1712);

    border-top: 1px solid rgba(198,162,75,.22);
}

.az-footer::before {
    content: "";

    position: absolute;
    top: 0;
    right: 10%;
    left: 10%;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(234,211,138,.58),
            transparent
        );
}

.az-footer-glow {
    position: absolute;
    width: 540px;
    height: 540px;
    left: -260px;
    bottom: -320px;

    border-radius: 50%;

    background: rgba(198,162,75,.055);
    filter: blur(20px);

    pointer-events: none;
}

.az-footer-top {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: 1.25fr .7fr 1fr 1fr;
    gap: 42px;
}

.az-footer-brand {
    max-width: 340px;
}

.az-footer-logo-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.az-footer-logo {
    width: 58px;
    height: 58px;

    object-fit: contain;

    filter:
        drop-shadow(0 9px 20px rgba(198,162,75,.16));
}

.az-footer-logo-link > div {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.az-footer-logo-link strong {
    color: var(--az-gold-light);

    font-size: 20px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .08em;
}

.az-footer-logo-link span {
    color: rgba(255,255,255,.43);

    font-size: 7px;
    font-weight: 700;
    letter-spacing: .15em;
}

.az-footer-brand h3 {
    margin: 21px 0 0;

    color: var(--az-white);

    font-size: 17px;
    line-height: 1.6;
    font-weight: 800;
}

.az-footer-brand > p {
    margin: 10px 0 0;

    color: rgba(255,255,255,.54);

    font-size: 10.5px;
    line-height: 1.95;
}

.az-footer-signature {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-top: 18px;

    color: var(--az-gold-light);

    font-size: 8px;
    font-weight: 700;
    letter-spacing: .05em;
}

.az-footer-signature i {
    font-size: 7px;
}

.az-footer-title {
    display: block;

    margin-bottom: 20px;

    color: var(--az-gold-light);

    font-size: 11px;
    font-weight: 800;
}

.az-footer-links nav {
    display: grid;
    gap: 12px;
}

.az-footer-links a {
    width: fit-content;

    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: rgba(255,255,255,.58);

    font-size: 10px;
    font-weight: 700;

    transition:
        color .2s ease,
        transform .2s ease;
}

.az-footer-links a i {
    color: var(--az-gold-dark);
    font-size: 8px;
}

.az-footer-links a:hover {
    color: var(--az-gold-light);
    transform: translateX(-3px);
}

.az-footer-contact {
    min-width: 0;
}

.az-footer-contact-item {
    min-height: 66px;

    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 11px;

    margin-bottom: 9px;
    padding: 10px 12px;

    background: rgba(255,255,255,.025);

    border: 1px solid rgba(198,162,75,.13);
    border-radius: 13px;

    transition:
        border-color .2s ease,
        background .2s ease,
        transform .2s ease;
}

.az-footer-contact-item:hover {
    transform: translateY(-2px);

    background: rgba(198,162,75,.055);

    border-color: rgba(198,162,75,.33);
}

.az-footer-contact-icon {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    color: var(--az-gold-light);

    background: rgba(198,162,75,.07);

    border: 1px solid rgba(198,162,75,.15);
    border-radius: 11px;
}

.az-footer-contact-item > div {
    min-width: 0;

    display: flex;
    flex-direction: column;
    gap: 4px;
}

.az-footer-contact-item small {
    color: rgba(255,255,255,.37);
    font-size: 7.5px;
}

.az-footer-contact-item strong {
    overflow: hidden;

    color: rgba(255,255,255,.76);

    font-size: 9.5px;
    font-weight: 800;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.az-footer-contact-arrow {
    color: rgba(198,162,75,.50);
    font-size: 9px;
}

.az-footer-availability {
    display: flex;
    align-items: center;
    gap: 8px;

    margin-top: 13px;

    color: rgba(255,255,255,.42);

    font-size: 8.5px;
}

.az-status-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--az-gold);

    box-shadow:
        0 0 0 4px rgba(198,162,75,.08);
}

.az-footer-social > p {
    margin: 0 0 16px;

    color: rgba(255,255,255,.48);

    font-size: 9.5px;
    line-height: 1.85;
}

/*
|--------------------------------------------------------------------------
| Dynamic legacy social links — restyled safely inside V2 only
|--------------------------------------------------------------------------
*/
.az-footer-social-dynamic {
    min-height: 42px;
}

.az-footer-social-dynamic .footer-social,
.az-footer-social-dynamic > div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.az-footer-social-dynamic a,
.az-footer-social-dynamic .social-icon {
    width: 40px !important;
    height: 40px !important;

    display: inline-grid !important;
    place-items: center !important;

    margin: 0 !important;
    padding: 0 !important;

    color: var(--az-gold-light) !important;
    background: rgba(255,255,255,.028) !important;

    border: 1px solid rgba(198,162,75,.17) !important;
    border-radius: 11px !important;

    box-shadow: none !important;

    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease !important;
}

.az-footer-social-dynamic a:hover,
.az-footer-social-dynamic .social-icon:hover {
    color: var(--az-black) !important;
    background: var(--az-gold) !important;
    transform: translateY(-3px) !important;
}

.az-footer-social-dynamic img {
    max-width: 20px !important;
    max-height: 20px !important;
    object-fit: contain !important;
}

.az-footer-social-fallback {
    display: none;
}

.az-footer-divider {
    position: relative;
    z-index: 2;

    height: 1px;

    margin-top: 54px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(198,162,75,.18),
            transparent
        );
}

.az-footer-bottom {
    position: relative;
    z-index: 2;

    min-height: 78px;

    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
}

.az-footer-bottom p {
    margin: 0;

    color: rgba(255,255,255,.34);

    font-size: 8.5px;
}

.az-footer-developer {
    text-align: center;
}

.az-footer-developer strong {
    color: var(--az-gold-light);
    font-weight: 700;
}

.az-back-to-top {
    justify-self: end;

    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );

    border-radius: 11px;

    box-shadow:
        0 10px 24px rgba(198,162,75,.12);
}

/* ==========================================================
   V2 — FLOATING CONTACT DOCK
========================================================== */

.az-contact-dock {
    position: fixed;
    z-index: 2500;

    left: 18px;
    bottom: 18px;

    display: flex;
    flex-direction: column;
    gap: 8px;

    padding: 7px;

    background: rgba(13,12,10,.88);

    border: 1px solid rgba(198,162,75,.28);
    border-radius: 16px;

    backdrop-filter: blur(14px);

    box-shadow:
        0 18px 48px rgba(0,0,0,.27);

    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);

    transition:
        opacity .24s ease,
        visibility .24s ease,
        transform .24s ease;
}

.az-contact-dock.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.az-contact-dock-btn {
    width: 43px;
    height: 43px;

    display: grid;
    place-items: center;

    color: var(--az-gold-light);

    background: rgba(255,255,255,.025);

    border: 1px solid rgba(198,162,75,.12);
    border-radius: 11px;

    transition:
        color .2s ease,
        background .2s ease,
        transform .2s ease;
}

.az-contact-dock-btn:hover {
    color: var(--az-black);
    background: var(--az-gold);
    transform: translateY(-2px);
}

.az-contact-dock-whatsapp {
    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );
}

/* Reveal */

.az-about-features article,
.az-footer-top > div {
    opacity: 0;
    transform: translateY(20px);
}

.az-about-features article.az-visible,
.az-footer-top > div.az-visible {
    opacity: 1;
    transform: translateY(0);

    transition:
        opacity .5s ease,
        transform .5s ease;
}

/* Responsive */

@media (max-width: 1100px) {
    .az-about-strip-inner {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .az-footer-top {
        grid-template-columns: 1fr 1fr;
        row-gap: 44px;
    }

    .az-footer-brand {
        max-width: 100%;
    }
}

@media (max-width: 700px) {
    .az-about-strip {
        padding: 60px 0;
    }

    .az-about-strip-copy {
        text-align: center;
    }

    .az-about-strip-copy p {
        margin-inline: auto;
    }

    .az-about-features {
        grid-template-columns: 1fr;
    }

    .az-about-features article {
        min-height: 105px;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
    }

    .az-footer {
        padding-top: 58px;
    }

    .az-footer-top {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .az-footer-brand,
    .az-footer-links,
    .az-footer-contact,
    .az-footer-social {
        text-align: center;
    }

    .az-footer-logo-link {
        justify-content: center;
    }

    .az-footer-brand > p {
        max-width: 420px;
        margin-inline: auto;
    }

    .az-footer-signature {
        justify-content: center;
    }

    .az-footer-links nav {
        justify-items: center;
    }

    .az-footer-contact-item {
        text-align: right;
    }

    .az-footer-availability {
        justify-content: center;
    }

    .az-footer-social-dynamic .footer-social,
    .az-footer-social-dynamic > div {
        justify-content: center;
    }

    .az-footer-bottom {
        grid-template-columns: 1fr;
        padding: 22px 0;
        text-align: center;
    }

    .az-back-to-top {
        justify-self: center;
    }

    .az-contact-dock {
        left: 10px;
        bottom: 10px;
    }
}


/* ==========================================================
   V2 — REAL DATA INTEGRATION SUPPORT
========================================================== */

.az-stats-grid {
    grid-template-columns: repeat(
        auto-fit,
        minmax(min(100%, 300px), 1fr)
    );
}

.az-stat-description {
    display: block;
    margin-top: 1px;

    color: var(--az-text-soft);

    font-size: 8.5px;
    line-height: 1.65;
    font-weight: 500;
}

.az-stat-card-featured .az-stat-description {
    color: rgba(255,255,255,.46);
}

@media (max-width: 900px) {
    .az-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    /* Do not override the two-column mobile layout defined above. */
    .az-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
}


/* ==========================================================
   V2 — CORE FUNCTION MODALS
========================================================== */

.az-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 5000;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    background: rgba(8, 7, 6, .78);
    backdrop-filter: blur(9px);

    transition: opacity .22s ease, visibility .22s ease;
}

.az-modal-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.az-core-modal {
    position: fixed;
    inset: 0;
    z-index: 5010;

    display: grid;
    place-items: center;

    padding: 18px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(12px);

    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease;
}

.az-core-modal.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.az-core-modal-card {
    width: min(760px, 100%);
    max-height: calc(100dvh - 36px);

    overflow: hidden;

    background: var(--az-white);
    color: var(--az-text);

    border: 1px solid rgba(198,162,75,.38);
    border-radius: 24px;

    box-shadow: 0 38px 120px rgba(0,0,0,.48);
}

.az-core-modal-header {
    min-height: 88px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;

    padding: 19px 22px;

    color: var(--az-white);

    background:
        radial-gradient(circle at 85% 0%, rgba(198,162,75,.12), transparent 30%),
        linear-gradient(145deg, var(--az-black), var(--az-dark-soft));

    border-bottom: 1px solid rgba(198,162,75,.28);
}

.az-core-modal-header > div {
    min-width: 0;
}

.az-core-modal-kicker {
    display: block;
    margin-bottom: 5px;

    color: var(--az-gold-light);

    font-size: 8px;
    font-weight: 800;
    letter-spacing: .16em;
}

.az-core-modal-header h2 {
    margin: 0;

    color: var(--az-white);

    font-size: 20px;
    line-height: 1.45;
    font-weight: 800;
}

.az-core-modal-header p {
    margin: 5px 0 0;

    color: rgba(255,255,255,.53);

    font-size: 9.5px;
}

.az-core-modal-close {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(135deg, var(--az-gold-light), var(--az-gold));

    border: 0;
    border-radius: 50%;
}

.az-core-modal-footer {
    min-height: 74px;

    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;

    padding: 13px 20px;

    background: var(--az-ivory);

    border-top: 1px solid rgba(13,12,10,.07);
}

.az-core-modal-footer .az-btn {
    min-height: 44px;
}

/* Agreement */
.az-agreement-card {
    width: min(1080px, 100%);
    display: flex;
    flex-direction: column;
}

.az-agreement-scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;

    padding: 28px 30px;

    color: #2a2723;
    background: #fff;

    font-size: 13px;
    line-height: 2;
}

.az-agreement-scroll > div,
.az-agreement-scroll span,
.az-agreement-scroll p,
.az-agreement-scroll label,
.az-agreement-scroll h4 {
    color: #2a2723 !important;
}

.az-agreement-scroll h4 {
    color: #1c1915 !important;
    font-weight: 800 !important;
}

.az-agreement-scroll img[width="12px"] {
    display: inline-block;
    width: 10px !important;
    height: 10px !important;
    margin-left: 7px;
    vertical-align: middle;
}

.az-agreement-ribbon {
    display: inline-flex !important;
    align-items: center;

    padding: 9px 15px !important;

    color: var(--az-black) !important;
    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        ) !important;

    border-radius: 10px !important;

    font-weight: 800 !important;
}

.az-agreement-scroll input.form-control {
    width: min(100%, 430px);

    min-height: 45px;

    padding: 0 13px;

    color: var(--az-text);

    background: var(--az-white);

    border: 1px solid rgba(13,12,10,.14);
    border-radius: 10px;
}

.az-agreement-scroll #signatureCanvas {
    width: 100% !important;
    height: 160px !important;

    display: block;

    background: #fff;

    border-radius: 10px;

    touch-action: none;
}

.az-agreement-scroll #clearSignatureBtn,
.az-agreement-scroll #downloadPdfBtn {
    border: 0;
    border-radius: 10px;
    font-weight: 800;
}

.az-agreement-scroll #clearSignatureBtn {
    padding: 7px 12px;
    color: var(--az-text);
    background: #ece7df;
}

.az-agreement-scroll #downloadPdfBtn {
    padding: 10px 18px;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold),
            var(--az-gold-dark)
        );
}

/* Contact */
.az-contact-card {
    width: min(760px, 100%);
}

.az-contact-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;

    padding: 24px;
}

.az-field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.az-field-full {
    grid-column: 1 / -1;
}

.az-field label {
    color: var(--az-text);
    font-size: 10px;
    font-weight: 800;
}

.az-field input,
.az-field textarea {
    width: 100%;

    padding: 11px 13px;

    color: var(--az-text);
    background: var(--az-ivory);

    border: 1px solid rgba(13,12,10,.09);
    border-radius: 11px;

    outline: 0;

    font-size: 11px;

    transition: border-color .2s ease, box-shadow .2s ease;
}

.az-field input {
    min-height: 45px;
}

.az-field input:focus,
.az-field textarea:focus {
    border-color: rgba(198,162,75,.52);
    box-shadow: 0 0 0 4px rgba(198,162,75,.08);
}

.az-contact-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;

    padding: 0 24px 24px;
}

.az-contact-option {
    min-height: 94px;

    display: grid;
    grid-template-columns: 44px 1fr auto;
    align-items: center;
    gap: 12px;

    padding: 14px;

    text-align: right;

    color: var(--az-text);
    background: var(--az-white);

    border: 1px solid rgba(198,162,75,.18);
    border-radius: 15px;

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.az-contact-option:hover {
    transform: translateY(-3px);
    border-color: rgba(198,162,75,.45);
    box-shadow: 0 14px 30px rgba(13,12,10,.08);
}

.az-contact-option-icon {
    width: 44px;
    height: 44px;

    display: grid;
    place-items: center;

    color: var(--az-black);

    background:
        linear-gradient(
            135deg,
            var(--az-gold-light),
            var(--az-gold)
        );

    border-radius: 12px;
}

.az-contact-option > div {
    min-width: 0;

    display: flex;
    flex-direction: column;
    gap: 5px;
}

.az-contact-option strong {
    color: var(--az-text);
    font-size: 10.5px;
    line-height: 1.55;
    font-weight: 800;
}

.az-contact-option small {
    color: var(--az-text-soft);
    font-size: 8px;
    line-height: 1.5;
}

.az-contact-option > .bi-whatsapp {
    color: var(--az-gold-dark);
    font-size: 18px;
}

/* Toast */
.az-toast {
    position: fixed;
    z-index: 6000;

    right: 20px;
    bottom: 20px;

    width: min(390px, calc(100% - 40px));

    display: grid;
    grid-template-columns: 42px 1fr 34px;
    align-items: center;
    gap: 11px;

    padding: 13px;

    opacity: 0;
    visibility: hidden;
    transform: translateY(16px);

    color: var(--az-white);

    background: rgba(13,12,10,.96);

    border: 1px solid rgba(198,162,75,.32);
    border-radius: 15px;

    box-shadow: 0 20px 58px rgba(0,0,0,.32);

    transition: .22s ease;
}

.az-toast.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.az-toast-icon {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    color: var(--az-black);
    background: var(--az-gold);

    border-radius: 11px;
}

.az-toast strong {
    display: block;
    color: var(--az-gold-light);
    font-size: 10.5px;
}

.az-toast p {
    margin: 4px 0 0;
    color: rgba(255,255,255,.66);
    font-size: 9px;
    line-height: 1.55;
}

.az-toast button {
    width: 34px;
    height: 34px;

    color: rgba(255,255,255,.56);
    background: transparent;

    border: 0;
}

html.az-core-modal-open,
body.az-core-modal-open {
    overflow: hidden;
}

.az-hero-contact-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 0 5px;

    color: rgba(255,255,255,.65);

    background: transparent;
    border: 0;

    font-size: 10px;
    font-weight: 800;
}

.az-hero-contact-link i {
    color: var(--az-gold-light);
}

@media (max-width: 700px) {
    .az-core-modal {
        padding: 7px;
    }

    .az-core-modal-card {
        max-height: calc(100dvh - 14px);
        border-radius: 17px;
    }

    .az-core-modal-header {
        min-height: 74px;
        padding: 14px 15px;
    }

    .az-core-modal-header h2 {
        font-size: 16px;
    }

    .az-agreement-scroll {
        padding: 20px 15px;
        font-size: 11.5px;
        line-height: 1.9;
    }

    .az-core-modal-footer {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .az-core-modal-footer .az-btn {
        width: 100%;
    }

    .az-contact-form {
        grid-template-columns: 1fr;
        padding: 18px;
    }

    .az-field-full {
        grid-column: auto;
    }

    .az-contact-options {
        grid-template-columns: 1fr;
        padding: 0 18px 18px;
    }

    .az-hero-contact-link {
        width: 100%;
        justify-content: center;
        min-height: 38px;
    }
}


/* ==========================================================
   V2 — PRODUCTION POLISH
========================================================== */

.azzam-v2 :focus-visible {
    outline: 2px solid var(--az-gold-light);
    outline-offset: 3px;
}

.az-stallion-nav:disabled {
    cursor: not-allowed;
}

.az-login-link,
.az-btn,
.az-contact-dock-btn,
.az-service-card,
.az-stallion-details,
.az-services-tab,
.az-stallion-nav {
    -webkit-tap-highlight-color: transparent;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .azzam-v2 *,
    .azzam-v2 *::before,
    .azzam-v2 *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}


/* ==========================================================
   V2 — ASSET & ICON HARDENING
   Local-only icon font + image fallbacks
========================================================== */

.azzam-v2 .fa {
    font-family: "FontAwesome" !important;
    font-style: normal !important;
    font-weight: normal !important;
    speak: none;
}

/* Keep icon-only blocks visible even before webfont paints */
.az-stat-icon,
.az-training-icon,
.az-service-card-icon,
.az-contact-option-icon,
.az-footer-contact-icon,
.az-contact-dock-btn,
.az-badge-icon,
.az-stallion-mark {
    flex-shrink: 0;
}

/* Do not show broken-image glyphs */
.az-hero-image-wrap img,
.az-training-media img,
.az-stallion-media img,
.az-stallion-dialog-media img {
    background:
        linear-gradient(
            135deg,
            rgba(198,162,75,.08),
            rgba(13,12,10,.06)
        );
}

/* Footer dynamic SVG icons use the project-wide aliases defined in variables.css */
.az-footer-social-dynamic svg,
.az-footer-social-dynamic .azzam-footer-social-link svg {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.az-footer-social-dynamic .azzam-footer-social-title {
    color: var(--az-gold-light) !important;
}

.az-footer-social-dynamic .azzam-footer-social-link {
    background: rgba(255,255,255,.028) !important;
    border-color: rgba(198,162,75,.20) !important;
}

.az-footer-social-dynamic .azzam-footer-social-link:hover {
    background: var(--az-gold) !important;
}

/* Ensure icons are not inherited as transparent from old CSS fragments */
.az-header i,
.az-hero i,
.az-stats-section i,
.az-training-section i,
.az-services-section i,
.az-stallions-section i,
.az-about-strip i,
.az-footer i,
.az-core-modal i,
.az-toast i {
    opacity: 1;
    visibility: visible;
}

/* Small fallback mark if a hero image cannot load */
.az-hero-image-wrap {
    background:
        radial-gradient(circle at 50% 30%, rgba(234,211,138,.14), transparent 40%),
        linear-gradient(145deg, #17140f, #0d0c0a);
}


/* ==========================================================
   V2 — STATS ICONS FA4 FIX
========================================================== */

.az-stat-icon {
    display: inline-grid !important;
    place-items: center !important;
}

.az-stat-icon .fa {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    color: #0d0c0a !important;
    font-family: FontAwesome !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-style: normal !important;
    font-weight: normal !important;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    opacity: 1 !important;
    visibility: visible !important;
}


/* ==========================================================
   V2 — PHASE 12 / LUXURY HERO FINAL OVERRIDES
   Transparent horse layer + single-line title + unified CTAs
========================================================== */

.az-hero {
    min-height: clamp(720px, 92svh, 940px);
    padding: 128px 0 76px;
    background:
        radial-gradient(circle at 18% 48%, rgba(198,162,75,.13), transparent 31%),
        radial-gradient(circle at 78% 15%, rgba(234,211,138,.07), transparent 26%),
        linear-gradient(112deg, #090806 0%, #100e0b 43%, #1a1610 100%);
}

.az-hero-bg {
    inset: 0;
    overflow: hidden;
}

.az-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .055;
    filter: grayscale(1) sepia(.22) contrast(1.16) brightness(.72);
    transform: scale(1.035);
}

.az-hero-overlay {
    background:
        linear-gradient(90deg,
            rgba(8,7,5,.68) 0%,
            rgba(8,7,5,.82) 45%,
            rgba(8,7,5,.94) 100%),
        linear-gradient(180deg,
            rgba(0,0,0,.08),
            rgba(0,0,0,.22));
}

.az-hero-grid {
    grid-template-columns: minmax(440px, .98fr) minmax(0, 1.02fr);
    gap: clamp(32px, 5vw, 82px);
    align-items: center;
    direction: ltr;
}

.az-hero-visual {
    grid-column: 1;
    min-height: 650px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    overflow: visible;
}

.az-hero-content {
    grid-column: 2;
    max-width: 790px;
    direction: rtl;
    text-align: right;
    position: relative;
    z-index: 5;
}

/* لا توجد بطاقة مستطيلة للصورة إطلاقاً */
.az-hero-image-layer {
    position: absolute;
    inset: -4% -5% -8% -13%;
    overflow: visible;
    pointer-events: none;
    isolation: isolate;
}

/*
 * نقلب الصورة أفقياً حتى يتجه رأس الحصان نحو النص.
 * mask يجعل أطراف الصورة تختفي تدريجياً داخل الخلفية.
 */
.az-hero-image-layer img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 42%;
    transform: scaleX(-1) scale(1.035);
    transform-origin: center;
    opacity: .88;
    filter:
        saturate(.62)
        contrast(1.08)
        brightness(.84)
        sepia(.10);
    -webkit-mask-image:
        radial-gradient(ellipse 79% 82% at 50% 48%,
            #000 0%,
            #000 53%,
            rgba(0,0,0,.94) 64%,
            rgba(0,0,0,.55) 76%,
            transparent 94%);
    mask-image:
        radial-gradient(ellipse 79% 82% at 50% 48%,
            #000 0%,
            #000 53%,
            rgba(0,0,0,.94) 64%,
            rgba(0,0,0,.55) 76%,
            transparent 94%);
    mix-blend-mode: luminosity;
}

/* وهج ذهبي خفيف خلف الحصان بدلاً من الحدود */
.az-hero-image-layer::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 8% 3% 5% 3%;
    border-radius: 50%;
    background:
        radial-gradient(circle at 55% 48%,
            rgba(198,162,75,.15),
            rgba(198,162,75,.04) 42%,
            transparent 70%);
    filter: blur(24px);
}

.az-hero-eyebrow {
    margin-bottom: 22px;
    color: var(--az-gold-light);
    letter-spacing: .20em;
    font-size: 12px;
    white-space: nowrap;
}

.az-hero-title,
.az-hero h1.az-hero-title {
    margin: 0;
    max-width: none;
    color: var(--az-white);
    font-size: clamp(43px, 4.15vw, 72px);
    line-height: 1.22;
    font-weight: 850;
    letter-spacing: -.045em;
    white-space: nowrap;
}

.az-hero-title::after {
    content: "";
    display: block;
    width: min(210px, 32%);
    height: 2px;
    margin-top: 24px;
    margin-right: 0;
    background:
        linear-gradient(90deg,
            transparent,
            var(--az-gold-light) 42%,
            var(--az-gold));
    opacity: .9;
}

.az-hero-lead {
    max-width: 690px;
    margin: 24px 0 0;
    color: rgba(255,255,255,.72);
    font-size: clamp(14px, 1.08vw, 17px);
    line-height: 2.05;
}

/* قسم الأزرار: ثلاث بطاقات CTA متناسقة */
.az-hero-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
    width: min(100%, 760px);
}

.az-hero-action {
    position: relative;
    min-width: 0;
    min-height: 82px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 11px;
    padding: 13px 15px;
    color: var(--az-white);
    text-decoration: none !important;
    text-align: right;
    cursor: pointer;
    background:
        linear-gradient(145deg,
            rgba(255,255,255,.045),
            rgba(255,255,255,.012));
    border: 1px solid rgba(198,162,75,.36);
    border-radius: 17px;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 16px 36px rgba(0,0,0,.18);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition:
        transform .24s ease,
        border-color .24s ease,
        background .24s ease,
        box-shadow .24s ease;
}

button.az-hero-action {
    font: inherit;
}

.az-hero-action:hover {
    color: var(--az-white);
    transform: translateY(-3px);
    border-color: rgba(234,211,138,.68);
    background:
        linear-gradient(145deg,
            rgba(198,162,75,.13),
            rgba(255,255,255,.025));
    box-shadow:
        0 20px 42px rgba(0,0,0,.25),
        0 0 0 1px rgba(198,162,75,.05);
}

.az-hero-action-primary {
    color: #17130c;
    border-color: rgba(234,211,138,.72);
    background:
        linear-gradient(135deg,
            #f0d47d 0%,
            #d5ad43 48%,
            #b8871f 100%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.45),
        0 16px 36px rgba(184,135,31,.20);
}

.az-hero-action-primary:hover {
    color: #100e0a;
    background:
        linear-gradient(135deg,
            #f6df93 0%,
            #ddb94f 48%,
            #c29328 100%);
}

.az-hero-action-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(234,211,138,.22);
    border-radius: 13px;
    color: var(--az-gold-light);
    background: rgba(0,0,0,.18);
    font-size: 17px;
}

.az-hero-action-primary .az-hero-action-icon {
    color: #17130c;
    border-color: rgba(23,19,12,.16);
    background: rgba(255,255,255,.18);
}

.az-hero-action-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.az-hero-action-copy strong {
    color: inherit;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.35;
    white-space: nowrap;
}

.az-hero-action-copy small {
    color: rgba(255,255,255,.46);
    font-size: 9px;
    line-height: 1.4;
}

.az-hero-action-primary .az-hero-action-copy small {
    color: rgba(23,19,12,.58);
}

.az-hero-action-arrow {
    color: var(--az-gold-light);
    font-size: 12px;
}

.az-hero-action-primary .az-hero-action-arrow {
    color: #17130c;
}

.az-hero-trust {
    margin-top: 30px;
}

/* إزالة أي بقايا من التصميم القديم */
.az-hero-image-wrap,
.az-hero-badge,
.az-hero-contact-link {
    display: none !important;
}

@media (max-width: 1180px) {
    .az-hero {
        min-height: 760px;
    }

    .az-hero-grid {
        grid-template-columns: minmax(360px,.9fr) minmax(0,1.1fr);
        gap: 28px;
    }

    .az-hero-visual {
        min-height: 590px;
    }

    .az-hero-title,
    .az-hero h1.az-hero-title {
        font-size: clamp(38px, 4vw, 56px);
    }

    .az-hero-actions {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .az-hero-action-primary {
        grid-column: span 2;
    }
}

@media (max-width: 900px) {
    .az-hero {
        min-height: auto;
        padding: 112px 0 54px;
    }

    .az-hero-grid {
        grid-template-columns: 1fr;
        gap: 18px;
        direction: rtl;
    }

    .az-hero-content {
        grid-column: 1;
        grid-row: 1;
        max-width: 100%;
        text-align: center;
    }

    .az-hero-visual {
        grid-column: 1;
        grid-row: 2;
        min-height: 430px;
        width: min(100%, 700px);
        margin-inline: auto;
    }

    .az-hero-image-layer {
        inset: -2% -6% -10%;
    }

    .az-hero-image-layer img {
        object-position: 50% 38%;
        opacity: .82;
    }

    .az-hero-eyebrow {
        justify-content: center;
    }

    .az-hero-title,
    .az-hero h1.az-hero-title {
        white-space: normal;
        font-size: clamp(38px, 7vw, 58px);
    }

    .az-hero-title::after {
        margin-inline: auto;
    }

    .az-hero-lead {
        margin-inline: auto;
    }

    .az-hero-actions {
        width: 100%;
        max-width: 700px;
        margin-inline: auto;
        margin-top: 28px;
    }

    .az-hero-trust {
        justify-content: center;
    }
}

@media (max-width: 620px) {
    .az-hero {
        padding: 96px 0 36px;
    }

    .az-hero-title,
    .az-hero h1.az-hero-title {
        font-size: clamp(34px, 10.5vw, 46px);
        line-height: 1.35;
    }

    .az-hero-lead {
        font-size: 13px;
        line-height: 1.9;
    }

    .az-hero-actions {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .az-hero-action-primary {
        grid-column: auto;
    }

    .az-hero-action {
        min-height: 70px;
        grid-template-columns: 42px minmax(0,1fr) 16px;
        padding: 11px 13px;
        border-radius: 14px;
    }

    .az-hero-action-icon {
        width: 42px;
        height: 42px;
        border-radius: 11px;
    }

    .az-hero-action-copy strong {
        font-size: 12.5px;
    }

    .az-hero-visual {
        min-height: 360px;
    }

    .az-hero-image-layer {
        inset: -4% -16% -14%;
    }

    .az-hero-image-layer img {
        opacity: .78;
        object-position: 50% 42%;
    }

    .az-hero-trust {
        gap: 14px;
        margin-top: 22px;
    }

    .az-hero-scroll {
        display: none;
    }
}

/* ==========================================================
   V2 — PHASE 13 / CINEMATIC BORDERLESS HERO
   Full background photo below transparent overlays
========================================================== */
.az-hero.az-hero-p13 {
    position: relative;
    isolation: isolate;
    min-height: clamp(690px, 88svh, 900px);
    padding: 132px 0 78px;
    overflow: hidden;
    background: #090806;
}

.az-hero-p13 .az-hero-photo,
.az-hero-p13 .az-hero-photo-shade {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.az-hero-p13 .az-hero-photo {
    z-index: -4;
    background-image: url('/assets/stallion/images/1752867532648809.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    /* الصورة الأصلية يظهر رأس الحصان باتجاه النص، بلا flip وبلا إطار */
    background-position: left 43%;
    filter: saturate(.70) contrast(1.05) brightness(.82);
    transform: scale(1.015);
    transform-origin: center;
}

.az-hero-p13 .az-hero-photo-shade {
    z-index: -3;
    background:
        linear-gradient(90deg,
            rgba(7,7,6,.10) 0%,
            rgba(7,7,6,.18) 30%,
            rgba(8,7,5,.63) 49%,
            rgba(8,7,5,.91) 65%,
            rgba(8,7,5,.98) 100%),
        linear-gradient(180deg,
            rgba(7,6,5,.10) 0%,
            rgba(7,6,5,.05) 54%,
            rgba(7,6,5,.42) 100%);
}

.az-hero-p13::after {
    content: "";
    position: absolute;
    z-index: -2;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 77% 47%, rgba(198,162,75,.075), transparent 34%),
        linear-gradient(180deg, transparent 70%, rgba(0,0,0,.20));
}

/* تعطيل كل طبقات الصور القديمة نهائياً في هذا الإصدار */
.az-hero-p13 > .az-hero-bg,
.az-hero-p13 .az-hero-grid,
.az-hero-p13 .az-hero-visual,
.az-hero-p13 .az-hero-image-layer,
.az-hero-p13 .az-hero-eyebrow {
    display: none !important;
}

.az-hero-p13 .az-hero-stage {
    min-height: 590px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    z-index: 4;
}

.az-hero-p13 .az-hero-copy {
    width: min(760px, 49vw);
    margin-right: 0;
    margin-left: auto;
    direction: rtl;
    text-align: right;
}

.az-hero-p13 .az-hero-title,
.az-hero-p13 h1.az-hero-title {
    margin: 0;
    max-width: 100%;
    color: #fff;
    font-size: clamp(42px, 4vw, 68px);
    line-height: 1.22;
    font-weight: 800;
    letter-spacing: -.035em;
    white-space: nowrap;
    text-wrap: nowrap;
    text-shadow: 0 8px 30px rgba(0,0,0,.30);
}

.az-hero-p13 .az-hero-title::after {
    width: min(190px, 30%);
    margin-top: 23px;
    margin-right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, #eed584 45%, #b88926);
}

.az-hero-p13 .az-hero-lead {
    max-width: 660px;
    margin: 25px 0 0;
    color: rgba(255,255,255,.78);
    font-size: clamp(14px, .98vw, 16px);
    line-height: 2;
    font-weight: 500;
}

.az-hero-p13 .az-hero-actions {
    width: 100%;
    max-width: 735px;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
    margin-top: 31px;
}

.az-hero-p13 .az-hero-action {
    min-height: 76px;
    border-radius: 16px;
}

.az-hero-p13 .az-hero-action-copy strong { font-size: 12.5px; }
.az-hero-p13 .az-hero-action-copy small { font-size: 8.8px; }

.az-hero-p13 .az-hero-brandline {
    width: min(100%, 735px);
    display: grid;
    grid-template-columns: minmax(30px,1fr) auto minmax(30px,1fr);
    align-items: center;
    gap: 18px;
    margin-top: 24px;
    direction: ltr;
}

.az-hero-p13 .az-hero-brandline span {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(214,177,74,.72));
}

.az-hero-p13 .az-hero-brandline span:last-child {
    transform: scaleX(-1);
}

.az-hero-p13 .az-hero-brandline strong {
    color: #e6c35d;
    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .28em;
    white-space: nowrap;
}

.az-hero-p13 .az-hero-trust {
    width: min(100%, 735px);
    margin-top: 24px;
    justify-content: center;
}

@media (max-width: 1240px) {
    .az-hero-p13 .az-hero-copy { width: min(700px, 54vw); }
    .az-hero-p13 .az-hero-title,
    .az-hero-p13 h1.az-hero-title { font-size: clamp(38px, 4.1vw, 58px); }
}

@media (max-width: 980px) {
    .az-hero.az-hero-p13 { min-height: 760px; padding: 112px 0 54px; }
    .az-hero-p13 .az-hero-photo {
        background-position: 35% center;
    }
    .az-hero-p13 .az-hero-photo-shade {
        background:
            linear-gradient(180deg, rgba(7,7,6,.20) 0%, rgba(7,7,6,.48) 36%, rgba(7,7,6,.92) 72%, #090806 100%),
            linear-gradient(90deg, rgba(7,7,6,.10), rgba(7,7,6,.55));
    }
    .az-hero-p13 .az-hero-stage { min-height: 620px; align-items: flex-end; }
    .az-hero-p13 .az-hero-copy {
        width: 100%;
        max-width: 760px;
        margin-inline: auto;
        text-align: center;
    }
    .az-hero-p13 .az-hero-title,
    .az-hero-p13 h1.az-hero-title {
        white-space: normal;
        text-wrap: balance;
        font-size: clamp(36px, 7vw, 54px);
    }
    .az-hero-p13 .az-hero-title::after { margin-inline: auto; }
    .az-hero-p13 .az-hero-lead { margin-inline: auto; }
    .az-hero-p13 .az-hero-actions,
    .az-hero-p13 .az-hero-brandline,
    .az-hero-p13 .az-hero-trust { margin-inline: auto; }
}

@media (max-width: 680px) {
    .az-hero.az-hero-p13 { min-height: 720px; padding: 92px 0 38px; }
    .az-hero-p13 .az-hero-photo {
        background-position: 30% top;
        background-size: auto 58%;
        background-color: #090806;
    }
    .az-hero-p13 .az-hero-photo-shade {
        background: linear-gradient(180deg, rgba(7,7,6,.10) 0%, rgba(7,7,6,.24) 28%, rgba(7,7,6,.88) 51%, #090806 67%);
    }
    .az-hero-p13 .az-hero-stage { min-height: 590px; }
    .az-hero-p13 .az-hero-title,
    .az-hero-p13 h1.az-hero-title { font-size: clamp(31px, 9.2vw, 43px); line-height: 1.35; }
    .az-hero-p13 .az-hero-lead { font-size: 12.5px; line-height: 1.9; }
    .az-hero-p13 .az-hero-actions { grid-template-columns: 1fr; gap: 9px; }
    .az-hero-p13 .az-hero-action-primary { grid-column: auto; }
    .az-hero-p13 .az-hero-action { min-height: 66px; }
    .az-hero-p13 .az-hero-brandline { gap: 11px; margin-top: 20px; }
    .az-hero-p13 .az-hero-brandline strong { font-size: 11px; letter-spacing: .20em; }
    .az-hero-p13 .az-hero-trust { margin-top: 18px; }
}

/* ==========================================================
   V2 — FINAL HORSE FIT & VISUAL BALANCE
========================================================== */

/* Use the complete cinematic source without cropping its edges. */
.az-hero.az-hero-p16 {
    min-height: clamp(660px, 84svh, 820px);
    padding: 96px 0 42px;
}

.az-hero-p16 > .az-hero-photo {
    inset: 0;
    width: 100%;
    min-width: 0;
    background: #070706;
    -webkit-mask-image: none;
    mask-image: none;
}

.az-hero-p16 > .az-hero-photo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center;
    transform: scale(.96);
    transform-origin: left center;
    opacity: 1;
    filter: saturate(.78) contrast(1.08) brightness(.91) sepia(.035);
}

.az-hero-p16 > .az-hero-photo-shade {
    background:
        linear-gradient(90deg, rgba(3,3,3,.02) 0%, rgba(3,3,3,.03) 30%, rgba(7,6,5,.2) 48%, rgba(7,7,6,.78) 68%, #070706 88%),
        linear-gradient(180deg, rgba(0,0,0,.18), transparent 28%, transparent 72%, rgba(0,0,0,.5));
}

.az-hero-p16 .az-hero-stage { min-height: 560px; }
.az-hero-p16 .az-hero-copy { width: min(720px, 47vw); }
.az-hero-p16 .az-hero-lead { font-size: clamp(14px, 1vw, 16px); }

/* Keep all statistics visually consistent. */
.az-stat-card-featured {
    color: var(--az-text);
    background: linear-gradient(145deg, rgba(255,255,255,.99), rgba(248,245,239,.99));
    border-color: rgba(198,162,75,.2);
    box-shadow: 0 14px 34px rgba(13,12,10,.075);
}
.az-stat-card-featured .az-stat-number { color: var(--az-text); }
.az-stat-card-featured .az-stat-label { color: var(--az-text-soft); }
.az-stat-card-featured .az-stat-description { color: var(--az-text-soft); }

/* Stronger separation and readability in service cards. */
.az-services-section { background-color: #fffdf9; }
.az-service-card {
    background: linear-gradient(145deg, #ffffff, #fbf7ef);
    border-color: rgba(178,132,35,.22);
    box-shadow: 0 16px 38px rgba(31,24,13,.075);
}
.az-service-card:hover {
    border-color: rgba(178,132,35,.44);
    box-shadow: 0 24px 48px rgba(31,24,13,.12);
}

/* Center one or two stallions; preserve carousel behavior for 3+. */
.az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) {
    justify-content: center;
}
.az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card {
    width: min(390px, calc((100% - 26px) / 2));
    min-width: min(390px, calc((100% - 26px) / 2));
}

/* Give the expertise cards equal weight beside the heading. */
.az-about-strip-inner { grid-template-columns: minmax(420px, 1fr) minmax(0, 1.25fr); }
.az-about-features article { min-height: 168px; }
.az-about-features article > span { width: 48px; height: 48px; }
.az-about-features strong { font-size: 13px; }
.az-about-features small { font-size: 10px; }

@media (max-width: 1280px) {
    .az-hero-p16 > .az-hero-photo { width: 100%; min-width: 0; }
    .az-hero-p16 > .az-hero-photo img { object-position: left center; transform: scale(.94); }
    .az-about-strip-inner { grid-template-columns: minmax(350px, .9fr) minmax(0, 1.1fr); }
}

@media (max-width: 980px) {
    .az-hero.az-hero-p16 { min-height: 880px; padding: 86px 0 34px; }
    .az-hero-p16 > .az-hero-photo { height: 56%; }
    .az-hero-p16 > .az-hero-photo img { object-fit: contain; object-position: center top; transform: scale(.96); transform-origin: center top; }
    .az-hero-p16 .az-hero-stage { min-height: 750px; }
    .az-hero-p16 .az-hero-copy { width: 100%; }
    .az-about-strip-inner { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
    .az-hero.az-hero-p16 { min-height: 840px; padding: 76px 0 26px; }
    .az-hero-p16 > .az-hero-photo { height: 42%; }
    .az-hero-p16 > .az-hero-photo img { object-fit: contain; object-position: center top; transform: scale(.94); }
    .az-hero-p16 .az-hero-stage { min-height: 730px; }
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card { width: 100%; min-width: 100%; }
    .az-about-features article { min-height: 122px; }
}

/* ==========================================================
   V2 — PHASE 15 / SIGNATURE CINEMATIC HERO
   Premium unified composition with preserved CTA behaviour
========================================================== */

.az-hero.az-hero-p15 {
    --p15-gold: #d8b653;
    --p15-gold-light: #f1dc91;
    --p15-ink: #080806;
    position: relative;
    isolation: isolate;
    min-height: clamp(720px, 100svh, 940px);
    display: flex;
    align-items: center;
    padding: 126px 0 72px;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(ellipse 44% 58% at 79% 42%, rgba(216,182,83,.09), transparent 68%),
        linear-gradient(112deg, #070706 0%, #0b0a08 56%, #17130c 100%);
}

.az-hero-p15::before,
.az-hero-p15::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.az-hero-p15::before {
    z-index: -2;
    inset: 0;
    opacity: .24;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 72px 72px;
    -webkit-mask-image: linear-gradient(90deg, transparent 34%, #000 72%, transparent);
    mask-image: linear-gradient(90deg, transparent 34%, #000 72%, transparent);
}

.az-hero-p15::after {
    z-index: 8;
    right: 6%;
    bottom: 0;
    left: 6%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(216,182,83,.48), transparent);
}

.az-hero-p15 > .az-hero-photo {
    position: absolute;
    z-index: -5;
    inset: 0 auto 0 0;
    width: min(60.5vw, 1160px);
    min-width: 740px;
    overflow: hidden;
    pointer-events: none;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 60%, rgba(0,0,0,.92) 72%, rgba(0,0,0,.48) 86%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, #000 60%, rgba(0,0,0,.92) 72%, rgba(0,0,0,.48) 86%, transparent 100%);
}

.az-hero-p15 > .az-hero-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 48% 43%;
    transform: scale(1.035);
    opacity: .92;
    filter: saturate(.66) contrast(1.1) brightness(.69) sepia(.05);
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.az-hero-p15 > .az-hero-photo-shade {
    position: absolute;
    z-index: -4;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(4,4,3,.08) 0%, rgba(5,5,4,.11) 28%, rgba(7,6,5,.36) 43%, rgba(8,7,5,.88) 60%, rgba(8,7,5,.985) 75%, #080806 100%),
        linear-gradient(180deg, rgba(0,0,0,.22), transparent 33%, transparent 68%, rgba(0,0,0,.66));
}

.az-hero-p15 > .az-hero-bg,
.az-hero-p15 > .az-hero-overlay,
.az-hero-p15 .az-hero-grid,
.az-hero-p15 .az-hero-visual,
.az-hero-p15 .az-hero-image-layer,
.az-hero-p15 .az-hero-image-wrap,
.az-hero-p15 .az-hero-badge,
.az-hero-p15 .az-hero-eyebrow {
    display: none !important;
}

.az-hero-p15 .az-hero-stage {
    position: relative;
    z-index: 5;
    min-height: 600px;
    display: flex;
    align-items: center;
}

.az-hero-p15 .az-hero-copy {
    width: min(770px, 48vw);
    margin-right: 0;
    margin-left: auto;
    direction: rtl;
    text-align: right;
}

.az-hero-p15 .az-hero-kicker {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 21px;
    color: rgba(255,255,255,.7);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .025em;
}

.az-hero-p15 .az-hero-kicker-mark {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    color: var(--p15-gold-light);
    border: 1px solid rgba(216,182,83,.33);
    border-radius: 50%;
    background: rgba(216,182,83,.07);
    box-shadow: 0 0 26px rgba(216,182,83,.08);
    font-size: 9px;
}

.az-hero-p15 .az-hero-title,
.az-hero-p15 h1.az-hero-title {
    max-width: none;
    margin: 0;
    color: #fff;
    font-size: clamp(43px, 3.7vw, 67px);
    line-height: 1.18;
    font-weight: 850;
    letter-spacing: -.045em;
    white-space: nowrap;
    text-shadow: 0 10px 38px rgba(0,0,0,.46);
}

.az-hero-p15 .az-hero-title::after {
    content: "";
    display: block;
    width: 156px;
    height: 2px;
    margin-top: 24px;
    margin-right: 0;
    background: linear-gradient(90deg, transparent, var(--p15-gold-light) 45%, #a97a1f);
    box-shadow: 0 0 18px rgba(216,182,83,.24);
}

.az-hero-p15 .az-hero-lead {
    max-width: 690px;
    margin: 21px 0 0;
    color: rgba(255,255,255,.72);
    font-size: clamp(13px, .88vw, 15px);
    line-height: 2.05;
    font-weight: 500;
}

.az-hero-p15 .az-hero-actions {
    width: 100%;
    max-width: 750px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
    margin-top: 30px;
}

.az-hero-p15 .az-hero-action {
    position: relative;
    min-width: 0;
    min-height: 82px;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr) 16px;
    align-items: center;
    gap: 10px;
    padding: 13px 15px;
    color: #fff;
    text-align: right;
    text-decoration: none !important;
    cursor: pointer;
    border: 1px solid rgba(216,182,83,.25);
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.012));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 18px 40px rgba(0,0,0,.2);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.az-hero-p15 .az-hero-action::before {
    content: "";
    position: absolute;
    top: 0;
    right: 20px;
    left: 20px;
    height: 1px;
    opacity: .55;
    background: linear-gradient(90deg, transparent, rgba(241,220,145,.7), transparent);
}

.az-hero-p15 .az-hero-action:hover {
    color: #fff;
    transform: translateY(-4px);
    border-color: rgba(241,220,145,.58);
    background: linear-gradient(145deg, rgba(216,182,83,.14), rgba(255,255,255,.025));
    box-shadow: 0 24px 48px rgba(0,0,0,.3), 0 0 0 1px rgba(216,182,83,.04);
}

.az-hero-p15 .az-hero-action-primary {
    color: #171208;
    border-color: rgba(255,235,165,.76);
    background: linear-gradient(135deg, #f4dd8b 0%, #ddb84d 52%, #b98724 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 18px 42px rgba(185,135,36,.24);
}

.az-hero-p15 .az-hero-action-primary:hover {
    color: #100d07;
    background: linear-gradient(135deg, #f9e7a2, #e4c15d 52%, #c4942f);
}

.az-hero-p15 .az-hero-action-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    color: var(--p15-gold-light);
    border: 1px solid rgba(241,220,145,.2);
    border-radius: 13px;
    background: rgba(0,0,0,.2);
    font-size: 17px;
}

.az-hero-p15 .az-hero-action-primary .az-hero-action-icon {
    color: #171208;
    border-color: rgba(23,18,8,.16);
    background: rgba(255,255,255,.2);
}

.az-hero-p15 .az-hero-action-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.az-hero-p15 .az-hero-action-copy strong {
    color: inherit;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1.35;
    white-space: nowrap;
}

.az-hero-p15 .az-hero-action-copy small {
    color: rgba(255,255,255,.46);
    font-size: 8.8px;
}

.az-hero-p15 .az-hero-action-primary .az-hero-action-copy small { color: rgba(23,18,8,.6); }
.az-hero-p15 .az-hero-action-arrow { color: var(--p15-gold-light); font-size: 12px; transition: transform .25s ease; }
.az-hero-p15 .az-hero-action-primary .az-hero-action-arrow { color: #171208; }
.az-hero-p15 .az-hero-action:hover .az-hero-action-arrow { transform: translateX(-3px); }

.az-hero-p15 .az-hero-brandline {
    width: min(100%,750px);
    display: grid;
    grid-template-columns: minmax(40px,1fr) auto minmax(40px,1fr);
    align-items: center;
    gap: 18px;
    margin-top: 22px;
    direction: ltr;
}

.az-hero-p15 .az-hero-brandline span { height: 1px; background: linear-gradient(90deg, transparent, rgba(216,182,83,.54)); }
.az-hero-p15 .az-hero-brandline span:last-child { transform: scaleX(-1); }
.az-hero-p15 .az-hero-brandline strong {
    color: #e9ca69;
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .3em;
    white-space: nowrap;
}

.az-hero-p15 .az-hero-trust {
    width: min(100%,750px);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 26px;
    margin-top: 20px;
}

.az-hero-p15 .az-trust-item { align-items: center; gap: 3px; min-width: 88px; }
.az-hero-p15 .az-trust-item strong { color: var(--p15-gold-light); font-size: 12px; font-weight: 800; }
.az-hero-p15 .az-trust-item span { color: rgba(255,255,255,.43); font-size: 9px; }
.az-hero-p15 .az-trust-divider { width: 1px; height: 30px; background: linear-gradient(transparent, rgba(216,182,83,.42), transparent); }
.az-hero-p15 .az-hero-scroll { right: 25px; bottom: 18px; }

@media (max-width: 1280px) {
    .az-hero-p15 > .az-hero-photo { width: 61vw; min-width: 660px; }
    .az-hero-p15 .az-hero-copy { width: min(710px,52vw); }
    .az-hero-p15 .az-hero-title,
    .az-hero-p15 h1.az-hero-title { font-size: clamp(38px,3.8vw,56px); }
}

@media (max-width: 980px) {
    .az-hero.az-hero-p15 { min-height: 900px; padding: 100px 0 48px; align-items: flex-end; }
    .az-hero-p15 > .az-hero-photo {
        width: 100%;
        min-width: 0;
        height: 61%;
        -webkit-mask-image: linear-gradient(180deg,#000 0%,#000 56%,rgba(0,0,0,.74) 73%,transparent 100%);
        mask-image: linear-gradient(180deg,#000 0%,#000 56%,rgba(0,0,0,.74) 73%,transparent 100%);
    }
    .az-hero-p15 > .az-hero-photo img { object-position: 48% 34%; opacity: .82; }
    .az-hero-p15 > .az-hero-photo-shade {
        background: linear-gradient(180deg,rgba(4,4,3,.08),rgba(5,5,4,.14) 30%,rgba(7,6,5,.58) 52%,rgba(8,7,5,.96) 69%,#080806 100%);
    }
    .az-hero-p15 .az-hero-stage { min-height: 750px; align-items: flex-end; }
    .az-hero-p15 .az-hero-copy { width: 100%; max-width: 760px; margin-inline: auto; text-align: center; }
    .az-hero-p15 .az-hero-kicker { justify-content: center; margin-inline: auto; }
    .az-hero-p15 .az-hero-title,
    .az-hero-p15 h1.az-hero-title { white-space: normal; text-wrap: balance; font-size: clamp(36px,6.5vw,52px); }
    .az-hero-p15 .az-hero-title::after,
    .az-hero-p15 .az-hero-lead,
    .az-hero-p15 .az-hero-actions,
    .az-hero-p15 .az-hero-brandline,
    .az-hero-p15 .az-hero-trust { margin-inline: auto; }
}

@media (max-width: 680px) {
    .az-hero.az-hero-p15 { min-height: 850px; padding: 88px 0 32px; }
    .az-hero-p15 > .az-hero-photo { height: 48%; }
    .az-hero-p15 > .az-hero-photo img { object-position: 50% 26%; opacity: .76; }
    .az-hero-p15 > .az-hero-photo-shade {
        background: linear-gradient(180deg,rgba(4,4,3,.05),rgba(6,5,4,.2) 26%,rgba(7,6,5,.72) 45%,#080806 61%,#080806 100%);
    }
    .az-hero-p15 .az-hero-stage { min-height: 720px; }
    .az-hero-p15 .az-hero-kicker { max-width: 94%; margin-bottom: 14px; font-size: 8.5px; }
    .az-hero-p15 .az-hero-kicker-mark { width: 26px; height: 26px; flex: 0 0 26px; }
    .az-hero-p15 .az-hero-title,
    .az-hero-p15 h1.az-hero-title { font-size: clamp(30px,8.8vw,41px); line-height: 1.34; }
    .az-hero-p15 .az-hero-title::after { width: 110px; margin-top: 17px; }
    .az-hero-p15 .az-hero-lead { max-width: 520px; margin-top: 16px; font-size: 11.5px; line-height: 1.9; }
    .az-hero-p15 .az-hero-actions { grid-template-columns: 1fr; gap: 8px; margin-top: 21px; }
    .az-hero-p15 .az-hero-action { min-height: 64px; grid-template-columns: 42px minmax(0,1fr) 15px; padding: 10px 13px; border-radius: 14px; }
    .az-hero-p15 .az-hero-action-icon { width: 42px; height: 42px; border-radius: 11px; }
    .az-hero-p15 .az-hero-brandline { gap: 10px; margin-top: 17px; }
    .az-hero-p15 .az-hero-brandline strong { font-size: 10px; letter-spacing: .2em; }
    .az-hero-p15 .az-hero-trust { gap: 10px; margin-top: 15px; }
    .az-hero-p15 .az-trust-item { min-width: 68px; }
    .az-hero-p15 .az-trust-item strong { font-size: 10.5px; }
    .az-hero-p15 .az-trust-item span { font-size: 8px; }
    .az-hero-p15 .az-hero-scroll { display: none; }
}


/* ==========================================================
   V2 — PHASE 14 / LEFT HORSE CINEMATIC HERO
   Horse on LEFT, face toward RIGHT-side copy, no rectangle edge
========================================================== */

.az-hero.az-hero-p14 {
    position: relative;
    isolation: isolate;
    min-height: clamp(700px, 88svh, 900px);
    padding: 132px 0 76px;
    overflow: hidden;

    background:
        radial-gradient(circle at 76% 42%, rgba(198,162,75,.075), transparent 30%),
        linear-gradient(112deg, #0a0907 0%, #0d0b08 50%, #17130d 100%);
}

/* ----------------------------------------------------------
   PHOTO LAYER
   - physically fixed to LEFT side
   - no border / radius / card
   - transparent mask hides the right rectangular edge
---------------------------------------------------------- */
.az-hero-p14 > .az-hero-photo {
    position: absolute;
    z-index: -5;

    top: 0;
    bottom: 0;
    left: 0;
    right: auto;

    width: min(64vw, 1180px);
    min-width: 760px;

    overflow: hidden;
    pointer-events: none;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    -webkit-mask-image:
        linear-gradient(
            90deg,
            #000 0%,
            #000 63%,
            rgba(0,0,0,.94) 72%,
            rgba(0,0,0,.66) 82%,
            rgba(0,0,0,.25) 92%,
            transparent 100%
        );

    mask-image:
        linear-gradient(
            90deg,
            #000 0%,
            #000 63%,
            rgba(0,0,0,.94) 72%,
            rgba(0,0,0,.66) 82%,
            rgba(0,0,0,.25) 92%,
            transparent 100%
        );
}

.az-hero-p14 > .az-hero-photo img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    /*
     * الصورة الحالية يتجه رأس الحصان فيها إلى اليمين،
     * أي باتجاه النص الموجود على يمين الصفحة.
     */
    object-position: 46% 43%;

    transform: scale(1.025);
    transform-origin: center center;

    opacity: .88;

    filter:
        saturate(.62)
        contrast(1.07)
        brightness(.78)
        sepia(.06);

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Transparent layer is ABOVE photo, not around it */
.az-hero-p14 > .az-hero-photo-shade {
    position: absolute;
    z-index: -4;
    inset: 0;
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(7,7,6,.10) 0%,
            rgba(7,7,6,.10) 25%,
            rgba(7,7,6,.22) 39%,
            rgba(8,7,5,.58) 51%,
            rgba(8,7,5,.91) 64%,
            rgba(8,7,5,.985) 76%,
            rgba(8,7,5,.995) 100%
        ),
        linear-gradient(
            180deg,
            rgba(6,5,4,.16) 0%,
            rgba(6,5,4,.02) 38%,
            rgba(6,5,4,.08) 67%,
            rgba(6,5,4,.52) 100%
        );
}

.az-hero-p14::before {
    content: "";
    position: absolute;
    z-index: -3;
    inset: 0;
    pointer-events: none;

    background:
        radial-gradient(
            ellipse 39% 54% at 27% 48%,
            rgba(224,188,87,.075),
            transparent 72%
        ),
        radial-gradient(
            ellipse 35% 46% at 77% 45%,
            rgba(198,162,75,.055),
            transparent 72%
        );
}

/* Remove every old hero visual/card if inherited from previous phases */
.az-hero-p14 > .az-hero-bg,
.az-hero-p14 > .az-hero-overlay,
.az-hero-p14 .az-hero-grid,
.az-hero-p14 .az-hero-visual,
.az-hero-p14 .az-hero-image-layer,
.az-hero-p14 .az-hero-image-wrap,
.az-hero-p14 .az-hero-badge,
.az-hero-p14 .az-hero-eyebrow {
    display: none !important;
}

/* ----------------------------------------------------------
   COPY: right side of desktop
---------------------------------------------------------- */
.az-hero-p14 .az-hero-stage {
    position: relative;
    z-index: 5;

    min-height: 585px;

    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.az-hero-p14 .az-hero-copy {
    width: min(760px, 48vw);

    margin-right: 0;
    margin-left: auto;

    direction: rtl;
    text-align: right;
}

/* balanced size, one line on desktop */
.az-hero-p14 .az-hero-title,
.az-hero-p14 h1.az-hero-title {
    margin: 0;

    color: #fff;

    max-width: none;

    font-size: clamp(40px, 3.65vw, 64px);
    line-height: 1.24;
    font-weight: 800;

    letter-spacing: -.032em;

    white-space: nowrap;
    text-wrap: nowrap;

    text-shadow:
        0 7px 26px rgba(0,0,0,.35);
}

.az-hero-p14 .az-hero-title::after {
    content: "";

    display: block;

    width: min(180px, 29%);
    height: 1px;

    margin-top: 22px;
    margin-right: 0;

    background:
        linear-gradient(
            90deg,
            transparent,
            #f0d883 40%,
            #b88926
        );
}

.az-hero-p14 .az-hero-lead {
    max-width: 650px;

    margin: 23px 0 0;

    color: rgba(255,255,255,.76);

    font-size: clamp(13.5px, .92vw, 15.5px);
    line-height: 2;

    font-weight: 500;
}

/* ----------------------------------------------------------
   CTA AREA
---------------------------------------------------------- */
.az-hero-p14 .az-hero-actions {
    width: 100%;
    max-width: 735px;

    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));

    gap: 11px;

    margin-top: 30px;
}

.az-hero-p14 .az-hero-action {
    min-height: 74px;

    display: grid;
    grid-template-columns: 44px minmax(0,1fr) 16px;
    align-items: center;
    gap: 10px;

    padding: 12px 14px;

    border-radius: 15px;

    text-align: right;
}

.az-hero-p14 .az-hero-action-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
}

.az-hero-p14 .az-hero-action-copy strong {
    font-size: 12.3px;
}

.az-hero-p14 .az-hero-action-copy small {
    font-size: 8.6px;
}

/* ----------------------------------------------------------
   AZZAM CENTER stays BELOW buttons
---------------------------------------------------------- */
.az-hero-p14 .az-hero-brandline {
    width: min(100%, 735px);

    display: grid;
    grid-template-columns: minmax(34px,1fr) auto minmax(34px,1fr);
    align-items: center;

    gap: 16px;

    margin-top: 23px;

    direction: ltr;
}

.az-hero-p14 .az-hero-brandline span {
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(214,177,74,.64)
        );
}

.az-hero-p14 .az-hero-brandline span:last-child {
    transform: scaleX(-1);
}

.az-hero-p14 .az-hero-brandline strong {
    color: #e9c963;

    font-family: Arial, sans-serif;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: .24em;

    white-space: nowrap;
}

/* trust line */
.az-hero-p14 .az-hero-trust {
    width: min(100%,735px);

    margin-top: 22px;

    justify-content: center;
}

/* ==========================================================
   DESKTOP / LAPTOP
========================================================== */
@media (max-width: 1280px) {

    .az-hero-p14 > .az-hero-photo {
        width: 63vw;
        min-width: 680px;
    }

    .az-hero-p14 .az-hero-copy {
        width: min(690px, 52vw);
    }

    .az-hero-p14 .az-hero-title,
    .az-hero-p14 h1.az-hero-title {
        font-size: clamp(37px, 3.8vw, 55px);
    }
}

/* ==========================================================
   TABLET
========================================================== */
@media (max-width: 980px) {

    .az-hero.az-hero-p14 {
        min-height: 800px;
        padding: 108px 0 50px;
    }

    .az-hero-p14 > .az-hero-photo {
        top: 0;
        left: 0;

        width: 100%;
        min-width: 0;
        height: 58%;

        -webkit-mask-image:
            linear-gradient(
                180deg,
                #000 0%,
                #000 62%,
                rgba(0,0,0,.60) 80%,
                transparent 100%
            );

        mask-image:
            linear-gradient(
                180deg,
                #000 0%,
                #000 62%,
                rgba(0,0,0,.60) 80%,
                transparent 100%
            );
    }

    .az-hero-p14 > .az-hero-photo img {
        object-position: 42% 36%;
        opacity: .78;
    }

    .az-hero-p14 > .az-hero-photo-shade {
        background:
            linear-gradient(
                180deg,
                rgba(7,7,6,.08) 0%,
                rgba(7,7,6,.22) 31%,
                rgba(7,7,6,.72) 57%,
                rgba(7,7,6,.98) 74%,
                #090806 100%
            );
    }

    .az-hero-p14 .az-hero-stage {
        min-height: 650px;
        align-items: flex-end;
    }

    .az-hero-p14 .az-hero-copy {
        width: 100%;
        max-width: 760px;

        margin-inline: auto;

        text-align: center;
    }

    .az-hero-p14 .az-hero-title,
    .az-hero-p14 h1.az-hero-title {
        white-space: normal;
        text-wrap: balance;

        font-size: clamp(35px, 6.6vw, 51px);
    }

    .az-hero-p14 .az-hero-title::after {
        margin-inline: auto;
    }

    .az-hero-p14 .az-hero-lead {
        margin-inline: auto;
    }

    .az-hero-p14 .az-hero-actions,
    .az-hero-p14 .az-hero-brandline,
    .az-hero-p14 .az-hero-trust {
        margin-inline: auto;
    }
}

/* ==========================================================
   MOBILE
========================================================== */
@media (max-width: 680px) {

    .az-hero.az-hero-p14 {
        min-height: 760px;
        padding: 90px 0 34px;
    }

    .az-hero-p14 > .az-hero-photo {
        height: 52%;
    }

    .az-hero-p14 > .az-hero-photo img {
        object-position: 39% 25%;
        opacity: .74;
    }

    .az-hero-p14 > .az-hero-photo-shade {
        background:
            linear-gradient(
                180deg,
                rgba(7,7,6,.06) 0%,
                rgba(7,7,6,.22) 28%,
                rgba(7,7,6,.79) 49%,
                #090806 66%,
                #090806 100%
            );
    }

    .az-hero-p14 .az-hero-stage {
        min-height: 650px;
    }

    .az-hero-p14 .az-hero-title,
    .az-hero-p14 h1.az-hero-title {
        font-size: clamp(30px, 8.9vw, 41px);
        line-height: 1.37;
    }

    .az-hero-p14 .az-hero-lead {
        max-width: 520px;

        font-size: 12px;
        line-height: 1.9;
    }

    .az-hero-p14 .az-hero-actions {
        grid-template-columns: 1fr;
        gap: 8px;

        margin-top: 24px;
    }

    .az-hero-p14 .az-hero-action-primary {
        grid-column: auto;
    }

    .az-hero-p14 .az-hero-action {
        min-height: 64px;
    }

    .az-hero-p14 .az-hero-brandline {
        gap: 10px;
        margin-top: 18px;
    }

    .az-hero-p14 .az-hero-brandline strong {
        font-size: 10.5px;
        letter-spacing: .18em;
    }

    .az-hero-p14 .az-hero-trust {
        margin-top: 17px;
    }

    .az-hero-p14 .az-hero-scroll {
        display: none;
    }
}

/* ==========================================================
   V2 — PHASE 16 / REFERENCE-MATCH LUXURY HERO
========================================================== */
.az-hero.az-hero-p16 {
    --p16-gold: #d8b34c;
    --p16-gold-light: #f1d985;
    position: relative;
    isolation: isolate;
    min-height: clamp(720px, 100svh, 940px);
    display: flex;
    align-items: center;
    padding: 112px 0 48px;
    overflow: hidden;
    color: #fff;
    background: #070706;
}

.az-hero-p16::before,
.az-hero-p16::after {
    content: "";
    position: absolute;
    z-index: 8;
    right: 5%;
    left: 5%;
    height: 1px;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, rgba(216,179,76,.62) 34%, rgba(241,217,133,.82) 50%, rgba(216,179,76,.62) 66%, transparent);
}
.az-hero-p16::before { top: 0; }
.az-hero-p16::after { bottom: 0; }

.az-hero-p16 > .az-hero-photo {
    position: absolute;
    z-index: -5;
    inset: 0 auto 0 0;
    width: 68%;
    min-width: 800px;
    overflow: hidden;
    pointer-events: none;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        #1c120c
        url('../../../../assets/stallion/images/azzam-hero-black-horse.png')
        left center / cover no-repeat;
    -webkit-mask-image: linear-gradient(90deg,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,rgba(0,0,0,.42) 91%,transparent 100%);
    mask-image: linear-gradient(90deg,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,rgba(0,0,0,.42) 91%,transparent 100%);
}

.az-hero-p16 > .az-hero-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: right center;
    transform: none;
    opacity: .96;
    filter: saturate(.72) contrast(1.12) brightness(.78) sepia(.05);
    border: 0 !important;
    border-radius: 0 !important;
}

.az-hero-p16 > .az-hero-photo-shade {
    position: absolute;
    z-index: -4;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg,rgba(3,3,3,.02),rgba(3,3,3,.06) 31%,rgba(6,5,4,.22) 47%,rgba(7,6,5,.72) 62%,rgba(7,7,6,.97) 76%,#070706 100%),
        linear-gradient(180deg,rgba(0,0,0,.28),transparent 30%,transparent 70%,rgba(0,0,0,.62));
}

.az-hero-p16 > .az-hero-bg,
.az-hero-p16 > .az-hero-overlay,
.az-hero-p16 .az-hero-grid,
.az-hero-p16 .az-hero-visual,
.az-hero-p16 .az-hero-image-layer,
.az-hero-p16 .az-hero-image-wrap,
.az-hero-p16 .az-hero-badge,
.az-hero-p16 .az-hero-eyebrow { display: none !important; }

.az-hero-p16 .az-hero-stage {
    position: relative;
    z-index: 5;
    min-height: 620px;
    display: flex;
    align-items: center;
}

.az-hero-p16 .az-hero-copy {
    width: min(700px, 46vw);
    margin-right: 0;
    margin-left: auto;
    direction: rtl;
    text-align: right;
}

.az-hero-p16 .az-hero-kicker {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
    padding: 7px 15px;
    color: rgba(255,255,255,.72);
    border: 1px solid rgba(216,179,76,.32);
    border-radius: 999px;
    background: linear-gradient(135deg,rgba(216,179,76,.09),rgba(255,255,255,.015));
    box-shadow: inset 0 1px rgba(255,255,255,.035), 0 10px 30px rgba(0,0,0,.18);
    font-size: 9px;
    font-weight: 700;
}
.az-hero-p16 .az-hero-kicker-mark {
    width: auto;
    height: auto;
    display: inline;
    color: var(--p16-gold-light);
    border: 0;
    background: none;
    font-size: 10px;
}

.az-hero-p16 .az-hero-title,
.az-hero-p16 h1.az-hero-title {
    margin: 0;
    color: #fff;
    font-size: clamp(48px,4.35vw,76px);
    line-height: 1.03;
    font-weight: 850;
    letter-spacing: -.045em;
    white-space: normal;
    text-shadow: 0 10px 36px rgba(0,0,0,.52);
}
.az-hero-p16 .az-hero-title span { display: block; }
.az-hero-p16 .az-hero-title-main { margin-top:0; color:#fff; }
.az-hero-p16 .az-hero-title-gold {
    margin-top: 8px;
    color: transparent;
    background: linear-gradient(110deg,#f4dfa0 0%,#d7ad43 46%,#f0d47d 76%,#b98222 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
.az-hero-p16 .az-hero-title::after { display: none; }

.az-hero-p16 .az-hero-lead {
    max-width: 630px;
    margin: 18px 0 0;
    color: rgba(255,255,255,.72);
    font-size: clamp(13px,.88vw,15px);
    line-height: 1.85;
}

.az-hero-p16 .az-hero-actions {
    width: 100%;
    max-width: 690px;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
    margin-top: 24px;
}
.az-hero-p16 .az-hero-action {
    position: relative;
    min-width: 0;
    min-height: 72px;
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) 14px;
    align-items: center;
    gap: 9px;
    padding: 11px 13px;
    color: #fff;
    text-align: right;
    text-decoration: none !important;
    cursor: pointer;
    border: 1px solid rgba(216,179,76,.5);
    border-radius: 12px;
    background: linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.008));
    box-shadow: inset 0 1px rgba(255,255,255,.035),0 16px 34px rgba(0,0,0,.24);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    transition: transform .24s ease,border-color .24s ease,background .24s ease,box-shadow .24s ease;
}
.az-hero-p16 .az-hero-action:hover {
    color: #fff;
    transform: translateY(-3px);
    border-color: rgba(241,217,133,.82);
    background: linear-gradient(145deg,rgba(216,179,76,.14),rgba(255,255,255,.02));
    box-shadow: 0 22px 42px rgba(0,0,0,.32);
}
.az-hero-p16 .az-hero-action-primary {
    color: #171208;
    border-color: #f0d779;
    background: linear-gradient(135deg,#f2dc91 0%,#dcb64d 52%,#b98625 100%);
    box-shadow: inset 0 1px rgba(255,255,255,.56),0 16px 36px rgba(185,134,37,.24);
}
.az-hero-p16 .az-hero-action-primary:hover { color:#100d07; background:linear-gradient(135deg,#fae7a8,#e5c15d 52%,#c49430); }
.az-hero-p16 .az-hero-action-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    color: var(--p16-gold-light);
    border: 1px solid rgba(241,217,133,.22);
    border-radius: 10px;
    background: rgba(0,0,0,.2);
    font-size: 16px;
}
.az-hero-p16 .az-hero-action-primary .az-hero-action-icon { color:#171208; border-color:rgba(23,18,8,.15); background:rgba(255,255,255,.2); }
.az-hero-p16 .az-hero-action-copy { min-width:0; display:flex; flex-direction:column; gap:3px; }
.az-hero-p16 .az-hero-action-copy strong { color:inherit; font-size:11.5px; font-weight:850; white-space:nowrap; }
.az-hero-p16 .az-hero-action-copy small { color:rgba(255,255,255,.44); font-size:8px; }
.az-hero-p16 .az-hero-action-primary .az-hero-action-copy small { color:rgba(23,18,8,.58); }
.az-hero-p16 .az-hero-action-arrow { color:var(--p16-gold-light); font-size:11px; transition:transform .22s ease; }
.az-hero-p16 .az-hero-action-primary .az-hero-action-arrow { color:#171208; }
.az-hero-p16 .az-hero-action:hover .az-hero-action-arrow { transform:translateX(-3px); }

.az-hero-p16 .az-hero-brandline {
    width: min(100%,690px);
    display: grid;
    grid-template-columns: minmax(40px,1fr) auto minmax(40px,1fr);
    align-items: center;
    gap: 16px;
    margin-top: 21px;
    direction: ltr;
}
.az-hero-p16 .az-hero-brandline span { height:1px; background:linear-gradient(90deg,transparent,rgba(216,179,76,.58)); }
.az-hero-p16 .az-hero-brandline span:last-child { transform:scaleX(-1); }
.az-hero-p16 .az-hero-brandline strong { color:#e9c963; font:700 10px Arial,sans-serif; letter-spacing:.28em; white-space:nowrap; }

.az-hero-p16 .az-hero-trust {
    width: min(100%,690px);
    display: grid;
    grid-template-columns: repeat(7,auto);
    align-items: center;
    justify-content: center;
    gap: 22px;
    margin-top: 15px;
}
.az-hero-p16 .az-trust-item { min-width:70px; align-items:center; gap:3px; text-align:center; }
.az-hero-p16 .az-trust-item > i { margin-bottom:3px; color:var(--p16-gold); font-size:15px; }
.az-hero-p16 .az-trust-item strong { color:#f0d77f; font-size:10px; font-weight:800; }
.az-hero-p16 .az-trust-item span { color:rgba(255,255,255,.42); font-size:7.5px; }
.az-hero-p16 .az-trust-divider { width:1px; height:40px; background:linear-gradient(transparent,rgba(216,179,76,.42),transparent); }
.az-hero-p16 .az-hero-scroll { display:none; }

@media (max-width:1280px) {
    .az-hero-p16 > .az-hero-photo { width:67%; min-width:690px; }
    .az-hero-p16 .az-hero-copy { width:min(660px,49vw); }
    .az-hero-p16 .az-hero-title,.az-hero-p16 h1.az-hero-title { font-size:clamp(43px,4.5vw,64px); }
    .az-hero-p16 .az-hero-trust { gap:15px; }
}

@media (max-width:980px) {
    .az-hero.az-hero-p16 { min-height:940px; padding:92px 0 38px; align-items:flex-end; }
    .az-hero-p16 > .az-hero-photo {
        width:100%; min-width:0; height:60%;
        -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 55%,rgba(0,0,0,.72) 74%,transparent 100%);
        mask-image:linear-gradient(180deg,#000 0%,#000 55%,rgba(0,0,0,.72) 74%,transparent 100%);
    }
    .az-hero-p16 > .az-hero-photo img { object-fit:contain; object-position:center top; transform:none; opacity:.84; }
    .az-hero-p16 > .az-hero-photo-shade { background:linear-gradient(180deg,rgba(4,4,3,.05),rgba(5,5,4,.14) 30%,rgba(7,6,5,.6) 52%,rgba(7,7,6,.97) 70%,#070706 100%); }
    .az-hero-p16 .az-hero-stage { min-height:790px; align-items:flex-end; }
    .az-hero-p16 .az-hero-copy { width:100%; max-width:720px; margin-inline:auto; text-align:center; }
    .az-hero-p16 .az-hero-kicker,.az-hero-p16 .az-hero-lead,.az-hero-p16 .az-hero-actions,.az-hero-p16 .az-hero-brandline,.az-hero-p16 .az-hero-trust { margin-inline:auto; }
    .az-hero-p16 .az-hero-title,.az-hero-p16 h1.az-hero-title { font-size:clamp(39px,7vw,58px); }
}

@media (max-width:680px) {
    .az-hero.az-hero-p16 { min-height:900px; padding:82px 0 28px; }
    .az-hero-p16 > .az-hero-photo { height:47%; }
    .az-hero-p16 > .az-hero-photo img { object-fit:contain; object-position:center top; transform:none; opacity:.78; }
    .az-hero-p16 > .az-hero-photo-shade { background:linear-gradient(180deg,rgba(4,4,3,.04),rgba(5,5,4,.18) 24%,rgba(7,6,5,.72) 43%,#070706 59%,#070706 100%); }
    .az-hero-p16 .az-hero-stage { min-height:770px; }
    .az-hero-p16 .az-hero-kicker { max-width:96%; padding:6px 10px; margin-bottom:14px; font-size:7.8px; }
    .az-hero-p16 .az-hero-title,.az-hero-p16 h1.az-hero-title { font-size:clamp(32px,10vw,44px); line-height:1.08; }
    .az-hero-p16 .az-hero-title-gold { margin-top:7px; }
    .az-hero-p16 .az-hero-lead { max-width:520px; margin-top:15px; font-size:11.5px; line-height:1.85; }
    .az-hero-p16 .az-hero-actions { grid-template-columns:1fr; gap:8px; margin-top:19px; }
    .az-hero-p16 .az-hero-action { min-height:62px; grid-template-columns:40px minmax(0,1fr) 14px; padding:9px 12px; }
    .az-hero-p16 .az-hero-action-icon { width:40px; height:40px; }
    .az-hero-p16 .az-hero-brandline { gap:9px; margin-top:16px; }
    .az-hero-p16 .az-hero-brandline strong { font-size:9px; letter-spacing:.18em; }
    .az-hero-p16 .az-hero-trust { grid-template-columns:repeat(4,1fr); gap:8px; margin-top:13px; }
    .az-hero-p16 .az-trust-divider { display:none; }
    .az-hero-p16 .az-trust-item { min-width:0; }
    .az-hero-p16 .az-trust-item > i { font-size:13px; }
    .az-hero-p16 .az-trust-item strong { font-size:9px; }
    .az-hero-p16 .az-trust-item span { font-size:7px; }
}

/* ==========================================================
   MOBILE DELIVERY PASS — compact, readable and touch friendly
   This final layer intentionally normalizes the older mobile
   overrides above without changing links, data attributes or JS.
========================================================== */
@media (max-width: 680px) {
    html { scroll-padding-top: 70px; }
    body { overflow-x: hidden; }

    .az-container { width: min(100% - 32px, 1320px); }
    .az-section { padding-block: 62px; }
    .az-title { margin-bottom: 28px; }
    .az-title h2 { font-size: clamp(27px, 8vw, 34px); line-height: 1.22; }
    .az-title p { max-width: 34rem; font-size: 14px; line-height: 1.8; }

    /* Header */
    .az-header { min-height: 64px; }
    .az-header-inner { min-height: 64px; grid-template-columns: auto 1fr auto; gap: 10px; }
    .az-brand-logo { width: 46px; height: 46px; object-fit: contain; }
    .az-header-actions { gap: 7px; }
    .az-login-link,
    .az-menu-toggle { min-width: 44px; min-height: 44px; }
    .az-login-link { padding-inline: 12px; }
    .az-menu-toggle { display: grid; place-items: center; }
    .az-nav {
        top: 70px;
        right: 16px;
        left: 16px;
        max-height: calc(100svh - 86px);
        overflow-y: auto;
        padding: 10px;
        border-radius: 18px;
        z-index: 1100;
    }
    .az-nav a { min-height: 46px; display: flex; align-items: center; padding: 12px 15px; font-size: 14px; }

    /* Hero: larger full-height horse, shorter content and one clear CTA */
    .az-hero.az-hero-p16 { min-height: 760px; padding: 72px 0 24px; align-items: flex-end; }
    .az-hero-p16 > .az-hero-photo { inset: 64px 0 auto; width: 100%; height: 330px; }
    .az-hero-p16 > .az-hero-photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: left center;
        transform: none;
        opacity: .96;
        filter: saturate(.82) contrast(1.08) brightness(.9);
    }
    .az-hero-p16 > .az-hero-photo-shade {
        background:
            linear-gradient(180deg, rgba(4,4,3,.02) 0%, rgba(5,5,4,.10) 42%, #070706 96%),
            linear-gradient(90deg, transparent 0%, rgba(7,7,6,.15) 58%, #070706 100%);
    }
    .az-hero-p16 .az-hero-stage { min-height: 670px; align-items: flex-end; }
    .az-hero-p16 .az-hero-copy { width: 100%; max-width: 560px; padding-top: 300px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title { font-size: clamp(34px, 10vw, 44px); line-height: 1.05; }
    .az-hero-p16 .az-hero-lead { margin-top: 12px; font-size: 14px; line-height: 1.75; }
    .az-hero-p16 .az-hero-actions { grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 17px; }
    .az-hero-p16 .az-hero-action { min-height: 52px; grid-template-columns: 36px minmax(0,1fr) 12px; padding: 7px 9px; border-radius: 12px; }
    .az-hero-p16 .az-hero-action-primary { grid-column: 1 / -1; min-height: 56px; }
    .az-hero-p16 .az-hero-action-icon { width: 36px; height: 36px; }
    .az-hero-p16 .az-hero-action-copy strong { font-size: 12px; }
    .az-hero-p16 .az-hero-action-copy small { display: none; }
    .az-hero-p16 .az-hero-brandline { margin-top: 13px; }
    .az-hero-p16 .az-hero-trust { margin-top: 10px; gap: 5px; }
    .az-hero-p16 .az-trust-item > i { font-size: 14px; }
    .az-hero-p16 .az-trust-item strong { font-size: 9px; }
    .az-hero-p16 .az-trust-item span { font-size: 7.5px; }

    /* Statistics: two-column dashboard instead of a long list */
    .az-stats-section { padding-block: 58px; }
    .az-stats-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
    .az-stat-card,
    .az-stat-card-featured:last-child {
        width: 100%;
        min-height: 116px;
        padding: 14px;
        gap: 10px;
        grid-column: auto;
    }
    .az-stat-card:last-child:nth-child(odd) { grid-column: 1 / -1; max-width: none; }
    .az-stat-icon { width: 42px; height: 42px; flex-basis: 42px; border-radius: 12px; }
    .az-stat-number { font-size: 27px; line-height: 1; }
    .az-stat-label { font-size: 11px; }
    .az-stat-description { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 9px; line-height: 1.55; }

    /* Training: swipeable cards and compact benefits */
    .az-training-section { padding-block: 60px; }
    .az-training-grid {
        display: flex;
        max-width: none;
        margin-inline: -16px;
        padding: 0 16px 12px;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        overscroll-behavior-inline: contain;
    }
    .az-training-grid::-webkit-scrollbar { display: none; }
    .az-training-card { flex: 0 0 min(84vw, 340px); scroll-snap-align: center; }
    .az-training-media { height: 205px; }
    .az-training-body { padding: 20px 18px; }
    .az-training-body h3 { font-size: 18px; }
    .az-training-body > p { margin-bottom: 13px; font-size: 12px; line-height: 1.75; }
    .az-training-features { margin-top: 12px; }
    .az-training-features li:nth-child(n+3) { display: none; }
    .az-training-link { min-height: 44px; }
    .az-training-benefits { grid-template-columns: repeat(2,1fr); }
    .az-training-benefit { min-height: 92px; padding: 14px 10px; }
    .az-training-benefit strong { font-size: 11px; }
    .az-training-benefit span { font-size: 8.5px; }
    .az-training-cta { padding: 18px; gap: 14px; }
    .az-training-cta .az-btn { min-height: 46px; }

    /* Services: compact two-column cards; dialogs remain unchanged */
    .az-services-section { padding-block: 58px; }
    .az-services-tabs { position: sticky; top: 68px; z-index: 10; width: 100%; padding: 4px; background: rgba(255,253,249,.94); backdrop-filter: blur(12px); }
    .az-services-tab { min-height: 44px; padding: 8px; font-size: 11px; }
    .az-services-grid-stallions,
    .az-services-grid-mares { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
    .az-service-card { min-height: 132px; padding: 14px 12px; border-radius: 16px; }
    .az-service-card-number { inset-block-start: 12px; inset-inline-start: 12px; font-size: 18px; }
    .az-service-card-icon { width: 38px; height: 38px; margin-bottom: 12px; border-radius: 11px; }
    .az-service-card strong { font-size: 12px; line-height: 1.5; }
    .az-service-card small { display: none; }
    .az-service-card-action { margin-top: 8px; font-size: 9px; }
    .az-service-dialog-card { width: min(100% - 24px, 520px); max-height: 88svh; overflow-y: auto; padding: 34px 20px 24px; }
    .az-service-dialog-card h3 { font-size: 23px; }
    .az-service-dialog-footer .az-btn { min-height: 46px; }

    /* Stallions: one clear swipe card with controlled media crop */
    .az-stallions-section { padding-block: 60px; }
    .az-stallions-toolbar { margin-bottom: 18px; }
    .az-stallion-nav { min-width: 44px; min-height: 44px; }
    .az-stallions-track { gap: 12px; scroll-snap-type: x mandatory; }
    .az-stallion-card,
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card { width: 88%; min-width: 88%; scroll-snap-align: center; }
    .az-stallion-media { height: 245px; }
    .az-stallion-media img { object-fit: cover; object-position: center 24%; }
    .az-stallion-body { padding: 18px; }
    .az-stallion-description { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
    .az-stallion-actions .az-btn { min-height: 44px; }

    /* About and footer: less vertical length, larger tap targets */
    .az-about-strip { padding: 56px 0; }
    .az-about-features { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
    .az-about-features article { min-height: 112px; padding: 13px 8px; flex-direction: column; justify-content: center; text-align: center; }
    .az-about-features article > span { width: 40px; height: 40px; }
    .az-about-features strong { font-size: 10px; }
    .az-about-features small { font-size: 8px; line-height: 1.45; }
    .az-footer { padding-top: 46px; }
    .az-footer-top { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px 18px; }
    .az-footer-brand { grid-column: 1 / -1; }
    .az-footer-social { grid-column: 1 / -1; }
    .az-footer-brand,
    .az-footer-links,
    .az-footer-contact,
    .az-footer-social { text-align: right; }
    .az-footer-logo-link,
    .az-footer-signature,
    .az-footer-availability { justify-content: flex-start; }
    .az-footer-links nav { justify-items: stretch; }
    .az-footer-links a { min-height: 44px; display: flex; align-items: center; }
    .az-footer-contact-item { min-height: 54px; }
    .az-footer-social-dynamic .footer-social,
    .az-footer-social-dynamic > div { justify-content: flex-start; }
    .az-footer-bottom { grid-template-columns: 1fr; gap: 12px; padding: 20px 0; text-align: center; }
    .az-back-to-top { min-width: 44px; min-height: 44px; justify-self: center; }
    .az-contact-dock-btn { width: 48px; height: 48px; }
}

@media (max-width: 360px) {
    .az-container { width: min(100% - 24px, 1320px); }
    .az-hero-p16 .az-hero-actions { grid-template-columns: 1fr; }
    .az-hero-p16 .az-hero-action-primary { grid-column: auto; }
    .az-services-grid-stallions,
    .az-services-grid-mares { grid-template-columns: 1fr; }
    .az-service-card { min-height: 118px; }
    .az-footer-top { grid-template-columns: 1fr; }
    .az-footer-brand,
    .az-footer-social { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ==========================================================
   V2 — FINAL DELIVERY POLISH
   Visual refinements only. Existing links, data attributes,
   modal hooks, carousel IDs and JavaScript behavior are intact.
========================================================== */

/* Hero: clearer horse, smoother cinematic merge, stronger copy */
.az-hero.az-hero-p16 {
    min-height: clamp(700px, 92svh, 870px);
    padding-top: 104px;
    background:
        radial-gradient(circle at 72% 40%, rgba(211, 172, 75, .085), transparent 31%),
        #070706;
}

.az-hero-p16 > .az-hero-photo {
    width: 72%;
    min-width: 850px;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 71%, rgba(0,0,0,.9) 80%, rgba(0,0,0,.4) 92%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, #000 71%, rgba(0,0,0,.9) 80%, rgba(0,0,0,.4) 92%, transparent 100%);
}

.az-hero-p16 > .az-hero-photo img {
    object-fit: cover;
    object-position: 34% center;
    opacity: 1;
    filter: saturate(.78) contrast(1.09) brightness(.9) sepia(.035);
}

.az-hero-p16 > .az-hero-photo-shade {
    background:
        linear-gradient(90deg, rgba(3,3,3,.01), rgba(3,3,3,.03) 28%, rgba(6,5,4,.16) 45%, rgba(7,6,5,.64) 62%, rgba(7,7,6,.95) 78%, #070706 100%),
        linear-gradient(180deg, rgba(0,0,0,.2), transparent 28%, transparent 69%, rgba(0,0,0,.55));
}

.az-hero-p16 .az-hero-copy {
    width: min(720px, 48vw);
}

.az-hero-p16 .az-hero-lead {
    color: rgba(255,255,255,.82);
    font-size: clamp(14px, .96vw, 16px);
    line-height: 1.95;
}

.az-hero-p16 .az-hero-action-copy strong { font-size: 12.5px; }
.az-hero-p16 .az-hero-action-copy small { font-size: 9px; }
.az-hero-p16 .az-trust-item span { color: rgba(255,255,255,.56); font-size: 8.25px; }

/* Stats: balanced single row on wide screens */
.az-stats-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
}

.az-stat-card {
    min-height: 166px;
    gap: 14px;
    padding: 22px 18px;
}

.az-stat-icon {
    width: 54px;
    height: 54px;
    flex-basis: 54px;
}

.az-stat-number { font-size: clamp(27px, 2.2vw, 38px); }
.az-stat-label { font-size: 12.5px; }
.az-stat-description { font-size: 9px; line-height: 1.75; }

/* Training and services: improve text readability */
.az-training-body h3 { font-size: 20px; }
.az-training-body > p { color: rgba(255,255,255,.69); font-size: 12px; line-height: 1.95; }
.az-training-features li { font-size: 10.5px; }
.az-training-benefit strong { font-size: 12px; }
.az-training-benefit span { font-size: 9px; }

.az-service-card { min-height: 178px; padding: 25px 23px; }
.az-service-card strong { font-size: 14px; }
.az-service-card small { font-size: 10px; line-height: 1.75; }
.az-service-card-action { font-size: 9.5px; }

/* Stallions: larger catalogue cards and less unused surrounding space */
.az-stallions-section .az-container { max-width: 1380px; }
.az-stallions-track { gap: 26px; }
.az-stallion-card {
    width: calc((100% - 52px) / 3);
    min-width: calc((100% - 52px) / 3);
}
.az-stallion-media { height: 340px; }
.az-stallion-body { padding: 26px; }
.az-stallion-description { font-size: 10.5px; line-height: 1.85; }

/* About strip: equal visual weight between copy and features */
.az-about-strip { padding: 82px 0; }
.az-about-strip-inner {
    grid-template-columns: minmax(440px, 1fr) minmax(0, 1.15fr);
    gap: 56px;
}
.az-about-strip-copy h2 { font-size: clamp(31px, 3vw, 44px); }
.az-about-strip-copy p { font-size: 13px; line-height: 2; }
.az-about-features { gap: 16px; }
.az-about-features article { min-height: 156px; padding: 23px; }
.az-about-features strong { font-size: 12.5px; }
.az-about-features small { font-size: 9.5px; }

/* Floating controls: safe distance from viewport edges */
.az-contact-dock { left: 20px; bottom: 20px; }
.az-back-to-top { margin-inline-start: 8px; }

@media (max-width: 1280px) {
    .az-hero-p16 > .az-hero-photo { width: 70%; min-width: 720px; }
    .az-stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .az-stat-card-featured:last-child { grid-column: 2; }
    .az-about-strip-inner { grid-template-columns: minmax(360px, .95fr) minmax(0, 1.05fr); gap: 38px; }
}

@media (max-width: 980px) {
    .az-hero.az-hero-p16 { min-height: 920px; padding-top: 88px; }
    .az-hero-p16 > .az-hero-photo { width: 100%; min-width: 0; height: 59%; }
    .az-hero-p16 > .az-hero-photo img { object-fit: cover; object-position: center 20%; }
    .az-hero-p16 .az-hero-copy { width: 100%; }
    .az-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .az-stat-card-featured:last-child { grid-column: 1 / -1; width: min(100%, 460px); justify-self: center; }
    .az-stallion-card { width: calc((100% - 24px) / 2); min-width: calc((100% - 24px) / 2); }
    .az-stallions-track { gap: 24px; }
    .az-about-strip-inner { grid-template-columns: 1fr; gap: 32px; }
    .az-about-strip-copy { text-align: center; }
    .az-about-strip-copy p { margin-inline: auto; }
}

@media (max-width: 680px) {
    .az-hero.az-hero-p16 { min-height: 880px; padding-top: 78px; }
    .az-hero-p16 > .az-hero-photo { height: 45%; }
    .az-hero-p16 > .az-hero-photo img { object-position: 42% top; filter: saturate(.76) contrast(1.06) brightness(.86); }
    .az-hero-p16 .az-hero-lead { font-size: 12px; }
    .az-hero-p16 .az-hero-action-copy strong { font-size: 12px; }
    .az-stats-grid { grid-template-columns: 1fr; }
    .az-stat-card-featured:last-child { grid-column: auto; width: 100%; }
    .az-stat-card { min-height: 148px; }
    .az-training-body h3 { font-size: 18px; }
    .az-training-body > p { font-size: 11.5px; }
    .az-service-card { min-height: 162px; }
    .az-stallion-card { width: 100%; min-width: 100%; }
    .az-stallion-media { height: 300px; }
    .az-about-strip { padding: 64px 0; }
    .az-about-features { grid-template-columns: 1fr; }
    .az-about-features article { min-height: 120px; flex-direction: row; align-items: center; }
    .az-contact-dock { left: 14px; bottom: 14px; }
}

/* FINAL AUTHORITATIVE OVERRIDE — complete horse and delivery balance */
.az-hero.az-hero-p16 { min-height:clamp(660px,84svh,820px); padding:96px 0 42px; }
.az-hero-p16 > .az-hero-photo { inset:0; width:100%; min-width:0; background:#070706; -webkit-mask-image:none; mask-image:none; }
.az-hero-p16 > .az-hero-photo img { width:100%; height:100%; object-fit:contain; object-position:left center; transform:scale(.96); transform-origin:left center; opacity:1; filter:saturate(.78) contrast(1.08) brightness(.91) sepia(.035); }
.az-hero-p16 > .az-hero-photo-shade { background:linear-gradient(90deg,rgba(3,3,3,.02) 0%,rgba(3,3,3,.03) 30%,rgba(7,6,5,.2) 48%,rgba(7,7,6,.78) 68%,#070706 88%),linear-gradient(180deg,rgba(0,0,0,.18),transparent 28%,transparent 72%,rgba(0,0,0,.5)); }
.az-hero-p16 .az-hero-stage { min-height:560px; }
.az-hero-p16 .az-hero-copy { width:min(720px,47vw); }
.az-stat-card-featured { color:var(--az-text); background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(248,245,239,.99)); border-color:rgba(198,162,75,.2); box-shadow:0 14px 34px rgba(13,12,10,.075); }
.az-stat-card-featured .az-stat-number { color:var(--az-text); }
.az-stat-card-featured .az-stat-label,.az-stat-card-featured .az-stat-description { color:var(--az-text-soft); }
.az-services-section { background-color:#fffdf9; }
.az-service-card { background:linear-gradient(145deg,#fff,#fbf7ef); border-color:rgba(178,132,35,.22); box-shadow:0 16px 38px rgba(31,24,13,.075); }
.az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) { justify-content:center; }
.az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card { width:min(390px,calc((100% - 26px)/2)); min-width:min(390px,calc((100% - 26px)/2)); }
.az-about-strip-inner { grid-template-columns:minmax(420px,1fr) minmax(0,1.25fr); }
.az-about-features article { min-height:168px; }
.az-about-features strong { font-size:13px; }
.az-about-features small { font-size:10px; }
@media (max-width:980px) {
    .az-hero.az-hero-p16 { min-height:880px; padding:86px 0 34px; }
    .az-hero-p16 > .az-hero-photo { height:56%; }
    .az-hero-p16 > .az-hero-photo img { object-fit:contain; object-position:center top; transform:scale(.96); transform-origin:center top; }
    .az-hero-p16 .az-hero-stage { min-height:750px; }
    .az-hero-p16 .az-hero-copy { width:100%; }
    .az-about-strip-inner { grid-template-columns:1fr; }
}
@media (max-width:680px) {
    .az-hero.az-hero-p16 { min-height:840px; padding:76px 0 26px; }
    .az-hero-p16 > .az-hero-photo { height:42%; }
    .az-hero-p16 > .az-hero-photo img { object-fit:contain; object-position:center top; transform:scale(.94); }
    .az-hero-p16 .az-hero-stage { min-height:730px; }
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card { width:100%; min-width:100%; }
    .az-about-features article { min-height:122px; }
}

/* Mobile delivery precedence: keep this after all legacy overrides. */
@media (max-width:680px) {
    .az-hero.az-hero-p16 { min-height:760px; padding:72px 0 24px; align-items:flex-end; }
    .az-hero-p16 > .az-hero-photo { inset:64px 0 auto; width:100%; min-width:0; height:330px; }
    .az-hero-p16 > .az-hero-photo img { width:100%; height:100%; object-fit:cover; object-position:left center; transform:none; transform-origin:center; opacity:.96; }
    .az-hero-p16 .az-hero-stage { min-height:670px; align-items:flex-end; }
    .az-hero-p16 .az-hero-copy { width:100%; max-width:560px; padding-top:300px; }
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) { justify-content:flex-start; }
    .az-stallion-card,
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card { width:88%; min-width:88%; }
    .az-about-strip-inner { grid-template-columns:1fr; }
    .az-about-features { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .az-about-features article { min-height:112px; flex-direction:column; align-items:center; }
}

@media (max-width:360px) {
    .az-hero-p16 .az-hero-actions { grid-template-columns:1fr; }
    .az-hero-p16 .az-hero-action-primary { grid-column:auto; }
    .az-services-grid-stallions,
    .az-services-grid-mares { grid-template-columns:1fr; }
}

/* ==========================================================
   MOBILE FINAL CORRECTION — screenshot review 2026-08-16
   Authoritative rules: full cards, compact grids, readable copy.
========================================================== */
@media (max-width:680px) {
    /* Hero readability and action hierarchy */
    .az-hero-p16 > .az-hero-photo-shade {
        background:
            linear-gradient(180deg,rgba(3,3,3,.02) 0%,rgba(5,5,4,.08) 34%,rgba(7,7,6,.72) 72%,#070706 100%),
            linear-gradient(90deg,transparent 0%,rgba(7,7,6,.10) 54%,rgba(7,7,6,.88) 100%);
    }
    .az-hero-p16 .az-hero-copy { padding-bottom:2px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title { margin-bottom:0; }
    .az-hero-p16 .az-hero-lead {
        max-width:34rem;
        margin-top:14px;
        color:rgba(255,255,255,.78);
        font-size:14px;
        line-height:1.75;
        text-shadow:0 2px 10px rgba(0,0,0,.72);
    }
    .az-hero-p16 .az-hero-actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .az-hero-p16 .az-hero-action-primary { grid-column:1 / -1; }
    .az-hero-p16 .az-hero-action { overflow:hidden; }
    .az-hero-p16 .az-hero-action-copy strong { overflow:hidden; text-overflow:ellipsis; }

    /* Force the intended 2-column statistics layout */
    .az-stats-section .az-stats-grid {
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }
    .az-stats-section .az-stats-grid > .az-stat-card,
    .az-stats-section .az-stat-card-featured,
    .az-stats-section .az-stat-card-featured:last-child {
        grid-column:auto !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
        min-height:118px !important;
        padding:14px 12px !important;
    }
    .az-stats-section .az-stats-grid > .az-stat-card:last-child:nth-child(odd) {
        grid-column:1 / -1 !important;
    }
    .az-stat-content { min-width:0; }
    .az-stat-number { font-size:26px; }
    .az-stat-label { overflow-wrap:anywhere; }

    /* Training carousel: never crop a card or leak a neighbour */
    .az-training-section .az-training-grid {
        display:flex !important;
        width:100% !important;
        max-width:100% !important;
        margin-inline:0 !important;
        padding:0 0 12px !important;
        gap:12px !important;
        overflow-x:auto !important;
        overflow-y:visible !important;
        scroll-snap-type:x mandatory;
        scroll-padding-inline:0;
    }
    .az-training-section .az-training-card,
    .az-training-section .az-training-card-featured {
        flex:0 0 100% !important;
        width:100% !important;
        min-width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        scroll-snap-align:start;
        transform:none;
    }
    .az-training-card.az-visible:hover { transform:none; }
    .az-training-media { height:220px; }
    .az-training-body { padding:20px; }
    .az-training-body h3 { font-size:19px; line-height:1.5; }
    .az-training-body > p { color:rgba(255,255,255,.74); font-size:12.5px; }
    .az-training-features li { color:rgba(255,255,255,.76); font-size:11px; }
    .az-training-benefits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .az-training-benefit { min-width:0; }

    /* Services */
    .az-service-card strong { font-size:12.5px; line-height:1.55; }
    .az-service-card-action { font-size:9.5px; }

    /* Stallion card */
    .az-stallions-viewport { padding-inline:0; }
    .az-stallion-card,
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card {
        width:92% !important;
        min-width:92% !important;
        max-width:92% !important;
    }
    .az-stallion-media { height:255px; }

    /* More compact footer without hiding any destination */
    .az-footer { padding-top:40px; }
    .az-footer-top { gap:22px 16px; }
    .az-footer-brand > p { margin-top:12px; line-height:1.7; }
    .az-footer-title { margin-bottom:10px; }
    .az-footer-links nav { gap:0; }
    .az-footer-links a { min-height:40px; padding-block:6px; }
    .az-footer-contact-item { min-height:50px; padding:9px; }
    .az-footer-divider { margin-top:30px; }
    .az-contact-dock { left:12px; bottom:12px; gap:8px; }
    .az-contact-dock-btn { width:48px; height:48px; }
}

@media (max-width:360px) {
    .az-stats-section .az-stats-grid { grid-template-columns:1fr !important; }
    .az-stats-section .az-stats-grid > .az-stat-card:last-child:nth-child(odd) { grid-column:auto !important; }
    .az-hero-p16 .az-hero-actions { grid-template-columns:1fr; }
    .az-hero-p16 .az-hero-action-primary { grid-column:auto; }
}

/* ==========================================================
   MOBILE POLISH — navigation order and final visual details
========================================================== */
.az-training-mobile-hint { display:none; }

@media (max-width:680px) {
    /* Login at the physical left, menu at the physical right. */
    .az-header-inner {
        position:relative;
        display:flex;
        align-items:center;
        justify-content:center;
        min-height:64px;
        padding-inline:54px;
    }
    .az-brand { margin:0 auto; }
    .az-header-actions { position:static; }
    .az-header-actions .az-login-link {
        position:absolute;
        left:0;
        right:auto;
        top:50%;
        z-index:3;
        transform:translateY(-50%);
    }
    .az-header-actions .az-menu-toggle {
        position:absolute;
        right:0;
        left:auto;
        top:50%;
        z-index:3;
        transform:translateY(-50%);
    }

    /* A little more breathing room between the image and headline. */
    .az-hero-p16 .az-hero-copy { padding-top:310px; }

    /* Explicit swipe affordance for the three training cards. */
    .az-training-mobile-hint {
        display:flex;
        align-items:center;
        justify-content:center;
        gap:9px;
        min-height:34px;
        margin:2px 0 14px;
        color:rgba(238,207,117,.78);
    }
    .az-training-mobile-hint > i { font-size:14px; }
    .az-training-mobile-hint small { color:rgba(255,255,255,.62); font-size:9px; }
    .az-training-mobile-dots { display:flex; align-items:center; gap:4px; }
    .az-training-mobile-dots b { width:5px; height:5px; border-radius:50%; background:rgba(216,179,76,.34); }
    .az-training-mobile-dots b.is-active { width:16px; border-radius:5px; background:#d8b34c; }

    /* One complete stallion card with no neighbouring slivers. */
    .az-stallions-viewport { overflow:hidden !important; }
    .az-stallions-track { gap:0 !important; }
    .az-stallion-card,
    .az-stallions-track:not(:has(.az-stallion-card:nth-child(3))) .az-stallion-card {
        flex:0 0 100% !important;
        width:100% !important;
        min-width:100% !important;
        max-width:100% !important;
    }
    .az-stallion-description { font-size:11.5px; line-height:1.85; }
    .az-stallion-title h3 { font-size:20px; }

    /* Let the final odd service use the complete row. */
    .az-services-grid-stallions > .az-service-card:last-child:nth-child(odd),
    .az-services-grid-mares > .az-service-card:last-child:nth-child(odd) {
        grid-column:1 / -1;
        min-height:120px;
    }

    /* Safer distance from mobile browser controls. */
    .az-contact-dock { left:14px; bottom:max(24px,env(safe-area-inset-bottom)); }
}

@media (max-width:360px) {
    .az-header-inner { padding-inline:50px; }
    .az-login-link span { display:none; }
    .az-services-grid-stallions > .az-service-card:last-child:nth-child(odd),
    .az-services-grid-mares > .az-service-card:last-child:nth-child(odd) { grid-column:auto; }
}

/* ==========================================================
   MOBILE HERO POSITION — move brand name into marked area
========================================================== */
@media (max-width:680px) {
    .az-hero.az-hero-p16 { min-height:700px; }
    .az-hero-p16 .az-hero-stage { min-height:620px; }
    .az-hero-p16 .az-hero-copy { padding-top:300px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title {
        position:relative;
        z-index:4;
        transform:translateY(-102px);
        text-shadow:0 4px 18px rgba(0,0,0,.9);
    }
    .az-hero-p16 .az-hero-lead {
        position:relative;
        z-index:4;
        margin-top:-68px;
    }
    .az-hero-p16 .az-hero-actions { margin-top:13px; }
    .az-hero-p16 .az-hero-brandline { margin-top:11px; }
    .az-hero-p16 .az-hero-trust { margin-top:8px; }
}

@media (max-width:360px) {
    .az-hero.az-hero-p16 { min-height:720px; }
    .az-hero-p16 .az-hero-stage { min-height:640px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title { transform:translateY(-86px); }
    .az-hero-p16 .az-hero-lead { margin-top:-54px; }
}

/* ==========================================================
   MOBILE TRAINING CAROUSEL — touch, arrows and active state
========================================================== */
@media (max-width:680px) {
    .az-training-section .az-training-grid {
        touch-action:pan-x;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior-inline:contain;
        scroll-behavior:smooth;
        cursor:grab;
    }
    .az-training-section .az-training-grid:active { cursor:grabbing; }
    .az-training-mobile-hint { gap:8px; margin-top:4px; }
    .az-training-mobile-nav {
        display:grid;
        place-items:center;
        width:40px;
        height:40px;
        flex:0 0 40px;
        padding:0;
        color:#ebca68;
        background:rgba(216,179,76,.08);
        border:1px solid rgba(216,179,76,.30);
        border-radius:12px;
        box-shadow:0 8px 20px rgba(0,0,0,.16);
        transition:background .2s ease,border-color .2s ease,opacity .2s ease;
    }
    .az-training-mobile-nav i { font-size:18px; }
    .az-training-mobile-nav:not(:disabled):active { background:rgba(216,179,76,.20); border-color:rgba(216,179,76,.56); }
    .az-training-mobile-nav:disabled { opacity:.30; cursor:not-allowed; }
    .az-training-mobile-dots b { transition:width .22s ease,background .22s ease; }
    .az-training-benefit strong { color:#f4dd94; font-size:11.5px; }
    .az-training-benefit span { color:rgba(255,255,255,.68); font-size:9px; line-height:1.55; }
    .az-training-benefit-icon { color:#e4bf59; background:rgba(216,179,76,.11); }
}

/* ==========================================================
   MOBILE HERO RIGHT PLACEMENT — title beside the horse
========================================================== */
@media (max-width:680px) {
    .az-hero.az-hero-p16 { min-height:680px; }
    .az-hero-p16 .az-hero-stage { min-height:600px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title {
        width:62%;
        max-width:330px;
        margin-right:0;
        margin-left:auto;
        text-align:right;
        font-size:clamp(30px,8.6vw,38px);
        line-height:1.08;
        transform:translateY(-225px);
    }
    .az-hero-p16 .az-hero-title-main,
    .az-hero-p16 .az-hero-title-gold { text-align:right; }
    .az-hero-p16 .az-hero-title-gold { white-space:nowrap; }
    .az-hero-p16 .az-hero-lead { margin-top:-92px; }
    .az-hero-p16 .az-hero-actions { margin-top:11px; }
    .az-hero-p16 .az-hero-brandline { margin-top:9px; }
    .az-hero-p16 .az-hero-trust { margin-top:7px; }
}

@media (max-width:420px) {
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title {
        width:64%;
        font-size:clamp(28px,8.3vw,34px);
        transform:translateY(-215px);
    }
    .az-hero-p16 .az-hero-lead { margin-top:-84px; }
}

@media (max-width:360px) {
    .az-hero.az-hero-p16 { min-height:700px; }
    .az-hero-p16 .az-hero-stage { min-height:620px; }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title {
        width:68%;
        font-size:28px;
        transform:translateY(-200px);
    }
    .az-hero-p16 .az-hero-lead { margin-top:-74px; }
}

/* ==========================================================
   MOBILE FINAL QUALITY PASS — approved full improvement set
========================================================== */
.az-footer-accordion-toggle {
    width:100%;
    padding:0;
    color:inherit;
    text-align:inherit;
    background:transparent;
    border:0;
    font:inherit;
}
.az-footer-accordion-toggle i { display:none; }

@media (max-width:680px) {
    /* Hero refinement */
    .az-hero-p16 > .az-hero-photo img {
        filter:saturate(.86) contrast(1.07) brightness(.96) sepia(.025);
    }
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title {
        width:60%;
        margin-right:12px;
        margin-left:auto;
        font-size:clamp(32px,9vw,40px);
    }
    .az-hero-p16 .az-hero-lead {
        max-width:35rem;
        margin-bottom:7px;
        color:rgba(255,255,255,.86);
        font-size:14.5px;
        line-height:1.82;
    }

    /* Statistics */
    .az-stats-heading { margin-bottom:32px; }
    .az-stat-number { font-size:29px; }
    .az-stat-label { font-size:10.5px; }
    .az-stat-description { font-size:8.5px; line-height:1.5; }
    .az-stats-section .az-stats-grid > .az-stat-card:last-child:nth-child(odd) {
        width:75% !important;
        justify-self:center;
    }

    /* Training controls and compact content */
    .az-training-mobile-nav { width:44px; height:44px; flex-basis:44px; border-radius:13px; }
    .az-training-mobile-nav i { font-size:20px; }
    .az-training-mobile-hint small { color:rgba(255,255,255,.78); font-size:11px; }
    .az-training-mobile-dots { gap:5px; }
    .az-training-mobile-dots b { width:7px; height:7px; }
    .az-training-mobile-dots b.is-active { width:22px; }
    .az-training-media { height:210px; }
    .az-training-body { padding:18px 20px; }
    .az-training-body > p { margin-bottom:10px; }
    .az-training-benefit { min-height:96px; padding:14px 12px; }
    .az-training-benefit strong { font-size:12px; }
    .az-training-benefit span { font-size:9.5px; }
    .az-training-benefit-icon { width:38px; height:38px; }

    /* Services */
    .az-services-tab {
        color:#6e5421;
        font-size:11.5px;
        font-weight:800;
        border:1px solid rgba(178,132,35,.20);
    }
    .az-services-tab.is-active {
        color:#171208;
        background:linear-gradient(135deg,#f3d979,#d6aa3e);
        box-shadow:0 8px 20px rgba(178,132,35,.18);
    }
    .az-service-card { min-height:140px; }
    .az-service-card strong { color:#211b12; font-size:13.2px; }
    .az-service-card-action { color:#966c16; font-size:10px; }
    .az-services-grid-stallions > .az-service-card:last-child:nth-child(odd),
    .az-services-grid-mares > .az-service-card:last-child:nth-child(odd) { min-height:140px; }

    /* Stallion card */
    .az-stallion-media { height:230px; }
    .az-stallion-title h3 { font-size:22px; }
    .az-stallion-description {
        font-size:11.5px;
        line-height:1.75;
        -webkit-line-clamp:2;
    }
    .az-stallion-price strong { font-size:19px; }
    .az-stallion-actions .az-btn { font-size:11px; font-weight:800; }

    /* About expertise */
    .az-about-strip { padding:50px 0 46px; }
    .az-about-features article { min-height:104px; padding:12px 8px; }
    .az-about-features article > span { width:44px; height:44px; }
    .az-about-features article > span i { font-size:16px; }
    .az-about-features strong { font-size:11px; }
    .az-about-features small { font-size:8.5px; line-height:1.5; }

    /* Footer typography and mobile accordion */
    .az-footer { padding-top:36px; }
    .az-footer-brand > p { font-size:11px; }
    .az-footer-title { color:#e8c75e; font-size:13px; font-weight:850; }
    .az-footer-accordion-toggle {
        display:flex;
        align-items:center;
        justify-content:space-between;
        min-height:46px;
        padding:0 12px;
        background:rgba(255,255,255,.025);
        border:1px solid rgba(216,179,76,.14);
        border-radius:12px;
    }
    .az-footer-accordion-toggle i { display:block; transition:transform .22s ease; }
    .az-footer-links.is-open .az-footer-accordion-toggle i { transform:rotate(180deg); }
    .azzam-v2-ready .az-footer-links nav {
        max-height:0;
        overflow:hidden;
        opacity:0;
        transition:max-height .3s ease,opacity .22s ease,padding .3s ease;
    }
    .azzam-v2-ready .az-footer-links.is-open nav {
        max-height:280px;
        padding-top:8px;
        opacity:1;
    }
    .az-footer-links a { color:rgba(255,255,255,.76); font-size:11px; }
    .az-footer-contact-item { font-size:11px; }
    .az-footer-social-dynamic { margin-top:10px; }
    .az-footer-divider { margin-top:24px; }
    .az-contact-dock { bottom:max(34px,env(safe-area-inset-bottom)); }
}

@media (max-width:420px) {
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title { width:62%; margin-right:10px; font-size:clamp(30px,8.7vw,36px); }
}

@media (max-width:360px) {
    .az-hero-p16 .az-hero-title,
    .az-hero-p16 h1.az-hero-title { width:66%; margin-right:8px; font-size:29px; }
    .az-stats-section .az-stats-grid > .az-stat-card:last-child:nth-child(odd) { width:100% !important; }
}

/* ==========================================================
   MOBILE RELEASE POLISH — interactive indicators and a11y
========================================================== */
.az-training-mobile-dots button {
    padding:0;
    background:rgba(216,179,76,.34);
    border:0;
    border-radius:50%;
}
.az-training-mobile-count,
.az-stallions-count-mobile { display:none; }
.az-footer-accordion-content { display:block; }

@media (max-width:680px) {
    /* Stable title contrast without covering the horse. */
    .az-hero-p16 .az-hero-title::before {
        content:"";
        position:absolute;
        z-index:-1;
        inset:-14px -16px;
        background:radial-gradient(circle at 75% 50%,rgba(0,0,0,.52),rgba(0,0,0,.18) 58%,transparent 76%);
        border-radius:20px;
        pointer-events:none;
    }

    /* Reveal a controlled 5% preview of the next training card. */
    .az-training-section .az-training-grid { gap:10px !important; }
    .az-training-section .az-training-card,
    .az-training-section .az-training-card-featured {
        flex-basis:95% !important;
        width:95% !important;
        min-width:95% !important;
        max-width:95% !important;
    }
    .az-training-mobile-dots button {
        width:7px;
        height:7px;
        flex:0 0 auto;
        transition:width .22s ease,background .22s ease,box-shadow .22s ease;
    }
    .az-training-mobile-dots button.is-active {
        width:22px;
        border-radius:7px;
        background:#d8b34c;
        box-shadow:0 0 0 3px rgba(216,179,76,.10);
    }
    .az-training-mobile-dots button:focus-visible,
    .az-training-mobile-nav:focus-visible,
    .az-footer-accordion-toggle:focus-visible {
        outline:2px solid #f2d77d;
        outline-offset:3px;
    }
    .az-training-mobile-count {
        display:inline-block;
        min-width:34px;
        color:#e7c45c;
        font:800 10px/1 Arial,sans-serif;
        direction:ltr;
    }

    /* Touch feedback and clearer inactive service tab. */
    .az-services-tab:not(.is-active) { color:#5c461d; background:#fffaf0; border-color:rgba(157,113,26,.30); }
    .az-service-card { transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease; }
    .az-service-card:active { transform:scale(.975); border-color:rgba(178,132,35,.48); box-shadow:0 7px 18px rgba(31,24,13,.10); }
    .az-services-grid-stallions > .az-service-card:last-child:nth-child(odd),
    .az-services-grid-mares > .az-service-card:last-child:nth-child(odd) { min-height:128px; }

    /* Stallion controls and counter. */
    .az-stallion-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .az-stallion-actions .az-btn { width:100%; justify-content:center; }
    .az-stallion-description { color:#6a6258; }
    .az-stallions-count-mobile {
        display:block;
        width:max-content;
        margin:8px auto 0;
        color:#e6c35e;
        font:800 10px/1 Arial,sans-serif;
        direction:ltr;
    }

    /* Both footer groups behave as accordions. */
    .azzam-v2-ready .az-footer-contact .az-footer-accordion-content {
        max-height:0;
        overflow:hidden;
        opacity:0;
        transition:max-height .3s ease,opacity .22s ease,padding .3s ease;
    }
    .azzam-v2-ready .az-footer-contact.is-open .az-footer-accordion-content {
        max-height:260px;
        padding-top:8px;
        opacity:1;
    }
    .az-footer-contact.is-open .az-footer-accordion-toggle i { transform:rotate(180deg); }
    .az-footer-links,
    .az-footer-contact { align-self:start; }
    .az-footer-contact-item { font-size:12px; }
    .az-footer-contact-item strong { font-size:11.5px; }
    .az-footer-contact-icon { margin-inline-end:6px; }
}

@media (prefers-reduced-motion:reduce) {
    .az-training-section .az-training-grid { scroll-behavior:auto; }
}

/* Footer contact modal trigger and developer phone */
.az-footer button.az-footer-contact-item {
    width:100%;
    font:inherit;
    cursor:pointer;
    text-align:right;
    appearance:none;
    -webkit-appearance:none;
}
.az-footer-developer-phone {
    display:inline-flex;
    align-items:center;
    margin-inline-start:7px;
    color:#d9b84f;
    font-weight:750;
    text-decoration:none;
    white-space:nowrap;
    transition:color .2s ease;
}
.az-footer-developer-phone:hover,
.az-footer-developer-phone:focus-visible { color:#f2d77d; }
.az-footer-developer-phone:focus-visible {
    outline:2px solid #f2d77d;
    outline-offset:3px;
    border-radius:4px;
}

@media (max-width:680px) {
    .az-footer-developer {
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        gap:5px 7px;
    }
    .az-footer-developer-phone { margin-inline-start:0; font-size:11px; }
}
