:root {
    --unifamiliale-available: #94A596;
    --unifamiliale-available-active: #748275;
    --rangee-available: #425563;
    --rangee-available-active: #23303a;
    --jumele-available: #A4493D;
    --jumele-available-active: #71261c;
    --appartement-available: #DB8E02;
    --appartement-available-active: #ab6e00;
    --reserved: #919191;
    --sold: #292523;
}

.lots-selector {
    position: relative;
    padding: 60px 100px;
}

[data-tippy-root] {
    z-index: 10 !important;
}

/* #favorite-lots-popup * {
    color: #425563;
} */
.lots-selector *,
.tippy-box[data-theme="lot"] * {
    color: #425563;
    font-size: 16px;
    font-weight: 500;
    margin: 0;
}

.lots-selector *:not(i),
.tippy-box[data-theme="lot"] *:not(i) {
    font-family: "Anodina", Sans-serif;
}

.tippy-box[data-theme="lot"] {
    /* height: 200px;
    overflow: hidden; */
    background-color: #FCFAF3;
    border: 3px solid #465562;
    border-radius: 0;
    box-shadow: 0 0 10px rgba(3, 17, 36, 0.35);
}

.tippy-box[data-theme="lot"] > .tippy-content {
    padding: 30px;
}

.rose-des-vents {
    width: 50px;
    height: 50px;
    position: absolute;
    right: 30px;
    bottom: 30px;
}

.rose-des-vents img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.sheet-informations {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: start;
    align-items: center;
    gap: 15px;
}

.sheet-informations span {
    text-transform: uppercase;
    font-weight: 600 !important;
    font-size: 180% !important;
    letter-spacing: 1.5px;
    margin: 0;
    line-height: 1;
}

.sheet-informations span.lot-favorite-icon {
    cursor: pointer;
}

.sheet-informations span.lot-favorite-icon svg {
    width: 30px;
    transform: translateY(3px);
}

.sheet-informations span.lot-favorite-icon svg #plein {
    opacity: 0;
    transition: all 150ms ease-in-out;
}

.sheet-informations span.lot-favorite-icon:hover svg #plein {
    opacity: 0.35;
}

.sheet-informations span.lot-favorite-icon.active svg #plein {
    opacity: 0.75;
}

.sheet-header {
    display: grid;
    grid-auto-flow: column;
    justify-content: start;
    align-items: center;
    gap: 15px;
    margin: 5px 0 15px 0 !important;
}

.sheet-header * {
    line-height: 1;
    text-transform: uppercase;
}

.sheet-header .availability p {
    font-size: 75%;
    padding: 4px 16px;
    color: #FCFAF3 !important;
}

.sheet-header[data-type="unifamiliale"] .availability.available {
    background-color: var(--unifamiliale-available);
}

.sheet-header[data-type="rangee"] .availability.available {
    background-color: var(--rangee-available);
}

.sheet-header[data-type="jumele"] .availability.available {
    background-color: var(--jumele-available);
}

.sheet-header[data-type="appartement"] .availability.available {
    background-color: var(--appartement-available);
}

.sheet-header .availability.reserved {
    background-color: var(--reserved);
}

.sheet-header .availability.sold {
    background-color: var(--sold);
}

.sheet-specs strong {
    text-transform: uppercase;
    font-weight: 600 !important;
}

.sheet-contact-form {
    margin-top: 15px !important;
    padding-top: 15px;
    border-top: 1px solid #425563;
}

.sheet-contact-form form {
    max-width: 400px;
}

.sheet-contact-form > p {
    text-transform: uppercase;
    line-height: 1.15;
    margin-bottom: 15px !important;
}

.favorite-lots-form input:not([type="submit"]), .favorite-lots-form textarea,
.sheet-contact-form input:not([type="submit"]), .sheet-contact-form textarea {
    border: 1px solid #425563;
    padding: 6px;
    margin: 0 !important;
    background-color: transparent;
    border-radius: 0;
    line-height: 1.15;
    vertical-align: middle;
}

.favorite-lots-form input:not([type="submit"])::placeholder,
.favorite-lots-form textarea::placeholder,
.sheet-contact-form input:not([type="submit"])::placeholder,
.sheet-contact-form textarea::placeholder {
    text-transform: uppercase !important;
}
.favorite-lots-form input:not([type="submit"])::-webkit-input-placeholder,
.favorite-lots-form textarea::-webkit-input-placeholder,
.sheet-contact-form input:not([type="submit"])::-webkit-input-placeholder,
.sheet-contact-form textarea::-webkit-input-placeholder {
    text-transform: uppercase !important;
}
.favorite-lots-form input:not([type="submit"])::-moz-placeholder,
.favorite-lots-form textarea::-moz-placeholder,
.sheet-contact-form input:not([type="submit"])::-moz-placeholder,
.sheet-contact-form textarea::-moz-placeholder {
    text-transform: uppercase !important;
}

.favorite-lots-form textarea,
.sheet-contact-form textarea {
    resize: none;
    height: 80px;
}

.lot-field-form.submit {
    position: relative;
}

.favorite-lots-form input[type="submit"],
.sheet-contact-form input[type="submit"] {
    border: none;
    background-color: #465562 !important;
    color: #FCFAF3;
    text-transform: uppercase !important;
    text-align: center;
    width: 100%;
    padding: 6px 12px;
    letter-spacing: 1.5px;
    border-radius: 0;
}

.favorite-lots-form input[type="submit"]:focus,
.sheet-contact-form input[type="submit"]:focus {
    outline: none;
}

.favorite-lots-form input[type="submit"]:hover,
.sheet-contact-form input[type="submit"]:hover {
    background-color: var(--sold) !important;
}

.lot-field-form.submit .ajax-loader {
    position: absolute;
    right: -27px;
    top: 50%;
    transform: translateY(-50%);
}

.lots-sheets-type .lot-field-form.submit .ajax-loader,
.favorite-lots-form .lot-field-form.submit .ajax-loader {
    right: -51px;
}

.favorite-lots-form .wpcf7-not-valid,
.sheet-contact-form .wpcf7-not-valid {
    border-color: var(--jumele-available) !important;
    background-color: rgba(164, 73, 61, 0.15) !important;
}

.favorite-lots-form .wpcf7-not-valid-tip,
.sheet-contact-form .wpcf7-not-valid-tip {
    display: none;
}

.favorite-lots-form .wpcf7 form .wpcf7-response-output,
.sheet-contact-form .wpcf7 form .wpcf7-response-output {
    margin: 0;
    border: none;
    background-color: var(--unifamiliale-available) !important;
    color: #FCFAF3;
    padding: 5px 10px;
    font-size: 75%;
    line-height: 1.15;
}

.favorite-lots-form .wpcf7 form.invalid .wpcf7-response-output,
.sheet-contact-form .wpcf7 form.invalid .wpcf7-response-output {
    background-color: var(--jumele-available) !important;
}

.favorite-lots-form form,
.sheet-contact-form form {
    display: grid;
    gap: 6px;
}

.close-tippy {
    position: absolute;
    right: 10px;
    top: 10px;
    cursor: pointer;

    width: 24px;
    height: 24px;
    background-color: transparent;
    border-radius: 100%;
    border: 2px solid #425563;
    transition: all 150ms ease-in-out;
    outline: none;
}

.close-tippy:hover {
    background-color: #425563;
}

.close-tippy i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 14px;
    color: #425563;
    transition: all 150ms ease-in-out;
}

.close-tippy:hover i {
    color: #FCFAF3;
}

.lots-selector .ui-selector {
    position: absolute;
    top: 300px;
    right: 60px;
    width: 100%;
    max-width: 420px;
}

.filters-items {
    margin-top: 15px;
}

.filters-lots {
    padding: 30px;
    border: 3px solid #465562;
}

.filters-lots > h3 {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 150%;
}

.filters-lots > p {
    text-transform: uppercase;
    font-size: 110%;
    line-height: 1.15;
}

.legend-lots {
    margin-top: 30px;
}

.lots-sheets .legend-lots {
    display: none;
    margin-top: 30px;
}

@media all and (max-width: 991px) {
    .lots-sheets .legend-lots {
        display: block;
    }
    .ui-selector .legend-lots {
        display: none;
    }
    .legend-items {
        grid-template-columns: auto auto auto;
        gap: 30px !important;
    }
}

.filters-lots ul,
.legend-lots ul {
    list-style: none;
    padding-inline-start: 0;
    display: grid;
    justify-content: start;
    gap: 15px;
}

.filters-lots ul {
    gap: 10px;
}

.filters-lots ul li,
.legend-lots ul li {
    content: "";
    display: grid;
    grid-auto-flow: column;
    gap: 15px;
    justify-content: start;
    align-items: center;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 110%;
}

.filters-lots ul li {
    position: relative;
    font-size: 125%;
    cursor: pointer;
}

.filters-lots ul li::before {
    content: ">";
    display: inline-block;
    font-size: 110%;
    font-weight: 600;
    transform: translateY(-2px);
}

.filters-lots ul li::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    width: 0%;
    height: 2px;
    grid-column: 2 / span 1;
    transition: all 150ms ease-in-out;
}

.filters-lots ul li:hover::after,
.filters-lots ul li.active::after {
    width: 100%;
}

.filters-lots ul li[data-type="unifamiliale"] {
    color: var(--unifamiliale-available);
}

.filters-lots ul li[data-type="rangee"] {
    color: #425563;
}

.filters-lots ul li[data-type="jumele"] {
    color: var(--jumele-available);
}

.filters-lots ul li[data-type="appartement"] {
    color: var(--appartement-available);
}

.filters-lots ul li[data-type="unifamiliale"]::after {
    background-color: var(--unifamiliale-available);
}

.filters-lots ul li[data-type="rangee"]::after {
    background-color: var(--rangee-available);
}

.filters-lots ul li[data-type="jumele"]::after {
    background-color: var(--jumele-available);
}

.filters-lots ul li[data-type="appartement"]::after {
    background-color: var(--appartement-available);
}

.legend-lots ul li::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    border: 2px solid #465562;
}

.legend-lots ul li[data-availability="reserved"]::before {
    border-color: var(--reserved);
    background-color: var(--reserved);
}

.legend-lots ul li[data-availability="sold"]::before {
    border-color: var(--sold);
    background-color: var(--sold);
}

g[data-availability="unifamiliale"] g[data-lot="53"]::before {
    content: "";
    display: block;
    background: url('../images/pattern.png') repeat;
}

svg > g > g[data-lot] {
    cursor: pointer;
}

svg > g > g[data-lot] * {
    opacity: .75;
    transition: all 150ms ease-in-out;
}

/* #lots-global-plan svg > g > g[data-lot] {
    opacity: 1;
} */

#lots-global-plan svg > g > g[data-lot] * {
    opacity: .75;
}

svg > g[data-type].not-active > g * {
    opacity: 0.25 !important;
}

svg > g[data-type="unifamiliale"] > g[data-lot].active *,
svg > g[data-type="unifamiliale"] > g[data-lot]:hover * {
    /* opacity: .4; */
    fill: var(--unifamiliale-available-active);
}

svg > g[data-type="rangee"] > g[data-lot].active *,
svg > g[data-type="rangee"] > g[data-lot]:hover * {
    /* opacity: .4; */
    fill: var(--rangee-available-active);
}

svg > g[data-type="jumele"] > g[data-lot].active *,
svg > g[data-type="jumele"] > g[data-lot]:hover * {
    /* opacity: .4; */
    fill: var(--jumele-available-active);
}

svg > g[data-type="appartement"] > g[data-lot].active *,
svg > g[data-type="appartement"] > g[data-lot]:hover * {
    /* opacity: .4; */
    fill: var(--appartement-available-active);
}

/* .lots-selector svg > g > g.sold {
    pointer-events: none;
} */

svg > g > g.reserved * {
    fill: var(--reserved);
}

svg > g > g.reserved.active *,
svg > g > g.reserved:hover * {
    fill: #6b6b6b !important;
}

svg > g > g.sold * {
    fill: var(--sold);
}

svg > g > g.sold.active *,
svg > g > g.sold:hover * {
    fill: #000000 !important;
}

.lots-sheets {
    display: none;
}

.ui-selector .voir-plan {
    display: none;
    margin-bottom: 15px;
}

.ui-selector .voir-plan a {
    color: #425563;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 140%;
    border: 2px solid;
    padding: 5px 15px;
}

@media all and (max-width:425px) {
    .ui-selector .voir-plan a {
        font-size: 120%;
        padding: 10px 20px;
    }
}

.fancybox-container {
    z-index: 99999999;
}

#lots-global-plan svg {
    width: 800px;
    max-width: 100%;
    pointer-events: none;
}

.fancybox-slide--html .fancybox-button,
.fancybox-slide--html .fancybox-button:focus {
    width: 16px;
    height: 16px;
    top: 10px;
    right: 10px;
    background-color: transparent;
    border-radius: 100%;
    border: 2px solid #425563;
    opacity: 1;
    transition: all 150ms ease-in-out;
    outline: none;
}

.fancybox-slide--html .fancybox-button:hover {
    outline: none;
    background-color: #425563;
    border: 2px solid #425563;
}

.fancybox-slide--html .fancybox-button svg {
    width: 24px;
    height: 24px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.fancybox-slide--html .fancybox-button svg path,
.fancybox-slide--html .fancybox-button:focus svg path {
    fill: #425563;
    transition: all 150ms ease-in-out;
}

.fancybox-slide--html .fancybox-button:hover svg path {
    fill: #FCFAF3;
}

.lots-sheets {
    gap: 30px;
}

.lots-sheets .lot-sheet:not(.active) {
    display: none;
}

.lots-sheets-type > h2 {
    font-size: 150% !important;
    font-weight: 400 !important;
    text-transform: uppercase;
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid;
}

.lots-sheets-type[data-type="unifamiliale"] > h2 {
    color: var(--unifamiliale-available);
    border-color: var(--unifamiliale-available);
}

.lots-sheets-type[data-type="rangee"] > h2 {
    color: var(--rangee-available);
    border-color: var(--rangee-available);
}

.lots-sheets-type[data-type="jumele"] > h2 {
    color: var(--jumele-available);
    border-color: var(--jumele-available);
}

.lots-sheets-type[data-type="appartement"] > h2 {
    color: var(--appartement-available);
    border-color: var(--appartement-available);
}

.group-lots-buttons {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(auto, 60px));
    justify-content: start;
    text-align: center;
    gap: 5px;
}

.group-lots-buttons .lot-button {
    position: relative;
    padding: 6px;
    cursor: pointer;
    isolation: isolate;
}

.group-lots-buttons .lot-button::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #425563;
    z-index: -1;
    transition: all 150ms ease-in-out;
}

.lots-sheets-type[data-type="unifamiliale"] .group-lots-buttons .lot-button::before {
    background-color: var(--unifamiliale-available);
}

.lots-sheets-type[data-type="unifamiliale"] .group-lots-buttons .lot-button:hover::before {
    background-color: var(--unifamiliale-available-active);
}

.lots-sheets-type[data-type="rangee"] .group-lots-buttons .lot-button::before {
    background-color: var(--rangee-available);
}

.lots-sheets-type[data-type="rangee"] .group-lots-buttons .lot-button:hover::before {
    background-color: var(--rangee-available-active);
}

.lots-sheets-type[data-type="jumele"] .group-lots-buttons .lot-button::before {
    background-color: var(--jumele-available);
}

.lots-sheets-type[data-type="jumele"] .group-lots-buttons .lot-button:hover::before {
    background-color: var(--jumele-available-active);
}

.lots-sheets-type[data-type="appartement"] .group-lots-buttons .lot-button::before {
    background-color: var(--appartement-available);
}

.lots-sheets-type[data-type="appartement"] .group-lots-buttons .lot-button:hover::before {
    background-color: var(--appartement-available-active);
}

.lots-sheets-type .group-lots-buttons .lot-button.reserved::before {
    background-color: var(--reserved);
}

/* .lots-sheets-type .group-lots-buttons .lot-button.sold {
    pointer-events: none;
} */

.lots-sheets-type .group-lots-buttons .lot-button.sold::before {
    background-color: var(--sold);
}

.group-lots-buttons .lot-button h3 {
    color: #FCFAF3;
}

.lots-sheets .lot-sheet {
    margin-top: 30px;
    padding: 30px;
    border: 2px solid #425563;
}

.lots-sheets-type:not(.active) {
    display: none;
}

.sheet-specs .copropriete{
        border: 2px dashed #CBC8B7;
        padding: 5px;
        display: inline-block;
        margin-bottom: 10px;
}






.favorite-lots-button a {
    position: relative;
    display: inline-block;
}

.favorite-lots-button a .favorite-lots-counter {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 16px;
    height: 16px;
    border-radius: 100%;
    background-color: #FCFAF3;
    border: 2px solid;
    font-size: 10px;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
}

.favorite-lots-button a .favorite-lots-counter:not(.active) {
    display: none;
}

#favorite-lots-popup {
    padding: 0;
}

.favorite-lots-popup-container {
    display: grid;
    grid-template-columns: 400px 1fr;
    width: 1200px;
    max-width: 100%;
}

.favorite-lots-popup-container > * {
    padding: 30px;
}

.favorite-lots-form {
    background-color: #ebe9de;
}

.favorite-lots-list {
    background-color: #fcfaf3;
}

.favorite-lots-list-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.favorite-lots-list-content * {
    margin: 0;
}

.favorite-lots-list-content > div {
    border: 2px solid #425564;
    padding: 15px;
}

.favorite-lots-list-content .sheet-header {
    grid-auto-flow: initial;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 5px;
}

.favorite-lots-list-content .sheet-header .availability {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
}

.favorite-lots-list-content .sheet-header .fa-trash-alt {
    grid-column: 2;
    justify-self: end;
    cursor: pointer;
}

.favorite-lots-list-content .sheet-header .fa-trash-alt:hover {
    color: #71261c;
}

.favorite-lots-form form {
    max-width: 400px;
}

.favorite-lots-list .no-favorite a {
    color: #425564;
    font-weight: 600;
    /* text-decoration: underline; */
    text-transform: uppercase;
}


svg g.textes * {
    fill: #425563;
}

.legend-item.dashed-border::before {
    border: 2px dashed #CBC8B7;
    background-color: transparent;
}

@media (max-width: 1200px) {
    .lots-selector .ui-selector {
        top: 300px;
        max-width: 320px;
    }
}

@media (max-width: 1100px) {
    .lots-selector .ui-selector {
        top: 250px;
    }

    .favorite-lots-popup-container {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {
    .lots-selector {
        padding: 30px 60px;
    }

    .lots-selector > svg {
        display: none;
    }

    .lots-selector .ui-selector {
        position: relative;
        top: initial;
        right: initial;
        display: grid;
        grid-template-columns: 420px auto;
        justify-content: start;
        gap: 15px 30px;
        max-width: initial;
        margin-bottom: 30px;
    }

    .ui-selector .voir-plan {
        display: block;
        grid-column: 1 / -1;
        grid-row: 3;
        margin-top: 15px;
        margin-bottom: 0;
    }

    .lots-sheets {
        display: grid;
    }
}

@media (max-width: 768px) {
    .lots-selector .ui-selector {
        grid-template-columns: auto;
    }
    .legend-lots {
        margin-top: 0;
    }
    .lots-selector {
        padding: 30px;
    }
}

@media (max-width: 640px) {
    .favorite-lots-list-content {
        grid-template-columns: 1fr;
    }

    .legend-items {
        grid-template-columns: auto;
        gap: 10px !important;
    }
}
.plan_modele_choisi{
    margin-top: 15px !important;
}
.plan_modele_choisi a{
    text-transform: uppercase;
    font-weight: 600 !important;
    border-bottom: 2px solid #425563;
}
.plan_modele_choisi a:hover{
    border-color: #A13B22;
}
/* .prix.reserved, .prix.sold{
    display: none !important;
} */
