* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}

body {

    font-family: 'Poppins', sans-serif;

    background: #f8fafc;

    color: #1e293b;

}

.service-header {
    padding: 180px 0 60px; /* Padding ini terlalu besar jika navbar kamu fixed */
    text-align: center;
}

.container {

    max-width: 1200px;

    margin: 0 auto;

    padding: 0 2rem;

}

/* HEADER */

.title { font-size: 3.5rem; margin-bottom: 1rem; }

.gradient-text {

    background: linear-gradient(135deg, #ff8c42, #1e40af);

    -webkit-background-clip: text; -webkit-text-fill-color: transparent;

}



/* SERVICE GRID */

.service-section { padding-bottom: 100px; }

.service-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));

    gap: 2.5rem;

}

/* SERVICE CARD */

.service-card {

    background: white;

    padding: 3rem 2rem;

    border-radius: 30px;

    text-align: center;

    box-shadow: 0 10px 30px rgba(0,0,0,0.05);

    transition: all 0.4s ease;

    border: 1px solid rgba(0,0,0,0.02);

}
.service-card:hover {

    transform: translateY(-15px);

    background: linear-gradient(180deg, white 0%, #fff7ed 100%);

    box-shadow: 0 20px 40px rgba(255,140,66,0.15);

}

.service-icon {

    width: 90px;

    height: 90px;

    background: #f1f5f9;

    border-radius: 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0 auto 1.5rem;

    font-size: 2.5rem;

    color: #ff8c42;

    transition: 0.3s;

}
.service-card:hover .service-icon {

    background: #ff8c42;

    color: white;

    transform: rotate(10deg);

}
.service-card h3 {

    font-size: 1.5rem;

    margin-bottom: 1rem;

    color: #1e40af;

}

.service-card p {

    color: #64748b;

    font-size: 0.95rem;

    margin-bottom: 2rem;

    line-height: 1.7;

}

.book-btn {

    display: inline-block;

    padding: 0.8rem 2rem;

    background: #1e40af;

    color: white;

    text-decoration: none;

    border-radius: 50px;

    font-weight: 600;

    transition: 0.3s;

}

.book-btn:hover {

    background: #ff8c42;

    box-shadow: 0 8px 20px rgba(255,140,66,0.4);

}
/* RESPONSIVE */

@media (max-width: 768px) {

    .nav-menu { display: none; }

    .title { font-size: 2.5rem; }

}
.book-btn {

    background: linear-gradient(135deg, #ff8c42 0%, #f97316 100%);

    padding: 1rem 2.5rem;

    border-radius: 100px; /* Mutlak harus bulat sempurna (Pill) */

    font-size: 0.9rem;

    letter-spacing: 0.5px;

    text-transform: capitalize;

}

.book-btn:hover {

    background: #f97316; /* Sedikit lebih gelap saat hover */

    transform: translateY(-2px);

    box-shadow: 0 12px 25px rgba(255, 140, 66, 0.3);

}

.service-icon {

    width: 85px;

    height: 85px;

    background: #f8fafc; /* Warna abu-abu super muda khas UI modern */

    border-radius: 25px;

    color: #ff8c42; /* Orange-nya samakan dengan Logo TailBlazzers */

    margin-bottom: 1.5rem;

    display: flex;

    align-items: center;

    justify-content: center;

}
.service-card h3 {

    color: #1e3a8a; /* Pakai Dark Blue yang ada di teks "Pet Care" */

    font-size: 1.6rem;

    font-weight: 700;

}

.service-card {

    background: #ffffff;

    border-radius: 40px; /* Bikin makin bulat biar modern sesuai tombol Hero */

    padding: 3rem 2rem;

    /* Rahasianya di sini: border tipis banget + shadow yang sangat lembut */

    border: 1px solid rgba(226, 232, 240, 0.8);

    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.04);

    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);

}
.service-card:hover {

    transform: translateY(-12px);

    border-color: #ff8c42; /* Kasih border warna orange pas di-hover */

    box-shadow: 0 30px 60px rgba(255, 140, 66, 0.1);

}
.gradient-text {

    background: linear-gradient(135deg, #ff8c42, #1e40af);

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

    font-weight: 800;

}



.cart-link {

    background: #ff8c42; /* Orange solid */

    color: white !important;

    padding: 8px 20px;

    border-radius: 100px; /* Bikin bulat kapsul (pill) */

    display: flex;

    align-items: center;

    gap: 8px;

    margin-left: 1.5rem;

    box-shadow: 0 4px 15px rgba(255, 140, 66, 0.3);

    font-weight: 700;

    transition: 0.3s;

}



.cart-link:hover {

    transform: scale(1.05);

    background: #f97316;

}





        .cart-btn {

    position: relative;

    display: flex;

    align-items: center;

}
.cart-count {

    position: absolute;

    top: -8px;      /* Sesuaikan agar pas di pojok atas */

    right: -12px;   /* Sesuaikan agar pas di pojok kanan */

    background: #ff8c42; /* Warna oranye seperti foto pertama */

    color: white;

    font-size: 0.7rem;

    padding: 2px 6px;

    border-radius: 50%;

    font-weight: bold;

    min-width: 18px;

    text-align: center;

}
html {

    scroll-behavior: smooth;

}

#contact {

    scroll-margin-top: 100px; /* Sesuaikan dengan tinggi navbar kamu */

    padding: 80px 0;

}

/* Styling Modal Background */

.modal {

    display: none; /* Sembunyi dulu */

    position: fixed;

    z-index: 2000;

    left: 0; top: 0;

    width: 100%; height: 100%;

    background-color: rgba(0,0,0,0.5);

    backdrop-filter: blur(5px);

}

/* Kotak Form */

.modal-content {

    background-color: white;

    margin: 10% auto;

    padding: 30px;

    border-radius: 30px;

    width: 90%;

    max-width: 450px;

    position: relative;

    box-shadow: 0 20px 40px rgba(0,0,0,0.2);

}

.close-btn {

    position: absolute;

    right: 25px; top: 15px;

    font-size: 28px; cursor: pointer;

}

.input-group { margin-bottom: 15px; text-align: left; }

.input-group label { display: block; margin-bottom: 5px; font-weight: 600; }

.input-group input {

    width: 100%; padding: 12px;

    border: 1px solid #ddd; border-radius: 10px;

    font-family: 'Poppins', sans-serif;

}

.input-row { display: flex; gap: 10px; }

.submit-btn {

    width: 100%; padding: 15px;

    background: linear-gradient(135deg, #ff8c42, #f97316);

    color: white; border: none;

    border-radius: 50px; font-weight: 700;

    cursor: pointer; margin-top: 10px;

}

/* Container Modal Sembunyi */

.modal-overlay {

    position: fixed;

    top: 0; left: 0;

    width: 100%; height: 100%;

    background: rgba(0, 0, 0, 0.6);

    backdrop-filter: blur(5px);

    display: flex;

    justify-content: center;

    align-items: center;

    visibility: hidden; /* Sembunyi */

    opacity: 0;

    transition: 0.4s;

    z-index: 9999;

}

/* LOGIKA CSS: Muncul pas diklik */

.modal-overlay:target {

    visibility: visible;

    opacity: 1;

}

/* Kotak Form */

.modal-box {

    background: white;

    padding: 40px;

    border-radius: 35px;

    width: 90%;

    max-width: 400px;

    position: relative;

    transform: scale(0.8);

    transition: 0.4s;

}

.modal-overlay:target .modal-box {

    transform: scale(1);

}

/* Tombol Tutup (X) */

.close-x {

    position: absolute;

    top: 20px; right: 25px;

    font-size: 30px;

    text-decoration: none;

    color: #333;

}

/* Input Styling */

.form-group { margin-bottom: 15px; text-align: left; }

.form-group label { display: block; font-weight: 600; margin-bottom: 5px; color: #1e3a8a; }

.form-group input {

    width: 100%; padding: 12px;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    font-family: 'Poppins', sans-serif;

}

.form-row { display: flex; gap: 10px; }

/* Button Submit */

.submit-btn {

    width: 100%;

    padding: 15px;

    background: linear-gradient(135deg, #ff8c42, #f97316);

    color: white;

    border: none;

    border-radius: 50px;

    font-weight: 700;

    cursor: pointer;

    margin-top: 10px;

    font-family: 'Poppins', sans-serif;

}

/* CSS Modal Styling */

.modal-overlay {

    display: none;

    position: fixed;

    top: 0; left: 0; width: 100%; height: 100%;

    background: rgba(0,0,0,0.7);

    z-index: 2000;

    justify-content: center;

    align-items: center;

}
/* Munculkan modal saat href="#bookingModal" aktif */

.modal-overlay:target {

    display: flex;

}
.modal-content {

    background: white;

    padding: 30px;

    border-radius: 20px;

    width: 90%;

    max-width: 400px;

    position: relative;

    text-align: center;

}
.close-modal {

    position: absolute;

    top: 15px; right: 20px;

    font-size: 28px;

    text-decoration: none;

    color: #333;

}
.input-group {

    text-align: left;

    margin-bottom: 15px;

}

.input-group label { display: block; margin-bottom: 5px; font-weight: 600; }

.input-group input {

    width: 100%;

    padding: 10px;

    border: 1px solid #ddd;

    border-radius: 10px;

}
.submit-btn {

    width: 100%;

    padding: 12px;

    background: #ff6b6b;

    color: white;

    border: none;

    border-radius: 10px;

    cursor: pointer;

    font-weight: bold;

}
