:root{--base-font-size: 1.0625rem;--secondary-text-font-size: .9375rem;--menu-bar-height: 3rem;--default-text-color: white;--header-background-clr: hsl(0, 0%, 7.5%);--scroll-background-clr: hsl(0, 0%, 10%);--scroll-foreground-clr: hsl(0, 0%, 27%);--menu-text-color: white;--br-w: 1px;--br-s: solid;--br-c: hsl(0, 0%, 27%);--font-size-32: 2rem;--font-size-29: 1.813rem;--font-size-27: 1.688rem;--font-size-25: 1.563rem;--font-size-23: 1.438rem;--font-size-21: 1.313rem;--font-size-19: 1.188rem;--font-size-18: 1.125rem;--font-size-17: 1.063rem;--font-size-16: 1rem;--font-size-15: .938rem;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.3;color-scheme:light dark;color:var(--default-text-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}html:focus-within{scroll-behavior:smooth}body{min-height:100dvh}a:not([class]){text-decoration-skip-ink:auto}input,button,textarea,select{font:inherit}h1{margin:1.5rem 0 1rem}#home_footer{text-align:center;font-size:var(--font-size-25);background-color:var(--header-background-clr)}#home_footer div{padding:.5rem 0}#home_footer div:first-child{padding-top:3rem}#home_footer div:last-child{padding-bottom:2rem}#home_footer a{padding:1rem 0;color:#99c4ff;text-decoration:none}#root>*:nth-child(2){padding-top:var(--menu-bar-height)}.menu{position:fixed;height:var(--menu-bar-height);width:100%;background-color:#131313;overflow:hidden}.menu-bar{display:flex;justify-content:space-between;align-items:center;height:var(--menu-bar-height);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.menu-trigger{justify-self:left;display:flex;align-items:center;justify-content:center;width:var(--menu-bar-height);height:var(--menu-bar-height);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;margin-right:8px}.menu-trigger:active{background:none;border:none}.menu-trigger .menu-svg{width:40px;height:40px;stroke-width:2px;stroke-linecap:round}.menu-trigger .line1,.menu-trigger .line2{transition:rotate .2s ease-in-out,translate .2s ease-in-out;transform-origin:center center}.menu-trigger .line1{translate:0 -6px}.menu-trigger .line2{translate:0 6px}.menu-trigger.open .line1{translate:0 0;rotate:z 45deg}.menu-trigger.open .line2{translate:0 0;rotate:z -45deg}.menu-trigger,.logo-container-link,#logo{height:var(--menu-bar-height);width:var(--menu-bar-height);cursor:pointer}#logo{padding:.55rem}.language-selection{height:var(--menu-bar-height);display:flex;align-items:center;line-height:1;margin-right:.2rem}.language-selection>img{height:calc(var(--menu-bar-height) - 1.25rem);width:calc(var(--menu-bar-height) - 1.25rem);padding:.2rem;border-radius:.25rem}.menu-item-list{position:fixed;top:var(--menu-bar-height);left:0;right:0;z-index:1;overflow:hidden;transition:height .2s;height:0;background-color:var(--header-background-clr);margin:0;padding:0;list-style-type:none}.menu-item-list-opened{height:calc(100dvh - var(--menu-bar-height));overflow:auto}.menu-item a{display:flex;font-size:1.125rem;font-weight:300;padding:.57rem 0;align-self:center;justify-content:center;color:var(--default-text-color);text-decoration:none}@media only screen and (min-width: 930px){.menu{display:flex}.menu-item-list{margin-left:-7px;position:static;display:flex;height:initial}.menu-item a{padding:0 10px;align-items:center;font-size:1.05rem;height:var(--menu-bar-height)}#menu-bar-placeholder{display:none}#nav-bar-username{display:none;width:calc(100% - 930px);height:var(--menu-bar-height);position:absolute;top:0;right:var(--menu-bar-height);text-align:right}.menu-trigger{display:none}#logo{margin-left:0}.language-selection{position:absolute;top:0;right:0}}#logo{transition:opacity .5s;opacity:0}#logo.visible{opacity:1}.home{text-align:center}.home .logo-section,.home .portrait-section{background-color:var(--header-background-clr)}.home .logo-section img{max-width:100%;max-height:calc(60dvh - 50px);padding:1rem 2rem 2rem}.home .portrait-section img{max-width:100%;max-height:calc(70dvh - 50px);border-radius:1.5rem}.home .portrait-section{padding:2rem 0 1rem;background:#fff linear-gradient(to bottom,var(--header-background-clr) 0%,white 100%)}.home .introduction{background:#fff;color:#000;font-size:var(--font-size-21);padding:0 .5rem}.home .introduction h2{font-size:var(--font-size-29)}.home .introduction>*{margin:0 auto;max-width:35rem}.gallery{color:#000;min-height:30rem;padding:2rem 0 0;background:#fff linear-gradient(to bottom,white 0%,var(--header-background-clr) 100%)}.gallery h2{font-size:var(--font-size-29)}@media screen and (min-width: 650px){.home .gallery-grid img{--numer-of-thumbnails-per-line: 3}}@media screen and (min-width: 975px){.home .gallery-grid img{--numer-of-thumbnails-per-line: 4}}.not-found{text-align:center;color:#fff;background-color:#232323}.not-found h1,.not-found p{padding-top:2em;margin-top:0;color:#fff}.not-found a{color:#ced7fd}#map{margin-bottom:30px}.appointment-booking{text-align:center}.appointment-booking .appointment-booking-form-container{margin:0 auto;padding:1rem;width:min(100dvw,30rem);text-align:left;background-color:var(--header-background-clr);border-radius:1rem}.appointment-booking .appointment-booking-form{margin:1rem auto;max-width:22rem}.appointment-booking input,.appointment-booking select,.appointment-booking textarea{margin:.25rem 0;padding:0 .5rem;width:100%;min-height:2.5rem;border-radius:.25rem;border:var(--br-w) var(--br-s) var(--br-c);font-size:var(--font-size-17);background-color:#1e1e1e;color:#d6d6d6}.appointment-booking select{height:2.5rem}.appointment-booking textarea{resize:vertical;padding:.25rem .5rem;min-height:calc(2lh + .5rem + 2px);max-height:calc(5lh + .5rem + 2px)}#attachments-input{background:none;border:none;padding-top:.25rem;padding-left:0}.appointment-booking label{font-size:var(--font-size-17);font-weight:700}.appointment-booking .error-message{display:block;color:red;margin-bottom:.25rem;font-size:.8rem;min-height:1lh}.appointment-booking .submit-button{width:initial;padding:.5rem 1.5rem;border:none;border-radius:.5rem;font-weight:700;color:var(--default-text-color);background-color:#363636}.appointment-booking .submit-button:disabled{background-color:red}.policy{max-width:40rem;margin:0 auto;line-height:1.3;padding:.5rem}.policy h1{text-align:center}.policy h2{font-size:var(--font-size-21);margin:2rem 0 .5rem}.gallery-container{text-align:center;min-height:calc(100dvh - var(--menu-bar-height));display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto}.gallery{color:#000;height:auto;padding:2rem 0 0;background:#fff linear-gradient(to bottom,white 0%,var(--header-background-clr) 100%)}.gallery h1{font-size:var(--font-size-32);margin:0 0 2rem}.gallery .gallery-grid{margin:0 auto;display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem .5rem;max-width:1200px}.gallery .gallery-grid img{--numer-of-thumbnails-per-line: 2;background-color:#0003;width:calc((min(100dvw,1200px) - ((var(--numer-of-thumbnails-per-line) + 1) * .5rem)) / var(--numer-of-thumbnails-per-line));height:calc((min(100dvw,1200px) - ((var(--numer-of-thumbnails-per-line) + 1) * .5rem)) / var(--numer-of-thumbnails-per-line));object-fit:cover;border-radius:.5rem;cursor:pointer}.gallery .gallery-button{margin:auto;width:min(30rem,100%);background-color:#e2e2e2;border-radius:1rem;padding:1rem 1.5rem;cursor:pointer;font-size:var(--font-size-23);font-weight:700}.gallery .opened-image-container{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0003;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.gallery .opened-image{max-width:100%;max-height:100%}.gallery .x-icon{position:fixed;top:.5rem;right:.5rem;margin-right:env(safe-area-inset-right);width:3.5rem;height:3.5rem;padding:.5rem;border-radius:2rem;background-color:#00000080;cursor:pointer}.gallery .left-icon{position:fixed;left:.5rem;margin:auto 0;margin-left:env(safe-area-inset-right);width:3.5rem;height:3.5rem;padding:.5rem;border-radius:2rem;background-color:#00000080;cursor:pointer}.gallery .right-icon{position:fixed;right:.5rem;margin:auto 0;margin-right:env(safe-area-inset-right);width:3.5rem;height:3.5rem;padding:.5rem;border-radius:2rem;background-color:#00000080;cursor:pointer}@media screen and (min-width: 650px){.gallery .gallery-grid img{--numer-of-thumbnails-per-line: 3}}@media screen and (min-width: 975px){.gallery .gallery-grid img{--numer-of-thumbnails-per-line: 4}}
