/* Minification failed. Returning unminified contents.
(2078,7): run-time error CSS1035: Expected colon, found ','
(2480,27): run-time error CSS1036: Expected expression, found ';'
(2490,25): run-time error CSS1036: Expected expression, found '#'
(2500,29): run-time error CSS1036: Expected expression, found '#'
(3575,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3579,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3658,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3658,37): run-time error CSS1031: Expected selector, found ')'
(3658,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3665,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3665,37): run-time error CSS1031: Expected selector, found ')'
(3665,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3670,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3670,37): run-time error CSS1031: Expected selector, found ')'
(3670,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3675,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3675,37): run-time error CSS1031: Expected selector, found ')'
(3675,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3682,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3682,37): run-time error CSS1031: Expected selector, found ')'
(3682,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3689,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3689,37): run-time error CSS1031: Expected selector, found ')'
(3689,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3693,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3693,37): run-time error CSS1031: Expected selector, found ')'
(3693,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3697,19): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3697,37): run-time error CSS1031: Expected selector, found ')'
(3697,37): run-time error CSS1025: Expected comma or open brace, found ')'
(3720,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3720,41): run-time error CSS1031: Expected selector, found ')'
(3720,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3726,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3726,41): run-time error CSS1031: Expected selector, found ')'
(3726,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3730,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3730,41): run-time error CSS1031: Expected selector, found ')'
(3730,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3734,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3734,41): run-time error CSS1031: Expected selector, found ')'
(3734,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3738,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3738,41): run-time error CSS1031: Expected selector, found ')'
(3738,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3744,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3744,41): run-time error CSS1031: Expected selector, found ')'
(3744,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3748,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3748,41): run-time error CSS1031: Expected selector, found ')'
(3748,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3753,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3753,41): run-time error CSS1031: Expected selector, found ')'
(3753,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3757,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3757,41): run-time error CSS1031: Expected selector, found ')'
(3757,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3762,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3762,41): run-time error CSS1031: Expected selector, found ')'
(3762,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3766,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3766,41): run-time error CSS1031: Expected selector, found ')'
(3766,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3770,23): run-time error CSS1030: Expected identifier, found '#full-width-slider'
(3770,41): run-time error CSS1031: Expected selector, found ')'
(3770,41): run-time error CSS1025: Expected comma or open brace, found ')'
(3920,17): run-time error CSS1035: Expected colon, found '.'
(3950,14): run-time error CSS1035: Expected colon, found '.'
(3979,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '>'
(3989,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '>'
(4038,14): run-time error CSS1035: Expected colon, found '{'
(4059,11): run-time error CSS1035: Expected colon, found '{'
(4136,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '#mobile-menu-background'
(4153,13): run-time error CSS1035: Expected colon, found '{'
(4206,20): run-time error CSS1030: Expected identifier, found '>'
(4206,25): run-time error CSS1031: Expected selector, found ')'
(4206,25): run-time error CSS1025: Expected comma or open brace, found ')'
(4286,26): run-time error CSS1030: Expected identifier, found '>'
(4286,40): run-time error CSS1031: Expected selector, found ')'
(4286,40): run-time error CSS1025: Expected comma or open brace, found ')'
(4294,26): run-time error CSS1030: Expected identifier, found '>'
(4294,40): run-time error CSS1031: Expected selector, found ')'
(4294,40): run-time error CSS1025: Expected comma or open brace, found ')'
(4300,26): run-time error CSS1030: Expected identifier, found '>'
(4300,40): run-time error CSS1031: Expected selector, found ')'
(4300,40): run-time error CSS1025: Expected comma or open brace, found ')'
(4315,28): run-time error CSS1039: Token not allowed after unary operator: '-border-colour'
(4320,7): run-time error CSS1035: Expected colon, found ','
(4326,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4327,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4331,15): run-time error CSS1039: Token not allowed after unary operator: '-large-gap'
(4333,8): run-time error CSS1035: Expected colon, found '.'
 */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

body {
    font-family: "Segoe UI", Arial, Helvetica, sans-serif;
    background: #FFF;
    color: #444;
    font-size: 66%;
}

h1, #navwrap {
    font-family: 'Lusitana', 'Georgia', 'Helvetica', 'sans-serif';
}

h1 {
    font-variant: small-caps;
}

/* links */

a:link, a:visited {
    color: #0a8db1;
    outline: none;
    text-decoration: none;
}

a:hover {
    color: #2ab7de;
}


/* Page Structure
-------------------------------------------*/

#wrapper {
    max-width: 960px;
    padding: 0;
    text-align: center;
    margin: 0px auto;
    background: #FFF;
}

#innerwrapper {
    text-align: left;
}

#main, #mainFull /* Wrapper for primary and secondary */ {
    font-size: 1.2em;
    margin: 20px 0;
}

    #main, #mainFull p, #secondary p {
        margin: 0 0 1.2em 0;
    }

    #mainFull h3 {
        clear: both;
        margin: 1em 0;
    }

#primary {
    width: 700px;
    float: left;
}

#secondary {
    width: 25%;
    float: right;
}

#footer {
    margin: 1.5em 0 0 0;
    background: #f3f2ef;
    font-size: 125%;
    padding: 10px 20px;
}

#subfooter {
    background: url(../images/sprites.png) no-repeat 50% -780px;
    text-align: center;
    margin: 1em 0;
    padding: 40px 0 0 0;
    clear: both;
}

/* Header and Sub Header
-------------------------------------------*/
#logo {
    float: left;
    margin: 15px 0;
}

    #logo p {
        color: #a0a585
    }

/* Navigation */

#navwrap {
    font-size: 120%; /* Making this larger causes the menu to not work when moving from the top item down the list */
    clear: both;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    padding: 10px 10px;
    background: #6d8b92 url(../images/bgs.png);
    margin: 15px 0;
}

    /*
#navwrap li
{
display: inline;
}

#navwrap li a
{
text-decoration: none;
float:left;
color: #FFF;
text-shadow: 1px 1px 1px #586b70;
border-right: 1px #5f858e solid;
border-left: 1px #a9bdc2 solid;
}
#navwrap li a:hover
{
color: #3f5358;
background:#9ab7be;
text-shadow: 1px 1px 0px #b3cdd3;
transition-duration:0.5s;
-moz-transition-duration:0.5s;
-webkit-transition-duration:0.5s;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}

.topMenu li a#first {border-left:0;}
.topMenu li a#last {border-right:0;}

*/
    #navwrap li a {
        color: #FFF;
        text-shadow: 1px 1px 1px #586b70;
        padding: 8px 20px;
    }

        #navwrap li a:hover {
            color: #3f5358;
            background: #9ab7be;
            text-shadow: 1px 1px 0px #b3cdd3;
            transition-duration: 0.5s;
            -moz-transition-duration: 0.5s;
            -webkit-transition-duration: 0.5s;
            border-radius: 3px;
            -moz-border-radius: 3px;
            -webkit-border-radius: 3px;
        }

#mainNav /* Doesn't need to be here - superfish */ {
}

/* Primary Styles
-------------------------------------------*/
h1 {
    font-size: 2.2em;
    font-weight: normal;
    color: #557574;
    border-bottom: 1px #a4cace solid;
    padding: 0 0 5px 0;
}

h2, h3, h4, h5, h6 {
    color: #333;
    font-weight: normal;
    font-family: Georgia, serif;
    font-style: italic;
    margin: 1em 0;
}

.socialShare {
    margin: 10px 0;
}

    .socialShare div {
        width: auto;
        float: right;
    }

h2 {
    font-size: 1.8em;
}

h3 {
    font-size: 1.5em;
    border-bottom: #444 1px solid;
}

    h3.firstPara {
        font: normal 1.5em "Segoe UI", Arial, Helvetica, sans-serif;
        border-bottom: 0;
        margin: 12px 0;
    }

h4 {
    font-size: 1.3em;
}

#primary p {
    margin: 0.5em 0;
}

.mainImage {
    position: relative;
    margin: 0 0 15px 0;
}

    .mainImage img {
        border-radius: 4px;
    }

.listBlock {
    margin: 40px 0 0 0;
}

    .listBlock h3 {
        margin: 0;
        border: 0;
    }

        .listBlock h3 a {
            text-decoration: none;
        }

    .listBlock img {
        margin: 0 25px 0 0;
    }

.listBlockRight {
    float: right;
    width: 450px;
}

.testimonial {
    margin: 40px 0 0 0;
}

    .testimonial img {
        float: left;
        margin: 0 15px 3px 0;
    }

    .testimonial a {
        font: italic 1.6em Georgia, serif;
        clear: left;
    }

        .testimonial a:after {
            content: "\A";
            white-space: pre; /* \A Line break */
        }

.hBlock {
    margin: 0 0 40px 0;
}

    .hBlock div {
        width: 220px;
        float: left;
        margin: 0 20px 0 0;
    }


    .hBlock .last {
        margin: 0;
    }


/* Secondary Styles
-------------------------------------------*/

#secondary h2, .checkout h2 {
    margin: 1em 0 0.5em 0;
    border-bottom: #444 1px solid;
}

#searchDates {
    padding: 5px 0;
}

    #searchDates select {
    }

    #searchDates label {
        color: #222;
        display: block;
        margin: 3px 0 0 0;
    }

    #searchDates button {
        margin: 8px 0;
    }

    #searchDates h5 {
        font: bold 1.1em "Segoe UI", Arial, Helvetica, sans-serif;
        color: #222;
        margin: 5px 0 0 0;
    }

    #searchDates button {
        width: 100%
    }

button, #writeReview input[type=submit] {
    border-radius: 4px;
    padding: 3px;
    font-weight: bold;
    background: #0192a3;
    color: #FFF;
    text-shadow: 0 -1px 0 rgba(0,0,0,0.15);
    box-shadow: 0 0 0 1px #0192a3 inset, /* Outer bevel */
    0 0 0 2px #0192a3 inset, /* Inner bevel */
    0 30px 20px -18px rgba(255,255,255,0.3) inset, /* Inner gradient */
    0 0 0 rgba(0,0,0,0);
    -webkit-border-radius: 4px;
    -webkit-text-shadow: 0 -1px 0 rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 0 0 1px #0192a3 inset, /* Outer bevel */
    0 0 0 2px #0192a3 inset, /* Inner bevel */
    0 30px 20px -18px rgba(255,255,255,0.3) inset, /* Inner gradient */
    0 0 0 rgba(0,0,0,0) /* Drop shadow */
    ;
}

    button:hover, #writeReview input[type=submit]:hover {
        box-shadow: 0 0 0 1px #0192a3 inset, /* Outer bevel */
        0 0 0 2px #0192a3 inset, /* Inner bevel */
        0 30px 20px -18px rgba(255,255,255,0.5) inset, /* Inner gradient */
        0 0 0 rgba(0,0,0,0);
        -webkit-border-radius: 4px;
        -webkit-text-shadow: 0 -1px 0 rgba(0,0,0,0.15);
        -webkit-box-shadow: 0 0 0 1px #0192a3 inset, /* Outer bevel */
        0 0 0 2px #0192a3 inset, /* Inner bevel */
        0 30px 20px -18px rgba(255,255,255,0.5) inset, /* Inner gradient */
        0 0 0 rgba(0,0,0,0.2) /* Drop shadow */
        ;
    }

.headExp {
    font-size: 85%;
}

.splitWrap label {
    display: block;
}

.sideTestimonials li {
    margin: 10px 0;
}

.sideTestimonials em {
    font-style: normal;
    font-weight: bold;
    display: block;
    text-indent: 0;
}

.sideTestimonials li:first-child {
    padding: 5px 0 0 0;
    text-indent: 25px;
    background: url(../images/sprites.png) no-repeat -518px 0px;
}

/*
ANTHONY: replaced with floating icon    
.sideTestimonials li:last-child {
    background: url(../images/sprites.png) no-repeat 100% 100%;
}*/

    .sideTestimonials li:last-child em {
        width: 220px;
    }


/* Footer Styles
-------------------------------------------*/
#footer a, #footer a:visited {
    text-decoration: none;
}

#footerTop {
    background: #6d8b92 url(../images/bgs.png);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    position: relative;
    height: 43px;
    padding: 1px;
    top: 18px;
}

    #footerTop p {
        color: #cfdbdd;
        font-size: 1.5em;
        text-shadow: 1px 1px 1px #63848d;
        margin: 0.5em;
        display: block;
        text-align: center;
    }

.guarantee {
    width: 83px;
    height: 88px;
    position: absolute;
    right: 10px;
    top: -25px;
    display: block;
    float: right;
    background: url(../images/sprites.png) no-repeat -10px -128px;
}

#footer h3 {
    color: #506e76;
    border: 0;
    font-size: 1.8em;
    margin: 10px 0;
}

#footer li {
    margin: 5px 0;
    border-bottom: 1px #8facb4 dashed;
    padding: 0 0 4px 0;
}

#footerCols {
    clear: both;
    margin: 0 0 20px 0;
    width: 100%;
}

#footerColOne, #footerColTwo, #footerColThree, #footerColFour {
    margin: 0 20px;
    float: left;
    width: 180px;
}

#footerColOne {
    width: 165px;
}

#footerColFour {
    width: 235px;
}

.footersocial {
    font-size: 2em;
    display: flex;
    margin: 1em 0;
    gap: .5em;
}

    .footersocial a {
        padding: 0.25em;
    }



/* Subfooter Styles
-------------------------------------------*/

/* Villa Page Styles
-------------------------------------------*/
.pageCurl {
    width: 136px;
    height: 144px;
    position: absolute;
    top: 0px;
    right: 0px;
    background: url(../images/sprites.png) no-repeat 0px -496px;
}

    .pageCurl span {
        position: absolute;
        right: 10px;
        width: 65px;
        float: right;
        text-align: right;
    }

    .pageCurl em {
        font-weight: bold;
        font-style: normal;
    }

.villaPage /* Primary class */ {
}

    .villaPage .slidingDiv {
        background: none;
    }

    .villaPage .specialOffers {
        width: 200px;
        float: right;
        padding: 5px 10px;
        margin: 20px 0 0 18px;
        background: #F1F1F1;
    }

        .villaPage .specialOffers h3 {
            font-family: "Segoe UI", Arial, Helvetica, sans-serif;
            font-weight: bold;
            color: #0a8db1;
            border: none;
            margin: 0 0 5px 0;
            padding: 0 0 0 20px;
            background: url(../images/sprites.png) no-repeat -724px -355px;
        }

.iconLinks ul {
    margin: 1em 0 0 0;
}

.iconLinks li {
    margin: 1em 0;
}

    .iconLinks li a {
        padding: 0 0 0 40px;
    }

.iconLinks a {
    font-weight: bold;
}

.iconLinks span {
    display: block;
    color: #222;
    font-weight: normal;
    padding: 0 0 0 40px;
}

.iconLinks #locationMap {
    background: url(../images/sprites.png) no-repeat -766px -107px;
}

.iconLinks #carHire {
    background: url(../images/sprites.png) no-repeat -766px -157px;
}

.iconLinks #favourite {
    background: url(../images/sprites.png) no-repeat -766px -207px;
}

.villaPage .specialOffers h3 {
    color: #444
}

.villaFeatures, .regList {
    list-style: circle;
    margin: 1rem 1rem 1rem 1.5rem;
}

    .villaFeatures li, .regList li {
        padding: 0 0 0 12px;
        /*background: url(../images/sprites.png) no-repeat 0px -325px;*/
    }

#ratesTable {
    font-weight: normal;
    width: 100%;
    margin: 10px 0;
}

.tPrice {
    text-align: right;
    font-weight: bold;
}

#ratesTable tr {
    border-bottom: 1px #444 dotted;
}

#ratesTable td {
    padding: 3px 0;
}



.buttonList li /* Villa page RHS links */ {
    margin: 5px 0;
}

    .buttonList li a, a.book, a.enquiry, a.locationMap, a.theButton, button.book, button.enquiry, button.locationMap, button.theButton {
        display: block;
        background-color: #5aad10;
        background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5aad10), color-stop(100%, #63a62f));
        background-image: -webkit-linear-gradient(top, #5aad10, #63a62f);
        background-image: -moz-linear-gradient(top, #5aad10, #63a62f);
        background-image: -ms-linear-gradient(top, #5aad10, #63a62f);
        background-image: -o-linear-gradient(top, #5aad10, #63a62f);
        background-image: linear-gradient(top, #5aad10, #63a62f);
        border: 1px solid #63a62f;
        border-bottom: 1px solid #5b992b;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        -webkit-box-shadow: inset 0 1px 0 0 #96ca6d;
        -moz-box-shadow: inset 0 1px 0 0 #96ca6d;
        box-shadow: inset 0 1px 0 0 #96ca6d;
        color: #fff;
        font: bold 14px "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
        line-height: 1;
        padding: 9px 0 9px 0;
        text-align: center;
        text-shadow: 0 -1px 0 #4c9021;
        width: 240px;
    }

        .buttonList li a:hover, .book:hover, .enquiry:hover, .locationMap:hover, .theButton:hover {
            background-color: #76b347;
            background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #76b347), color-stop(100%, #5e9e2e));
            background-image: -webkit-linear-gradient(top, #76b347, #5e9e2e);
            background-image: -moz-linear-gradient(top, #76b347, #5e9e2e);
            background-image: -ms-linear-gradient(top, #76b347, #5e9e2e);
            background-image: -o-linear-gradient(top, #76b347, #5e9e2e);
            background-image: linear-gradient(top, #76b347, #5e9e2e);
            -webkit-box-shadow: inset 0 1px 0 0 #8dbf67;
            -moz-box-shadow: inset 0 1px 0 0 #8dbf67;
            box-shadow: inset 0 1px 0 0 #8dbf67;
            cursor: pointer;
        }

        .buttonList li a:active, .book:active, .enquiry:active, .locationMap:active, .theButton:active {
            border: 1px solid #5b992b;
            border-bottom: 1px solid #538c27;
            -webkit-box-shadow: inset 0 0 8px 4px #548c29, 0 1px 0 0 #eee;
            -moz-box-shadow: inset 0 0 8px 4px #548c29, 0 1px 0 0 #eee;
            box-shadow: inset 0 0 8px 4px #548c29, 0 1px 0 0 #eee;
        }

.reducto, button.reducto {
    width: auto;
    padding: 5px 7px;
}

.calBook /* Div surrounding booking button underneath calendar */ {
    text-align: center;
}

    .calBook .book {
        width: 160px;
        display: inline;
        padding: 3px 10px;
        line-height: 2em;
    }

.block {
    clear: both;
}

    .block:after {
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
    }


.imgBlock {
    float: left;
    margin: 0;
    padding: 0;
    width: 605px;
}

    .imgBlock img {
        margin: 0 25px 20px 0;
    }

.summary img {
    float: left;
    margin: 0 25px 20px 0;
}

.quadBlock div {
    width: 300px;
    float: left;
}

.imgBlockTwo {
    margin: 0 0 0 20px;
}

.textLeft .imgBlock {
    float: right
}

    .textLeft .imgBlock img {
        margin: 0 0px 20px 25px;
    }


/* Use Carousel for 3 accross .imgBlockThree {clear:both;text-align:center;padding:14px 0 10px 0;}.imgBlockThree img {margin:0 22px;} */


/* Restaurant Styles
-------------------------------------------*/

#restaurant /* Individual Restaurant Page */ {
}

    #restaurant p img {
        float: left;
        margin: 0 20px 5px 0;
        clear: left;
    }

.restaurants /* Restaurants Page */ {
}

    .restaurants p img {
        float: left;
        margin: 0 20px 0px 0;
        clear: left;
    }

    .restaurants .writeUp a:first-child {
        display: inline-block;
        width: 220px;
        float: left;
        margin: 0 20px 0 0;
    }

    .restaurants .writeUp a:hover {
        opacity: 0.8;
    }

    .restaurants .writeUp a:first-child span {
        background: #509aa3;
        color: #FFF;
        width: 210px;
        display: inline-block;
        padding: 3px 5px;
    }

.phoneNumber {
    background: url(../images/sprites.png) no-repeat -487px -533px;
    padding: 0 0 0 20px;
}

.restaurantLinks {
    float: right;
    width: 280px;
    margin: 0 0 20px 12px;
}

#restaurant .restaurantLinks {
    float: none;
    width: 220px;
    margin: 0;
}

.restaurantLinks li {
    margin: 6px 0;
    padding: 0 0 0 20px;
}

#restaurant .restaurantLinks li:first-child {
    padding: 0 0 10px 0;
    margin: 6px 0 15px 0;
    border-bottom: 1px dashed #ccc;
}

.restaurantLinks .iTel {
    background: url(../images/sprites.png) no-repeat -484px -533px;
}

.restaurantLinks .iEmail {
    background: url(../images/sprites.png) no-repeat -484px -573px;
}

.restaurantLinks .iWeb {
    background: url(../images/sprites.png) no-repeat -484px -613px;
}

.writeUp {
    clear: both;
    margin: 0 0 20px 0;
}

#resLeft {
    clear: left;
    float: left;
    width: 280px;
}

#restaurantMap {
    float: right;
    width: 400px;
}

.mapHeader {
    background: #f6ddd0;
    color: #000;
    padding: 2px 4px;
}

.resReviews {
    float: left;
    clear: both;
    width: 100%;
    margin: 30px 0 0 0;
}

    .resReviews h4 {
        font: bold 1.2em "Segoe UI", Arial, Helvetica, sans-serif;
        margin: 30px 0 0 0;
    }

        .resReviews h4 span {
            font: normal .85em "Segoe UI", Arial, Helvetica, sans-serif;
        }

    .resReviews h3 span {
        font: normal .75em "Segoe UI", Arial, Helvetica, sans-serif;
        padding: 0 0 0 20px
    }

        .resReviews h3 span a {
            text-decoration: none;
        }

/* Map Styles
-------------------------------------------*/
#mapsControl li {
    padding: 0 0 0 20px;
    margin: 5px 0;
}

#mapsControl #villas, #mapsControl #restaurants, #mapsControl #activities, #mapsControl #places, #mapsControl #golf, #mapsControl #supermarkets, #mapsControl #medical, #mapsControl #fuel, #mapsControl #beaches {
    background-image: url(../images/ssprites.png);
    background-repeat: no-repeat
}

#mapsControl #villas {
    background-position: 0 0
}

#mapsControl #restaurants {
    background-position: 0 -20px
}

#mapsControl #activities {
    background-position: 0 -40px
}

#mapsControl #places {
    background-position: 0 -60px
}

#mapsControl #golf {
    background-position: 0 -80px
}

#mapsControl #supermarkets {
    background-position: 0 -100px
}

#mapsControl #medical {
    background-position: 0 -120px
}

#mapsControl #fuel {
    background-position: 0 -140px
}

#mapsControl #beaches {
    background-position: 0 -160px
}



/* Misc Styles
-------------------------------------------*/
.tooltipOfferWrap {
    position: relative;
    width: 240px;
    left: 260px;
    top: -70px;
}

.tooltipOffer {
    position: absolute;
    background: #fff9d4;
    border: 1px solid #EDE7BF;
    margin: 1em 0;
    padding: 9px;
    border-radius: 4px;
    line-height: 1.2em;
}

    .tooltipOffer:after, .tooltipOffer:before {
        right: 100%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
    }

    .tooltipOffer:after {
        border-color: rgba(255, 249, 212, 0);
        border-right-color: #fff9d4;
        border-width: 12px;
        top: 20%;
        margin-top: -12px;
    }

    .tooltipOffer:before {
        border-color: rgba(237, 231, 191, 0);
        border-right-color: #EDE7BF;
        border-width: 13px;
        top: 20%;
        margin-top: -13px;
    }

.tooltipInner {
    background: #6d8b92;
    color: #FFF;
    padding: 5px;
    border-radius: 3px;
}

    .tooltipInner span {
        opacity: .8;
    }

.collapserDiv {
    margin: 1em 0;
}

.collapserInner {
    border: 1px #e5e5e5 solid;
    padding: 0.7em 1em;
    border-right: 1px #e5e5e5 solid;
    border-bottom: 1px #e5e5e5 solid;
    border-left: 1px #e5e5e5 solid;
    border-top: 0;
}

.headerCollapse, .headerExpand {
    background: #f7f7f7;
    padding: 0.7em 1em;
    border: 1px #e5e5e5 solid;
}

    .headerCollapse span {
        display: inline-block;
        background: url(../images/ssprites.png) -247px -43px no-repeat;
        vertical-align: middle;
        width: 20px;
        height: 20px;
        margin: 0 10px 0 0;
    }

    .headerExpand a span {
        display: inline-block;
        vertical-align: middle;
        width: 20px;
        height: 20px;
        background: url(../images/ssprites.png) -247px -73px no-repeat;
        margin: 0 10px 0 0;
    }

.paymentsTable {
    width: 100%;
}

    .paymentsTable tr {
        border-top: 1px #f7f7f7 solid;
    }

        .paymentsTable tr:first-child {
            border-top: 0;
        }

    .paymentsTable td, .paymentsTable th {
        padding: 4px 6px;
        text-align: left;
    }

        .paymentsTable td:first-child {
            padding: 4px 6px 4px 0;
        }

        .paymentsTable td:last-child {
            padding: 4px 0 4px 6px;
        }

    .paymentsTable .explanationRow {
        border-top: 0;
    }

        .paymentsTable .explanationRow td {
            padding: 4px 6px;
        }

        .paymentsTable .explanationRow table td {
            padding: 2px 6px;
        }

.fullWidth {
    width: 100%;
}

.spacer1 {
    height: 1em;
}

.weather {
    padding: 10px;
}

    .weather div {
        padding: 0 50px 20px 50px;
    }

        .weather div b {
            font-weight: normal;
        }

        .weather div img {
            float: left;
            margin-right: 10px;
            padding: 10px 0 10px;
        }

.printPage {
    padding: 0 0 0 20px;
    background: url(../images/sprites.png) no-repeat -724px -322px;
}

.ikkelBack /* for a hrefs */ {
    padding: 1px 0 1px 14px;
    background: url(../images/sprites.png) no-repeat -484px -647px;
}

.smallPrint {
    line-height: 1.2em;
    font-size: 90%;
}

#topRight {
    width: 50%;
    float: right;
    text-align: right;
}

    #topRight ul {
        margin: 10px 0;
        padding: 3px 0;
    }

    #topRight li {
        display: inline-block;
        margin: 0 0 0 15px;
    }

.signin:before {
    content: "\f007";
    display: inline-block;
    font-family: 'Font Awesome 6 Free';
    font-size: 1.2em;
    font-weight: 900;
    padding-right: .5em;
}

.signout:before {
    content: "\f2f5";
    display: inline-block;
    font-family: 'Font Awesome 6 Free';
    font-size: 1.4em;
    font-weight: 900;
    padding-right: .5em;
}

#topRight i {
    font-size: 1.2em;
    margin-right: 0.5em;
}

hr, .hide {
    display: none;
}

a img {
    border: none;
}

.hints {
    font-size: 85%;
}

.splitWrap /* Generic Split */ {
    width: 100%;
}

.splitLeft {
    width: 49%;
    float: left;
    position: relative;
}

.splitRight {
    width: 49%;
    float: right;
}

.centralSplit {
    text-align: center;
}

    .centralSplit a.theButton {
        display: inline-block;
    }

.splitLeft60 {
    width: 60%;
    float: left;
}

.splitRight35 {
    width: 35%;
    float: right;
}

.splitLeft35 {
    width: 35%;
    float: left;
}

.splitRight60 {
    width: 60%;
    float: right;
}

.theWrap {
    width: 100%;
    overflow: hidden;
}

    .theWrap > div {
    }

.oneQtr {
    width: 23.5%;
    float: left;
    display: inline;
    margin-right: 2%;
}

.myBookings /*Container for each booking on My Account page*/ {
    margin: 1em 0;
    padding: 0 0 1.5em 0;
    border-bottom: 1px #222 dotted;
}

.quickSummary {
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
}

.quickSummaryTotal {
    color: #06C;
}


.quickSummaryPaymentsMade {
    color: #363;
}

.quickSummaryLeftToPay {
    color: #C60;
}

.quickSummary .lastColumn {
    font-size: 0.87em;
    text-align: left;
    font-weight: normal;
}

.iconList /*Generic vertical list of icons*/ {
}

    .iconList li {
        margin: 0.5em 0;
        padding: 1px 0 0 0;
    }

    .iconList span {
        display: inline-block;
        width: 18px;
        height: 18px;
        margin: 0 5px 0 0;
        vertical-align: middle;
        background: yellow;
    }

        .iconList span.makePayment {
            background: url(../images/ssprites.png) no-repeat -248px -100px;
        }

        .iconList span.flightDetails {
            background: url(../images/ssprites.png) no-repeat -248px -126px;
        }

        .iconList span.magnify {
            background: url(../images/ssprites.png) no-repeat -248px -152px;
        }

        .iconList span.passport {
            background: url(../images/ssprites.png) no-repeat -248px -177px;
        }

.propertyTitle /*My Account Page*/ {
    overflow: hidden;
    margin: 1em 0 2em 0;
}

    .propertyTitle img {
        display: block;
        /*float: left;*/
        margin: 1em auto;
/*        width: 20%;
        height: 20%;
*/    }

.oneThird {
    width: 32%;
    float: left;
    display: inline;
    margin-right: 2%;
}

    .oneThird button {
        height: 4.8em
    }

.lastColumn {
    margin-right: 0 !important;
}

.extrasTable em {
    font-weight: bold;
    font-style: normal;
}

.extrasTable td {
    padding: 5px 10px 5px 1px;
}

.reservationOffer ul {
    margin: 1em 0;
}

.dataTable1 {
    width: 100%;
}

    .dataTable1 .col1 {
        font-weight: bold;
    }

    .dataTable1 .col2 {
        text-align: right;
    }

    .dataTable1 td {
        padding: 6px 2px;
        border-bottom: 1px #222 dotted;
    }

.loadingPricing {
    opacity: 0.8;
    background: url(../images/loading.gif) no-repeat 50% 70%;
    transition-duration: 0.5s;
    height: 70px;
    text-align: center;
}

.guestTable tr > td:first-child {
    width: 7%
}
    /* first column */
    .guestTable tr > td:first-child + td {
        width: 20%
    }
        /* second column */
        .guestTable tr > td:first-child + td + td {
            width: 20%
        }
            /* third column */
            .guestTable tr > td:first-child + td + td + td {
                width: 7%
            }
                /* fourth column */
                .guestTable tr > td:first-child + td + td + td + td {
                    width: 7%
                }
                    /* fifth column */
                    .guestTable tr > td:first-child + td + td + td + td + td {
                        width: 7%;
                        text-align: center
                    }
/* sixth column */

.guestTable, .propertyTable, .theTable {
    width: 100%;
    margin: 20px 0;
}

    .guestTable th, .propertyTable th, .theTable th {
        text-align: left;
        background: #EEE;
        padding: 5px 0;
    }

    .propertyTable td {
        padding: 4px 6px;
    }

        .propertyTable td:first-child {
            padding: 4px 6px 4px 0;
        }

        .propertyTable td:last-child {
            padding: 4px 0 4px 6px;
        }


    .guestTable td {
        padding: 6px 2px;
        border-bottom: 1px #222 dotted;
    }


.summaryTable tr > td:first-child {
    width: 20%;
    font-weight: bold
}

    .summaryTable tr > td:first-child + td {
        width: 73%
    }

        .summaryTable tr > td:first-child + td + td {
            width: 7%;
            text-align: right
        }

            .summaryTable tr > td:first-child + td + td a {
                padding: 0 0 0 15px;
                background: url(../images/sprites.png) no-repeat -490px -340px
            }

.summaryTable {
    width: 100%;
    margin: 20px 0 40px 0;
}

    .summaryTable td {
        padding: 6px 2px;
        border-bottom: 1px #222 dotted;
    }

        .summaryTable td.breakLine {
            padding: 15px 2px;
            border-bottom: none;
        }

    .summaryTable tr:hover {
        background: #EEE;
    }

.paymentDue {
    color: #C60;
    font-weight: bold;
}

.paymentPaid {
    color: #363;
    font-weight: bold;
}

.guestAdd {
    width: 100%;
}

    .guestAdd button {
        padding: 5px 10px;
        margin: 3px 0 0 0;
    }

    .guestAdd td {
        vertical-align: middle;
        padding: 5px 5px 5px 0;
    }


.totalInput {
    font-weight: bold;
    color: #555;
    font-size: 16px;
    width: 5em;
    padding: 5px;
}

.totalOnOffer:before {
    content: url(../images/offer-arrow.png);
}

.exp /* Explanitory */ {
    font: normal 62.5% "Segoe UI", Arial, Helvetica, sans-serif;
    color: #444;
}

/* Calendar
-------------------------------------------*/

/* Unspecified #aec6c0 */
/* Available #169e0b  */
/* Booked #bc2020 */


ul.calendarLinks {
    clear: both;
    padding: 8px 0 8px 0;
}

    ul.calendarLinks li {
        display: inline;
        margin: 0 10px;
    }

        ul.calendarLinks li a {
            padding: 3px 5px;
            text-decoration: none;
            background: #e1ebee;
            border-radius: 4px;
        }

            ul.calendarLinks li a:hover {
                background: #d9e4e7;
                color: #087998;
            }


.calSlide /* Calendar Table */ {
    background: #aec6c0;
    /*margin: 3px 6px;*/
    color: #fff;
}

    .calSlide a, .calSlide a:visited {
        text-decoration: none;
        color: #FFF;
        width: 24px;
        height: 24px;
        display: block;
    }

        .calSlide a:hover {
            text-decoration: none;
            background: #84c37f;
        }

    .calSlide caption {
        color: #888;
    }

    .calSlide tr {
        border-bottom: 1px #ccc solid;
    }

    .calSlide td {
        background: #169e0b;
    }

    .calSlide.selectable td.availability-date {
        cursor: pointer;
    }

    .calSlide td, .calSlide th {
        border: 1px #ccc solid;
        text-align: center;
        width: 24px;
        height: 24px;
    }

    .calSlide th {
        font-weight: normal;
        background: #6c7e79;
    }

    .calSlide .bkd {
        background: #bc2020;
    }

    .calSlide .none {
        background: #aec6c0;
    }

    .calSlide .fNight /* WAS .calSlide a.fNight*/ {
        background: url(../images/sprites.png) no-repeat -475px 0px;
    }

    .calSlide a.fNight:hover, .calSlide a.lNight:hover {
        opacity: 0.6
    }

    .calSlide .lNight /* WAS .calSlide a.lNight */ {
        background: url(../images/sprites.png) no-repeat -475px -43px;
    }

.calMessage {
    text-align: center
}


/* Standalone Calendar
-------------------------------------------*/

.calContainer /* left / right / centre alignment on page */ {
    display: grid;
    place-items: center;
    text-align: center;
}

.calWrap {
    display: grid;
    gap: 12px;
    grid-template-columns: 19px max-content 19px;
    margin: 10px 0;
    vertical-align: top;
}

.calMonths {
    display: grid;
    gap:12px;
    grid-template-columns: max-content max-content max-content;
}

@media (max-width: 700px) {
    .calMonths {
        grid-template-columns: max-content max-content;
    }
}

@media (max-width: 500px) {
    .calMonths {
        grid-template-columns: max-content;
    }
}
    .fetch-cal {
        background: url(../images/sprites.png) 0px -86px;
        padding: 0 0 0 35px;
        float: left;
    }

    .calPrev span {
        margin-top: 75px;
    }

    .calNext span {
        display: block;
        width: 19px;
        height: 31px;
        background: url(../images/sprites.png) no-repeat -29px -654px;
        margin-top: 75px;
    }

    .calPrev span {
        display: block;
        width: 19px;
        height: 31px;
        background: url(../images/sprites.png) no-repeat 0px -654px;
    }

        .calPrev span:hover, .calNext span:hover {
            cursor: pointer;
            opacity: 0.7;
        }

    .calTable /* Calendar Table */ {
        background: #aec6c0;
        color: #fff;
        margin: 5px;
    }

        .calTable caption {
            color: #888;
            background: #FFF;
        }

        .calTable tr {
            border-bottom: 1px #ccc solid;
        }

        .calTable td {
            background: #169e0b;
        }

            .calTable td.availability-date {
                cursor: pointer;
            }

        .calTable td, .calTable th {
            border: 1px #ccc solid;
            text-align: center;
            width: 24px;
            height: 24px;
        }

        .calTable th {
            font-weight: normal;
            background: #6c7e79;
        }

        .calTable .bkd {
            background: #bc2020;
        }

        .calTable .none {
            background: #aec6c0;
        }

        .calTable .fNight /* WAS .calTable a.fNight*/ {
            background: url(../images/sprites.png) no-repeat -475px 0px;
        }

        .calTable a.fNight:hover, .calTable a.lNight:hover {
            opacity: 0.6
        }

        .calTable .lNight /* WAS .calTable a.lNight */ {
            background: url(../images/sprites.png) no-repeat -475px -43px;
        }




    /* Search Results
-------------------------------------------*/

    .resultProperty {
        margin: 3.5em 0 0 0;
        background: #FFF;
        font-size: 95%;
    }

    .resultPropertyHeader {
        padding: 5px 0;
        margin: 0.1em 0;
        overflow: auto;
    }

    #primary .resultProperty p {
        margin: 0;
        width: 210px;
        float: left;
    }

    .resultProperty h4 {
        color: #0a8db1;
        float: left;
        width: auto;
        margin: 0;
        font-size: 1.5em;
        font-weight: normal;
        font-family: Georgia, serif;
        font-style: italic;
    }

        .resultProperty h4 em {
            background: #f47855;
            float: right;
            margin: 0 1em;
            font-size: 90%;
            padding: 0 6px;
            border-radius: 4px;
            font-family: "Segoe UI", Arial, Helvetica, sans-serif;
            color: #FFF;
            text-shadow: -1px -1px 0 #c15b3e;
            letter-spacing: .1em;
        }

    .resultProperty a {
        text-decoration: none;
        cursor: pointer
    }

    .resultPrice {
        float: right;
        display: block;
        width: 28.5%;
        padding: 1px 0 3px 35px;
        background: url(../images/sprites.png) no-repeat 0px -735px;
    }

        .resultPrice em {
            color: #0a8db1;
            font-style: normal;
            font-weight: bold;
        }

    .resultProperty img {
        float: left;
        margin: 0 12px 10px 0;
    }

    .resultSpecial {
        background: #fff9d4;
        border: 1px #ede7bf solid;
        padding: 4px;
        margin: 0.1em 0 0.75em 0;
        clear: both;
    }

        .resultSpecial strong {
            background: url(../images/sprites.png) no-repeat -724px -362px;
            padding: 0 0 0 20px;
        }

    #primary .resultSpecial p {
    }

    .resultProperty ul {
        width: 220px;
        float: left;
        list-style: circle;
        margin: 0 15px 0 15px;
    }

    .bullet /* Generic List */ {
        margin: 1em 0;
    }

        /*.resultProperty li, .bullet li:first-letter {
            padding: 0 0 0 12px;
            background: url(../images/sprites.png) no-repeat -145px 5px;
        }*/

    .slidingDiv {
        display: none;
    }

    .calTab {
        display: block;
        padding: 0px 20px 5px 0px;
        background: url(../images/sprites.png) no-repeat 128px -84px;
    }

        .calTab .slidingDiv {
            margin: 5px 0 0 0;
            width: 652px;
            background: #fff;
            padding: 10px;
        }

    .show_hide {
        text-decoration: none;
        padding: 0 47px 0 0;
    }

    .resReviews .show_hide {
        display: block;
        margin: 10px 0;
        padding: 1px 0 0 20px;
        background: url(../images/sprites.png) no-repeat -484px -683px;
    }

    .resForm .calTab {
        background: #FFF;
    }

    .resForm .slidingDiv {
        background: #FFF;
        display: block;
    }


    /* Pagination
-------------------------------------------*/
    .pagination {
        clear: both;
        width: 100%;
    }

        .pagination li {
            display: inline;
        }

            .pagination li a {
                float: left;
                color: #0a8db1;
                padding: 6px 10px;
                margin: 2px;
                background: #ebeff0;
                border-radius: 3px;
                text-decoration: none;
            }

                .pagination li a:hover, .pagination li a.selected {
                    color: #fff;
                    background: #a4cace;
                    transition-duration: 0.3s;
                    -moz-transition-duration: 0.3s;
                    -webkit-transition-duration: 0.3s;
                }



    /* Clearing Floats */
    .module:after {
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
    }

    /*
ANTHONY: Replaced by icons in anthony.css

.hSearch {
    background: url(../images/sprites.png) no-repeat 60px -30px;
}

.qFind {
    background: url(../images/sprites.png) no-repeat -200px -30px;
}
*/

    .miniTitle {
        font: normal bold 1.3em "Segoe UI", Arial, Helvetica, sans-serif;
        color: #222;
        border-bottom: 1px #a4cace solid;
    }

    /* Box Styles
-------------------------------------------*/
    .rBox {
        border: 1px #a4cace solid;
        border-radius: 4px;
        padding: 10px;
        margin: 0 0 1em 0;
    }

    .wBox, .validation-summary-errors {
        background: #fffcca;
        border: 1px #e8dc9a solid;
        padding: 8px 10px;
        margin: 1em 0;
    }

        .wBox em, .validation-summary-errors em {
            background: url(../images/sprites.png) no-repeat -726px -284px;
            padding: 0 0 0 20px;
            font-style: normal;
            font-weight: bold;
        }

    .iBox {
        background: #e1f1f7;
        border: 1px #9ad7e8 solid;
        padding: 8px 10px;
        margin: 1em 0;
    }

        .iBox em {
            background: url(../images/sprites.png) no-repeat -726px -262px;
            padding: 0 0 0 20px;
            font-style: normal;
            font-weight: bold;
        }

    .yesBox {
        background: #e3f8e0;
        border: 1px #a9ec96 solid;
        padding: 8px 10px;
        margin: 1em 0;
    }

        .yesBox em {
            background: url(../images/ssprites.png) no-repeat -250px 0px;
            padding: 0 0 0 20px;
            font-style: normal;
            font-weight: bold;
        }

    .noBox {
        background: #f8e0e1;
        border: 1px #ec96a3 solid;
        padding: 8px 10px;
        margin: 1em 0;
    }

        .noBox em {
            background: url(../images/ssprites.png) no-repeat -250px -20px;
            padding: 0 0 0 20px;
            font-style: normal;
            font-weight: bold;
        }

    .offerBox {
        background: #d52c28;
        border: 1px #940808 solid;
        color: #FFF;
        padding: 8px 10px;
        margin: 1em 0;
    }

        .offerBox em {
            background: url(../images/sprites.png) no-repeat -724px -362px;
            padding: 0 0 0 20px;
            font-style: normal;
            font-weight: bold;
        }

    .offerStar {
        display: inline-block;
        width: 16px;
        height: 16px;
        background: url(../images/sprites.png) no-repeat -724px -362px;
    }

    .reservationOffer ul li::first-letter {
        font-weight: bold;
    }

    /* Form Styles
-------------------------------------------*/


    #writeReview {
        clear: both;
    }

        #writeReview form {
            background: #F2F2F2;
            padding: 15px;
        }



        #writeReview label {
            display: block;
            margin: 7px 0 0 0
        }

        #writeReview input, #writeReview textarea {
            padding: 0.4em;
            outline: none;
            transition: all 0.25s ease-in-out;
            -webkit-transition: all 0.25s ease-in-out;
            -moz-transition: all 0.25s ease-in-out;
            border-radius: 3px;
            -webkit-border-radius: 3px;
            -moz-border-radius: 3px;
            border: 1px solid rgba(0,0,0, 0.2);
            opacity: 0.7;
            font-family: "Segoe UI", Arial, Helvetica, sans-serif;
            width: 18em;
        }

            #writeReview input:focus, #writeReview textarea:focus {
                box-shadow: 0 0 10px rgba(51,204,255, 1);
                -webkit-box-shadow: 0 0 10px rgba(51,204,255, 1);
                -moz-box-shadow: 0 0 10px rgba(51,204,255, 1);
                border: 1px solid rgba(51,204,255, 0.8);
                opacity: 0.9;
            }

        #writeReview button {
            position: relative;
            left: 14px;
            opacity: 1;
            width: 8em;
            transition: all 0.1s ease-in-out;
            -webkit-transition: all 0.1s ease-in-out;
            -moz-transition: all 0.1s ease-in-out;
            margin: 10px 0 0 0;
        }


        #writeReview .checkBox, #writeReview input:focus.checkBox {
            box-shadow: none;
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            width: 1em;
            border: 0;
            padding: 20px;
            opacity: 1;
        }


        #writeReview .warning {
            color: #FFF;
            visibility: hidden;
            display: none;
            margin-left: 10px;
            background: #C00;
            padding: 2px 3px;
            border-radius: 5px;
            font-size: 90%;
        }

        #writeReview .fieldexp {
            font-size: .8em;
            padding-left: 1em;
        }

        #writeReview textarea {
            font-size: small;
            width: 47em
        }


    /*----------------------------------
#writeReview form li { padding: .2em; display: block; clear: left; }
#writeReview form label
{
display: block;
}

#writeReview input,
{
border: 1px #CCC solid;
padding: 5px;
margin: 2px;
font-family: Tahoma, Arial, Helvetica;
font-size: 12px;	
}
----------------------------------*/


    /* Checkout
-------------------------------------------*/
.formBG {
    box-shadow: 0px 0px 10px #CCC;
    padding: 30px;
    border-radius: 4px;

    h3,
    h4 {
        border-bottom: 0;
    }

    h3:first-child,
    h4:first-child {
        margin-top: 0;
    }
}

    .checkout h2, .checkout #secondary h2 /*Breathing space*/ {
        margin: 1em 0;
    }

    .checkout h4 /* ,.splitRight h4 */ {
        font: normal bold 1.3em "Segoe UI", Arial, Helvetica, sans-serif;
        color: #222;
        margin: 0 0 0.8em 0;
    }

    .textBox {
        border: 1px #a4cace solid;
        border-radius: 4px;
        padding: 6px;
        margin: 0 0 1em 0;
        width: 14em;
    }

        .textBox.preFilled {
            color: #CCC;
            border: 1px #CCC solid;
        }

        .textBox option {
            margin: 2px;
            padding: 0;
        }

        .textBox.short {
            width: 6em;
        }

        .textBox.shorter {
            width: 4em;
        }

        .textBox.shortest {
            width: 2em;
        }

    table.multiDrop td, table.regTable td {
        padding: 4px 6px 0 0;
    }

    table.multiDrop caption {
        text-align: left;
    }

    td.hrsMins {
        min-width: 9.3em;
    }

    select.textBox {
        width: 16em;
    }

    .preFilled /* Pre-filled labels */ {
        color: #CCC;
    }

    .textBox:focus, textarea:focus {
        box-shadow: 0 0 10px rgba(51,204,255, 1);
        -webkit-box-shadow: 0 0 10px rgba(51,204,255, 1);
        -moz-box-shadow: 0 0 10px rgba(51,204,255, 1);
        border: 1px solid rgba(51,204,255, 0.8);
        opacity: 0.9;
        color: #444
    }

    label /* was .checkout label */ {
        display: block;
        margin: 0 0 2px 0;
    }

    button.theButton {
        width: 200px;
        margin: 1em 0;
    }

    .theButton.inlineBlock {
        display: inline-block;
    }

    .bookingInfo /*RHS Table*/ {
        width: 100%;
        margin: 0 0 2em 0;
    }

        .bookingInfo tr > td:first-child {
            font-weight: bold;
            padding: 2px 0
        }

            .bookingInfo tr > td:first-child + td {
                text-align: right;
                padding: 2px 0
            }

    .breakLine {
        border-bottom: 1px #777 solid;
        line-height: 5px;
    }

    #hireDates {
        margin: 20px 0 0 0;
        background: #EEE;
        border: 1px #DDD solid;
        padding: 5px 10px;
    }

    .carImage {
        background: url(../images/car-sprites.jpg) no-repeat;
        width: 125px;
        height: 80px;
        float: left;
        clear: left;
        margin: 0 20px 0 2px;
    }

    .catB {
        background-position: 0px 0px
    }

    .catC {
        background-position: -125px 0px
    }

    .catD {
        background-position: -250px 0px
    }

    .catE {
        background-position: -375px 0px
    }

    .catF {
        background-position: -0px -80px
    }

    .catL {
        background-position: -125px -80px
    }

    .catG {
        background-position: -250px -80px
    }

    .catM {
        background-position: -375px -80px
    }

    .catH {
        background-position: 0px -160px
    }

    .catS {
        background-position: -125px -160px
    }


    .carImage2016 {
        background: url(../images/car-sprites-2018.jpg) no-repeat;
        width: 125px;
        height: 80px;
        float: left;
        clear: left;
        margin: 0 20px 0 2px;
    }

    .catB2016 {
        background-position: 0px 0px
    }

    .catC2016 {
        background-position: -125px 0px
    }

    .catD2016 {
        background-position: -250px 0px
    }

    .catE2016 {
        background-position: -375px 0px
    }

    .catF2016 {
        background-position: 0px -80px
    }

    .catL2016 {
        background-position: -125px -80px
    }

    .catG2016 {
        background-position: -250px -80px
    }

    .catM2016 {
        background-position: -375px -80px
    }

    .catH2016 {
        background-position: 0px -160px
    }

    .catX2016 {
        background-position: -250px -160px
    }

    .catS2016 {
        background-position: -125px -160px
    }

    #hireDates input[type="text"] {
        width: 8.1em;
        background: #F4F4F4;
        color: #555;
        text-shadow: -1px 1px #fff;
        border: none;
        font-size: 95%;
        letter-spacing: -.03em;
        word-spacing: -.05em;
    }

        #hireDates input[type="text"]:focus {
            box-shadow: none;
            border: none;
        }

    #hireDates > .splitWrap {
        width: 80%;
        overflow: hidden;
        float: left;
    }

        #hireDates > .splitWrap > .splitLeft, #hireDates > .splitWrap > .splitRight {
            width: 46%;
        }

    #hireDates span {
        float: right;
        margin: 18px 0 0 0;
        background: #FFF;
        border: 1px #a4cace solid;
        border-radius: 4px;
        padding: 6px;
    }

        #hireDates span em {
            font-weight: bold;
        }

    #hireDates p {
        border-top: 1px #DDD solid;
        clear: both;
        padding: 4px 0 0 0;
    }

    .carDiv {
        margin: 25px 0;
        padding: 0 0 15px 0;
        border-bottom: 1px #EEE solid;
    }

        .carDiv p {
            margin: 0;
            padding: 0;
            font-size: 95%;
        }

        .carDiv button {
            float: right;
            width: 150px;
            margin: 0 0 0 10px;
        }

        .carDiv .price {
            font-weight: bold;
            color: #00616d;
        }

        .carDiv ul {
            float: right;
        }

        .carDiv li {
            width: 30px;
            height: 30px;
            float: left;
            background: url(../images/carhire-icons.png) no-repeat;
        }

            .carDiv li.doors-5 {
                background-position: 0px -30px;
            }

            .carDiv li.people-5 {
                background-position: 0px -90px;
            }

            .carDiv li.people-6 {
                background-position: 0px -120px;
            }

            .carDiv li.people-7 {
                background-position: 0px -270px;
            }

            .carDiv li.people-9 {
                background-position: 0px -150px;
            }

            .carDiv li.automaticGearbox {
                background-position: 0px -210px;
            }

            .carDiv li.manualGearbox {
                background-position: 0px -240px;
            }

    /*SUPERFISH*/
    li.first a {
        border-left: 0;
    }


    /*** ESSENTIAL STYLES ***/
    .topMenu, .topMenu * {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .topMenu {
        line-height: 1.1em;
    }

        .topMenu ul {
            position: absolute;
            top: -999em;
            width: 18em; /* left offset of submenus need to match (see below) */
            box-shadow: 0px 0px 5px #4f6165;
        }

            .topMenu ul li {
                width: 100%;
            }

        .topMenu li:hover {
            visibility: inherit; /* fixes IE7 'sticky bug' */
        }

        .topMenu li {
            float: left;
            position: relative;
        }

        .topMenu a {
            display: block;
            position: relative;
        }

        .topMenu li:hover ul {
            left: 0;
            top: 2.3em; /* match top ul list item height (lower figure stops gap in menu from first list item to first ul if line height / padding adjusted) */
            z-index: 99;
        }

    ul.topMenu li:hover li ul,
    ul.topMenu li.sfHover li ul {
        top: -999em;
    }

    ul.topMenu li li:hover ul,
    ul.topMenu li li.sfHover ul {
        left: 18em; /* match ul width */
        top: 0;
    }

    ul.topMenu li li:hover li ul,
    ul.topMenu li li.sfHover li ul {
        top: -999em;
    }

    /*** DEMO SKIN ***/
    .topMenu {
        float: left;
    }

        .topMenu a {
            border-left: 1px solid #9ab7be;
            border-bottom:;
            padding: .55em .75em;
            text-decoration: none;
        }

            .topMenu a, .topMenu a:visited { /* visited pseudo selector so IE6 applies text colour*/
                color: #13a;
            }

        .topMenu li {
            background: #;
        }

            .topMenu li li {
                background: #84a1a8;
                border-bottom: 1px solid #9ab7be;
            }

            .topMenu li:hover, .topMenu li.sfHover,
            .topMenu a:focus, .topMenu a:hover, .topMenu a:active {
                background: #;
                outline: 0;
            }

        /* arrows */
        .topMenu a.sf-with-ul {
            padding-right: 2.25em;
            min-width: 1px; /* trigger IE7 hasLayout so spans position accurately */
        }

    .sf-sub-indicator {
        position: absolute;
        display: block;
        right: .75em;
        top: .7em; /* IE6 only */
        width: 10px;
        height: 10px;
        text-indent: -999em;
        overflow: hidden;
    }

    a > .sf-sub-indicator { /* give all except IE6 the correct values */
        top: .6em;
        background-position: 0 -100px; /* use translucent arrow for modern browsers*/
    }
    /* apply hovers to modern browsers */
    a:focus > .sf-sub-indicator,
    a:hover > .sf-sub-indicator,
    a:active > .sf-sub-indicator,
    li:hover > a > .sf-sub-indicator,
    li.sfHover > a > .sf-sub-indicator {
        background-position: -10px -100px; /* arrow hovers for modern browsers*/
    }

    /* point right for anchors in subs */
    .topMenu ul .sf-sub-indicator {
        background-position: -10px 0;
    }

    .topMenu ul a > .sf-sub-indicator {
        background-position: 0 0;
    }
    /* apply hovers to modern browsers */
    .topMenu ul a:focus > .sf-sub-indicator,
    .topMenu ul a:hover > .sf-sub-indicator,
    .topMenu ul a:active > .sf-sub-indicator,
    .topMenu ul li:hover > a > .sf-sub-indicator,
    .topMenu ul li.sfHover > a > .sf-sub-indicator {
        background-position: -10px 0; /* arrow hovers for modern browsers*/
    }

    /*** shadows for all but IE6 ***/
    .sf-shadow ul {
        background: url(../images/shadow.png) no-repeat bottom right;
        padding: 0 8px 9px 0;
        -moz-border-radius-bottomleft: 17px;
        -moz-border-radius-topright: 17px;
        -webkit-border-top-right-radius: 17px;
        -webkit-border-bottom-left-radius: 17px;
    }

        .sf-shadow ul.sf-shadow-off {
            background: transparent;
        }

    /*--------LIGHTBOX------------*/

    /* line 6, ../sass/lightbox.sass */
    #lightboxOverlay {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 9999;
        background-color: black;
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=85);
        opacity: 0.85;
        display: none;
    }

    /* line 15, ../sass/lightbox.sass */
    #lightbox {
        position: absolute;
        left: 0;
        width: 100%;
        z-index: 10000;
        text-align: center;
        line-height: 0;
        font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
        font-weight: normal;
    }
        /* line 24, ../sass/lightbox.sass */
        #lightbox img {
            width: auto;
            height: auto;
        }
        /* line 27, ../sass/lightbox.sass */
        #lightbox a img {
            border: none;
        }

    /* line 30, ../sass/lightbox.sass */
    .lb-outerContainer {
        position: relative;
        background-color: white;
        *zoom: 1;
        width: 250px;
        height: 250px;
        margin: 0 auto;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        -ms-border-radius: 4px;
        -o-border-radius: 4px;
        border-radius: 4px;
    }
        /* line 38, ../../../../.rvm/gems/ruby-1.9.2-p290/gems/compass-0.12.1/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss */
        .lb-outerContainer:after {
            content: "";
            display: table;
            clear: both;
        }

    /* line 39, ../sass/lightbox.sass */
    .lb-container {
        padding: 10px;
    }

    /* line 42, ../sass/lightbox.sass */
    .lb-loader {
        position: absolute;
        top: 40%;
        left: 0%;
        height: 25%;
        width: 100%;
        text-align: center;
        line-height: 0;
    }

    /* line 51, ../sass/lightbox.sass */
    .lb-nav {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        z-index: 10;
    }

    /* line 59, ../sass/lightbox.sass */
    .lb-container > .nav {
        left: 0;
    }

    /* line 62, ../sass/lightbox.sass */
    .lb-nav a {
        outline: none;
    }

    /* line 65, ../sass/lightbox.sass */
    .lb-prev, .lb-next {
        width: 49%;
        height: 100%;
        background-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
        /* Trick IE into showing hover */
        display: block;
    }

    /* line 72, ../sass/lightbox.sass */
    .lb-prev {
        left: 0;
        float: left;
    }

    /* line 76, ../sass/lightbox.sass */
    .lb-next {
        right: 0;
        float: right;
    }

    /* line 81, ../sass/lightbox.sass */
    .lb-prev:hover {
        background: url(../images/prev.png) left 48% no-repeat;
    }

    /* line 85, ../sass/lightbox.sass */
    .lb-next:hover {
        background: url(../images/next.png) right 48% no-repeat;
    }

    /* line 88, ../sass/lightbox.sass */
    .lb-dataContainer {
        margin: 0 auto;
        padding-top: 5px;
        *zoom: 1;
        width: 100%;
        -moz-border-radius-bottomleft: 4px;
        -webkit-border-bottom-left-radius: 4px;
        -ms-border-bottom-left-radius: 4px;
        -o-border-bottom-left-radius: 4px;
        border-bottom-left-radius: 4px;
        -moz-border-radius-bottomright: 4px;
        -webkit-border-bottom-right-radius: 4px;
        -ms-border-bottom-right-radius: 4px;
        -o-border-bottom-right-radius: 4px;
        border-bottom-right-radius: 4px;
    }
        /* line 38, ../../../../.rvm/gems/ruby-1.9.2-p290/gems/compass-0.12.1/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss */
        .lb-dataContainer:after {
            content: "";
            display: table;
            clear: both;
        }

    /* line 95, ../sass/lightbox.sass */
    .lb-data {
        padding: 0 10px;
        color: #bbbbbb;
    }
        /* line 98, ../sass/lightbox.sass */
        .lb-data .lb-details {
            width: 85%;
            float: left;
            text-align: left;
            line-height: 1.1em;
        }
        /* line 103, ../sass/lightbox.sass */
        .lb-data .lb-caption {
            font-size: 13px;
            font-weight: bold;
            line-height: 1em;
        }
        /* line 107, ../sass/lightbox.sass */
        .lb-data .lb-number {
            display: block;
            clear: left;
            padding-bottom: 1em;
            font-size: 11px;
        }
        /* line 112, ../sass/lightbox.sass */
        .lb-data .lb-close {
            width: 35px;
            float: right;
            padding-bottom: 0.7em;
            outline: none;
        }
            /* line 117, ../sass/lightbox.sass */
            .lb-data .lb-close:hover {
                cursor: pointer;
            }

    #mainFull a img:hover {
        opacity: 0.8;
    }

    .breakHeader /* Apply to h2,h3,h4 for a double gap above */ {
        margin: 1.5em 0 0 0;
    }


    /*----- Tabs -----*/


    .quickTabs {
        margin: 20px auto;
        font-size: 0.98em;
    }

        .quickTabs li {
            list-style: none;
            float: left;
        }

        .quickTabs > ul a {
            font-size: 0.9em;
            display: block;
            padding: 6px 3px;
            text-decoration: none !important;
            margin: 1px;
            margin-left: 0;
            color: #FFF;
            background: #a4cace;
        }

            .quickTabs > ul a:hover {
                color: #FFF;
                background: #85a4a7;
            }

        .quickTabs ul a.selected {
            margin-bottom: 0;
            color: #000;
            background: #F1F1F1;
            border-bottom: 1px solid #a4cace;
            cursor: default;
        }

        .quickTabs div {
            *padding-top: 3px;
            *margin-top: -15px;
            clear: left;
        }



    /* Naughty Corner */
    .ie7 .hBlock .last {
        margin: 0 0 0 0;
    }

    .ie7 h3 {
        display: block;
        width: 100%;
        clear: both;
    }

    .ie7 .hBlock h4 {
        display: block;
        width: 100%;
        clear: both;
    }



    /* search results */
    .featureSelectors {
        clear: both;
        width: 100%;
    }

        .featureSelectors li {
            display: inline;
        }

            .featureSelectors li a {
                float: left;
                color: #0a8db1;
                padding: 6px 10px;
                margin: 2px;
                background: #ebeff0;
                border-radius: 3px;
                text-decoration: none;
            }

                .featureSelectors li a:hover, .featureSelectors li a.selected {
                    color: #fff;
                    background: #a4cace;
                    transition-duration: 0.3s;
                    -moz-transition-duration: 0.3s;
                    -webkit-transition-duration: 0.3s;
                }

    /* maps */

    map_canvas {
        width: 700px;
        height: 825px;
    }

    /* map on tourism detail page*/

    map_canvas_details {
        width: 400px;
        height: 350px;
    }


    /* Villa page*/
    .soloImage {
        text-align: center;
    }

    .slider {
        width: 800px;
        height: 390px;
        list-style: none;
    }

    .largeImages {
        width: 575px;
        height: 385px;
    }


    .landscapeImages {
        width: 865px;
        height: 206px;
    }

        .landscapeImages img {
            padding-left: 20px;
            float: left;
        }

            .landscapeImages img.one {
                padding-left: 0;
            }

    .portraitImages img.no-pad {
        padding-left: 0;
    }

    .portraitImages {
        width: 865px;
        height: 347px;
    }

        .portraitImages img {
            padding-left: 20px;
            float: left;
        }

    .landscapeImages img.no-pad-left {
        padding-left: 0;
    }

    .landscapeImages img.no-pad-bottom {
        padding-bottom: 0;
    }

    /* reservation */
    td.availability-date.disabled {
        background-image: none;
        background-color: gray;
    }

    td.availability-date.selected {
        background-image: none;
        background-color: blue;
    }


    /*weather*/

    .weather {
        padding: 10px;
    }

        .weather div {
            padding: 0 50px 20px 50px;
        }

            .weather div b {
                font-weight: normal;
            }

            .weather div img {
                float: left;
                margin-right: 10px;
                padding: 10px 0 10px;
            }

    /* tourism and villa preview on maps */

    .preview {
        display: block;
        min-width: 350px;
    }

        .preview img {
            float: left;
            margin-right: 10px;
            clear: both;
        }

        /* Wrapper for recently viewed + favourites */
/*    #rvFav  {
        width: 100%;
        margin: 1em 0 2em 0;
    }*/
    #rvFav {
        display: flex;
        gap: 20px; /* optional spacing between columns */
    }

        #rvFav .splitLeft,
        #rvFav .splitRight {
            flex: 1 1 50%;
        }

            #rvFav .splitLeft ul {
                display: flex;
                flex-wrap: wrap;
                gap: 15px;
                padding: 0;
                margin: 0;
                list-style: none;
            }

                #rvFav .splitLeft ul li {
                    width: 100px;
                    min-height: 137px;
                }

@media (max-width: 1000px) {
    #rvFav {
        flex-direction: column;
    }

        #rvFav .splitLeft,
        #rvFav .splitRight {
            flex: 1 1 100%;
        }
}
        /*#rvFav ul li {
            width: 100px;
            float: left;
            margin: 0 1.85em 0 0;
        }

            #rvFav ul li:last-child {
                margin: 0;
            }

        #rvFav ul li {
            min-height: 137px;
            margin-right: 15px !important;
        }*/

    li#favourite span.selected {
        color: red
    }

    #rvFav ul li.selected img {
        border: 1px solid red;
    }



    .emailFavsWrap {
        background: #fff;
        background: url(../images/sprites.png) no-repeat 0 -855px;
        text-align: center;
        padding: 1.5em 0 0 0;
    }

    .emailFavs {
        width: 300px;
        display: inline;
    }

        .emailFavs input {
            margin: 0 0.5em 0 0;
            color: #999;
        }


    .input-validation-error {
        border: 1px #f38709 solid
    }

    .field-validation-error {
        background: url(../images/sprites.png) no-repeat -726px -284px;
        padding: 0 0 0 20px;
        margin: 0 0 0 0.5em;
    }

    /* ---- Experimental validation


.field-validation-error
{
display:block;
margin: 0 0 1em 0; 
}
.input-validation-error
{
margin:0 0 0.2em 0;
}
*/


    .readOnlyField /* When logging in*/ {
        display: block;
        border-radius: 4px 4px 4px 4px;
        margin: 0 0 1em 0;
        padding: 6px;
        width: 14em;
    }

    .changeField {
        margin: 0.5em 0 1.5em 0;
        display: inline-block;
    }


    .labelWithLink /* For changing email */ {
        margin: 0 1em 0 0;
    }

    label.highlight {
        font-weight: bold;
    }


    /* Print Styles */
    @media print {

        .formBG {
            box-shadow: none
        }

        #navwrap, #footer, #footerTop {
            display: none;
        }
    }





    /*----------------------------------------------------------------------------*/


    .infoBlock {
        position: absolute;
        top: 20px;
        left: 20px;
        right: auto;
        max-width: 98%;
        padding-bottom: 0;
        background: #FFF;
        background: rgba(0, 0, 0, 0.5);
        overflow: hidden;
        padding: 15px;
        border-radius: 4px;
        box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
    }

        .infoBlock h4 {
            font: 2.2em Georgia,Serif;
            font-style: Italic;
            color: #FFF;
            margin: 0;
            padding-top: 0;
            padding-bottom: 3px;
            border-bottom: 1px rgba(255,255,255,0.5) solid;
        }

        .infoBlock p, .sliderText {
            font-size: 14px;
            margin: 4px 0 0;
            color: #fff;
        }

            .infoBlock p a {
                display: inline-block;
                padding: 0 10px 6px 10px;
                background: #0a8db1;
                border-radius: 4px;
                color: #fff;
                margin: 10px 0 0 0;
            }

                .infoBlock p a:hover {
                    background: #38b2d4;
                }

                .infoBlock p a:after {
                    content: " \00bb";
                    font-size: 1.5em;
                }

    .sliderOffer {
        font: 2.2em Georgia,Serif;
        font-style: Italic;
        text-align: center;
        margin: .5em 0;
    }

    #licence {
        text-align: center
    }

        #licence span {
            font-weight: bold;
            display: block
        }


    /* - - - Passport - - - */
    .passportGuest {
        background: #f9f9f9;
        padding: 10px 20px;
        margin: 10px 0;
    }

    .passportColNo, .passportColExp, .passportColCo {
        float: left;
        margin-right: 25px;
    }

        .passportColNo .textBox {
            width: 9em
        }

    .passportColCo {
        margin-right: 0
    }


    .passportColNo {
    }

    .passportColExp {
    }

    .passportColCo {
    }

    button.theButton.autowidth, a.theButton.autowidth {
        width: auto;
        padding: 9px
    }

    .tiparrow {
        display: inline-block;
        width: 14px;
        height: 14px;
        content: " ";
        background: url('../images/arr1.svg');
        background-size: 14px;
        background-size: contain;
    }

    .passportColNo .textBox.fullsize {
        width: 274px
    }

    .passportColNo input.textBox.fullsize[type=text] {
        width: 260px
    }

    .passportColExp .textBox.short {
        width: 87px
    }


    i.detailsEntered {
        color: #8cc63f;
        font-size: 50px;
    }

    i.detailsNotEntered {
        color: #f15a24;
        font-size: 50px;
    }

    .dataTable2 {
        width: 100%;
    }

        .dataTable2 td:nth-child(1) {
            width: 60px;
        }

        .dataTable2 td:nth-child(3) {
            width: 100px;
        }

        .dataTable2 td {
            padding: 6px 4px;
            vertical-align: middle;
        }

            .dataTable2 td.missingData {
                background: #f8e0e1;
                border: 1px solid #fff
            }

        .dataTable2 th {
            padding: 6px 4px;
        }

            .dataTable2 th:last-child {
                border-bottom: none;
            }

        .dataTable2.detailsNotRequired th {
            color: #CCC
        }

    .guestName {
        font-size: 1.25em;
        font-weight: bold;
    }

    .noBox i.detailsNotEntered {
        font-size: inherit;
    }

    .optin {
        margin: 1em 0;
        display: inline-block;
    }

        .optin input[type=checkbox] {
            margin-right: 6px
        }

        .optin input + label {
            font-weight: bold;
            display: inline;
        }

    .translation-links a {
        display: inline-block;
        width: 30px;
        height: 20px;
        background: url(../images/flags.png);
    }

        .translation-links a.spanish {
            background-position: 30px 0px;
        }

        .translation-links a.english {
            background-position: 0px 0px;
        }

        .translation-links a.german {
            background-position: 0px 40px;
        }

        .translation-links a.french {
            background-position: 30px -20px;
        }

        .translation-links a.dutch {
            background-position: 30px -40px;
        }

        .translation-links a.norwegian {
            background-position: 0px -20px;
        }

        .translation-links a.danish {
            background-position: 0px -60px;
        }

    .globalmsg {
        background: #DCDCDC;
        padding: 0.45em;
        text-align: center;
        border-radius: 0 0 4px 4px;
    }

        .globalmsg a, .globalmsg:visited {
            display: inline-block;
            color: #fff;
            padding: 6px 10px;
            border: 1px solid transparent;
            opacity: 0.9;
            border: 1px dashed #bfd6d9;
            transition: 500ms;
            background-color: #315757;
        }

        .globalmsg i {
            color: #f7ff00;
            margin-right: 5px;
        }

        .globalmsg a:hover {
            opacity: 1;
            border-radius: 5px;
        }

    .paySelect {
        display: flex;
        margin: 2em 0;
    }

        .paySelect button {
            margin: 0.5em 2em 0.5em 0;
            padding: 1em;
        }

            .paySelect button.BACS span {
                display: block;
                width: 100%;
                height: 2em;
                margin-bottom: .5em;
                background: url(../images/bacs.svg) no-repeat 50% 0%;
            }

            .paySelect button.CARD span {
                display: block;
                width: 100%;
                height: 2em;
                margin-bottom: .5em;
                background: url(../images/card.svg) no-repeat 50% 0%;
            }

/* search results */
.featureSelectors {
    clear: both;
    width: 100%;
}

.featureSelectors li {
    display: inline;
}

.featureSelectors li a {
    float: left;
    color: #0a8db1;
    padding: 6px 10px;
    margin: 2px;
    background: #ebeff0;
    border-radius: 3px;
    text-decoration: none;
}

.featureSelectors li a:hover, .featureSelectors li a.selected {
    color: #fff;
    background: #a4cace;
    transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -webkit-transition-duration: 0.3s;
}

/* maps */
#map_canvas {
    width: 100%; /*AM 700px*/
    height: 825px;
    margin-bottom: 1rem;
}

/* map on tourism detail page*/
#map_canvas_details {
    width: 400px;
    height: 350px;
}


/* Villa page*/
.soloImage {
    text-align: center;
}

.slider {
    width: 800px;
    height: 390px;
    list-style: none;
}

.largeImages {
    width: 575px;
    height: 385px;
}


.landscapeImages {
    width: 865px;
    height: 206px;
}

.landscapeImages img {
    padding-left: 20px;
    float: left;
}

.landscapeImages img.one {
    padding-left: 0;
}

.portraitImages img.no-pad {
    padding-left: 0;
}

.portraitImages {
    width: 865px;
    height: 347px;
}

.portraitImages img {
    padding-left: 20px;
    float: left;
}

.landscapeImages img.no-pad-left {
    padding-left: 0;
}

.landscapeImages img.no-pad-bottom {
    padding-bottom: 0;
}

/* reservation */
td.availability-date.disabled {
    background-image: none;
    background-color: gray;
}

td.availability-date.selected {
    background-image: none;
    background-color: blue;
}


/*weather*/

.weather {
    padding: 10px;
}

.weather div {
    padding: 0 50px 20px 50px;
}

.weather div b {
    font-weight: normal;
}

.weather div img {
    float: left;
    margin-right: 10px;
    padding: 10px 0 10px;
}

/* tourism and villa preview on maps */

.preview {
    display: block;
    min-width: 250px;
}

.preview p {margin: 0px 0px 0px 0px !important}

.preview img {
    float: left;
    margin-right: 10px;
    clear: both;
}


/* villa index */
.calSlideWrap span { margin-top: 10px;}


/*contact page*/
.textBox.long
{
	width:18em;
}
.textBox.longer
{
	width:22em;
}
.textBox.massive
{
	width:95%;
}


/* recenly viewed and favourites */
/*#rvFav ul li {
min-height: 137px;
margin-right: 15px !important;
}

li#favourite span.selected {color:red}

#rvFav ul li.selected img {
    border: 1px solid red;
}*/

.error{ color:red }
.error2 {text-decoration:underline}
.error3 {font-size:1.2em}
.error4 {font-weight:bold}

label.terms {display:inline}

.selected { text-decoration: underline !important}
:root {
    --border-colour: #a4cace;
}

:root {
    --utility-button-color: #506e76;
}

/* utils */
.d-flex {
    display: flex;
}

.f-right {
    float: right;
}

.mt-minus-10 {
    margin-top: -10px;
}

/* Icons */
i.icon {
    /*border: 1px solid black;*/
    background-image: url(../images/sprites.png);
    background-repeat: no-repeat;
    display: inline-block;
    height: 15px;
    margin-left: 10px;
    width: 15px;
}

    i.icon.icon-align-right {
        margin-left: auto;
    }

    i.icon.icon-search {
        background-position: -135px -30px;
    }

    i.icon.icon-find {
        background-position: -285px -30px;
    }

    i.icon.icon-quotes-close {
        background-position: -780px -885px;
        height: 18px;
        width: 21px;
    }

@media (max-width: 750px) {
    #footerTop p {
        margin-right: 95px;
        text-align: left;
    }

    .mainImage .infoBlock {
        left: 10px;
        max-width: calc(100% - 88px);
        padding: 8px 10px;
        top: 10px;
    }

    .mainImage .infoBlock h4 {
        font-size: 20px;
        line-height: 1.08;
        padding-bottom: 2px;
    }

    .mainImage .infoBlock p,
    .mainImage .sliderText {
        font-size: 12px;
        line-height: 1.25;
        margin-top: 3px;
    }

    .mainImage .infoBlock p a {
        font-size: 12px;
        line-height: 1.2;
        margin-top: 6px;
        padding: 6px 8px;
    }
}

#innerwrapper:has(#full-width-slider) .homepageMain {
    align-items: start;
    display: grid;
    gap: 0 20px;
    grid-template-columns: 700px 240px;
}

#innerwrapper:has(#full-width-slider) .homepageTitle {
    grid-column: 1;
    grid-row: 1;
}

#innerwrapper:has(#full-width-slider) .homepageSubtitle {
    grid-column: 1;
    grid-row: 2;
}

#innerwrapper:has(#full-width-slider) .homepageMain #primary {
    float: none;
    grid-column: 1;
    grid-row: 3;
    width: auto;
}

#innerwrapper:has(#full-width-slider) .homepageMain #secondary {
    float: none;
    grid-column: 2;
    grid-row: 1 / span 3;
    width: auto;
}

#innerwrapper:has(#full-width-slider) .homepageMain #secondary > .panel {
    margin-bottom: 0;
}

#innerwrapper:has(#full-width-slider) .homepageSecondaryExtras {
    margin-top: 1.5rem;
}

#innerwrapper:has(#full-width-slider) .homepageSecondaryExtras > h2 {
    margin-top: 0;
}

@media (max-width: 1000px) {
    #wrapper {
        margin: 1rem;
        font-size: 0.8rem;
    }

    #topRight {
        display: none;
    }

    #primary, #secondary {
        float: none;
        width: auto;
    }

        #primary p {
            overflow-wrap: break-word;
        }

    #innerwrapper:has(#full-width-slider) .homepageMain {
        align-items: stretch;
        display: flex;
        flex-direction: column;
    }

    #innerwrapper:has(#full-width-slider) .homepageMain #secondary {
        display: contents;
    }

    #innerwrapper:has(#full-width-slider) .homepageTitle {
        order: 1;
    }

    #innerwrapper:has(#full-width-slider) .homepageSubtitle {
        order: 2;
    }

    #innerwrapper:has(#full-width-slider) #secondary > .panel {
        margin-bottom: 1.5rem;
        order: 3;
        padding: 8px 10px;
    }

    #innerwrapper:has(#full-width-slider) .homepageMain #primary {
        order: 4;
    }

    #innerwrapper:has(#full-width-slider) .homepageSecondaryExtras {
        margin-top: 0;
        order: 5;
    }

    #innerwrapper:has(#full-width-slider) .homepageSecondaryExtras > h2 {
        margin-top: 1em;
    }

    #innerwrapper:has(#full-width-slider) #secondary .form {
        --small-gap: 6px;
        --large-gap: 8px;
    }

    #innerwrapper:has(#full-width-slider) #secondary .form h4 {
        margin: 0.25rem 0;
    }

    #innerwrapper:has(#full-width-slider) #secondary .form div.row:has(> div:nth-child(2)) {
        grid-template-columns: 1fr 1fr !important;
    }

    #innerwrapper:has(#full-width-slider) #secondary .form div.row label {
        margin-bottom: 3px;
        min-height: 0;
    }

    .hBlock {
        display: grid;
        grid-template-columns: repeat(auto-fill, 220px);
        justify-content: space-evenly;
        justify-items: start;
        gap: 10px; /* your spacing */
    }

        .hBlock > div {
            box-sizing: border-box;
            float: none;
            margin: 0;
        }

    #navwrap {
        display: none;
    }

    .calBook > a.book,
    ul.buttonList > li > a {
        display: block;
        margin-bottom: 1rem;
        margin-left: 1rem;
        margin-right: 1rem;
        width: auto;
    }

    .calBook {
        margin-bottom: 1rem;
    }

        .calBook br {
            display: none;
        }

        .calBook > a.book {
            margin-bottom: 0;
        }
    /* stop Recently Viewed and Favouries sitting in two columns */
    #rvFav > div.splitLeft,
    #rvFav > div.splitRight {
        display: block;
        width: 100%;
    }

    /* Email Favourites section - remove line background? */
    .emailFavsWrap {
        background: none;
    }

    /*#557574
#a4cace*/

    #footerTop {
        background: #6d8b92;
        min-height: 43px;
        height: auto;
    }

    #footer {
        font-size: 1rem;
        margin: 0;
        padding: 1px 0 0 0;
    }

    #foterCols {
        margin: 0;
    }

    #footerColOne, #footerColTwo, #footerColThree, #footerColFour {
        display: block;
        margin: 2rem 1rem;
        float: unset;
        width: unset;
    }
}

/* Villa Listing */

@media (max-width: 1000px) {
    /* Need to adjust for right hand column moving */
    .resultProperty {
        display: grid;
        grid-template-columns: 220px 1fr 1fr;
        grid-template-areas:
            "header header header"
            "img ul p";
        gap: 8px;
    }

    .resultPropertyHeader {
        grid-area: header;
        display: block;
    }

    .resultProperty > a {
        grid-area: img;
    }

    .resultProperty > ul {
        float: unset;
        margin-left: 1rem;
        margin-top: 0;
        grid-area: ul;
        width: unset;
    }

    #primary .resultProperty > p {
        float: unset;
        grid-area: p;
        width: unset;
    }

    .resultProperty img {
        width: 220px;
        height: auto;
        display: block;
    }
}

@media (max-width: 750px) {

    .resultProperty {
        grid-template-columns: 1fr;
        grid-template-areas:
            "header"
            "img"
            "ul"
            "p";
    }

        .resultProperty > a {
            justify-self: center;
        }
}

@media (max-width: 1000px) {
    /* villa main image */
    .mainImage img {
        max-width: 100%;
        height: auto;
        display: block;
   }

    .restaurants {
        .writeUp.module {
            a:first-child {
                float: unset;
                display: block;
                margin-bottom: 1rem;
                width: 100%;

                img {
                    display: block;
                    float: unset;
                    margin: auto;
                }

                span {
                    display: block;
                    float: unset;
                    margin: auto;
                }
            }
        }
    }
}

@media (max-width: 750px) {
    /* contact us */
    .splitLeft, .splitRight {
        float: unset;
        position: unset;
        width: 100%;

        input.textBox, select.textBox, textarea.textBox {
            box-sizing: border-box;
            width: 100%;
        }
    }
}

.resize-container {
    container-type: inline-size;
}

/*.flex-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;

    > div {
        --width: 200px;
        min-width: var(--width);
        flex: 0 1 var(--width);
    }
}*/


.reservation-details-panel {
    display: grid;
    grid-template-columns: 65fr 35fr;
    gap: 20px;

    > div {
        min-width: 0;
    }
}

.reservation-information-panel {
    display: grid;
    grid-template-columns: 35fr 65fr;
    gap: 20px;

    > div {
        min-width: 0;
    }
}

@container (max-width: 650px) {
    .reservation-details-panel {
        grid-template-columns: 1fr;
    }

    .reservation-information-panel {
        grid-template-columns: 1fr;
    }
}

.table-responsive {
    width: 100%;
    overflow-x: auto;
}

.mb-1 {
    margin-bottom: 1rem;
}

.mb-2 {
    margin-bottom: 2rem;
}


#mobile-menu,
#mobile-menu-button {
    display: none;
}

@media (max-width: 1000px) {
    #mobile-menu-button {
        box-shadow: none;
        width: 28px;
        height: 20px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        background: none;
        border: none;
        padding: 0;
        cursor: pointer;
        margin: 1rem;
        float: right;

        span {
            height: 4px;
            background: var(--utility-button-color);
            border-radius: 2px;
        }
    }

    #mobile-menu {
        display: block;
        background-color: #FFF;
        height: 100vh;
        left: auto;
        position: fixed;
        right: -100vw;
        top: 0;
        transition: all 0.5s ease;
        max-width: 90vw;
        width: 500px;
        z-index: 1001;
        font-size: 1rem;

        a {
            color: rgb(68, 68, 68);

            &[href] {
                text-decoration: underline;
            }
        }

        img {
            margin: 1.2rem;
        }

        button.close {
            background: none;
            background-color: #FFF;
            border: none;
            box-shadow: none;
            color: var(--utility-button-color);
            cursor: pointer;
            float: right;
            height: 20px;
            margin: 1rem;
            padding: 0;
            position: relative;
            width: 28px;

            &::before,
            &::after {
                content: "";
                position: absolute;
                top: 50%;
                left: 50%;
                width: 16px;
                height: 2px;
                background: currentColor;
            }

            &::before {
                transform: translate(-50%, -50%) rotate(45deg);
            }

            &::after {
                transform: translate(-50%, -50%) rotate(-45deg);
            }
        }

        > ul {
            margin: 1rem;

            li {
                margin-bottom: 1rem;
                margin-top: 1rem;

                &.has-children i::before {
                    content: ' + '
                }

                &.has-children.display-children i::before {
                    content: ' - '
                }
            }

            > li > ul {
                margin-left: 1rem;
                display: none;
            }


            > li.display-children > ul {
                display: block;
            }
        }
    }

        body.display-mobile-menu {
            overflow-y: hidden;

            #mobile-menu-background {
                background-color: black;
                height: 100vh;
                left: 0;
                opacity: 0.5;
                position: fixed;
                top: 0;
                width: 100vw;
                z-index: 99;
            }

            #mobile-menu {
                right: 0;
            }
        }
    }
.myBookings {
    .totals {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin-bottom: 2rem;

        > div {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            flex: 1 1 200px;
            min-width: 200px;

            > span {
                display: block;
                font-size: 1.2rem;
                font-weight: bold;
            }
        }
    }

    .links {
        margin-bottom: 1rem;

        > a {
            display: inline-block;
            margin-right: 25px;
        }
    }
}

@media (max-width: 700px) {
    .myBookings .propertyTitle img {
        display: block;
        float: unset;
    }
}
@media (max-width: 1000px) {
    .block {
        clear: both;
        display: flex;
        flex-direction: column;
    }

    .block > img {
        order: 1;
        display: block;
        height: auto;
        margin: 0 auto 1rem auto;
        max-width: 100%;
    }

    .block > a:has(> img) {
        order: 1;
        display: block;
        text-align: center;
    }

    .block > p {
        order: 2;
    }

    .block.textRight.summary {
        order: 3;
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 16px;
        align-items: start;
    }

    .block.textRight.summary img {
        display: block;
        max-width: 100%;
        height: auto;
    }

    .block .imgBlock {
        order: 1;
        display: flex;
        float: none;
        gap: 12px;
        margin: 0 0 1rem 0;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        padding: 0 0 .5rem 0;
        scroll-padding-inline: 1rem;
        scroll-snap-type: x mandatory;
        scrollbar-color: #9aa8aa transparent;
        scrollbar-width: thin;
        width: auto;
        -webkit-overflow-scrolling: touch;
    }

    .block .imgBlock::-webkit-scrollbar {
        height: 8px;
    }

    .block .imgBlock::-webkit-scrollbar-thumb {
        background: #9aa8aa;
        border-radius: 8px;
    }

    .block .imgBlock::-webkit-scrollbar-track {
        background: transparent;
    }

    .block .imgBlock.quadBlock > div {
        display: contents;
        float: none;
        min-width: 0;
    }

    .block .imgBlock > a,
    .block .imgBlock > img,
    .block .imgBlock.quadBlock > div > a,
    .block .imgBlock.quadBlock > div > img {
        display: block;
        flex: 0 0 min(78vw, 330px);
        scroll-snap-align: start;
    }

    .block .imgBlock img {
        aspect-ratio: 4 / 3;
        display: block;
        float: none;
        height: min(58vw, 248px);
        margin: 0;
        max-width: 100%;
        object-fit: cover;
        width: 100%;
    }

    .block .imgBlock:has(> a:only-child),
    .block .imgBlock:has(> img:only-child) {
        display: block;
        overflow: visible;
        padding-bottom: 0;
        text-align: center;
    }

    .block .imgBlock:has(> a:only-child) > a,
    .block .imgBlock:has(> img:only-child) > img {
        display: inline-block;
        max-width: 100%;
    }

    .block .imgBlock:has(> a:only-child) img,
    .block .imgBlock:has(> img:only-child) > img {
        aspect-ratio: auto;
        height: auto;
        object-fit: contain;
    }
}

@media (max-width: 600px) {
    .block.textRight.summary {
        grid-template-columns: 1fr;
    }
}

.panel {
    border: 1px solid var(--border-colour);
    border-radius: 4px;
    padding: 10px;
    margin: 0 0 1em 0;

    h2, h3, h4 {
        margin: 0.5rem 0;
    }
}

.form {
    --small-gap: 5px;
    --large-gap: 10px;
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    gap: var(--large-gap);

    div.cols {
        display: flex;
        flex-wrap: wrap;
        gap: var(--large-gap);

        > div.col {
            /*min-width: 250px;*/
            flex: 1 1 200px;
            display: flex;
            flex-wrap: wrap;
            flex-direction: column;
            gap: var(--large-gap);
        }
    }


    div.row {
        display: grid;
        gap: var(--large-gap);
        grid-template-columns: 1fr;
        align-items: end;

        &:has(> div:nth-child(2)) {
            grid-template-columns: 1fr 1fr;
        }

        &:has(> div:nth-child(3)) {
            grid-template-columns: 1fr 1fr 1fr;
        }

        &:has(> div:nth-child(4)) {
            grid-template-columns: 1fr 1fr 1fr 1fr;
        }

        &:has(> div:nth-child(5)) {
            grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        }

        > div {
            min-width: 0;
            display: grid;
            grid-template-rows: auto 1fr;
            align-items: end;
        }

        .input-group {
            display: grid;
            gap: 12px;
            grid-template-columns: 1fr;

            > * {
                min-width: 0;
            }

            &:has(> :nth-child(2)) {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            &:has(> :nth-child(3)) {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            &:has(> :nth-child(4)) {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }
        }


        button {
            padding: 6px; /*make it the same height as an input */
        }

        label {
            display: block;
            margin-bottom: 6px;
            font-weight: 600;
            min-height: 22px;
        }

        input:not([type="checkbox"]),
        textarea,
        select {
            border: 1px solid var(--border-colour);
            border-radius: 4px;
            box-sizing: border-box;
            width: 100%;
            padding: 6px;
            min-height: 2rem;

            &:focus {
                box-shadow: 0 0 10px rgba(51,204,255, 1);
                -webkit-box-shadow: 0 0 10px rgba(51,204,255, 1);
                -moz-box-shadow: 0 0 10px rgba(51,204,255, 1);
                border: 1px solid rgba(51,204,255, 0.8);
                opacity: 0.9;
                color: #444
            }
        }

        input:has([type="checkbox"]) {
            margin-right: 1rem;
        }
    }
}

@container (max-width: 400px) {
    .form {
        gap: var(--small-gap);

        div.row {
            gap: var(--small-gap);

            &:not(.strict) {
                &:has(> div:nth-child(2)),
                &:has(> div:nth-child(3)), 
                &:has(> div:nth-child(4)), 
                &:has(> div:nth-child(5)) {
                    grid-template-columns: 1fr !important;
                }
            }
        }
    }
}


.cookie-notice {
    background-color: #303236;
    border-radius: 5px;
    bottom: 20px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
    color: #ececec;
    display: none;
    left: 50%;
    padding: 5px 25px 25px;
    position: fixed;
    transform: translateX(-50%);
    z-index: 9999;
    max-width: 95%;
    min-width: 85%;
    font-size: 16px;
}

    .cookie-notice > div {
        display: grid;
        justify-content: center;
    }

    .cookie-notice a, .cookie-notice a:link, .cookie-notice a:visited {
        color: #46c2e3;
        border-bottom: 1px #53d8fd solid;
    }

        .cookie-notice a:hover {
            color: #46c2e3;
            border-bottom: 2px #53d8fd solid;
        }

    .cookie-notice p {
        max-width: 40em;
        margin: 1.5em;
    }

.button-array {
    display: flex;
    gap: 1.5em;
    justify-content: center;
    align-items: baseline;
}

    .button-array button,
    .modal-content button {
        font-weight: normal;
        padding: 10px 15px;
        font-size: 16px;
        cursor: pointer;
    }

#reject-cookies {
    background: #cacaca;
    color: #222;
    border: unset;
    box-shadow: unset;
}

    #reject-cookies:hover {
        background: #e0e0e0;
    }

#accept-cookies,
#accept-selected {
    border: unset;
    box-shadow: unset;
    background-color: #0192a3;
}

    #accept-cookies:hover {
        background: #00bed5;
    }

button#accept-selected.unselected {
    background-color: #CCC;
}

button#accept-selected.selected {
    background-color: #0192a3;
}

.cookie-notice strong {
    margin: 0 0.5em 0 0;
}

.cookie-notice div:first-child p::before {
    font-family: "Font Awesome 5 Free";
    display: inline;
    float: left;
    content: "\f564";
    margin-right: 0.4em;
    font-size: 2em;
    text-shadow: 3px 2px #000;
    font-weight: 700;
}

.full-width {
    width: 100%;
}

.breathing-space {
    margin: 1rem 0;
}


/* Cookie Modal */

.modal-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    padding: 0.25em 1.5em;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
    background-color: blanchedalmond;
}


#modal-link {
    cursor: pointer;
}

#modal {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    font-size: 16px;
    transform: translate(-50%, -50%);
    min-width: 380px;
    max-width: 450px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    border-radius: 5px;
    z-index: 9999;
}

.modal-content {
    position: relative;
    padding: 1.5em;
    font-style: normal;
    max-height: 80vh;
    overflow-y: auto;
}

.close-btn {
    cursor: pointer;
    font-size: 18px;
    color: #333;
}

    .close-btn:hover {
        color: #d9534f;
    }

.cookie-type > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* - - - - - */

.toggle-switch {
    display: inline-block;
    position: relative;
}

.toggle-input {
    display: none;
}

.toggle-label {
    display: inline-block;
    width: 50px;
    height: 25px;
    background-color: #ccc;
    border-radius: 25px;
    position: relative;
    cursor: pointer;
    outline: none;
}

    .toggle-label::after {
        content: '';
        width: 23px;
        height: 23px;
        background-color: #fff;
        border-radius: 50%;
        position: absolute;
        top: 1px;
        left: 1px;
        transition: transform 0.3s;
    }

.toggle-input:checked + .toggle-label {
    background-color: #0192a3;
}

    .toggle-input:checked + .toggle-label::after {
        transform: translateX(25px);
    }

.toggle-label:focus {
    box-shadow: 0 0 3px 2px rgba(0, 123, 255, 0.5);
}

