

/* =========================================================
   STRICT SCOPING
========================================================= */

.aef-footer,
.aef-footer *{
    box-sizing:border-box;
}

.aef-footer{
    --navy:#021d32;
    --navy-deep:#011522;
    --navy-soft:#082b46;
    --gold:#d39a18;
    --gold-light:#e7b43b;
    --white:#ffffff;
    --muted:#c3cfda;
    --muted-2:#93a4b3;
    --line:rgba(255,255,255,.18);

    width:100%;
    position:relative;
    overflow:hidden;

    color:#fff;

    font-family:'Inter',sans-serif;

    background:
        linear-gradient(
            rgba(2,29,50,.96),
            rgba(1,21,34,.98)
        ),
        url('https://images.unsplash.com/photo-1513828583688-c52646db42da?auto=format&fit=crop&w=2000&q=70');

    background-size:cover;
    background-position:center bottom;
    background-repeat:no-repeat;
}

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

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(1,22,38,.97),
            rgba(2,35,58,.91),
            rgba(1,22,38,.97)
        );

    pointer-events:none;
}

.aef-footer a{
    text-decoration:none;
}

.aef-container{
    width:min(1420px,calc(100% - 70px));

    margin-left:auto;
    margin-right:auto;

    position:relative;
    z-index:2;
}


/* =========================================================
   MAIN
========================================================= */

.aef-main{
    padding:48px 0 28px;
}

.aef-grid{
    display:grid;

    grid-template-columns:
        1.35fr
        .8fr
        1fr
        .9fr
        1.05fr;

    gap:0;
}

.aef-col{
    min-width:0;

    padding:0 35px;

    border-left:1px solid var(--line);
}

.aef-col:first-child{
    padding-left:0;
    border-left:0;
}


/* =========================================================
   BRAND COLUMN - NO LOGO
========================================================= */

.aef-brand{
    padding-right:45px;
}

.aef-company-name{
    margin:0;

    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:39px;
    line-height:1;
    font-weight:700;

    letter-spacing:1px;
}

.aef-company-subtitle{
    margin-top:8px;

    color:var(--gold-light);

    font-size:12px;
    font-weight:600;

    letter-spacing:4px;
}

.aef-company-tagline{
    display:inline-block;

    position:relative;

    margin:10px 0 24px;
    padding-bottom:12px;

    color:#fff;

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

    letter-spacing:3px;
}

.aef-company-tagline:after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:44px;
    height:3px;

    background:var(--gold);
}

.aef-brand-text{
    margin:0;

    color:#d7e0e7;

    font-size:14px;
    line-height:1.68;
}


/* =========================================================
   VALUES
========================================================= */

.aef-values{
    display:grid;

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

    gap:10px;

    margin-top:24px;
}

.aef-value{
    padding:0 6px;

    text-align:center;
}

.aef-value-icon{
    width:44px;
    height:44px;

    margin:0 auto 7px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:var(--gold-light);

    font-size:26px;
}

.aef-value span{
    display:block;

    color:#fff;

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

    text-transform:uppercase;
    letter-spacing:.5px;
}


/* =========================================================
   TITLES
========================================================= */

.aef-heading{
    position:relative;

    margin:0 0 25px;
    padding-bottom:10px;

    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:21px;
    line-height:1.2;
    font-weight:700;
}

.aef-heading:after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:34px;
    height:3px;

    background:var(--gold);
}


/* =========================================================
   LINKS
========================================================= */

.aef-links{
    list-style:none;

    margin:0;
    padding:0;
}

.aef-links li{
    margin:0 0 16px;
}

.aef-links li:last-child{
    margin-bottom:0;
}

.aef-links a{
    display:flex;
    align-items:center;

    gap:10px;

    color:#d6e0e7;

    font-size:13.5px;
    line-height:1.35;

    transition:.25s ease;
}

.aef-links a:before{
    content:"›";

    color:#fff;

    flex:0 0 auto;

    font-size:23px;
    line-height:14px;

    transition:.25s ease;
}

.aef-links a:hover{
    color:var(--gold-light);

    transform:translateX(3px);
}

.aef-links a:hover:before{
    color:var(--gold);
}


/* =========================================================
   CONTACT
========================================================= */

.aef-contact-list{
    display:flex;
    flex-direction:column;

    gap:15px;
}

.aef-contact-item{
    display:grid;

    grid-template-columns:24px 1fr;

    gap:11px;

    align-items:start;
}

.aef-contact-icon{
    color:var(--gold-light);

    font-size:17px;

    text-align:center;
}

.aef-contact-copy{
    color:#d9e2e8;

    font-size:13.5px;
    line-height:1.5;
}

.aef-contact-copy small{
    display:block;

    margin-top:2px;

    color:#aab8c4;

    font-size:11px;
}

.aef-contact-copy a{
    color:#d9e2e8;

    transition:.2s ease;
}

.aef-contact-copy a:hover{
    color:var(--gold-light);
}


/* =========================================================
   SOCIAL
========================================================= */

.aef-social-block{
    margin-top:22px;
    padding-top:17px;

    border-top:1px solid var(--line);
}

.aef-social-title{
    display:inline-block;

    position:relative;

    margin-bottom:18px;
    padding-bottom:10px;

    color:#fff;

    font-family:'Playfair Display',serif;

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

.aef-social-title:after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:34px;
    height:3px;

    background:var(--gold);
}

.aef-socials{
    display:flex;

    gap:14px;
}

.aef-social{
    width:45px;
    height:45px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:1.5px solid var(--gold);

    color:#fff !important;

    font-size:18px;

    transition:.25s ease;
}

.aef-social:hover{
    background:var(--gold);

    border-color:var(--gold);

    color:var(--navy-deep) !important;

    transform:translateY(-3px);
}


/* =========================================================
   STANDARDS
========================================================= */

.aef-standards{
    position:relative;
    z-index:2;

    padding:14px 0 18px;

    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.aef-standards-title{
    margin:0 0 11px;

    color:#dce4ea;

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

.aef-standard-grid{
    display:grid;

    grid-template-columns:
        1.05fr
        1.12fr
        1.08fr
        1.15fr
        1fr
        1.08fr;

    align-items:center;
}

.aef-standard{
    min-height:52px;

    padding:4px 22px;

    display:flex;
    align-items:center;

    gap:14px;

    border-right:1px solid var(--line);
}

.aef-standard:first-child{
    padding-left:0;
}

.aef-standard:last-child{
    border-right:0;
}

.aef-standard-logo{
    flex:0 0 auto;

    color:#e5ebef;

    font-family:'Arial Black',Arial,sans-serif;

    font-size:26px;
    line-height:1;

    font-weight:900;

    letter-spacing:-2px;
}

.aef-standard:nth-child(3) .aef-standard-logo,
.aef-standard:nth-child(6) .aef-standard-logo{
    font-family:'Inter',sans-serif;

    letter-spacing:0;
}

.aef-standard:nth-child(4) .aef-standard-logo,
.aef-standard:nth-child(5) .aef-standard-logo{
    font-family:'Times New Roman',serif;

    font-weight:500;
}

.aef-standard-name{
    color:#cbd6de;

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


/* =========================================================
   BOTTOM BAR
========================================================= */

.aef-bottom{
    min-height:82px;

    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:1fr auto 1fr;

    align-items:center;

    gap:25px;
}

.aef-copy{
    color:#d0dae2;

    font-size:11.5px;
}

.aef-legal{
    display:flex;
    align-items:center;
    justify-content:center;
}

.aef-legal a{
    position:relative;

    padding:0 18px;

    color:#d4dce3;

    font-size:11.5px;

    transition:.2s ease;
}

.aef-legal a:hover{
    color:var(--gold-light);
}

.aef-legal a:not(:last-child):after{
    content:"";

    position:absolute;

    right:0;
    top:1px;

    width:1px;
    height:15px;

    background:rgba(255,255,255,.28);
}

.aef-tagline{
    justify-self:end;

    color:var(--gold);

    font-family:'Caveat',cursive;

    font-size:27px;
    line-height:1;

    white-space:nowrap;

    transform:rotate(-3deg);
}

.aef-tagline:after{
    content:"";

    display:block;

    width:110px;
    height:2px;

    margin:7px 0 0 auto;

    background:var(--gold);

    transform:rotate(-3deg);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1200px){

    .aef-container{
        width:calc(100% - 40px);
    }

    .aef-grid{
        grid-template-columns:1.3fr 1fr 1fr;

        row-gap:45px;
    }

    .aef-col{
        border-left:0;

        padding:0 25px;
    }

    .aef-col:first-child{
        padding-left:0;
    }

    .aef-col:nth-child(4){
        padding-left:0;
    }

    .aef-standard-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .aef-standard{
        padding:15px 20px;

        border-bottom:1px solid var(--line);
    }

    .aef-standard:nth-child(3),
    .aef-standard:nth-child(6){
        border-right:0;
    }

    .aef-standard:nth-child(4),
    .aef-standard:nth-child(5),
    .aef-standard:nth-child(6){
        border-bottom:0;
    }

}


/* =========================================================
   MOBILE TABLET
========================================================= */

@media(max-width:850px){

    .aef-grid{
        grid-template-columns:1fr 1fr;

        gap:40px 15px;
    }

    .aef-col{
        padding:0;

        border-left:0;
    }

    .aef-brand{
        grid-column:1 / 3;

        padding-right:0;

        max-width:520px;
    }

    .aef-standard-grid{
        grid-template-columns:1fr 1fr;
    }

    .aef-standard,
    .aef-standard:first-child{
        padding:16px 13px;

        border-right:1px solid var(--line);
        border-bottom:1px solid var(--line);
    }

    .aef-standard:nth-child(even){
        border-right:0;
    }

    .aef-standard:nth-child(5),
    .aef-standard:nth-child(6){
        border-bottom:0;
    }

    .aef-bottom{
        padding:25px 0;

        grid-template-columns:1fr;

        text-align:center;
    }

    .aef-tagline{
        justify-self:center;
    }

    .aef-tagline:after{
        margin-left:auto;
        margin-right:auto;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:520px){

    .aef-container{
        width:calc(100% - 28px);
    }

    .aef-main{
        padding:40px 0 25px;
    }

    .aef-grid{
        grid-template-columns:1fr;

        gap:38px;
    }

    .aef-brand{
        grid-column:auto;
    }

    .aef-company-name{
        font-size:34px;
    }

    .aef-company-subtitle{
        letter-spacing:3px;
        font-size:11px;
    }

    .aef-brand-text{
        font-size:13px;
    }

    .aef-values{
        gap:3px;
    }

    .aef-value{
        padding:0 3px;
    }

    .aef-value-icon{
        font-size:22px;
    }

    .aef-value span{
        font-size:9px;
    }

    .aef-heading{
        font-size:20px;
    }

    .aef-links a{
        font-size:13px;
    }

    .aef-standard-grid{
        grid-template-columns:1fr;
    }

    .aef-standard,
    .aef-standard:first-child{
        padding:16px 0;

        border-right:0;
        border-bottom:1px solid var(--line);
    }

    .aef-standard:nth-child(5){
        border-bottom:1px solid var(--line);
    }

    .aef-standard:last-child{
        border-bottom:0;
    }

    .aef-legal{
        flex-wrap:wrap;
    }

    .aef-legal a{
        padding:5px 10px;
    }

    .aef-tagline{
        font-size:24px;
    }

}


/* Scoped widget layout, responsive to active column count. */
.elementor-widget-ae_footer .aef-footer { isolation:isolate; width:100%; }
.elementor-widget-ae_footer .aef-grid {
  display:grid;
  grid-template-columns:repeat(var(--aef-columns,5), minmax(0,1fr));
  gap:0;
}
.elementor-widget-ae_footer .aef-col { min-width:0; overflow-wrap:anywhere; }
.elementor-widget-ae_footer .aef-col:first-child { border-left:0; padding-left:0; }
.elementor-widget-ae_footer .aef-col:last-child { padding-right:0; }
.elementor-widget-ae_footer .aef-links a { min-width:0; overflow-wrap:anywhere; }
.elementor-widget-ae_footer .aef-links a:before { content:'›'; }
.elementor-widget-ae_footer .aef-bottom { grid-template-columns:minmax(0,1fr) auto; }
.elementor-widget-ae_footer .aef-contact-icon i,
.elementor-widget-ae_footer .aef-social i,
.elementor-widget-ae_footer .aef-value-icon i { display:inline-block; line-height:1; }
.elementor-widget-ae_footer .aef-social svg,
.elementor-widget-ae_footer .aef-value-icon svg,
.elementor-widget-ae_footer .aef-contact-icon svg { width:1em; height:1em; fill:currentColor; vertical-align:middle; }
.elementor-widget-ae_footer .aef-value-icon,
.elementor-widget-ae_footer .aef-contact-icon,
.elementor-widget-ae_footer .aef-social { flex-shrink:0; }
.elementor-widget-ae_footer .aef-legal { flex-wrap:wrap; }
@media(max-width:1200px) {
  .elementor-widget-ae_footer .aef-grid { grid-template-columns:repeat(min(3,var(--aef-columns,5)),minmax(0,1fr)); gap:30px 0; }
  .elementor-widget-ae_footer .aef-col { padding:0 22px; border-left:0; }
  .elementor-widget-ae_footer .aef-col:nth-child(3n+1) { padding-left:0; }
}
@media(max-width:850px) {
  .elementor-widget-ae_footer .aef-grid { grid-template-columns:repeat(min(2,var(--aef-columns,5)),minmax(0,1fr)); gap:32px 18px; }
  .elementor-widget-ae_footer .aef-col { padding:0; border-left:0; }
  .elementor-widget-ae_footer .aef-brand { grid-column:1 / -1; max-width:100%; }
  .elementor-widget-ae_footer .aef-bottom { grid-template-columns:1fr; justify-items:center; text-align:center; gap:14px; }
}
@media(max-width:520px) {
  .elementor-widget-ae_footer .aef-grid { grid-template-columns:minmax(0,1fr); gap:36px; }
  .elementor-widget-ae_footer .aef-brand { grid-column:auto; }
  .elementor-widget-ae_footer .aef-container { width:calc(100% - 28px); }
  .elementor-widget-ae_footer .aef-legal a { padding:5px 9px; }
  .elementor-widget-ae_footer .aef-values { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
