/* =========================================================
   SWIFTROUTE PREMIUM TRACKING FORM PAGE
   ========================================================= */

.trk-form-hero{
    position:relative;
    overflow:hidden;
    min-height:520px;
    display:flex;
    align-items:center;
    background:
        radial-gradient(
            circle at 83% 45%,
            rgba(198,154,85,.13),
            transparent 26%
        ),
        linear-gradient(
            115deg,
            #061b2d 0%,
            #0b3650 100%
        );
    border-bottom:2px solid #c69a55;
}

.trk-form-hero-grid{
    position:relative;
    z-index:3;
    width:100%;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(430px,.72fr);
    align-items:center;
    gap:70px;
    padding-top:66px;
    padding-bottom:66px;
}

.trk-form-copy{
    max-width:760px;
}

.trk-form-kicker{
    display:block;
    color:#e0ad58;
    font:700 9px Arial,Helvetica,sans-serif;
    letter-spacing:.21em;
}

.trk-form-kicker.dark{
    color:#8f2228;
}

.trk-form-copy h1{
    margin:17px 0 20px;
    color:#fff!important;
    font:400 clamp(48px,5.2vw,78px)/.98 Georgia,serif;
    letter-spacing:-.025em;
}

.trk-form-copy h1 em{
    display:block;
    color:#d7a95f;
    font-style:italic;
}

.trk-form-copy>p{
    max-width:680px;
    margin:0;
    color:#d6e0e6!important;
    font:400 17px/1.62 Georgia,serif;
}

.trk-form-trust{
    display:flex;
    flex-wrap:wrap;
    gap:18px 26px;
    margin-top:30px;
}

.trk-form-trust span{
    display:flex;
    align-items:center;
    gap:8px;
    color:#eaf0f3;
    font:700 9px Arial,sans-serif;
    letter-spacing:.04em;
}

.trk-form-trust i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#56a67b;
    box-shadow:0 0 0 5px rgba(86,166,123,.13);
}

.trk-form-panel{
    position:relative;
    z-index:4;
    background:#fffdf9;
    border:1px solid rgba(198,154,85,.48);
    box-shadow:0 24px 60px rgba(0,0,0,.16);
    padding:31px;
}

.trk-form-panel-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding-bottom:19px;
    border-bottom:1px solid #ded5c8;
}

.trk-form-panel-head span{
    display:block;
    color:#8f2228;
    font:700 8px Arial,sans-serif;
    letter-spacing:.15em;
}

.trk-form-panel-head h2{
    margin:6px 0 0;
    color:#061b2d;
    font:400 31px/1.08 Georgia,serif;
}

.trk-live-pill{
    display:flex;
    align-items:center;
    gap:7px;
    color:#41515a;
    font:700 8px Arial,sans-serif;
    letter-spacing:.08em;
}

.trk-live-pill i{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#53a678;
    box-shadow:0 0 0 5px rgba(83,166,120,.13);
}

.trk-form{
    padding-top:21px;
}

.trk-form label>span{
    display:block;
    margin-bottom:7px;
    color:#596a73;
    font:700 8px Arial,sans-serif;
    letter-spacing:.1em;
}

.trk-input-wrap{
    min-height:54px;
    display:flex;
    align-items:center;
    border:1px solid #cbc2b7;
    background:#fff;
    transition:border-color .2s ease,box-shadow .2s ease;
}

.trk-input-wrap:focus-within{
    border-color:#c69a55;
    box-shadow:0 0 0 4px rgba(198,154,85,.10);
}

.trk-input-wrap svg{
    width:21px;
    height:21px;
    margin-left:17px;
    color:#6e7b83;
}

.trk-input-wrap input{
    flex:1;
    height:54px;
    min-width:0;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
    color:#071c2e!important;
    padding:0 16px 0 12px;
    font:14px Arial,Helvetica,sans-serif;
}

.trk-input-wrap input::placeholder{
    color:#8b969d;
}

.trk-form-error{
    margin-top:8px;
    color:#a23a32;
    font:11px Arial,sans-serif;
}

.trk-track-button{
    width:100%;
    min-height:54px;
    margin-top:13px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:0;
    background:#061b2d;
    color:#fff;
    cursor:pointer;
    font:700 9px Arial,sans-serif;
    letter-spacing:.11em;
    transition:transform .18s ease,background .18s ease;
}

.trk-track-button:hover{
    transform:translateY(-2px);
    background:#0a2942;
}

.trk-track-button span{
    font-size:15px;
}

.trk-form-panel-foot{
    display:flex;
    justify-content:space-between;
    gap:20px;
    margin-top:18px;
    padding-top:15px;
    border-top:1px solid #ded5c8;
}

.trk-form-panel-foot span{
    max-width:310px;
    color:#87939a;
    font:10px/1.45 Arial,sans-serif;
}

.trk-form-panel-foot a{
    color:#8f2228!important;
    text-decoration:none!important;
    font:700 9px Arial,sans-serif;
}

.trk-route-visual{
    position:absolute;
    right:5%;
    top:50%;
    width:340px;
    height:250px;
    transform:translateY(-50%);
    z-index:1;
    opacity:.55;
    pointer-events:none;
}

.trk-orbit{
    position:absolute;
    border:1px solid rgba(214,169,95,.58);
    border-radius:50%;
}

.orbit-one{
    width:300px;
    height:180px;
    right:0;
    top:35px;
    transform:rotate(-8deg);
}

.orbit-two{
    width:235px;
    height:138px;
    right:34px;
    top:54px;
    transform:rotate(18deg);
}

.trk-dot{
    position:absolute;
    width:11px;
    height:11px;
    border-radius:50%;
    background:#d6a654;
    box-shadow:0 0 0 6px rgba(214,166,84,.08);
    animation:trkPulse 3.2s ease-in-out infinite;
}

.dot-one{
    right:215px;
    top:92px;
}

.dot-two{
    right:65px;
    top:52px;
    animation-delay:.7s;
}

.dot-three{
    right:36px;
    top:152px;
    animation-delay:1.4s;
}

@keyframes trkPulse{
    0%,100%{transform:scale(1);opacity:.75}
    50%{transform:scale(1.35);opacity:1}
}

.trk-form-main{
    padding:45px 0 76px;
    background:#f7f5f0;
}

.trk-info-strip{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    background:#fff;
    border:1px solid #ddd5ca;
}

.trk-info-item{
    min-height:155px;
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    gap:16px;
    padding:28px 25px;
    border-right:1px solid #ddd5ca;
}

.trk-info-item:last-child{
    border-right:0;
}

.trk-info-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#f4eee5;
    color:#b47e32;
    font:700 10px Arial,sans-serif;
}

.trk-info-item strong{
    display:block;
    margin-top:2px;
    color:#071c2e;
    font:700 15px Arial,sans-serif;
}

.trk-info-item p{
    margin:8px 0 0;
    color:#75858e;
    font:13px/1.55 Arial,sans-serif;
}

.trk-support-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-top:22px;
}

.trk-support-card,
.trk-visibility-card{
    min-height:280px;
    padding:31px;
    background:#fff;
    border:1px solid #ddd5ca;
}

.trk-support-card h2,
.trk-visibility-card h2{
    margin:12px 0 13px;
    color:#071c2e;
    font:400 28px/1.13 Georgia,serif;
}

.trk-support-card p,
.trk-visibility-card p{
    max-width:540px;
    margin:0;
    color:#71818b;
    font:14px/1.65 Georgia,serif;
}

.trk-text-link{
    display:inline-flex;
    margin-top:25px;
    color:#8f2228!important;
    text-decoration:none!important;
    font:700 9px Arial,sans-serif;
    letter-spacing:.08em;
}

.trk-mini-timeline{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:5px;
    margin-top:30px;
}

.trk-mini-timeline span{
    height:5px;
    background:#e0e3e4;
}

.trk-mini-timeline span.active{
    background:#c69a55;
}

.trk-portal-card{
    grid-column:1/-1;
    min-height:190px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:32px;
    background:
        linear-gradient(
            110deg,
            #071c2e,
            #0c3850
        );
}

.trk-portal-card h2{
    margin:10px 0 9px;
    color:#fff!important;
    font:400 30px Georgia,serif;
}

.trk-portal-card p{
    max-width:620px;
    margin:0;
    color:#c9d6dc!important;
    font:13px/1.6 Arial,sans-serif;
}

.trk-portal-button{
    min-width:170px;
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#c69a55;
    color:#071c2e!important;
    text-decoration:none!important;
    font:700 9px Arial,sans-serif;
    letter-spacing:.09em;
}

.trk-capabilities{
    min-height:135px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    margin-top:22px;
    padding:28px 31px;
    background:#fff;
    border:1px solid #ddd5ca;
}

.trk-capabilities>div:first-child span{
    display:block;
    color:#8f2228;
    font:700 8px Arial,sans-serif;
    letter-spacing:.13em;
}

.trk-capabilities>div:first-child strong{
    display:block;
    max-width:430px;
    margin-top:7px;
    color:#071c2e;
    font:400 27px/1.1 Georgia,serif;
}

.trk-capability-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 28px;
}

.trk-capability-list span{
    position:relative;
    padding-left:15px;
    color:#687982;
    font:12px Arial,sans-serif;
}

.trk-capability-list span::before{
    content:"";
    position:absolute;
    left:0;
    top:5px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#c69a55;
}

/* =========================================================
   DARK THEME
   ========================================================= */

html[data-theme="dark"] .trk-form-main{
    background:#07121c;
}

html[data-theme="dark"] .trk-form-panel,
html[data-theme="dark"] .trk-info-strip,
html[data-theme="dark"] .trk-support-card,
html[data-theme="dark"] .trk-visibility-card,
html[data-theme="dark"] .trk-capabilities{
    background:#0d1c29;
    border-color:#29404f;
}

html[data-theme="dark"] .trk-form-panel-head,
html[data-theme="dark"] .trk-form-panel-foot,
html[data-theme="dark"] .trk-info-item{
    border-color:#29404f;
}

html[data-theme="dark"] .trk-form-panel-head h2,
html[data-theme="dark"] .trk-info-item strong,
html[data-theme="dark"] .trk-support-card h2,
html[data-theme="dark"] .trk-visibility-card h2,
html[data-theme="dark"] .trk-capabilities>div:first-child strong{
    color:#f3f6f8;
}

html[data-theme="dark"] .trk-input-wrap{
    background:#07131e;
    border-color:#38505f;
}

html[data-theme="dark"] .trk-input-wrap input{
    color:#edf3f6!important;
}

html[data-theme="dark"] .trk-info-item p,
html[data-theme="dark"] .trk-support-card p,
html[data-theme="dark"] .trk-visibility-card p,
html[data-theme="dark"] .trk-capability-list span{
    color:#a1b0b9;
}

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

@media(max-width:1050px){

    .trk-form-hero-grid{
        grid-template-columns:1fr;
        gap:32px;
    }

    .trk-route-visual{
        right:-70px;
        top:25%;
    }

    .trk-form-panel{
        max-width:700px;
    }

}

@media(max-width:800px){

    .trk-form-hero{
        min-height:auto;
    }

    .trk-form-hero-grid{
        padding-top:52px;
        padding-bottom:52px;
    }

    .trk-info-strip,
    .trk-support-grid{
        grid-template-columns:1fr;
    }

    .trk-info-item{
        border-right:0;
        border-bottom:1px solid #ddd5ca;
    }

    .trk-info-item:last-child{
        border-bottom:0;
    }

    .trk-portal-card{
        grid-column:auto;
        align-items:flex-start;
        flex-direction:column;
    }

    .trk-capabilities{
        align-items:flex-start;
        flex-direction:column;
    }

}

@media(max-width:560px){

    .trk-form-copy h1{
        font-size:44px;
    }

    .trk-form-panel{
        padding:22px 18px;
    }

    .trk-form-panel-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .trk-form-panel-foot{
        flex-direction:column;
    }

    .trk-form-trust{
        flex-direction:column;
        gap:13px;
    }

    .trk-route-visual{
        display:none;
    }

    .trk-form-main{
        padding-top:24px;
    }

    .trk-info-item{
        grid-template-columns:42px 1fr;
        padding:22px 18px;
    }

    .trk-info-icon{
        width:42px;
        height:42px;
    }

    .trk-support-card,
    .trk-visibility-card{
        padding:24px 20px;
    }

    .trk-capability-list{
        grid-template-columns:1fr;
    }

    .trk-portal-button{
        width:100%;
    }

}


/* =========================================================
   ALIGNMENT + PROPORTION FIX
   ========================================================= */

.trk-form-hero{
    min-height:500px;
    scroll-margin-top:90px;
}

.trk-form-hero-grid{
    width:100%;
    max-width:1240px;
    margin:0 auto;
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.78fr);
    gap:56px;
    padding:62px 28px;
}

.trk-form-copy{
    min-width:0;
    max-width:690px;
    padding-left:0;
    margin-left:0;
}

.trk-form-copy h1{
    max-width:680px;
    margin:16px 0 18px;
    font-size:clamp(46px,4.6vw,68px);
    line-height:.98;
}

.trk-form-copy>p{
    max-width:650px;
    font-size:16px;
    line-height:1.55;
}

.trk-form-trust{
    gap:14px 22px;
    margin-top:26px;
}

.trk-form-panel{
    width:100%;
    max-width:500px;
    justify-self:end;
    padding:28px;
}

.trk-form-panel-head h2{
    font-size:29px;
}

.trk-route-visual{
    right:3%;
    width:300px;
    height:220px;
    opacity:.38;
    z-index:1;
}

@media(max-width:1050px){
    .trk-form-hero-grid{
        max-width:900px;
        grid-template-columns:1fr;
        gap:30px;
        padding:54px 24px;
    }

    .trk-form-copy{
        max-width:760px;
    }

    .trk-form-copy h1{
        max-width:760px;
        font-size:56px;
    }

    .trk-form-panel{
        max-width:680px;
        justify-self:start;
    }

    .trk-route-visual{
        right:-30px;
        top:25%;
    }
}

@media(max-width:700px){
    .trk-form-hero-grid{
        padding:42px 18px;
    }

    .trk-form-copy h1{
        font-size:clamp(40px,12vw,52px);
    }

    .trk-form-copy>p{
        font-size:15px;
    }

    .trk-form-panel{
        max-width:none;
        padding:22px 18px;
    }

    .trk-form-trust{
        display:grid;
        grid-template-columns:1fr;
    }
}
