:root{--floral-white: #fffcf2ff;--dust-grey: #ccc5b9;--charcoal-brown: #403d39;--carbon-black: #252422;--autumn-ember: #ba5c12;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--font-heading: "Norwester", Arial, sans-serif;--font-body: "Proxima Nova", Arial, sans-serif;--font-size-base: 16px;--nav-height: 50px;--line-height-base: 1.5;--heading-letterspacing: .5px}*{box-sizing:border-box}html{scroll-behavior:smooth}header{margin:0;padding:0;position:sticky;top:0;z-index:1000}main,footer{margin:0;padding:0}body{margin:0;padding:0;background-color:var(--floral-white);color:var(--carbon-black);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-base)}h1,h2,h3{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:var(--heading-letterspacing);margin:0;color:var(--carbon-black)}h1{font-size:2.5rem;font-weight:700;line-height:1.2}h2{font-size:2rem;font-weight:600;line-height:1.3}h3{font-size:1.5rem;font-weight:600;line-height:1.4}p,li{font-family:var(--font-body);font-weight:400;letter-spacing:.2px}.container{width:90%;margin-right:auto;margin-left:auto}@media(min-width:480px){.container{width:85%}}@media(min-width:640px){.container{width:80%}}@media(min-width:768px){.container{width:75%}}@media(min-width:1024px){.container{width:70%}}@font-face{font-family:Norwester;src:url(/assets/norwester-ChEMTlJQ.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/assets/proximanova_regular-B11rpfin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/assets/proximanova_bold-BhxJxVux.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/assets/proximanova_light-BQsbGI1J.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}.home-page{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.services-section{background-image:url(/assets/blade-DpB-fMQ0.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;height:70vh;opacity:.9;padding:8rem 0 0;width:100%}.services-cards{display:flex;gap:1.5rem;padding:2rem 0;flex-wrap:nowrap;justify-content:space-between;align-items:stretch;max-width:100%}.service-card{flex:1 1 0;min-width:0;perspective:1000px;cursor:pointer;min-height:200px}.service-card-inner{position:relative;width:100%;height:100%;text-align:center;transition:transform .6s;transform-style:preserve-3d;min-height:200px}.service-card.flipped .service-card-inner{transform:rotateY(180deg)}.service-card-front,.service-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-color:var(--floral-white);border:3px solid var(--carbon-black);border-radius:8px;padding:1rem;box-shadow:0 4px 6px #0000004d;display:flex;flex-direction:column;justify-content:center;font-size:1.1rem;overflow:hidden}.service-card-front{z-index:2;transform:rotateY(0)}.service-card-back{transform:rotateY(180deg);justify-content:flex-start;overflow-y:auto}.service-card.flipped .service-card-front{visibility:hidden}.service-card:not(.flipped) .service-card-back{visibility:hidden}.service-card:hover .service-card-inner{box-shadow:0 6px 12px #0006}.service-card h3{margin-bottom:1rem;flex-shrink:0}.service-card-front p{color:var(--charcoal-brown);margin:0;line-height:1.6}.pricing{display:flex;justify-content:space-between;gap:.5rem;margin-top:.75rem;padding:.5rem;background-color:#ccc5b980;border-radius:4px;flex-shrink:0}.style{text-align:left;font-size:.95rem}.price{font-weight:600;color:var(--autumn-ember);white-space:nowrap}.booking{display:flex;justify-content:center;padding:4rem 0}.booking button{padding:.75rem 1.5rem;background-color:var(--autumn-ember);color:var(--floral-white);border:1px solid var(--charcoal-brown);border-radius:8px;font-size:1.5rem;font-weight:600;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 6px #0000004d;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.booking button:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 6px 12px #0006;background-color:#a04d0f;color:#fff}.booking button:active{transform:translateY(-1px);box-shadow:0 3px 6px #0000004d}.booking button a{color:var(--floral-white);text-decoration:none}.hours-section{width:100%;background-color:var(--charcoal-brown);color:var(--floral-white);padding:4rem 0;scroll-margin-top:80px}.hours{display:flex;flex-direction:column;gap:2rem}.hours h2{text-align:center;color:var(--floral-white)}.hours-flex{display:flex;gap:2rem;align-items:center;justify-content:space-between}.hours-table{display:flex;flex-direction:column;justify-content:center;flex:1;max-width:100%}.hours-image{flex:1;max-width:100%}.hours-image img{width:100%;height:auto;object-fit:cover;border-radius:5px;box-shadow:0 4px 8px #0003;transition:transform .3s ease,box-shadow .3s ease}.hours-image img:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0000004d}.day-hours{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--floral-white);transition:padding-left .2s ease}.day-hours:hover{padding-left:.5rem}.location-section{width:100%;background-color:#fff;padding:4rem 0;scroll-margin-top:80px;color:var(--carbon-black)}.location-section h2{text-align:center;margin-bottom:2rem;color:var(--carbon-black)}.map-container{width:100%;max-width:100%}.map-container iframe{display:block;width:100%}.photos-section{width:100%;background-color:var(--dust-grey);padding:4rem 0;scroll-margin-top:80px;color:var(--carbon-black)}.photos-section h2{text-align:center;margin-bottom:2rem}.carousel{position:relative;display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.carousel-container{flex:1;overflow:hidden;border-radius:8px;box-shadow:0 4px 8px #0003}.carousel-track{display:flex;transition:transform .5s ease-in-out}.carousel-slide{min-width:100%;display:flex;justify-content:center;align-items:center;background-color:var(--carbon-black)}.carousel-slide img{max-width:100%;max-height:500px;width:auto;height:auto;object-fit:contain;display:block}.carousel-button{background-color:transparent;border:none;width:60px;height:60px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s ease;flex-shrink:0;padding:0}.carousel-button svg{width:100%;height:100%}.carousel-button .button-bg{fill:var(--carbon-black);transition:fill .3s ease}.carousel-button .button-arrow{stroke:var(--floral-white);fill:none;transition:stroke .3s ease;stroke-width:1.5}.carousel-button:hover{transform:scale(1.15)}.carousel-button:hover .button-bg{fill:var(--autumn-ember)}.carousel-button:hover .button-arrow{stroke:var(--floral-white)}.carousel-button:active{transform:scale(.95)}.carousel-dots{display:flex;justify-content:center;gap:.5rem}.dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--carbon-black);background-color:transparent;cursor:pointer;transition:background-color .3s ease,transform .3s ease}.dot:hover{transform:scale(1.2)}.dot.active{background-color:var(--autumn-ember);border-color:var(--autumn-ember)}.contacts-section{width:100%;background-color:var(--charcoal-brown);padding:4rem 0;color:var(--floral-white);scroll-margin-top:80px}.contacts-section h2{text-align:center;color:var(--floral-white)}.contact-details{display:flex;justify-content:space-around;align-items:center;gap:5rem;margin-top:2rem}.contact-details a{color:var(--floral-white);text-decoration:none;font-size:1.1rem;font-weight:500;transition:color .3s ease,transform .3s ease;display:inline-block}.contact-details a:hover{color:var(--autumn-ember);transform:translateY(-3px)}@media(max-width:767px){.home-page{background-size:cover;background-position:center center;background-attachment:scroll;min-height:100vh;height:auto}.services-section{height:auto;padding:4rem 0;display:flex;flex-direction:column-reverse;gap:2rem}.services-cards{flex-direction:column;padding:0;gap:1rem;max-width:100%}.service-card{flex:1 1 auto}.booking{padding:2rem 0}.hours-flex{flex-direction:column;gap:2rem}.hours-table{width:100%}.contact-details{flex-direction:column;gap:2rem}.carousel-slide img{max-height:400px}.carousel-button{width:40px;height:40px;font-size:1.5rem}}@media(min-width:768px){.home-page{background-attachment:fixed}}.navigation{width:100%;background-color:var(--carbon-black)}.nav-container{display:flex;justify-content:center;align-items:center}.logo{max-height:100%}.desktop-nav{display:none;padding:2rem 0;width:100%}.nav-links{display:flex;justify-content:space-between;align-items:center;list-style:none;margin:0;padding:0;text-align:center;width:100%}.nav-links li{flex:1}.nav-links li:nth-child(2){display:flex;justify-content:center}.nav-links li a{text-decoration:none;color:var(--floral-white);font-size:1.2rem;font-weight:500;transition:color .3s ease,transform .3s ease;display:inline-block}.nav-links li a:hover{color:var(--autumn-ember);transform:translateY(-3px)}.mobile-header{display:flex;flex-direction:column;align-items:center;width:100%;padding:1rem 0;position:relative}.mobile-header .logo{margin-bottom:2.5rem}.mobile-menu-button{display:block;background:none;border:none;cursor:pointer;padding:.5rem;position:absolute;bottom:.5rem;right:0;margin-bottom:1rem}.hamburger{display:block;width:25px;height:2px;background-color:var(--dust-grey);position:relative;transition:all .3s ease}.hamburger:before,.hamburger:after{content:"";position:absolute;width:25px;height:2px;background-color:var(--dust-grey);transition:all .3s ease}.hamburger:before{top:-8px}.hamburger:after{top:8px}.hamburger.open{background-color:transparent}.hamburger.open:before{transform:rotate(45deg);top:0}.hamburger.open:after{transform:rotate(-45deg);top:0}.mobile-nav{display:block;background-color:var(--carbon-black);border-top:1px solid var(--dust-grey);padding-bottom:1rem}.mobile-nav-links{list-style:none;margin:0 0 0 auto;width:60%;text-align:right}.mobile-nav-links li{padding:.75rem 0;border-bottom:1px solid var(--dust-grey)}.mobile-nav-links li:last-child{border-bottom:none}.mobile-nav-links li a{text-decoration:none;color:var(--floral-white);font-weight:500;display:block;transition:color .3s ease,transform .3s ease}.mobile-nav-links li a:hover{color:var(--autumn-ember);transform:translate(5px)}@media(min-width:768px){.desktop-nav{display:block}.mobile-header,.mobile-menu-button,.mobile-nav{display:none}}.footer{background-color:var(--carbon-black);color:var(--floral-white);padding:2rem 0;text-align:center}.footer p{margin:.5rem 0}.business-info{margin-bottom:1.5rem;line-height:1;text-align:left}.business-info p{margin:.25rem 0 0;font-size:.9rem}.credits{font-size:.9rem;color:var(--dust-grey);margin-top:.5rem}
