﻿
/* ============================================================
   GCT GATMU - targeted fixes only
   Based on the first template: keeps images, maps and layout intact.
   ============================================================ */

/* Header/menu: prevent desktop overflow and broken wrapping */
.gct-site-header,
.gct-navbar-wrap,
.gct-navbar{
    overflow:visible !important;
}
.gct-navbar{
    gap:8px !important;
}
.gct-brand{
    min-width:132px !important;
}
.gct-brand img{
    width:118px !important;
    max-height:58px !important;
}
.gct-desktop-nav{
    min-width:0 !important;
}
.gct-desktop-nav ul{
    gap:1px !important;
    flex-wrap:nowrap !important;
}
.gct-desktop-nav a{
    font-size:12.5px !important;
    padding:10px 6px !important;
    gap:4px !important;
    white-space:nowrap !important;
}
.gct-desktop-nav a i{
    font-size:9px !important;
}
.gct-header-actions{
    gap:7px !important;
}
.gct-header-cta{
    padding:0 12px !important;
}
.gct-dropdown{
    top:calc(100% + 8px) !important;
    min-width:230px !important;
    z-index:5000 !important;
}
.gct-dropdown > a{
    white-space:normal !important;
    font-size:14px !important;
    line-height:1.25 !important;
}
.gct-top-strip .container{
    flex-wrap:nowrap;
}
.gct-top-strip__left,
.gct-top-strip__right{
    gap:10px !important;
}

/* Keep the original image/map proportions */
.gct-map-card,
.gct-real-map,
.gct-card{
    overflow:hidden;
}
.gct-map-card .gct-real-map{
    width:100%;
}
.gct-real-map iframe{
    display:block;
}
.gct-news-img img,
.gct-featured-image img,
.gct-story-card img,
.gct-side-img{
    width:100%;
    height:auto;
    object-fit:cover;
}

/* Generic page blocks for the added pages */
.gct-inner-title{
    color:var(--primary-color);
    font-size:clamp(26px,3vw,40px);
    line-height:1.15;
    margin-bottom:20px;
    letter-spacing:-.035em;
}
.gct-side-panel{
    padding:28px;
    height:100%;
}
.gct-side-panel h3{
    color:var(--primary-color);
    margin:18px 0 10px;
    font-size:24px;
}
.gct-side-panel p{
    margin-bottom:0;
}
.gct-side-img{
    max-height:230px;
    object-fit:contain;
    background:#f6fbff;
    border-radius:22px;
    padding:20px;
}
.gct-check-list{
    margin:18px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
}
.gct-check-list li{
    display:flex;
    align-items:flex-start;
    gap:12px;
    position:relative;
    padding-left:0;
    font-weight:800;
    color:#1d3355;
}
.gct-check-list li:before{
    content:none;
}
.gct-check-list li i{
    color:var(--gct-green);
    flex:0 0 auto;
    margin-top:4px;
}
.gct-qr-box{
    height:170px;
    border:2px dashed rgba(8,43,97,.18);
    background:linear-gradient(180deg,#f8fbff,#fff);
    border-radius:24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:var(--accent-color);
    font-weight:900;
}
.gct-qr-box i{
    font-size:64px;
}
.gct-timeline{
    list-style:none;
    padding:0;
    margin:18px 0 0;
    display:grid;
    gap:14px;
}
.gct-timeline li{
    position:relative;
    padding-left:26px;
}
.gct-timeline li:before{
    content:"";
    width:12px;
    height:12px;
    border-radius:50%;
    background:var(--accent-secondary-color);
    position:absolute;
    left:0;
    top:6px;
    box-shadow:0 0 0 6px rgba(246,163,19,.15);
}
.gct-timeline strong{
    display:block;
    color:var(--primary-color);
    font-size:16px;
}
.gct-timeline span{
    display:block;
    font-size:14px;
    line-height:1.5;
    color:var(--text-color);
}
.gct-track-result{
    margin-top:22px;
    padding:18px;
    border-radius:18px;
    background:#f8fbff;
    border:1px solid var(--gct-border);
    display:none;
}
.gct-track-result.is-visible{
    display:block;
}
.gct-status-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:7px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
}
.gct-status-pill.is-progress{
    color:#7a4a00;
    background:#fff3d8;
}
.gct-status-pill.is-open{
    color:#0b6b34;
    background:#dff8e9;
}
.gct-status-pill.is-closed{
    color:#5d6678;
    background:#edf1f7;
}
.gct-toolbar{
    padding:18px;
    display:grid;
    grid-template-columns:1fr minmax(220px,.35fr);
    gap:14px;
    margin-bottom:22px;
}
.gct-table-wrap{
    border-radius:26px;
    overflow:auto;
    border:1px solid var(--gct-border);
    box-shadow:var(--gct-shadow-sm);
    background:#fff;
}
.gct-table{
    width:100%;
    min-width:780px;
    border-collapse:collapse;
}
.gct-table th,
.gct-table td{
    padding:18px;
    border-bottom:1px solid var(--gct-border);
    text-align:left;
    vertical-align:middle;
}
.gct-table th{
    color:var(--primary-color);
    background:#f8fbff;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.gct-table td{
    color:#32445f;
    font-weight:700;
}
.gct-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.gct-kpi{
    padding:26px;
}
.gct-kpi i,
.gct-dataset-card > i,
.gct-part-card > i{
    width:56px;
    height:56px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:#eaf3ff;
    color:var(--accent-color);
    font-size:24px;
    margin-bottom:18px;
}
.gct-kpi strong{
    display:block;
    color:var(--primary-color);
    font-size:36px;
    line-height:1;
    letter-spacing:-.04em;
    margin-bottom:8px;
}
.gct-kpi span{
    color:var(--text-color);
    font-weight:800;
    line-height:1.4;
}
.gct-page-cards{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}
.gct-dataset-card,
.gct-part-card{
    padding:28px;
}
.gct-dataset-card h3,
.gct-part-card h3{
    color:var(--primary-color);
    font-size:24px;
    margin-bottom:10px;
}
.gct-dataset-card p,
.gct-part-card p{
    margin-bottom:18px;
}
.gct-faq-list{
    max-width:920px;
    margin:0 auto;
    display:grid;
    gap:14px;
}
.gct-faq-item{
    padding:0;
}
.gct-faq-item summary{
    cursor:pointer;
    padding:22px 26px;
    color:var(--primary-color);
    font-size:18px;
    font-weight:900;
    list-style:none;
}
.gct-faq-item summary::-webkit-details-marker{
    display:none;
}
.gct-faq-item p{
    padding:0 26px 24px;
    margin:0;
}
.gct-legal-card{
    padding:36px;
}
.gct-legal-card h2{
    color:var(--primary-color);
    font-size:26px;
    margin:22px 0 10px;
}
.gct-legal-card h2:first-child{
    margin-top:0;
}

/* Responsive safety */
@media (max-width:1399px){
    .gct-header-cta{display:none !important;}
    .gct-brand{min-width:112px !important;}
    .gct-brand img{width:104px !important;}
    .gct-desktop-nav a{
        font-size:12px !important;
        padding:9px 5px !important;
    }
}
@media (max-width:1199px){
    .gct-desktop-nav{display:none !important;}
    .gct-mobile-toggle{display:inline-flex !important;}
    .gct-brand img{width:120px !important;}
}
@media (max-width:991px){
    .gct-toolbar,
    .gct-kpi-grid,
    .gct-page-cards{
        grid-template-columns:1fr 1fr;
    }
    .gct-side-panel{
        margin-top:24px;
    }
}
@media (max-width:767px){
    .gct-toolbar,
    .gct-kpi-grid,
    .gct-page-cards{
        grid-template-columns:1fr;
    }
    .gct-table th,
    .gct-table td{
        padding:14px;
    }
    .gct-page-hero h1{
        font-size:38px !important;
    }
    .gct-section{
        padding:62px 0 !important;
    }
}

/* ============================================================
   V3 FIX - icons + cleaner desktop menu
   ============================================================ */
.gct-desktop-nav ul{
    gap:5px !important;
}
.gct-desktop-nav a{
    font-size:13.4px !important;
    padding:11px 9px !important;
    letter-spacing:-.01em;
}
.gct-brand{
    min-width:128px !important;
}
.gct-brand img{
    width:128px !important;
    max-height:62px !important;
}
.gct-header-search{
    width:42px !important;
    height:42px !important;
}
.gct-dropdown--right{
    left:auto !important;
    right:0 !important;
}
.gct-dropdown--right::before{
    left:auto !important;
    right:30px !important;
}
.gct-more-menu .gct-dropdown{
    min-width:255px !important;
}
.gct-site-header .gct-dropdown > a,
.gct-dropdown > a{
    font-size:14.5px !important;
    padding:12px 14px !important;
}
.gct-header-actions .gct-header-cta{
    display:none !important;
}
@media (min-width:1400px){
    .gct-header-actions .gct-header-cta{
        display:inline-flex !important;
    }
}
@media (max-width:1399px){
    .gct-desktop-nav ul{gap:3px !important;}
    .gct-desktop-nav a{
        font-size:12.8px !important;
        padding:10px 7px !important;
    }
    .gct-brand img{width:118px !important;}
}
@media (max-width:1240px){
    .gct-desktop-nav a{
        font-size:12.2px !important;
        padding:9px 6px !important;
    }
    .gct-brand{min-width:110px !important;}
    .gct-brand img{width:108px !important;}
}
@media (max-width:1199px){
    .gct-brand img{width:120px !important;}
}

.gct-desktop-nav .gct-has-dropdown.active > a,
.gct-mobile-nav details.active > summary,
.gct-mobile-nav summary.active{
    color:var(--accent-color);
}
.gct-mobile-nav details.active{
    border-color:rgba(255,178,26,.35);
}
.gct-footer a.active{
    color:var(--accent-color);
}

.gct-site-header .gct-dropdown > a.active,
.gct-dropdown > a.active{
    background:#eaf3ff;
    color:var(--accent-color);
    font-weight:800;
}
.gct-site-header .gct-dropdown > a.active i,
.gct-dropdown > a.active i{
    color:var(--accent-color);
}
.gct-mobile-nav details a.active{
    color:var(--accent-color);
    font-weight:800;
}
/* Highlighted CTA buttons: keep text readable before and during hover. */
.btn-default.btn-highlighted{
    color:#fff !important;
}

.btn-default.btn-highlighted:hover,
.btn-default.btn-highlighted:focus{
    color:var(--accent-color) !important;
}

