
/* ======================================================
   EYPD SHARED SITE NAVIGATION + SOCIAL FOOTER
   Matches the custom Home page treatment.
   ====================================================== */
#eypd-refresh .eypd-shared-menu,#eypd-refresh .eypd-shared-menu *,#eypd-refresh .eypd-shared-social,#eypd-refresh .eypd-shared-social *{box-sizing:border-box}

#eypd-refresh .eypd-shared-menu{
    width:min(1540px,100%);
    max-width:1540px;
    margin:0 auto 14px;
    padding:0;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    font-family:Inter,"Segoe UI",Arial,sans-serif;
}
#eypd-refresh .eypd-shared-menu>a{
    min-height:66px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 15px;
    border:1px solid #d5e4ee;
    border-radius:14px;
    background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(242,248,252,.96));
    color:#142033!important;
    text-decoration:none!important;
    box-shadow:0 6px 18px rgba(20,54,87,.055);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
#eypd-refresh .eypd-shared-menu>a:hover{
    transform:translateY(-3px);
    border-color:#abcfe3;
    box-shadow:0 12px 25px rgba(20,54,87,.10);
}
#eypd-refresh .eypd-shared-menu>a.is-current{
    border-color:#9ccbe3;
    background:linear-gradient(145deg,#eef8fd,#fff);
    box-shadow:inset 0 3px 0 #0753a6,0 7px 18px rgba(20,54,87,.07);
}
#eypd-refresh .eypd-shared-menu-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
}
#eypd-refresh .eypd-shared-menu-copy small{
    display:block;
    margin-bottom:2px;
    color:#718397;
    font-size:9.4px;
    font-weight:850;
    line-height:1.15;
    letter-spacing:.055em;
    text-transform:uppercase;
}
#eypd-refresh .eypd-shared-menu-copy strong{
    display:block;
    color:#163b61;
    font-size:14.5px;
    font-weight:900;
    line-height:1.18;
}
#eypd-refresh .eypd-shared-menu>a>b{
    color:#d12b36;
    font-size:20px;
    line-height:1;
}
#eypd-refresh .eypd-shared-menu>a.is-current .eypd-shared-menu-copy strong{color:#0753a6}

#eypd-refresh .eypd-shared-social{
    width:min(1540px,100%);
    max-width:1540px;
    margin:26px auto 0;
    padding:14px 16px;
    display:grid;
    grid-template-columns:minmax(205px,.42fr) minmax(0,1.58fr);
    align-items:center;
    gap:18px;
    border:1px solid #d6e5ee;
    border-bottom:0;
    border-radius:18px 18px 0 0;
    background:linear-gradient(110deg,#f3f9fc,#fff);
    box-shadow:0 -8px 22px rgba(20,54,87,.045);
    font-family:Inter,"Segoe UI",Arial,sans-serif;
}
#eypd-refresh .eypd-shared-social-copy{
    padding-right:16px;
    border-right:1px solid #d8e5ee;
}
#eypd-refresh .eypd-shared-social-copy span{
    display:block;
    color:#d12b36;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
#eypd-refresh .eypd-shared-social-copy strong{
    display:block;
    margin-top:3px;
    color:#435b70;
    font-size:11.5px;
    line-height:1.35;
}
#eypd-refresh .eypd-shared-social-links{
    width:100%;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:9px;
}
#eypd-refresh .eypd-shared-social-link{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:8px 9px;
    border:1px solid #cddfea;
    border-radius:10px;
    background:rgba(255,255,255,.93);
    color:#365068!important;
    text-decoration:none!important;
    box-shadow:0 3px 9px rgba(20,54,87,.035);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
#eypd-refresh .eypd-shared-social-link:hover{
    transform:translateY(-3px);
    border-color:#a7cce2;
    box-shadow:0 10px 20px rgba(20,54,87,.09);
}
#eypd-refresh .eypd-shared-social-icon{
    width:25px;
    height:25px;
    flex:0 0 25px;
    display:grid;
    place-items:center;
    border-radius:7px;
    color:#fff;
    font-size:9px;
    font-weight:950;
}
#eypd-refresh .eypd-shared-social-name{
    color:#365068;
    font-size:10.5px;
    font-weight:850;
    white-space:nowrap;
}
#eypd-refresh .eypd-shared-social-link[data-network="facebook"] .eypd-shared-social-icon{background:linear-gradient(145deg,#174ea6,#2877d4)}
#eypd-refresh .eypd-shared-social-link[data-network="x"] .eypd-shared-social-icon{background:linear-gradient(145deg,#1a2530,#465260)}
#eypd-refresh .eypd-shared-social-link[data-network="pinterest"] .eypd-shared-social-icon{background:linear-gradient(145deg,#a51621,#d7353f)}
#eypd-refresh .eypd-shared-social-link[data-network="instagram"] .eypd-shared-social-icon{background:linear-gradient(145deg,#6b49a8,#c24882)}
#eypd-refresh .eypd-shared-social-link[data-network="youtube"] .eypd-shared-social-icon{background:linear-gradient(145deg,#c91e28,#ef4450)}
#eypd-refresh .eypd-shared-social-link[data-network="linkedin"] .eypd-shared-social-icon{background:linear-gradient(145deg,#0753a6,#178bc2)}

@media(max-width:1050px){
    #eypd-refresh .eypd-shared-menu{grid-template-columns:repeat(2,minmax(0,1fr))}
    #eypd-refresh .eypd-shared-social{grid-template-columns:1fr}
    #eypd-refresh .eypd-shared-social-copy{
        padding-right:0;
        padding-bottom:8px;
        border-right:0;
        border-bottom:1px solid #d8e5ee;
    }
    #eypd-refresh .eypd-shared-social-links{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
    #eypd-refresh .eypd-shared-menu{grid-template-columns:1fr;gap:7px}
    #eypd-refresh .eypd-shared-menu>a{min-height:58px}
    #eypd-refresh .eypd-shared-social-links{grid-template-columns:repeat(2,minmax(0,1fr))}
    #eypd-refresh .eypd-shared-social-link{justify-content:flex-start}
}


/* ======================================================
   EYPD TOP MENU SEPARATION FIX
   Keeps the menu in its own normal-flow band with a
   visible gap before the page hero/header.
   ====================================================== */

#eypd-refresh .EYPD-MENU-GAP-SHELL{
    display:block!important;
    position:relative!important;
    z-index:20!important;
    isolation:isolate!important;
    width:100%!important;
    max-width:none!important;
    clear:both!important;
    float:none!important;
    margin:0 0 48px 0!important;
    padding:0!important;
    overflow:visible!important;
}

#eypd-refresh .EYPD-MENU-GAP-SHELL > .eypd-shared-menu{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:1!important;
    clear:both!important;
    float:none!important;
    width:min(1540px,100%)!important;
    max-width:1540px!important;
    margin:0 auto!important;
    transform:none!important;
}

/* Prevent neighboring page sections from pulling upward */
#eypd-refresh .EYPD-MENU-GAP-SHELL + section,#eypd-refresh .EYPD-MENU-GAP-SHELL + div:not(.eypd-shared-menu-shell),#eypd-refresh .EYPD-MENU-GAP-SHELL ~ section:first-of-type{
    clear:both!important;
}

/* Keep hover motion inside the menu's own visual area */
#eypd-refresh .EYPD-MENU-GAP-SHELL .eypd-shared-menu > a{
    position:relative!important;
    z-index:1!important;
}
#eypd-refresh .EYPD-MENU-GAP-SHELL .eypd-shared-menu > a:hover{
    z-index:3!important;
    transform:translateY(-3px)!important;
}

/* More separation on narrower layouts, where the menu is taller */
@media(max-width:1050px){
    #eypd-refresh .EYPD-MENU-GAP-SHELL{
        margin-bottom:42px!important;
    }
}
@media(max-width:620px){
    #eypd-refresh .EYPD-MENU-GAP-SHELL{
        margin-bottom:34px!important;
    }
}



/* ======================================================
   EXACT HOME-PAGE MENU TREATMENT
   Same width, spacing, card depth, and colored end bars
   as the EYPD Home page.
   ====================================================== */

#eypd-refresh .eypd-shared-menu{
    width:min(1460px,100%)!important;
    max-width:1460px!important;
    margin:0 auto 18px!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:9px!important;
    clear:both!important;
    float:none!important;
    position:relative!important;
    z-index:10!important;
    font-family:Inter,"Segoe UI",Arial,sans-serif!important;
}

#eypd-refresh .eypd-shared-menu>a{
    position:relative!important;
    overflow:hidden!important;
    min-height:72px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px 16px!important;
    border-radius:13px!important;
    border:1px solid #cfdee8!important;
    background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(238,247,252,.74))!important;
    color:#142033!important;
    text-decoration:none!important;
    box-shadow:0 6px 16px rgba(20,54,87,.045)!important;
    backdrop-filter:blur(8px);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}

#eypd-refresh .eypd-shared-menu>a:hover{
    transform:translateY(-5px)!important;
    box-shadow:0 16px 30px rgba(20,54,87,.10)!important;
    border-color:#a9cde3!important;
}

/* Home-page colored end bars */
#eypd-refresh .eypd-shared-menu>a:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:5px!important;
    height:100%!important;
    background:#0753a6!important;
}

#eypd-refresh .eypd-shared-menu>a:nth-child(2):before,#eypd-refresh .eypd-shared-menu>a:nth-child(6):before{
    background:#d12b36!important;
}

#eypd-refresh .eypd-shared-menu>a:nth-child(3):before,#eypd-refresh .eypd-shared-menu>a:nth-child(7):before{
    background:#7557a7!important;
}

#eypd-refresh .eypd-shared-menu>a:nth-child(4):before,#eypd-refresh .eypd-shared-menu>a:nth-child(8):before{
    background:#178a8f!important;
}

#eypd-refresh .eypd-shared-menu-copy{
    min-width:0!important;
    display:block!important;
}

#eypd-refresh .eypd-shared-menu-copy small{
    display:block!important;
    color:#6b7b8e!important;
    font-size:8.5px!important;
    font-weight:850!important;
    line-height:1.2!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
}

#eypd-refresh .eypd-shared-menu-copy strong{
    display:block!important;
    margin-top:3px!important;
    color:#142033!important;
    font-size:12.5px!important;
    font-weight:800!important;
    line-height:1.2!important;
}

#eypd-refresh .eypd-shared-menu>a>b{
    flex:0 0 auto!important;
    color:#0753a6!important;
    font-size:18px!important;
    line-height:1!important;
}

/* Remove the earlier "active page" top-line treatment.
   The home page does not use it. */
#eypd-refresh .eypd-shared-menu>a.is-current{
    border-color:#cfdee8!important;
    background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(238,247,252,.74))!important;
    box-shadow:0 6px 16px rgba(20,54,87,.045)!important;
}

@media(max-width:1050px){
    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:620px){
    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:1fr!important;
        gap:7px!important;
    }
    #eypd-refresh .eypd-shared-menu>a{
        min-height:64px!important;
    }
}


/* ======================================================
   MENU / HERO EDGE ALIGNMENT
   The menu now uses the same left and right edges as
   this page's main hero/header area.
   ====================================================== */
#eypd-refresh #eypd-contact-hub > .eypd-shared-menu {
    width:calc(100% - 64px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
}



/* ======================================================
   FINAL EYPD MENU / HERO ALIGNMENT
   Standardizes top spacing and makes menu edges match
   this page's hero edges exactly.
   ====================================================== */

#eypd-refresh.page #content.site-content{
    padding-top:0!important;
    margin-top:0!important;
}


/* Remove inherited top spacing inside the page shell */
#eypd-refresh #eypd-contact-hub{
    margin-top:0!important;
    padding-top:0!important;
}

/* Menu and hero share the same horizontal edge */
#eypd-refresh #eypd-contact-hub > .eypd-shared-menu{
    width:calc(100% - 64px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-top:0!important;
    margin-bottom:14px!important;
}


#eypd-refresh #eypd-contact-hub .ct-hero{
    margin-left:0!important;
    margin-right:0!important;
}


/* Keep the colored menu-definition bars visible and crisp */
#eypd-refresh #eypd-contact-hub .eypd-shared-menu > a:before{
    width:5px!important;
    opacity:1!important;
}



/* ======================================================
   EYPD SHARED BRAND HEADER — MATCHES HOME PAGE v13
   ====================================================== */

#eypd-refresh .eypd-shared-brandbar,#eypd-refresh .eypd-shared-brandbar *{box-sizing:border-box}

#eypd-refresh .eypd-shared-brandbar{
    display:grid!important;
    grid-template-columns:
        minmax(220px,260px)
        minmax(220px,.72fr)
        minmax(480px,1.35fr)
        minmax(175px,215px)!important;
    align-items:center!important;
    column-gap:34px!important;
    row-gap:18px!important;
    margin:0 auto 16px!important;
    padding:20px 24px!important;
    border:1px solid #d9e6ef!important;
    border-radius:18px!important;
    background:linear-gradient(145deg,#ffffff,#f6fafc)!important;
    box-shadow:0 9px 24px rgba(20,54,87,.055)!important;
    font-family:Inter,"Segoe UI",Arial,sans-serif!important;
    color:#142033!important;
}

#eypd-refresh .eypd-shared-brand-logo{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-width:0!important;
    padding-right:6px!important;
}

#eypd-refresh .eypd-shared-brand-logo a{
    display:block!important;
    line-height:0!important;
}

#eypd-refresh .eypd-shared-brand-logo img{
    display:block!important;
    width:225px!important;
    max-width:100%!important;
    height:auto!important;
}

#eypd-refresh .eypd-shared-brand-copy{
    min-width:0!important;
    padding:10px 0 10px 24px!important;
    border-left:1px solid #d9e6ef!important;
}

#eypd-refresh .eypd-shared-brand-copy strong{
    display:block!important;
    color:#163b61!important;
    font-size:13.5px!important;
    font-weight:900!important;
    line-height:1.24!important;
    letter-spacing:.045em!important;
}

#eypd-refresh .eypd-shared-brand-copy span{
    display:block!important;
    max-width:265px!important;
    margin-top:7px!important;
    color:#627286!important;
    font-size:11px!important;
    line-height:1.45!important;
}

#eypd-refresh .eypd-shared-brand-center{
    min-width:0!important;
    padding:12px 24px!important;
    border-left:1px solid #d9e6ef!important;
    border-right:1px solid #d9e6ef!important;
}

#eypd-refresh .eypd-shared-brand-center-label{
    margin-bottom:9px!important;
    color:#d12b36!important;
    font-size:9.5px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
}

#eypd-refresh .eypd-shared-brand-center-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
}

#eypd-refresh .eypd-shared-brand-center-grid>div{
    min-height:58px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:10px 11px!important;
    border:1px solid #dbe7ef!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 4px 12px rgba(20,54,87,.035)!important;
}

#eypd-refresh .eypd-shared-brand-center-grid strong{
    display:block!important;
    color:#0753a6!important;
    font-size:14.5px!important;
    font-weight:900!important;
    line-height:1.15!important;
}

#eypd-refresh .eypd-shared-brand-center-grid span{
    display:block!important;
    margin-top:4px!important;
    color:#6b7b8e!important;
    font-size:9px!important;
    font-weight:750!important;
    line-height:1.25!important;
}

#eypd-refresh .eypd-shared-brand-contact{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-width:0!important;
}

#eypd-refresh .eypd-shared-brand-contact a{
    width:100%!important;
    min-height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:9px 12px!important;
    border:1px solid #d1e1eb!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#163b61!important;
    text-decoration:none!important;
    font-size:11.5px!important;
    font-weight:850!important;
    white-space:nowrap!important;
    box-shadow:0 4px 12px rgba(20,54,87,.035)!important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}

#eypd-refresh .eypd-shared-brand-contact a:hover{
    transform:translateY(-2px)!important;
    border-color:#a9cde3!important;
    box-shadow:0 9px 18px rgba(20,54,87,.08)!important;
}

/* ======================================================
   10-LINK MENU — HOME FIRST / NMEC LAST
   5 across x 2 rows on desktop
   ====================================================== */
#eypd-refresh .eypd-shared-menu{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:9px!important;
    margin-top:0!important;
    margin-bottom:14px!important;
}

/* Preserve the color-definition bars with 10 cards */
#eypd-refresh .eypd-shared-menu>a:nth-child(1):before{background:#0753a6!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(2):before{background:#d12b36!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(3):before{background:#7557a7!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(4):before{background:#178a8f!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(5):before{background:#0753a6!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(6):before{background:#d12b36!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(7):before{background:#7557a7!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(8):before{background:#178a8f!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(9):before{background:#0753a6!important}
#eypd-refresh .eypd-shared-menu>a:nth-child(10):before{background:#d12b36!important}

/* Current page remains subtle rather than changing geometry */
#eypd-refresh .eypd-shared-menu>a.is-current{
    box-shadow:inset 0 3px 0 rgba(7,83,166,.16),0 6px 16px rgba(20,54,87,.045)!important;
}

@media(max-width:1250px){
    #eypd-refresh .eypd-shared-brandbar{
        grid-template-columns:minmax(210px,.75fr) minmax(250px,.9fr) minmax(420px,1.35fr)!important;
    }

    #eypd-refresh .eypd-shared-brand-contact{
        grid-column:1 / -1!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }

    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:900px){
    #eypd-refresh .eypd-shared-brandbar{
        grid-template-columns:1fr 1fr!important;
    }

    #eypd-refresh .eypd-shared-brand-center{
        grid-column:1 / -1!important;
        border-left:0!important;
        border-right:0!important;
        border-top:1px solid #d9e6ef!important;
        border-bottom:1px solid #d9e6ef!important;
    }

    #eypd-refresh .eypd-shared-brand-contact{
        grid-column:1 / -1!important;
    }
}

@media(max-width:620px){
    #eypd-refresh .eypd-shared-brandbar{
        grid-template-columns:1fr!important;
        padding:16px!important;
        gap:14px!important;
    }

    #eypd-refresh .eypd-shared-brand-logo{
        justify-content:center!important;
    }

    #eypd-refresh .eypd-shared-brand-copy{
        padding:12px 0 0!important;
        border-left:0!important;
        border-top:1px solid #d9e6ef!important;
        text-align:center!important;
    }

    #eypd-refresh .eypd-shared-brand-copy span{
        max-width:none!important;
    }

    #eypd-refresh .eypd-shared-brand-center{
        grid-column:auto!important;
        padding:12px 0!important;
    }

    #eypd-refresh .eypd-shared-brand-center-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    #eypd-refresh .eypd-shared-brand-contact{
        grid-column:auto!important;
        grid-template-columns:1fr!important;
    }

    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:1fr!important;
    }
}

/* Match this page's approved hero width */
#eypd-refresh #eypd-contact-hub > .eypd-shared-menu,#eypd-refresh #eypd-contact-hub > .eypd-shared-brandbar{
    width:calc(100% - 64px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
}


/*
=====================================================
EYPD CONTACT US — MODERN WORDPRESS PAGE
Scoped to #eypd-contact-hub
=====================================================
*/

/* This style block lives only on the Contact Us page */
#eypd-refresh.page .page-header,#eypd-refresh.page #page > .page-header{
    display:none!important;
}

#eypd-refresh.page #content.site-content{
    padding-top:32px!important;
}

#eypd-refresh #eypd-contact-hub,#eypd-refresh #eypd-contact-hub *{
    box-sizing:border-box;
}

#eypd-refresh #eypd-contact-hub{
    --navy:#061d36;
    --navy2:#092d52;
    --blue:#0753a6;
    --blue2:#0b69c9;
    --cyan:#17a8d8;
    --teal:#0b8c85;
    --red:#d12b36;
    --ink:#142033;
    --text:#465b70;
    --muted:#6c7c8d;
    --line:#d8e5ef;
    --soft:#f4f8fb;
    --softblue:#edf7ff;
    --white:#fff;
    font-family:Inter,"Segoe UI",Arial,sans-serif;
    color:var(--ink);
    line-height:1.58;

    /* Wide modern layout — breaks out of narrow theme containers */
    width:calc(100vw - 32px);
    max-width:none;
    margin-left:calc(50% - 50vw + 16px);
    margin-right:calc(50% - 50vw + 16px);
    overflow:hidden;
}

#eypd-refresh #eypd-contact-hub .ct-wrap{
    width:100%;
    max-width:none;
    margin:0 auto;
    padding:0 32px;
}

/* HERO */
#eypd-refresh #eypd-contact-hub .ct-hero{
    position:relative;
    overflow:hidden;
    min-height:430px;
    display:grid;
    align-items:center;
    padding:76px 58px;
    border-radius:30px;
    color:#fff;
    background:
        radial-gradient(circle at 88% 12%,rgba(58,173,229,.24) 0 18%,transparent 18.5%),
        linear-gradient(118deg,#04182e 0%,#063d75 53%,#0b75a4 100%);
    border:1px solid rgba(255,255,255,.10);
    box-shadow:
        0 30px 60px rgba(6,29,54,.20),
        0 10px 22px rgba(6,29,54,.10),
        inset 0 1px 0 rgba(255,255,255,.10);
}

#eypd-refresh #eypd-contact-hub .ct-hero:before,#eypd-refresh #eypd-contact-hub .ct-hero:after{
    content:"";
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(120,216,246,.17);
}

#eypd-refresh #eypd-contact-hub .ct-hero:before{
    width:620px;
    height:620px;
    right:-250px;
    top:-350px;
}

#eypd-refresh #eypd-contact-hub .ct-hero:after{
    width:360px;
    height:360px;
    right:105px;
    bottom:-275px;
}

#eypd-refresh #eypd-contact-hub .ct-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);
    gap:48px;
    align-items:center;
}

#eypd-refresh #eypd-contact-hub .ct-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 12px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(255,255,255,.08);
    color:#dff7ff;
    font-size:12px;
    font-weight:850;
    letter-spacing:.09em;
    text-transform:uppercase;
}

#eypd-refresh #eypd-contact-hub .ct-kicker-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#73dfff;
    box-shadow:0 0 0 4px rgba(115,223,255,.12);
}

#eypd-refresh #eypd-contact-hub .ct-hero h1{
    color:#fff;
    font-size:clamp(44px,6vw,76px);
    line-height:.96;
    letter-spacing:-.05em;
    margin:18px 0;
}

#eypd-refresh #eypd-contact-hub .ct-hero h1 span{
    display:block;
    color:#78d8f6;
}

#eypd-refresh #eypd-contact-hub .ct-hero p{
    max-width:780px;
    margin:0;
    color:#d9eaf5;
    font-size:18px;
}

#eypd-refresh #eypd-contact-hub .ct-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:11px;
    margin-top:28px;
}

#eypd-refresh #eypd-contact-hub .ct-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:46px;
    padding:12px 18px;
    border-radius:11px;
    text-decoration:none!important;
    font-weight:850;
    transition:.2s ease;
}

#eypd-refresh #eypd-contact-hub .ct-btn:hover{
    transform:translateY(-2px);
}

#eypd-refresh #eypd-contact-hub .ct-btn-white{
    background:#fff;
    color:var(--blue)!important;
    box-shadow:0 9px 24px rgba(0,0,0,.17);
}

#eypd-refresh #eypd-contact-hub .ct-btn-ghost{
    color:#fff!important;
    border:1px solid rgba(255,255,255,.40);
    background:rgba(255,255,255,.06);
}

/* HERO CONTACT PANEL */
#eypd-refresh #eypd-contact-hub .ct-quick{
    background:rgba(3,20,39,.68);
    border:1px solid rgba(111,216,250,.30);
    border-radius:22px;
    padding:24px;
    box-shadow:0 24px 54px rgba(0,0,0,.22);
    backdrop-filter:blur(4px);
}

#eypd-refresh #eypd-contact-hub .ct-quick-label{
    color:#8eddf8;
    font-size:11px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:14px;
}

#eypd-refresh #eypd-contact-hub .ct-quick h3{
    margin:0 0 6px;
    color:#fff;
    font-size:23px;
}

#eypd-refresh #eypd-contact-hub .ct-quick > p{
    margin:0 0 19px;
    color:#bed5e3;
    font-size:14px;
}

#eypd-refresh #eypd-contact-hub .ct-quick-list{
    display:grid;
    gap:9px;
}

#eypd-refresh #eypd-contact-hub .ct-quick-item{
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px;
    border-radius:13px;
    border:1px solid rgba(255,255,255,.11);
    background:rgba(255,255,255,.06);
}

#eypd-refresh #eypd-contact-hub .ct-quick-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:rgba(90,201,240,.12);
    color:#7edcff;
}

#eypd-refresh #eypd-contact-hub .ct-quick-icon svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

#eypd-refresh #eypd-contact-hub .ct-quick-item strong{
    display:block;
    color:#fff;
    font-size:13px;
    margin-bottom:2px;
}

#eypd-refresh #eypd-contact-hub .ct-quick-item a,#eypd-refresh #eypd-contact-hub .ct-quick-item span{
    display:block;
    color:#b9d8e7!important;
    font-size:13px;
    text-decoration:none!important;
    word-break:break-word;
}

/* CONTACT STRIP */
#eypd-refresh #eypd-contact-hub .ct-strip{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:18px;
}

#eypd-refresh #eypd-contact-hub .ct-strip-card{
    padding:20px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:17px;
    box-shadow:0 8px 22px rgba(20,54,87,.06);
}

#eypd-refresh #eypd-contact-hub .ct-strip-card strong{
    display:block;
    color:var(--blue);
    font-size:15px;
    margin-bottom:4px;
}

#eypd-refresh #eypd-contact-hub .ct-strip-card span{
    color:var(--muted);
    font-size:13px;
}

/* GENERIC SECTIONS */
#eypd-refresh #eypd-contact-hub .ct-section{
    padding:64px 0;
}

#eypd-refresh #eypd-contact-hub .ct-section-soft{
    padding:52px 30px;
    background:var(--soft);
    border-radius:26px;
    box-shadow:0 14px 34px rgba(20,54,87,.06);
}

#eypd-refresh #eypd-contact-hub .ct-eyebrow{
    color:var(--red);
    font-size:12px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}

#eypd-refresh #eypd-contact-hub .ct-section h2{
    color:var(--ink);
    font-size:clamp(31px,4vw,45px);
    line-height:1.07;
    letter-spacing:-.035em;
    margin:8px 0 12px;
}

#eypd-refresh #eypd-contact-hub .ct-lead{
    max-width:850px;
    margin:0 0 30px;
    color:var(--muted);
    font-size:16px;
}

/* ROUTE CARDS */
#eypd-refresh #eypd-contact-hub .ct-routes{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}

#eypd-refresh #eypd-contact-hub .ct-route{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:310px;
    padding:25px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    box-shadow:0 8px 24px rgba(20,54,87,.06);
    overflow:hidden;
    transition:.2s ease;
}

#eypd-refresh #eypd-contact-hub .ct-route:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(20,54,87,.10);
}

#eypd-refresh #eypd-contact-hub .ct-route:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,var(--blue),var(--cyan));
}

#eypd-refresh #eypd-contact-hub .ct-route-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    margin-bottom:16px;
    color:var(--blue);
    background:#eaf6fd;
}

#eypd-refresh #eypd-contact-hub .ct-route-icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

#eypd-refresh #eypd-contact-hub .ct-route h3{
    margin:0 0 8px;
    color:var(--ink);
    font-size:20px;
    line-height:1.2;
}

#eypd-refresh #eypd-contact-hub .ct-route p{
    margin:0 0 17px;
    color:var(--muted);
    font-size:14px;
}

#eypd-refresh #eypd-contact-hub .ct-route-link{
    margin-top:auto;
    color:var(--blue)!important;
    font-weight:850;
    text-decoration:none!important;
}

/* PREPARE / CHECKLIST */
#eypd-refresh #eypd-contact-hub .ct-prepare{
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
    gap:38px;
    align-items:start;
}

#eypd-refresh #eypd-contact-hub .ct-info-panel{
    padding:28px;
    border-radius:22px;
    color:#fff;
    background:linear-gradient(135deg,#061d36,#084d78);
    box-shadow:0 16px 36px rgba(6,29,54,.14);
}

#eypd-refresh #eypd-contact-hub .ct-info-panel strong{
    display:block;
    font-size:24px;
    line-height:1.15;
    margin-bottom:9px;
}

#eypd-refresh #eypd-contact-hub .ct-info-panel p{
    margin:0;
    color:#c7dce8;
}

#eypd-refresh #eypd-contact-hub .ct-checks{
    display:grid;
    gap:12px;
}

#eypd-refresh #eypd-contact-hub .ct-check{
    display:grid;
    grid-template-columns:38px 1fr;
    gap:13px;
    align-items:start;
    padding:16px;
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
}

#eypd-refresh #eypd-contact-hub .ct-check-num{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    color:#fff;
    background:var(--blue);
    font-weight:900;
}

#eypd-refresh #eypd-contact-hub .ct-check strong{
    display:block;
    color:var(--ink);
    margin-bottom:3px;
}

#eypd-refresh #eypd-contact-hub .ct-check span{
    display:block;
    color:var(--muted);
    font-size:14px;
}

/* SELF-SERVICE */
#eypd-refresh #eypd-contact-hub .ct-links{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px;
}

#eypd-refresh #eypd-contact-hub .ct-link-card{
    display:block;
    min-height:170px;
    padding:23px;
    border-radius:19px;
    background:#fff;
    border:1px solid var(--line);
    text-decoration:none!important;
    box-shadow:0 7px 22px rgba(20,54,87,.05);
    transition:.2s ease;
}

#eypd-refresh #eypd-contact-hub .ct-link-card:hover{
    transform:translateY(-3px);
    border-color:#b8d5eb;
    box-shadow:0 14px 30px rgba(20,54,87,.09);
}

#eypd-refresh #eypd-contact-hub .ct-link-label{
    display:inline-block;
    margin-bottom:13px;
    padding:5px 8px;
    border-radius:999px;
    color:var(--blue);
    background:#edf6ff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

#eypd-refresh #eypd-contact-hub .ct-link-card strong{
    display:block;
    color:var(--ink);
    font-size:18px;
    margin-bottom:7px;
}

#eypd-refresh #eypd-contact-hub .ct-link-card span{
    display:block;
    color:var(--muted);
    font-size:14px;
}

/* FAQ */
#eypd-refresh #eypd-contact-hub .ct-faq{
    display:grid;
    gap:11px;
    max-width:1050px;
}

#eypd-refresh #eypd-contact-hub .ct-faq details{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 4px 14px rgba(20,47,79,.04);
}

#eypd-refresh #eypd-contact-hub .ct-faq details[open]{
    border-color:#bad4e9;
    box-shadow:0 12px 28px rgba(19,62,106,.08);
}

#eypd-refresh #eypd-contact-hub .ct-faq summary{
    cursor:pointer;
    list-style:none;
    display:flex;
    align-items:center;
    gap:14px;
    padding:19px 21px;
    color:var(--ink);
    font-weight:850;
}

#eypd-refresh #eypd-contact-hub .ct-faq summary::-webkit-details-marker{
    display:none;
}

#eypd-refresh #eypd-contact-hub .ct-faq summary:after{
    content:"+";
    margin-left:auto;
    color:var(--blue);
    font-size:24px;
}

#eypd-refresh #eypd-contact-hub .ct-faq details[open] summary:after{
    content:"–";
}

#eypd-refresh #eypd-contact-hub .ct-faq-body{
    padding:0 21px 21px;
    color:var(--muted);
}

/* FINAL CONTACT PANEL */
#eypd-refresh #eypd-contact-hub .ct-final{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);
    gap:24px;
    padding:34px;
    border-radius:25px;
    border:1px solid #cce0ee;
    background:linear-gradient(112deg,#edf8fd,#fff);
    box-shadow:0 14px 34px rgba(20,54,87,.06);
}

#eypd-refresh #eypd-contact-hub .ct-final h3{
    margin:5px 0 8px;
    color:var(--ink);
    font-size:29px;
}

#eypd-refresh #eypd-contact-hub .ct-final p{
    max-width:720px;
    margin:0;
    color:var(--muted);
}

#eypd-refresh #eypd-contact-hub .ct-final-contact{
    display:grid;
    gap:9px;
}

#eypd-refresh #eypd-contact-hub .ct-final-item{
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:13px;
    background:#fff;
}

#eypd-refresh #eypd-contact-hub .ct-final-item strong{
    display:block;
    color:var(--ink);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.07em;
    margin-bottom:3px;
}

#eypd-refresh #eypd-contact-hub .ct-final-item a,#eypd-refresh #eypd-contact-hub .ct-final-item span{
    color:var(--blue)!important;
    text-decoration:none!important;
    font-weight:750;
    font-size:14px;
}

/* RESPONSIVE */
@media(max-width:1100px){
    #eypd-refresh #eypd-contact-hub .ct-routes,#eypd-refresh #eypd-contact-hub .ct-links{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    #eypd-refresh #eypd-contact-hub .ct-strip{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:900px){
    #eypd-refresh #eypd-contact-hub .ct-hero-grid,#eypd-refresh #eypd-contact-hub .ct-prepare,#eypd-refresh #eypd-contact-hub .ct-final{
        grid-template-columns:1fr;
    }

    #eypd-refresh #eypd-contact-hub .ct-quick{
        max-width:620px;
    }
}

@media(max-width:620px){
    #eypd-refresh #eypd-contact-hub{
        width:calc(100vw - 16px);
        margin-left:calc(50% - 50vw + 8px);
        margin-right:calc(50% - 50vw + 8px);
    }

    #eypd-refresh #eypd-contact-hub .ct-wrap{
        padding:0 12px;
    }

    #eypd-refresh #eypd-contact-hub .ct-hero{
        min-height:0;
        padding:52px 24px 46px;
        border-radius:20px;
    }

    #eypd-refresh #eypd-contact-hub .ct-hero h1{
        font-size:clamp(40px,13vw,58px);
    }

    #eypd-refresh #eypd-contact-hub .ct-strip,#eypd-refresh #eypd-contact-hub .ct-routes,#eypd-refresh #eypd-contact-hub .ct-links{
        grid-template-columns:1fr;
    }

    #eypd-refresh #eypd-contact-hub .ct-section{
        padding:46px 0;
    }

    #eypd-refresh #eypd-contact-hub .ct-section-soft{
        padding:30px 16px;
        border-radius:20px;
    }

    #eypd-refresh #eypd-contact-hub .ct-route{
        min-height:0;
    }

    #eypd-refresh #eypd-contact-hub .ct-final{
        padding:26px 20px;
        border-radius:20px;
    }

    #eypd-refresh #eypd-contact-hub .ct-btn{
        width:100%;
    }
}

/* ======================================================
   CONTACT PAGE v2
   Match Courses + Registration hero/banner system
   ====================================================== */

/* Same hero proportions used on the Courses/Registration pages */
#eypd-refresh #eypd-contact-hub .ct-hero{
    position:relative!important;
    overflow:hidden!important;
    min-height:460px!important;
    padding:56px 58px!important;
    border-radius:30px!important;
    background:linear-gradient(118deg,#04182e 0%,#063f79 55%,#0b78a7 100%)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:
        0 30px 60px rgba(6,29,54,.22),
        0 10px 22px rgba(6,29,54,.11),
        inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* Vertical red accent down the left edge */
#eypd-refresh #eypd-contact-hub .ct-hero-left-accent{
    position:absolute;
    left:0;
    top:0;
    width:7px;
    height:100%;
    z-index:7;
    pointer-events:none;
    background:linear-gradient(
        180deg,
        var(--red) 0%,
        #ef4a56 42%,
        rgba(239,74,86,.72) 68%,
        rgba(239,74,86,0) 100%
    );
}

/* Small red depth/accent on lower-right edge */
#eypd-refresh #eypd-contact-hub .ct-hero-right-accent{
    position:absolute;
    right:28px;
    bottom:0;
    width:110px;
    height:6px;
    z-index:7;
    pointer-events:none;
    border-radius:99px 99px 0 0;
    background:var(--red);
    box-shadow:0 -4px 14px rgba(209,43,54,.22);
}

/* Match the same two-column proportions */
#eypd-refresh #eypd-contact-hub .ct-hero-grid{
    grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr)!important;
    gap:44px!important;
    align-items:center!important;
}

/* Keep left-side message compact like Courses/Registration */
#eypd-refresh #eypd-contact-hub .ct-hero h1{
    margin:16px 0 18px!important;
}
#eypd-refresh #eypd-contact-hub .ct-hero p{
    max-width:760px!important;
}
#eypd-refresh #eypd-contact-hub .ct-hero-actions{
    margin-top:24px!important;
}

/* White right-side card matching the Course slider / Registration card */
#eypd-refresh #eypd-contact-hub .ct-quick{
    min-height:385px!important;
    width:100%!important;
    padding:22px!important;
    border-radius:23px!important;
    background:#fff!important;
    color:var(--ink)!important;
    border:1px solid rgba(255,255,255,.55)!important;
    box-shadow:0 24px 55px rgba(0,0,0,.24)!important;
    backdrop-filter:none!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
}

/* Header treatment inside white card */
#eypd-refresh #eypd-contact-hub .ct-quick-label{
    align-self:flex-start!important;
    display:inline-flex!important;
    align-items:center!important;
    padding:6px 10px!important;
    margin-bottom:12px!important;
    border-radius:999px!important;
    border:1px solid #d5e7f3!important;
    background:#eef6fb!important;
    color:#0b3e71!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-label:before{
    content:"";
    width:7px;
    height:7px;
    margin-right:6px;
    border-radius:50%;
    background:var(--red);
}
#eypd-refresh #eypd-contact-hub .ct-quick h3{
    color:var(--ink)!important;
    font-size:22px!important;
    margin:0 0 5px!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick>p{
    color:var(--muted)!important;
    margin:0 0 15px!important;
    font-size:13px!important;
}

/* Four quick-contact choices in a clean 2x2 layout */
#eypd-refresh #eypd-contact-hub .ct-quick-list{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-item{
    min-width:0!important;
    padding:12px!important;
    border-radius:13px!important;
    border:1px solid #d9e6ef!important;
    background:#f6fafd!important;
    gap:9px!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-icon{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
    border-radius:10px!important;
    background:#e8f4fb!important;
    color:var(--blue)!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-icon svg{
    width:18px!important;
    height:18px!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-item strong{
    color:var(--ink)!important;
    font-size:11.5px!important;
}
#eypd-refresh #eypd-contact-hub .ct-quick-item a,#eypd-refresh #eypd-contact-hub .ct-quick-item span{
    color:var(--blue)!important;
    font-size:10.5px!important;
    font-weight:750!important;
}

/* A little more brand red in the primary hero button */
#eypd-refresh #eypd-contact-hub .ct-btn-white{
    background:#fff!important;
    color:var(--blue)!important;
}
#eypd-refresh #eypd-contact-hub .ct-btn-ghost{
    border-color:rgba(255,255,255,.38)!important;
}

/* Tablet */
@media(max-width:1100px){
    #eypd-refresh #eypd-contact-hub .ct-hero{
        padding:48px 32px!important;
    }
    #eypd-refresh #eypd-contact-hub .ct-hero-grid{
        grid-template-columns:1fr!important;
    }
    #eypd-refresh #eypd-contact-hub .ct-quick{
        max-width:820px!important;
        min-height:0!important;
    }
}

/* Mobile */
@media(max-width:620px){
    #eypd-refresh #eypd-contact-hub .ct-hero{
        min-height:0!important;
        padding:42px 18px!important;
        border-radius:20px!important;
    }
    #eypd-refresh #eypd-contact-hub .ct-hero-left-accent{
        width:5px;
    }
    #eypd-refresh #eypd-contact-hub .ct-hero-right-accent{
        right:18px;
        width:76px;
        height:5px;
    }
    #eypd-refresh #eypd-contact-hub .ct-quick{
        min-height:0!important;
        padding:16px!important;
        border-radius:18px!important;
    }
    #eypd-refresh #eypd-contact-hub .ct-quick-list{
        grid-template-columns:1fr!important;
    }
}

/* ======================================================
   CONTACT PAGE v3
   Fix bottom CTA buttons that inherited hero button styles
   ====================================================== */
#eypd-refresh #eypd-contact-hub .ct-final .ct-btn-final-email{
    background:#0753a6!important;
    color:#fff!important;
    border:1px solid #0753a6!important;
    box-shadow:0 8px 20px rgba(7,83,166,.18)!important;
}
#eypd-refresh #eypd-contact-hub .ct-final .ct-btn-final-email:hover{
    background:#06498f!important;
    color:#fff!important;
}
#eypd-refresh #eypd-contact-hub .ct-final .ct-btn-final-call{
    background:#fff!important;
    color:#0753a6!important;
    border:1px solid #bfd8ec!important;
}
#eypd-refresh #eypd-contact-hub .ct-final .ct-btn-final-call:hover{
    border-color:#0753a6!important;
    color:#0753a6!important;
}

/* ======================================================
   CONTACT PAGE v4
   CREATIVE CONTACT NAVIGATOR + USEFUL WHITESPACE
   ====================================================== */

/* Tighten the vertical rhythm without crowding the page */
#eypd-refresh #eypd-contact-hub .ct-section{
    padding-top:52px!important;
    padding-bottom:52px!important;
}
#eypd-refresh #eypd-contact-hub .ct-navigator-section{
    padding-top:48px!important;
}

/* Visual contact cards */
#eypd-refresh #eypd-contact-hub .ct-contact-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    align-items:stretch;
    margin-top:28px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:22px;
    background:#fff;
    box-shadow:0 10px 26px rgba(20,54,87,.07);
    transition:transform .22s ease,box-shadow .22s ease;
}
#eypd-refresh #eypd-contact-hub .ct-contact-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(20,54,87,.11);
}
#eypd-refresh #eypd-contact-hub .ct-contact-art{
    position:relative;
    height:190px;
    overflow:hidden;
    padding:22px;
    color:#fff;
    display:flex;
    align-items:flex-end;
}
#eypd-refresh #eypd-contact-hub .ct-contact-art:before,#eypd-refresh #eypd-contact-hub .ct-contact-art:after{
    content:"";
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.15);
}
#eypd-refresh #eypd-contact-hub .ct-contact-art:before{
    width:210px;
    height:210px;
    right:-80px;
    top:-100px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-art:after{
    width:130px;
    height:130px;
    right:10px;
    top:-80px;
}
#eypd-refresh #eypd-contact-hub .ct-art-registration{background:linear-gradient(135deg,#0a2d58,#0753a6 60%,#20a7d6)}
#eypd-refresh #eypd-contact-hub .ct-art-schools{background:linear-gradient(135deg,#24385e,#4d5ea8 58%,#7a76c6)}
#eypd-refresh #eypd-contact-hub .ct-art-support{background:linear-gradient(135deg,#113b4e,#147184 58%,#1ba2a6)}
#eypd-refresh #eypd-contact-hub .ct-art-general{background:linear-gradient(135deg,#4d2f55,#875185 58%,#b66b9d)}

#eypd-refresh #eypd-contact-hub .ct-contact-art-icon{
    position:absolute;
    right:18px;
    top:17px;
    z-index:2;
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(255,255,255,.13);
    border:1px solid rgba(255,255,255,.18);
    font-size:15px;
    font-weight:900;
}
#eypd-refresh #eypd-contact-hub .ct-contact-art-copy{
    position:relative;
    z-index:2;
}
#eypd-refresh #eypd-contact-hub .ct-contact-art-copy span{
    display:block;
    margin-bottom:5px;
    color:#d4eff9;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
#eypd-refresh #eypd-contact-hub .ct-contact-art-copy strong{
    display:block;
    color:#fff;
    font-size:20px;
    line-height:1.14;
}
#eypd-refresh #eypd-contact-hub .ct-contact-body{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:20px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-body h3{
    margin:0 0 7px;
    color:var(--ink);
    font-size:19px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-body>p{
    min-height:86px;
    margin:0 0 13px;
    color:var(--muted);
    font-size:13px;
    line-height:1.5;
}
#eypd-refresh #eypd-contact-hub .ct-contact-pills{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-bottom:15px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-pills span{
    padding:5px 8px;
    border-radius:999px;
    background:#eef6fb;
    border:1px solid #d6e6f1;
    color:#45647b;
    font-size:9.5px;
    font-weight:800;
}
#eypd-refresh #eypd-contact-hub .ct-contact-open{
    margin-top:auto;
    min-height:42px;
    width:100%;
    border:0;
    border-radius:10px;
    background:var(--blue);
    color:#fff;
    font-family:inherit;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 7px 17px rgba(7,83,166,.17);
}
#eypd-refresh #eypd-contact-hub .ct-contact-open:hover{
    background:#06498f;
}
#eypd-refresh #eypd-contact-hub .ct-contact-template{
    display:none!important;
}

/* Message formula uses the previously empty left-side space meaningfully */
#eypd-refresh #eypd-contact-hub .ct-message-formula{
    margin-top:22px;
    padding:20px;
    border-radius:18px;
    color:#fff;
    background:linear-gradient(135deg,#061d36,#084d78);
    box-shadow:0 16px 36px rgba(6,29,54,.14);
}
#eypd-refresh #eypd-contact-hub .ct-formula-label{
    color:#8eddf8;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
    margin-bottom:12px;
}
#eypd-refresh #eypd-contact-hub .ct-formula-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
}
#eypd-refresh #eypd-contact-hub .ct-formula-row span{
    padding:7px 9px;
    border-radius:999px;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    font-size:10.5px;
    font-weight:850;
}
#eypd-refresh #eypd-contact-hub .ct-formula-row b{
    color:#7fdcf6;
    font-size:16px;
}
#eypd-refresh #eypd-contact-hub .ct-message-formula p{
    margin:13px 0 0;
    color:#c7dce8;
    font-size:12px;
}

/* What-happens-next flow */
#eypd-refresh #eypd-contact-hub .ct-next-steps{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:1fr 60px 1fr 60px 1fr;
    align-items:center;
    gap:10px;
    margin-top:26px;
    padding-top:24px;
    border-top:1px solid #d8e5ef;
}
#eypd-refresh #eypd-contact-hub .ct-next-step{
    display:grid;
    grid-template-columns:34px 1fr;
    gap:10px;
    align-items:center;
}
#eypd-refresh #eypd-contact-hub .ct-next-step>span{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#fff;
    background:var(--red);
    font-size:11px;
    font-weight:900;
}
#eypd-refresh #eypd-contact-hub .ct-next-step strong{
    display:block;
    color:var(--ink);
    font-size:12px;
    margin-bottom:2px;
}
#eypd-refresh #eypd-contact-hub .ct-next-step small{
    display:block;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.35;
}
#eypd-refresh #eypd-contact-hub .ct-next-steps>i{
    height:2px;
    background:linear-gradient(90deg,#d8e5ef,#94bdd8,#d8e5ef);
}

/* Contact route modal */
#eypd-refresh #eypd-contact-hub .ct-contact-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:22px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-modal.is-open{
    display:flex;
}
#eypd-refresh #eypd-contact-hub .ct-contact-backdrop{
    position:absolute;
    inset:0;
    background:rgba(3,17,31,.74);
    backdrop-filter:blur(4px);
}
#eypd-refresh #eypd-contact-hub .ct-contact-dialog{
    position:relative;
    z-index:2;
    width:min(860px,96vw);
    max-height:90vh;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    border-radius:24px;
    background:#fff;
    box-shadow:0 38px 100px rgba(0,0,0,.34);
}
#eypd-refresh #eypd-contact-hub .ct-contact-modal-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding:22px 25px 18px;
    background:linear-gradient(110deg,#061d36,#0b4b81);
    border-bottom:4px solid var(--red);
}
#eypd-refresh #eypd-contact-hub .ct-contact-modal-top>div>span{
    display:block;
    margin-bottom:3px;
    color:#91dcf4;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
#eypd-refresh #eypd-contact-hub .ct-contact-modal-top h2{
    margin:0;
    color:#fff;
    font-size:25px;
}
#eypd-refresh #eypd-contact-hub .ct-contact-close{
    width:42px;
    height:42px;
    flex:0 0 42px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-size:28px;
    line-height:1;
    cursor:pointer;
}
#eypd-refresh #eypd-contact-hub .ct-contact-modal-body{
    overflow-y:auto;
    padding:25px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-route-head{
    display:grid;
    grid-template-columns:64px 1fr;
    gap:15px;
    align-items:start;
}
#eypd-refresh #eypd-contact-hub .ct-modal-route-number{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    border-radius:15px;
    color:#fff;
    background:linear-gradient(145deg,#0753a6,#17a8d8);
    font-size:16px;
    font-weight:900;
}
#eypd-refresh #eypd-contact-hub .ct-modal-route-label{
    color:var(--red);
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
    margin-bottom:4px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-route-head h3{
    margin:0 0 5px;
    color:var(--ink);
    font-size:24px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-route-head p{
    margin:0;
    color:var(--muted);
    font-size:13px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-best{
    margin:20px 0;
    padding:15px 17px;
    border-left:4px solid var(--red);
    border-radius:8px;
    background:#f4f8fb;
}
#eypd-refresh #eypd-contact-hub .ct-modal-best strong{
    display:block;
    color:var(--ink);
    font-size:11px;
    margin-bottom:3px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-best a{
    color:var(--blue)!important;
    font-size:17px;
    font-weight:900;
    text-decoration:none!important;
}
#eypd-refresh #eypd-contact-hub .ct-modal-two{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-two>div{
    padding:18px;
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
}
#eypd-refresh #eypd-contact-hub .ct-modal-two h4{
    margin:0 0 10px;
    color:var(--ink);
    font-size:14px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-two ul{
    margin:0;
    padding-left:18px;
    color:var(--muted);
    font-size:12.5px;
}
#eypd-refresh #eypd-contact-hub .ct-modal-link{
    display:block;
    padding:10px 0;
    border-bottom:1px solid #e4edf3;
    color:var(--blue)!important;
    text-decoration:none!important;
    font-size:12.5px;
    font-weight:850;
}
#eypd-refresh #eypd-contact-hub .ct-modal-link:last-child{
    border-bottom:0;
}
#eypd-refresh #eypd-contact-hub .ct-modal-note{
    margin:0;
    color:var(--muted);
    font-size:12.5px;
    line-height:1.5;
}
#eypd-refresh.ct-modal-open{
    overflow:hidden!important;
}

/* Make self-service cards a little more graphical, but not louder */
#eypd-refresh #eypd-contact-hub .ct-link-card{
    position:relative;
    overflow:hidden;
}
#eypd-refresh #eypd-contact-hub .ct-link-card:after{
    content:"→";
    position:absolute;
    right:18px;
    bottom:14px;
    color:#9ab8cd;
    font-size:22px;
    font-weight:700;
}

/* Tablet */
@media(max-width:1150px){
    #eypd-refresh #eypd-contact-hub .ct-contact-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

/* Mobile */
@media(max-width:700px){
    #eypd-refresh #eypd-contact-hub .ct-contact-grid{
        grid-template-columns:1fr;
    }
    #eypd-refresh #eypd-contact-hub .ct-contact-body>p{
        min-height:0;
    }
    #eypd-refresh #eypd-contact-hub .ct-next-steps{
        grid-template-columns:1fr;
        gap:12px;
    }
    #eypd-refresh #eypd-contact-hub .ct-next-steps>i{
        width:2px;
        height:20px;
        margin-left:16px;
        background:linear-gradient(#d8e5ef,#94bdd8,#d8e5ef);
    }
    #eypd-refresh #eypd-contact-hub .ct-modal-two{
        grid-template-columns:1fr;
    }
}


/* ======================================================
   EYPD FINAL SHARED HEADER / MENU STABILITY FIX
   - forces 10-link desktop navigation to 5 x 2
   - removes conflicting 4-column rules that caused 3 rows
   - prevents Learner Login / phone / Contact EYPD overflow
   - keeps header content inside the page width
   ====================================================== */

#eypd-refresh .eypd-shared-menu,#eypd-refresh .eypd-shared-brandbar,#eypd-refresh .eypd-shared-social{
    box-sizing:border-box!important;
}

/* ---------- NAVIGATION: ALWAYS 5 x 2 ON NORMAL DESKTOP/LAPTOP ---------- */
#eypd-refresh .eypd-shared-menu{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:9px!important;
    margin-top:0!important;
    margin-bottom:14px!important;
    overflow:visible!important;
}

#eypd-refresh .eypd-shared-menu>a{
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
}

#eypd-refresh .eypd-shared-menu-copy{
    min-width:0!important;
}

#eypd-refresh .eypd-shared-menu-copy small,#eypd-refresh .eypd-shared-menu-copy strong{
    overflow-wrap:anywhere!important;
}

/* ---------- BRAND HEADER: FLEXIBLE COLUMNS, NO HORIZONTAL RUN-OFF ---------- */
#eypd-refresh .eypd-shared-brandbar{
    display:grid!important;
    grid-template-columns:1.1fr 1fr 2fr .9fr!important;
    align-items:center!important;
    column-gap:20px!important;
    row-gap:16px!important;
    padding:18px 20px!important;
    overflow:hidden!important;
}

#eypd-refresh .eypd-shared-brand-logo,#eypd-refresh .eypd-shared-brand-copy,#eypd-refresh .eypd-shared-brand-center,#eypd-refresh .eypd-shared-brand-contact{
    min-width:0!important;
    max-width:100%!important;
}

#eypd-refresh .eypd-shared-brand-logo{
    padding-right:0!important;
}

#eypd-refresh .eypd-shared-brand-logo img{
    width:225px!important;
    max-width:100%!important;
    height:auto!important;
}

#eypd-refresh .eypd-shared-brand-copy{
    padding:8px 0 8px 18px!important;
}

#eypd-refresh .eypd-shared-brand-copy strong{
    font-size:13px!important;
    line-height:1.25!important;
}

#eypd-refresh .eypd-shared-brand-copy span{
    max-width:none!important;
    font-size:10.5px!important;
    line-height:1.4!important;
}

#eypd-refresh .eypd-shared-brand-center{
    padding:10px 15px!important;
}

#eypd-refresh .eypd-shared-brand-center-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
}

#eypd-refresh .eypd-shared-brand-center-grid>div{
    min-width:0!important;
    padding:9px 8px!important;
}

#eypd-refresh .eypd-shared-brand-center-grid strong{
    font-size:13.5px!important;
}

#eypd-refresh .eypd-shared-brand-center-grid span{
    font-size:8.5px!important;
    overflow-wrap:anywhere!important;
}

/* The right utility column was the overflow source */
#eypd-refresh .eypd-shared-brand-contact{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:7px!important;
    overflow:hidden!important;
}

#eypd-refresh .eypd-shared-brand-contact a{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:8px 8px!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    font-size:10.5px!important;
    line-height:1.2!important;
}

/* Keep all top content tight under the WordPress theme header */
#eypd-refresh .eypd-shared-menu:first-of-type{
    margin-top:0!important;
}

/* Medium-width screens: keep the menu 5 x 2, but let brand header reflow safely */
@media(max-width:1050px){
    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
    }

    #eypd-refresh .eypd-shared-menu>a{
        min-height:66px!important;
        padding:11px 10px!important;
    }

    #eypd-refresh .eypd-shared-menu-copy small{
        font-size:7.8px!important;
    }

    #eypd-refresh .eypd-shared-menu-copy strong{
        font-size:11.5px!important;
    }

    #eypd-refresh .eypd-shared-brandbar{
        grid-template-columns:1fr 1fr!important;
        gap:14px 20px!important;
    }

    #eypd-refresh .eypd-shared-brand-logo{
        justify-content:flex-start!important;
    }

    #eypd-refresh .eypd-shared-brand-copy{
        border-left:1px solid #d9e6ef!important;
    }

    #eypd-refresh .eypd-shared-brand-center{
        grid-column:1 / -1!important;
        border-left:0!important;
        border-right:0!important;
        border-top:1px solid #d9e6ef!important;
        border-bottom:1px solid #d9e6ef!important;
    }

    #eypd-refresh .eypd-shared-brand-contact{
        grid-column:1 / -1!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        overflow:visible!important;
    }
}

/* Only truly narrow screens change the menu row count */
@media(max-width:760px){
    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    #eypd-refresh .eypd-shared-brandbar{
        grid-template-columns:1fr!important;
    }

    #eypd-refresh .eypd-shared-brand-logo{
        justify-content:center!important;
    }

    #eypd-refresh .eypd-shared-brand-copy{
        padding:12px 0 0!important;
        border-left:0!important;
        border-top:1px solid #d9e6ef!important;
        text-align:center!important;
    }

    #eypd-refresh .eypd-shared-brand-center{
        grid-column:auto!important;
    }

    #eypd-refresh .eypd-shared-brand-center-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    #eypd-refresh .eypd-shared-brand-contact{
        grid-column:auto!important;
        grid-template-columns:1fr!important;
    }
}

@media(max-width:480px){
    #eypd-refresh .eypd-shared-menu{
        grid-template-columns:1fr!important;
    }
}

#eypd-refresh.page #content.site-content{
    padding-top:0!important;
    margin-top:0!important;
}


/* v13 readability-only update — preserves every v12 section, script, and layout rule. */
#eypd-refresh #eypd-contact-hub .eypd-shared-menu > a {
    min-height:84px!important;
    padding:16px 17px!important;
}
#eypd-refresh #eypd-contact-hub .eypd-shared-menu-copy small {
    font-size:10.5px!important;
    line-height:1.2!important;
    letter-spacing:.045em!important;
}
#eypd-refresh #eypd-contact-hub .eypd-shared-menu-copy strong {
    font-size:15.5px!important;
    line-height:1.22!important;
}
#eypd-refresh #eypd-contact-hub .eypd-shared-menu > a > b {
    font-size:21px!important;
}
#eypd-refresh #eypd-contact-hub .eypd-shared-menu > a:focus-visible {
    outline:3px solid #0753a6!important;
    outline-offset:3px!important;
}
/* Five desktop columns remain in place; narrower laptops need compact type. */
@media (min-width:761px) and (max-width:1050px) {
    #eypd-refresh #eypd-contact-hub .eypd-shared-menu > a {
        min-height:80px!important;
        padding:12px 10px!important;
        gap:7px!important;
    }
    #eypd-refresh #eypd-contact-hub .eypd-shared-menu-copy small {
        font-size:9.5px!important;
    }
    #eypd-refresh #eypd-contact-hub .eypd-shared-menu-copy strong {
        font-size:13.5px!important;
    }
}
@media (max-width:760px) {
    #eypd-refresh #eypd-contact-hub .eypd-shared-menu > a {
        min-height:82px!important;
        padding:14px 15px!important;
    }
}
