/* =========================================================
   ADMISSIONMANTRA
   MASTER GLOBAL DESIGN SYSTEM
   ---------------------------------------------------------
   IMPORTANT:
   Every component/page must use variables from this root.
   Do not create separate color/font/shadow variables
   inside Hero, Header, Footer or individual pages.
========================================================= */

:root {

    /* =====================================================
       01. BRAND COLORS
    ===================================================== */

    --am-primary: #153A5B;
    --am-primary-hover: #102F4B;
    --am-primary-dark: #0D2942;

    --am-secondary: #256A9E;
    --am-secondary-hover: #1E587F;
    --am-secondary-light: #EAF4FB;

    --am-accent: #F28A4B;
    --am-accent-hover: #DC7337;
    --am-accent-dark: #C5531F;
    --am-accent-soft: #FFF1E8;

    --am-highlight: #F7C65F;
    --am-highlight-soft: #FFF7DD;


    /* =====================================================
       02. TEXT COLORS
    ===================================================== */

    --am-heading: #152033;
    --am-text: #667085;
    --am-text-dark: #344054;
    --am-muted: #98A2B3;
    --am-placeholder: #A8B0BD;

    --am-white: #FFFFFF;
    --am-black: #101828;


    /* =====================================================
       03. BACKGROUND COLORS
    ===================================================== */

    --am-bg: #FFFFFF;

    --am-bg-soft: #FAFBFC;

    --am-bg-light: #F7F9FB;

    --am-bg-blue: #EFF5FA;

    --am-bg-blue-2: #EAF4FB;

    --am-bg-warm: #FFF5EE;

    --am-bg-green: #ECF8F1;

    --am-bg-rose: #FDEFF1;

    --am-bg-purple: #F3EEFB;

    --am-bg-yellow: #FFF7E5;


    /* =====================================================
       04. CATEGORY COLORS
       Use only for small category-specific accents
    ===================================================== */

    --am-medical: #2279D1;
    --am-medical-soft: #EAF5FF;

    --am-engineering: #F27D31;
    --am-engineering-soft: #FFF2E5;

    --am-nursing: #E34E61;
    --am-nursing-soft: #FCEDEF;

    --am-management: #26A566;
    --am-management-soft: #EAF8F0;

    --am-allied: #7758B8;
    --am-allied-soft: #F2EDFB;

    --am-law: #E6A22A;
    --am-law-soft: #FFF6E5;


    /* =====================================================
       05. STATUS COLORS
    ===================================================== */

    --am-success: #16805B;
    --am-success-soft: #EAF7F1;

    --am-warning: #D98A16;
    --am-warning-soft: #FFF6DF;

    --am-error: #D64545;
    --am-error-soft: #FDEEEE;

    --am-info: #256A9E;
    --am-info-soft: #EAF4FB;


    /* =====================================================
       06. BORDER COLORS
    ===================================================== */

    --am-border: #E5EAF0;

    --am-border-light: #EEF1F4;

    --am-border-dark: #D0D7E2;

    --am-border-primary:
        rgba(21, 58, 91, .18);

    --am-border-secondary:
        rgba(37, 106, 158, .20);

    --am-border-accent:
        rgba(242, 138, 75, .25);


    /* =====================================================
       07. BRAND GRADIENTS
    ===================================================== */

    --am-gradient-primary:
        linear-gradient(
            135deg,
            #153A5B 0%,
            #256A9E 100%
        );

    --am-gradient-accent:
        linear-gradient(
            135deg,
            #F28A4B 0%,
            #DC7337 100%
        );

    --am-gradient-soft-blue:
        linear-gradient(
            135deg,
            #FFFFFF 0%,
            #F9FCFE 52%,
            #EEF6FB 100%
        );

    --am-gradient-soft-warm:
        linear-gradient(
            135deg,
            #FFFFFF 0%,
            #FFF7F1 100%
        );


    /* =====================================================
       08. FONT FAMILY
       Entire website uses same font system
    ===================================================== */

    --am-font:
        "Inter",
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    --am-font-heading:
        "Inter",
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;


    /* =====================================================
       09. FONT WEIGHTS
    ===================================================== */

    --am-fw-regular: 400;
    --am-fw-medium: 500;
    --am-fw-semibold: 600;
    --am-fw-bold: 700;
    --am-fw-extrabold: 800;


    /* =====================================================
       10. GLOBAL FONT SIZES
       INCREASED
    ===================================================== */

    --am-fs-xs: 12px;
    --am-fs-sm: 15px;
    --am-fs-base: 17px;
    --am-fs-md: 19px;
    --am-fs-lg: 22px;
    --am-fs-xl: 26px;

    --am-fs-h4:
        clamp(22px, 2vw, 27px);

    --am-fs-h3:
        clamp(28px, 2.5vw, 35px);

    --am-fs-h2:
        clamp(40px, 4vw, 56px);

    --am-fs-h1:
        clamp(46px, 5vw, 68px);

    --am-fs-hero:
        clamp(50px, 5.4vw, 72px);


    /* =====================================================
       11. LINE HEIGHTS
    ===================================================== */

    --am-lh-tight: 1.05;
    --am-lh-heading: 1.12;
    --am-lh-title: 1.2;
    --am-lh-body: 1.7;
    --am-lh-small: 1.55;


    /* =====================================================
       12. LETTER SPACING
    ===================================================== */

    --am-ls-heading: -.035em;
    --am-ls-title: -.02em;
    --am-ls-eyebrow: .18em;


    /* =====================================================
       13. WEBSITE WIDTHS
    ===================================================== */

    --am-container: 1240px;

    --am-container-wide: 1320px;

    --am-container-small: 960px;

    --am-content-width: 760px;

    --am-text-width: 680px;


    /* =====================================================
       14. GLOBAL SPACING
    ===================================================== */

    --am-space-1: 4px;
    --am-space-2: 8px;
    --am-space-3: 12px;
    --am-space-4: 16px;
    --am-space-5: 20px;
    --am-space-6: 24px;
    --am-space-7: 32px;
    --am-space-8: 40px;
    --am-space-9: 48px;
    --am-space-10: 60px;
    --am-space-11: 72px;
    --am-space-12: 90px;


    /* =====================================================
       15. SECTION SPACING
    ===================================================== */

    --am-section-space:
        88px;

    --am-section-space-tablet:
        70px;

    --am-section-space-mobile:
        56px;


    /* =====================================================
       16. BORDER RADIUS
    ===================================================== */

    --am-radius-xs: 6px;

    --am-radius-sm: 8px;

    --am-radius-md: 12px;

    --am-radius-lg: 18px;

    --am-radius-xl: 24px;

    --am-radius-2xl: 32px;

    --am-radius-pill: 999px;

    --am-radius-circle: 50%;


    /* =====================================================
       17. SHADOWS
    ===================================================== */

    --am-shadow-xs:
        0 3px 12px
        rgba(21, 58, 91, .04);

    --am-shadow-sm:
        0 8px 24px
        rgba(21, 58, 91, .06);

    --am-shadow-md:
        0 14px 35px
        rgba(21, 58, 91, .09);

    --am-shadow-lg:
        0 22px 50px
        rgba(21, 58, 91, .13);

    --am-shadow-xl:
        0 30px 70px
        rgba(21, 58, 91, .16);

    --am-shadow-accent:
        0 12px 28px
        rgba(242, 138, 75, .25);


    /* =====================================================
       18. BUTTON SYSTEM
    ===================================================== */

    --am-btn-height: 48px;

    --am-btn-height-lg: 52px;

    --am-btn-padding:
        11px 20px;

    --am-btn-padding-lg:
        13px 24px;

    --am-btn-radius:
        10px;

    --am-btn-font-size:
        15px;

    --am-btn-font-weight:
        700;


    /* =====================================================
       19. FORM SYSTEM
    ===================================================== */

    --am-input-height: 50px;

    --am-input-bg: #FFFFFF;

    --am-input-border: #DDE3EA;

    --am-input-border-focus:
        #256A9E;

    --am-input-radius: 10px;

    --am-input-padding:
        12px 15px;


    /* =====================================================
       20. ICON SYSTEM
    ===================================================== */

    --am-icon-sm: 32px;
    --am-icon-md: 44px;
    --am-icon-lg: 56px;


    /* =====================================================
       21. TRANSITIONS
    ===================================================== */

    --am-transition-fast:
        .18s ease;

    --am-transition:
        .25s ease;

    --am-transition-slow:
        .35s ease;


    /* =====================================================
       22. HEADER / LAYERING
    ===================================================== */

    --am-header-height: 78px;

    --am-z-header: 9999;

    --am-z-menu: 9998;

    --am-z-modal: 10000;


    /* =====================================================
       23. OLD SECTION VARIABLE ALIASES
       Temporary compatibility with your current CSS.
       New CSS should use --am-* directly.
    ===================================================== */

    --hero-primary:
        var(--am-primary);

    --hero-secondary:
        var(--am-secondary);

    --hero-accent:
        var(--am-accent);

    --hero-accent-dark:
        var(--am-accent-hover);

    --hero-heading:
        var(--am-heading);

    --hero-text:
        var(--am-text);

    --hero-soft:
        var(--am-bg-blue);

    --hero-border:
        var(--am-border);

    --am-path-primary:
        var(--am-primary);

    --am-path-secondary:
        var(--am-secondary);

    --am-path-accent:
        var(--am-accent);

    --am-path-heading:
        var(--am-heading);

    --am-path-text:
        var(--am-text);

    --am-path-border:
        var(--am-border);
}


/* =========================================================
   GLOBAL RESET
========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}


html {
    scroll-behavior: smooth;
    text-size-adjust: 100%;
}


body {
    margin: 0;

    color:
        var(--am-text);

    background:
        var(--am-bg);

    font-family:
        var(--am-font);

    font-size:
        var(--am-fs-base);

    font-weight:
        var(--am-fw-regular);

    line-height:
        var(--am-lh-body);

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


body.am-menu-open {
    overflow: hidden;
}


/* =========================================================
   GLOBAL ELEMENTS
========================================================= */

img,
picture,
svg,
video {
    display: block;
    max-width: 100%;
}


img {
    height: auto;
}


a {
    color:
        var(--am-secondary);

    text-decoration: none;

    transition:
        color var(--am-transition-fast);
}


a:hover {
    color:
        var(--am-primary);
}


button,
input,
select,
textarea {
    font: inherit;
}


button {
    cursor: pointer;
}


/* =========================================================
   GLOBAL TYPOGRAPHY
========================================================= */

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;

    color:
        var(--am-heading);

    font-family:
        var(--am-font-heading);

    font-weight:
        var(--am-fw-extrabold);

    line-height:
        var(--am-lh-heading);

    letter-spacing:
        var(--am-ls-heading);
}


h1 {
    font-size:
        var(--am-fs-h1);
}


h2 {
    font-size:
        var(--am-fs-h2);
}


h3 {
    font-size:
        var(--am-fs-h3);
}


h4 {
    font-size:
        var(--am-fs-h4);
}


p {
    margin-top: 0;

    color:
        var(--am-text);

    line-height:
        var(--am-lh-body);
}


/* =========================================================
   GLOBAL CONTAINERS
========================================================= */

.am-container {
    width:
        min(
            var(--am-container),
            calc(100% - 48px)
        );

    margin-inline: auto;
}


.am-container--wide {
    width:
        min(
            var(--am-container-wide),
            calc(100% - 48px)
        );

    margin-inline: auto;
}


.am-container--small {
    width:
        min(
            var(--am-container-small),
            calc(100% - 48px)
        );

    margin-inline: auto;
}


/* =========================================================
   GLOBAL SECTION SPACING
========================================================= */

.am-section {
    padding:
        var(--am-section-space)
        0;
}


.am-section--soft {
    background:
        var(--am-bg-soft);
}


.am-section--blue {
    background:
        var(--am-bg-blue);
}


.am-section--warm {
    background:
        var(--am-bg-warm);
}


/* =========================================================
   GLOBAL SECTION HEADING SYSTEM
   USE THIS ON EVERY HOMEPAGE / INNER PAGE SECTION
========================================================= */

.am-section-heading {
    max-width: 920px;

    margin:
        0 auto 44px;

    text-align: center;
}


/* EYEBROW */

.am-section-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    margin-bottom: 14px;

    color:
        var(--am-secondary);

    font-size:
        13px;

    font-weight:
        var(--am-fw-extrabold);

    line-height: 1.2;

    letter-spacing:
        var(--am-ls-eyebrow);

    text-transform:
        uppercase;
}


.am-section-eyebrow::before,
.am-section-eyebrow::after {
    content: "";

    width: 42px;
    height: 2px;

    border-radius:
        var(--am-radius-pill);

    background:
        var(--am-accent);
}


/* SECTION TITLE */

.am-section-title {
    max-width: 900px;

    margin:
        0 auto;

    color:
        var(--am-primary);

    font-family:
        var(--am-font-heading);

    font-size:
        var(--am-fs-h2);

    font-weight:
        var(--am-fw-extrabold);

    line-height:
        1.08;

    letter-spacing:
        var(--am-ls-heading);

    text-align:
        center;
}


.am-section-title strong,
.am-section-title span {
    color:
        var(--am-accent);

    font-weight:
        inherit;
}


/* SECTION SUBTITLE */

.am-section-subtitle {
    max-width:
        var(--am-content-width);

    margin:
        16px auto 0;

    color:
        var(--am-text);

    font-size:
        var(--am-fs-base);

    font-weight:
        var(--am-fw-regular);

    line-height:
        var(--am-lh-body);

    text-align:
        center;
}


/* =========================================================
   GLOBAL BUTTON SYSTEM
========================================================= */

.am-btn {
    min-height:
        var(--am-btn-height);

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        9px;

    padding:
        var(--am-btn-padding);

    border:
        1px solid transparent;

    border-radius:
        var(--am-btn-radius);

    font-family:
        var(--am-font);

    font-size:
        var(--am-btn-font-size);

    font-weight:
        var(--am-btn-font-weight);

    line-height: 1;

    text-align:
        center;

    text-decoration:
        none;

    white-space:
        nowrap;

    transition:
        background var(--am-transition),
        border-color var(--am-transition),
        color var(--am-transition),
        transform var(--am-transition),
        box-shadow var(--am-transition);
}


/* PRIMARY CTA */

.am-btn--primary {
    color:
        var(--am-heading);

    background:
        var(--am-accent);

    border-color:
        var(--am-accent);

    box-shadow:
        var(--am-shadow-accent);
}


.am-btn--primary:hover {
    color: #FFFFFF;

    background:
        var(--am-accent-dark);

    border-color:
        var(--am-accent-dark);

    transform:
        translateY(-2px);
}


/* BLUE BUTTON */

.am-btn--secondary {
    color: #FFFFFF;

    background:
        var(--am-secondary);

    border-color:
        var(--am-secondary);
}


.am-btn--secondary:hover {
    color: #FFFFFF;

    background:
        var(--am-secondary-hover);

    border-color:
        var(--am-secondary-hover);

    transform:
        translateY(-2px);
}


/* OUTLINE BUTTON */

.am-btn--outline {
    color:
        var(--am-primary);

    background:
        var(--am-white);

    border-color:
        var(--am-border-primary);
}


.am-btn--outline:hover {
    color:
        var(--am-primary);

    background:
        var(--am-bg-blue);

    border-color:
        var(--am-primary);
}


/* TEXT BUTTON */

.am-btn--text {
    min-height: auto;

    padding: 0;

    color:
        var(--am-secondary);

    background:
        transparent;

    border: 0;

    box-shadow: none;
}


.am-btn--text:hover {
    color:
        var(--am-primary);

    transform:
        translateX(3px);
}


/* LARGE BUTTON */

.am-btn--lg {
    min-height:
        var(--am-btn-height-lg);

    padding:
        var(--am-btn-padding-lg);
}


/* =========================================================
   GLOBAL CARDS
========================================================= */

.am-card {
    background:
        var(--am-white);

    border:
        1px solid var(--am-border);

    border-radius:
        var(--am-radius-lg);

    box-shadow:
        var(--am-shadow-sm);
}


.am-card--hover {
    transition:
        transform var(--am-transition),
        box-shadow var(--am-transition),
        border-color var(--am-transition);
}


.am-card--hover:hover {
    transform:
        translateY(-6px);

    border-color:
        var(--am-border-secondary);

    box-shadow:
        var(--am-shadow-lg);
}


/* =========================================================
   GLOBAL ICON BOX
========================================================= */

.am-icon {
    width:
        var(--am-icon-md);

    height:
        var(--am-icon-md);

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    flex-shrink: 0;

    color:
        var(--am-primary);

    background:
        var(--am-bg-blue);

    border-radius:
        var(--am-radius-circle);
}


/* =========================================================
   GLOBAL BADGE / CHIP
========================================================= */

.am-badge {
    display:
        inline-flex;

    align-items:
        center;

    gap: 6px;

    min-height: 28px;

    padding:
        5px 11px;

    color:
        var(--am-primary);

    background:
        var(--am-bg-blue);

    border-radius:
        var(--am-radius-pill);

    font-size:
        var(--am-fs-xs);

    font-weight:
        var(--am-fw-bold);

    line-height: 1;
}


/* =========================================================
   GLOBAL FORMS
========================================================= */

.am-field,
.am-form input:not([type="checkbox"]):not([type="radio"]),
.am-form select,
.am-form textarea {
    width: 100%;

    min-height:
        var(--am-input-height);

    padding:
        var(--am-input-padding);

    color:
        var(--am-heading);

    background:
        var(--am-input-bg);

    border:
        1px solid var(--am-input-border);

    border-radius:
        var(--am-input-radius);

    outline: 0;

    transition:
        border-color var(--am-transition-fast),
        box-shadow var(--am-transition-fast);
}


.am-form textarea {
    min-height: 130px;

    resize: vertical;
}


.am-field:focus,
.am-form input:focus,
.am-form select:focus,
.am-form textarea:focus {
    border-color:
        var(--am-input-border-focus);

    box-shadow:
        0 0 0 4px
        rgba(37, 106, 158, .10);
}


.am-form label {
    display: block;

    margin-bottom: 7px;

    color:
        var(--am-heading);

    font-size:
        var(--am-fs-sm);

    font-weight:
        var(--am-fw-semibold);
}


.am-form ::placeholder {
    color:
        var(--am-placeholder);
}


/* =========================================================
   GLOBAL DIVIDER
========================================================= */

.am-divider {
    width: 100%;
    height: 1px;

    background:
        var(--am-border);
}


/* =========================================================
   ACCESSIBILITY / FOCUS
========================================================= */

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline:
        3px solid
        rgba(37, 106, 158, .28);

    outline-offset:
        3px;
}


/* =========================================================
   SCREEN READER TEXT
========================================================= */

.am-sr-only {
    position: absolute;

    width: 1px;
    height: 1px;

    padding: 0;
    margin: -1px;

    overflow: hidden;

    clip: rect(0, 0, 0, 0);

    white-space: nowrap;

    border: 0;
}


/* =========================================================
   TABLET GLOBAL SETTINGS
========================================================= */

@media (max-width: 1050px) {

    .am-section {
        padding:
            var(--am-section-space-tablet)
            0;
    }

}


/* =========================================================
   MOBILE GLOBAL SETTINGS
========================================================= */

@media (max-width: 767px) {

    :root {
        --am-header-height: 68px;
    }


    .am-container,
    .am-container--wide,
    .am-container--small {
        width:
            calc(100% - 30px);
    }


    .am-section {
        padding:
            var(--am-section-space-mobile)
            0;
    }


    .am-section-heading {
        margin-bottom:
            32px;
    }


    .am-section-eyebrow {
        gap: 8px;

        font-size:
            11px;

        letter-spacing:
            .14em;
    }


    .am-section-eyebrow::before,
    .am-section-eyebrow::after {
        width:
            25px;
    }


    .am-section-title {
        font-size:
            clamp(34px, 9vw, 44px);
    }


    .am-section-subtitle {
        margin-top:
            13px;

        font-size:
            15px;

        line-height:
            1.65;
    }


    .am-btn {
        min-height:
            47px;
    }

}
/* =========================================================
   ADMISSIONMANTRA HEADER
   Uses global style.css :root variables
========================================================= */


/* =========================================================
   RESET
========================================================= */

.am-header,
.am-header *,
.am-header *::before,
.am-header *::after {
    box-sizing: border-box;
}


.am-header ul {
    margin: 0;
    padding: 0;

    list-style: none;
}


.am-header a {
    text-decoration: none;
}


body.am-menu-open {
    overflow: hidden;
}


/* =========================================================
   SKIP LINK
========================================================= */

.am-skip-link {
    position: fixed;

    top: -100px;
    left: var(--am-space-4);

    z-index: 999999;

    padding:
        var(--am-space-2)
        var(--am-space-4);

    color: var(--am-white);

    background:
        var(--am-primary);

    border-radius:
        var(--am-radius-sm);

    font-family:
        var(--am-font);

    font-size:
        var(--am-fs-sm);

    font-weight:
        var(--am-fw-bold);
}


.am-skip-link:focus {
    top: var(--am-space-3);
}


/* =========================================================
   HEADER
========================================================= */

.am-header {
    position: sticky;

    top: 0;

    z-index: 99990;

    width: 100%;

    background:
        rgba(
            255,
            255,
            255,
            .98
        );

    border-bottom:
        1px solid
        var(--am-border);

    box-shadow:
        var(--am-shadow-xs);

    backdrop-filter:
        blur(16px);

    -webkit-backdrop-filter:
        blur(16px);
}


/* WordPress admin bar */

.admin-bar
.am-header {
    top: 32px;
}


@media (max-width: 782px) {

    .admin-bar
    .am-header {
        top: 46px;
    }

}


/* =========================================================
   HEADER CONTAINER

   IMPORTANT:
   Equal left/right columns make navigation truly centered.
========================================================= */

.am-header__container {
    width:
        min(
            var(--am-container-wide),
            calc(
                100% - 48px
            )
        );

    min-height:
        var(--am-header-height);

    margin-inline:
        auto;

    display: grid;

    grid-template-columns:
        minmax(190px, 1fr)
        auto
        minmax(190px, 1fr);

    align-items: center;

    column-gap:
        var(--am-space-5);
}


/* =========================================================
   LOGO
========================================================= */

.am-header__logo {
    grid-column: 1;

    justify-self: start;

    display: inline-flex;
    align-items: center;
}


.am-header__logo img {
    width: auto;
    height: 78px;

    max-width: 210px;

    display: block;

    object-fit: contain;
}


/* =========================================================
   CENTERED DESKTOP NAV
========================================================= */

.am-header__desktop-nav {
    grid-column: 2;

    justify-self: center;

    margin: 0;
}


.am-header__menu {
    display: flex;
    align-items: center;
    justify-content: center;

    gap:
        var(--am-space-1);
}


.am-header__menu > li {
    position: relative;
}


/* =========================================================
   MENU ITEM
========================================================= */

.am-menu-item-wrap {
    display: flex;
    align-items: center;
}


/* =========================================================
   TOP LEVEL LINKS
========================================================= */

.am-header__menu
>
li
>
.am-menu-item-wrap
>
a {
    position: relative;

    min-height:
        var(--am-header-height);

    display: inline-flex;
    align-items: center;

    padding:
        0
        var(--am-space-4);

    color:
        var(--am-heading);

    font-family:
        var(--am-font);

    font-size:
        var(--am-fs-sm);

    font-weight:
        var(--am-fw-semibold);

    line-height: 1;

    white-space: nowrap;

    transition:
        color
        var(--am-transition-fast);
}


.am-header__menu
>
li
>
.am-menu-item-wrap
>
a:hover {
    color:
        var(--am-secondary);
}


/* =========================================================
   DROPDOWN ARROW
========================================================= */

.am-header__menu
.has-children
>
.am-menu-item-wrap
>
a::after {
    content: "";

    width: 7px;
    height: 7px;

    margin-left:
        var(--am-space-2);

    border-right:
        1.5px solid
        currentColor;

    border-bottom:
        1.5px solid
        currentColor;

    transform:
        translateY(-2px)
        rotate(45deg);

    transition:
        transform
        var(--am-transition-fast);
}


.am-header__menu
.has-children:hover
>
.am-menu-item-wrap
>
a::after,

.am-header__menu
.has-children:focus-within
>
.am-menu-item-wrap
>
a::after {
    transform:
        translateY(2px)
        rotate(225deg);
}


/* =========================================================
   ACTIVE MENU
========================================================= */

.am-header__menu
>
li.is-active
>
.am-menu-item-wrap
>
a {
    color:
        var(--am-secondary);
}


.am-header__menu
>
li.is-active
>
.am-menu-item-wrap
>
a::before {
    content: "";

    position: absolute;

    left:
        var(--am-space-4);

    right:
        var(--am-space-4);

    bottom: 0;

    height: 3px;

    background:
        var(--am-accent);

    border-radius:
        var(--am-radius-pill)
        var(--am-radius-pill)
        0
        0;
}


/* =========================================================
   DESKTOP SUBMENU
========================================================= */

.am-header__desktop-nav
.am-header-submenu {
    position: absolute;

    top:
        calc(
            100% - 2px
        );

    left: 50%;

    min-width: 245px;

    padding:
        var(--am-space-2);

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform:
        translate(
            -50%,
            var(--am-space-2)
        );

    background:
        var(--am-white);

    border:
        1px solid
        var(--am-border);

    border-radius:
        var(--am-radius-md);

    box-shadow:
        var(--am-shadow-lg);

    transition:
        opacity
        var(--am-transition-fast),
        visibility
        var(--am-transition-fast),
        transform
        var(--am-transition-fast);
}


/* Hover bridge */

.am-header__desktop-nav
.am-header-submenu::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: -14px;

    height: 14px;
}


/* SHOW */

.am-header__desktop-nav
.am-header__menu
>
li.has-children:hover
>
.am-header-submenu,

.am-header__desktop-nav
.am-header__menu
>
li.has-children:focus-within
>
.am-header-submenu {
    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform:
        translate(
            -50%,
            0
        );
}


/* =========================================================
   SUBMENU LINK
========================================================= */

.am-header__desktop-nav
.am-header-submenu a {
    width: 100%;

    min-height: 46px;

    display: flex;
    align-items: center;

    padding:
        var(--am-space-3)
        var(--am-space-4);

    color:
        var(--am-heading);

    background:
        transparent;

    border-radius:
        var(--am-radius-sm);

    font-family:
        var(--am-font);

    font-size:
        var(--am-fs-sm);

    font-weight:
        var(--am-fw-medium);

    transition:
        color
        var(--am-transition-fast),
        background
        var(--am-transition-fast),
        transform
        var(--am-transition-fast);
}


.am-header__desktop-nav
.am-header-submenu a:hover {
    color:
        var(--am-secondary);

    background:
        var(--am-bg-blue);

    transform:
        translateX(3px);
}


/* ACTIVE SUBMENU */

.am-header__desktop-nav
.am-header-submenu
li.is-active
>
a {
    color:
        var(--am-secondary);

    background:
        var(--am-bg-blue);

    font-weight:
        var(--am-fw-bold);
}


/* =========================================================
   CTA - RIGHT COLUMN
========================================================= */

.am-header__cta-wrap {
    grid-column: 3;

    justify-self: end;

    flex-shrink: 0;
}


.am-header__cta {
    min-height:
        var(--am-btn-height);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap:
        var(--am-space-2);

    padding:
        var(--am-btn-padding);

    color:
        var(--am-white);

    background:
        var(--am-accent);

    border:
        1px solid
        var(--am-accent);

    border-radius:
        var(--am-btn-radius);

    box-shadow:
        var(--am-shadow-accent);

    font-family:
        var(--am-font);

    font-size:
        var(--am-btn-font-size);

    font-weight:
        var(--am-btn-font-weight);

    white-space: nowrap;

    transition:
        background
        var(--am-transition),
        border-color
        var(--am-transition),
        transform
        var(--am-transition),
        box-shadow
        var(--am-transition);
}


.am-header__cta:hover {
    color:
        var(--am-white);

    background:
        var(--am-accent-hover);

    border-color:
        var(--am-accent-hover);

    transform:
        translateY(-2px);

    box-shadow:
        var(--am-shadow-md);
}


.am-header__cta span {
    transition:
        transform
        var(--am-transition-fast);
}


.am-header__cta:hover span {
    transform:
        translateX(4px);
}


/* =========================================================
   HAMBURGER
========================================================= */

.am-header__toggle {
    grid-column: 3;

    justify-self: end;

    width: 44px;
    height: 44px;

    display: none;

    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 5px;

    padding: 0;

    background:
        var(--am-white);

    border:
        1px solid
        var(--am-border);

    border-radius:
        var(--am-btn-radius);

    cursor: pointer;

    position: relative;

    z-index: 100002;
}


.am-header__toggle > span {
    width: 21px;
    height: 2px;

    display: block;

    background:
        var(--am-primary);

    border-radius:
        var(--am-radius-pill);

    transition:
        transform
        var(--am-transition),
        opacity
        var(--am-transition);
}


/* X */

.am-header__toggle.is-active
span:nth-child(1) {
    transform:
        translateY(7px)
        rotate(45deg);
}


.am-header__toggle.is-active
span:nth-child(2) {
    opacity: 0;
}


.am-header__toggle.is-active
span:nth-child(3) {
    transform:
        translateY(-7px)
        rotate(-45deg);
}


/* =========================================================
   MOBILE MENU

   display:none on desktop.
========================================================= */

.am-mobile-menu {
    display: none;
}


/* =========================================================
   MOBILE BREAKPOINT
========================================================= */

@media (max-width: 1050px) {

    .am-header__container {
        width:
            min(
                var(--am-container-wide),
                calc(
                    100% - 30px
                )
            );

        min-height: 72px;

        grid-template-columns:
            1fr
            auto;

        column-gap:
            var(--am-space-4);
    }


    .am-header__logo {
        grid-column: 1;
    }


    .am-header__logo img {
        height: 58px;

        max-width: 190px;
    }


    .am-header__desktop-nav,
    .am-header__cta-wrap {
        display: none;
    }


    .am-header__toggle {
        grid-column: 2;

        display: flex;
    }


    /* =====================================================
       MOBILE MENU
    ====================================================== */

    .am-mobile-menu {
        position: fixed !important;

        top:
            var(
                --am-mobile-menu-top,
                72px
            );

        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;

        width: 100% !important;

        height:
            calc(
                100dvh
                -
                var(
                    --am-mobile-menu-top,
                    72px
                )
            );

        display: block !important;

        overflow-x: hidden;

        overflow-y: auto;

        overscroll-behavior:
            contain;

        z-index: 100000;

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transform:
            translateY(-12px);

        background:
            var(--am-white);

        border-top:
            1px solid
            var(--am-border);

        box-shadow:
            var(--am-shadow-lg);

        transition:
            opacity
            var(--am-transition-fast),
            visibility
            var(--am-transition-fast),
            transform
            var(--am-transition-fast);
    }


    .am-mobile-menu.is-open {
        opacity: 1 !important;

        visibility: visible !important;

        pointer-events: auto !important;

        transform:
            translateY(0) !important;
    }


    .am-mobile-menu__inner {
        width:
            min(
                calc(
                    100% - 30px
                ),
                680px
            );

        margin-inline:
            auto;

        padding:
            var(--am-space-4)
            0
            var(--am-space-10);
    }


    /* =====================================================
       MOBILE ITEMS
    ====================================================== */

    .am-mobile-menu__list {
        width: 100%;

        margin: 0;

        padding: 0;

        list-style: none;
    }


    .am-mobile-menu__list
    >
    li {
        width: 100%;

        border-bottom:
            1px solid
            var(--am-border);
    }


    .am-mobile-menu__list
    .am-menu-item-wrap {
        width: 100%;

        display: flex;
        align-items: center;

        gap:
            var(--am-space-2);
    }


    .am-mobile-menu__list
    .am-menu-item-wrap
    >
    a {
        flex: 1;

        min-width: 0;

        min-height: 60px;

        display: flex;
        align-items: center;

        padding:
            var(--am-space-3)
            var(--am-space-1);

        color:
            var(--am-heading);

        font-family:
            var(--am-font);

        font-size:
            var(--am-fs-base);

        font-weight:
            var(--am-fw-semibold);

        line-height:
            var(--am-lh-small);
    }


    /* ACTIVE PARENT */

    .am-mobile-menu__list
    >
    li.is-active
    >
    .am-menu-item-wrap
    >
    a {
        color:
            var(--am-secondary);
    }


    /* =====================================================
       PLUS BUTTON
    ====================================================== */

    .am-submenu-toggle {
        width: 42px;
        height: 42px;

        flex:
            0 0
            42px;

        display: grid;
        place-items: center;

        padding: 0;

        color:
            var(--am-primary);

        background:
            var(--am-bg-blue);

        border: 0;

        border-radius:
            var(--am-radius-sm);

        cursor: pointer;

        font-size:
            var(--am-fs-lg);

        line-height: 1;
    }


    .am-submenu-toggle span {
        display: block;

        line-height: 1;
    }


    /* =====================================================
       MOBILE SUBMENU
    ====================================================== */

    .am-mobile-menu
    .am-header-submenu {
        display: none;

        width: 100%;

        margin: 0;

        padding:
            0
            0
            var(--am-space-3)
            var(--am-space-4);
    }


    .am-mobile-menu
    li.submenu-open
    >
    .am-header-submenu {
        display: block;
    }


    .am-mobile-menu
    .am-header-submenu
    li {
        width: 100%;

        border: 0;
    }


    .am-mobile-menu
    .am-header-submenu
    a {
        width: 100%;

        display: block;

        padding:
            var(--am-space-3)
            var(--am-space-4);

        color:
            var(--am-text);

        border-left:
            2px solid
            var(--am-border);

        background:
            transparent;

        font-family:
            var(--am-font);

        font-size:
            var(--am-fs-sm);

        font-weight:
            var(--am-fw-medium);

        line-height:
            var(--am-lh-small);
    }


    .am-mobile-menu
    .am-header-submenu
    li.is-active
    >
    a {
        color:
            var(--am-secondary);

        background:
            var(--am-bg-blue);

        border-color:
            var(--am-accent);

        font-weight:
            var(--am-fw-bold);
    }


    /* =====================================================
       MOBILE CTA
    ====================================================== */

    .am-mobile-menu__cta-wrap {
        width: 100%;

        padding-top:
            var(--am-space-6);
    }


    .am-mobile-menu__cta {
        width: 100%;

        min-height:
            var(--am-btn-height);

        display: flex;
        align-items: center;
        justify-content: center;

        padding:
            var(--am-btn-padding);

        color:
            var(--am-white);

        background:
            var(--am-accent);

        border:
            1px solid
            var(--am-accent);

        border-radius:
            var(--am-btn-radius);

        box-shadow:
            var(--am-shadow-accent);

        font-family:
            var(--am-font);

        font-size:
            var(--am-btn-font-size);

        font-weight:
            var(--am-btn-font-weight);
    }

}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 767px) {

    .am-header__container {
        min-height: 68px;
    }


    .am-header__logo img {
        height: 52px;

        max-width: 175px;
    }


    .am-header__toggle {
        width: 42px;
        height: 42px;
    }


    .am-mobile-menu__inner {
        width:
            calc(
                100% - 30px
            );
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .am-header__logo img {
        height: 48px;

        max-width: 160px;
    }


    .am-mobile-menu__list
    .am-menu-item-wrap
    >
    a {
        font-size:
            var(--am-fs-sm);
    }

}


/* =========================================================
   QUICK ACTIONS
========================================================= */

.am-quick-actions {
    position: fixed;

    right:
        var(--am-space-5);

    bottom:
        var(--am-space-6);

    z-index: 9000;

    display: flex;

    flex-direction: column;

    gap:
        var(--am-space-3);
}


.am-quick-fab {
    width: 56px;
    height: 56px;

    display: grid;
    place-items: center;

    color:
        var(--am-white);

    border-radius:
        var(--am-radius-circle);

    box-shadow:
        var(--am-shadow-lg);
}


.am-quick-fab:hover {
    color:
        var(--am-white);

    transform:
        translateY(-2px);
}


.am-quick-fab--call {
    background:
        var(--am-secondary);
}


.am-quick-fab--whatsapp {
    background:
        #25D366;
}


.am-quick-fab svg {
    width: 25px;
    height: 25px;

    display: block;
}


.am-quick-fab--call svg {
    fill: none;

    stroke:
        currentColor;

    stroke-width: 2;

    stroke-linecap:
        round;

    stroke-linejoin:
        round;
}


.am-quick-fab--whatsapp svg {
    fill:
        currentColor;
}


@media (max-width: 767px) {

    .am-quick-actions {
        right:
            var(--am-space-3);

        bottom:
            var(--am-space-4);
    }


    .am-quick-fab {
        width: 50px;
        height: 50px;
    }

}
/* =========================================================
   ADMISSIONMANTRA FOOTER
   Uses Master :root from style.css
========================================================= */


/* =========================================================
   FOOTER RESET
========================================================= */

.am-footer,
.am-footer *,
.am-footer *::before,
.am-footer *::after {
    box-sizing: border-box;
}

.am-footer a {
    text-decoration: none;
}

.am-footer ul {
    margin: 0;
    padding: 0;

    list-style: none;
}


/* =========================================================
   FOOTER CONTAINER
========================================================= */

.am-footer__container {
    width:
        min(
            var(--am-container),
            calc(100% - 48px)
        );

    margin-inline: auto;
}


/* =========================================================
   FOOTER TOP CTA
========================================================= */

.am-footer-cta {
    position: relative;

    padding:
        var(--am-space-8)
        0;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            var(--am-bg-blue) 0%,
            var(--am-bg-soft) 100%
        );

    border-top:
        1px solid var(--am-border);
}

.am-footer-cta::before {
    content: "";

    position: absolute;

    width: 320px;
    height: 320px;

    right: -120px;
    top: -180px;

    border-radius:
        var(--am-radius-circle);

    background:
        rgba(37, 106, 158, .07);
}

.am-footer-cta__inner {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap:
        var(--am-space-8);
}

.am-footer-cta__content {
    max-width:
        720px;
}

.am-footer-cta__eyebrow {
    display: inline-block;

    margin-bottom:
        var(--am-space-2);

    color:
        var(--am-accent);

    font-family:
        var(--am-font);

    font-size:
        12px;

    font-weight:
        var(--am-fw-extrabold);

    text-transform:
        uppercase;

    letter-spacing:
        .08em;
}

.am-footer-cta__title {
    margin:
        0 0 var(--am-space-3);

    color:
        var(--am-heading);

    font-family:
        var(--am-font-heading);

    font-size:
        clamp(
            28px,
            3vw,
            40px
        );

    font-weight:
        var(--am-fw-extrabold);

    line-height:
        1.15;
}

.am-footer-cta__text {
    max-width:
        650px;

    margin: 0;

    color:
        var(--am-text);

    font-size:
        15px;

    line-height:
        var(--am-lh-body);
}

.am-footer-cta__actions {
    display: flex;
    align-items: center;

    gap:
        var(--am-space-3);

    flex-shrink: 0;
}


/* =========================================================
   FOOTER CTA PRIMARY
========================================================= */

.am-footer-cta__primary {
    min-height:
        var(--am-btn-height);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap:
        var(--am-space-2);

    padding:
        var(--am-btn-padding);

    color:
        var(--am-white);

    background:
        var(--am-accent);

    border:
        1px solid var(--am-accent);

    border-radius:
        var(--am-btn-radius);

    font-family:
        var(--am-font);

    font-size:
        var(--am-btn-font-size);

    font-weight:
        var(--am-btn-font-weight);

    box-shadow:
        var(--am-shadow-accent);

    transition:
        background var(--am-transition),
        border-color var(--am-transition),
        transform var(--am-transition),
        box-shadow var(--am-transition);
}

.am-footer-cta__primary:hover {
    color:
        var(--am-white);

    background:
        var(--am-accent-hover);

    border-color:
        var(--am-accent-hover);

    transform:
        translateY(-2px);

    box-shadow:
        var(--am-shadow-md);
}


/* =========================================================
   FOOTER CTA SECONDARY
========================================================= */

.am-footer-cta__secondary {
    min-height:
        var(--am-btn-height);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding:
        var(--am-btn-padding);

    color:
        var(--am-primary);

    background:
        var(--am-white);

    border:
        1px solid var(--am-border-primary);

    border-radius:
        var(--am-btn-radius);

    font-family:
        var(--am-font);

    font-size:
        var(--am-btn-font-size);

    font-weight:
        var(--am-btn-font-weight);

    transition:
        background var(--am-transition),
        border-color var(--am-transition),
        color var(--am-transition),
        transform var(--am-transition);
}

.am-footer-cta__secondary:hover {
    color:
        var(--am-primary);

    background:
        var(--am-bg-blue);

    border-color:
        var(--am-primary);

    transform:
        translateY(-2px);
}


/* =========================================================
   MAIN FOOTER
========================================================= */

.am-footer__main {
    position: relative;

    padding:
        72px 0 56px;

    overflow: hidden;

    background:
        var(--am-gradient-primary);
}

.am-footer__main::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    right: -180px;
    top: -220px;

    border-radius:
        var(--am-radius-circle);

    background:
        rgba(37, 106, 158, .15);

    pointer-events: none;
}

.am-footer__main::after {
    content: "";

    position: absolute;

    width: 260px;
    height: 260px;

    left: -150px;
    bottom: -150px;

    border-radius:
        var(--am-radius-circle);

    background:
        rgba(242, 138, 75, .06);

    pointer-events: none;
}


/* =========================================================
   FOOTER GRID
========================================================= */

.am-footer__grid {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        1.45fr .8fr .95fr 1.15fr;

    gap:
        54px;
}


/* =========================================================
   FOOTER BRAND
========================================================= */

.am-footer__brand {
    min-width: 0;
}

.am-footer__logo {
    display: inline-flex;
    align-items: center;

    margin-bottom:
        var(--am-space-5);
}

.am-footer__logo img {
    display: block;

    width: auto;
    height: 139px;

    max-width: 240px;

    object-fit: contain;
}

.am-footer__description {
    max-width:
        380px;

    margin:
        0 0 var(--am-space-6);

    color:
        rgba(255, 255, 255, .72);

    font-family:
        var(--am-font);

    font-size:
        14px;

    line-height:
        var(--am-lh-body);
}


/* =========================================================
   SOCIAL
========================================================= */

.am-footer__social {
    display: flex;
    align-items: center;

    gap:
        var(--am-space-2);
}

.am-footer__social a {
    width: 38px;
    height: 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color:
        var(--am-white);

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .15);

    border-radius:
        var(--am-radius-sm);

    font-size:
        12px;

    font-weight:
        var(--am-fw-bold);

    transition:
        background var(--am-transition),
        border-color var(--am-transition),
        transform var(--am-transition);
}

.am-footer__social a:hover {
    color:
        var(--am-white);

    background:
        var(--am-accent);

    border-color:
        var(--am-accent);

    transform:
        translateY(-2px);
}


/* =========================================================
   FOOTER COLUMN HEADING
========================================================= */

.am-footer__heading {
    position: relative;

    margin:
        0 0 var(--am-space-6);

    padding-bottom:
        var(--am-space-3);

    color:
        var(--am-white);

    font-family:
        var(--am-font-heading);

    font-size:
        var(--am-fs-base);

    font-weight:
        var(--am-fw-bold);

    line-height:
        1.3;
}

.am-footer__heading::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 30px;
    height: 2px;

    border-radius:
        var(--am-radius-pill);

    background:
        var(--am-accent);
}


/* =========================================================
   FOOTER MENU
========================================================= */

.am-footer__menu {
    display: grid;

    gap:
        10px;
}

.am-footer__menu li {
    margin: 0;
}

.am-footer__menu a {
    position: relative;

    display: inline-block;

    color:
        rgba(255, 255, 255, .70);

    font-family:
        var(--am-font);

    font-size:
        14px;

    line-height:
        1.5;

    transition:
        color var(--am-transition-fast),
        transform var(--am-transition-fast);
}

.am-footer__menu a::before {
    content: "";

    display: inline-block;

    width: 5px;
    height: 5px;

    margin-right:
        var(--am-space-2);

    border-radius:
        var(--am-radius-circle);

    background:
        rgba(242, 138, 75, .65);

    vertical-align:
        middle;

    transition:
        background var(--am-transition-fast);
}

.am-footer__menu a:hover {
    color:
        var(--am-white);

    transform:
        translateX(3px);
}

.am-footer__menu a:hover::before {
    background:
        var(--am-accent);
}


/* =========================================================
   FOOTER CONTACT
========================================================= */

.am-footer__contact {
    display: grid;

    gap:
        var(--am-space-5);
}

.am-footer__contact-item {
    display: flex;
    align-items: flex-start;

    gap:
        var(--am-space-3);
}

.am-footer__contact-icon {
    width: 34px;
    height: 34px;

    flex:
        0 0 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    color:
        var(--am-white);

    background:
        rgba(255, 255, 255, .07);

    border:
        1px solid rgba(255, 255, 255, .12);

    border-radius:
        var(--am-radius-sm);

    font-size:
        var(--am-fs-sm);
}

.am-footer__contact-label {
    display: block;

    margin-bottom:
        2px;

    color:
        rgba(255, 255, 255, .45);

    font-size:
        10px;

    font-weight:
        var(--am-fw-bold);

    text-transform:
        uppercase;

    letter-spacing:
        .08em;
}

.am-footer__contact-item a,
.am-footer__contact-item address {
    color:
        rgba(255, 255, 255, .78);

    font-family:
        var(--am-font);

    font-size:
        13.5px;

    line-height:
        1.5;

    font-style:
        normal;

    transition:
        color var(--am-transition-fast);
}

.am-footer__contact-item a:hover {
    color:
        var(--am-white);
}


/* =========================================================
   FOOTER CONTACT CTA
========================================================= */

.am-footer__contact-cta {
    min-height:
        44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap:
        var(--am-space-2);

    margin-top:
        var(--am-space-6);

    padding:
        10px 17px;

    color:
        var(--am-white);

    background:
        var(--am-accent);

    border:
        1px solid var(--am-accent);

    border-radius:
        var(--am-btn-radius);

    font-family:
        var(--am-font);

    font-size:
        13px;

    font-weight:
        var(--am-btn-font-weight);

    box-shadow:
        var(--am-shadow-accent);

    transition:
        background var(--am-transition),
        border-color var(--am-transition),
        transform var(--am-transition),
        box-shadow var(--am-transition);
}

.am-footer__contact-cta:hover {
    color:
        var(--am-white);

    background:
        var(--am-accent-hover);

    border-color:
        var(--am-accent-hover);

    transform:
        translateY(-1px);

    box-shadow:
        var(--am-shadow-md);
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.am-footer__bottom {
    background:
        var(--am-primary-dark);

    border-top:
        1px solid rgba(255, 255, 255, .08);
}

.am-footer__bottom-inner {
    min-height:
        68px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap:
        var(--am-space-6);
}

.am-footer__copyright {
    margin: 0;

    color:
        rgba(255, 255, 255, .52);

    font-size:
        12.5px;
}


/* =========================================================
   FOOTER LEGAL
========================================================= */

.am-footer__legal {
    display: flex;
    align-items: center;

    flex-wrap: wrap;

    gap:
        var(--am-space-5);
}

.am-footer__legal li {
    margin: 0;
}

.am-footer__legal a {
    color:
        rgba(255, 255, 255, .52);

    font-size:
        12.5px;

    transition:
        color var(--am-transition-fast);
}

.am-footer__legal a:hover {
    color:
        var(--am-white);
}


/* =========================================================
   BACK TO TOP
========================================================= */

.am-back-to-top {
    position: fixed;

    right: 22px;
    bottom: 22px;

    z-index: 999;

    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    color:
        var(--am-white);

    background:
        var(--am-accent);

    border: 0;

    border-radius:
        var(--am-btn-radius);

    box-shadow:
        var(--am-shadow-md);

    cursor: pointer;

    opacity: 0;
    visibility: hidden;

    transform:
        translateY(10px);

    transition:
        opacity var(--am-transition),
        visibility var(--am-transition),
        transform var(--am-transition),
        background var(--am-transition);
}

.am-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;

    transform:
        translateY(0);
}

.am-back-to-top:hover {
    background:
        var(--am-accent-hover);

    transform:
        translateY(-2px);
}


/* =========================================================
   FOOTER TABLET
========================================================= */

@media (max-width: 1050px) {

    .am-footer-cta__inner {
        align-items: flex-start;

        flex-direction: column;
    }

    .am-footer__grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap:
            45px 60px;
    }
}


/* =========================================================
   FOOTER MOBILE
========================================================= */

@media (max-width: 700px) {

    .am-footer__container {
        width:
            calc(100% - 30px);
    }


    .am-footer-cta {
        padding:
            var(--am-space-7)
            0;
    }

    .am-footer-cta__inner {
        gap:
            var(--am-space-6);
    }

    .am-footer-cta__title {
        font-size:
            27px;
    }

    .am-footer-cta__text {
        font-size:
            14px;
    }

    .am-footer-cta__actions {
        width: 100%;

        flex-direction: column;
    }

    .am-footer-cta__primary,
    .am-footer-cta__secondary {
        width: 100%;
    }


    .am-footer__main {
        padding:
            52px 0 40px;
    }

    .am-footer__grid {
        grid-template-columns:
            1fr;

        gap:
            var(--am-space-8);
    }

    .am-footer__logo img {
        height:
            62px;

        max-width:
            215px;
    }

    .am-footer__description {
        max-width: 100%;
    }


    .am-footer__bottom-inner {
        min-height: auto;

        align-items: flex-start;

        flex-direction: column;

        gap:
            var(--am-space-3);

        padding:
            var(--am-space-5)
            0;
    }

    .am-footer__legal {
        gap:
            10px 18px;
    }


    .am-back-to-top {
        width: 42px;
        height: 42px;

        right: 15px;
        bottom: 15px;
    }
}


/* =========================================================
   FOOTER VERY SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .am-footer-cta__title {
        font-size:
            25px;
    }

    .am-footer__heading {
        font-size:
            15px;
    }

    .am-footer__menu a,
    .am-footer__contact-item a,
    .am-footer__contact-item address {
        font-size:
            13px;
    }
}
/* =========================================================
   FLOATING CALL + WHATSAPP BUTTONS
   Site-wide — append to root.css
========================================================= */

.am-quick-actions {
    position: fixed;
    right: var(--am-space-6);
    bottom: var(--am-space-6);
    display: flex;
    flex-direction: column;
    gap: var(--am-space-4);
    z-index: var(--am-z-modal);
}

.am-quick-fab {
    position: relative;
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--am-white);
    border-radius: var(--am-radius-circle);
    box-shadow: var(--am-shadow-lg);
    transition: transform var(--am-transition), box-shadow var(--am-transition);
}

.am-quick-fab:hover {
    color: var(--am-white);
    transform: translateY(-3px) scale(1.05);
    box-shadow: var(--am-shadow-xl);
}

.am-quick-fab--call {
    background: var(--am-secondary);
}

.am-quick-fab--whatsapp {
    background: var(--am-management);
}

.am-quick-fab__ring {
    position: absolute;
    inset: -6px;
    border: 2px solid var(--am-management);
    border-radius: var(--am-radius-circle);
    opacity: 0;
    animation: amQuickFabPulse 2.4s ease-out infinite;
}

@keyframes amQuickFabPulse {
    0%   { transform: scale(.9);  opacity: .6; }
    70%  { transform: scale(1.35); opacity: 0; }
    100% { transform: scale(1.35); opacity: 0; }
}

@media (max-width: 700px) {
    .am-quick-actions {
        right: var(--am-space-4);
        bottom: var(--am-space-4);
        gap: var(--am-space-3);
    }

    .am-quick-fab {
        width: 50px;
        height: 50px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .am-quick-fab__ring {
        animation: none;
        display: none;
    }
}