/* =========================================================
   TERMS & CONDITIONS — Shyam Sarthi Travels
   Design Concept: "Legal Ledger"
   Premium legal document layout inspired by the
   About Us & Services design language.
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@600;700;800&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root{

    --tc-navy-deep:#04101f;
    --tc-navy:#0a2147;
    --tc-navy-soft:#183d74;

    --tc-gold:#e3a63e;
    --tc-gold-soft:#f6dca3;

    --tc-bg:#ffffff;
    --tc-mist:#eef2f8;

    --tc-text:#55617a;
    --tc-heading:#0b1c34;

    --tc-line:rgba(10,33,71,.12);

    --tc-radius:18px;

    --tc-shadow:0 20px 45px rgba(5,18,39,.12);

    --tc-font-display:'Big Shoulders Display','Arial Narrow',sans-serif;
    --tc-font-body:'Inter',sans-serif;
    --tc-font-mono:'IBM Plex Mono','Courier New',monospace;

}


/* =========================================================
   GLOBAL
========================================================= */

.tc-hero,
.tc-layout,
.tc-section,
.tc-sidebar{

    font-family:var(--tc-font-body);

}

.tc-layout{

    background:#fff;
    padding:80px 0 100px;

}

.tc-grid{

    display:grid;
    grid-template-columns:310px minmax(0,1fr);
    gap:55px;
    align-items:start;

}

html{

    scroll-behavior:smooth;

}


/* =========================================================
   HERO
========================================================= */

.tc-hero{

    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,var(--tc-navy-deep),var(--tc-navy));
    color:#fff;
    padding:150px 0 95px;

}

.tc-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at top right,
    rgba(227,166,62,.16),
    transparent 38%),

    radial-gradient(circle at bottom left,
    rgba(255,255,255,.05),
    transparent 45%);

}

.tc-hero-inner{

    position:relative;
    z-index:2;
    max-width:760px;

}


/* =========================================================
   BREADCRUMB
========================================================= */

.tc-breadcrumb{

    display:flex;
    align-items:center;
    gap:8px;

    margin-bottom:32px;

    font-family:var(--tc-font-mono);

    font-size:.80rem;

    text-transform:uppercase;

    letter-spacing:.06em;

    color:#9aa8c0;

}

.tc-breadcrumb a{

    color:var(--tc-gold-soft);
    text-decoration:none;

}

.tc-breadcrumb a:hover{

    text-decoration:underline;

}

.tc-breadcrumb .is-current{

    color:#fff;

}


/* =========================================================
   HERO TAG
========================================================= */

.tc-tag{

    display:inline-flex;
    align-items:center;

    padding:7px 18px;

    border-radius:999px;

    border:1px solid rgba(227,166,62,.35);

    color:var(--tc-gold-soft);

    font-family:var(--tc-font-mono);

    font-size:.78rem;

    letter-spacing:.08em;

    text-transform:uppercase;

    margin-bottom:24px;

}


/* =========================================================
   HERO TITLE
========================================================= */

.tc-hero h1{

    margin:0 0 22px;

    font-family:var(--tc-font-display);

    font-size:clamp(2.8rem,6vw,4.5rem);

    font-weight:800;

    line-height:.95;

    text-transform:uppercase;

    color:#fff;

}

.tc-lead{

    max-width:620px;

    margin:0;

    font-size:1.05rem;

    line-height:1.9;

    color:#d5ddea;

}


/* =========================================================
   SIDEBAR
========================================================= */

.tc-sidebar{

    position:sticky;

    top:120px;

}

.tc-sidebar-card{

    background:#fff;

    border:1px solid var(--tc-line);

    border-radius:var(--tc-radius);

    overflow:hidden;

    box-shadow:var(--tc-shadow);

}

.tc-sidebar-card h2{

    margin:0;

    padding:22px 28px;

    background:var(--tc-navy);

    color:#fff;

    font-family:var(--tc-font-display);

    font-size:2rem;

    letter-spacing:.02em;

    text-transform:uppercase;

}

.tc-sidebar-card ul{

    list-style:none;

    margin:0;

    padding:14px 0;

}

.tc-sidebar-card li{

    margin:0;

}

.tc-sidebar-card a{

    display:flex;

    align-items:center;

    padding:14px 26px;

    color:var(--tc-heading);

    text-decoration:none;

    font-size:.94rem;

    font-weight:600;

    transition:.25s;

    border-left:3px solid transparent;

}

.tc-sidebar-card a:hover{

    background:var(--tc-mist);

    border-left-color:var(--tc-gold);

    color:var(--tc-navy);

}

/* =========================================================
   CONTENT
========================================================= */

.tc-content{

    min-width:0;

}

.tc-section{

    position:relative;

    padding:0 0 70px;

    margin-bottom:70px;

    border-bottom:1px solid var(--tc-line);

}

.tc-section:last-child{

    margin-bottom:0;

    padding-bottom:0;

    border-bottom:none;

}


/* =========================================================
   SECTION NUMBER
========================================================= */

.tc-number{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:62px;

    height:62px;

    margin-bottom:22px;

    border-radius:50%;

    background:var(--tc-navy);

    color:var(--tc-gold-soft);

    font-family:var(--tc-font-mono);

    font-size:.78rem;

    font-weight:600;

    letter-spacing:.08em;

    box-shadow:0 10px 24px rgba(4,16,31,.15);

}


/* =========================================================
   HEADINGS
========================================================= */

.tc-section h2{

    margin:0 0 24px;

    color:var(--tc-heading);

    font-family:var(--tc-font-display);

    font-size:clamp(2rem,4vw,2.8rem);

    line-height:1;

    text-transform:uppercase;

    letter-spacing:.01em;

}

.tc-section h3{

    margin:0 0 12px;

    color:var(--tc-heading);

    font-family:var(--tc-font-display);

    font-size:1.45rem;

    text-transform:uppercase;

    letter-spacing:.02em;

}


/* =========================================================
   PARAGRAPHS
========================================================= */

.tc-section p{

    margin:0 0 22px;

    color:var(--tc-text);

    font-size:1rem;

    line-height:1.9;

}

.tc-section p:last-child{

    margin-bottom:0;

}

.tc-section strong{

    color:var(--tc-heading);

    font-weight:600;

}


/* =========================================================
   LEGAL CARDS
========================================================= */

.tc-card{

    background:#fff;

    border:1px solid var(--tc-line);

    border-radius:var(--tc-radius);

    padding:28px;

    margin-bottom:22px;

    box-shadow:0 10px 28px rgba(4,16,31,.06);

    transition:.30s;

}

.tc-card:last-child{

    margin-bottom:0;

}

.tc-card:hover{

    transform:translateY(-5px);

    border-color:var(--tc-gold);

    box-shadow:0 18px 40px rgba(4,16,31,.10);

}

.tc-card h3{

    color:var(--tc-navy);

}

.tc-card p{

    margin:0;

}


/* =========================================================
   LISTS
========================================================= */

.tc-list{

    margin:30px 0;

    padding:0;

    list-style:none;

}

.tc-list li{

    position:relative;

    margin-bottom:18px;

    padding-left:34px;

    color:var(--tc-text);

    line-height:1.8;

}

.tc-list li:last-child{

    margin-bottom:0;

}

.tc-list li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:2px;

    width:22px;

    height:22px;

    border-radius:50%;

    background:rgba(227,166,62,.12);

    color:var(--tc-gold);

    font-size:.82rem;

    font-weight:700;

    display:flex;

    align-items:center;

    justify-content:center;

}


/* =========================================================
   INFORMATION NOTE
========================================================= */

.tc-note{

    margin-top:30px;

    padding:24px 28px;

    border-left:5px solid var(--tc-gold);

    border-radius:0 var(--tc-radius) var(--tc-radius) 0;

    background:linear-gradient(90deg,
        rgba(227,166,62,.08),
        rgba(238,242,248,.65));

}

.tc-note strong{

    display:block;

    margin-bottom:8px;

    color:var(--tc-navy);

    font-family:var(--tc-font-display);

    font-size:1.25rem;

    letter-spacing:.02em;

}


/* =========================================================
   FAQ
========================================================= */

.tc-faq{

    margin-top:20px;

}

.tc-faq h2{

    margin-bottom:35px;

}

.tc-faq-item{

    padding:26px 0;

    border-bottom:1px solid var(--tc-line);

}

.tc-faq-item:first-of-type{

    padding-top:0;

}

.tc-faq-item:last-child{

    border-bottom:none;

    padding-bottom:0;

}

.tc-faq-item h3{

    margin-bottom:12px;

    color:var(--tc-navy);

    font-size:1.3rem;

}

.tc-faq-item p{

    margin:0;

}

/* =========================================================
   LINKS
========================================================= */

.tc-content a{

    color:var(--tc-navy);

    text-decoration:none;

    border-bottom:1px dashed rgba(10,33,71,.35);

    transition:.25s;

}

.tc-content a:hover{

    color:var(--tc-gold);

    border-color:var(--tc-gold);

}


/* =========================================================
   TABLE SUPPORT
========================================================= */

.tc-content table{

    width:100%;

    margin:30px 0;

    border-collapse:collapse;

    overflow:hidden;

    border-radius:var(--tc-radius);

    border:1px solid var(--tc-line);

}

.tc-content th{

    background:var(--tc-navy);

    color:#fff;

    padding:16px 18px;

    text-align:left;

    font-size:.92rem;

    font-weight:600;

}

.tc-content td{

    padding:16px 18px;

    border-top:1px solid var(--tc-line);

    color:var(--tc-text);

    line-height:1.7;

}

.tc-content tr:nth-child(even){

    background:rgba(238,242,248,.55);

}


/* =========================================================
   IMAGE SUPPORT
========================================================= */

.tc-content img{

    display:block;

    width:100%;

    height:auto;

    border-radius:var(--tc-radius);

    margin:30px 0;

    box-shadow:var(--tc-shadow);

}


/* =========================================================
   SELECTION
========================================================= */

::selection{

    background:var(--tc-gold);

    color:#111;

}


/* =========================================================
   SCROLLBAR
========================================================= */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#edf2f8;

}

::-webkit-scrollbar-thumb{

    background:var(--tc-navy);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--tc-gold);

}


/* =========================================================
   FOCUS STATES
========================================================= */

.tc-sidebar-card a:focus-visible,
.tc-content a:focus-visible{

    outline:2px solid var(--tc-gold);

    outline-offset:3px;

}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .tc-grid{

        grid-template-columns:1fr;

        gap:50px;

    }

    .tc-sidebar{

        position:relative;

        top:auto;

    }

}

@media (max-width:768px){

    .tc-hero{

        padding:120px 0 70px;

    }

    .tc-layout{

        padding:60px 0 70px;

    }

    .tc-section{

        padding-bottom:50px;

        margin-bottom:50px;

    }

    .tc-sidebar-card h2{

        font-size:1.6rem;

    }

    .tc-sidebar-card a{

        padding:13px 20px;

        font-size:.90rem;

    }

    .tc-number{

        width:52px;

        height:52px;

        font-size:.72rem;

    }

    .tc-section h2{

        font-size:2rem;

    }

}

@media (max-width:560px){

    .tc-hero h1{

        font-size:2.55rem;

    }

    .tc-lead{

        font-size:.97rem;

        line-height:1.75;

    }

    .tc-section h2{

        font-size:1.75rem;

    }

    .tc-section h3{

        font-size:1.2rem;

    }

    .tc-card{

        padding:22px;

    }

    .tc-note{

        padding:20px;

    }

    .tc-list li{

        padding-left:30px;

    }

    .tc-content table{

        display:block;

        overflow-x:auto;

        white-space:nowrap;

    }

}


/* =========================================================
   PRINT
========================================================= */

@media print{

    .tc-sidebar{

        display:none;

    }

    .tc-grid{

        display:block;

    }

    .tc-hero{

        background:#fff;

        color:#000;

        padding:30px 0;

    }

    .tc-hero::before{

        display:none;

    }

    .tc-hero h1,
    .tc-section h2{

        color:#000;

    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion:reduce){

    *{

        animation:none !important;

        transition:none !important;

        scroll-behavior:auto !important;

    }

}