:root{
    --navy:#071B33;
    --navy-2:#0B2747;
    --navy-3:#12365e;
    --gold:#D6A84F;
    --gold-soft:#F2C879;
    --white:#FFFFFF;
    --light:#F7F9FC;
    --text:#102033;
    --muted:#6B7280;
    --border:#E5E7EB;
    --shadow:0 28px 60px rgba(7,27,51,.12);
    --radius:26px;
    --radius-sm:18px;
    --container:min(1240px, calc(100% - 40px));
}
/* Mobile lang picker */
.lang-picker-mobile {
    display: none;
}

.header-end {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-inline-start: auto;
}

@media (max-width: 768px) {
    .lang-picker-mobile {
        display: flex;
        align-items: center;
    }

    .lang-picker-mobile > span {
        cursor: pointer;
        padding: 6px 10px;
        border-radius: 8px;
        font-size: 1rem;
        color: var(--text, #071B33);
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .lang-picker-mobile .lang-menu {
        display: none;
        position: absolute;
        top: 100%;
        inset-inline-end: 0;
        background: #fff;
        border: 1px solid #e5e7eb;
        border-radius: 10px;
        box-shadow: 0 8px 24px rgba(0,0,0,.12);
        min-width: 130px;
        z-index: 999;
        padding: 6px 0;
    }

    .lang-picker-mobile:hover .lang-menu,
    .lang-picker-mobile:focus-within .lang-menu {
        display: flex;
        flex-direction: column;
    }

    .lang-picker-mobile .lang-menu a {
        padding: 8px 14px;
        color: #071B33;
        text-decoration: none;
        font-size: .9rem;
    }

    .lang-picker-mobile .lang-menu a:hover {
        background: #f3f4f6;
    }

    /* Hide desktop lang-picker on mobile */
    .nav-actions .lang-picker {
        display: none;
    }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;
    color:var(--text);
    background:linear-gradient(180deg,#f5f8fd 0%, #f8fafc 40%, #f4f7fb 100%);
    overflow-x:hidden;
}
.top-social-bar{
    background:#eef3f9;
    border-bottom:1px solid rgba(7,27,51,.06);
    color:var(--navy);
    font-size:.92rem;
}
.top-social-inner{
    min-height:42px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
}
.top-social-links,.top-social-contact{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    min-width:0;
}
.top-social-contact{justify-self:end}
.top-social-links a{display:inline-flex;align-items:center;gap:8px;color:var(--navy)}
.top-social-links i{color:var(--gold)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:var(--container);margin-inline:auto}
.muted{color:var(--muted)}
.section{padding:92px 0}
.section-soft{
    position:relative;
}
.section-soft::before{
    content:"";
    position:absolute;
    inset:16px 0;
    background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(246,249,253,.96));
    border-top:1px solid rgba(229,231,235,.8);
    border-bottom:1px solid rgba(229,231,235,.8);
    pointer-events:none;
}
.section-soft > .container{position:relative;z-index:1}
.section-title{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:32px;
}
.section-title h2{margin:0 0 6px;font-size:clamp(2rem,3vw,3rem);line-height:1.15}
.section-title p{margin:0;max-width:720px;color:var(--muted);line-height:1.8}
.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:none;
    border-radius:16px;
    padding:14px 22px;
    cursor:pointer;
    font-weight:700;
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--navy);box-shadow:0 18px 35px rgba(214,168,79,.25)}
.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.24)}
.btn-dark{background:var(--navy);color:#fff}
.btn-outline{background:#fff;border:1px solid var(--border);color:var(--navy)}
.badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 12px;
    border-radius:999px;
    background:rgba(214,168,79,.14);
    color:#91640d;
    font-size:.9rem;
    font-weight:700;
}
.site-header{
    position:sticky;
    top:0;
    z-index:40;
    background:rgba(7,27,51,.92);
    backdrop-filter:blur(12px);
    border-bottom:1px solid rgba(255,255,255,.07);
}
.nav-shell{
    min-height:86px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:18px;
}
.brand{
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff;
    font-family:"Playfair Display","Times New Roman",serif;
    font-size:2rem;
    font-weight:700;
    white-space:nowrap;
    min-width:0;
}
.brand-mark{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:rgba(214,168,79,.14);
    color:var(--gold-soft);
    font-size:1.3rem;
}
.brand-image{
    width:46px;
    height:46px;
    object-fit:cover;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.2);
    box-shadow:0 10px 20px rgba(0,0,0,.18);
}
.site-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:clamp(14px,1.25vw,24px);
    color:#dfe7f0;
    font-weight:700;
    min-width:0;
}
.site-nav a{
    position:relative;
    padding:6px 0;
    white-space:nowrap;
    font-size:.98rem;
}
.site-nav a::after{
    content:"";
    position:absolute;
    right:0;
    bottom:-8px;
    width:0;
    height:3px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--gold),var(--gold-soft));
    transition:width .2s ease;
}
.site-nav a:hover::after,.site-nav a:focus::after{width:100%}
.nav-actions{
    display:flex;
    align-items:center;
    gap:12px;
    justify-self:end;
    flex-shrink:0;
}
.whatsapp-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:linear-gradient(135deg,var(--gold),var(--gold-soft));
    color:var(--navy);
    padding:12px 18px;
    border-radius:999px;
    font-weight:800;
    white-space:nowrap;
}
.lang-picker{position:relative;color:#fff}
.lang-picker span{
    display:flex;align-items:center;gap:8px;
    padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);
}
.lang-menu{
    position:absolute;top:calc(100% + 10px);left:0;min-width:160px;
    background:#fff;color:var(--text);border-radius:16px;padding:8px;
    box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(10px);
    transition:.2s ease;
}
.lang-picker:hover .lang-menu{opacity:1;visibility:visible;transform:none}
.lang-menu a{display:block;padding:10px 12px;border-radius:12px}
.lang-menu a:hover{background:var(--light)}
.menu-toggle,.admin-sidebar-toggle{
    display:none;background:none;border:none;color:#fff;cursor:pointer
}
.menu-toggle span{
    display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:999px
}

.hero{
    position:relative;
    color:#fff;
    min-height:820px;
    background:
        linear-gradient(180deg, rgba(7,27,51,.12), rgba(7,27,51,.68)),
        var(--hero-image) center top/cover no-repeat,
        radial-gradient(circle at left center, rgba(242,200,121,.22), transparent 28%),
        linear-gradient(135deg, #10274a, #071b33);
}
.hero::after{
    content:"";
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(7,27,51,.2),rgba(7,27,51,.55) 52%,rgba(247,249,252,0) 100%);
    pointer-events:none;
}
.hero-inner{
    position:relative;z-index:1;
    padding:34px 0 56px;
}
.hero-copy{
    width:min(760px,100%);
    margin:0 auto;
    text-align:center;
    padding-top:58px;
}
.hero-copy h1{
    margin:0 0 14px;
    font-size:clamp(2.9rem,5vw,5rem);
    line-height:1.1;
    text-shadow:0 10px 32px rgba(0,0,0,.2);
}
.hero-copy p{
    margin:0 auto 26px;
    max-width:760px;
    font-size:1.14rem;
    line-height:1.9;
    color:#edf3fb;
}
.hero-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.hero-actions .btn{
    min-width:182px;
    min-height:58px;
    border-radius:18px;
    font-size:1.04rem;
}
.booking-widget{
    margin-top:58px;
    background:rgba(7,27,51,.92);
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
    padding:16px;
    box-shadow:0 24px 60px rgba(7,27,51,.28);
}
.search-grid{
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr 1fr 1fr;
    gap:14px;
    align-items:end;
}
.field-group label{
    display:block;
    margin-bottom:8px;
    color:#fff;
    font-weight:700;
}
.admin-form .field-group label,
.contact-card .field-group label,
.table-card .field-group label,
.admin-card .field-group label,
.drawer .field-group label,
.newsletter-inline label,
.status-form label{color:var(--text)}
.field-group input,.field-group select,.field-group textarea,
.newsletter-card input,
.admin-form input,.admin-form select,.admin-form textarea,
.contact-card input,.contact-card select,.contact-card textarea{
    width:100%;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.04);
    color:#fff;
    border-radius:16px;
    padding:14px 16px;
    outline:none;
}
.field-group select,.field-group input[type="date"]{min-height:54px}
.field-group input::placeholder,.field-group select,.field-group textarea::placeholder{color:#d4dbe4}
.field-group .btn{width:100%;min-height:54px}

.services-strip{
    margin-top:-74px;
    padding-top:0;
    position:relative;
    z-index:2;
}
.services-grid,.destinations-grid,.cards-grid,.why-grid,.testimonials-grid,.stats-grid{
    display:grid;
    gap:18px;
}
.styles-grid{grid-template-columns:repeat(4,1fr)}
.experience-grid{grid-template-columns:repeat(4,1fr)}
.compact-card .card-media{aspect-ratio:1/0.8}
.old-price{display:block;color:#9aa7b7;text-decoration:line-through;font-size:.95rem}
.faq-grid{display:grid;gap:14px}
.faq-item{
    background:#fff;
    border:1px solid var(--border);
    border-radius:20px;
    padding:18px 20px;
    box-shadow:var(--shadow);
}
.faq-item summary{cursor:pointer;font-weight:800;color:var(--navy)}
.faq-item p{margin:14px 0 0;color:var(--muted);line-height:1.9}
.partners-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}
.partner-pill{
    min-height:100px;
    background:#fff;
    border:1px solid var(--border);
    border-radius:20px;
    box-shadow:var(--shadow);
    display:grid;
    place-items:center;
    padding:18px;
    color:var(--navy);
}
.newsletter-banner{
    background:linear-gradient(135deg,#fff,#f7fbff);
    border:1px solid rgba(229,231,235,.9);
    border-radius:28px;
    box-shadow:var(--shadow);
    padding:28px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:20px;
    align-items:center;
}
.newsletter-inline{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}
.newsletter-inline input{
    flex:1 1 260px;
    min-height:56px;
    border-radius:18px;
    border:1px solid var(--border);
    padding:0 16px;
    background:#fff;
    color:var(--text);
}
.floating-contact{
    position:fixed;
    inset:auto auto max(10px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)) !important;
    left:max(6px, env(safe-area-inset-left)) !important;
    right:auto !important;
    top:auto !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    z-index:90;
    width:58px;
    height:58px;
    direction:ltr;
    margin:0 !important;
    transform:none !important;
}
.floating-contact-toggle{
    width:58px;
    height:58px;
    border-radius:50%;
    border:none;
    background:linear-gradient(135deg,var(--gold),var(--gold-soft));
    color:var(--navy);
    box-shadow:0 20px 40px rgba(214,168,79,.28);
    display:grid;
    place-items:center;
    margin:0;
    position:relative;
    left:0;
}
.floating-contact-menu{
    position:absolute;
    left:0;
    bottom:72px;
    display:grid;
    gap:10px;
    margin:0;
    justify-items:start;
    opacity:0;
    pointer-events:none;
    transform:translateY(10px);
    transition:.2s ease;
}
.floating-contact.is-open .floating-contact-menu{opacity:1;pointer-events:auto;transform:none}
.floating-contact-link{
    background:#fff;
    border:1px solid var(--border);
    border-radius:16px;
    box-shadow:var(--shadow);
    padding:12px 14px;
    display:flex;
    align-items:center;
    gap:10px;
    min-width:180px;
}
.floating-contact-link i{color:var(--gold)}
.admin-image-preview{
    margin:8px 0 18px;
    padding:12px;
    background:#f7fafc;
    border:1px solid var(--border);
    border-radius:18px;
}
.admin-image-preview img{
    width:100%;
    max-height:260px;
    object-fit:cover;
    border-radius:14px;
}
.services-grid{
    grid-template-columns:repeat(8,1fr);
}
.service-card,.destination-card,.listing-card,.testimonial-card,.why-card,.admin-card,.stat-card,.detail-panel,.search-card,.contact-card,.table-card,.about-card{
    background:#fff;
    border:1px solid rgba(229,231,235,.8);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
}
.service-card{
    min-height:162px;
    padding:26px 16px;
    text-align:center;
    transition:transform .25s ease, box-shadow .25s ease;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:8px;
}
.service-card:hover,.destination-card:hover,.listing-card:hover,.testimonial-card:hover{transform:translateY(-6px)}
.service-card i{
    font-size:2.1rem;
    margin-bottom:14px;
    color:#0a6170;
}
.service-card h3{margin:0;font-size:.98rem;line-height:1.6}

.destinations-grid{grid-template-columns:repeat(6,1fr)}
.destinations-showcase{gap:14px}
.destination-card{
    position:relative;overflow:hidden;min-height:196px;color:#fff;padding:16px;border-radius:22px;
    background:
        linear-gradient(180deg,rgba(7,27,51,.05),rgba(7,27,51,.78)),
        var(--card-image) center/cover no-repeat,
        linear-gradient(135deg,#0d3966,#071b33);
}
.destination-card h3{margin:0 0 4px;font-size:1.2rem;position:absolute;bottom:18px;right:18px}

.cards-grid{grid-template-columns:repeat(3,1fr);gap:22px}
.listing-card{overflow:hidden;border-radius:22px}
.listing-card .card-media{
    aspect-ratio:1.22/0.82;
    background:
        linear-gradient(180deg,rgba(7,27,51,.08),rgba(7,27,51,.38)),
        var(--card-image) center/cover no-repeat,
        linear-gradient(135deg,#20456d,#0b2747);
}
.listing-card .card-body{padding:22px}
.listing-card .card-body h3{margin:12px 0 10px;font-size:1.22rem}
.listing-card .card-body p{line-height:1.8}
.listing-card .card-body{padding:18px 18px 20px}
.listing-card h3{margin:10px 0 8px;font-size:1.32rem}
.meta-line,.rating-line,.contact-list,.detail-meta{
    display:flex;flex-wrap:wrap;gap:14px;align-items:center
}
.meta-line,.rating-line{color:var(--muted);font-size:.95rem}
.rating-line{margin-top:10px}
.rating-line .stars{color:#e5a52c}
.price-row{
    display:flex;justify-content:space-between;align-items:center;gap:12px;
    margin-top:18px
}
.price-row strong{font-size:1.8rem;color:var(--navy)}

.why-band{
    background:linear-gradient(135deg,var(--navy),var(--navy-2));
    color:#fff;border-radius:22px;padding:28px 30px;
}
.why-grid{grid-template-columns:1.35fr repeat(5,1fr);align-items:center}
.why-grid h2{margin:0 0 10px;font-size:2rem}
.why-card{
    background:transparent;border:none;box-shadow:none;padding:0;color:#fff;text-align:center
}
.why-card i{color:var(--gold-soft);font-size:1.8rem;margin-bottom:10px}
.why-card h3{margin:0 0 8px;font-size:1rem}

.testimonials-grid{grid-template-columns:repeat(3,1fr)}
.testimonial-card{padding:22px;border-radius:20px}
.testimonial-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}
.testimonial-card .stars{color:#ecab2c}
.testimonial-profile{
    display:flex;
    align-items:center;
    gap:14px;
}
.testimonial-avatar{
    width:56px;
    height:56px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid rgba(214,168,79,.24);
    box-shadow:0 10px 22px rgba(7,27,51,.1);
}
.testimonial-avatar-fallback{
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,var(--navy-2),var(--navy-3));
    color:#fff;
    font-weight:800;
}
.section-tight{padding-top:0}
.visual-split{display:grid;grid-template-columns:1fr}
.promo-surface{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.promo-card{
    border-radius:24px;
    padding:28px;
    box-shadow:var(--shadow);
}
.promo-card-light{
    background:linear-gradient(135deg,#fff,#f5f8fe);
    border:1px solid rgba(229,231,235,.8);
}
.promo-card-dark{
    background:linear-gradient(135deg,#0a223f,#153a64);
    color:#fff;
}

.about-grid,.detail-layout,.contact-grid,.listing-layout,.admin-grid{
    display:grid;gap:24px
}
.about-grid{grid-template-columns:1.1fr .9fr;align-items:center}
.about-card{padding:34px}
.about-card h2,.contact-card h2,.detail-panel h2{margin-top:0}

.site-footer{
    background:linear-gradient(180deg,var(--navy),#041122);
    color:#fff;
    margin-top:60px;
}
.footer-grid{
    padding:58px 0 34px;
    display:grid;
    grid-template-columns:1.1fr .8fr .8fr 1fr;
    gap:26px;
}
.footer-brand{margin-bottom:14px}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:12px;color:#d6dde8}
.socials{display:flex;gap:10px;margin-top:16px}
.socials a{
    width:40px;height:40px;display:grid;place-items:center;border-radius:50%;
    border:1px solid rgba(255,255,255,.14);color:var(--gold-soft)
}
.newsletter-card{
    display:flex;gap:10px;padding:10px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)
}
.newsletter-card input{border:none;background:transparent;padding:12px;color:#fff}
.newsletter-card button{
    border:none;background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--navy);
    width:48px;border-radius:14px;cursor:pointer
}
.footer-bottom{border-top:1px solid rgba(255,255,255,.09)}
.footer-bottom .container{
    min-height:62px;display:flex;justify-content:space-between;align-items:center;gap:16px;color:#c7d1de
}

.page-hero{
    padding:72px 0 32px;
    background:
        linear-gradient(180deg,rgba(7,27,51,.92),rgba(7,27,51,.76)),
        radial-gradient(circle at top right, rgba(242,200,121,.25), transparent 35%);
    color:#fff;
}
.page-hero h1{margin:0;font-size:clamp(2.2rem,3.6vw,3.4rem)}
.page-hero p{margin:14px 0 0;color:#d5e0eb;max-width:720px;line-height:1.9}
.listing-layout{grid-template-columns:280px 1fr}
.filter-panel{padding:24px;position:sticky;top:104px}
.filter-panel h3{margin-top:0}
.filter-panel .field-group label{color:var(--text)}
.filter-panel .field-group input,.filter-panel .field-group select,.filter-panel .field-group textarea,
.contact-card input,.contact-card select,.contact-card textarea,.admin-form input,.admin-form select,.admin-form textarea{
    background:#fff;color:var(--text);border:1px solid var(--border)
}
.search-card,.detail-panel,.contact-card,.table-card,.admin-card{padding:24px}
.search-card{display:grid;grid-template-columns:280px 1fr;gap:18px}
.search-card .card-media,.detail-hero{
    min-height:220px;border-radius:22px;background:
        linear-gradient(180deg,rgba(7,27,51,.08),rgba(7,27,51,.5)),
        var(--card-image) center/cover no-repeat,
        linear-gradient(135deg,#20456d,#0b2747)
}

.detail-layout{grid-template-columns:1.3fr .7fr;align-items:start}
.detail-panel{overflow:hidden}
.detail-hero{min-height:420px}
.detail-content{padding:26px 0 0}
.detail-content h1{margin:0 0 12px;font-size:clamp(2rem,3vw,3rem)}
.detail-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.detail-list{background:var(--light);border-radius:22px;padding:20px}
.detail-list ul{margin:0;padding-inline-start:18px;display:grid;gap:10px}
.sidebar-cta{position:sticky;top:104px}
.mini-price{font-size:2.1rem;color:var(--navy);margin:12px 0}

.contact-grid{grid-template-columns:.9fr 1.1fr}
.contact-card form,.admin-form,.booking-form{display:grid;gap:16px}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.success-box,.info-box{
    padding:18px 20px;border-radius:20px;margin-bottom:18px
}
.success-box{background:#eefaf0;border:1px solid #b9e0bf;color:#146236}
.info-box{background:#fff7e5;border:1px solid #f4d78d;color:#8a670f}

.admin-body{background:#eef3f9;overflow-x:hidden}
.admin-layout{
    min-height:100vh;display:grid;grid-template-columns:280px 1fr
}
.admin-sidebar{
    background:linear-gradient(180deg,var(--navy),#041122);
    color:#fff;padding:24px 18px;position:sticky;top:0;height:100vh
}
.admin-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.admin-brand strong{display:block}
.admin-brand small{color:#b7c4d4}
.admin-nav{display:grid;gap:8px}
.admin-nav a{
    padding:14px 16px;border-radius:16px;color:#d7e1ec;font-weight:700
}
.admin-nav a.active,.admin-nav a:hover{background:rgba(255,255,255,.11);color:#fff}
.admin-main{padding:28px;max-width:100%;overflow-x:hidden}
.admin-grid > *, .stats-grid > *, .table-card, .admin-card{min-width:0}
.admin-topbar{
    display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px
}
.admin-topbar h1{margin:0}
.eyebrow{margin:0 0 8px;color:#8da2ba;font-weight:700}
.stats-grid{grid-template-columns:repeat(4,1fr);margin-bottom:24px}
.stat-card{padding:22px}
.stat-card span{display:block;color:var(--muted);margin-bottom:10px}
.stat-card strong{font-size:2.2rem}
.admin-grid{grid-template-columns:1.15fr .85fr}
.table-card{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:14px 12px;text-align:right;border-bottom:1px solid var(--border);vertical-align:top}
th{white-space:nowrap;color:#506173;font-size:.95rem}
.table-actions{display:flex;gap:8px;flex-wrap:wrap}
.pill{
    display:inline-flex;align-items:center;justify-content:center;
    padding:8px 12px;border-radius:999px;font-size:.86rem;font-weight:700
}
.pill-new{background:#e8f1ff;color:#285da8}
.pill-contacted{background:#fff4db;color:#9f6a0d}
.pill-confirmed{background:#e6f7ec;color:#1b7d47}
.pill-cancelled{background:#ffe8e8;color:#a33434}
.admin-form textarea,.contact-card textarea{min-height:120px;resize:vertical}
.admin-form .checkbox-row,.contact-card .checkbox-row{display:flex;align-items:center;gap:10px}
.status-form textarea{
    width:100%;
    min-height:76px;
    border:1px solid var(--border);
    border-radius:12px;
    padding:10px 12px;
    margin:10px 0;
    background:#fff;
    color:var(--text);
}
.login-screen{
    min-height:100vh;
    background:linear-gradient(135deg,#03101f,#0b2747);
    display:grid;place-items:center;padding:24px
}
.login-card{
    width:min(460px,100%);
    padding:34px;
    background:rgba(255,255,255,.98);
    border-radius:30px;
    box-shadow:var(--shadow)
}
.login-card h1{margin-top:0}

@media (max-width:1200px){
    .services-strip{margin-top:-46px}
    .services-grid{grid-template-columns:repeat(4,1fr)}
    .destinations-grid{grid-template-columns:repeat(3,1fr)}
    .cards-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}
    .styles-grid,.experience-grid,.partners-grid{grid-template-columns:repeat(2,1fr)}
    .why-grid{grid-template-columns:repeat(3,1fr)}
    .search-grid{grid-template-columns:repeat(2,1fr)}
    .search-grid .field-group:last-child{grid-column:span 2}
    .footer-grid{grid-template-columns:repeat(2,1fr)}
    .stats-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:1280px){
    .nav-shell{
    grid-template-columns:auto 1fr auto auto;
}
    .menu-toggle{display:block}
    .site-nav{
        position:absolute;top:86px;right:16px;left:16px;background:#081f3b;
        border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:16px;display:none;flex-direction:column;align-items:flex-start;justify-content:flex-start;
        box-shadow:0 24px 50px rgba(7,27,51,.28);
    }
    .site-nav.is-open{display:flex}
    .nav-actions{margin-inline-start:0}
    .whatsapp-btn span{display:none}
}
.nav-lang-switcher {
    display: none;
}

@media (max-width:1280px) {
    .nav-lang-switcher {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        padding-top: 14px;
        border-top: 1px solid rgba(255,255,255,.1);
        width: 100%;
        margin-top: 8px;
    }

    .nav-lang-switcher a {
        padding: 10px 8px;
        border-radius: 12px;
        border: 1px solid rgba(255,255,255,.15);
        color: #d4dbe4;
        font-size: .88rem;
        font-weight: 700;
        text-align: center;
        background: rgba(255,255,255,.05);
    }

    .nav-lang-switcher a:hover,
    .nav-lang-switcher a.lang-active {
        background: var(--gold);
        color: var(--navy);
        border-color: var(--gold);
    }
}
@media (max-width:992px){
    .hero{min-height:720px}
    .about-grid,.contact-grid,.detail-layout,.admin-layout,.listing-layout,.admin-grid,.search-card{
        grid-template-columns:1fr
    }
    .promo-surface{grid-template-columns:1fr}
    .sidebar-cta,.filter-panel{position:static}
    .admin-layout{display:block}
    .admin-sidebar{
        display:none;position:fixed;inset:0 0 0 auto;width:280px;z-index:80
    }
    .admin-sidebar.is-open{display:block}
    .admin-sidebar-toggle{
        display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
        border-radius:12px;background:rgba(255,255,255,.1)
    }
    .topbar-toggle{background:var(--navy);color:#fff}
    .stats-grid,.services-grid,.cards-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:768px){
    .top-social-inner{display:none}
    .brand{font-size:1.5rem}
    .nav-actions{gap:10px}
    .nav-actions .lang-picker{display:none}
    .services-strip{margin-top:0}
    .hero-copy{padding-top:12px}
    .hero-copy p{font-size:1rem}
    .search-grid,.form-grid,.detail-columns,.why-grid,.footer-grid,.services-grid,.destinations-grid,.cards-grid,.testimonials-grid,.stats-grid{
        grid-template-columns:1fr
    }
    .styles-grid,.experience-grid,.partners-grid,.newsletter-banner{grid-template-columns:1fr}
    .search-grid .field-group:last-child{grid-column:span 1}
    .section{padding:68px 0}
    .search-card{padding:18px}
    .detail-hero{min-height:280px}
    .admin-main{padding:18px}
}

@media (max-width:480px){
    .container{width:min(100% - 20px, 1180px)}
    .nav-shell{min-height:78px}
    .hero-inner{padding:62px 0 40px}
    .hero-copy h1{font-size:2.3rem}
    .booking-widget{padding:14px;border-radius:22px}
    .service-card,.listing-card .card-body,.testimonial-card,.contact-card,.table-card,.admin-card,.detail-panel,.about-card{padding:18px}
    .footer-bottom .container,.price-row,.section-title,.testimonial-head{flex-direction:column;align-items:flex-start}
    .floating-contact{
        inset:auto auto max(8px, env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-left)) !important;
        left:max(4px, env(safe-area-inset-left)) !important;
        right:auto !important;
        top:auto !important;
        bottom:max(8px, env(safe-area-inset-bottom)) !important;
        width:58px;
        height:58px;
    }
    .floating-contact-link{min-width:150px}
}
