/* ==========================================
   PATHOKART V5 PREMIUM
   Version : 5.0
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --primary:#0f766e;
    --secondary:#14b8a6;
    --accent:#22c55e;

    --dark:#0f172a;
    --gray:#64748b;

    --white:#ffffff;

    --bg:#f8fbfd;

    --radius:20px;

}

body{

    font-family:'Plus Jakarta Sans',sans-serif;

    background:var(--bg);

    color:var(--dark);

}

.container{

    width:100%;

    max-width:1320px;

    margin:auto;

    padding:0 20px;

}

/*==================================================
    PATHOKART V5 PREMIUM
==================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --primary:#0f766e;
    --secondary:#14b8a6;
    --accent:#22c55e;

    --dark:#0f172a;
    --text:#475569;

    --white:#ffffff;

    --bg:#f8fbfd;

    --radius:22px;

    --shadow:0 20px 60px rgba(15,23,42,.08);

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Plus Jakarta Sans',sans-serif;

    background:var(--bg);

    color:var(--dark);

    overflow-x:hidden;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

}

.container{

    width:100%;

    max-width:1320px;

    margin:auto;

    padding:0 20px;

}

section{

    padding:90px 0;

}





/*==================================================
    HERO SECTION
==================================================*/

.hero{
    position:relative;
    background:linear-gradient(135deg,#0b6b67 0%,#11998e 100%);
    overflow:hidden;
    padding:80px 0 120px;
}

.hero::before{
    content:"";
    position:absolute;
    width:700px;
    height:700px;
    right:-250px;
    top:-200px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
}

.hero::after{
    content:"";
    position:absolute;
    width:350px;
    height:350px;
    left:-120px;
    bottom:-120px;
    border-radius:50%;
    background:rgba(255,255,255,.05);
}

.hero-wrapper{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:55% 45%;
    align-items:center;
    gap:60px;
}

.hero-content{
    position:relative;
}

.hero-image{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
}

.hero-image img{
    width:100%;
    max-width:520px;
}

/* Tablet */

@media(max-width:991px){

.hero-wrapper{

grid-template-columns:1fr;

}

.hero-content{

text-align:center;

}

.hero-image{

margin-top:40px;

}

}

/* Mobile */

@media(max-width:576px){

.hero{

padding:60px 0 80px;

}

}
/*==================================================
    HERO CONTENT
==================================================*/

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 18px;
    background:rgba(255,255,255,.15);
    color:#fff;
    border-radius:50px;
    font-size:14px;
    font-weight:600;
    backdrop-filter:blur(10px);
    margin-bottom:25px;
}

.hero-badge i{
    color:#FFD54F;
}

.hero-content h1{
    font-size:62px;
    line-height:1.1;
    font-weight:800;
    color:#fff;
    margin-bottom:20px;
}

.hero-content h1 span{
    display:block;
    color:#D1FAE5;
}

.hero-content p{
    max-width:560px;
    color:rgba(255,255,255,.92);
    font-size:18px;
    line-height:1.8;
}

/* Tablet */

@media(max-width:991px){

.hero-content h1{

font-size:48px;

}

.hero-content p{

margin:auto;

}

}

/* Mobile */

@media(max-width:576px){

.hero-content h1{

font-size:36px;

}

.hero-content p{

font-size:16px;

}

.hero-badge{

font-size:13px;

}

}

/*==================================================
    HERO SEARCH
==================================================*/

.hero-search{
    position:relative;
    display:flex;
    align-items:center;
    background:#fff;
    height:68px;
    border-radius:18px;
    padding:0 24px;
    margin:40px 0 25px;
    box-shadow:0 18px 50px rgba(15,23,42,.15);
}

.hero-search i{
    color:var(--secondary);
    font-size:18px;
    margin-right:15px;
}

.hero-search input{
    flex:1;
    border:none;
    outline:none;
    background:none;
    font-size:16px;
    color:var(--dark);
}

.hero-search input::placeholder{
    color:#94a3b8;
}

/* Search Result */

#search-result{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#fff;
    border-radius:18px;
    box-shadow:0 15px 40px rgba(0,0,0,.12);
    overflow:hidden;
    z-index:999;
}

/*==================================================
    HERO BUTTONS
==================================================*/

.hero-buttons{
    display:flex;
    gap:18px;
    margin-top:15px;
    flex-wrap:wrap;
}

.btn-primary{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:10px;

    height:56px;
    padding:0 28px;

    background:#ffffff;

    color:var(--primary);

    border-radius:16px;

    font-weight:700;

    transition:.3s;

    box-shadow:var(--shadow);

}

.btn-primary:hover{

    transform:translateY(-3px);

}

.btn-outline{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    height:56px;

    padding:0 28px;

    border-radius:16px;

    color:#fff;

    border:2px solid rgba(255,255,255,.25);

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(10px);

    transition:.3s;

}

.btn-outline:hover{

    background:rgba(255,255,255,.18);

    transform:translateY(-3px);

}

/* Mobile */

@media(max-width:576px){

.hero-buttons{

flex-direction:column;

}

.btn-primary,
.btn-outline{

width:100%;

}

}

/*==================================================
TRUST SECTION
==================================================*/

.hero-trust{

    display:flex;

    gap:18px;

    margin:35px 0;

    flex-wrap:wrap;

}

.trust-item{

    display:flex;

    align-items:center;

    gap:12px;

    color:#fff;

}

.trust-item i{

    width:48px;

    height:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(10px);

    font-size:18px;

}

.trust-item span{

    font-size:15px;

    font-weight:600;

}

/*==================================================
STATS
==================================================*/

.hero-stats{

    display:flex;

    justify-content:space-between;

    margin-top:35px;

    border-top:1px solid rgba(255,255,255,.15);

    padding-top:30px;

}

.stat-item{

    color:#fff;

}

.stat-item h2{

    font-size:44px;

    font-weight:800;

}

.stat-item p{

    margin-top:6px;

    color:rgba(255,255,255,.8);

}

/*==================================================
DOCTOR
==================================================*/

.hero-circle{

    position:absolute;

    width:620px;

    height:620px;

    border-radius:50%;

    background:rgba(255,255,255,.12);

    right:-80px;

    top:-20px;

}

.doctor-image{

    position:relative;

    z-index:5;

    width:460px;

}

/*==================================================
FLOATING CARDS
==================================================*/

.floating-card{

    position:absolute;

    background:#fff;

    width:250px;

    padding:18px;

    border-radius:22px;

    display:flex;

    align-items:center;

    gap:16px;

    box-shadow:0 20px 60px rgba(0,0,0,.12);

    z-index:20;

}

.floating-card i{

    width:58px;

    height:58px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    background:#14b8a6;

    font-size:22px;

}

.floating-card strong{

    display:block;

    font-size:18px;

    color:#0f172a;

}

.floating-card span{

    color:#64748b;

    font-size:14px;

}

/* Position */

.card-top{

    top:90px;

    left:-40px;

}

.card-middle{

    top:290px;

    left:-70px;

}

.card-bottom{

    bottom:60px;

    right:-40px;

}

/*====================================================
        HERO SECTION - FOUNDATION
====================================================*/

.hero{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#0B6B67 0%,#11998E 45%,#20C997 100%);

    padding:80px 0 90px;

}

/* Background Shapes */

.hero::before{

    content:"";

    position:absolute;

    width:700px;

    height:700px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    top:-220px;

    right:-250px;

}

.hero::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    left:-120px;

    bottom:-120px;

}

/*=========================================
Main Grid
=========================================*/

.hero-wrapper{

    position:relative;

    z-index:5;

    display:grid;

    grid-template-columns:55% 45%;

    gap:60px;

    align-items:center;

}

/*=========================================
Left Side
=========================================*/

.hero-content{

    position:relative;

    z-index:10;

}

/*=========================================
Right Side
=========================================*/

.hero-image{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:650px;

}

/*=========================================
Doctor Circle
=========================================*/

.hero-circle{

    position:absolute;

    width:620px;

    height:620px;

    border-radius:50%;

    background:rgba(255,255,255,.18);

    right:-30px;

    top:20px;

}

/*=========================================
Doctor Image
=========================================*/

.doctor-image{

    position:relative;

    z-index:20;

    width:100%;

    max-width:480px;

}

/*=========================================
Floating Cards Base
=========================================*/

.floating-card{

    position:absolute;

    z-index:30;

}


/*==================================================
    TRUST STRIP
==================================================*/

.trust-strip{

    margin-top:-60px;

    position:relative;

    z-index:50;

}

.trust-grid{

    background:#ffffff;

    border-radius:30px;

    box-shadow:0 20px 60px rgba(15,23,42,.08);

    display:grid;

    grid-template-columns:repeat(4,1fr);

    overflow:hidden;

}

.trust-card{

    display:flex;

    align-items:center;

    gap:18px;

    padding:35px 30px;

    transition:.35s;

    border-right:1px solid #eef2f7;

}

.trust-card:last-child{

    border-right:none;

}

.trust-card:hover{

    background:#f8fbfd;

    transform:translateY(-5px);

}

.trust-icon{

    width:70px;

    height:70px;

    border-radius:50%;

    background:#ecfeff;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-shrink:0;

}

.trust-icon i{

    font-size:28px;

    color:#0f766e;

}

.trust-content h3{

    margin:0;

    font-size:20px;

    color:#0f172a;

    font-weight:700;

}

.trust-content p{

    margin-top:8px;

    font-size:15px;

    color:#64748b;

    line-height:1.6;

}

/*=========================================
Tablet
=========================================*/

@media(max-width:991px){

.trust-grid{

grid-template-columns:repeat(2,1fr);

}

.trust-card{

border-right:none;

border-bottom:1px solid #eef2f7;

}

}

/*=========================================
Mobile
=========================================*/

@media(max-width:576px){

.trust-strip{

margin-top:30px;

}

.trust-grid{

grid-template-columns:1fr;

}

.trust-card{

padding:25px;

}

}

/*==================================================
    POPULAR CATEGORIES
==================================================*/

.categories{
    padding:90px 0;
    background:#f8fbfd;
}

.section-header{
    text-align:center;
    max-width:700px;
    margin:0 auto 60px;
}

.section-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:#ecfeff;
    color:#0f766e;
    padding:10px 20px;
    border-radius:50px;
    font-size:14px;
    font-weight:700;
    margin-bottom:20px;
}

.section-header h2{
    font-size:42px;
    font-weight:800;
    color:#0f172a;
    margin-bottom:15px;
}

.section-header p{
    color:#64748b;
    font-size:18px;
    line-height:1.7;
}

.category-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.category-card{
    background:#ffffff;
    border-radius:24px;
    padding:35px 25px;
    text-align:center;
    box-shadow:0 12px 35px rgba(15,23,42,.06);
    transition:all .35s ease;
    color:#0f172a;
}

.category-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 50px rgba(15,23,42,.12);
}

.category-icon{
    width:80px;
    height:80px;
    margin:0 auto 22px;
    border-radius:50%;
    background:linear-gradient(135deg,#14b8a6,#22c55e);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
}

.category-card h3{
    font-size:20px;
    font-weight:700;
    margin-bottom:10px;
}

.category-card p{
    color:#64748b;
    font-size:15px;
}

/* Tablet */

@media(max-width:991px){

.category-grid{
    grid-template-columns:repeat(2,1fr);
}

}

/* Mobile */

@media(max-width:576px){

.section-header h2{
    font-size:30px;
}

.category-grid{
    grid-template-columns:1fr;
}

.category-card{
    padding:30px 20px;
}

}

/*==================================================
    POPULAR TESTS
==================================================*/

.popular-tests{
    padding:100px 0;
    background:#ffffff;
}

.test-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
    margin-top:50px;
}

.test-card{

    background:#fff;

    border-radius:24px;

    padding:25px;

    box-shadow:0 15px 40px rgba(15,23,42,.08);

    transition:.35s;

    border:1px solid #eef2f7;

    display:flex;

    flex-direction:column;

    height:100%;

}

.test-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 60px rgba(15,23,42,.15);

}

.test-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:18px;

}

.test-code{

    background:#ecfeff;

    color:#0f766e;

    padding:6px 12px;

    border-radius:30px;

    font-size:12px;

    font-weight:700;

}

.test-department{

    font-size:12px;

    color:#64748b;

}

.test-card h3{

    font-size:20px;

    margin-bottom:20px;

    color:#0f172a;

    min-height:55px;

}

.test-meta{

    display:flex;

    flex-direction:column;

    gap:10px;

    margin-bottom:20px;

}

.test-meta span{

    color:#64748b;

    font-size:14px;

}

.test-meta i{

    color:#14b8a6;

    width:18px;

}

.price-box{

    margin-top:auto;

    margin-bottom:20px;

}

.old-price{

    text-decoration:line-through;

    color:#94a3b8;

    margin-right:12px;

}

.new-price{

    color:#16a34a;

    font-size:26px;

    font-weight:800;

}

.test-buttons{

    display:flex;

    gap:12px;

}

.btn-view,
.btn-book{

    flex:1;

    height:46px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:12px;

    font-weight:600;

}

.btn-view{

    background:#f1f5f9;

    color:#334155;

}

.btn-book{

    background:#14b8a6;

    color:#fff;

}

.btn-book:hover{

    background:#0f766e;

}

/* Tablet */

@media(max-width:991px){

.test-grid{

grid-template-columns:repeat(2,1fr);

}

}

/* Mobile */

@media(max-width:576px){

.test-grid{

grid-template-columns:1fr;

}

}

/*==================================================
    FEATURED PACKAGES
==================================================*/

.featured-packages{
    padding:100px 0;
    background:#f7fbfd;
}

.package-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:50px;
}

.package-card{
    position:relative;
    background:#fff;
    border-radius:28px;
    padding:35px 30px;
    box-shadow:0 15px 40px rgba(15,23,42,.08);
    border:1px solid #edf2f7;
    transition:all .35s ease;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    height:100%;
}

.package-card:hover{
    transform:translateY(-10px);
    box-shadow:0 30px 70px rgba(15,23,42,.15);
}

.discount-badge{
    position:absolute;
    top:20px;
    right:-45px;
    width:150px;
    text-align:center;
    background:#ef4444;
    color:#fff;
    padding:8px 0;
    font-size:13px;
    font-weight:700;
    transform:rotate(45deg);
}

.package-icon{
    width:80px;
    height:80px;
    border-radius:50%;
    background:linear-gradient(135deg,#14b8a6,#22c55e);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
    margin-bottom:25px;
}

.package-card h3{
    font-size:24px;
    font-weight:700;
    color:#0f172a;
    margin-bottom:25px;
    line-height:1.4;
}

.package-features{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin-bottom:30px;
}

.package-features span{
    display:flex;
    align-items:center;
    gap:12px;
    color:#475569;
    font-size:15px;
}

.package-features i{
    color:#14b8a6;
    width:18px;
}

.package-price{
    margin-top:auto;
    margin-bottom:25px;
}

.package-price .old-price{
    display:block;
    color:#94a3b8;
    text-decoration:line-through;
    font-size:16px;
}

.package-price .new-price{
    display:block;
    color:#16a34a;
    font-size:34px;
    font-weight:800;
    margin-top:5px;
}

.package-actions{
    display:flex;
    gap:12px;
}

.package-actions a{
    flex:1;
}

.view-all{
    text-align:center;
    margin-top:50px;
}

/*==============================
TABLET
==============================*/

@media(max-width:991px){

.package-grid{
    grid-template-columns:repeat(2,1fr);
}

}

/*==============================
MOBILE
==============================*/

@media(max-width:576px){

.featured-packages{
    padding:70px 0;
}

.package-grid{
    grid-template-columns:1fr;
}

.package-card{
    padding:30px 22px;
}

.package-card h3{
    font-size:20px;
}

.package-price .new-price{
    font-size:28px;
}

}

/*==================================================
    HERO V2
==================================================*/

.hero-v2{

    position:relative;

    background:linear-gradient(135deg,#0b6b67 0%,#11998e 50%,#20c997 100%);

    min-height:650px;

    display:flex;

    align-items:center;

    overflow:hidden;

    padding:40px 0 80px;

}

.hero-v2::before{

    content:"";

    position:absolute;

    width:700px;

    height:700px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    top:-250px;

    right:-180px;

}

.hero-v2::after{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    left:-120px;

    bottom:-120px;

}

/*====================================*/

.hero-grid{

    position:relative;

    z-index:5;

    display:grid;

    grid-template-columns:52% 48%;

    align-items:center;

    gap:40px;

}

/*====================================*/

.hero-left{

    max-width:600px;

}

.hero-right{

    position:relative;

    height:560px;

    display:flex;

    justify-content:center;

    align-items:flex-end;

}

/*====================================*/

.hero-bg-circle{

    position:absolute;

    width:520px;

    height:520px;

    border-radius:50%;

    background:rgba(255,255,255,.18);

    bottom:0;

    right:20px;

}

/*====================================*/

.doctor-image{

    position:relative;

    z-index:10;

    width:100%;

    max-width:540px;

}