.bst{box-sizing:border-box;max-width:1040px;margin:25px auto 45px;border:1px solid #d7d7d7;border-radius:18px;overflow:hidden;background:#f5f5f5;color:#111;font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}.bst *{box-sizing:border-box}.bst [hidden]{display:none!important}.bst h2,.bst h3,.bst p{padding:0;text-transform:none;letter-spacing:normal}.bst button,.bst input,.bst textarea{font:inherit}.bst button:focus-visible,.bst input:focus-visible,.bst textarea:focus-visible{outline:3px solid #777;outline-offset:3px}.bst-hero{padding:35px 28px;text-align:center;background:#090909;color:#fff}.bst-logo{display:block;width:auto;max-width:145px;height:auto;max-height:95px;object-fit:contain;margin:0 auto 13px}.bst-hero>span{display:block;font-size:10px;letter-spacing:2px;color:#cfcfcf;font-weight:750}.bst-hero h2{font-family:Georgia,serif;font-size:clamp(32px,6vw,56px);line-height:1.05;margin:11px 0;color:#fff}.bst-hero p{font-size:16px;color:#ddd;margin:0}.bst-body{padding:28px}.bst-form{margin:0}.bst-step{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid #d7d7d7}.bst-step>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#111;color:#fff;font-weight:750}.bst-step h3{font-size:21px;margin:5px 0 15px}.bst-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.bst-service{display:block;min-width:0}.bst-service input{position:absolute;opacity:0}.bst-service>span{display:block;height:100%;padding:0;overflow:hidden;border:1px solid #d2d2d2;border-radius:9px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.bst-service>span:hover{border-color:#777;transform:translateY(-1px)}.bst-service input:checked+span{border-color:#000;box-shadow:0 0 0 2px #000;background:#fff}.bst-service-image{display:block;width:100%;height:105px;object-fit:cover;margin:0;filter:grayscale(100%)}.bst-service-copy{display:block;padding:10px}.bst-service strong,.bst-service small{display:block}.bst-service strong{font-size:14px;line-height:1.25}.bst-service small{color:#555;margin-top:3px;font-size:12px}.bst input[type=date],.bst-fields input,.bst-fields textarea{display:block;width:100%;min-height:46px;padding:10px;border:1px solid #bdbdbd;border-radius:7px;background:#fff;color:#111;font-size:16px}.bst input[type=date]{max-width:320px}.bst-slots{display:flex;flex-wrap:wrap;gap:9px}.bst-slot{min-width:76px;padding:10px;border:1px solid #bbb;border-radius:7px;background:#fff;color:#111;cursor:pointer}.bst-slot.is-selected{background:#111;color:#fff;border-color:#111}.bst-no-slots{padding:14px;background:#e8e8e8;color:#111;border-radius:7px}.bst-help{font-size:12px;color:#555}.bst-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bst-fields label{font-size:12px;font-weight:650}.bst-fields small{font-weight:400;color:#555}.bst-hp{position:absolute!important;left:-9999px!important}.bst-summary{margin:22px 0 14px;padding:16px;background:#fff;border:1px solid #ccc;border-radius:8px;font-weight:650}.bst-submit,.bst-success button{display:block;width:100%;min-height:50px;padding:13px;border:1px solid #000;border-radius:8px;background:#000;color:#fff;font-weight:750;cursor:pointer}.bst-submit:disabled{opacity:.55}.bst-status{color:#111;font-weight:650}.bst-success{text-align:center;padding:40px 20px;background:#fff;border-radius:12px}.bst-success>span{display:inline-flex;width:65px;height:65px;align-items:center;justify-content:center;border-radius:50%;background:#111;color:#fff;font-size:34px}.bst-success h3{font-size:28px}.bst-success strong{display:block;font-size:20px;margin:18px}.bst-empty{padding:25px;background:#fff;border-radius:8px}.bst-whatsapp{display:block;width:100%;min-height:50px;padding:13px;border:1px solid #000;border-radius:8px;background:#fff;color:#000!important;font-weight:750;cursor:pointer;text-align:center;text-decoration:none;margin:0 0 12px}
@media(max-width:720px){.bst-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.bst{margin:12px auto 28px;border-radius:12px}.bst-hero{padding:28px 16px}.bst-logo{max-width:120px;max-height:78px}.bst-body{padding:17px 10px}.bst-step{grid-template-columns:32px 1fr;gap:8px;padding:18px 0}.bst-step>span{width:30px;height:30px}.bst-fields{grid-template-columns:1fr}.bst-service-image{height:92px}.bst-service-copy{padding:8px}.bst-service strong{font-size:13px}.bst-service small{font-size:11px}.bst-slot{flex:1 1 75px}}
@media(max-width:360px){.bst-services{gap:7px}.bst-service-image{height:82px}}
.bst-hero{padding:30px 28px 34px}.bst-logo{width:170px;max-width:46vw;height:170px;max-height:46vw;object-fit:cover;border:3px solid #fff;border-radius:50%;box-shadow:0 7px 24px rgba(255,255,255,.12);margin:0 auto 15px}.bst-hero>span{letter-spacing:3px}.bst-hero h2{font-size:clamp(36px,6vw,58px);margin:12px 0 8px}.bst-menu-title{display:inline-block;margin:0 0 17px;padding:7px 16px;border-top:1px solid #777;border-bottom:1px solid #777;color:#fff;font-family:Georgia,serif;font-size:13px;font-weight:700;letter-spacing:4px}.bst-hero p{max-width:620px;color:#ddd!important;margin:0 auto!important;line-height:1.55}
@media(max-width:620px){.bst-hero{padding:25px 16px 29px}.bst-logo{width:145px;max-width:48vw;height:145px;max-height:48vw;margin-bottom:14px}.bst-hero h2{margin-top:11px}.bst-menu-title{margin-bottom:14px;font-size:12px;letter-spacing:3px}}
.bst-hero{position:relative}.bst-language-switch{position:absolute;z-index:2;top:14px;right:14px;display:flex;gap:5px}.bst-language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:30px;padding:0 7px;border:1px solid #777;border-radius:999px;background:#181818;color:#ddd!important;font-size:10px;font-weight:800;line-height:1;text-decoration:none!important}.bst-language-switch a:hover,.bst-language-switch a.is-active{border-color:#fff;background:#fff;color:#000!important}.bst-language-switch a:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:620px){.bst-language-switch{top:10px;right:10px;gap:3px}.bst-language-switch a{min-width:28px;height:27px;padding:0 5px;font-size:9px}.bst-logo{margin-top:22px}}

/* Keep the booking header flush with its page container on phones and desktop. */
.bst-booking-page .bst{margin-top:0!important;border-top:0;border-top-left-radius:0;border-top-right-radius:0}
.bst-booking-page .bst-top-container{margin-top:0!important;padding-top:0!important;row-gap:0!important}
.bst-booking-page .entry-header,.bst-booking-page .page-header,.bst-booking-page .wp-block-post-title{display:none!important}

/* VMagazine Lite: remove the separate mobile bar and breadcrumb wrapper too. */
body.bst-booking-page #masthead,
body.bst-booking-page .vmagazine-lite-header-handle,
body.bst-booking-page .vmagazine-lite-mob-outer,
body.bst-booking-page .vmagazine-lite-breadcrumb-wrapper,
body.bst-booking-page .vmagazine-lite-mobile-search,
body.bst-booking-page .vmagazine-lite-mobile-navigation{display:none!important}
body.bst-booking-page .vmagazine-lite-main-wrapper,
body.bst-booking-page #content,
body.bst-booking-page #primary,
body.bst-booking-page #main,
body.bst-booking-page .entry-content{margin-top:0!important;padding-top:0!important}

/* Dark photographic header, with readable foreground content. */
.bst-booking-page{background:#000!important}
.bst-booking-page .bst-top-container{background:#000!important;padding-left:0!important;padding-right:0!important}
.bst-booking-page .bst{border:0!important;border-radius:0!important;width:100%}
.bst .bst-hero{background:#000!important;isolation:isolate;overflow:hidden}
.bst .bst-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.40),rgba(0,0,0,.60)),url("hero-background.jpeg") center 35%/cover no-repeat}
.bst .bst-logo{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;object-fit:contain;mix-blend-mode:screen}
.bst .bst-hero h2,.bst .bst-hero p,.bst .bst-hero>span,.bst .bst-menu-title{text-shadow:0 2px 10px #000}

/* Dark booking form with soft depth and clear white labels. */
.bst{background:#080808;color:#fff;color-scheme:dark}
.bst .bst-body{background:linear-gradient(145deg,#181818 0%,#090909 45%,#030303 100%);color:#fff;box-shadow:inset 0 14px 28px rgba(0,0,0,.55)}
.bst .bst-hero h2{font-size:clamp(15px,2.5vw,19px)!important;line-height:1.2;overflow-wrap:anywhere}
.bst .bst-step{border-bottom-color:#343434;grid-template-columns:42px minmax(0,1fr)}
.bst .bst-step>div,.bst .bst-fields>label{min-width:0}
.bst .bst-step>span{background:#202020;color:#fff;border:1px solid #484848;box-shadow:0 4px 12px #000}
.bst .bst-step h3,.bst .bst-fields label,.bst .bst-service strong,.bst .bst-status,.bst .bst-success h3,.bst .bst-success strong{color:#fff}
.bst .bst-help,.bst .bst-service small,.bst .bst-fields small,.bst .bst-success p{color:#d0d0d0}
.bst .bst-service>span{background:#171717;color:#fff;border-color:#555;box-shadow:0 5px 16px rgba(0,0,0,.4)}
.bst .bst-service input:checked+span{background:#262626;border-color:#fff;box-shadow:0 0 0 1px #fff,0 5px 16px #000}
.bst input[type=date],.bst .bst-fields input,.bst .bst-fields textarea{background:#151515!important;color:#fff!important;border-color:#595959!important;min-width:0;max-width:100%;box-shadow:inset 0 2px 7px rgba(0,0,0,.5);color-scheme:dark}
.bst input::placeholder,.bst textarea::placeholder{color:#bdbdbd;opacity:1}
.bst input[type=date]::-webkit-date-and-time-value{text-align:left}
.bst .bst-slot{background:#191919;color:#fff;border-color:#626262;box-shadow:0 3px 9px rgba(0,0,0,.4)}
.bst .bst-slot:hover{background:#333}
.bst .bst-slot.is-selected{background:#fff;color:#080808;border-color:#fff}
.bst .bst-summary,.bst .bst-no-slots,.bst .bst-empty,.bst .bst-success{background:#191919;color:#fff;border:1px solid #444;box-shadow:0 6px 20px rgba(0,0,0,.4)}
.bst .bst-submit,.bst .bst-success button{background:#252525;color:#fff;border:1px solid #aaa;box-shadow:0 5px 14px #000}
.bst .bst-submit:hover,.bst .bst-success button:hover{background:#3a3a3a}
.bst button:focus-visible,.bst input:focus-visible,.bst textarea:focus-visible{outline-color:#fff}
@media(max-width:620px){.bst .bst-step{grid-template-columns:32px minmax(0,1fr)}}

/* Hide theme attribution on the appointment page. */
body.bst-booking-page #colophon .footer-credit{display:none!important}
body.bst-booking-page #colophon .footer-btm-wrap,
body.bst-booking-page #colophon .buttom-footer{min-height:0!important;padding-top:0!important;padding-bottom:0!important}
