@charset "UTF-8";

/* Llano template — plains, desert, blue sky & aqueduct over Bootstrap 4 */

:root {
    --llano-sand: #F4E4C1;
    --llano-dune: #C4A574;
    --llano-stone: #A67C52;
    --llano-terracotta: #B85C38;
    --llano-terracotta-dark: #8B3A12;
    --llano-gold: #C9A227;
    --llano-sky: #3A7CA5;
    --llano-sky-deep: #1F5F8B;
    --llano-sky-light: #7EB6D9;
    --llano-ink: #2C241C;
    --llano-cream: #F7F4EC;
    --llano-grass: #6B8F71;
}

body.theme-llano,
body {
    background: var(--llano-cream) url("../img/llano/llano-texture.jpg") center/cover fixed;
    background-blend-mode: soft-light;
    color: var(--llano-ink);
    font-family: "Nunito Sans", "Open Sans", sans-serif;
}

body.theme-llano:before {
    content: "";
    pointer-events: none;
    position: fixed;
    inset: 0;
    background: linear-gradient(180deg, rgba(126,182,217,.28) 0%, rgba(247,244,236,.85) 35%, rgba(244,228,193,.55) 100%);
    z-index: -1;
}

body.theme-llano h1,
body.theme-llano h2,
body.theme-llano h3,
body.theme-llano h4,
body.theme-llano .section-title,
body.theme-llano .h-side-title,
body.theme-llano .page-title,
body.theme-llano .carousel-caption-title,
body.theme-llano .widget-header,
body.theme-llano .footer .title {
    font-family: "Cinzel", "Times New Roman", serif;
    letter-spacing: .04em;
}

body.theme-llano .color-primary,
body.theme-llano .btn.color-primary,
body.theme-llano .btn.btn-primary,
body.theme-llano .search-form,
body.theme-llano .header .top-bar,
body.theme-llano .widget .widget-header,
body.theme-llano .pagination .page-item.active .page-link,
body.theme-llano .focus-color,
body.theme-llano .btn-search {
    background-color: var(--llano-sky) !important;
    border-color: var(--llano-sky) !important;
}

body.theme-llano .color-secondary,
body.theme-llano .header .top-bar .pull-right,
body.theme-llano .header .top-bar .float-right {
    background-color: var(--llano-sky-deep) !important;
}

body.theme-llano .text-color-primary,
body.theme-llano .menu .nav > .nav-item .nav-link:hover,
body.theme-llano .menu .active .nav-link,
body.theme-llano .menu .nav-link.active,
body.theme-llano a.text-color-primary {
    color: var(--llano-sky-deep) !important;
}

body.theme-llano .border-color-primary,
body.theme-llano .bottom-line.color-primary,
body.theme-llano .line-bottom.color-primary {
    border-color: var(--llano-gold) !important;
    background: var(--llano-gold) !important;
}

body.theme-llano .section-color-primary {
    background: transparent !important;
}

body.theme-llano .section-color-secondary {
    background: rgba(58, 124, 165, .1) !important;
}

body.theme-llano .focus-color,
body.theme-llano .btn.focus-color {
    background-color: var(--llano-terracotta) !important;
    color: #fff !important;
}

body.theme-llano .btn.focus-color:hover {
    background-color: var(--llano-sky-deep) !important;
    color: #fff !important;
}

/* Header — aqueduct strip, never covers map */
body.theme-llano .header {
    position: relative;
    z-index: 30;
}

body.theme-llano .header-inner {
    background: linear-gradient(180deg, #E8F4FA 0%, #F7F4EC 55%, #F4E4C1 100%) !important;
    box-shadow: none;
    border-bottom: 0;
    overflow: visible;
}

body.theme-llano .header-inner:after {
    content: "" !important;
    display: block !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    height: 44px !important;
    margin: 0 !important;
    border: 0 !important;
    background: url("../img/llano/aqueduct.svg") center bottom / 100% 44px no-repeat !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

body.theme-llano .top-bar-fixed .header-inner:after,
body.theme-llano .is-sticky .header-inner:after {
    display: none !important;
}

body.theme-llano .header-map,
body.theme-llano .header-slider.header-map,
body.theme-llano #main-map,
body.theme-llano .main-map,
body.theme-llano #mapsAddress,
body.theme-llano #contact-map,
body.theme-llano #property-map,
body.theme-llano .contact-map,
body.theme-llano .property-map {
    position: relative;
    z-index: 4;
    isolation: isolate;
    background-image: none !important;
}

body.theme-llano .leaflet-container,
body.theme-llano .gm-style {
    background: #d4e6f0 !important;
}

body.theme-llano .header-map:before,
body.theme-llano .header-map:after,
body.theme-llano #main-map:before,
body.theme-llano #main-map:after,
body.theme-llano #contact-map:before,
body.theme-llano #contact-map:after,
body.theme-llano #property-map:before,
body.theme-llano #property-map:after {
    content: none !important;
    display: none !important;
    background: none !important;
    pointer-events: none !important;
}

body.theme-llano .header .top-bar {
    background-image: linear-gradient(90deg, rgba(31,95,139,.88), rgba(58,124,165,.7)), url("../img/llano/llano-hero.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
    font-size: 12px;
    letter-spacing: .03em;
}

body.theme-llano .header .top-bar a,
body.theme-llano .header .top-bar {
    color: #FFF8EC !important;
}

body.theme-llano .header .login-menu i {
    color: var(--llano-gold);
}

/* Main menu: Bootstrap 4 structure, single row (no wrap), theme colors only */
@media (min-width: 768px) {
    body.theme-llano .menu #main-menu.nav {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        width: auto;
        max-width: 100%;
    }

    body.theme-llano .menu .nav > .nav-item {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    body.theme-llano .menu .nav > .nav-item .nav-link {
        white-space: nowrap;
        padding-left: 12px;
        padding-right: 12px;
    }
}

body.theme-llano .menu .nav > .nav-item .nav-link {
    color: var(--llano-ink) !important;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: .06em;
}

body.theme-llano .menu .nav > .nav-item .nav-link:hover,
body.theme-llano .menu .active .nav-link,
body.theme-llano .menu .nav-link.active {
    color: var(--llano-sky-deep) !important;
    background: transparent !important;
}

body.theme-llano .dropdown-menu {
    background: #FFF8EC;
    border: 1px solid var(--llano-sky-light);
    box-shadow: 0 12px 24px rgba(31, 95, 139, .15);
    z-index: 50;
}

body.theme-llano .dropdown-item,
body.theme-llano .dropdown-menu > li > a {
    color: var(--llano-ink) !important;
}

body.theme-llano .dropdown-item:hover,
body.theme-llano .dropdown-item.active {
    background: var(--llano-sky) !important;
    color: #fff !important;
}

body.theme-llano .navbar-toggle .icon-bar {
    background: var(--llano-sky);
}

/* Search */
body.theme-llano .search-form {
    background-image: linear-gradient(180deg, rgba(31,95,139,.45), rgba(184,92,56,.45)), url("../img/llano/llano-1.png") !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative;
    padding-top: 56px;
}

body.theme-llano .search-form:before {
    content: "\f185";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--llano-gold);
    font-size: 22px;
    text-shadow: 0 2px 8px rgba(0,0,0,.35);
}

body.theme-llano .llano-search-kicker {
    color: #FFF8EC;
    font-family: "Cinzel", serif;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-size: 13px;
    margin: 0 0 18px;
    text-shadow: 0 2px 8px rgba(0,0,0,.35);
}

body.theme-llano .llano-search-kicker i {
    color: var(--llano-gold);
    margin-right: 8px;
}

body.theme-llano .search-form select,
body.theme-llano .search-form input,
body.theme-llano .search-form .bootstrap-select .dropdown-toggle {
    background: rgba(255,248,236,.16) !important;
    color: #fff !important;
    border: 1px solid rgba(255,248,236,.35) !important;
}

body.theme-llano .top-title {
    background-image: linear-gradient(90deg, rgba(31,95,139,.55), rgba(184,92,56,.35)), url("../img/llano/llano-hero.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
    padding: 42px 0 52px;
    position: relative;
    overflow: hidden;
}

body.theme-llano .top-title:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 44px;
    background: url("../img/llano/aqueduct.svg") center bottom / 100% 44px no-repeat;
    pointer-events: none;
    z-index: 1;
}

body.theme-llano .top-title .page-title,
body.theme-llano .top-title .breadcrumb,
body.theme-llano .top-title .breadcrumb a {
    color: #FFF8EC !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.35);
}

body.theme-llano .top-title .page-title:before {
    content: "\f543";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-right: 10px;
    color: var(--llano-gold);
}

/* Cards */
body.theme-llano .property-card,
body.theme-llano .widget,
body.theme-llano .panel,
body.theme-llano .box-white,
body.theme-llano .content-box,
body.theme-llano .agents-corousel-item {
    background: rgba(255, 248, 236, .94);
    border: 1px solid rgba(58, 124, 165, .28);
    box-shadow: 0 10px 24px rgba(31, 95, 139, .1);
}

body.theme-llano .property-card .property-card-box .property-card-title a:hover {
    background: var(--llano-sky) !important;
    color: #fff !important;
}

body.theme-llano .main {
    background: transparent;
}

body.theme-llano .h-side-title.page-title:before {
    content: "\f72e";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-right: 8px;
    color: var(--llano-sky);
}

/* Forms */
body.theme-llano .form-control,
body.theme-llano .bootstrap-select .dropdown-toggle,
body.theme-llano input[type="text"],
body.theme-llano input[type="email"],
body.theme-llano textarea {
    background: #FFF8EC !important;
    border: 1px solid var(--llano-dune) !important;
    color: var(--llano-ink) !important;
    box-shadow: none !important;
}

body.theme-llano .form-control:focus {
    border-color: var(--llano-sky) !important;
}

body.theme-llano .btn-primary,
body.theme-llano .btn.btn-success,
body.theme-llano input[type="submit"],
body.theme-llano button[type="submit"]:not(.navbar-toggle) {
    background: var(--llano-sky) !important;
    border-color: var(--llano-sky-deep) !important;
    color: #fff !important;
}

body.theme-llano .btn-primary:hover,
body.theme-llano .btn.color-primary:hover {
    background: var(--llano-terracotta) !important;
}

body.theme-llano .pagination .page-link {
    color: var(--llano-sky-deep);
    background: #FFF8EC;
    border-color: var(--llano-dune);
}

body.theme-llano .label,
body.theme-llano .badge,
body.theme-llano .ownership-badget {
    background: var(--llano-sky) !important;
    color: #fff !important;
}

/* Footer */
body.theme-llano .footer {
    background: url("../img/llano/llano-3.png") !important;
	color: var(--llano-sand);
    position: relative;
    margin-top: 0;
    overflow: hidden;
    padding-top: 44px;
}

body.theme-llano .footer:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 44px;
    background: url("../img/llano/aqueduct.svg") center top / 100% 44px no-repeat;
    pointer-events: none;
    z-index: 1;
}

body.theme-llano .footer .footer-mask {
    background: linear-gradient(180deg, rgba(31,95,139,.82), rgba(31,95,139,.94));
}

body.theme-llano .footer a,
body.theme-llano .footer .title,
body.theme-llano .footer li {
    color: var(--llano-sand) !important;
}

body.theme-llano .footer a:hover {
    color: var(--llano-gold) !important;
}

body.theme-llano .footer .title {
    border-bottom: 1px solid var(--llano-gold);
    padding-bottom: 8px;
    margin-bottom: 14px;
}

body.theme-llano .footer .title:before {
    content: "\f543";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-right: 8px;
    color: var(--llano-gold);
}

body.theme-llano .footer .footer-bottom {
    background: linear-gradient(180deg, #E8F4FA 0%, #F7F4EC 55%, #F4E4C1 100%) !important;
    border-top: 1px solid rgba(58, 124, 165, .35);
    color: var(--llano-ink);
}

body.theme-llano .footer .footer-bottom a,
body.theme-llano .footer .footer-bottom .llano-footer-mark {
    color: var(--llano-sky-deep) !important;
}

body.theme-llano .footer .footer-bottom a:hover {
    color: var(--llano-terracotta) !important;
}

body.theme-llano .llano-footer-mark {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: "Cinzel", serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.theme-llano .llano-footer-sun {
    width: 28px;
    height: 28px;
    background: url("../img/llano/llano-sun.png") center/contain no-repeat;
    display: inline-block;
}

body.theme-llano .carousel-caption {
    background: linear-gradient(180deg, transparent, rgba(31,95,139,.55));
}

body.theme-llano .carousel-caption-title span {
    color: #FFF8EC;
}

body.theme-llano .infobox .title a:hover,
body.theme-llano .infobox .infobox-link-btn:hover,
body.theme-llano .google_marker:before,
body.theme-llano .cluster div {
    background: var(--llano-sky) !important;
}

body.theme-llano .contact-form,
body.theme-llano .login-form,
body.theme-llano .panel-login,
body.theme-llano .widget-content,
body.theme-llano .box,
body.theme-llano .white-block {
    background: rgba(255,248,236,.95);
}

body.theme-llano .alert-success {
    background: #E8F0DC;
    border-color: var(--llano-grass);
    color: var(--llano-grass);
}

body.theme-llano .alert-error,
body.theme-llano .alert-danger {
    background: #F8E6D8;
    border-color: var(--llano-terracotta);
    color: var(--llano-terracotta-dark);
}

body.theme-llano .container-wrapper:after {
    content: "";
    pointer-events: none;
    position: fixed;
    right: 12px;
    bottom: 18px;
    width: 72px;
    height: 72px;
    opacity: .2;
    background: url("../img/llano/llano-aqueduct-icon.png") center/contain no-repeat;
    z-index: 0;
}

body.theme-llano .lang-manu .btn {
    background: var(--llano-sky-deep) !important;
    color: var(--llano-sand) !important;
    border: 0;
}

@media (max-width: 767px) {
    body.theme-llano .container-wrapper:after {
        width: 48px;
        height: 48px;
        opacity: .14;
    }
}