html,body{overflow-x:hidden}
.icest-slider{position:relative;width:100vw;max-width:100vw;height:clamp(390px,42vw,620px);margin:0 0 2rem calc(50% - 50vw);overflow:hidden;background:#073b5c;border:0!important;border-radius:0!important;box-shadow:none!important}
.icest-slides,.icest-slide{position:absolute;inset:0;width:100%;height:100%}
.icest-slide{z-index:1;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.2s ease}
.icest-slide.is-active{z-index:5;opacity:1;visibility:visible;pointer-events:auto}
.icest-slide-image{position:absolute;inset:0;display:block}.icest-slide-image img{display:block;width:100%;height:100%;margin:0;object-fit:cover;object-position:center}
.icest-slide:after{position:absolute;inset:0;z-index:2;content:"";pointer-events:none;background:linear-gradient(90deg,rgba(2,35,57,.94) 0%,rgba(2,35,57,.78) 40%,rgba(2,35,57,.24) 72%,rgba(2,35,57,.06) 100%)}
.icest-slide-content{position:absolute;top:50%;left:max(7vw,48px);z-index:4;width:min(620px,47vw);color:#fff;transform:translateY(-50%)}
.icest-kicker{display:block;margin-bottom:.65rem;color:#9de8ea;font-size:clamp(.78rem,1.1vw,.95rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.icest-slide-content h2{margin:0 0 1rem;color:#fff;font-size:clamp(2rem,4vw,4rem);font-weight:750;line-height:1.08}.icest-slide-content p{max-width:580px;margin:0 0 1.5rem;color:#fff;font-size:clamp(.98rem,1.45vw,1.22rem);line-height:1.6}
.icest-button{display:inline-block;padding:.78rem 1.35rem;color:#073b5c!important;font-weight:700;text-decoration:none!important;background:#fff;border:2px solid #fff;border-radius:4px;transition:background .2s ease,color .2s ease,transform .2s ease}.icest-button:hover,.icest-button:focus{color:#fff!important;background:transparent;transform:translateY(-2px)}
.icest-arrow{position:absolute;top:50%;z-index:8;display:flex;width:48px;height:48px;align-items:center;justify-content:center;color:#fff!important;font-size:1.65rem;text-decoration:none!important;background:rgba(4,45,70,.62);border:0;border-radius:50%;transform:translateY(-50%);transition:background .2s ease,transform .2s ease}.icest-arrow:hover,.icest-arrow:focus{background:#008c95;transform:translateY(-50%) scale(1.08)}.icest-prev{left:18px}.icest-next{right:18px}
.icest-slider-controls{position:absolute;right:0;bottom:18px;left:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:9px}.icest-dot{display:block;width:11px;height:11px;background:rgba(255,255,255,.56);border:2px solid #fff;border-radius:50%;transition:transform .2s ease,background .2s ease}.icest-dot:hover,.icest-dot:focus,.icest-dot.is-active{background:#18b7bf;transform:scale(1.18)}
.icest-auto{display:flex;width:28px;height:28px;align-items:center;justify-content:center;margin-left:5px;padding:0;color:#073b5c!important;font-size:.62rem;font-weight:800;line-height:1;text-decoration:none!important;background:#fff;border-radius:50%}
/* =========================================================
   ICEST 2027 FOOTER
   Scoped to footer only so other pages/layouts are unaffected
   ========================================================= */

/* Keep the OJS footer area clean and white */
.site-footer,
.pkp_structure_footer,
.pkp_structure_footer_wrapper {
    color: #263746 !important;
    background: #ffffff !important;
    border-top: 0 !important;
}

/*
   Let the custom footer control its own width.
   This applies only inside the OJS footer and does not alter
   containers used by the main page content.
*/
.pkp_structure_footer .container,
.pkp_structure_footer_wrapper .container {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    background: #ffffff !important;
    border-top: 0 !important;
}

/* Reduce only the space immediately above the footer */
.pkp_structure_footer_wrapper,
.pkp_structure_footer {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Main custom footer */
.icest-simple-footer {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    color: #263746;
    background: transparent !important;
}

/* Three centered desktop columns */
.icest-footer-columns {
    display: grid;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto !important;
    padding: 20px 20px 12px !important;
    grid-template-columns: 1.35fr 1.15fr .8fr;
    gap: 50px;
    align-items: start;
}

/* ICEST title */
.icest-footer-title {
    margin: 0 0 7px !important;
    color: #073b5c;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.2 !important;
    letter-spacing: 1.5px;
}

/* Tighten all footer paragraph spacing */
.icest-simple-footer p {
    margin: 0 0 5px !important;
    padding: 0 !important;
    line-height: 1.38 !important;
}

/* About column */
.icest-footer-about p {
    max-width: 430px;
    color: #526473;
    line-height: 1.38 !important;
}

/* Column headings */
.icest-footer-heading {
    margin: 0 0 8px !important;
    color: #101820;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25 !important;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

/* Contact and quick-link spacing */
.icest-footer-contact p,
.icest-footer-links p {
    margin: 0 0 5px !important;
    line-height: 1.38 !important;
}

.icest-footer-links a {
    line-height: 1.38 !important;
}

/* Links */
.icest-simple-footer a {
    color: #075985;
    text-decoration: none;
}

.icest-simple-footer a:hover,
.icest-simple-footer a:focus {
    color: #008c95;
    text-decoration: underline;
}

/* Social media row */
.icest-footer-social {
    display: flex;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto !important;
    padding: 5px 20px 14px !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.icest-social-icon {
    position: relative;
    display: inline-flex !important;
    width: 44px;
    height: 44px;
    padding: 0 !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50%;
    box-shadow: 0 4px 11px rgba(0,0,0,.13);
    transition: transform .2s ease, box-shadow .2s ease;
}

.icest-social-icon:hover,
.icest-social-icon:focus {
    color: #ffffff !important;
    text-decoration: none !important;
    transform: translateY(-3px);
    box-shadow: 0 7px 16px rgba(0,0,0,.20);
}

.icest-social-icon span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0,0,0,0);
    border: 0;
}

/* Social icon colours */
.icest-facebook {
    background: #1877f2;
}

.icest-facebook:before {
    content: "f";
    color: #ffffff;
    font-family: Arial, sans-serif;
    font-size: 27px;
    font-weight: 700;
    line-height: 1;
    transform: translateY(3px);
}

.icest-youtube {
    background: #ff0000;
}

.icest-youtube:before {
    width: 0;
    height: 0;
    content: "";
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #ffffff;
    transform: translateX(2px);
}

.icest-linkedin {
    background: #0a66c2;
}

.icest-linkedin:before {
    content: "in";
    color: #ffffff;
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 1;
}

.icest-instagram {
    background: linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);
}

.icest-instagram:before {
    width: 20px;
    height: 20px;
    content: "";
    border: 2px solid #ffffff;
    border-radius: 6px;
    box-sizing: border-box;
}

.icest-instagram:after {
    position: absolute;
    width: 7px;
    height: 7px;
    content: "";
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-sizing: border-box;
}

.icest-x {
    background: #000000;
}

.icest-x:before {
    content: "X";
    color: #ffffff;
    font-family: Arial, sans-serif;
    font-size: 19px;
    font-weight: 700;
    line-height: 1;
}

/* Copyright */
.icest-footer-copyright {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto !important;
    padding: 10px 20px 11px !important;
    text-align: center;
    background: transparent !important;
    border-top: 1px solid #e5eaee;
}

.icest-footer-copyright p {
    margin: 0 !important;
    color: #526473;
    font-size: 13px;
    line-height: 1.35 !important;
}

/* Hide default PKP footer branding */
.pkp_brand_footer,
.footer-brand-image,
.site-footer a[href*="aboutThisPublishingSystem"],
.pkp_structure_footer a[href*="aboutThisPublishingSystem"],
.pkp_structure_footer_wrapper a[href*="aboutThisPublishingSystem"] {
    display: none !important;
}


/* =========================================================
   RESPONSIVE SLIDER
   Preserved from the original CSS
   ========================================================= */

@media(max-width:900px){
    .icest-slider{height:clamp(430px,65vw,560px)}
    .icest-slide:after{background:rgba(2,35,57,.67)}
    .icest-slide-content{left:10%;width:72%}
}

@media(max-width:600px){
    .icest-slider{height:500px;margin-bottom:1.25rem}
    .icest-slide:after{background:linear-gradient(180deg,rgba(2,35,57,.38) 0%,rgba(2,35,57,.76) 48%,rgba(2,35,57,.95) 100%)}
    .icest-slide-content{top:auto;right:50px;bottom:68px;left:50px;width:auto;text-align:center;transform:none}
    .icest-slide-content h2{margin-bottom:.75rem;font-size:clamp(1.8rem,9vw,2.6rem)}
    .icest-slide-content p{margin-bottom:1rem;font-size:.96rem;line-height:1.45}
    .icest-button{padding:.66rem 1rem;font-size:.9rem}
    .icest-arrow{width:38px;height:38px;font-size:1.25rem}
    .icest-prev{left:7px}
    .icest-next{right:7px}
    .icest-slider-controls{bottom:16px}
}


/* =========================================================
   RESPONSIVE FOOTER
   Footer-only rules
   ========================================================= */

@media(max-width:900px){
    .icest-footer-columns {
        width: 90%;
        grid-template-columns: 1fr 1fr;
        gap: 24px 38px;
        padding: 18px 15px 11px !important;
    }

    .icest-footer-links {
        grid-column: 1 / -1;
    }
}

@media(max-width:600px){
    .icest-footer-columns {
        width: 88%;
        display: block;
        padding: 16px 0 8px !important;
    }

    .icest-footer-about,
    .icest-footer-contact,
    .icest-footer-links {
        margin-bottom: 16px;
    }

    .icest-footer-title {
        margin-bottom: 6px !important;
        font-size: 23px;
    }

    .icest-footer-heading {
        margin-bottom: 6px !important;
    }

    .icest-simple-footer p {
        margin-bottom: 4px !important;
        line-height: 1.34 !important;
    }

    .icest-footer-social {
        width: 88%;
        justify-content: flex-start;
        padding: 2px 0 12px !important;
    }

    .icest-social-icon {
        width: 41px;
        height: 41px;
    }

    .icest-facebook:before {
        font-size: 25px;
    }

    .icest-footer-copyright {
        width: 88%;
        padding: 9px 0 8px !important;
        text-align: left;
    }
}

@media(prefers-reduced-motion:reduce){.icest-slide{transition:none}}


/* Hide the social-media text inside the circular icons */
.icest-social-icon {
    font-size: 0 !important;
    line-height: 0 !important;
}

.icest-social-icon > span {
    display: none !important;
    visibility: hidden !important;
}

/* ICEST 2027 combined header logo min(1200px, 94vw) */

.pkp_site_name .is_img img,
.main-header .navbar-logo img,
.main-header .navbar-brand img,
.navbar-brand img {
    display: block;
    width: auto;
    max-width: 94vw;
    max-height: 130px;
    margin: 0;
    object-fit: contain;
}

.pkp_site_name,
.main-header .navbar-logo {
    padding-top: 5px;
    padding-bottom: 5px;
}

/* Tablet */

@media (max-width: 991px) {
    .pkp_site_name .is_img img,
    .main-header .navbar-logo img,
    .main-header .navbar-brand img,
    .navbar-brand img {
        max-width: 92vw;
        max-height: 105px;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .pkp_site_name .is_img img,
    .main-header .navbar-logo img,
    .main-header .navbar-brand img,
    .navbar-brand img {
        max-width: 94vw;
        max-height: 82px;
    }

    .pkp_site_name,
    .main-header .navbar-logo {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

/* =========================================================
   ICEST 2027 HOMEPAGE SPACING
   ========================================================= */

/*
   If you later want a little more/less space below the header,
   change only this value.
*/
:root {
    --icest-home-top-adjust: -32px;
}

/* Remove excess OJS homepage spacing only where the ICEST ticker exists */
.additional_content:has(.icest-ticker) {
    margin-top: var(--icest-home-top-adjust) !important;
    padding-top: 0 !important;
}

/* Remove empty editor paragraphs that can create invisible vertical gaps */
.additional_content:has(.icest-ticker) > p:empty,
.additional_content:has(.icest-ticker) > p:first-child:empty {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Reduce theme spacing immediately above homepage additional content */
body.pkp_page_index.pkp_op_index .pkp_structure_main,
body.pkp_page_index.pkp_op_index .page_index_journal {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* =========================================================
   ICEST 2027 CONTINUOUS TRANSPARENT DATE/THEME TICKER
   ========================================================= */

.icest-ticker {
    position: relative;
    width: 100%;
    margin: 0 0 8px 0 !important;
    padding: 2px 0 !important;
    overflow: hidden;

    color: #073b5c;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    white-space: nowrap;
}

.icest-ticker-track {
    display: flex;
    width: max-content;
    min-width: max-content;
    align-items: center;
    will-change: transform;
    animation: icestTicker 22s linear infinite;
}

.icest-ticker-track span {
    display: block;
    flex-shrink: 0;
    padding-right: 80px;

    color: #073b5c;
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .02em;
}

/* Two identical spans in the HTML create a seamless repeating ticker */
@keyframes icestTicker {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

/* Keep the ticker compact on phones */
@media (max-width: 600px) {
    :root {
        --icest-home-top-adjust: -20px;
    }

    .icest-ticker {
        margin-bottom: 6px !important;
        padding: 1px 0 !important;
    }

    .icest-ticker-track span {
        padding-right: 55px;
        font-size: .94rem;
    }
}

/* =========================================================
   ICEST 2027 HOMEPAGE TOP SPACING
   ========================================================= */

/*
   Health Sciences theme leaves a generous gap between the
   header/navigation and the journal homepage content.
   Pull only the journal homepage upward.
*/
body.pkp_page_index .page_index_journal,
.page_index_journal {
    margin-top: -58px !important;
    padding-top: 0 !important;
}

/* Keep Additional Content itself tight */
.page_index_journal .additional_content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove blank paragraphs that CKEditor/OJS may insert */
.page_index_journal .additional_content > p:empty,
.page_index_journal .additional_content > p:first-child:empty {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   ICEST 2027 SEAMLESS CONTINUOUS TRANSPARENT TICKER
   ========================================================= */

.icest-ticker {
    position: relative;
    width: 100%;
    margin: -85px 0 7px 0 !important;
    padding: 2px 0 !important;
    overflow: hidden !important;
    white-space: nowrap !important;

    color: #073b5c !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    /*
       Wider edge fade so the beginning of each repeated line
       does not appear suddenly at the right edge.
    */
    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 14%,
        #000 86%,
        transparent 100%
    );
    mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 14%,
        #000 86%,
        transparent 100%
    );
}

.icest-ticker-track {
    display: flex !important;
    width: max-content !important;
    min-width: max-content !important;
    align-items: center;
    flex-wrap: nowrap !important;
    will-change: transform;

    /*
       Three identical groups are used in the HTML below.
       Moving one-third of the complete track produces a
       continuous loop with no visible restart.
    */
    animation: icestTickerLoop 24s linear infinite !important;
    -webkit-animation: icestTickerLoop 24s linear infinite !important;
}

.icest-ticker-group {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center;
    min-width: max-content;
}

.icest-ticker-group span {
    display: inline-block !important;
    flex: 0 0 auto !important;
    color: #073b5c !important;
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .02em;
}

/*
   Visible separator between copies avoids a large empty gap
   before "3–4 October 2027" returns.
*/
.icest-ticker-group::after {
    content: "  •  ";
    display: inline-block;
    flex: 0 0 auto;
    padding: 0 2.2rem;
    color: #6c7f8c;
    font-weight: 700;
}

@keyframes icestTickerLoop {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-33.333333%);
    }
}

@-webkit-keyframes icestTickerLoop {
    from {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    to {
        -webkit-transform: translateX(-33.333333%);
        transform: translateX(-33.333333%);
    }
}

/* Keep it moving even when the pointer is over it */
.icest-ticker:hover .icest-ticker-track {
    animation-play-state: running !important;
    -webkit-animation-play-state: running !important;
}


/* =========================================================
   RESPONSIVE ADJUSTMENTS
   ========================================================= */

@media (max-width: 991px) {
    body.pkp_page_index .page_index_journal,
    .page_index_journal {
        margin-top: -38px !important;
    }
}

@media (max-width: 600px) {
    body.pkp_page_index .page_index_journal,
    .page_index_journal {
        margin-top: -18px !important;
    }

    .icest-ticker {
        margin-bottom: 5px !important;
        padding: 1px 0 !important;

        -webkit-mask-image: linear-gradient(
            to right,
            transparent 0%,
            #000 10%,
            #000 90%,
            transparent 100%
        );
        mask-image: linear-gradient(
            to right,
            transparent 0%,
            #000 10%,
            #000 90%,
            transparent 100%
        );
    }

    .icest-ticker-group span {
        font-size: .94rem;
    }

    .icest-ticker-group::after {
        padding: 0 1.25rem;
    }
}


/* =========================================================
   FINAL HEADER-TO-TICKER GAP OVERRIDE
   Directly pulls the ticker (and therefore the carousel that
   follows it) upward, independent of OJS wrapper selectors.
   ========================================================= */

.icest-ticker {
    margin-top: -85px !important;
}

@media (max-width: 991px) {
    .icest-ticker {
        margin-top: -55px !important;
    }
}

@media (max-width: 600px) {
    .icest-ticker {
        margin-top: -58px !important;
    }
}


/* =========================================================
   MOBILE HEADER-TO-TICKER GAP OVERRIDE
   ========================================================= */
@media (max-width: 600px) {
    .icest-ticker {
        margin-top: -58px !important;
    }
}

/* =========================================================
   FINAL HEADER-TO-TICKER GAP OVERRIDE — TIGHTER
   ========================================================= */

/* Desktop */
.icest-ticker {
    margin-top: -105px !important;
}

/* Tablet */
@media (max-width: 991px) {
    .icest-ticker {
        margin-top: -80px !important;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .icest-ticker {
        margin-top: -75px !important;
    }
}

/* =========================================================
   ICEST 2027 IMPORTANT DATES - SIMPLE OJS LADDER
   Table-based structure for better OJS compatibility
   ========================================================= */

.icest-date-table {
    width: 100%;
    max-width: 950px;
    margin: 20px auto 50px;
    border-collapse: collapse;
    table-layout: fixed;
}

.icest-date-table,
.icest-date-table tbody,
.icest-date-table tr,
.icest-date-table td {
    border: 0 !important;
}

.icest-date-table td {
    padding: 22px 0 !important;
    vertical-align: middle;
    background: transparent !important;
}

/* LEFT AND RIGHT EVENT CELLS */

.icest-date-left,
.icest-date-right {
    width: 44%;
}

.icest-date-left {
    padding-right: 18px !important;
    text-align: right;
}

.icest-date-right {
    padding-left: 18px !important;
    text-align: left;
}

/* CENTRAL LADDER COLUMN */

.icest-date-center {
    position: relative;
    width: 12%;
    text-align: center;
}

/* Vertical ladder line */

.icest-date-center::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 7px;
    content: "";
    background: linear-gradient(
        to bottom,
        #6677ba 0%,
        #008c95 25%,
        #7358a4 42%,
        #df7a22 58%,
        #e85e77 74%,
        #37866b 88%,
        #073b5c 100%
    );
    border-radius: 8px;
    transform: translateX(-50%);
}

/* Central numbered circle */

.icest-date-node {
    position: relative;
    z-index: 2;
    display: inline-flex;
    width: 58px;
    height: 58px;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    background: #073b5c;
    border: 5px solid #008c95;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
    transition: transform .25s ease, box-shadow .25s ease;
}

.icest-date-table tr:hover .icest-date-node {
    transform: scale(1.10);
    box-shadow: 0 7px 18px rgba(0, 0, 0, .20);
}

/* DATE */

.icest-date-date {
    display: block;
    margin: 0 0 7px;
    color: #173847;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

/* HORIZONTAL LINE */

.icest-date-rule {
    display: block;
    width: 100%;
    height: 2px;
    margin: 0;
    background: #44545c;
    transition: background .25s ease;
}

/* EVENT NAME */

.icest-date-event {
    display: block;
    margin-top: 7px;
    color: #008c95;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.3;
}

/* Row hover */

.icest-date-table tr:hover .icest-date-rule {
    background: #008c95;
}

/* Different node colours */

.icest-date-table tr:nth-child(1) .icest-date-node {
    background: #6677ba;
    border-color: #6677ba;
}

.icest-date-table tr:nth-child(2) .icest-date-node {
    background: #008c95;
    border-color: #008c95;
}

.icest-date-table tr:nth-child(3) .icest-date-node {
    background: #7358a4;
    border-color: #7358a4;
}

.icest-date-table tr:nth-child(4) .icest-date-node {
    background: #df7a22;
    border-color: #df7a22;
}

.icest-date-table tr:nth-child(5) .icest-date-node {
    background: #e85e77;
    border-color: #e85e77;
}

.icest-date-table tr:nth-child(6) .icest-date-node {
    background: #37866b;
    border-color: #37866b;
}

.icest-date-table tr:nth-child(7) .icest-date-node {
    background: #073b5c;
    border-color: #008c95;
}

/* Matching event colours */

.icest-date-table tr:nth-child(1) .icest-date-event {
    color: #6677ba;
}

.icest-date-table tr:nth-child(2) .icest-date-event {
    color: #008c95;
}

.icest-date-table tr:nth-child(3) .icest-date-event {
    color: #7358a4;
}

.icest-date-table tr:nth-child(4) .icest-date-event {
    color: #df7a22;
}

.icest-date-table tr:nth-child(5) .icest-date-event {
    color: #e85e77;
}

.icest-date-table tr:nth-child(6) .icest-date-event {
    color: #37866b;
}

.icest-date-table tr:nth-child(7) .icest-date-event {
    color: #073b5c;
}

/* Tablet */

@media (max-width: 900px) {
    .icest-date-table {
        max-width: 100%;
    }

    .icest-date-left,
    .icest-date-right {
        width: 43%;
    }

    .icest-date-center {
        width: 14%;
    }

    .icest-date-date {
        font-size: 18px;
    }

    .icest-date-event {
        font-size: 14px;
    }

    .icest-date-node {
        width: 54px;
        height: 54px;
        font-size: 16px;
    }
}

/* Mobile */

@media (max-width: 650px) {
    .icest-date-table {
        width: 100%;
        table-layout: auto;
        margin-top: 10px;
    }

    .icest-date-table td {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .icest-date-left,
    .icest-date-right {
        width: auto;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .icest-date-center {
        width: 58px;
        min-width: 58px;
    }

    .icest-date-node {
        width: 46px;
        height: 46px;
        font-size: 14px;
        border-width: 4px;
    }

    .icest-date-center::before {
        width: 5px;
    }

    .icest-date-date {
        font-size: 15px;
    }

    .icest-date-event {
        font-size: 12px;
        line-height: 1.25;
    }
}

/* =========================================================
   ICEST 2027 IMPORTANT DATES - INTERACTIVE ENHANCEMENTS
   Works with the existing table-based HTML that already saves in OJS.
   No HTML changes required.
   ========================================================= */

/* Make each row feel like an interactive milestone */
.icest-date-table tr {
    position: relative;
}

/* Date/event cells animate inward on hover */
.icest-date-table .icest-date-left,
.icest-date-table .icest-date-right {
    transition:
        transform .28s ease,
        opacity .28s ease;
}

.icest-date-table tr:hover .icest-date-left {
    transform: translateX(8px);
}

.icest-date-table tr:hover .icest-date-right {
    transform: translateX(-8px);
}

/* Animated central ladder */
.icest-date-center::before {
    background-size: 100% 220%;
    animation: icestLadderFlow 8s linear infinite;
}

@keyframes icestLadderFlow {
    0% {
        background-position: 50% 0%;
    }
    100% {
        background-position: 50% 100%;
    }
}

/* More prominent timeline nodes */
.icest-date-node {
    overflow: visible;
    cursor: default;
    transform-origin: center;
}

/* Soft pulse ring */
.icest-date-node::after {
    position: absolute;
    inset: -8px;
    content: "";
    border: 2px solid currentColor;
    border-radius: 50%;
    opacity: 0;
    transform: scale(.78);
    transition:
        opacity .28s ease,
        transform .28s ease;
}

.icest-date-table tr:hover .icest-date-node::after {
    opacity: .28;
    transform: scale(1);
}

/* Node rises slightly on hover */
.icest-date-table tr:hover .icest-date-node {
    transform: scale(1.13) translateY(-2px);
}

/* Animate the horizontal branch line */
.icest-date-rule {
    position: relative;
    overflow: hidden;
}

.icest-date-rule::after {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 38%;
    content: "";
    background: rgba(255,255,255,.72);
    transform: skewX(-22deg);
    transition: left .48s ease, right .48s ease;
}

/* Light sweep direction depends on side */
.icest-date-left .icest-date-rule::after {
    right: 110%;
}

.icest-date-right .icest-date-rule::after {
    left: 110%;
}

.icest-date-table tr:hover .icest-date-left .icest-date-rule::after {
    right: -45%;
}

.icest-date-table tr:hover .icest-date-right .icest-date-rule::after {
    left: -45%;
}

/* Date becomes more prominent on hover */
.icest-date-date {
    transition:
        color .25s ease,
        transform .25s ease;
}

.icest-date-table tr:hover .icest-date-date {
    color: #073b5c;
}

/* Slight event-label emphasis */
.icest-date-event {
    transition:
        letter-spacing .25s ease,
        transform .25s ease;
}

.icest-date-table tr:hover .icest-date-event {
    letter-spacing: .015em;
}

/* Make the seven nodes visually distinct */
.icest-date-table tr:nth-child(1) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(102,119,186,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(2) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(0,140,149,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(3) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(115,88,164,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(4) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(223,122,34,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(5) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(232,94,119,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(6) .icest-date-node {
    box-shadow:
        0 0 0 5px rgba(55,134,107,.13),
        0 5px 15px rgba(0,0,0,.14);
}

.icest-date-table tr:nth-child(7) .icest-date-node {
    box-shadow:
        0 0 0 6px rgba(0,140,149,.15),
        0 6px 18px rgba(0,0,0,.18);
}

/* Final conference milestone slightly larger */
.icest-date-table tr:nth-child(7) .icest-date-node {
    width: 64px;
    height: 64px;
    font-size: 19px;
}

/* Optional vertical connector glow on hover */
.icest-date-table tr:hover .icest-date-center::before {
    filter: saturate(1.15) brightness(1.06);
}

/* Mobile: preserve readability; smaller hover movement */
@media (max-width: 650px) {
    .icest-date-table tr:hover .icest-date-left,
    .icest-date-table tr:hover .icest-date-right {
        transform: none;
    }

    .icest-date-table tr:hover .icest-date-node {
        transform: scale(1.07);
    }

    .icest-date-event {
        letter-spacing: normal !important;
    }

    .icest-date-table tr:nth-child(7) .icest-date-node {
        width: 50px;
        height: 50px;
        font-size: 15px;
    }
}

/* =========================================================
   IMPORTANT DATES V2 - FORCE VISIBILITY / OJS THEME OVERRIDES
   Use with the DIV-inside-TABLE HTML version.
   ========================================================= */

.icest-date-table .icest-date-date,
.icest-date-table .icest-date-event,
.icest-date-table .icest-date-node {
    visibility: visible !important;
    opacity: 1 !important;
    text-indent: 0 !important;
    clip: auto !important;
    overflow: visible !important;
    white-space: normal !important;
}

/* Force dates to remain visible over aggressive OJS theme rules */
.icest-date-table .icest-date-date {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: #173847 !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Force event labels visible */
.icest-date-table .icest-date-event {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

/* Force central milestone circles visible */
.icest-date-table .icest-date-node {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    width: 60px !important;
    height: 60px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    border-radius: 50% !important;
    box-shadow: 0 5px 15px rgba(0,0,0,.16) !important;
}

/* Strong row colours */
.icest-date-table tr:nth-child(1) .icest-date-node { background:#6677ba !important; border:5px solid #6677ba !important; }
.icest-date-table tr:nth-child(2) .icest-date-node { background:#008c95 !important; border:5px solid #008c95 !important; }
.icest-date-table tr:nth-child(3) .icest-date-node { background:#7358a4 !important; border:5px solid #7358a4 !important; }
.icest-date-table tr:nth-child(4) .icest-date-node { background:#df7a22 !important; border:5px solid #df7a22 !important; }
.icest-date-table tr:nth-child(5) .icest-date-node { background:#e85e77 !important; border:5px solid #e85e77 !important; }
.icest-date-table tr:nth-child(6) .icest-date-node { background:#37866b !important; border:5px solid #37866b !important; }
.icest-date-table tr:nth-child(7) .icest-date-node { background:#073b5c !important; border:5px solid #008c95 !important; }

.icest-date-table tr:nth-child(1) .icest-date-event { color:#6677ba !important; }
.icest-date-table tr:nth-child(2) .icest-date-event { color:#008c95 !important; }
.icest-date-table tr:nth-child(3) .icest-date-event { color:#7358a4 !important; }
.icest-date-table tr:nth-child(4) .icest-date-event { color:#df7a22 !important; }
.icest-date-table tr:nth-child(5) .icest-date-event { color:#e85e77 !important; }
.icest-date-table tr:nth-child(6) .icest-date-event { color:#37866b !important; }
.icest-date-table tr:nth-child(7) .icest-date-event { color:#073b5c !important; }

/* Make the horizontal ladder branches clearly visible */
.icest-date-table .icest-date-rule {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 3px !important;
    min-height: 3px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #44545c !important;
}

/* Interactive hover: branch lights up and content moves toward centre */
.icest-date-table tr:hover .icest-date-rule {
    background: #008c95 !important;
}

.icest-date-table tr:hover .icest-date-node {
    transform: scale(1.12) !important;
}

.icest-date-table tr:hover .icest-date-left {
    transform: translateX(7px);
}

.icest-date-table tr:hover .icest-date-right {
    transform: translateX(-7px);
}

/* Gentle animated ladder flow */
.icest-date-center::before {
    background: linear-gradient(
        to bottom,
        #6677ba 0%,
        #008c95 20%,
        #7358a4 40%,
        #df7a22 60%,
        #e85e77 78%,
        #37866b 90%,
        #073b5c 100%
    ) !important;
    background-size: 100% 180% !important;
    animation: icestDateSpineFlow 7s linear infinite !important;
}

@keyframes icestDateSpineFlow {
    from { background-position: 50% 0%; }
    to   { background-position: 50% 100%; }
}

@media (max-width: 650px) {
    .icest-date-table .icest-date-date {
        font-size: 15px !important;
    }

    .icest-date-table .icest-date-event {
        font-size: 12px !important;
    }

    .icest-date-table .icest-date-node {
        width: 48px !important;
        height: 48px !important;
        font-size: 14px !important;
    }

    .icest-date-table tr:hover .icest-date-left,
    .icest-date-table tr:hover .icest-date-right {
        transform: none !important;
    }
}

/* =========================================================
   ICEST - HIDE OJS AUTOMATIC PAGE HEADINGS
   and use custom ICEST page headings inside page content
   ========================================================= */

/* Hide common OJS-generated page titles */
.pkp_structure_main .page > h1:first-of-type,
.pkp_structure_main .cmp_breadcrumbs + h1,
.pkp_structure_main .page_header > h1,
.pkp_structure_main .page_title {
    display: none !important;
}

/* Safeguards for common OJS page types */
.pkp_structure_main .page_about > h1,
.pkp_structure_main .page_submissions > h1,
.pkp_structure_main .page_contact > h1,
.pkp_structure_main .page_register > h1,
.pkp_structure_main .page_login > h1,
.pkp_structure_main .page_search > h1 {
    display: none !important;
}


/* =========================================================
   ICEST CUSTOM PAGE HEADING
   Add this at the top of each page:
   <div class="icest-page-heading"><h1>Page Title</h1></div>
   ========================================================= */

.icest-page-heading {
    width: 100%;
    margin: 5px 0 34px;
    padding: 0;
    text-align: center;
}

.icest-page-heading h1 {
    position: relative;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 0 14px !important;
    color: #073b5c !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

/* Decorative underline */
.icest-page-heading h1::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 68px;
    height: 4px;
    content: "";
    background: linear-gradient(90deg, #073b5c, #008c95);
    border-radius: 4px;
    transform: translateX(-50%);
}

/* Optional smaller introductory text below a page heading */
.icest-page-heading .icest-page-subtitle {
    max-width: 760px;
    margin: 14px auto 0 !important;
    padding: 0 12px;
    color: #5d707b;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
}

/* =========================================================
   PAGE SPACING
   ========================================================= */

.pkp_structure_main .page {
    padding-top: 4px;
}

/* =========================================================
   MOBILE / TABLET PAGE HEADINGS
   ========================================================= */

@media (max-width: 900px) {
    .icest-page-heading {
        margin-bottom: 30px;
    }

    .icest-page-heading h1 {
        font-size: 30px !important;
    }
}

@media (max-width: 650px) {
    .icest-page-heading {
        margin-top: 0;
        margin-bottom: 24px;
    }

    .icest-page-heading h1 {
        padding-bottom: 11px !important;
        font-size: 27px !important;
    }

    .icest-page-heading h1::after {
        width: 56px;
        height: 3px;
    }

    .icest-page-heading .icest-page-subtitle {
        margin-top: 11px !important;
        font-size: .94rem;
        line-height: 1.5;
    }
}

/* =========================================================
   ICEST - FORCE HIDE OJS-GENERATED MAIN PAGE H1 TITLES
   This intentionally hides H1 headings inside the OJS main content area.
   Custom ICEST headings are explicitly restored below.
   ========================================================= */

.pkp_structure_main h1 {
    display: none !important;
}

/* Re-show only ICEST headings that we add ourselves */
.pkp_structure_main .icest-page-heading h1,
.icest-page-heading h1 {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Preserve Important Dates title if it is still used */
.pkp_structure_main .icest-important-dates-title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* =========================================================
   ICEST - HEALTH SCIENCES THEME
   HIDE THE THEME-GENERATED PAGE HEADER BLOCK
   ========================================================= */

/*
   Health Sciences uses structures such as:
   .container.page-about > .page-header
   .container.page-submissions > .page-header
   .container.page-contact > .page-header

   Hide only the top-level page-header block so article titles and
   headings inside the actual page content remain untouched.
*/
.container[class*="page-"] > .page-header {
    display: none !important;
}

/* Additional compatibility for custom/static page templates */
.container.page > .page-header,
.page.page_static > .page-header,
.page.page_static > h1:first-child,
.page.page_static > h1:first-of-type {
    display: none !important;
}

/* If a custom/static page uses the Health Sciences row wrapper */
.container[class*="page-"] > .row.page-header {
    display: none !important;
}

/* =========================================================
   ICEST CUSTOM PAGE HEADINGS - HEALTH SCIENCES COMPATIBLE
   ========================================================= */

.container[class*="page-"] .icest-page-heading,
.page.page_static .icest-page-heading,
.icest-page-heading {
    display: block !important;
    width: 100%;
    margin: 8px 0 32px !important;
    padding: 0 !important;
    text-align: center !important;
}

.container[class*="page-"] .icest-page-heading h1,
.page.page_static .icest-page-heading h1,
.icest-page-heading h1 {
    position: relative !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 0 13px !important;
    color: #073b5c !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

.container[class*="page-"] .icest-page-heading h1::after,
.page.page_static .icest-page-heading h1::after,
.icest-page-heading h1::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 68px;
    height: 4px;
    content: "";
    background: linear-gradient(90deg, #073b5c, #008c95);
    border-radius: 4px;
    transform: translateX(-50%);
}

/* Remove excessive empty top gap after hiding the original header */
.container[class*="page-"] > .row:not(.page-header):first-of-type,
.container[class*="page-"] > .page-content:first-of-type {
    margin-top: 0 !important;
}

/* Tablet */
@media (max-width: 900px) {
    .container[class*="page-"] .icest-page-heading h1,
    .page.page_static .icest-page-heading h1,
    .icest-page-heading h1 {
        font-size: 30px !important;
    }
}

/* Mobile */
@media (max-width: 650px) {
    .container[class*="page-"] .icest-page-heading,
    .page.page_static .icest-page-heading,
    .icest-page-heading {
        margin: 4px 0 24px !important;
    }

    .container[class*="page-"] .icest-page-heading h1,
    .page.page_static .icest-page-heading h1,
    .icest-page-heading h1 {
        padding-bottom: 10px !important;
        font-size: 27px !important;
    }

    .container[class*="page-"] .icest-page-heading h1::after,
    .page.page_static .icest-page-heading h1::after,
    .icest-page-heading h1::after {
        width: 56px;
        height: 3px;
    }
}

/* =========================================================
   ICEST PREVIOUS PROCEEDINGS COVER CARDS
   Used for ICEST 2023 and ICEST 2025
   ========================================================= */

.icest-proceedings-block {
    max-width: 900px;
    margin: 42px auto 20px;
    text-align: center;
}

.icest-proceedings-block h2 {
    margin: 0 0 20px !important;
    color: #073b5c !important;
    font-size: 27px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.icest-proceedings-cover {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 320px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #d9e2e7;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0,0,0,.13);
    text-decoration: none !important;
    transition: transform .3s ease, box-shadow .3s ease;
}

.icest-proceedings-cover img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    transition: transform .4s ease, filter .4s ease;
}

.icest-proceedings-cover:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 34px rgba(0,0,0,.20);
    text-decoration: none !important;
}

.icest-proceedings-cover:hover img {
    transform: scale(1.025);
    filter: brightness(.76);
}

.icest-proceedings-overlay {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 18px 12px;
    color: #ffffff !important;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
    background: linear-gradient(
        to top,
        rgba(7,59,92,.97),
        rgba(7,59,92,.55),
        rgba(7,59,92,.05)
    );
    transition: padding .3s ease;
}

.icest-proceedings-overlay small {
    display: block;
    margin-top: 5px;
    color: #ffffff !important;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.3;
}

.icest-proceedings-cover:hover .icest-proceedings-overlay {
    padding-bottom: 24px;
}

@media (max-width: 650px) {
    .icest-proceedings-block {
        margin-top: 34px;
    }

    .icest-proceedings-block h2 {
        font-size: 23px !important;
    }

    .icest-proceedings-cover {
        max-width: 270px;
    }

    .icest-proceedings-overlay {
        font-size: 15px;
    }
}

/* =========================================================
   ICEST 2027 AWARDS - INTERACTIVE OJS-SAFE TABLE CARDS
   ========================================================= */

.awards-table {
    width: 100%;
    max-width: 1100px;
    margin: 10px auto 45px;
    border-collapse: separate !important;
    border-spacing: 24px !important;
    table-layout: fixed;
}

.awards-table,
.awards-table tbody,
.awards-table tr,
.awards-table td {
    border: 0 !important;
    background: transparent !important;
}

.awards-card {
    width: 50%;
    padding: 0 !important;
    vertical-align: top !important;
}

.icest-award-card-inner {
    position: relative;
    height: 100%;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 14px;
    box-shadow: 0 7px 22px rgba(0,0,0,.08);
    transition:
        transform .30s ease,
        box-shadow .30s ease;
}

.icest-award-card-inner:hover {
    transform: translateY(-7px);
    box-shadow: 0 16px 34px rgba(0,0,0,.16);
}

/* Image */
.icest-award-image {
    position: relative;
    height: 190px;
    overflow: hidden;
    background: #eef4f6;
}

.icest-award-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    transition:
        transform .45s ease,
        filter .45s ease;
}

.icest-award-card-inner:hover .icest-award-image img {
    transform: scale(1.06);
    filter: brightness(.86);
}

/* Number badge */
.icest-award-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 2;
    display: inline-flex;
    min-width: 46px;
    height: 46px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    border-radius: 999px;
    box-shadow: 0 4px 12px rgba(0,0,0,.18);
}

/* Content */
.icest-award-content {
    padding: 24px 26px 26px;
    border-top: 7px solid var(--award-accent, #008c95);
}

.icest-award-card-inner h3 {
    margin: 0 0 12px !important;
    color: #073b5c !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

.icest-award-card-inner p {
    margin: 0 0 15px !important;
    color: #536873;
    font-size: 15px;
    line-height: 1.65;
}

.icest-award-card-inner ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.icest-award-card-inner li {
    position: relative;
    margin: 0 0 8px !important;
    padding: 0 0 0 22px !important;
    color: #42545d;
    font-size: 14px;
    line-height: 1.5;
}

.icest-award-card-inner li::before {
    position: absolute;
    top: .65em;
    left: 2px;
    width: 8px;
    height: 8px;
    content: "";
    background: var(--award-accent, #008c95);
    border-radius: 50%;
    transform: translateY(-50%);
}

/* Colours */
.icest-award-blue { --award-accent: #1f77b4; }
.icest-award-blue .icest-award-badge { background: #1f77b4; }

.icest-award-teal { --award-accent: #1fbba6; }
.icest-award-teal .icest-award-badge { background: #1fbba6; }

.icest-award-orange { --award-accent: #f39c12; }
.icest-award-orange .icest-award-badge { background: #f39c12; }

.icest-award-purple { --award-accent: #7e57c2; }
.icest-award-purple .icest-award-badge { background: #7e57c2; }

/* Mobile */
@media (max-width: 760px) {
    .awards-table {
        display: block;
        width: 100%;
        border-spacing: 0 !important;
    }

    .awards-table tbody,
    .awards-table tr,
    .awards-card {
        display: block;
        width: 100% !important;
    }

    .awards-card {
        margin: 0 0 20px;
    }

    .icest-award-image {
        height: 175px;
    }

    .icest-award-content {
        padding: 21px 20px 23px;
    }

    .icest-award-card-inner h3 {
        font-size: 20px !important;
    }
}

/* =========================================================
   ICEST 2027 CALL FOR PAPERS - INTERACTIVE / MOBILE RESPONSIVE
   ========================================================= */

.icest-cfp-page {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto 55px;
    box-sizing: border-box;
}

.icest-cfp-page *,
.icest-cfp-page *::before,
.icest-cfp-page *::after {
    box-sizing: border-box;
}

/* Intro / hero text */
.icest-cfp-heading {
    position: relative;
    overflow: hidden;
    margin: 5px auto 24px;
    padding: 25px 28px 25px 32px;
    background: linear-gradient(135deg, #f6fbfc, #eef7f8);
    border: 1px solid #d9e8eb;
    border-left: 6px solid #008c95;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

.icest-cfp-heading::after {
    position: absolute;
    top: -55px;
    right: -55px;
    width: 150px;
    height: 150px;
    content: "";
    background: rgba(0,140,149,.07);
    border-radius: 50%;
}

.icest-cfp-heading p {
    position: relative;
    z-index: 1;
    margin: 0 !important;
    color: #425b66;
    font-size: 16px;
    line-height: 1.75;
}

/* CTA buttons */
.icest-cfp-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
    margin: 0 auto 30px;
}

.icest-cfp-buttons a {
    display: inline-flex;
    min-height: 46px;
    padding: 11px 22px;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-decoration: none !important;
    background: linear-gradient(135deg, #073b5c, #008c95);
    border: 2px solid transparent;
    border-radius: 8px;
    box-shadow: 0 5px 14px rgba(7,59,92,.15);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.icest-cfp-buttons a:hover {
    color: #ffffff !important;
    transform: translateY(-3px);
    box-shadow: 0 9px 20px rgba(7,59,92,.22);
}

.icest-cfp-buttons a.secondary {
    color: #073b5c !important;
    background: #ffffff;
    border-color: #073b5c;
    box-shadow: none;
}

.icest-cfp-buttons a.secondary:hover {
    color: #ffffff !important;
    background: #073b5c;
}

/* Submission journey */
.icest-cfp-flow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin: 0 auto 30px;
}

.icest-cfp-flow-step {
    position: relative;
    min-height: 120px;
    padding: 20px 18px;
    background: #ffffff;
    border: 1px solid #dce6ea;
    border-radius: 12px;
    box-shadow: 0 5px 16px rgba(0,0,0,.06);
    text-align: center;
    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease;
}

.icest-cfp-flow-step:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 25px rgba(0,0,0,.12);
    border-color: #9fd5d7;
}

.icest-cfp-flow-number {
    display: flex;
    width: 38px;
    height: 38px;
    margin: 0 auto 10px;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
    background: #008c95;
    border-radius: 50%;
}

.icest-cfp-flow-step h3 {
    margin: 0 0 4px !important;
    color: #073b5c !important;
    font-size: 17px !important;
    font-weight: 800 !important;
}

.icest-cfp-flow-step p {
    margin: 0 !important;
    color: #647781;
    font-size: 13px;
    line-height: 1.45;
}

/* Expandable information boxes */
.icest-info-expandable {
    display: grid;
    gap: 12px;
    margin: 0 auto 30px;
}

.icest-info-box {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #dce6ea;
    border-radius: 10px;
    box-shadow: 0 4px 13px rgba(0,0,0,.05);
    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        transform .25s ease;
}

.icest-info-box:hover {
    border-color: #a7d7d9;
    box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.icest-info-box[open] {
    border-color: #79c5c9;
}

.icest-info-box summary {
    position: relative;
    padding: 16px 50px 16px 20px;
    color: #073b5c;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
    background: #f8fbfc;
    transition: background .25s ease, color .25s ease;
}

.icest-info-box summary::-webkit-details-marker {
    display: none;
}

.icest-info-box summary::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 11px;
    height: 11px;
    content: "";
    border-right: 3px solid #008c95;
    border-bottom: 3px solid #008c95;
    transform: translateY(-65%) rotate(45deg);
    transition: transform .25s ease;
}

.icest-info-box[open] summary {
    color: #ffffff;
    background: linear-gradient(135deg, #073b5c, #008c95);
}

.icest-info-box[open] summary::after {
    border-color: #ffffff;
    transform: translateY(-35%) rotate(225deg);
}

.icest-info-content {
    padding: 18px 20px 20px;
}

.icest-info-content p {
    margin: 0 !important;
    color: #566a74;
    font-size: 14px;
    line-height: 1.65;
}

/* Publication notice */
.icest-cfp-note {
    position: relative;
    margin: 28px auto 35px;
    padding: 22px 24px 22px 27px;
    overflow: hidden;
    background: #fffaf1;
    border: 1px solid #f0d7a7;
    border-left: 6px solid #e49a27;
    border-radius: 10px;
}

.icest-cfp-note h3 {
    margin: 0 0 8px !important;
    color: #8a5710 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

.icest-cfp-note p {
    margin: 0 !important;
    color: #66563f;
    font-size: 14px;
    line-height: 1.65;
}

/* Section heading */
.icest-section-title {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 38px 0 24px;
}

.icest-section-title h2 {
    margin: 0 !important;
    color: #073b5c !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    white-space: nowrap;
}

.icest-cfp-line {
    flex: 1;
    height: 3px;
    min-height: 3px;
    background: linear-gradient(90deg, #008c95, rgba(0,140,149,.08));
    border-radius: 4px;
}

/* Tracks table */
.icest-tracks-table {
    width: 100%;
    margin: 0 auto 38px;
    border-collapse: separate !important;
    border-spacing: 20px !important;
    table-layout: fixed;
}

.icest-tracks-table,
.icest-tracks-table tbody,
.icest-tracks-table tr,
.icest-tracks-table td {
    border: 0 !important;
    background: transparent !important;
}

.icest-track-card {
    position: relative;
    width: 50%;
    padding: 25px 25px 24px !important;
    vertical-align: top !important;
    background: #ffffff !important;
    border: 1px solid #dce5ea !important;
    border-top: 7px solid var(--track-color, #008c95) !important;
    border-radius: 13px !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.07);
    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease;
}

.icest-track-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(0,0,0,.13);
}

.icest-track-card h3 {
    margin: 0 0 15px !important;
    padding-right: 42px;
    color: #073b5c !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

.icest-track-code {
    position: absolute;
    top: 18px;
    right: 18px;
    display: flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    background: var(--track-color, #008c95);
    border-radius: 50%;
    box-shadow: 0 4px 10px rgba(0,0,0,.12);
    transition: transform .25s ease;
}

.icest-track-card:hover .icest-track-code {
    transform: rotate(8deg) scale(1.08);
}

.icest-track-card ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.icest-track-card li {
    position: relative;
    margin: 0 0 8px !important;
    padding: 0 0 0 20px !important;
    color: #4d616b;
    font-size: 14px;
    line-height: 1.5;
}

.icest-track-card li::before {
    position: absolute;
    top: .72em;
    left: 1px;
    width: 7px;
    height: 7px;
    content: "";
    background: var(--track-color, #008c95);
    border-radius: 50%;
    transform: translateY(-50%);
}

.track-a { --track-color: #1f77b4; }
.track-b { --track-color: #1fbba6; }
.track-c { --track-color: #e58a25; }
.track-d { --track-color: #7358a4; }
.track-e { --track-color: #d9536f; }
.track-f { --track-color: #3b8b68; }
.track-g { --track-color: #0f697d; }

/* Full-width final track */
.icest-track-card[colspan="2"] {
    width: 100%;
}

/* Submission requirements */
.icest-requirements-card {
    margin: 35px auto 10px;
    padding: 25px 27px;
    background: #f8fbfc;
    border: 1px solid #dce6ea;
    border-radius: 12px;
    box-shadow: 0 5px 15px rgba(0,0,0,.05);
}

.icest-requirements-card h3 {
    margin: 0 0 16px !important;
    color: #073b5c !important;
    font-size: 22px !important;
    font-weight: 800 !important;
}

.icest-requirements-card ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.icest-requirements-card li {
    position: relative;
    margin: 0 0 10px !important;
    padding: 0 0 0 28px !important;
    color: #4d616b;
    font-size: 14px;
    line-height: 1.55;
}

.icest-requirements-card li::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    content: "✓";
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    background: #008c95;
    border-radius: 50%;
}

/* Tablet */
@media (max-width: 900px) {
    .icest-cfp-page {
        max-width: 100%;
    }

    .icest-cfp-flow {
        gap: 12px;
    }

    .icest-tracks-table {
        border-spacing: 14px !important;
    }

    .icest-track-card {
        padding: 22px 20px !important;
    }

    .icest-track-card h3 {
        font-size: 17px !important;
    }
}

/* Mobile */
@media (max-width: 760px) {
    .icest-cfp-heading {
        padding: 20px 18px 20px 21px;
    }

    .icest-cfp-heading p {
        font-size: 14px;
        line-height: 1.65;
    }

    .icest-cfp-buttons {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 24px;
    }

    .icest-cfp-buttons a {
        width: 100%;
    }

    .icest-cfp-flow {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .icest-cfp-flow-step {
        min-height: 0;
        padding: 16px;
    }

    .icest-info-box summary {
        padding: 15px 45px 15px 16px;
        font-size: 15px;
    }

    .icest-info-content {
        padding: 16px;
    }

    .icest-cfp-note {
        padding: 19px 17px 19px 20px;
    }

    .icest-section-title {
        gap: 10px;
        margin-top: 30px;
    }

    .icest-section-title h2 {
        font-size: 23px !important;
        white-space: normal;
    }

    .icest-tracks-table,
    .icest-tracks-table tbody,
    .icest-tracks-table tr,
    .icest-track-card {
        display: block;
        width: 100% !important;
    }

    .icest-tracks-table {
        border-spacing: 0 !important;
    }

    .icest-track-card {
        margin: 0 0 16px !important;
        padding: 21px 18px !important;
    }

    .icest-track-card h3 {
        padding-right: 38px;
        font-size: 17px !important;
    }

    .icest-track-code {
        top: 16px;
        right: 15px;
        width: 31px;
        height: 31px;
        font-size: 12px;
    }

    .icest-track-card li {
        font-size: 13.5px;
    }

    .icest-requirements-card {
        padding: 21px 18px;
    }

    .icest-requirements-card h3 {
        font-size: 20px !important;
    }
}

/* =========================================================
   ICEST 2027 AUTHOR GUIDELINES + PAPER SUBMISSION
   ========================================================= */
.icest-author-page,.icest-submit-page{width:100%;max-width:1100px;margin:0 auto 55px;box-sizing:border-box}
.icest-author-page *,.icest-submit-page *{box-sizing:border-box}

.icest-author-intro,.icest-submit-intro{
position:relative;overflow:hidden;margin:5px auto 28px;padding:25px 28px 25px 32px;
background:linear-gradient(135deg,#f6fbfc,#eef7f8);border:1px solid #d9e8eb;border-left:6px solid #008c95;
border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.06)
}
.icest-author-intro p,.icest-submit-intro p{margin:0!important;color:#425b66;font-size:16px;line-height:1.75}

.icest-author-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:0 auto 30px}
.icest-author-step{min-height:128px;padding:19px 16px;text-align:center;background:#fff;border:1px solid #dce6ea;border-radius:12px;box-shadow:0 5px 15px rgba(0,0,0,.06);transition:.28s}
.icest-author-step:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(0,0,0,.12);border-color:#99d2d5}
.icest-author-step-number{display:flex;width:38px;height:38px;margin:0 auto 10px;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:800;background:#008c95;border-radius:50%}
.icest-author-step h3{margin:0 0 5px!important;color:#073b5c!important;font-size:16px!important;font-weight:800!important}
.icest-author-step p{margin:0!important;color:#657982;font-size:12.5px;line-height:1.45}

.icest-guideline-list{display:grid;gap:12px;margin:0 auto 30px}
.icest-guideline-box{overflow:hidden;background:#fff;border:1px solid #dce6ea;border-radius:11px;box-shadow:0 4px 13px rgba(0,0,0,.05)}
.icest-guideline-box summary{position:relative;padding:16px 50px 16px 20px;color:#073b5c;font-size:16px;font-weight:800;cursor:pointer;list-style:none;background:#f8fbfc}
.icest-guideline-box summary::-webkit-details-marker{display:none}
.icest-guideline-box summary:after{position:absolute;top:50%;right:20px;width:11px;height:11px;content:"";border-right:3px solid #008c95;border-bottom:3px solid #008c95;transform:translateY(-65%) rotate(45deg);transition:.25s}
.icest-guideline-box[open] summary{color:#fff;background:linear-gradient(135deg,#073b5c,#008c95)}
.icest-guideline-box[open] summary:after{border-color:#fff;transform:translateY(-35%) rotate(225deg)}
.icest-guideline-content{padding:18px 20px 20px}
.icest-guideline-content p{margin:0 0 12px!important;color:#566a74;font-size:14px;line-height:1.65}
.icest-guideline-content ul,.icest-guideline-content ol{margin:8px 0 0!important;padding-left:22px!important}
.icest-guideline-content li{margin-bottom:7px!important;color:#4d616b;font-size:14px;line-height:1.55}

.icest-guideline-note{margin:28px auto 30px;padding:20px 22px 20px 25px;background:#fffaf1;border:1px solid #f0d7a7;border-left:6px solid #e49a27;border-radius:10px}
.icest-guideline-note h3{margin:0 0 7px!important;color:#8a5710!important;font-size:18px!important;font-weight:800!important}
.icest-guideline-note p{margin:0!important;color:#66563f;font-size:14px;line-height:1.65}

.icest-checklist-card{margin:30px auto 0;padding:24px 26px;background:#f8fbfc;border:1px solid #dce6ea;border-radius:12px;box-shadow:0 5px 15px rgba(0,0,0,.05)}
.icest-checklist-card h3{margin:0 0 16px!important;color:#073b5c!important;font-size:22px!important;font-weight:800!important}
.icest-checklist-card ul{margin:0!important;padding:0!important;list-style:none!important}
.icest-checklist-card li{position:relative;margin:0 0 10px!important;padding-left:29px!important;color:#4d616b;font-size:14px;line-height:1.55}
.icest-checklist-card li:before{position:absolute;top:3px;left:0;display:flex;width:18px;height:18px;align-items:center;justify-content:center;content:"✓";color:#fff;font-size:11px;font-weight:800;background:#008c95;border-radius:50%}

.icest-submit-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0 auto 26px}
.icest-submit-card{padding:28px 26px 26px;background:#fff;border:1px solid #dce5ea;border-top:7px solid var(--submit-accent,#008c95);border-radius:14px;box-shadow:0 7px 22px rgba(0,0,0,.08);transition:.3s}
.icest-submit-card:hover{transform:translateY(-7px);box-shadow:0 16px 34px rgba(0,0,0,.15)}
.icest-submit-card.is-abstract{--submit-accent:#1f77b4}.icest-submit-card.is-paper{--submit-accent:#008c95}
.icest-submit-card-number{display:flex;width:44px;height:44px;margin-bottom:15px;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:800;background:var(--submit-accent,#008c95);border-radius:50%}
.icest-submit-card h2{margin:0 0 10px!important;color:#073b5c!important;font-size:23px!important;font-weight:800!important}
.icest-submit-card p{margin:0 0 17px!important;color:#536873;font-size:14px;line-height:1.65}
.icest-submit-button{display:inline-flex;min-height:44px;padding:10px 18px;align-items:center;justify-content:center;color:#fff!important;font-size:14px;font-weight:800;text-decoration:none!important;background:var(--submit-accent,#008c95);border-radius:7px}
.icest-submit-button:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 7px 15px rgba(0,0,0,.16)}

.icest-submit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 auto 28px}
.icest-submit-action{display:flex;min-height:58px;padding:14px 18px;align-items:center;justify-content:center;color:#073b5c!important;font-size:14px;font-weight:800;text-align:center;text-decoration:none!important;background:#f8fbfc;border:1px solid #cfdfe4;border-radius:9px;transition:.25s}
.icest-submit-action:hover{color:#fff!important;background:#073b5c;border-color:#073b5c;transform:translateY(-2px)}

.icest-before-submit{margin:0 auto;padding:22px 24px;background:#f8fbfc;border:1px solid #dce6ea;border-radius:12px}
.icest-before-submit h3{margin:0 0 14px!important;color:#073b5c!important;font-size:20px!important;font-weight:800!important}
.icest-before-submit ul{margin:0!important;padding:0!important;list-style:none!important}
.icest-before-submit li{position:relative;margin:0 0 9px!important;padding-left:27px!important;color:#4d616b;font-size:14px;line-height:1.5}
.icest-before-submit li:before{position:absolute;top:4px;left:0;display:flex;width:17px;height:17px;align-items:center;justify-content:center;content:"✓";color:#fff;font-size:10px;font-weight:800;background:#008c95;border-radius:50%}

@media(max-width:900px){.icest-author-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
.icest-author-intro,.icest-submit-intro{padding:20px 18px 20px 21px}
.icest-author-intro p,.icest-submit-intro p{font-size:14px;line-height:1.65}
.icest-author-steps,.icest-submit-options,.icest-submit-actions{grid-template-columns:1fr}
.icest-author-step{min-height:0;padding:16px}
.icest-guideline-box summary{padding:15px 45px 15px 16px;font-size:15px}
.icest-guideline-content{padding:16px}
.icest-guideline-note{padding:18px 17px 18px 20px}
.icest-checklist-card{padding:21px 18px}
.icest-submit-card{padding:23px 20px 22px}
.icest-submit-button,.icest-submit-action{width:100%}
.icest-before-submit{padding:20px 18px}
}

/* =========================================================
   ICEST AWARDS PAGE - FIXED SHOWCASE + INTERACTIVE CARDS
   ========================================================= */

.icest-awards-showcase {
    position: relative;
    width: 100%;
    max-width: 1050px;
    height: 360px;
    margin: 8px auto 34px;
    overflow: hidden;
    background: #eef4f6;
    border: 1px solid #dbe5e9;
    border-radius: 14px;
    box-shadow: 0 9px 26px rgba(0,0,0,.12);
}

.icest-awards-showcase > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border: 0 !important;
    transition: transform .55s ease, filter .55s ease;
}

.icest-awards-showcase:hover > img {
    transform: scale(1.035);
    filter: brightness(.82);
}

.icest-awards-showcase-overlay {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 34px 24px 20px;
    color: #ffffff !important;
    text-align: left;
    background: linear-gradient(to top, rgba(7,59,92,.96), rgba(7,59,92,.48), transparent);
    pointer-events: none;
}

.icest-awards-showcase-overlay strong {
    display: block;
    margin: 0 0 4px;
    color: #ffffff !important;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.2;
}

.icest-awards-showcase-overlay span {
    display: block;
    color: #ffffff !important;
    font-size: 14px;
    line-height: 1.4;
}

.awards-table .icest-award-card-inner {
    position: relative;
    height: 100%;
    overflow: visible;
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 14px;
    box-shadow: 0 7px 22px rgba(0,0,0,.08);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.awards-table .icest-award-card-inner:hover {
    transform: translateY(-7px);
    box-shadow: 0 16px 34px rgba(0,0,0,.16);
}

.awards-table .icest-award-content {
    position: relative;
    overflow: visible !important;
    height: auto !important;
    min-height: 100%;
    padding: 24px 26px 26px !important;
    border-top: 7px solid var(--award-accent, #008c95);
    border-radius: 14px 14px 0 0;
}

.icest-award-number {
    display: flex;
    width: 46px;
    height: 46px;
    margin: 0 0 15px;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    background: var(--award-accent, #008c95);
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0,0,0,.14);
    transition: transform .25s ease, box-shadow .25s ease;
}

.icest-award-card-inner:hover .icest-award-number {
    transform: rotate(8deg) scale(1.08);
    box-shadow: 0 7px 16px rgba(0,0,0,.18);
}

.awards-table .icest-award-card-inner:hover h3 {
    color: var(--award-accent, #008c95) !important;
}

.awards-table {
    width: 100%;
    max-width: 1100px;
    margin: 8px auto 45px;
    border-collapse: separate !important;
    border-spacing: 22px !important;
    table-layout: fixed;
}

.awards-table .awards-card {
    width: 50% !important;
    padding: 0 !important;
    vertical-align: top !important;
    background: transparent !important;
    border: 0 !important;
}

@media (max-width: 760px) {
    .icest-awards-showcase {
        height: 225px;
        margin-bottom: 24px;
        border-radius: 11px;
    }

    .icest-awards-showcase-overlay {
        padding: 28px 16px 14px;
    }

    .icest-awards-showcase-overlay strong {
        font-size: 19px;
    }

    .icest-awards-showcase-overlay span {
        font-size: 12px;
    }

    .awards-table,
    .awards-table tbody,
    .awards-table tr,
    .awards-table .awards-card {
        display: block;
        width: 100% !important;
    }

    .awards-table {
        border-spacing: 0 !important;
    }

    .awards-table .awards-card {
        margin: 0 0 18px !important;
    }

    .awards-table .icest-award-content {
        padding: 21px 19px 23px !important;
    }

    .icest-award-number {
        width: 42px;
        height: 42px;
        font-size: 13px;
    }

    .awards-table .icest-award-card-inner:hover {
        transform: translateY(-3px);
    }
}
/* =========================================================
   PAST CONFERENCES - INTERACTIVE CARDS
   ========================================================= */

.icest-past-card {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 28px 24px;

    color: #073b5c !important;
    text-decoration: none !important;

    background: #ffffff;

    border: 1px solid #dce5ea;
    border-radius: 14px;

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

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

.icest-past-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 17px 35px rgba(0,0,0,.17);
}

.icest-past-card-2025 {
    border-top: 7px solid #008c95;
}

.icest-past-card-2023 {
    border-top: 7px solid #7e57c2;
}


/* Year circle */

.icest-past-year {
    display: flex;

    width: 62px;
    height: 62px;

    margin-bottom: 17px;

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

    color: #ffffff;

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

    border-radius: 50%;

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

.icest-past-card-2025 .icest-past-year {
    background: #008c95;
}

.icest-past-card-2023 .icest-past-year {
    background: #7e57c2;
}

.icest-past-card:hover .icest-past-year {
    transform: scale(1.10) rotate(5deg);

    box-shadow:
        0 6px 16px rgba(0,0,0,.18);
}


/* Heading */

.icest-past-card h2 {
    margin: 0 0 10px !important;

    color: #073b5c !important;

    font-size: 23px !important;
    font-weight: 800 !important;

    transition: color .3s ease;
}

.icest-past-card-2025:hover h2 {
    color: #008c95 !important;
}

.icest-past-card-2023:hover h2 {
    color: #7e57c2 !important;
}


/* Button */

.icest-past-button {
    display: inline-block;

    padding: 9px 16px;

    color: #ffffff !important;

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

    border-radius: 6px;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.icest-past-card-2025 .icest-past-button {
    background: #008c95;
}

.icest-past-card-2023 .icest-past-button {
    background: #7e57c2;
}

.icest-past-card:hover .icest-past-button {
    transform: translateX(5px);

    box-shadow:
        0 5px 12px rgba(0,0,0,.15);
}


/* Mobile */

@media (max-width: 650px) {

    .icest-past-card {
        padding: 23px 20px;
    }

    .icest-past-card:hover {
        transform: translateY(-3px);
    }
}
/* =========================================================
   ICEST REGISTRATION + SPEAKERS INTERACTIVE CARDS
   ========================================================= */

/* Shared card animation */
.icest-reg-card,
.icest-speaker-card {
    position: relative;
    overflow: hidden;

    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 12px;

    box-shadow: 0 5px 15px rgba(0,0,0,.07);

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

.icest-reg-card:hover,
.icest-speaker-card:hover {
    transform: translateY(-7px);

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


/* =========================================================
   REGISTRATION CARDS
   ========================================================= */

.icest-reg-card {
    padding: 22px;
}

.icest-reg-blue {
    border-top: 6px solid #1f77b4;
}

.icest-reg-teal {
    border-top: 6px solid #008c95;
}

.icest-reg-purple {
    border-top: 6px solid #7e57c2;
}


/* Number circle */

.icest-reg-number {
    display: flex;

    width: 42px;
    height: 42px;

    margin-bottom: 13px;

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

    color: #ffffff;

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

    border-radius: 50%;

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

.icest-reg-blue .icest-reg-number {
    background: #1f77b4;
}

.icest-reg-teal .icest-reg-number {
    background: #008c95;
}

.icest-reg-purple .icest-reg-number {
    background: #7e57c2;
}

.icest-reg-card:hover .icest-reg-number {
    transform: rotate(7deg) scale(1.10);

    box-shadow:
        0 6px 14px rgba(0,0,0,.17);
}


.icest-reg-card h3 {
    margin: 0 0 8px !important;

    color: #073b5c !important;

    font-size: 19px !important;
    font-weight: 800 !important;

    transition: color .25s ease;
}

.icest-reg-blue:hover h3 {
    color: #1f77b4 !important;
}

.icest-reg-teal:hover h3 {
    color: #008c95 !important;
}

.icest-reg-purple:hover h3 {
    color: #7e57c2 !important;
}


.icest-reg-card p {
    margin: 0 !important;

    color: #5b6e78;

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


/* =========================================================
   SPEAKER CARDS
   ========================================================= */

.icest-speaker-card {
    padding: 24px 20px;

    text-align: center;
}

.icest-speaker-blue {
    border-top: 6px solid #1f77b4;
}

.icest-speaker-teal {
    border-top: 6px solid #008c95;
}

.icest-speaker-purple {
    border-top: 6px solid #7e57c2;
}


/* Speaker placeholder */

.icest-speaker-avatar {
    display: flex;

    width: 68px;
    height: 68px;

    margin: 0 auto 15px;

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

    color: #ffffff;

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

    border-radius: 50%;

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

.icest-speaker-blue .icest-speaker-avatar {
    background: #1f77b4;
}

.icest-speaker-teal .icest-speaker-avatar {
    background: #008c95;
}

.icest-speaker-purple .icest-speaker-avatar {
    background: #7e57c2;
}


.icest-speaker-card:hover
.icest-speaker-avatar {
    transform: scale(1.12) rotate(5deg);

    box-shadow:
        0 7px 17px rgba(0,0,0,.18);
}


.icest-speaker-card h3 {
    margin: 0 0 7px !important;

    color: #073b5c !important;

    font-size: 19px !important;
    font-weight: 800 !important;

    transition: color .25s ease;
}

.icest-speaker-blue:hover h3 {
    color: #1f77b4 !important;
}

.icest-speaker-teal:hover h3 {
    color: #008c95 !important;
}

.icest-speaker-purple:hover h3 {
    color: #7e57c2 !important;
}


.icest-speaker-card p {
    margin: 0 !important;

    color: #5b6e78;

    font-size: 14px;
}


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

@media (max-width: 650px) {

    .icest-reg-card:hover,
    .icest-speaker-card:hover {
        transform: translateY(-3px);
    }

    .icest-reg-card {
        padding: 20px;
    }

    .icest-speaker-card {
        padding: 22px 18px;
    }
}
<!-- ICEST 2025 -->

<a
  class="icest-past-publisher"
  href="https://ieeexplore.ieee.org/xpl/conhome/11428296/proceeding"
  target="_blank"
  rel="noopener">
  <span>
    Published in<br>
    IEEE Xplore
  </span>
</a>




/* =========================================================
   ICEST PAST CONFERENCE - PUBLICATION AWARD SEAL
   ========================================================= */

/* Year on left, publication badge on right */
.icest-past-headrow {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 20px;
    min-height: 108px;
    margin-bottom: 12px;
}


/* Publication seal */
.icest-pub-seal {
    position: relative !important;

    display: flex !important;
    width: 104px !important;
    height: 104px !important;

    flex: 0 0 104px !important;

    align-items: center !important;
    justify-content: center !important;

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

    color: #073b5c !important;
    text-decoration: none !important;

    background: transparent !important;
    border: 0 !important;

    transition:
        transform .3s ease,
        filter .3s ease;
}


/* Gold serrated outer seal */
.icest-pub-seal::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 104px;
    height: 104px;

    z-index: 1;

    background:
        linear-gradient(
            145deg,
            #ffe58b 0%,
            #e5b83c 45%,
            #b9820c 100%
        );

    clip-path: polygon(
        50% 0%,
        59% 11%,
        71% 5%,
        76% 18%,
        90% 17%,
        89% 31%,
        100% 40%,
        91% 50%,
        100% 60%,
        89% 69%,
        90% 83%,
        76% 82%,
        71% 95%,
        59% 89%,
        50% 100%,
        41% 89%,
        29% 95%,
        24% 82%,
        10% 83%,
        11% 69%,
        0% 60%,
        9% 50%,
        0% 40%,
        11% 31%,
        10% 17%,
        24% 18%,
        29% 5%,
        41% 11%
    );

    filter:
        drop-shadow(0 5px 6px rgba(0,0,0,.18));
}


/* White centre */
.icest-pub-seal-inner {
    position: relative;
    z-index: 3;

    display: flex;

    width: 72px;
    height: 72px;

    padding: 6px;

    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    background: #fffdf6;

    border: 3px solid #ffffff;
    border-radius: 50%;

    box-shadow:
        0 0 0 3px #a97812;

    color: #6d560f !important;

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


.icest-pub-seal-inner strong {
    display: block;

    margin-top: 3px;

    color: #073b5c !important;

    font-size: 10px;
    font-weight: 800;
    line-height: 1.15;
}


/* Red ribbon tails */
.icest-seal-tail {
    position: absolute;

    top: 77px;

    width: 29px;
    height: 47px;

    z-index: 0;

    background:
        linear-gradient(
            135deg,
            #d84039,
            #a92027
        );

    clip-path: polygon(
        0 0,
        100% 0,
        100% 100%,
        50% 79%,
        0 100%
    );
}


.icest-seal-tail-left {
    left: 23px;

    transform: rotate(8deg);
}


.icest-seal-tail-right {
    right: 23px;

    transform: rotate(-8deg);
}


/* Hover animation */
.icest-pub-seal:hover {
    transform:
        translateY(-4px)
        rotate(4deg)
        scale(1.07);

    filter:
        drop-shadow(0 7px 8px rgba(0,0,0,.20));
}


/* Keep year circle aligned */
.icest-past-headrow .icest-past-year {
    margin-bottom: 0 !important;
}


/* Mobile */
@media (max-width: 650px) {

    .icest-past-headrow {
        min-height: 94px;
    }

    .icest-pub-seal {
        width: 88px !important;
        height: 88px !important;

        flex: 0 0 88px !important;
    }

    .icest-pub-seal::before {
        width: 88px;
        height: 88px;
    }

    .icest-pub-seal-inner {
        width: 60px;
        height: 60px;

        font-size: 8px;
    }

    .icest-pub-seal-inner strong {
        font-size: 9px;
    }

    .icest-seal-tail {
        top: 66px;

        width: 24px;
        height: 39px;
    }

    .icest-seal-tail-left {
        left: 20px;
    }

    .icest-seal-tail-right {
        right: 20px;
    }
}
/* =========================================================
   PAST CONFERENCES - FORCE YEAR LEFT / BADGE RIGHT
   ========================================================= */

.icest-past-card-v2 {
    position: relative !important;
    padding: 150px 24px 28px !important;
    min-height: 330px;
}

/* YEAR - TOP LEFT */
.icest-past-year-v2 {
    position: absolute !important;
    top: 25px !important;
    left: 24px !important;
    right: auto !important;

    display: flex !important;
    width: 62px !important;
    height: 62px !important;

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

    margin: 0 !important;

    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;

    border-radius: 50%;

    z-index: 5;
}

.icest-past-card-2025 .icest-past-year-v2 {
    background: #008c95;
}

.icest-past-card-2023 .icest-past-year-v2 {
    background: #7e57c2;
}


/* PUBLICATION MEDAL - TOP RIGHT */
.icest-pub-seal-v2 {
    position: absolute !important;
    top: 18px !important;
    right: 20px !important;
    left: auto !important;
    bottom: auto !important;

    display: flex !important;

    width: 108px !important;
    height: 108px !important;

    align-items: center !important;
    justify-content: center !important;

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

    text-decoration: none !important;

    background: transparent !important;
    border: 0 !important;

    z-index: 6 !important;

    transition:
        transform .3s ease,
        filter .3s ease;
}


/* GOLD STAR */
.icest-pub-seal-v2::before {
    content: "";

    position: absolute;

    width: 105px;
    height: 105px;

    background:
        linear-gradient(
            145deg,
            #ffe77f,
            #e5b52e 55%,
            #b37a09
        );

    clip-path: polygon(
        50% 0%,
        59% 12%,
        71% 5%,
        76% 19%,
        90% 17%,
        88% 32%,
        100% 40%,
        91% 50%,
        100% 60%,
        88% 68%,
        90% 83%,
        76% 81%,
        71% 95%,
        59% 88%,
        50% 100%,
        41% 88%,
        29% 95%,
        24% 81%,
        10% 83%,
        12% 68%,
        0% 60%,
        9% 50%,
        0% 40%,
        12% 32%,
        10% 17%,
        24% 19%,
        29% 5%,
        41% 12%
    );

    filter:
        drop-shadow(0 5px 7px rgba(0,0,0,.20));

    z-index: 1;
}


/* WHITE INNER CIRCLE */
.icest-pub-seal-v2 .icest-pub-inner-v2 {
    position: relative;

    display: flex;

    width: 72px;
    height: 72px;

    align-items: center;
    justify-content: center;
    flex-direction: column;

    padding: 5px;

    color: #7b5c08 !important;
    text-align: center;

    font-size: 9px;
    font-weight: 700;
    line-height: 1.15;

    background: #fffdf5;

    border: 3px solid #ffffff;
    border-radius: 50%;

    box-shadow:
        0 0 0 3px #a97812;

    z-index: 3;
}

.icest-pub-inner-v2 strong {
    display: block;

    margin-top: 3px;

    color: #073b5c !important;

    font-size: 10px;
    font-weight: 800;
    line-height: 1.15;
}


/* RIBBONS */
.icest-pub-ribbon-v2 {
    position: absolute;

    top: 78px;

    width: 28px;
    height: 48px;

    background:
        linear-gradient(
            135deg,
            #d83c36,
            #a91d25
        );

    clip-path: polygon(
        0 0,
        100% 0,
        100% 100%,
        50% 78%,
        0 100%
    );

    z-index: 0;
}

.icest-pub-ribbon-left-v2 {
    left: 25px;
    transform: rotate(9deg);
}

.icest-pub-ribbon-right-v2 {
    right: 25px;
    transform: rotate(-9deg);
}


/* HOVER */
.icest-pub-seal-v2:hover {
    transform:
        translateY(-4px)
        rotate(4deg)
        scale(1.07);

    filter:
        drop-shadow(0 7px 8px rgba(0,0,0,.18));
}

.icest-past-card-v2:hover .icest-past-year-v2 {
    transform: scale(1.08);
}


/* MOBILE */
@media (max-width: 650px) {

    .icest-past-card-v2 {
        padding: 135px 20px 24px !important;
    }

    .icest-past-year-v2 {
        top: 22px !important;
        left: 20px !important;

        width: 56px !important;
        height: 56px !important;
    }

    .icest-pub-seal-v2 {
        top: 14px !important;
        right: 15px !important;

        width: 95px !important;
        height: 95px !important;
    }

    .icest-pub-seal-v2::before {
        width: 92px;
        height: 92px;
    }

    .icest-pub-seal-v2 .icest-pub-inner-v2 {
        width: 62px;
        height: 62px;

        font-size: 8px;
    }

    .icest-pub-inner-v2 strong {
        font-size: 9px;
    }

    .icest-pub-ribbon-v2 {
        top: 68px;

        width: 24px;
        height: 40px;
    }

    .icest-pub-ribbon-left-v2 {
        left: 22px;
    }

    .icest-pub-ribbon-right-v2 {
        right: 22px;
    }
}

/* =========================================================
   ICEST 2027 ORGANIZING COMMITTEE
   ========================================================= */

.icest-org-wrap {
    max-width: 1100px;
    margin: 0 auto 50px;
    padding: 10px;
}


/* SECTION HEADINGS */

.icest-org-section-heading {
    margin: 38px 0 23px;
    text-align: center;
}

.icest-org-section-heading span {
    display: inline-block;
    position: relative;

    padding: 8px 22px;

    color: #073b5c;
    font-size: 23px;
    font-weight: 800;

    background: #ffffff;
}

.icest-org-section-heading span::before,
.icest-org-section-heading span::after {
    content: "";

    position: absolute;
    top: 50%;

    width: 65px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #008c95,
        #7e57c2
    );
}

.icest-org-section-heading span::before {
    right: 100%;
}

.icest-org-section-heading span::after {
    left: 100%;
}


/* =========================================================
   LEADERSHIP HIERARCHY
   ========================================================= */

.icest-org-leadership {
    padding: 30px 25px;

    background:
        linear-gradient(
            180deg,
            #f7fbfc 0%,
            #ffffff 100%
        );

    border: 1px solid #dde8ec;
    border-radius: 16px;

    box-shadow:
        0 8px 25px rgba(0,0,0,.07);
}


/* Patron */

.icest-org-patron {
    max-width: 470px;
    margin: 0 auto;

    padding: 25px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #d8e4e8;
    border-top: 7px solid #008c95;
    border-radius: 14px;

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

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

.icest-org-patron:hover {
    transform: translateY(-6px);

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

.icest-org-patron img {
    width: 165px !important;
    height: 165px !important;

    margin: 0 auto 16px !important;

    object-fit: cover !important;

    border-radius: 12px !important;

    box-shadow:
        0 6px 16px rgba(0,0,0,.12);
}


/* Hierarchy connectors */

.icest-org-connector {
    width: 3px;
    height: 31px;

    margin: 0 auto;

    background:
        linear-gradient(
            #008c95,
            #7e57c2
        );
}


/* Core leadership */

.icest-org-core-grid {
    display: grid;

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

    gap: 18px;
}

.icest-org-lead-card {
    padding: 21px 17px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #dce5ea;
    border-top: 6px solid #7e57c2;
    border-radius: 12px;

    box-shadow:
        0 6px 18px rgba(0,0,0,.07);

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

.icest-org-lead-card:hover {
    transform: translateY(-6px);

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

.icest-org-lead-card img,
.icest-org-lead-card .icest-org-avatar {
    width: 125px !important;
    height: 125px !important;

    margin: 0 auto 14px !important;

    object-fit: cover !important;

    border-radius: 10px !important;
}


/* Technical Leadership */

.icest-org-subheading {
    margin: 3px 0 18px;

    text-align: center;

    color: #073b5c;

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

.icest-org-tech-grid {
    display: grid;

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

    gap: 15px;
}

.icest-org-tech-card {
    padding: 18px 13px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #dce5ea;
    border-top: 5px solid #008c95;
    border-radius: 11px;

    box-shadow:
        0 5px 15px rgba(0,0,0,.06);

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

.icest-org-tech-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 12px 25px rgba(0,0,0,.13);
}

.icest-org-tech-card img,
.icest-org-tech-card .icest-org-avatar {
    width: 100px !important;
    height: 100px !important;

    margin: 0 auto 12px !important;

    object-fit: cover !important;

    border-radius: 50% !important;
}


/* =========================================================
   MEMBER CARDS
   ========================================================= */

.icest-org-member-grid {
    display: grid;

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

    gap: 16px;
}

.icest-org-member {
    display: flex;

    min-height: 135px;

    align-items: center;

    gap: 17px;

    padding: 16px;

    background: #ffffff;

    border: 1px solid #dce5ea;
    border-left: 5px solid #008c95;
    border-radius: 11px;

    box-shadow:
        0 4px 14px rgba(0,0,0,.055);

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

.icest-org-member:hover {
    transform: translateY(-4px);

    border-left-color: #7e57c2;

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

.icest-org-member img,
.icest-org-member .icest-org-avatar {
    width: 105px !important;
    height: 105px !important;

    flex: 0 0 105px;

    object-fit: cover !important;

    border-radius: 9px !important;
}


/* Initial avatar */

.icest-org-avatar {
    display: flex;

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

    color: #ffffff;

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

    background:
        linear-gradient(
            135deg,
            #073b5c,
            #008c95
        );
}


/* Typography */

.icest-org-role {
    margin-bottom: 5px;

    color: #008c95;

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

    text-transform: uppercase;

    letter-spacing: .025em;
}

.icest-org-patron .icest-org-role {
    font-size: 16px;
}

.icest-org-name {
    margin-bottom: 5px;

    color: #073b5c;

    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
}

.icest-org-affiliation {
    color: #596d76;

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

.icest-org-tech-card .icest-org-name {
    font-size: 15px;
}

.icest-org-tech-card .icest-org-affiliation {
    font-size: 12px;
}


/* Empty / upcoming section */

.icest-org-note {
    padding: 22px;

    text-align: center;

    color: #5b6e78;

    background: #f6fafb;

    border: 1px solid #dce5ea;
    border-left: 5px solid #008c95;
    border-radius: 9px;
}


/* MOBILE */

@media (max-width: 850px) {

    .icest-org-tech-grid {
        grid-template-columns:
            repeat(2, minmax(0,1fr));
    }

}

@media (max-width: 700px) {

    .icest-org-core-grid,
    .icest-org-member-grid,
    .icest-org-tech-grid {
        grid-template-columns: 1fr;
    }

    .icest-org-leadership {
        padding: 22px 15px;
    }

    .icest-org-section-heading span::before,
    .icest-org-section-heading span::after {
        width: 30px;
    }

    .icest-org-member {
        min-height: 0;
    }

}

@media (max-width: 480px) {

    .icest-org-member {
        align-items: flex-start;

        gap: 13px;

        padding: 13px;
    }

    .icest-org-member img,
    .icest-org-member .icest-org-avatar {
        width: 78px !important;
        height: 78px !important;

        flex: 0 0 78px;

        font-size: 17px;
    }

    .icest-org-name {
        font-size: 16px;
    }

    .icest-org-affiliation {
        font-size: 12px;
    }

}
/* =========================================================
   ORGANIZING COMMITTEE - LEADERSHIP HIERARCHY V2
   Append at END of existing CSS
   ========================================================= */

/* Patron-to-leadership vertical line */
.icest-org-tree-stem {
    width: 3px;
    height: 34px;
    margin: 0 auto;
    background: linear-gradient(#008c95,#7e57c2);
}


/* =========================================================
   THREE-CHAIR BRANCH - DESKTOP
   ========================================================= */

.icest-org-branch-wrap {
    position: relative;
    padding-top: 26px;
}

/* Horizontal branch line */
.icest-org-branch-wrap::before {
    content: "";
    position: absolute;

    top: 0;
    left: 16.66%;
    right: 16.66%;

    height: 3px;

    background: linear-gradient(
        90deg,
        #008c95,
        #466da5,
        #7e57c2
    );

    border-radius: 3px;
}

/* Small vertical connection from central stem to branch */
.icest-org-branch-wrap::after {
    content: "";
    position: absolute;

    top: -1px;
    left: 50%;

    width: 3px;
    height: 27px;

    transform: translateX(-50%);

    background: #466da5;
}


/* Override earlier grid */
.icest-org-core-grid-v2 {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 18px !important;
}


/* Vertical connection from horizontal branch to each card */
.icest-org-core-grid-v2 .icest-org-lead-card {
    position: relative;
}

.icest-org-core-grid-v2 .icest-org-lead-card::before {
    content: "";
    position: absolute;

    top: -28px;
    left: 50%;

    width: 3px;
    height: 28px;

    transform: translateX(-50%);

    background: #466da5;
}


/* =========================================================
   GENERAL CHAIR - CENTRED BELOW LEADERSHIP
   ========================================================= */

.icest-org-general-wrap {
    max-width: 590px;
    margin: 0 auto;
}

.icest-org-general-card {
    display: flex;
    align-items: center;
    gap: 20px;

    padding: 20px;

    background: #ffffff;

    border: 1px solid #dce5ea;
    border-top: 6px solid #073b5c;
    border-radius: 13px;

    box-shadow: 0 7px 20px rgba(0,0,0,.08);

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

.icest-org-general-card:hover {
    transform: translateY(-6px);

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

.icest-org-general-card img {
    width: 125px !important;
    height: 125px !important;

    flex: 0 0 125px;

    object-fit: cover !important;

    border-radius: 10px !important;
}


/* Label between leadership layers */
.icest-org-level-label {
    margin: 7px auto 13px;

    text-align: center;
}

.icest-org-level-label span {
    display: inline-block;

    padding: 5px 13px;

    color: #536974;

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

    text-transform: uppercase;
    letter-spacing: .07em;

    background: #eef5f6;

    border: 1px solid #d5e3e7;
    border-radius: 20px;
}


/* =========================================================
   MOBILE - MAKE HIERARCHY OBVIOUS
   ========================================================= */

@media (max-width: 700px) {

    .icest-org-leadership {
        padding: 22px 14px !important;
    }


    /* Patron remains centred */

    .icest-org-patron {
        max-width: 330px;
    }

    .icest-org-patron img {
        width: 140px !important;
        height: 140px !important;
    }


    /* Short stem beneath Patron */

    .icest-org-tree-stem {
        height: 30px;
    }


    /* Remove desktop horizontal tree */
    .icest-org-branch-wrap {
        padding-top: 0 !important;

        margin-left: 20px;

        padding-left: 24px;

        border-left: 3px solid #466da5;
    }

    .icest-org-branch-wrap::before,
    .icest-org-branch-wrap::after {
        display: none !important;
    }


    /* Stack the three chairs */
    .icest-org-core-grid-v2 {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }


    /* Horizontal branch from vertical rail into each chair */
    .icest-org-core-grid-v2 .icest-org-lead-card::before {
        display: block !important;

        top: 37px !important;
        left: -25px !important;

        width: 25px !important;
        height: 3px !important;

        transform: none !important;

        background: #466da5;
    }


    /* Make leadership cards image-left on mobile */
    .icest-org-core-grid-v2 .icest-org-lead-card {
        display: flex;

        align-items: center;

        gap: 15px;

        padding: 15px;

        text-align: left;
    }

    .icest-org-core-grid-v2 .icest-org-lead-card img,
    .icest-org-core-grid-v2 .icest-org-lead-card .icest-org-avatar {
        width: 82px !important;
        height: 82px !important;

        flex: 0 0 82px;

        margin: 0 !important;
    }


    /* General Chair */

    .icest-org-general-card {
        gap: 14px;

        padding: 15px;
    }

    .icest-org-general-card img {
        width: 90px !important;
        height: 90px !important;

        flex: 0 0 90px;
    }

}


@media (max-width: 430px) {

    .icest-org-branch-wrap {
        margin-left: 12px;

        padding-left: 20px;
    }

    .icest-org-core-grid-v2 .icest-org-lead-card::before {
        left: -21px !important;
        width: 21px !important;
    }

    .icest-org-core-grid-v2 .icest-org-lead-card img,
    .icest-org-core-grid-v2 .icest-org-lead-card .icest-org-avatar {
        width: 72px !important;
        height: 72px !important;

        flex-basis: 72px;
    }

    .icest-org-general-card img {
        width: 78px !important;
        height: 78px !important;

        flex-basis: 78px;
    }

}
/* =========================================================
   ORGANIZING COMMITTEE - SINGLE COLUMN FINAL LAYOUT
   Add at the VERY END of existing CSS
   ========================================================= */

/* Remove all hierarchy/tree lines */
.icest-org-tree-stem,
.icest-org-branch-wrap::before,
.icest-org-branch-wrap::after,
.icest-org-core-grid-v2 .icest-org-lead-card::before {
    display: none !important;
}


/* Remove hierarchy spacing */
.icest-org-branch-wrap {
    padding-top: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}


/* =========================================================
   LEADERSHIP - ONE PERSON PER ROW
   ========================================================= */

.icest-org-core-grid,
.icest-org-core-grid-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
}


/* Patron becomes a wide horizontal card */
.icest-org-patron {
    display: grid !important;

    grid-template-columns: 150px 1fr !important;
    grid-template-rows: auto auto auto !important;

    column-gap: 22px !important;

    align-items: center !important;

    width: 100% !important;
    max-width: none !important;

    padding: 18px !important;
    margin: 0 0 16px !important;

    text-align: left !important;

    border-top: 0 !important;
    border-left: 6px solid #008c95 !important;
}


/* Patron image */
.icest-org-patron img {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;

    width: 130px !important;
    height: 130px !important;

    margin: 0 !important;

    object-fit: cover !important;

    border-radius: 10px !important;
}


/* Patron text */
.icest-org-patron .icest-org-role,
.icest-org-patron .icest-org-name,
.icest-org-patron .icest-org-affiliation {
    grid-column: 2 !important;
}


/* Other leadership cards */
.icest-org-lead-card {
    display: flex !important;

    align-items: center !important;

    gap: 22px !important;

    width: 100% !important;

    padding: 18px !important;

    text-align: left !important;

    border-top: 0 !important;
    border-left: 6px solid #7e57c2 !important;
}


.icest-org-lead-card img,
.icest-org-lead-card .icest-org-avatar {
    width: 130px !important;
    height: 130px !important;

    flex: 0 0 130px !important;

    margin: 0 !important;

    object-fit: cover !important;

    border-radius: 10px !important;
}


/* =========================================================
   ALL OTHER COMMITTEE SECTIONS - ONE COLUMN
   ========================================================= */

.icest-org-member-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}


/* Slightly wider, cleaner row cards */
.icest-org-member {
    width: 100% !important;

    min-height: 135px !important;

    padding: 17px 20px !important;

    gap: 20px !important;
}


.icest-org-member img,
.icest-org-member .icest-org-avatar {
    width: 110px !important;
    height: 110px !important;

    flex: 0 0 110px !important;
}


/* =========================================================
   SECTION HEADINGS
   ========================================================= */

.icest-org-section-heading {
    margin-top: 38px !important;
    margin-bottom: 18px !important;
}


/* First section slightly closer to top */
.icest-org-wrap > .icest-org-section-heading:first-child {
    margin-top: 10px !important;
}


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

@media (max-width: 600px) {

    /* Patron stacks neatly */
    .icest-org-patron {
        display: flex !important;

        flex-direction: column !important;

        align-items: center !important;

        text-align: center !important;

        gap: 4px !important;

        padding: 18px !important;
    }


    .icest-org-patron img {
        width: 115px !important;
        height: 115px !important;

        margin: 0 auto 10px !important;
    }


    /* Leadership rows */
    .icest-org-lead-card {
        gap: 14px !important;

        padding: 14px !important;
    }


    .icest-org-lead-card img,
    .icest-org-lead-card .icest-org-avatar {
        width: 82px !important;
        height: 82px !important;

        flex: 0 0 82px !important;
    }


    /* Normal committee rows */
    .icest-org-member {
        gap: 13px !important;

        padding: 13px !important;

        min-height: 0 !important;
    }


    .icest-org-member img,
    .icest-org-member .icest-org-avatar {
        width: 78px !important;
        height: 78px !important;

        flex: 0 0 78px !important;
    }


    .icest-org-name {
        font-size: 16px !important;
    }


    .icest-org-role {
        font-size: 11px !important;
    }


    .icest-org-affiliation {
        font-size: 12px !important;
    }
}
/* =========================================================
   ORGANIZING COMMITTEE - FINAL CLEANUP
   Remove Leadership Box + Personal Profile Links
   ========================================================= */


/* Remove outer Conference Leadership container box */
.icest-org-leadership {
    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}


/* =========================================================
   CLICKABLE PERSON NAME
   ========================================================= */

.icest-org-person-link {
    color: #073b5c !important;

    text-decoration: none !important;

    transition:
        color .25s ease;
}

.icest-org-person-link:hover {
    color: #008c95 !important;
}


/* =========================================================
   VIEW PROFILE BUTTON
   ========================================================= */

.icest-org-profile-link {
    display: inline-block;

    margin-top: 10px;
    padding: 6px 12px;

    color: #008c95 !important;

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

    text-decoration: none !important;

    background: #eef8f8;

    border: 1px solid #bcdede;
    border-radius: 18px;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.icest-org-profile-link:hover {
    color: #ffffff !important;

    background: #008c95;

    transform: translateX(3px);

    box-shadow:
        0 4px 10px rgba(0,140,149,.20);
}


/* Small arrow */
.icest-org-profile-link::after {
    content: " →";

    margin-left: 3px;
}


/* Mobile */
@media (max-width: 600px) {

    .icest-org-profile-link {
        margin-top: 7px;

        padding: 5px 10px;

        font-size: 10px;
    }

}
/* =========================================================
   ORGANIZING COMMITTEE - FINAL PROFILE LINK / PHOTO FIX
   ========================================================= */

/* Remove any remaining leadership box */
.icest-org-leadership {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* One column everywhere */
.icest-org-member-grid,
.icest-org-core-grid,
.icest-org-core-grid-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

/* Consistent portrait/photo presentation */
.icest-org-member img {
    width: 110px !important;
    height: 110px !important;
    flex: 0 0 110px !important;

    object-fit: cover !important;

    /* Circular image removes the square appearance */
    border-radius: 50% !important;

    box-shadow: 0 4px 12px rgba(0,0,0,.10);
}

/* Initial placeholders also circular */
.icest-org-member .icest-org-avatar {
    width: 110px !important;
    height: 110px !important;
    flex: 0 0 110px !important;

    border-radius: 50% !important;
}

/* Clickable name */
.icest-org-person-link {
    color: #073b5c !important;
    text-decoration: none !important;
    transition: color .25s ease;
}

.icest-org-person-link:hover {
    color: #008c95 !important;
}

/* View Profile */
.icest-org-profile-link {
    display: inline-block;

    margin-top: 9px;
    padding: 5px 11px;

    color: #008c95 !important;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;

    text-decoration: none !important;

    background: #eef8f8;

    border: 1px solid #badede;
    border-radius: 18px;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.icest-org-profile-link::after {
    content: " →";
}

.icest-org-profile-link:hover {
    color: #ffffff !important;
    background: #008c95;

    transform: translateX(3px);

    box-shadow: 0 4px 10px rgba(0,140,149,.20);
}

/* Mobile */
@media (max-width: 600px) {

    .icest-org-member img,
    .icest-org-member .icest-org-avatar {
        width: 78px !important;
        height: 78px !important;
        flex: 0 0 78px !important;
    }

    .icest-org-profile-link {
        margin-top: 6px;
        padding: 5px 9px;
        font-size: 10px;
    }
}


/* =========================================================
   ICEST 2027 FOOTER - FINAL
   One footer definition only.
   Designed not to alter normal page content.
   ========================================================= */

/* OJS footer wrappers only */
.pkp_structure_footer_wrapper,
.pkp_structure_footer,
.site-footer {
    margin-top: 0 !important;
    padding-top: 0 !important;
    background: #ffffff !important;
    border-top: 0 !important;
}

/* Make only the footer container full width */
.pkp_structure_footer_wrapper > .container,
.pkp_structure_footer > .container,
.pkp_structure_footer_wrapper .container {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

/*
   Remove the theme's bottom space immediately before the footer.
   This does not change margins/padding inside individual ICEST pages.
*/
.pkp_structure_content {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Custom footer itself */
.icest-simple-footer {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    color: #263746 !important;
    background: transparent !important;
    font-size: 14px;
    line-height: 1.35 !important;
}

/* Three columns - centered as one group on desktop */
.icest-simple-footer .icest-footer-columns {
    display: grid !important;
    width: calc(100% - 64px) !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 14px 0 10px !important;
    box-sizing: border-box !important;
    grid-template-columns: 1.35fr 1.15fr .8fr !important;
    column-gap: 52px !important;
    row-gap: 12px !important;
    align-items: start !important;
}

/* Tight typography */
.icest-simple-footer p {
    margin: 0 0 4px !important;
    padding: 0 !important;
    line-height: 1.35 !important;
}

.icest-simple-footer .icest-footer-title {
    margin: 0 0 6px !important;
    color: #073b5c !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: 1.2px !important;
}

.icest-simple-footer .icest-footer-heading {
    margin: 0 0 6px !important;
    color: #101820 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: 1.3px !important;
    text-transform: uppercase !important;
}

.icest-simple-footer .icest-footer-about p,
.icest-simple-footer .icest-footer-contact p,
.icest-simple-footer .icest-footer-links p {
    margin-bottom: 4px !important;
    line-height: 1.35 !important;
}

.icest-simple-footer .icest-footer-about p {
    max-width: 440px !important;
    color: #526473 !important;
}

/* Links */
.icest-simple-footer a {
    color: #075985 !important;
    text-decoration: none !important;
}

.icest-simple-footer a:hover,
.icest-simple-footer a:focus {
    color: #008c95 !important;
    text-decoration: underline !important;
}

.icest-simple-footer .icest-footer-links a {
    line-height: 1.3 !important;
}

/* Social row */
.icest-simple-footer .icest-footer-social {
    display: flex !important;
    width: calc(100% - 64px) !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 3px 0 10px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    flex-wrap: wrap !important;
}

/* Keep existing icon design but slightly more compact */
.icest-simple-footer .icest-social-icon {
    width: 42px !important;
    height: 42px !important;
}

/* Copyright */
.icest-simple-footer .icest-footer-copyright {
    width: calc(100% - 64px) !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 9px 0 10px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    background: transparent !important;
    border-top: 1px solid #e5eaee !important;
}

.icest-simple-footer .icest-footer-copyright p {
    margin: 0 !important;
    color: #526473 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
}

/* Hide default PKP branding */
.pkp_brand_footer,
.footer-brand-image,
.site-footer a[href*="aboutThisPublishingSystem"],
.pkp_structure_footer a[href*="aboutThisPublishingSystem"],
.pkp_structure_footer_wrapper a[href*="aboutThisPublishingSystem"] {
    display: none !important;
}


/* Tablet */
@media (max-width: 900px) {
    .icest-simple-footer .icest-footer-columns {
        width: calc(100% - 48px) !important;
        grid-template-columns: 1fr 1fr !important;
        column-gap: 36px !important;
        row-gap: 18px !important;
        padding-top: 14px !important;
    }

    .icest-simple-footer .icest-footer-links {
        grid-column: 1 / -1 !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100% - 48px) !important;
    }
}


/* Mobile */
@media (max-width: 600px) {
    .icest-simple-footer .icest-footer-columns {
        display: block !important;
        width: calc(100% - 36px) !important;
        padding: 12px 0 6px !important;
    }

    .icest-simple-footer .icest-footer-about,
    .icest-simple-footer .icest-footer-contact,
    .icest-simple-footer .icest-footer-links {
        margin-bottom: 14px !important;
    }

    .icest-simple-footer .icest-footer-title {
        font-size: 22px !important;
    }

    .icest-simple-footer p {
        margin-bottom: 3px !important;
        line-height: 1.32 !important;
    }

    .icest-simple-footer .icest-footer-social {
        width: calc(100% - 36px) !important;
        justify-content: flex-start !important;
        padding: 2px 0 10px !important;
    }

    .icest-simple-footer .icest-footer-copyright {
        width: calc(100% - 36px) !important;
        padding: 8px 0 !important;
        text-align: left !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - VIEWPORT CENTERING FIX
   Final override:
   - centers footer against the browser window, not OJS column
   - reduces the large blank gap above the footer
   - scoped to the custom ICEST footer
   ========================================================= */

/*
   The Health Sciences/OJS layout can place the footer inside
   an offset Bootstrap/content container. Break the custom
   footer out to the full browser viewport.
*/
.icest-simple-footer {
    position: relative !important;
    left: 50% !important;

    width: 100vw !important;
    max-width: 100vw !important;

    margin-top: -78px !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: -50vw !important;

    padding: 0 !important;
    box-sizing: border-box !important;

    background: transparent !important;
}


/* True viewport-centred three-column group */
.icest-simple-footer .icest-footer-columns {
    width: min(1120px, calc(100vw - 64px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-top: 14px !important;
    padding-right: 0 !important;
    padding-bottom: 10px !important;
    padding-left: 0 !important;

    box-sizing: border-box !important;

    grid-template-columns: 1.35fr 1.15fr .8fr !important;
    column-gap: 52px !important;
}


/* Centre social icons against viewport too */
.icest-simple-footer .icest-footer-social {
    width: min(1120px, calc(100vw - 64px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* Centre copyright rule/text against viewport */
.icest-simple-footer .icest-footer-copyright {
    width: min(1120px, calc(100vw - 64px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}


/*
   Remove footer-wrapper spacing only when that wrapper contains
   the custom ICEST footer. :has() is supported by current Chrome,
   Edge, Safari and Firefox versions.
*/
.pkp_structure_footer_wrapper:has(.icest-simple-footer),
.pkp_structure_footer:has(.icest-simple-footer) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Tablet */
@media (max-width: 900px) {

    .icest-simple-footer {
        margin-top: -55px !important;
    }

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 48px) !important;
    }
}


/* Mobile */
@media (max-width: 600px) {

    .icest-simple-footer {
        margin-top: -35px !important;
    }

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 36px) !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - VISUAL CENTERING / BALANCED COLUMNS
   ========================================================= */

/*
   The footer was mathematically centered, but the unequal
   1.35 / 1.15 / .8 column proportions made it look left-heavy.
   Use three equal columns and a slightly narrower content area.
*/
.icest-simple-footer .icest-footer-columns {
    width: min(960px, calc(100vw - 64px)) !important;
    max-width: 960px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 48px !important;

    justify-content: center !important;
    align-items: start !important;
}

/* Keep each column naturally aligned within its equal-width cell */
.icest-simple-footer .icest-footer-about,
.icest-simple-footer .icest-footer-contact,
.icest-simple-footer .icest-footer-links {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
}

/* Keep the about paragraph from becoming too wide */
.icest-simple-footer .icest-footer-about p {
    max-width: 300px !important;
}

/* Match social row and copyright width to the balanced footer */
.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-copyright {
    width: min(960px, calc(100vw - 64px)) !important;
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* Tablet */
@media (max-width: 900px) {
    .icest-simple-footer .icest-footer-columns {
        width: calc(100vw - 48px) !important;
        grid-template-columns: 1fr 1fr !important;
        column-gap: 36px !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 48px) !important;
    }
}


/* Mobile */
@media (max-width: 600px) {
    .icest-simple-footer .icest-footer-columns {
        display: block !important;
        width: calc(100vw - 36px) !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 36px) !important;
    }

    .icest-simple-footer .icest-footer-about p {
        max-width: none !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - TWO COLUMN VERSION
   Contact column hidden; About + Quick Links remain.
   ========================================================= */

/* Hide the Contact Us column for now */
.icest-simple-footer .icest-footer-contact {
    display: none !important;
}

/* Two-column desktop footer */
.icest-simple-footer .icest-footer-columns {
    width: min(1080px, calc(100vw - 72px)) !important;
    max-width: 1080px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1.65fr) minmax(240px, .75fr) !important;
    column-gap: 90px !important;
    row-gap: 0 !important;

    align-items: start !important;
    justify-content: center !important;

    padding-top: 16px !important;
    padding-bottom: 10px !important;
}

/* Left column */
.icest-simple-footer .icest-footer-about {
    width: 100% !important;
    max-width: none !important;
    text-align: left !important;
}

.icest-simple-footer .icest-footer-about p {
    max-width: 620px !important;
}

/* Right column */
.icest-simple-footer .icest-footer-links {
    width: 100% !important;
    max-width: 280px !important;
    justify-self: end !important;
    text-align: left !important;
}

/* Slightly improve quick-link spacing */
.icest-simple-footer .icest-footer-links p {
    margin-bottom: 3px !important;
}

.icest-simple-footer .icest-footer-links a {
    display: inline-block !important;
    line-height: 1.35 !important;
}

/* Social row follows the two-column width */
.icest-simple-footer .icest-footer-social {
    width: min(1080px, calc(100vw - 72px)) !important;
    max-width: 1080px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    justify-content: center !important;

    padding-top: 6px !important;
    padding-bottom: 12px !important;
}

/* Copyright follows the same width */
.icest-simple-footer .icest-footer-copyright {
    width: min(1080px, calc(100vw - 72px)) !important;
    max-width: 1080px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-top: 9px !important;
    padding-bottom: 10px !important;

    text-align: center !important;
}


/* Tablet */
@media (max-width: 900px) {

    .icest-simple-footer .icest-footer-columns {
        width: calc(100vw - 52px) !important;
        grid-template-columns: 1.4fr .8fr !important;
        column-gap: 48px !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 52px) !important;
    }

    .icest-simple-footer .icest-footer-about p {
        max-width: 520px !important;
    }
}


/* Mobile */
@media (max-width: 600px) {

    .icest-simple-footer .icest-footer-columns {
        display: block !important;
        width: calc(100vw - 36px) !important;
        padding-top: 12px !important;
    }

    .icest-simple-footer .icest-footer-about,
    .icest-simple-footer .icest-footer-links {
        width: 100% !important;
        max-width: none !important;
        margin-bottom: 14px !important;
    }

    .icest-simple-footer .icest-footer-about p {
        max-width: none !important;
    }

    .icest-simple-footer .icest-footer-links {
        justify-self: auto !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 36px) !important;
    }

    .icest-simple-footer .icest-footer-social {
        justify-content: flex-start !important;
    }

    .icest-simple-footer .icest-footer-copyright {
        text-align: left !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - ALIGN WITH MAIN PAGE CONTENT
   Final visual alignment based on the OJS desktop layout.
   ========================================================= */

/*
   OJS places the footer inside a container that is offset left
   relative to the custom page content. The footer width is fine;
   move the complete footer content group right on desktop.
*/
@media (min-width: 901px) {

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        position: relative !important;
        left: 100px !important;
    }
}


/* Medium desktop/laptop screens: use a proportional correction */
@media (min-width: 901px) and (max-width: 1300px) {

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        left: 6.5vw !important;
    }
}


/* Tablet and mobile: no horizontal correction */
@media (max-width: 900px) {

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        position: relative !important;
        left: 0 !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - FINAL SINGLE CENTERED COLUMN
   ========================================================= */

/* Remove any previous desktop horizontal correction */
.icest-simple-footer .icest-footer-columns,
.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-copyright {
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
}


/* ---------------------------------------------------------
   SINGLE CENTERED CONTENT COLUMN
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-columns {
    display: block !important;

    width: min(900px, calc(100vw - 50px)) !important;
    max-width: 900px !important;

    margin: 0 auto !important;
    padding: 14px 0 8px !important;

    box-sizing: border-box !important;

    text-align: center !important;
}


/* Hide Contact column completely */
.icest-simple-footer .icest-footer-contact {
    display: none !important;
}


/* ---------------------------------------------------------
   ICEST 2027 INFORMATION
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-about {
    display: block !important;

    width: 100% !important;
    max-width: 780px !important;

    margin: 0 auto 16px !important;
    padding: 0 !important;

    text-align: center !important;
}


/* ICEST 2027 title */
.icest-simple-footer .icest-footer-title {
    display: block !important;

    width: 100% !important;

    margin: 0 0 7px !important;
    padding: 0 !important;

    color: #073b5c !important;

    font-size: 27px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: 1.2px !important;

    text-align: center !important;
}


/* Restore conference description text colour */
.icest-simple-footer .icest-footer-about p {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 0 5px !important;
    padding: 0 !important;

    color: #526473 !important;

    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;

    text-align: center !important;
}


/* Tagline */
.icest-simple-footer .icest-footer-about em,
.icest-simple-footer .icest-footer-about i,
.icest-simple-footer .icest-footer-tagline {
    color: #073b5c !important;

    font-size: 15px !important;
    font-weight: 700 !important;
    font-style: italic !important;

    text-align: center !important;
}


/* ---------------------------------------------------------
   QUICK LINKS - ONE CENTERED ROW
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-links {
    display: flex !important;

    width: min(790px, calc(100vw - 50px)) !important;
    max-width: 790px !important;

    margin: 12px auto 12px !important;
    padding: 11px 8px !important;

    box-sizing: border-box !important;

    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    gap: 8px 25px !important;

    text-align: center !important;

    border-top: 1px solid #e5eaee !important;
    border-bottom: 1px solid #e5eaee !important;
}


/* Hide Quick Links heading */
.icest-simple-footer .icest-footer-links .icest-footer-heading {
    display: none !important;
}


/* Allow links to form one horizontal row */
.icest-simple-footer .icest-footer-links p {
    display: contents !important;
}


/* Quick links */
.icest-simple-footer .icest-footer-links a {
    display: inline-block !important;

    margin: 0 !important;
    padding: 2px 0 !important;

    color: #075985 !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;

    text-align: center !important;
    text-decoration: none !important;
}

.icest-simple-footer .icest-footer-links a:hover,
.icest-simple-footer .icest-footer-links a:focus {
    color: #008c95 !important;
    text-decoration: underline !important;
}


/* ---------------------------------------------------------
   SOCIAL MEDIA
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-social {
    display: flex !important;

    width: min(790px, calc(100vw - 50px)) !important;
    max-width: 790px !important;

    margin: 0 auto !important;
    padding: 2px 0 12px !important;

    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    gap: 10px !important;

    text-align: center !important;
}


/* ---------------------------------------------------------
   COPYRIGHT
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-copyright {
    display: block !important;

    width: min(900px, calc(100vw - 50px)) !important;
    max-width: 900px !important;

    margin: 0 auto !important;
    padding: 9px 0 0 !important;

    box-sizing: border-box !important;

    border-top: 1px solid #e5eaee !important;

    text-align: center !important;
}

.icest-simple-footer .icest-footer-copyright p {
    margin: 0 !important;
    padding: 0 !important;

    color: #526473 !important;

    font-size: 13px !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


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

@media (max-width: 900px) {

    .icest-simple-footer .icest-footer-columns,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 44px) !important;
    }

    .icest-simple-footer .icest-footer-links,
    .icest-simple-footer .icest-footer-social {
        width: calc(100vw - 50px) !important;
    }
}


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

@media (max-width: 600px) {

    .icest-simple-footer .icest-footer-columns {
        width: calc(100vw - 36px) !important;
        padding-top: 10px !important;
    }

    .icest-simple-footer .icest-footer-about {
        max-width: none !important;
        margin-bottom: 13px !important;
    }

    .icest-simple-footer .icest-footer-title {
        font-size: 23px !important;
    }

    .icest-simple-footer .icest-footer-about p {
        font-size: 13.5px !important;
        line-height: 1.35 !important;
    }

    .icest-simple-footer .icest-footer-links {
        width: calc(100vw - 36px) !important;

        gap: 7px 16px !important;

        padding: 9px 5px !important;
    }

    .icest-simple-footer .icest-footer-links a {
        font-size: 13px !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 36px) !important;
    }

    .icest-simple-footer .icest-footer-copyright p {
        font-size: 12px !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - CENTERED FINAL LAYOUT
   Order:
   1. ICEST 2027 + conference information
   2. Social icons
   3. Quick Links
   4. Copyright
   ========================================================= */

/* Full-width footer anchored to the browser viewport */
.icest-simple-footer {
    position: relative !important;
    left: 50% !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;

    width: 100vw !important;
    max-width: 100vw !important;

    margin: -55px 0 0 -50vw !important;
    padding: 20px 18px 14px !important;

    box-sizing: border-box !important;

    color: #263746 !important;
    background: #ffffff !important;

    text-align: center !important;
}


/*
   Flatten the old column wrapper so About and Quick Links can
   be ordered independently around the social icons.
*/
.icest-simple-footer .icest-footer-columns {
    display: contents !important;
}


/* Hide Contact Us column */
.icest-simple-footer .icest-footer-contact {
    display: none !important;
}


/* =========================================================
   1. ICEST INFORMATION
   ========================================================= */

.icest-simple-footer .icest-footer-about {
    order: 1 !important;

    display: block !important;

    width: min(900px, calc(100vw - 48px)) !important;
    max-width: 900px !important;

    margin: 0 auto 12px !important;
    padding: 0 !important;

    box-sizing: border-box !important;

    text-align: center !important;
}


/* ICEST 2027 - strong conference navy */
.icest-simple-footer .icest-footer-title {
    display: block !important;

    width: 100% !important;

    margin: 0 0 7px !important;
    padding: 0 !important;

    color: #073b5c !important;

    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: 1.2px !important;

    text-align: center !important;
}


/* Conference description */
.icest-simple-footer .icest-footer-about p {
    display: block !important;

    width: 100% !important;
    max-width: 820px !important;

    margin: 0 auto 5px !important;
    padding: 0 !important;

    color: #526473 !important;

    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;

    text-align: center !important;
}


/* Slogan - conference teal */
.icest-simple-footer .icest-footer-about em,
.icest-simple-footer .icest-footer-about i,
.icest-simple-footer .icest-footer-tagline {
    display: inline-block !important;

    color: #008c95 !important;

    font-size: 15px !important;
    font-weight: 800 !important;
    font-style: italic !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


/* Organiser line slightly darker */
.icest-simple-footer .icest-footer-about p:last-child {
    color: #3e5562 !important;
}


/* =========================================================
   2. SOCIAL ICONS - ABOVE QUICK LINKS
   ========================================================= */

.icest-simple-footer .icest-footer-social {
    order: 2 !important;

    display: flex !important;

    width: min(820px, calc(100vw - 48px)) !important;
    max-width: 820px !important;

    margin: 4px auto 12px !important;
    padding: 0 !important;

    box-sizing: border-box !important;

    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    gap: 10px !important;

    text-align: center !important;
}


/* Keep icons centered and compact */
.icest-simple-footer .icest-social-icon {
    position: relative !important;

    display: inline-flex !important;

    width: 42px !important;
    height: 42px !important;

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

    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;

    text-align: center !important;
}


/* =========================================================
   3. QUICK LINKS - CENTERED ROW
   ========================================================= */

.icest-simple-footer .icest-footer-links {
    order: 3 !important;

    display: flex !important;

    width: min(820px, calc(100vw - 48px)) !important;
    max-width: 820px !important;

    margin: 0 auto 12px !important;
    padding: 11px 10px !important;

    box-sizing: border-box !important;

    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    gap: 8px 24px !important;

    text-align: center !important;

    border-top: 1px solid #e1e8ec !important;
    border-bottom: 1px solid #e1e8ec !important;
}


/* Hide Quick Links heading */
.icest-simple-footer .icest-footer-links .icest-footer-heading {
    display: none !important;
}


/* Remove paragraph wrappers from the visual layout */
.icest-simple-footer .icest-footer-links p {
    display: contents !important;
}


/* Quick-link styling */
.icest-simple-footer .icest-footer-links a {
    display: inline-block !important;

    margin: 0 !important;
    padding: 2px 0 !important;

    color: #073b5c !important;

    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: center !important;
    text-decoration: none !important;
}

.icest-simple-footer .icest-footer-links a:hover,
.icest-simple-footer .icest-footer-links a:focus {
    color: #008c95 !important;
    text-decoration: underline !important;
}


/* =========================================================
   4. COPYRIGHT
   ========================================================= */

.icest-simple-footer .icest-footer-copyright {
    order: 4 !important;

    display: block !important;

    width: min(900px, calc(100vw - 48px)) !important;
    max-width: 900px !important;

    margin: 0 auto !important;
    padding: 9px 0 0 !important;

    box-sizing: border-box !important;

    border-top: 1px solid #e1e8ec !important;

    text-align: center !important;
}

.icest-simple-footer .icest-footer-copyright p {
    display: block !important;

    width: 100% !important;

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

    color: #526473 !important;

    font-size: 13px !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


/* =========================================================
   REMOVE OLD OFFSET / ALIGNMENT RULES
   ========================================================= */

.icest-simple-footer .icest-footer-about,
.icest-simple-footer .icest-footer-links,
.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-copyright {
    position: relative !important;

    left: 0 !important;
    right: auto !important;

    float: none !important;

    transform: none !important;
}


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

@media (max-width: 900px) {

    .icest-simple-footer {
        margin-top: -42px !important;
        padding: 18px 16px 13px !important;
    }

    .icest-simple-footer .icest-footer-about,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 40px) !important;
    }

    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-links {
        width: calc(100vw - 44px) !important;
    }
}


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

@media (max-width: 600px) {

    .icest-simple-footer {
        margin-top: -25px !important;
        padding: 16px 14px 11px !important;
    }

    .icest-simple-footer .icest-footer-about,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-links,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100vw - 32px) !important;
    }

    .icest-simple-footer .icest-footer-title {
        font-size: 24px !important;
    }

    .icest-simple-footer .icest-footer-about p {
        font-size: 13.5px !important;
        line-height: 1.35 !important;
    }

    .icest-simple-footer .icest-footer-about em,
    .icest-simple-footer .icest-footer-about i,
    .icest-simple-footer .icest-footer-tagline {
        font-size: 14px !important;
    }

    .icest-simple-footer .icest-footer-social {
        margin-bottom: 10px !important;
    }

    .icest-simple-footer .icest-footer-links {
        gap: 7px 15px !important;
        padding: 9px 5px !important;
    }

    .icest-simple-footer .icest-footer-links a {
        font-size: 13px !important;
    }

    .icest-simple-footer .icest-footer-copyright p {
        font-size: 12px !important;
    }
}
/* =========================================================
   FINAL OJS FOOTER POSITION FIX
   ========================================================= */

@media (min-width: 901px) {

    .pkp_structure_footer_wrapper {
        position: relative !important;
        left: 50% !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: -50vw !important;
        margin-right: 0 !important;
    }

    .pkp_structure_footer_wrapper > .container,
    .pkp_structure_footer .container {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* =========================================================
   ICEST 2027 FOOTER - APPEARANCE ONLY
   Keeps all existing working centering/positioning untouched.
   ========================================================= */

/* No shaded/boxed footer background */
.icest-simple-footer,
.icest-simple-footer .icest-footer-columns,
.icest-simple-footer .icest-footer-about,
.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-links,
.icest-simple-footer .icest-footer-copyright {
    background: transparent !important;
}


/* ICEST 2027 - conference navy */
.icest-simple-footer .icest-footer-title {
    color: #27547d !important;
    font-weight: 900 !important;
}


/* Conference description */
.icest-simple-footer .icest-footer-about p {
    color: #526473 !important;
}


/* Slogan - target actual paragraph structure as well */
.icest-simple-footer .icest-footer-about p:nth-of-type(3),
.icest-simple-footer .icest-footer-tagline,
.icest-simple-footer .icest-footer-about em,
.icest-simple-footer .icest-footer-about i {
    color: #008c95 !important;
    font-weight: 800 !important;
    font-style: italic !important;
}


/* Organiser line */
.icest-simple-footer .icest-footer-about p:last-child {
    color: #42545d !important;
}


/* ---------------------------------------------------------
   QUICK LINKS - pill style, no horizontal box lines
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-links {
    border-top: 0 !important;
    border-bottom: 0 !important;
}


/* Keep QUICK LINKS heading hidden */
.icest-simple-footer .icest-footer-links .icest-footer-heading {
    display: none !important;
}


/* Individual pill buttons */
.icest-simple-footer .icest-footer-links a {
    display: inline-block !important;

    padding: 7px 14px !important;

    color: #27547d !important;

    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    background: #ffffff !important;

    border: 1px solid #d9e4e9 !important;
    border-radius: 18px !important;

    text-decoration: none !important;

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


.icest-simple-footer .icest-footer-links a:hover,
.icest-simple-footer .icest-footer-links a:focus {
    color: #ffffff !important;

    background: #008c95 !important;
    border-color: #008c95 !important;

    text-decoration: none !important;

    transform: translateY(-2px) !important;
}


/* ---------------------------------------------------------
   SOCIAL ICONS
   --------------------------------------------------------- */

.icest-simple-footer .icest-social-icon {
    transition:
        transform .22s ease,
        box-shadow .22s ease !important;
}


.icest-simple-footer .icest-social-icon:hover,
.icest-simple-footer .icest-social-icon:focus {
    transform: translateY(-4px) scale(1.05) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.18) !important;
}


/* ---------------------------------------------------------
   COPYRIGHT - faded divider instead of a hard line
   --------------------------------------------------------- */

.icest-simple-footer .icest-footer-copyright {
    border-top: 0 !important;
}


/* Fading line above copyright */
.icest-simple-footer .icest-footer-copyright::before {
    position: absolute !important;

    top: 0 !important;
    left: 50% !important;

    width: 88% !important;
    max-width: 760px !important;
    height: 1px !important;

    content: "" !important;

    background: linear-gradient(
        to right,
        transparent 0%,
        rgba(39,84,125,.08) 8%,
        rgba(39,84,125,.36) 50%,
        rgba(39,84,125,.08) 92%,
        transparent 100%
    ) !important;

    transform: translateX(-50%) !important;
}


.icest-simple-footer .icest-footer-copyright p {
    color: #66737c !important;
}



/* =========================================================
   FOOTER TITLE REFINEMENT
   Match the typographic character of the slogan while keeping
   ICEST 2027 strong and prominent.
   ========================================================= */

.icest-simple-footer .icest-footer-title {
    color: #27547d !important;
    font-size: 31px !important;
    font-weight: 900 !important;
    font-style: italic !important;
    font-family: inherit !important;
    line-height: 1.15 !important;
    letter-spacing: .7px !important;
}


/* =========================================================
   ICEST 2027 CONTACT PAGE
   Single Conference Secretariat card
   ========================================================= */

.icest-contact-page {
    width: 100%;
    max-width: 1050px;
    margin: 0 auto 45px;
    padding: 0 18px;
    box-sizing: border-box;
}


/* Optional introductory paragraph */
.icest-contact-intro {
    max-width: 820px;
    margin: 0 auto 28px;
    text-align: center;
}

.icest-contact-intro p {
    margin: 0 !important;
    color: #526473;
    font-size: 16px;
    line-height: 1.6;
}


/* Single centered card */
.icest-contact-single {
    width: 100%;
    max-width: 650px;
    margin: 0 auto 28px !important;
}


/* Contact card */
.icest-contact-card {
    position: relative;
    padding: 30px 32px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-top: 6px solid #27547d;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0,0,0,.07);
    text-align: center;
    transition:
        transform .28s ease,
        box-shadow .28s ease;
}

.icest-contact-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 28px rgba(0,0,0,.13);
}


/* Icon */
.icest-contact-icon {
    display: flex;
    width: 54px;
    height: 54px;
    margin: 0 auto 15px;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 24px;
    font-weight: 800;
    background: #27547d;
    border-radius: 50%;
}


/* Card heading */
.icest-contact-card h2 {
    margin: 0 0 16px !important;
    color: #073b5c !important;
    font-size: 23px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}


/* Card text */
.icest-contact-card p {
    margin: 0 0 12px !important;
    color: #526473 !important;
    font-size: 14.5px !important;
    line-height: 1.6 !important;
    text-align: center !important;
}


/* Links */
.icest-contact-card a {
    color: #075985 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.icest-contact-card a:hover,
.icest-contact-card a:focus {
    color: #008c95 !important;
    text-decoration: underline !important;
}


/* Optional information note below the card */
.icest-contact-note {
    max-width: 760px;
    margin: 28px auto 0;
    padding: 17px 20px;
    color: #42545d;
    background: #f5f9fa;
    border-left: 5px solid #008c95;
    border-radius: 7px;
}

.icest-contact-note strong {
    color: #073b5c;
    font-size: 15px;
}

.icest-contact-note p {
    margin: 6px 0 0 !important;
    color: #526473;
    font-size: 14px;
    line-height: 1.55;
}


/* Mobile */
@media (max-width: 600px) {

    .icest-contact-page {
        padding: 0 12px;
        margin-bottom: 30px;
    }

    .icest-contact-intro {
        margin-bottom: 22px;
    }

    .icest-contact-intro p {
        font-size: 14.5px;
        line-height: 1.55;
    }

    .icest-contact-card {
        padding: 25px 20px;
    }

    .icest-contact-card h2 {
        font-size: 20px !important;
    }

    .icest-contact-card p {
        font-size: 14px !important;
    }
}
/* Footer ICEST 2027 title */
.icest-simple-footer .icest-footer-title {
    color: #008c95 !important;   /* same teal as slogan */
    font-size: 36px !important;  /* larger */
    font-weight: 900 !important; /* very bold */
    font-style: normal !important;
    line-height: 1.15 !important;
    letter-spacing: .8px !important;
}



/* =========================================================
   FINAL ICEST 2027 TITLE FIX
   Uses higher specificity than:
   .icest-simple-footer .icest-footer-about p
   ========================================================= */

.icest-simple-footer .icest-footer-about p.icest-footer-title,
.icest-simple-footer .icest-footer-about > p.icest-footer-title {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 auto 8px !important;
    padding: 0 !important;

    color: #008c95 !important;

    font-size: 26px !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-family: inherit !important;

    line-height: 1.1 !important;
    letter-spacing: .8px !important;

    text-align: center !important;
}


/* Also force any nested markup inside the title */
.icest-simple-footer .icest-footer-about p.icest-footer-title *,
.icest-simple-footer .icest-footer-about p.icest-footer-title strong,
.icest-simple-footer .icest-footer-about p.icest-footer-title em,
.icest-simple-footer .icest-footer-about p.icest-footer-title i {
    color: #008c95 !important;

    font-size: inherit !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-family: inherit !important;

    line-height: inherit !important;
}

/* =========================================================
   FINAL FOOTER FIX — INCLUDING THE ACTUAL OJS PARENT
   Important: custom footer HTML is inside .pkp_footer_content.
   This resets the complete OJS footer chain, not only the
   .icest-simple-footer child.
   ========================================================= */

/* 1. OJS page footer wrapper */
body .pkp_structure_page > .pkp_structure_footer_wrapper,
.pkp_structure_footer_wrapper {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    float: none !important;

    display: block !important;

    width: 100% !important;
    max-width: none !important;

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

    background: #ffffff !important;
    border: 0 !important;

    transform: none !important;
    box-sizing: border-box !important;
}


/* 2. OJS footer itself */
body .pkp_structure_page > .pkp_structure_footer_wrapper > .pkp_structure_footer,
.pkp_structure_footer {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    float: none !important;

    display: block !important;

    width: 100% !important;
    max-width: none !important;

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

    text-align: center !important;

    transform: none !important;
    box-sizing: border-box !important;
}


/* 3. CRITICAL MISSING PARENT
      OJS places the custom Page Footer inside this element. */
body .pkp_structure_page
> .pkp_structure_footer_wrapper
> .pkp_structure_footer
> .pkp_footer_content,
.pkp_structure_footer_wrapper .pkp_footer_content,
.pkp_structure_footer .pkp_footer_content,
.pkp_footer_content {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    float: none !important;

    display: block !important;

    width: 100% !important;
    max-width: none !important;

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

    text-align: center !important;

    transform: none !important;
    box-sizing: border-box !important;
}


/* 4. Remove any Bootstrap/container restriction if one exists
      in this theme/version. */
.pkp_structure_footer_wrapper .container,
.pkp_structure_footer .container,
.pkp_footer_content .container {
    float: none !important;

    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}


/* 5. Custom ICEST footer:
      cancel every earlier 100vw / left:50% / -50vw experiment. */
body .pkp_footer_content > .icest-simple-footer,
.pkp_footer_content .icest-simple-footer,
.icest-simple-footer {
    position: relative !important;

    left: auto !important;
    right: auto !important;
    float: none !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;

    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 18px !important;
    padding-right: 18px !important;

    text-align: center !important;

    transform: none !important;
    box-sizing: border-box !important;
}


/* 6. Every visible footer section is centred independently. */
body .pkp_footer_content .icest-simple-footer .icest-footer-about,
body .pkp_footer_content .icest-simple-footer .icest-footer-social,
body .pkp_footer_content .icest-simple-footer .icest-footer-links,
body .pkp_footer_content .icest-simple-footer .icest-footer-copyright,
.icest-simple-footer .icest-footer-about,
.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-links,
.icest-simple-footer .icest-footer-copyright {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    float: none !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;

    transform: none !important;
    box-sizing: border-box !important;
}


/* Keep practical content widths while centering them */
.icest-simple-footer .icest-footer-about,
.icest-simple-footer .icest-footer-copyright {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
}

.icest-simple-footer .icest-footer-social,
.icest-simple-footer .icest-footer-links {
    width: min(820px, calc(100% - 32px)) !important;
    max-width: 820px !important;
}


/* 7. Preserve title styling */
.icest-simple-footer .icest-footer-about p.icest-footer-title,
.icest-simple-footer .icest-footer-about > p.icest-footer-title {
    color: #008c95 !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-family: inherit !important;
    line-height: 1.1 !important;
    letter-spacing: .8px !important;
    text-align: center !important;
}


/* 8. Responsive */
@media (max-width: 900px) {
    body .pkp_footer_content > .icest-simple-footer,
    .pkp_footer_content .icest-simple-footer,
    .icest-simple-footer {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .icest-simple-footer .icest-footer-about,
    .icest-simple-footer .icest-footer-social,
    .icest-simple-footer .icest-footer-links,
    .icest-simple-footer .icest-footer-copyright {
        width: calc(100% - 20px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
/* =========================================================
   HEALTH SCIENCES FOOTER - CSS ONLY FIX
   ========================================================= */

/* Make footer container full width */
.site-footer > .container.site-footer-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* Remove Bootstrap row side offsets */
.site-footer > .container.site-footer-content > .row {
    display: block !important;
    width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* Make the page-footer column occupy the full row */
.site-footer
> .container.site-footer-content
> .row
> .col-md.site-footer-content {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    text-align: center !important;
}


/* Completely remove the PKP branding column,
   not just the image inside it */
.site-footer
> .container.site-footer-content
> .row
> .col-md.col-md-2 {
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
    flex: 0 0 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* Reset old custom footer positioning */
.site-footer .icest-simple-footer {
    position: relative !important;

    left: auto !important;
    right: auto !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: none !important;

    text-align: center !important;
}


/* Centre all visible sections */
.site-footer .icest-footer-about,
.site-footer .icest-footer-social,
.site-footer .icest-footer-links,
.site-footer .icest-footer-copyright {
    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
}
