.akv-filter-section,
.akv-villa-section{position:relative;z-index:10;}.akv-container{width:100%;max-width:1400px;margin:0 auto;padding:
        0
        24px;}.akv-hero-overlay{position:absolute;inset:0;backdrop-filter:blur(3px);}.akv-archive-hero-content{position:relative;z-index:5;max-width:820px;}.akv-hero-badge{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:
        0
        24px;border-radius:999px;background:
        rgba(255,255,255,0.12);border:
        1px solid rgba(255,255,255,0.16);backdrop-filter:blur(10px);color:#ffffff;font-size:12px;font-weight:700;letter-spacing:2px;}.akv-archive-hero-content h1{margin:
        30px
        0
        26px;color:#ffffff;font-size:82px;line-height:0.98;letter-spacing:-4px;font-weight:800;}.akv-archive-hero-content p{max-width:680px;color:
        rgba(255,255,255,0.82);font-size:18px;line-height:1.9;}.akv-hero-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:42px;}.akv-trust-item{min-width:160px;padding:
        20px
        24px;border-radius:24px;background:
        rgba(255,255,255,0.10);border:
        1px solid rgba(255,255,255,0.12);backdrop-filter:blur(12px);}.akv-trust-item strong{display:block;margin-bottom:6px;color:#ffffff;font-size:28px;line-height:1;}.akv-trust-item span{color:
        rgba(255,255,255,0.74);font-size:13px;font-weight:600;}.akv-filter-section{margin-top:-90px;padding-bottom:60px;}.akv-filter-wrapper{position:relative;z-index:20;padding:40px;border-radius:36px;background:
        rgba(255,255,255,0.82);border:
        1px solid rgba(255,255,255,0.6);backdrop-filter:blur(18px);box-shadow:
        0 30px 80px rgba(0,0,0,0.08);}.akv-filter-header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px;}.akv-filter-label{display:inline-block;margin-bottom:12px;color:#9a7a46;font-size:12px;font-weight:800;letter-spacing:3px;}.akv-filter-header h2{margin:0;color:#111827;font-size:42px;line-height:1.05;letter-spacing:-2px;}.akv-filter-header p{max-width:420px;margin:0;color:#6b7280;font-size:15px;line-height:1.8;}.akv-filter-box{display:grid;grid-template-columns:
        2fr
        repeat(4,1fr);gap:18px;}.akv-filter-group{display:flex;flex-direction:column;}.akv-filter-group label{margin-bottom:12px;color:#374151;font-size:13px;font-weight:700;}.akv-filter-group input,
.akv-filter-group select{width:100%;height:60px;padding:
        0
        18px;border:none;border-radius:18px;background:#f8f5ef;outline:none;color:#111827;font-size:14px;font-weight:600;transition:.25s ease;}.akv-filter-group input:focus,
.akv-filter-group select:focus{background:#ffffff;box-shadow:
        0 0 0 4px rgba(198,165,107,0.14);}.akv-villa-section{padding-bottom:120px;}.akv-result-right{max-width:460px;}.akv-result-label{display:inline-block;margin-bottom:12px;color:#9a7a46;font-size:12px;font-weight:800;letter-spacing:3px;}.akv-result-header h2{margin:0;color:#111827;font-size:48px;line-height:1.05;letter-spacing:-2px;}.akv-result-header p{max-width:460px;margin:0;color:#6b7280;line-height:1.9;}.akv-result-meta{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:18px;}.akv-result-count{display:flex;align-items:center;justify-content:center;height:42px;padding:
        0
        18px;border-radius:999px;background:#111827;color:#ffffff;font-size:13px;font-weight:700;}.akv-active-filter{display:flex;align-items:center;justify-content:center;min-height:42px;padding:
        0
        18px;border-radius:999px;background:
        rgba(198,165,107,0.12);color:#9a7a46;font-size:13px;font-weight:700;}.akv-card{position:relative;overflow:hidden;border-radius:28px;background:#ffffff;box-shadow:
        0 20px 60px rgba(0,0,0,0.06);transition:
        transform .4s ease,
        box-shadow .4s ease;}.akv-card:hover{transform:
        translateY(-10px);box-shadow:
        0 35px 90px rgba(0,0,0,0.12);}.akv-card-link{display:block;color:inherit;text-decoration:none;}.akv-card-image{position:relative;overflow:hidden;height:250px;}.akv-card-image img{width:100%;height:100%;object-fit:cover;transition:
        transform 1s ease;}.akv-card:hover .akv-card-image img{transform:scale(1.08);}.akv-card-overlay{position:absolute;inset:0;background:
        linear-gradient(
            to top,
            rgba(0,0,0,0.72),
            rgba(0,0,0,0.10)
        );}.akv-card-location{position:absolute;top:20px;left:20px;z-index:5;display:flex;align-items:center;justify-content:center;height:36px;padding:
        0
        14px;border-radius:999px;background:
        rgba(255,255,255,0.14);border:
        1px solid rgba(255,255,255,0.16);backdrop-filter:blur(10px);color:#ffffff;font-size:11px;font-weight:700;}.akv-card-price{position:absolute;left:20px;bottom:20px;z-index:5;}.akv-card-price small{display:block;margin-bottom:4px;color:
        rgba(255,255,255,0.74);font-size:10px;letter-spacing:2px;text-transform:uppercase;}.akv-card-price strong{display:block;color:#ffffff;font-size:26px;line-height:1;letter-spacing:-1px;}.akv-card-price span{color:
        rgba(255,255,255,0.78);font-size:12px;}.akv-card-content{padding:18px;}.akv-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px;}.akv-card-top h3{margin:0;color:#111827;font-size:24px;line-height:1.18;letter-spacing:-1px;flex:1;}.akv-card-rating{display:flex;align-items:center;justify-content:center;min-width:58px;height:30px;border-radius:999px;background:#f8f5ef;color:#9a7a46;font-size:11px;font-weight:700;flex-shrink:0;}.akv-card-description{color:#6b7280;font-size:12px;line-height:1.7;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:40px;}.akv-card-facilities{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}.akv-facility-item{display:flex;align-items:center;justify-content:center;height:28px;padding:
        0
        12px;border-radius:999px;background:
        rgba(198,165,107,0.10);color:#9a7a46;font-size:11px;font-weight:700;}.akv-card-footer{margin-top:20px;padding-top:18px;border-top:
        1px solid rgba(0,0,0,0.06);}.akv-card-button{display:flex;align-items:center;justify-content:space-between;height:48px;padding:
        0
        18px;border-radius:14px;background:
        linear-gradient(
            135deg,
            #111827,
            #1f2937
        );color:#ffffff;font-size:12px;font-weight:700;transition:.3s ease;}.akv-card:hover .akv-card-button{transform:
        translateY(-2px);}.akv-card-button span{font-size:18px;}.akv-empty-state{grid-column:1/-1;padding:
        80px
        30px;border-radius:32px;background:#ffffff;text-align:center;box-shadow:
        0 20px 60px rgba(0,0,0,0.06);}.akv-empty-state h3{margin:
        0
        0
        14px;color:#111827;font-size:32px;}.akv-empty-state p{margin:0;color:#6b7280;line-height:1.8;}.akv-loading-wrapper{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:
        100px
        20px;border-radius:32px;background:#ffffff;text-align:center;box-shadow:
        0 20px 60px rgba(0,0,0,0.06);}.akv-loading-wrapper h3{margin:
        0
        0
        12px;color:#111827;font-size:28px;}.akv-loading-wrapper p{max-width:420px;margin:0;color:#6b7280;line-height:1.8;}@keyframes akvSpin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}@media(max-width:1200px){.akv-villa-grid{grid-template-columns:
            repeat(2,minmax(0,1fr));}.akv-filter-box{grid-template-columns:
            repeat(2,minmax(0,1fr));}}@media(max-width:768px){.akv-container{padding:
            0
            18px;}.akv-archive-hero{min-height:auto;padding:
            140px
            0
            120px;}.akv-archive-hero-content h1{font-size:42px;line-height:1.08;letter-spacing:-2px;}.akv-archive-hero-content p{font-size:15px;line-height:1.8;}.akv-hero-trust{gap:12px;}.akv-trust-item{flex:1;min-width:unset;padding:18px;}.akv-trust-item strong{font-size:22px;}.akv-filter-section{margin-top:-50px;padding-bottom:40px;}.akv-filter-wrapper{padding:24px;border-radius:28px;}.akv-filter-header{flex-direction:column;align-items:start;margin-bottom:24px;}.akv-filter-header h2{font-size:28px;line-height:1.12;}.akv-filter-header p{max-width:100%;font-size:14px;}.akv-filter-box{grid-template-columns:1fr;gap:16px;}.akv-filter-group input,
    .akv-filter-group select{height:56px;border-radius:16px;}.akv-villa-section{padding-bottom:80px;}.akv-result-header{flex-direction:column;align-items:start;margin-bottom:28px;}.akv-result-header h2{font-size:34px;line-height:1.12;}.akv-result-header p{max-width:100%;font-size:14px;}.akv-result-meta{gap:10px;}.akv-result-count,
    .akv-active-filter{width:100%;justify-content:flex-start;padding:
            0
            16px;}.akv-villa-grid{grid-template-columns:1fr;gap:20px;}.akv-card{border-radius:24px;}.akv-card-image{height:190px;}.akv-card-content{padding:16px;}.akv-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}.akv-card-top h3{font-size:18px;line-height:1.35;letter-spacing:-0.5px;flex:1;}.akv-card-price strong{font-size:22px;}.akv-card-button{height:44px;border-radius:14px;font-size:11px;}}.akv-search-box{grid-template-columns:repeat(5,minmax(0,1fr)) auto;}.akv-search-button{height:56px;padding:0 22px;border:0;border-radius:16px;background:#f59e0b;color:#102a43;font-weight:800;cursor:pointer;align-self:end;}.akv-search-button span{font-size:18px;margin-left:8px;}.akv-filter-advanced{display:grid;grid-template-columns:1fr 1fr 1fr 2fr;gap:12px;align-items:end;margin-top:14px;padding-top:16px;border-top:1px solid #edf1f5;}.akv-advanced-title{font-size:12px;font-weight:800;color:#102a43;align-self:center;}.akv-facility-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}.akv-facility-filters>span{width:100%;font-size:12px;font-weight:800;color:#102a43;}.akv-facility-filters label{font-size:12px;color:#45576a;}.akv-facility-filters input{accent-color:#f59e0b;}.akv-card-rating small{font-size:9px;color:#66788a;}@media(max-width:1100px){.akv-search-box{grid-template-columns:repeat(2,1fr);}.akv-filter-advanced{grid-template-columns:repeat(2,1fr);}}@media(max-width:768px){.akv-search-box{grid-template-columns:1fr;}.akv-filter-advanced{grid-template-columns:1fr;}.akv-search-button{width:100%;}.akv-facility-filters{display:grid;grid-template-columns:1fr;}}.akv-filter-section .akv-filter-advanced {display: none;}.akv-result-left {display:flex;flex-direction:column;width: 100%;}.akv-result-header {display:flex;align-items: flex-start;justify-content:space-between;gap:30px;margin-bottom:40px;}#akv-advanced-filter {display: none;width: 100%;margin-top: 26px;padding: 22px;border: 1px solid #e8edf2;border-radius: 20px;background: #fff;box-shadow: 0 12px 35px rgba(16, 42, 67, .07);}#akv-advanced-filter.is-visible {display: grid;}.akv-result-left .akv-filter-group {min-width: 0;}@media (min-width: 769px) {#akv-advanced-filter {grid-template-columns: 1.15fr 1.15fr 1fr 2.1fr;align-items: end;}}@media (max-width: 768px) {#akv-advanced-filter {grid-template-columns: 1fr;}}.akv-archive-page{background:#f7f6f3;color:#111827;overflow:hidden;}.akv-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.18em;color:#9a7a46;}.akv-eyebrow--light{color:rgba(255,255,255,.72);}.akv-archive-hero{position:relative;overflow:hidden;min-height:620px;display:flex;align-items:flex-end;padding:150px 0 170px;background:#111;background-size:cover;background-position:center;color:#fff;}.akv-archive-hero__backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,14,.78),rgba(7,10,14,.38)),url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?q=85&w=2400&auto=format&fit=crop") center/cover;}.akv-archive-hero__backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.58));}.akv-archive-hero__inner{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:48px;}.akv-archive-hero__copy{max-width:780px;}.akv-archive-hero__copy h1{margin:22px 0 22px;font-size:clamp(48px,6vw,78px);line-height:.98;letter-spacing:-.055em;color:#fff;}.akv-archive-hero__copy p{max-width:650px;margin:0;color:rgba(255,255,255,.78);font-size:17px;line-height:1.8;}.akv-archive-trust{display:grid;grid-template-columns:repeat(3,1fr);min-width:440px;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:rgba(255,255,255,.09);backdrop-filter:blur(18px);overflow:hidden;}.akv-archive-trust div{padding:20px 18px;border-right:1px solid rgba(255,255,255,.12);}.akv-archive-trust div:last-child{border-right:0;}.akv-archive-trust strong{display:block;color:#fff;font-size:20px;}.akv-archive-trust span{display:block;margin-top:5px;color:rgba(255,255,255,.62);font-size:10px;text-transform:uppercase;letter-spacing:.08em;}.akv-archive-search{
    position:relative;
    z-index:3;
    margin-top:-72px;
    padding-bottom:76px;
}

/* Search form only: isolated so it does not affect villa cards/results. */
.akv-search-panel{
    width:100%;
    box-sizing:border-box;
    padding:30px;
    border:1px solid rgba(16,42,67,.08);
    border-radius:30px;
    background:rgba(255,255,255,.98);
    box-shadow:0 28px 80px rgba(16,42,67,.13);
    backdrop-filter:blur(20px);
}

.akv-search-panel__head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:32px;
    margin-bottom:24px;
}

.akv-search-panel__head > div{min-width:0;}

.akv-search-panel__head h2{
    margin:7px 0 0;
    color:#102a43;
    font-size:32px;
    font-weight:800;
    line-height:1.1;
    letter-spacing:-.04em;
}

.akv-search-panel__head p{
    max-width:520px;
    margin:0;
    color:#6f7f90;
    font-size:13px;
    line-height:1.7;
}

.akv-search-grid{
    display:grid;
    min-width:0;
    gap:14px;
}

.akv-search-grid--primary{
    grid-template-columns:
        minmax(280px,1.75fr)
        minmax(185px,1fr)
        minmax(185px,1fr)
        minmax(150px,.78fr)
        minmax(145px,.82fr);
    align-items:end;
}

.akv-search-field{
    display:block;
    min-width:0;
    width:100%;
    margin:0;
}

.akv-search-field > span{
    display:block;
    width:100%;
    min-width:0;
    margin:0 0 8px;
    overflow:hidden;
    color:#344054;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.03em;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.akv-search-field input,
.akv-search-field select{
    display:block;
    width:100%;
    min-width:0;
    max-width:100%;
    height:56px;
    box-sizing:border-box;
    margin:0;
    padding:0 15px;
    border:1px solid #dfe5eb;
    border-radius:15px;
    outline:0;
    background:#fff;
    color:#172033;
    font-family:inherit;
    font-size:14px;
    font-weight:600;
    line-height:56px;
    transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}

.akv-search-field select{
    padding-right:38px;
    cursor:pointer;
}

.akv-search-field input::placeholder{
    color:#98a2b3;
    opacity:1;
}

.akv-search-field input:focus,
.akv-search-field select:focus{
    border-color:#c6a56b;
    box-shadow:0 0 0 3px rgba(198,165,107,.10);
}

.akv-search-submit{
    align-self:end;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:100%;
    min-width:0;
    height:56px;
    box-sizing:border-box;
    margin:0;
    padding:0 18px;
    border:0;
    border-radius:15px;
    background:#102a43;
    color:#fff;
    font-family:inherit;
    font-size:12px;
    font-weight:800;
    line-height:1;
    white-space:nowrap;
    cursor:pointer;
    transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;
}

.akv-search-submit:hover{
    background:#9a7a46;
    box-shadow:0 10px 24px rgba(16,42,67,.14);
    transform:translateY(-1px);
}

.akv-search-submit svg,
.akv-filter-toggle svg{
    width:17px;
    height:17px;
    flex:0 0 17px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.8;
}

.akv-search-panel__tools{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:17px;
}

.akv-filter-toggle,
.akv-filter-reset{
    box-sizing:border-box;
    border:0;
    background:transparent;
    font-family:inherit;
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    cursor:pointer;
}

.akv-filter-toggle{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 0;
    color:#102a43;
    white-space:nowrap;
}

.akv-filter-reset{
    padding:6px 0;
    color:#9a7a46;
    white-space:nowrap;
}

.akv-filter-toggle:focus-visible,
.akv-filter-reset:focus-visible,
.akv-search-submit:focus-visible{
    outline:3px solid rgba(184,149,94,.28);
    outline-offset:3px;
}

.akv-advanced-filter{
    display:none;
    width:100%;
    box-sizing:border-box;
    margin-top:22px;
    padding-top:22px;
    border-top:1px solid #edf0f3;
}

.akv-advanced-filter.is-visible{display:block;}

.akv-search-grid--advanced{
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:end;
}

.akv-facility-filter{
    display:flex;
    flex-wrap:wrap;
    gap:10px 22px;
    margin:20px 0 0;
    padding:0;
    border:0;
}

.akv-facility-filter legend{
    width:100%;
    margin-bottom:2px;
    color:#344054;
    font-size:11px;
    font-weight:800;
}

.akv-facility-filter label{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#536174;
    font-size:12px;
    line-height:1.3;
    white-space:nowrap;
}

.akv-facility-filter input{
    flex:0 0 auto;
    accent-color:#9a7a46;
}

@media(max-width:1200px){
    .akv-search-grid--primary{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .akv-search-field--wide,
    .akv-search-submit{
        grid-column:1/-1;
    }

    .akv-search-grid--advanced{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:768px){
    .akv-archive-search{
        margin-top:-70px;
        padding-bottom:55px;
    }

    .akv-search-panel{
        padding:21px;
        border-radius:24px;
    }

    .akv-search-panel__head{
        display:block;
    }

    .akv-search-panel__head h2{font-size:27px;}

    .akv-search-panel__head p{
        margin-top:10px;
    }

    .akv-search-grid--primary,
    .akv-search-grid--advanced{
        grid-template-columns:1fr;
    }

    .akv-search-field--wide,
    .akv-search-submit{
        grid-column:auto;
    }

    .akv-search-submit{width:100%;}

    .akv-search-panel__tools{
        margin-top:15px;
    }
}

.akv-archive-results{padding:0 0 100px;}.akv-results-head{display:flex;justify-content:space-between;gap:60px;margin-bottom:32px;}.akv-results-head h2{margin:9px 0 15px;font-size:44px;line-height:1.05;letter-spacing:-.05em;}.akv-results-head>p{max-width:450px;margin:25px 0 0;color:#697586;font-size:13px;line-height:1.8;}.akv-results-meta{display:flex;flex-wrap:wrap;gap:8px;}.akv-results-meta span{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#fff;border:1px solid #e8e9eb;color:#657184;font-size:11px;font-weight:700;}.akv-results-meta span:first-child{color:#172033;}.akv-villa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}.akv-empty-state,.akv-loading-wrapper{grid-column:1/-1;min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px;border:1px solid #e8e9eb;border-radius:28px;background:#fff;text-align:center;}.akv-empty-state h3,.akv-loading-wrapper h3{margin:0 0 10px;font-size:27px;letter-spacing:-.03em;}.akv-empty-state p,.akv-loading-wrapper p{max-width:480px;margin:0;color:#687385;font-size:13px;line-height:1.8;}.akv-loading-spinner{width:44px;height:44px;margin-bottom:20px;border-radius:50%;border:3px solid rgba(154,122,70,.15);border-top:
        4px solid #c6a56b;animation:akvArchiveSpin .8s linear infinite;border-top-color:#9a7a46;}@keyframes akvArchiveSpin{to{transform:rotate(360deg);}}@media(max-width:1200px){.akv-archive-hero__inner{align-items:flex-start;flex-direction:column;}.akv-archive-trust{min-width:0;width:min(100%,520px);}.akv-search-grid--primary{grid-template-columns:repeat(2,1fr);}.akv-search-field--wide{grid-column:1/-1;}.akv-search-submit{grid-column:1/-1;}.akv-search-grid--advanced{grid-template-columns:repeat(2,1fr);}.akv-villa-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media(max-width:768px){.akv-archive-hero{min-height:650px;padding:130px 0 145px;}.akv-archive-hero__copy h1{font-size:43px;}.akv-archive-hero__copy p{font-size:14px;}.akv-archive-trust{min-width:0;width:100%;grid-template-columns:1fr 1fr 1fr;}.akv-archive-trust div{padding:15px 11px;}.akv-archive-trust strong{font-size:15px;}.akv-archive-trust span{font-size:8px;}.akv-archive-search{margin-top:-70px;padding-bottom:55px;}.akv-search-panel{padding:21px;border-radius:24px;}.akv-search-panel__head{display:block;}.akv-search-panel__head h2{font-size:27px;}.akv-search-panel__head p{margin-top:10px;}.akv-search-grid--primary,.akv-search-grid--advanced{grid-template-columns:1fr;}.akv-search-field--wide,.akv-search-submit{grid-column:auto;}.akv-search-submit{width:100%;}.akv-search-panel__tools{margin-top:15px;}.akv-results-head{display:block;margin-bottom:24px;}.akv-results-head h2{font-size:35px;}.akv-results-head>p{margin-top:14px;}.akv-villa-grid{grid-template-columns:1fr;gap:18px;}.akv-archive-results{padding-bottom:70px;}}



/* FINAL SEARCH FIELD BORDER — one border per field, original layout preserved. */
.akv-search-panel .akv-search-field input,
.akv-search-panel .akv-search-field select{
    border:1px solid #dfe5eb;
    background:#fff;
    box-shadow:none;
    box-sizing:border-box;
}

.akv-search-panel .akv-search-field input:hover,
.akv-search-panel .akv-search-field select:hover{
    border-color:#cbd5df;
}

.akv-search-panel .akv-search-field input:focus,
.akv-search-panel .akv-search-field select:focus{
    border-color:#c6a56b;
    box-shadow:0 0 0 3px rgba(198,165,107,.10);
}

.akv-search-panel .akv-search-submit{
    width:100%;
    min-width:0;
    max-width:100%;
}

/* FINAL: single border per search control. Labels sit directly above the input border. */
.akv-search-panel .akv-search-field {
    min-height:0;
    height:auto;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

.akv-search-panel .akv-search-field:focus,
.akv-search-panel .akv-search-field:focus-within {
    border:0;
    box-shadow:none;
    outline:0;
}

.akv-search-panel .akv-search-field > span {
    display:block;
    margin:0 0 7px;
    padding:0;
    line-height:1.2;
}

.akv-search-panel .akv-search-field input,
.akv-search-panel .akv-search-field select {
    border:1px solid #dfe5eb;
    border-radius:15px;
    box-shadow:none;
}

.akv-search-panel .akv-search-field input:focus,
.akv-search-panel .akv-search-field select:focus {
    border-color:#c6a56b;
    box-shadow:0 0 0 3px rgba(198,165,107,.10);
}

/* FINAL EYEBROW ALIGNMENT — center each label inside its own content column. */
.akv-search-panel__head > div > .akv-eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
}

.akv-results-head > div > .akv-eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    margin-left:0;
    margin-right:0;
    text-align:center;
}


/* FINAL VILLA FILTER WIDTH
 * Keep every filter control comfortably readable on desktop.
 * The advanced filter uses 3 equal columns instead of 4 narrow columns.
 */
.akv-search-panel .akv-search-grid--advanced{
    display:grid;
    grid-template-columns:repeat(3,minmax(240px,1fr));
    gap:18px;
    align-items:end;
}

.akv-search-panel .akv-search-grid--advanced .akv-search-field{
    min-width:240px;
}

.akv-search-panel .akv-search-grid--advanced .akv-search-field input,
.akv-search-panel .akv-search-grid--advanced .akv-search-field select{
    width:100%;
    min-width:0;
}

/* Price detail and villa facts inside each listing card. */
.akv-villa-card__facts{
    display:flex;
    flex-wrap:wrap;
    gap:6px 14px;
    margin-top:12px;
    color:#697586;
    font-size:10.5px;
    line-height:1.4;
    font-weight:700;
}

.akv-villa-card__facts span{
    position:relative;
}

.akv-villa-card__facts span + span::before{
    content:"";
    position:absolute;
    left:-8px;
    top:50%;
    width:3px;
    height:3px;
    border-radius:50%;
    background:#c6a56b;
    transform:translateY(-50%);
}

.akv-villa-card__rating small{
    color:#9a7a46;
    font-size:9px;
    font-weight:700;
}

@media(max-width:1200px){
    .akv-search-panel .akv-search-grid--advanced{
        grid-template-columns:repeat(2,minmax(240px,1fr));
    }

    .akv-search-panel .akv-search-grid--advanced .akv-search-field{
        min-width:0;
    }
}

@media(max-width:768px){
    .akv-search-panel .akv-search-grid--advanced{
        grid-template-columns:1fr;
    }
}

/* =========================================================
   AKUVILLA — MOBILE VILLA SEARCH COMPACT
   Keeps the archive search usable without dominating the page.
   Desktop untouched.
========================================================= */
@media (max-width: 680px) {
    .akv-archive-search {
        margin-top: -38px;
        padding-bottom: 38px;
    }

    .akv-search-panel {
        padding: 15px;
        border-radius: 19px;
        box-shadow: 0 14px 34px rgba(16,42,67,.10);
    }

    .akv-search-panel__head {
        margin-bottom: 12px;
    }

    .akv-search-panel__head h2 {
        margin: 0;
        font-size: 22px;
        line-height: 1.15;
        letter-spacing: -.04em;
    }

    .akv-search-panel__head p {
        margin: 6px 0 0;
        font-size: 10.5px;
        line-height: 1.45;
    }

    .akv-search-grid--primary,
    .akv-search-grid--advanced {
        gap: 8px;
    }

    .akv-search-field {
        min-height: 48px;
        padding: 8px 10px;
        border-radius: 12px;
    }

    .akv-search-field > span {
        margin-bottom: 3px;
        font-size: 8px;
    }

    .akv-search-field input,
    .akv-search-field select {
        height: 30px;
        min-height: 30px;
        font-size: 11px;
        border-radius: 8px;
    }

    .akv-search-submit {
        height: 45px;
        min-height: 45px;
        border-radius: 12px;
        font-size: 11px;
    }

    .akv-search-panel__tools {
        margin-top: 9px;
        gap: 7px;
    }
}

@media (max-width: 430px) {
    .akv-archive-search {
        margin-top: -30px;
        padding-bottom: 32px;
    }

    .akv-search-panel {
        padding: 13px;
        border-radius: 17px;
    }

    .akv-search-panel__head h2 {
        font-size: 20px;
    }

    .akv-search-panel__head p {
        font-size: 10px;
    }
}

/* =========================================================
   AKUVILLA — TABLET FILTER FACILITIES POSITION FIX
   Facilities must always sit below the four advanced fields,
   never beside/inside the room/sort columns.
========================================================= */
.akv-search-panel #akv-advanced-filter {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.akv-search-panel #akv-advanced-filter > .akv-search-grid--advanced {
    width: 100%;
    min-width: 0;
}

.akv-search-panel #akv-advanced-filter > .akv-facility-filter {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    margin-top: 18px;
    padding: 16px 0 0;
    border-top: 1px solid #edf0f3;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 18px;
    align-items: center;
}

.akv-search-panel #akv-advanced-filter > .akv-facility-filter legend {
    grid-column: 1 / -1;
    width: auto;
    margin: 0 0 2px;
}

.akv-search-panel #akv-advanced-filter > .akv-facility-filter label {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

@media (max-width: 768px) {
    .akv-search-panel #akv-advanced-filter {
        display: none;
        grid-template-columns: 1fr;
    }

    .akv-search-panel #akv-advanced-filter.is-visible {
        display: grid;
    }

    .akv-search-panel #akv-advanced-filter > .akv-search-grid--advanced {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .akv-search-panel #akv-advanced-filter > .akv-facility-filter {
        grid-column: 1;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px 12px;
        margin-top: 14px;
        padding-top: 14px;
    }

    .akv-search-panel #akv-advanced-filter > .akv-facility-filter label {
        justify-content: flex-start;
        white-space: normal;
        line-height: 1.35;
    }
}

@media (max-width: 480px) {
    .akv-search-panel #akv-advanced-filter > .akv-facility-filter {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .akv-search-panel #akv-advanced-filter > .akv-facility-filter legend {
        margin-bottom: 3px;
    }
}


/* Search Villa date picker — visually aligned with the current booking calendar. */
body .akv-search-calendar-popover {
    position: fixed;
    z-index: 2147483000;
    box-sizing: border-box;
    padding: 14px;
    border: 1px solid #d7dde5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(16,24,40,.18);
    color: #111827;
}
body .akv-search-calendar-popover[hidden] { display:none !important; }
body .akv-search-calendar-popover .akv-calendar-head,
body .akv-search-calendar-popover .akv-calendar-nav {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}
body .akv-search-calendar-popover .akv-calendar-head { padding:2px 2px 12px; border-bottom:1px solid #e5e7eb; }
body .akv-search-calendar-popover .akv-calendar-head small { display:block; margin-bottom:3px; color:#9a7a46; font-size:7px; font-weight:900; letter-spacing:.14em; }
body .akv-search-calendar-popover .akv-calendar-head strong { display:block; font-size:13px; line-height:1.2; }
body .akv-search-calendar-popover .akv-calendar-close,
body .akv-search-calendar-popover .akv-calendar-nav button {
    border:1px solid #e5e7eb;
    background:#fff;
    color:#111827;
    cursor:pointer;
}
body .akv-search-calendar-popover .akv-calendar-close { width:30px; height:30px; border-radius:10px; font-size:18px; line-height:1; }
body .akv-search-calendar-popover .akv-calendar-nav { padding:11px 0; }
body .akv-search-calendar-popover .akv-calendar-nav strong { font-size:10px; }
body .akv-search-calendar-popover .akv-calendar-nav button { width:30px; height:30px; border-radius:9px; font-size:18px; }
body .akv-search-calendar-popover .akv-calendar-nav button:disabled { opacity:.35; cursor:not-allowed; }
body .akv-search-calendar-popover .akv-calendar-weekdays,
body .akv-search-calendar-popover .akv-calendar-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
body .akv-search-calendar-popover .akv-calendar-weekdays { margin-bottom:5px; }
body .akv-search-calendar-popover .akv-calendar-weekdays span { text-align:center; color:#98a2b3; font-size:7px; font-weight:800; text-transform:uppercase; }
body .akv-search-calendar-popover .akv-calendar-day,
body .akv-search-calendar-popover .akv-calendar-empty { min-width:0; aspect-ratio:1; }
body .akv-search-calendar-popover .akv-calendar-day { border:1px solid transparent; border-radius:10px; background:#fff; color:#111827; font-size:11px; font-weight:800; cursor:pointer; }
body .akv-search-calendar-popover .akv-calendar-day:hover:not(:disabled) { border-color:#d7dde5; background:#faf8f5; }
body .akv-search-calendar-popover .akv-calendar-day.is-today { box-shadow:inset 0 0 0 1px #b18b58; }
body .akv-search-calendar-popover .akv-calendar-day.is-selected { background:#111827 !important; color:#fff !important; border-color:#111827 !important; }
body .akv-search-calendar-popover .akv-calendar-day.is-disabled { opacity:.55; cursor:not-allowed; }
body .akv-search-calendar-popover .akv-calendar-day.is-past { opacity:.28; }
body .akv-search-calendar-popover .akv-calendar-day.is-range {
    background:rgba(37,99,235,.14) !important;
    color:#1d4ed8 !important;
    border-color:rgba(37,99,235,.12) !important;
}
body .akv-search-calendar-popover .akv-calendar-day.is-range-start,
body .akv-search-calendar-popover .akv-calendar-day.is-range-end {
    background:rgba(37,99,235,.24) !important;
    color:#1d4ed8 !important;
    border-color:rgba(37,99,235,.22) !important;
}
body .akv-search-calendar-popover .akv-calendar-day.is-range-start.is-selected,
body .akv-search-calendar-popover .akv-calendar-day.is-range-end.is-selected {
    background:rgba(37,99,235,.28) !important;
    color:#1e40af !important;
}
body .akv-search-calendar-popover .akv-calendar-legend-custom { display:grid; grid-template-columns:repeat(2,1fr); gap:7px 10px; margin-top:12px; padding-top:10px; border-top:1px solid #e5e7eb; }
body .akv-search-calendar-popover .akv-calendar-legend-custom span { display:flex; align-items:center; gap:6px; color:#667085; font-size:7px; }
body .akv-search-calendar-popover .akv-calendar-legend-custom .akv-dot { display:block; width:7px; height:7px; border-radius:50%; flex:0 0 7px; }
body .akv-search-calendar-popover .akv-calendar-legend-custom .akv-dot-selected { background:#111827; }
body .akv-search-calendar-popover .akv-calendar-legend-custom .akv-dot-range { background:rgba(37,99,235,.45); }
@media (max-width:520px) {
    body .akv-search-calendar-popover { width:min(94vw,350px) !important; padding:12px; border-radius:16px; }
    body .akv-search-calendar-popover .akv-calendar-day { font-size:10px; border-radius:9px; }
}
.akv-search-panel #filter_checkin,
.akv-search-panel #filter_checkout { cursor:pointer; caret-color:transparent; }


/* =========================================================
   DESTINATION INTERNAL LINKS
   ========================================================= */
.akv-archive-destination-links {
    margin-top: 64px;
    padding: 32px;
    border: 1px solid rgba(17,24,39,.08);
    border-radius: 26px;
    background: #fff;
}
.akv-archive-destination-links__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}
.akv-archive-destination-links__head h2 {
    margin: 8px 0 0;
    color: #111827;
    font-size: clamp(26px, 3vw, 36px);
    line-height: 1.08;
    letter-spacing: -.04em;
}
.akv-archive-destination-links__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.akv-archive-destination-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 17px 18px;
    border: 1px solid rgba(17,24,39,.08);
    border-radius: 16px;
    color: #111827;
    text-decoration: none;
    background: #fbfaf8;
}
.akv-archive-destination-link:hover {
    border-color: rgba(154,122,70,.35);
}
.akv-archive-destination-link strong {
    font-size: 13px;
    line-height: 1.35;
}
.akv-archive-destination-link span {
    flex: 0 0 auto;
    color: #6b7280;
    font-size: 11px;
}
@media(max-width:900px){
    .akv-archive-destination-links__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:700px){
    .akv-archive-destination-links{padding:22px;border-radius:20px;}
    .akv-archive-destination-links__head{align-items:flex-start;flex-direction:column;}
    .akv-archive-destination-links__grid{grid-template-columns:1fr;}
}
