@font-face {
	font-family:'LRWeb';
	src:local('Roboto Light'), local('Roboto-Light'), local('Open Sans Light'), local('OpenSans-Light'), url('fonts/LR-300.woff2') format('woff2'), url('fonts/LR-300.woff') format('woff');
	font-style:normal;
	font-weight:300;
	font-display:swap;
}

@font-face {
	font-family:'LRWeb';
	src:local('Roboto'), local('Roboto-Regular'), local('Open Sans Regular'), local('OpenSans-Regular'), url('fonts/LR-400.woff2') format('woff2'), url('fonts/LR-400.woff') format('woff');
	font-style:normal;
	font-weight:400;
	font-display:swap;

}

@font-face {
	font-family:'LRWeb';
	src:local('Roboto Medium'), local('Roboto-Medium'), local('Open Sans SemiBold'), local('OpenSans-SemiBold'), url('fonts/LR-500.woff2') format('woff2'), url('fonts/LR-500.woff') format('woff');
	font-style:normal;
	font-weight:500;
	font-display:swap;
}

:root{	
	--colour-cyan:#00acc1;
	--colour-cyan-light:#26c6da;

	--colour-teal:#008489;
	--colour-teal-light:#00999f;
	
	--colour-purple:#9c27b0;
	--colour-purple-light:#ab47bc;
	
	--colour-orange:#fb8c00;
	--colour-orange-light:#ffa726;

	--colour-green:#43a047;
	--colour-green-light:#66bb6a;
	
	--colour-red:#ff5a5f;
	--colour-red-light:#ff787c;

	--colour-error-red:#ff0000;
	
	--colour-yellow:#ffb300;

	--colour-darkgrey:#484848;
	--colour-darkgrey-light:#666;
	
	--colour-grey-light:#f9f9f9;
	
	--colour-bluegrey:#5b6d81;
	--colour-bluegrey-dark:#35414c;
	--colour-bluegrey-light:#70879f;

	--colour-blue:#1e88e5;
	--colour-blue-light:#42a5f5;

	--input-border-colour:#cacaca;
	--input-border-colour-focus:var(--colour-blue);
	
	--siteheader-height:61px;
	--global-max-width:1300px;
	--article-max-width: 1000px;
	--grid-cards-minsize-big:320px;
	--grid-cards-minsize-med:260px;
	--grid-cards-minsize-sma:210px;
	--grid-cards-minsize-tny:140px;
	
	--thumbs-aspectratio:66.66%;

	--def-text-colour:var(--colour-darkgrey);
	
	--def-sitemenu-dropshadow: 0 3px 3px rgba(0,0,0,0.15);
	--def-card-dropshadow:0 2px 1px -1px rgba(0,0,0,0.2), 0 1px 1px 0 rgba(0,0,0,0.14), 0 1px 3px 0 rgba(0,0,0,0.12);
	--def-card-dropshadow-hover:0 5px 10px rgba(0,0,0,0.12), 0 8px 16px 6px rgba(0,0,0,0.12);
	--def-list-dropshadow:0 3px 1px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.14), 0 5px 5px rgba(0,0,0,0.12);
	--def-modal-dropshadow:0 11px 15px -7px rgba(0,0,0,0.2), 0 24px 38px 3px rgba(0,0,0,0.14), 0 9px 46px 8px rgba(0,0,0,0.12);

	--listhover-colour:rgba(227,242,253,1);
	
	--def-border-colour-light:#e8e8e8;
	--def-border-colour:#ddd;
	
	--def-background-disabled:#ddd;
	--def-disabled-text:#888;
	
	--hatched-bg-red:repeating-linear-gradient(-45deg, #fff 0 .25em, rgba(255,0,0,0.25) .3em .4em);
	--hatched-bg-grey:repeating-linear-gradient(-45deg, #fff 0 .25em, rgba(0,0,0,0.1) .3em .4em);
	
	--animation-pulse-red:pulse-red 1.2s infinite;
	--animation-pulse-text:pulse-text 1s ease-out infinite;
}

html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,legend,input,textarea,p,blockquote,th,td,figure,figcaption{margin:0;padding:0;border:0;}
ol,ul{list-style:none;}
h1,h2,h3,h4,h5,h6{font-weight:400;}
input,textarea,select,button{-webkit-appearance:none;appearance:none;background:none;padding:0;color:inherit;font-family:inherit;font-size:inherit;border-radius:0;border:none;outline:none;}
textarea,
select,
input,
[contenteditable="true"]{border:1px solid var(--input-border-colour);}
input:focus,
textarea:focus,
select:focus,
[contenteditable="true"]:focus{border-color:var(--input-border-colour-focus);outline:0;}
input{filter:none;}
input[type="number"]{appearance:textfield;}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
input[type="radio"],
input[type="checkbox"]{-webkit-appearance:none;appearance:none;}
input:disabled,select:disabled,textarea:disabled{background:var(--def-background-disabled) !important;color:var(--def-disabled-text) !important;}
textarea{overflow:auto;}
input::-ms-clear, input::-ms-reveal{display:none;}
a, a:link, a:hover{text-decoration:none;}
a:visited{}
a:focus{}
button:active{outline:0;}
img{image-rendering:-webkit-optimize-contrast;}
*, *::before, *::after{box-sizing:border-box;}
*::placeholder{font-size:inherit;}
svg{fill:var(--colour-darkgrey);}

html,body{width:100%;height:100%;}
body{background:#fff;font-size:16px;font-family:"LRWeb",Helvetica,Arial,sans-serif;color:var(--def-text-colour);}
body.noscroll{overflow:hidden;}
main{display:block;position:relative;min-height:100%;padding-top:var(--siteheader-height);padding-bottom:100px;} 

/*------------------------------------------------------
  -- GLOBAL HEADER / NAV -------------------------------
  ------------------------------------------------------*/
#site_header{display:flex;align-items:center;position:fixed;background:#fff;height:var(--siteheader-height);top:0;left:0;right:0;color:var(--def-text-colour);border-bottom:1px solid var(--def-border-colour);z-index:10;}
#site_header > .lrlogo{display:block;height:100%;padding-left:10px;}
#site_header > .lrlogo > .comp{width:190px;height:100%;}
#site_header > .lrlogo > .icon{display:none;width:30px;height:100%;}

#site_header > .show_menu{display:none;flex-shrink:0;position:relative;width:60px;height:100%;padding-top:4px;text-align:center;cursor:pointer;transition:background .2s;}
#site_header > .show_menu > svg{width:32px;height:32px;}
#site_header > .show_menu::after{position:absolute;background:var(--colour-red);width:18px;line-height:18px;bottom:8px;left:50%;text-align:center;font-size:11px;color:#fff;border-radius:50%;content:attr(data-wltotal);transform:translateX(-50%);}
#site_header > .show_menu[data-wltotal="0"]::after{display:none;}

#site_header > .title_preview{display:block;margin:0 auto;font-size:24px;}
#site_header > .title_preview > button{height:40px;margin-left:10px;padding:0 20px;font-size:14px;border-radius:4px;}

#site_header > .menu_overlay{display:none;position:fixed;background:rgba(0,0,0,0.3);top:0;right:0;bottom:0;left:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
#site_header > .headflyout.show ~ .menu_overlay{display:block !important;}

#headmenu{display:flex;align-items:center;position:relative;margin-left:auto;height:100%;}
#headmenu > a{display:block;line-height:var(--siteheader-height);margin:0 10px;padding:0 20px;text-align:center;font-size:14px;}
#headmenu > .btn{padding:0;}
#headmenu > #listproperty{line-height:45px;border-radius:4px;}
#headmenu > #login{margin:0 20px;padding:0;}
#headmenu > .btn{display:block;position:relative;height:var(--siteheader-height);margin:0 15px;font-size:14px;text-align:center;cursor:pointer;}
#headmenu > .btn:last-child{margin-right:20px;}
#headmenu > .show_watchlist[data-wltotal="0"]{}
#headmenu > .show_watchlist::before{position:absolute;background:var(--colour-red);width:18px;line-height:18px;bottom:5px;left:50%;text-align:center;font-size:12px;color:#fff;border-radius:50%;transform:translateX(-50%);content:attr(data-wltotal);}
#headmenu > .username{padding:0 20px;}
#headmenu > .username.active ~ .usersubmenu{visibility:visible;opacity:1;}
#headmenu > .username > svg{position:absolute;width:10px;height:10px;left:50%;bottom:10px;transform:translateX(-50%);fill:#fff;}
#headmenu > .usersubmenu{visibility:hidden;opacity:0;position:absolute;background:#fff;top:var(--siteheader-height);right:15px;font-size:14px;box-shadow:0 2px 3px rgba(0,0,0,0.2);transition:opacity .2s;}
#headmenu > .usersubmenu > a{display:block;width:100%;line-height:50px;padding:0 20px;text-align:center;color:var(--def-text-colour);border-bottom:1px solid var(--def-border-colour-light);}
#headmenu > .usersubmenu > a:last-child{border:0;}
#headmenu.show ~ .menu_overlay{display:block;}

#headmenu > .mobile_btm{display:none;width:100%;margin-top:auto;font-size:12px;border-top:1px solid #ddd;}
#headmenu > .mobile_btm > a{display:inline-block;width:calc(100% / 3);padding:10px 0;color:var(--def-text-colour);text-align:center;border-right:1px solid #ddd;}
#headmenu > .mobile_btm > a:hover{color:var(--colour-blue);}
#headmenu > .mobile_btm > a:last-child{border:0;}

#mode_switch{background:#111;width:26px;height:26px;margin-right:10px;padding:2px;border-radius:50%;}
#mode_switch > svg{display:none;position:relative;width:100%;height:100%;cursor:pointer;}
#mode_switch > svg.dark{display:block;fill:#bdc1c6;}

#masthead{position:relative;background-color:#fff;}
#masthead.nobg{background-color:transparent;}
#masthead.wbg{background:#484848 no-repeat 50% 50% / cover;min-height:150px;}
#masthead.wbg::before{position:absolute;background:rgba(0,0,0,0.4);top:0;right:0;bottom:0;left:0;content:"";}
#masthead.wbg > header{justify-content:center;min-height:inherit;color:#fff;}
#masthead > header{position:relative;max-width:1000px;margin:0 auto;padding:30px;text-align:center;}
#masthead > header.full{max-width:var(--global-max-width);}
#masthead > header > .title{display:block;font-size:28px;font-weight:300;letter-spacing:-1px;}
#masthead > header > .intro{display:block;line-height:26px;padding-top:10px;font-size:20px;font-weight:300;}

.pagemenu{background:#fff;width:100%;top:calc(var(--siteheader-height) - 1px);padding:0;text-align:center;font-size:14px;border-top:1px solid var(--def-border-colour);border-bottom:1px solid var(--def-border-colour);overflow:auto hidden;}
.pagemenu nav{display:inline-flex;max-width:var(--global-max-width);height:60px;}
.pagemenu nav > a,
.pagemenu nav > button{flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;height:100%;padding:0 20px;border-right:1px solid var(--def-border-colour);cursor:pointer;}
.pagemenu nav > a:first-of-type,
.pagemenu nav > button:first-of-type{border-left:1px solid var(--def-border-colour);}
.pagemenu nav > a > svg,
.pagemenu nav > button > svg{display:none;position:absolute;width:16px;height:16px;left:50%;bottom:5px;transform:translateX(-50%);}
.pagemenu nav > a > .total,
.pagemenu nav > a[data-total]:not([data-total="0"])::before{content:attr(data-total);position:absolute;background:var(--colour-red);line-height:16px;bottom:5px;left:50%;padding:0 5px;text-align:center;font-size:12px;color:#fff;border-radius:8px;z-index:1;transform:translateX(-50%);}

.sticktop{position:sticky;z-index:9;}
.scrollsentinel{position:absolute;width:0;height:0;left:0;top:var(--siteheader-height);}

/*------------------------------------------------------
  -- IMG CARDS / CARDS GRID ----------------------------
  ------------------------------------------------------*/
.cards_grid{display:grid;grid-gap:20px;}
.cards_grid.big{grid-template-columns:repeat(auto-fill, minmax(var(--grid-cards-minsize-big), 1fr));}
.cards_grid.med{grid-template-columns:repeat(auto-fill, minmax(var(--grid-cards-minsize-med), 1fr));}
.cards_grid.sma{grid-template-columns:repeat(auto-fill, minmax(var(--grid-cards-minsize-sma), 1fr));}
.cards_grid.tny{grid-template-columns:repeat(auto-fill, minmax(var(--grid-cards-minsize-tny), 1fr));}

.card{display:flex;flex-direction:column;position:relative;background:#fff;text-align:left;overflow:hidden;transition:box-shadow .2s;box-shadow:var(--def-card-dropshadow);}
.card:hover{box-shadow:var(--def-card-dropshadow-hover);}
.card > header{position:relative;width:100%;margin-bottom:10px;}
.card > header > .imghld{position:relative;background:var(--colour-darkgrey) no-repeat 50% 50% / cover;width:100%;padding-top:var(--thumbs-aspectratio);}
.card > header > .cardtitle{display:block;width:100%;padding:15px 15px 0;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.card > header > .region_row{padding:0 15px;}

.card > p{display:block;width:100%;line-height:1.4;padding:0 15px 10px;font-size:14px;}
.card > .rent{line-height:normal;}
.card > .rent > span{display:block;width:100%;font-size:14px;}
.card > .rent > .rate{line-height:1.3;font-size:13px;}
.card > .rent > .rate > strong{font-size:16px;}

.card > .teaser{padding-bottom:15px;font-size:13px;}
.card[data-featured="1"] > .teaser{font-size:14px;}

.card > .wlbtn{position:absolute;width:40px;height:40px;top:5px;right:5px;box-shadow:var(--def-card-dropshadow);z-index:1;}
.card > .glblink{position:absolute;top:0;right:0;bottom:0;left:0;}
.card[data-new="1"] > header::before,
.card[data-featured="1"] > header::before{position:absolute;background:var(--colour-orange-light);line-height:24px;top:0;left:0;padding:0 10px;color:#fff;text-align:center;font-size:13px;box-shadow:var(--def-card-dropshadow);border-bottom-right-radius:12px;z-index:1;}
.card[data-new="1"] > header::before{content:"Neu";}
.card[data-featured="1"] > header::before{content:"Empfehlung";}

.card > footer{width:100%;margin-top:auto;padding:10px 15px;text-align:center;font-size:14px;border-top:1px solid var(--def-border-colour-light);z-index:1;}
.card > footer > span{display:block;}
.card > footer > .adds{display:flex;justify-content:center;padding-top:5px;font-size:12px;}
.card > footer > .adds > span{display:flex;align-items:center;height:24px;margin-right:10px;cursor:default;}
.card > footer > .adds > span:last-child{margin-right:0;}
.card > footer > .adds > span > svg{display:block;height:100%;margin-right:5px;}
.card > footer > .adds > span.nrg > svg{width:8px;}
.card > footer > .adds > span.cle > svg{width:12px;}
.card > footer > .adds > span.sec > svg{width:12px;}
.card > footer > .adds > span.pax > svg{width:18px;}
.card > footer > .adds > span.tax > svg{width:14px;}

/*------------------------------------------------------
  -- GLOBAL FOOTER -------------------------------------
  ------------------------------------------------------*/
footer.site{background:var(--colour-grey-light);width:100%;font-size:14px;border-top:1px solid var(--def-border-colour);}
footer.site a{color:var(--def-text-colour);}
footer.site a:hover{text-decoration:underline;}
footer.site > .menu{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--def-border-colour-light);}
footer.site > .menu > a{display:block;line-height:30px;margin:5px 20px;}
footer.site > .bottom{padding:20px;text-align:center;font-size:12px;}
footer.site > .bottom > span{display:block;padding-bottom:10px;}
footer.site > .bottom > span:last-child{padding:0;}

/*------------------------------------------------------
  -- PAGE SECTIONS -------------------------------------
  ------------------------------------------------------*/
.pagesec{position:relative;width:100%;padding:50px 20px;}
.pagesec > .inner{max-width:var(--global-max-width);margin:0 auto;text-align:center;}
.pagesec > .inner > .title{display:block;width:100%;margin-bottom:30px;padding:0 20px;font-weight:500;font-size:36px;letter-spacing:-1.2px;}
.pagesec > .inner > p{display:block;margin-bottom:40px;padding:0 20px;font-size:20px;line-height:30px;font-weight:300;}
.pagesec .cta_btn{display:block;max-width:350px;line-height:1;margin:0 auto;padding:20px 30px;text-align:center;color:#fff;font-size:18px;border-radius:6px;}

.pagesec.banner{padding:80px 10px;}
.pagesec.banner.white{background:#fff;border-top:1px solid var(--def-border-colour);border-bottom:1px solid var(--def-border-colour);}
.pagesec.banner.dark{background:var(--colour-bluegrey-dark);color:#fff;}
.pagesec.banner.grey{background:var(--colour-grey-light);border-top:1px solid var(--def-border-colour-light);border-bottom:1px solid var(--def-border-colour-light);}

/*------------------------------------------------------
  -- ERROR PAGES ---------------------------------------
  ------------------------------------------------------*/
.errorpage{}
.errorpage > .inner > .title{font-size:64px;font-weight:500;}
.errorpage > .inner > p{margin-bottom:20px;}
.errorpage > .inner > p > a{color:#00acc1;text-decoration:underline;}
.errorpage > .inner > p > a:hover{text-decoration:none;}

.errorpage > .inner > nav{display:flex;flex-wrap:wrap;justify-content:center;max-width:580px;margin:0 auto;}
.errorpage > .inner > nav > a{display:block;width:270px;line-height:50px;margin:10px;border-radius:25px;}

/*-- No IE -----------------*/
.errorpage.noie{}
.errorpage.noie .lrlogo{display:block;width:300px;height:43px;margin:30px auto;}

.browsers{padding:30px 0;}
.browsers > .browser{display:inline-block;width:250px;padding:0 30px;}
.browsers > .browser > img{display:block;width:40%;margin:0 auto;}
.browsers > .browser > span{display:block;padding:10px;}
.browsers > .browser > a{display:block;background:#fff;color:#00acc1;line-height:30px;border-radius:15px;border:1px solid #00acc1;}

/*------------------------------------------------------
  -- BUTTON COLOURS ------------------------------------
  ------------------------------------------------------*/
.btn_colour_white{background-color:#fff;color:var(--colour-blue);fill:var(--colour-blue);border:1px solid var(--colour-blue);cursor:pointer;transition:border-color .2s, fill .2s;}  
.btn_colour_white > svg{fill:var(--colour-blue);transition:fill .2s;}
.btn_colour_white:hover{fill:var(--colour-blue-light);border:1px solid var(--colour-blue-light);}
.btn_colour_white:hover > svg{fill:var(--colour-blue-light);}

.btn_colour_cyan{background-color:var(--colour-cyan);color:#fff;fill:#fff;transition:background-color .2s;cursor:pointer;}  
.btn_colour_cyan > svg{fill:#fff;}
.btn_colour_cyan:not([disabled]):hover,
.btn_colour_cyan:not([disabled]).active{background-color:var(--colour-cyan-light);}

.btn_colour_cyan_btm{position:relative;color:var(--def-text-colour);cursor:pointer;}
.btn_colour_cyan_btm::after{position:absolute;background:var(--colour-cyan-light);width:0;height:4px;left:50%;bottom:0;content:"";transition:width .2s ease-out;transform:translateX(-50%);}
.btn_colour_cyan_btm:hover,
.btn_colour_cyan_btm.active{color:var(--colour-cyan) !important;}
.btn_colour_cyan_btm:hover::after,
.btn_colour_cyan_btm.active::after{width:100%;}

.btn_colour_cyan_text{background-color:transparent;color:var(--colour-cyan);cursor:pointer;}  
.btn_colour_cyan_text:hover{color:var(--colour-cyan);}

.btn_colour_orange{background-color:var(--colour-orange);color:#fff;fill:#fff;transition:background-color .2s;cursor:pointer;}
.btn_colour_orange > svg{fill:#fff;}
.btn_colour_orange:hover{background-color:var(--colour-orange-light);}

.btn_colour_green{background-color:var(--colour-green);color:#fff;fill:#fff;transition:background-color .2s;cursor:pointer;} 
.btn_colour_green > svg{fill:#fff;}
.btn_colour_green:hover{background-color:var(--colour-green-light);}

.btn_colour_darkgrey{background-color:var(--colour-darkgrey);color:#fff;fill:#fff;transition:background-color .2s;cursor:pointer;}
.btn_colour_darkgrey > svg{fill:#fff;}
.btn_colour_darkgrey:hover,
.btn_colour_darkgrey.active{background-color:var(--colour-darkgrey-light);}

.btn_colour_bluegrey{background:var(--colour-bluegrey);fill:#fff;color:#fff;transition:background .2s;cursor:pointer;}
.btn_colour_bluegrey > svg{fill:#fff;}
.btn_colour_bluegrey:hover,
.btn_colour_bluegrey.active{background:var(--colour-bluegrey-light);}

.btn_colour_blue{background:var(--colour-blue);fill:#fff;color:#fff;transition:background .2s;cursor:pointer;}
.btn_colour_blue > svg{fill:#fff;}
.btn_colour_blue:hover,
.btn_colour_blue.active{background:var(--colour-blue-light);}

.btn_colour_blue_btm{position:relative;color:var(--def-text-colour);cursor:pointer;}
.btn_colour_blue_btm::after{position:absolute;background:var(--colour-blue-light);width:0;height:4px;left:50%;bottom:0;content:"";transition:width .2s ease-out;transform:translateX(-50%);}
.btn_colour_blue_btm:hover,
.btn_colour_blue_btm.active{color:var(--colour-blue-light) !important;}
.btn_colour_blue_btm:hover::after,
.btn_colour_blue_btm.active::after{width:100%;}

.btn_colour_red{background-color:var(--colour-red);color:#fff;transition:background-color .2s;cursor:pointer;}
.btn_colour_red > svg{fill:#fff;}
.btn_colour_red:hover{background-color:var(--colour-red-light);}

.btn_colour_deepred,
.btn_colour_errorred{background-color:var(--colour-error-red);color:#fff;transition:background-color .2s;cursor:pointer;}
.btn_colour_deepred > svg,
.btn_colour_errorred > svg{fill:#fff;}
.btn_colour_deepred:hover,
.btn_colour_errorred:hover{background-color:var(--colour-red) !important;} 

[class*="btn_colour_"]:disabled,
[class*="btn_colour_"].disabled{background-color:var(--def-background-disabled);color:var(--def-disabled-text);box-shadow:none;cursor:not-allowed !important;}
[class*="btn_colour_"]:disabled > svg,
[class*="btn_colour_"].disabled > svg{fill:var(--def-disabled-text) !important;}
[class*="btn_colour_"]:disabled:hover,
[class*="btn_colour_"].disabled:hover{background-color:var(--def-background-disabled) !important;}

/*---------------------------------------------
  -- DIALOGUES --------------------------------
  ---------------------------------------------*/
.dialogue{position:relative;background:#fff;max-width:500px;color:var(--def-text-colour);box-shadow:0 10px 40px rgba(0,0,0,0.5);overflow:hidden;}
.dialogue > .top,
.dialogue > .bottom{display:flex;align-items:center;justify-content:center;}
.dialogue > .top{background:var(--colour-grey-light);height:50px;font-size:18px;font-weight:300;}

.dialogue > .content{padding:20px;line-height:20px;font-size:14px;}
.dialogue > .content > p,
.dialogue > .content > p > span{display:block;}
.dialogue > .content > p > .salute{}

.dialogue > .bottom{height:70px;}
.dialogue > .bottom > button{height:40px;padding:0 20px;font-size:14px;border-radius:4px;}

.dialogue.success > .top{background:var(--colour-green);color:#fff;}
.dialogue.error > .top{background:red;color:#fff;}

/*---------------------------------------------
  -- GALLERY ----------------------------------
  ---------------------------------------------*/
#gallery{display:none;position:fixed;background:#fff;top:var(--siteheader-height);right:0;bottom:0;left:0;padding-bottom:50px;overflow-y:auto;z-index:9;}
#gallery.show{display:block;}
#gallery > header{display:flex;align-items:center;position:sticky;background:#fff;top:0;padding:10px 20px;text-align:right;z-index:1;}
#gallery > header > .imgs_total{display:block;margin-right:20px;}
#gallery > header > .close{height:35px;margin-left:auto;padding:0 20px;font-size:14px;cursor:pointer;border-radius:4px;}

#gallery > #thumbs > ol{counter-reset:img-num;display:grid;grid-gap:10px;grid-template-columns: repeat(auto-fill, minmax(var(--grid-cards-minsize-big), 1fr));padding:0 20px;}
#gallery > #thumbs > ol > li{counter-increment:img-num;overflow:hidden;position:relative;background-color:var(--colour-darkgrey);padding-top:var(--thumbs-aspectratio);cursor:pointer;}
#gallery > #thumbs > ol > li::after{content:counter(img-num);position:absolute;background:#000;min-width:20px;line-height:20px;bottom:0;left:0;padding:0 5px;text-align:center;color:#fff;font-size:13px;}
#gallery > #thumbs > ol > li > img{position:absolute;width:100%;height:100%;top:0;left:0;object-fit:cover;}

#slideroverlay{display:none;align-items:center;justify-content:center;position:fixed;background:rgba(0,0,0,0.9);top:var(--siteheader-height);right:0;bottom:0;left:0;z-index:98;overflow:hidden;}
#slideroverlay.show{display:flex;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
#slideroverlay > .close{position:absolute;background:#000;width:40px;height:40px;top:10px;right:15px;padding:10px;border-radius:50%;border:1px solid rgba(255,255,255,0.5);cursor:pointer;z-index:1;}
#slideroverlay > .close > svg{fill:#fff;width:100%;height:100%;}
#slideroverlay > #slider{overflow:hidden;position:relative;width:100%;height:100%;}
#slideroverlay > #slider > button{position:absolute;background:#000;height:50px;top:50%;padding:10px;transform:translateY(-50%);border:1px solid rgba(255,255,255,0.5);cursor:pointer;z-index:1;}
#slideroverlay > #slider > button > svg{width:30px;height:30px;fill:#fff;}
#slideroverlay > #slider > button.prev{left:-2px;}
#slideroverlay > #slider > button.next{right:-2px;}
#slideroverlay > #slider > button:disabled{display:none;} 
#slideroverlay > #slider > #slides{display:flex;width:100%;height:100%;transition:transform .2s ease-out;will-change:transform;}
#slideroverlay > #slider > #slides > figure{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:100%;}
#slideroverlay > #slider > #slides > figure > img{display:block;max-width:95%;max-height:95%;border:0;object-fit:contain;}

/*---------------------------------------------
  -- GEO STUFF / FLAGS ------------------------
  ---------------------------------------------*/
.flag{flex-shrink:0;display:block;background:url("../imgs/misc/flagssprite.png") no-repeat 0 0;overflow:hidden;width:16px;height:11px;}
.region_row{display:flex;align-items:center;height:16px;font-size:11px;cursor:default;}
.region_row > .flag{flex-shrink:0;font-style:normal;margin-right:3px;}
.region_row span{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}
.region_row span > strong{}

.flag.gu{background-position:-96px -55px;}
.flag.mn{background-position:-208px -88px;}
.flag.va{background-position:-48px -154px;}
.flag.tibet{background-position:-32px -143px;}
.flag.fo{background-position:-64px -44px;}
.flag.th{background-position:-16px -143px;}
.flag.tr{background-position:-144px -143px;}
.flag.tl{background-position:-80px -143px;}
.flag.kz{background-position:-144px -77px;}
.flag.zm{background-position:-16px -165px;}
.flag.uz{background-position:-32px -154px;}
.flag.dk{background-position:-64px -33px;}
.flag.scotland{background-position:-176px -121px;}
.flag.gi{background-position:-224px -44px;}
.flag.gy{background-position:-128px -55px;}
.flag.bj{background-position:-112px -11px;}
.flag.fr{background-position:-80px -44px;}
.flag.mo{background-position:-224px -88px;}
.flag.ir{background-position:-112px -66px;}
.flag.io{background-position:-80px -66px;}
.flag.tm{background-position:-96px -143px;}
.flag.ch{background-position:-96px -22px; width:13px;}
.flag.mt{background-position:-32px -99px;}
.flag.nl{background-position:-240px -99px;}
.flag.gp{background-position:-16px -55px;}
.flag.im{background-position:-48px -66px;}
.flag.tv{background-position:-176px -143px;}
.flag.mu{background-position:-48px -99px;}
.flag.pe{background-position:-96px -110px;}
.flag.vi{background-position:-112px -154px;}
.flag.hn{background-position:-176px -55px;}
.flag.ss{background-position:-128px -132px;}
.flag.ae{background-position:-16px 0;}
.flag.td{background-position:-240px -132px;}
.flag.pw{background-position:0 -121px;}
.flag.nu{background-position:-32px -110px;}
.flag.bt{background-position:-208px -11px;}
.flag.ms{background-position:-16px -99px;}
.flag.cv{background-position:-240px -22px;}
.flag.es{background-position:-224px -33px;}
.flag.mh{background-position:-144px -88px;}
.flag.la{background-position:-160px -77px;}
.flag.vn{background-position:-128px -154px;}
.flag.py{background-position:-16px -121px;}
.flag.br{background-position:-176px -11px;}
.flag.ye{background-position:-224px -154px;}
.flag.ie{background-position:0 -66px;}
.flag.gh{background-position:-208px -44px;}
.flag.cg{background-position:-80px -22px;}
.flag.cu{background-position:-224px -22px;}
.flag.hu{background-position:-224px -55px;}
.flag.sg{background-position:-224px -121px;}
.flag.at{background-position:-176px 0;}
.flag.lk{background-position:-224px -77px;}
.flag.vu{background-position:-144px -154px;}
.flag.bo{background-position:-160px -11px;}
.flag.jo{background-position:-208px -66px;}
.flag.er{background-position:-208px -33px;}
.flag.za{background-position:-256px -154px;}
.flag.rs{background-position:-80px -121px;}
.flag.nr{background-position:-16px -110px;}
.flag.ls{background-position:-256px -77px;}
.flag.jm{background-position:-192px -66px;}
.flag.tz{background-position:-208px -143px;}
.flag.ki{background-position:-16px -77px;}
.flag.sj{background-position:0 -132px;}
.flag.cz{background-position:-16px -33px;}
.flag.pg{background-position:-128px -110px;}
.flag.lv{background-position:-32px -88px;}
.flag.do{background-position:-96px -33px;}
.flag.lu{background-position:-16px -88px;}
.flag.no{background-position:-256px -99px;}
.flag.kw{background-position:-112px -77px;}
.flag.mx{background-position:-96px -99px;}
.flag.yt{background-position:-240px -154px;}
.flag.ly{background-position:-48px -88px;}
.flag.cy{background-position:0 -33px;}
.flag.ph{background-position:-144px -110px;}
.flag.my{background-position:-112px -99px;}
.flag.sm{background-position:-48px -132px;}
.flag.et{background-position:-240px -33px;}
.flag.ru{background-position:-96px -121px;}
.flag.tj{background-position:-48px -143px;}
.flag.ai{background-position:-64px 0;}
.flag.pl{background-position:-176px -110px;}
.flag.kp{background-position:-64px -77px;}
.flag.uy{background-position:-16px -154px;}
.flag.gb{background-position:-112px -44px;}
.flag.gs{background-position:-64px -55px;}
.flag.kurdistan{background-position:-96px -77px;}
.flag.rw{background-position:-112px -121px;}
.flag.ec{background-position:-128px -33px;}
.flag.mm{background-position:-192px -88px;}
.flag.pa{background-position:-80px -110px;}
.flag.wales{background-position:-160px -154px;}
.flag.kg{background-position:-256px -66px;}
.flag.ve{background-position:-80px -154px;}
.flag.tk{background-position:-64px -143px;}
.flag.ca{background-position:-16px -22px;}
.flag.is{background-position:-128px -66px;}
.flag.ke{background-position:-240px -66px;}
.flag.ro{background-position:-64px -121px;}
.flag.gq{background-position:-32px -55px;}
.flag.pt{background-position:-256px -110px;}
.flag.tf{background-position:-256px -132px;}
.flag.ad{background-position:0 0;}
.flag.sk{background-position:-16px -132px;}
.flag.pm{background-position:-192px -110px;}
.flag.om{background-position:-64px -110px;}
.flag.an{background-position:-112px 0;}
.flag.ws{background-position:-192px -154px;}
.flag.sh{background-position:-240px -121px;}
.flag.mp{background-position:-240px -88px;}
.flag.gt{background-position:-80px -55px;}
.flag.cf{background-position:-64px -22px;}
.flag.zanzibar{background-position:0 -165px;}
.flag.mw{background-position:-80px -99px;}
.flag.catalonia{background-position:-32px -22px;}
.flag.ug{background-position:-240px -143px;}
.flag.je{background-position:-176px -66px;}
.flag.km{background-position:-32px -77px;}
.flag.in{background-position:-64px -66px;}
.flag.bf{background-position:-48px -11px;}
.flag.mc{background-position:-80px -88px;}
.flag.sy{background-position:-192px -132px;}
.flag.sn{background-position:-64px -132px;}
.flag.kr{background-position:-80px -77px;}
.flag.eu{background-position:-256px -33px;}
.flag.bn{background-position:-144px -11px;}
.flag.st{background-position:-144px -132px;}
.flag.england{background-position:-192px -33px;}
.flag.lc{background-position:-192px -77px;}
.flag.dm{background-position:-80px -33px;}
.flag.be{background-position:-32px -11px;}
.flag.ni{background-position:-224px -99px;}
.flag.ua{background-position:-224px -143px;}
.flag.mz{background-position:-128px -99px;}
.flag.pf{background-position:-112px -110px;}
.flag.tn{background-position:-112px -143px;}
.flag.ee{background-position:-144px -33px;}
.flag.xk{background-position:-208px -154px;}
.flag.sx{background-position:-176px -132px;}
.flag.sd{background-position:-192px -121px;}
.flag.gd{background-position:-128px -44px;}
.flag.ci{background-position:-112px -22px;}
.flag.sz{background-position:-208px -132px;}
.flag.cl{background-position:-144px -22px;}
.flag.fi{background-position:0 -44px;}
.flag.ga{background-position:-96px -44px;}
.flag.jp{background-position:-224px -66px;}
.flag.de{background-position:-32px -33px;}
.flag.np{background-position:0 -110px; width:11px;}
.flag.re{background-position:-48px -121px;}
.flag.bg{background-position:-64px -11px;}
.flag.sc{background-position:-160px -121px;}
.flag.ng{background-position:-208px -99px;}
.flag.qa{background-position:-32px -121px;}
.flag.mk{background-position:-160px -88px;}
.flag.aw{background-position:-208px 0;}
.flag.kn{background-position:-48px -77px;}
.flag.al{background-position:-80px 0;}
.flag.bw{background-position:-240px -11px;}
.flag.um{background-position:-256px -143px;}
.flag.ky{background-position:-128px -77px;}
.flag.tt{background-position:-160px -143px;}
.flag.so{background-position:-80px -132px;}
.flag.lt{background-position:0 -88px;}
.flag.by{background-position:-256px -11px;}
.flag.bb{background-position:0 -11px;}
.flag.us{background-position:0 -154px;}
.flag.md{background-position:-96px -88px;}
.flag.ag{background-position:-48px 0;}
.flag.hm{background-position:-160px -55px;}
.flag.as{background-position:-160px 0;}
.flag.eg{background-position:-160px -33px;}
.flag.sv{background-position:-160px -132px;}
.flag.sl{background-position:-32px -132px;}
.flag.fk{background-position:-32px -44px;}
.flag.am{background-position:-96px 0;}
.flag.ck{background-position:-128px -22px;}
.flag.tw{background-position:-192px -143px;}
.flag.kh{background-position:0 -77px;}
.flag.to{background-position:-128px -143px;}
.flag.se{background-position:-208px -121px;}
.flag.cd{background-position:-48px -22px;}
.flag.pn{background-position:-208px -110px;}
.flag.gr{background-position:-48px -55px;}
.flag.id{background-position:-256px -55px;}
.flag.vc{background-position:-64px -154px;}
.flag.somaliland{background-position:-96px -132px;}
.flag.bi{background-position:-96px -11px;}
.flag.pk{background-position:-160px -110px;}
.flag.pr{background-position:-224px -110px;}
.flag.bd{background-position:-16px -11px;}
.flag.co{background-position:-192px -22px;}
.flag.fm{background-position:-48px -44px;}
.flag.bm{background-position:-128px -11px;}
.flag.ar{background-position:-144px 0;}
.flag.bv{background-position:-224px -11px;}
.flag.sb{background-position:-144px -121px;}
.flag.mq{background-position:-256px -88px;}
.flag.eh{background-position:-176px -33px;}
.flag.bh{background-position:-80px -11px;}
.flag.it{background-position:-144px -66px;}
.flag.hr{background-position:-192px -55px;}
.flag.sa{background-position:-128px -121px;}
.flag.mv{background-position:-64px -99px;}
.flag.mg{background-position:-128px -88px;}
.flag.dz{background-position:-112px -33px;}
.flag.gg{background-position:-192px -44px;}
.flag.gm{background-position:-256px -44px;}
.flag.af{background-position:-32px 0;}
.flag.li{background-position:-208px -77px;}
.flag.sr{background-position:-112px -132px;}
.flag.vg{background-position:-96px -154px;}
.flag.cr{background-position:-208px -22px;}
.flag.tc{background-position:-224px -132px;}
.flag.ao{background-position:-128px 0;}
.flag.ma{background-position:-64px -88px;}
.flag.mr{background-position:0 -99px;}
.flag.gn{background-position:0 -55px;}
.flag.ne{background-position:-176px -99px;}
.flag.nf{background-position:-192px -99px;}
.flag.wf{background-position:-176px -154px;}
.flag.hk{background-position:-144px -55px;}
.flag.gf{background-position:-160px -44px;}
.flag.ps{background-position:-240px -110px;}
.flag.ic{background-position:-240px -55px;}
.flag.cw{background-position:-256px -22px;}
.flag.ml{background-position:-176px -88px;}
.flag.ax{background-position:-224px 0;}
.flag.gl{background-position:-240px -44px;}
.flag.dj{background-position:-48px -33px;}
.flag.cn{background-position:-176px -22px;}
.flag.ht{background-position:-208px -55px;}
.flag.lr{background-position:-240px -77px;}
.flag.tg{background-position:0 -143px;}
.flag.ba{background-position:-256px 0;}
.flag.ge{background-position:-144px -44px;}
.flag.bz{background-position:0 -22px;}
.flag.au{background-position:-192px 0;}
.flag.iq{background-position:-96px -66px;}
.flag.cm{background-position:-160px -22px;}
.flag.gw{background-position:-112px -55px;}
.flag.az{background-position:-240px 0;}
.flag.na{background-position:-144px -99px;}
.flag.fj{background-position:-16px -44px;}
.flag.zw{background-position:-32px -165px;}
.flag.bs{background-position:-192px -11px;}
.flag.il{background-position:-16px -66px;}
.flag.nz{background-position:-48px -110px;}
.flag.me{background-position:-112px -88px;}
.flag.si{background-position:-256px -121px;}
.flag.nc{background-position:-160px -99px;}
.flag.lb{background-position:-176px -77px;}
.flag.mf{background-position:-112px -44px;}
.flag.bl{background-position:-80px -44px;}
.flag.xx{background:none;height:16px;}
.flag.xx > svg{width:100%;height:100%;fill:var(--colour-error-red);}

/*---------------------------------------------
  -- MISC STUFF -------------------------------
  ---------------------------------------------*/
.nobrd{border:0 !important;}
.hasdropshadow{box-shadow:var(--def-sitemenu-dropshadow) !important;}
.flex_col{display:inline-flex !important;flex-direction:column;}

/*-- Tooltips -------------------------------*/
[data-tippy-root]{max-width:calc(100vw - 50px)}
.tippy-box{position:relative;background-color:#000;max-width:280px;line-height:1.4;padding:5px;color:#fff;font-size:13px;outline:0;transition-property:transform,visibility,opacity;box-shadow:0 3px 8px rgba(0,0,0,0.5);}
.tippy-box[data-placement^=top] > .tippy-arrow{bottom:0;}
.tippy-box[data-placement^=top] > .tippy-arrow::before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:#000;transform-origin:center top;}
.tippy-box[data-placement^=bottom] > .tippy-arrow{top:0;}
.tippy-box[data-placement^=bottom] > .tippy-arrow::before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:#000;transform-origin:center bottom;}
.tippy-box[data-placement^=left] > .tippy-arrow{right:0;}
.tippy-box[data-placement^=left] > .tippy-arrow::before{border-width:8px 0 8px 8px;border-left-color:#000;right:-7px;transform-origin:center left;}
.tippy-box[data-placement^=right] > .tippy-arrow{left:0;}
.tippy-box[data-placement^=right] > .tippy-arrow::before{left:-7px;border-width:8px 8px 8px 0;border-right-color:#000;transform-origin:center right;}
.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11);}
.tippy-arrow{width:12px;height:12px;color:#000;}
.tippy-arrow::before{content:"";position:absolute;border-color:transparent;border-style:solid;}
.tippy-content{position:relative;z-index:1;}

.tippy-box[data-animation=scale][data-placement^=top]{transform-origin:bottom;}
.tippy-box[data-animation=scale][data-placement^=bottom]{transform-origin:top;}
.tippy-box[data-animation=scale][data-placement^=left]{transform-origin:right;}
.tippy-box[data-animation=scale][data-placement^=right]{transform-origin:left;}
.tippy-box[data-animation=scale][data-state=hidden]{transform:scale(.5);opacity:0;}

.tippy-box[data-animation=fade][data-state=hidden]{opacity:0;}
.tippy-iOS{cursor:pointer!important;-webkit-tap-highlight-color:transparent;}
 
/*-- Overlays --------------------------------*/ 
#page_overlay{display:none;align-items:center;justify-content:center;position:fixed;background:rgba(0,0,0,0.3);top:0;right:0;bottom:0;left:0;z-index:98;}
#page_overlay.show{display:flex;}
#page_overlay.white{background:rgba(255,255,255,0.6);}
#page_overlay.trans{background:none;}

/*-- Preloader --------------------------------*/
.loader_small{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;z-index:10;}
.loader_small.hidden{display:none;}
.loader_small.hidden > .loader{display:none;}
.loader_small > .loader > div{width:20px;height:20px;margin:0 5px;}

.loader_tiny{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;z-index:10;}
.loader_tiny.hidden{display:none;}
.loader_tiny.hidden > .loader{display:none;}
.loader_tiny > .loader > div{width:10px;height:10px;margin:0 1px;}

.loader{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;}
.loader > div{background:#333;animation:loaderDelay 1.4s infinite ease-in-out;animation-fill-mode:both;box-shadow:0 0 0 1px #fff;}
.loader.white > div{background:#fff;}
.loader > .load1{animation-delay:-0.32s;}
.loader > .load2{animation-delay:-0.16s;}

.loader_small.trans{background:none;}
.loader_small.trans > .loader > div{background:#fff;}
.loader_small.white_trans,
.loader_tiny.white_trans{background:rgba(255,255,255,0.7);}
@keyframes loaderDelay{
	0%, 80%, 100%{transform:scale(0);}
	40%{transform:scale(1);}
}

/*-- Animations -----------------------*/
.animated{animation-duration:1s;animation-fill-mode:both;}

@keyframes zoomIn{
	0% {opacity:0;transform:scale3d(.3, .3, .3);}
	50% {opacity:1;}
}

.zoomIn{animation-name:zoomIn;animation-duration: .3s;}

@keyframes zoomOut{
	0% {opacity:1;}
	50% {opacity:0;transform:scale3d(.3, .3, .3);}
	100% {opacity:0;}
}

.zoomOut{animation-name:zoomOut;animation-duration:.5s;}

@keyframes fadeInDown {
	from {opacity:0;transform:translate3d(0, -100%, 0);}
	to {opacity: 1;transform: translate3d(0, 0, 0);}
}

.fadeInDown{animation-name:fadeInDown;animation-duration:.2s;}

@keyframes fadeOutUp {
  from{opacity:1;}
  to{opacity:0;transform: translate3d(0, -100%, 0);}
}

.fadeOutUp{animation-name:fadeOutUp;}

@keyframes heartBeat {
  0% {transform:scale(1);}
  14% {transform:scale(1.5);}
  28% {transform:scale(1);}
  42% {transform:scale(1.5);}
  70% {transform:scale(1);}
}

.heartBeat{animation-name:heartBeat;animation-duration:calc(1s * 1.5);animation-timing-function:ease-in-out;}

@keyframes pulse-red{
  0%{box-shadow:0 0 0 0 var(--colour-error-red);}
  100%{box-shadow:0 0 0 10px rgba(0,0,0,0);}
}

.pulse_red{animation:var(--animation-pulse-red);}

@keyframes pulse-text{
	0%{opacity: 0.0;}
    50%{opacity: 1.0;}
    100%{opacity: 0.0;}
}

.pulse_text{animation:var(--animation-pulse-text);}

/*------------------------------------------------------
  -- GLOBAL BREAKPOINTS --------------------------------
  ------------------------------------------------------*/
@media(max-width:1000px){
	#site_header > .lrlogo > .comp{display:none;}
	#site_header > .lrlogo > .icon{display:block;}
}
  
@media(max-width:860px){
 	#site_header{justify-content:space-between;}
	#site_header > .search_box{width:auto;flex:1 1 0;}
	#site_header > .show_menu{display:block;}

	#headmenu > .btn{height:61px;line-height:61px;}
	
	#headmenu:not(.acc){flex-direction:column;position:absolute;background:#fff;width:260px;height:100vH;top:0;right:-270px;box-shadow:-5px 0 10px rgba(0,0,0,0.2);transition:right .2s;overflow-y:auto;z-index:2;}
	#headmenu:not(.acc).show{right:0;}
	#headmenu:not(.acc) > a,
	#headmenu:not(.acc) > button{width:100%;margin:0 !important;border-bottom:1px solid var(--def-border-colour-light);border-radius:unset;}
	#headmenu:not(.acc) > .usersubmenu{position:relative;min-width:100%;top:0;right:0;box-shadow:none;}
}
  
@media(max-width:560px){
	#site_header > .title_preview{font-size:16px;}
	#site_header > .title_preview > button{height:30px;margin-left:5px;padding:0 10px;font-size:13px;border-radius:4px;}
	
	.pagemenu nav{height:50px;}
	.pagemenu nav > button::before{bottom:3px !important;}
	
	.dialogue{right:5px;left:5px;transform:translateY(-50%);}

	.pagesec{padding:50px 10px;}
	.pagesec > .inner > p{font-size:18px;}
	.pagesec .cta_btn{max-width:85%;line-height:normal;}

	#masthead > header{padding:20px;}
	#sitemenu > .inner{justify-content:center !important;} 
	#sitemenu > .inner > nav{display:none;}
	.ucd_form{background:#fff;padding-top:10px;border:0;}
	
	#gallery > #thumbs > ol{grid-template-columns:repeat(auto-fill, minmax(var(--grid-cards-minsize-tny), 1fr));}		
}