/* --- Global Styles --- */
body {
    margin: 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background: #fff8f0;
    color: #3c2f2f;
}
a { text-decoration: none; color: inherit; }
.container { width: 90%; max-width: 1200px; margin: auto; }

/* --- Header --- */
.site-header {
    background: #6b4226;
    color: #fff;
    padding: 15px 0;
    position: relative;
    z-index: 1000;
}
.nav-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.logo {
    font-size: 24px;
    font-weight: bold;
}
.nav a {
    margin-left: 20px;
    color: #fff;
    font-weight: 500;
    transition: color 0.3s;
}
.nav a:hover { color: #f28e43; }
.nav-toggle {
    display: none;
    font-size: 28px;
    cursor: pointer;
    color: #fff;
}

/* --- Hero / Banner Section --- */
.hero {
    background: url('images/henna-banner.jpg') center/cover no-repeat;
    color: #fff;
    padding: 100px 20px;
    text-align: center;
}
.hero h1 {
    font-size: 48px;
    line-height: 1.2;
    margin-bottom: 20px;
}
.hero p {
    font-size: 20px;
    margin-bottom: 30px;
}
.hero .btn {
    padding: 12px 25px;
    margin: 5px;
    font-weight: bold;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
.hero .btn:hover { background: #d8762b; }
.hero .btn-outline {
    background: transparent;
    border: 2px solid #f28e43;
    color: #f28e43;
}
.hero .btn-outline:hover { background: #f28e43; color: #fff; }

/* --- Services / Feature Cards --- */
.features {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin: 50px 0;
}
.feature {
    flex: 1;
    min-width: 250px;
    background: #fff5eb;
    text-align: center;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: 0.3s;
}
.feature:hover { transform: translateY(-5px); }
.feature img {
    max-width: 150px;
    margin-bottom: 15px;
    border-radius: 10px;
}
.feature h3 { margin: 10px 0; }
.feature p { font-size: 14px; color: #555; margin-bottom: 15px; }
.feature .btn {
    padding: 8px 15px;
    background: #f28e43;
    color: #fff;
    border: none;
    border-radius: 6px;
    text-decoration: none;
    transition: 0.3s;
}
.feature .btn:hover { background: #d8762b; }

/* --- Provider Cards / Portfolio --- */
.provider-card {
    background:#fff;
    padding:15px;
    margin:20px 0;
    border-radius:12px;
    box-shadow:0 2px 6px rgba(0,0,0,0.1);
}
.provider-card h3 { margin:5px 0; }
.portfolio { display:flex; flex-wrap:wrap; justify-content:center; }
.portfolio img {
    max-width:150px;
    margin:5px;
    border-radius:8px;
    border:1px solid #ddd;
    transition:0.3s;
}
.portfolio img:hover { transform: scale(1.05); }

/* --- Forms & Inputs --- */
form input, form textarea {
    width:100%;
    padding:10px;
    margin:8px 0;
    border:1px solid #ccc;
    border-radius:6px;
}
.booking-form input, .booking-form textarea { margin-bottom:8px; }

/* --- Buttons --- */
.btn {
    padding:8px 15px;
    background:#f28e43;
    color:#fff;
    border:none;
    border-radius:6px;
    cursor:pointer;
    margin-top:5px;
    transition: 0.3s;
}
.btn:hover { background:#d8762b; }

/* --- Bookings Table --- */
.table-wrapper { overflow-x:auto; }
table {
    width:100%;
    border-collapse: collapse;
    background:#fff;
    border-radius:10px;
    overflow:hidden;
}
th, td {
    padding:10px;
    border-bottom:1px solid #ddd;
    text-align:left;
}
th { background:#6b4226; color:white; }
tr:hover { background:#f3f3f3; }

/* --- Footer --- */
.site-footer {
    background:#6b4226;
    color:#fff;
    text-align:center;
    padding:15px 0;
    margin-top:40px;
}

/* --- Responsive --- */
@media(max-width:1024px){
    .hero h1 { font-size:38px; }
    .hero p { font-size:18px; }
}

@media(max-width:768px){
    .nav { display:none; flex-direction:column; background:#6b4226; position:absolute; top:60px; right:0; width:200px; border-radius:0 0 8px 8px; }
    .nav a { margin:10px; }
    .nav.show { display:flex; }
    .nav-toggle { display:block; }

    .hero { padding:80px 15px; }
    .hero h1 { font-size:28px; }
    .hero p { font-size:16px; }
    .hero .btn { padding:10px 20px; font-size:14px; }
    .features { flex-direction: column; align-items:center; }
    .feature { width:90%; }
}

@media(max-width:480px){
    .hero h1 { font-size:22px; }
    .hero p { font-size:14px; }
    .hero .btn { padding:8px 15px; font-size:12px; }
}
