/* WordPress integration. Original theme styles remain the visual baseline. */
.sf-menu{list-style:none}.sf-menu>li{float:left}.sf-menu a{display:block}
.navigation ul.sf-menu>li.current>a,.span12 ul.sf-menu>li.firstItem>a{display:block}
.navigation ul.sf-menu>li.current-menu-item>a{background:#c3a066;color:#fff}
#component:empty{min-height:0}.mirage-honeypot{position:absolute;left:-10000px}
.mirage-contact-form label{display:block}.mirage-contact-form input,.mirage-contact-form textarea{display:block;max-width:100%;box-sizing:border-box}
.mirage-slider{position:relative;max-width:570px;margin:0 auto 24px;aspect-ratio:570/360;overflow:hidden}.mirage-slider img{width:100%;height:100%;object-fit:contain}.mirage-slider button{position:absolute;top:45%;left:0;background:#0008;color:white;border:0;padding:8px;font-size:28px}.mirage-slider button:last-child{left:auto;right:0}
[hidden]{display:none!important}#isotopeContainer{display:flex;flex-wrap:wrap;list-style:none;margin:0 -10px}#isotopeContainer .gallery-item{width:25%;box-sizing:border-box;padding:10px;position:static!important;margin:0!important}#isotopeContainer img{width:100%}
#mirage-lightbox{padding:35px 15px 15px;background:#111;border:0;max-width:90vw;max-height:90vh}#mirage-lightbox::backdrop{background:#000c}#mirage-lightbox img{max-height:80vh;display:block}#mirage-lightbox button{position:absolute;right:4px;top:0;color:white;background:none;border:0;font-size:30px}
@media(max-width:767px){#isotopeContainer .gallery-item{width:50%}.navigation{float:none}.navigation ul.sf-menu{display:flex;flex-wrap:wrap;justify-content:center;float:none}.navigation ul.sf-menu>li{margin:3px}.navigation ul.sf-menu>li>a{width:90px;height:90px;line-height:90px;font-size:15px}.flag-img{width:45px;height:auto;margin-right:5px}#logo a{margin-right:0}}

/* Mirage mobile hamburger v1 */
.mirage-menu-toggle{display:none}
@media(max-width:767px){
 .navigation{float:none!important;width:100%!important}
 .navigation nav{position:relative;text-align:right}
 .mirage-menu-toggle{
  display:inline-flex;flex-direction:column;justify-content:center;
  gap:5px;width:39px;height:39px;padding:6px;
  background:#aaa;border:2px solid #333;border-radius:10px;
  cursor:pointer;margin:0 0 12px auto
 }
 .mirage-menu-toggle span{
  display:block;height:3px;width:100%;
  background:#263449;border-radius:2px
 }
 .mirage-menu-toggle:focus-visible{outline:2px solid white;outline-offset:3px}
 .navigation nav.mirage-menu-enhanced>ul.sf-menu{display:none!important}
 .navigation nav.mirage-menu-enhanced.is-open>ul.sf-menu{
  display:block!important;float:none!important;clear:both;
  margin:0!important;padding:8px!important;
  background:rgba(20,32,57,.95);border-radius:6px;text-align:left
 }
 .navigation nav.mirage-menu-enhanced>ul.sf-menu>li{
  float:none!important;display:block!important;margin:0!important
 }
 .navigation nav.mirage-menu-enhanced>ul.sf-menu>li>a{
  display:block!important;width:auto!important;height:auto!important;
  line-height:1.5!important;padding:10px 14px!important;
  border-radius:3px!important;font-size:18px!important
 }
}

/* Mirage About Us original layout v1 */
.itemid-167 .mirage-slider{
 width:100%;max-width:none;
 box-sizing:border-box;
 border:5px solid #fff;border-radius:20px;
 margin:20px 0 10px;overflow:hidden;
}
.itemid-167 .mirage-slider img{
 display:block;width:100%;height:100%;object-fit:cover;
}
.itemid-167 .mirage-slider img[hidden]{display:none!important}
.itemid-167 .mirage-slider button{
 opacity:0;transition:opacity .2s;
}
.itemid-167 .mirage-slider:hover button,
.itemid-167 .mirage-slider:focus-within button{opacity:1}

/* Mirage Gallery original layout v1 */
.itemid-169 #isotopeContainer{
 display:flex;flex-wrap:wrap;
 margin:0 0 0 -20px;padding:0;
}
.itemid-169 #isotopeContainer .gallery-item{
 width:25%;padding:0 0 60px 20px;
 box-sizing:border-box;margin:0!important;
}
.itemid-169 #isotopeContainer .item_img{
 float:none;margin:0;overflow:hidden;border-radius:20px;
}
.itemid-169 #isotopeContainer .item_img a{display:block}
.itemid-169 #isotopeContainer img{
 display:block;width:100%;aspect-ratio:1;object-fit:cover;
 border-radius:20px;
}
.itemid-169 .filters{margin-bottom:20px}
.itemid-169 #filters{
 display:flex;flex-wrap:wrap;gap:12px;
 margin:10px 0 0;padding:0;list-style:none;
}
.itemid-169 #filters li{margin:0;padding:0}
.itemid-169 #filters a{color:#fff}
.itemid-169 #filters a.selected{color:#ed2f53}
@media(max-width:767px){
 .itemid-169 #isotopeContainer .gallery-item{
  width:50%;padding-bottom:30px;
 }
}

/* Mirage Services original layout v1 */
.itemid-256 .item_img{
 float:none;margin-bottom:14px;
}
.itemid-256 .item_img img{
 width:auto;max-width:100%;height:auto;
 border:5px solid #fff;border-radius:20px;
 margin-top:5px;box-sizing:content-box;
}
.itemid-256 .item_title{
 color:#eca68c;font-size:19px;line-height:24px;
 font-family:inherit;font-weight:normal;
 text-transform:uppercase;padding-top:11px;
}
.itemid-256 .pricelist{margin:18px 0}
.itemid-256 .pricelist table{
 width:100%;border-collapse:collapse;
}
.itemid-256 .pricelist table td{
 vertical-align:top;border:0;padding:0;
}
.itemid-256 .pricelist table td:first-child{
 padding-right:16px;
}
.itemid-256 .pricelist table td:nth-child(2){
 text-align:right;white-space:nowrap;
}
.itemid-256 .pricelist p{padding:0}
.itemid-256 .pricelist p:first-child{
 color:#fff;font-size:16px;
}
@media(max-width:767px){
 .itemid-256 .items-row .span12{
  width:100%;margin-left:0;
 }
 .itemid-256 .pricelist table td:first-child{
  overflow-wrap:anywhere;
 }
}

/* Mirage Contact original layout v1 */
.itemid-102 .mirage-map iframe{height:325px}
.itemid-102 .mirage-contact-columns{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);
 gap:30px;
}
.itemid-102 .mirage-contact-columns>div{min-width:0}
.itemid-102 .mirage-contact-address p{
 margin-bottom:8px;font-size:13px;overflow-wrap:anywhere;
}
.itemid-102 .mirage-contact-address a{color:inherit}
.itemid-102 .mirage-contact-address h3,
.itemid-102 .mirage-contact-enquiry h3{
 font-size:28px;line-height:36px;margin-bottom:28px;
}
.itemid-102 .mirage-contact-address p+h3{margin-top:10px}
.itemid-102 .mirage-opening-hours{
 font-size:13px;border:0;margin-bottom:36px;
}
.itemid-102 .mirage-opening-hours td{
 border:0;padding:0 8px 0 0;vertical-align:top;
}
.itemid-102 .mirage-contact-intro{
 color:#fff;font-size:11px;padding-bottom:4px;
}
.itemid-102 .mirage-contact-form{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:8px;
}
.itemid-102 .mirage-contact-form>p,
.itemid-102 .mirage-contact-form>label:has(textarea),
.itemid-102 .mirage-contact-form>.mirage-honeypot{
 grid-column:1/-1;
}
.itemid-102 .mirage-contact-form>p{
 padding-bottom:8px;font-style:italic;
}
.itemid-102 .mirage-contact-form label{font-size:13px}
.itemid-102 .mirage-contact-form input:not([type=hidden]),
.itemid-102 .mirage-contact-form textarea{
 width:100%;margin-top:5px;
}
.itemid-102 .mirage-contact-form textarea{min-height:134px}
.itemid-102 .mirage-contact-form button{
 grid-column:1/-1;justify-self:end;
}
@media(max-width:767px){
 .itemid-102 .mirage-contact-columns{grid-template-columns:1fr}
 .itemid-102 .mirage-map iframe{height:280px}
}
@media(max-width:480px){
 .itemid-102 .mirage-contact-form{grid-template-columns:1fr}
}

/* Mirage contact extras v1 */
.itemid-102 .mirage-marketing{
 grid-column:1/-1;border:0;margin:0;padding:0;min-width:0;
}
.itemid-102 .mirage-marketing legend{
 color:inherit;font:inherit;font-size:13px;line-height:18px;
 border:0;margin:0 0 8px;padding:0;width:100%;
}
.itemid-102 .mirage-marketing label{
 display:flex;align-items:flex-start;gap:7px;line-height:18px;
}
.itemid-102 .mirage-contact-form .mirage-marketing input[type=radio],
.itemid-102 .mirage-contact-form input[type=checkbox]{
 display:inline-block;width:auto;margin:3px 0 0;flex:none;
}
.itemid-102 .mirage-form-actions{
 grid-column:1/-1;display:flex;align-items:center;
 justify-content:flex-end;gap:14px;flex-wrap:wrap;
}
.itemid-102 .mirage-form-actions .mirage-copy-label{
 display:flex;align-items:center;gap:7px;font-size:11px;margin:0;
}
.itemid-102 .mirage-vcard{font-size:12px}
.itemid-102 .mirage-vcard a{color:#fff}

/* Equal contact input heights */
.itemid-102 .mirage-contact-form input[name="name"],
.itemid-102 .mirage-contact-form input[name="email"],
.itemid-102 .mirage-contact-form input[name="subject"]{
 height:28px!important;
 min-height:28px!important;
 padding:4px 6px!important;
 line-height:18px!important;
 box-sizing:border-box!important;
}

/* Higher-contrast contact submit button */
.itemid-102 .mirage-contact-form button[type="submit"]{
 color:#fff!important;
 background:#142039!important;
 border:1px solid #fff!important;
 padding:8px 16px;
 text-shadow:none!important;
}
.itemid-102 .mirage-contact-form button[type="submit"]:hover{
 color:#142039!important;
 background:#fff!important;
}
.itemid-102 .mirage-contact-form button[type="submit"]:focus-visible{
 outline:3px solid #fff;
 outline-offset:3px;
}
