/*
Theme Name: Lazer Properties
Theme URI: https://gethighrise.com
Template: blankslate
Author: Luke Balbirnie
Version: 2026.1774887462
Updated: 2026-03-30 16:17:42

*/

:root {
    --bone: #EEE;
    --gothic: #080808;
    --green: #203125;
  }

  html {background:linear-gradient(to bottom, white, var(--bone));}

  .outer {
    display: flex;
    width: 100%;
    align-items: center;
    flex-direction: column;
}

.inner {
    width: calc(100% - 64px);
    max-width:1600px;
}


::selection {
    background-color: var(--green);
    color: var(--bone);
}





p, a {
    margin-bottom: 0;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    line-height:165%;
    font-weight:400;
    text-decoration:none;
    display:inline-block;
}



.sans-serif {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.heading-xl {
    font-size: 64px;
    line-height: 1.1;
    font-weight: 300;
}

.heading-lg {
    font-size: 55px;
    line-height: 1.15;
    font-weight: 300;
}

.heading-md {
    font-size: 45px;
    line-height:125%;
    font-weight: 300;
}

.heading-sm {
    font-size: 34px;
    font-weight:400;
    line-height:135%;
}

.heading-xs {
    font-size: 24px;
	line-height:32px;
    font-weight:600;
}

.text-xxl {
    font-size: 22px;
    line-height:165%;

}

.text-xl {
    font-size: 26px;
}

.text-lg {
    font-size: 18px;
}

.text-md {
    font-size: 16px;
}

.text-sm {
    font-size: 14px;
}





.bold {
    font-weight: 600;
}

.semibold {
    font-weight: 600;
}

.medium {
    font-weight: 500;
}

.regular {
    font-weight: 400;
}

.light {
    font-weight: 300;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.kicker {
    font-family:'Inter',sans-serif;
    font-weight:700;
    font-size:12px;
    line-height:170%;
    letter-spacing:10%;
    color:var(--charcoal);
    text-transform:uppercase;
    padding:8px 16px;
    border-radius:8px;
    background-color:var(--sandy-brown-kicker);
    display:inline-block;
    width:auto;
}

/* Colors */


/* Spacing */
.pt-152 {
    padding-top: 152px;
}
.pt-128 {
    padding-top: 128px;
}

.pt-96 {
    padding-top: 96px;
}

.pt-80 {
    padding-top: 80px;
}

.pt-72 {
    padding-top: 72px;
}

.pt-64 {
    padding-top: 64px;
}

.pt-48 {
    padding-top: 48px;
}

.pt-40 {
    padding-top: 40px;
}

.pt-32 {
    padding-top: 32px;
}

.pt-24 {
    padding-top: 24px;
}

.pt-16 {
    padding-top: 16px;
}

.pt-12 {
    padding-top: 12px;
}

.pt-8 {
    padding-top: 8px;
}

.pt-4 {
    padding-top: 4px;
}

.pb-152 {
    padding-bottom: 152px;
}

.pb-128 {
    padding-bottom: 128px;
}

.pb-96 {
    padding-bottom: 96px;
}

.pb-80 {
    padding-bottom: 80px;
}

.pb-72 {
    padding-bottom: 72px;
}

.pb-64 {
    padding-bottom: 64px;
}

.pb-48 {
    padding-bottom: 48px;
}

.pb-32 {
    padding-bottom: 32px;
}

.pb-24 {
    padding-bottom: 24px;
}

.pb-16 {
    padding-bottom: 16px;
}

.pb-12 {
    padding-bottom: 12px;
}

.pb-8 {
    padding-bottom: 8px;
}

.pb-4 {
    padding-bottom: 4px;
}

.p-96 {
    padding: 96px;
}

.p-80 {
    padding: 80px;
}

.p-72 {
    padding: 72px;
}

.p-64 {
    padding: 64px;
}

.p-48 {
    padding: 48px;
}

.p-40 {
    padding: 40px;
}

.p-32 {
    padding: 32px;
}

.p-24 {
    padding: 24px;
}

.p-16 {
    padding: 16px;
}

.p-12 {
    padding: 12px;
}

.p-8 {
    padding: 8px;
}

.p-4 {
    padding: 4px;
}

.mt-152 {
    margin-top: 152px;
}

.mt-128 {
    margin-top: 128px;
}

.mt-112 {
    margin-top: 112px;
}

.mt-96 {
    margin-top: 96px;
}

.mt-80 {
    margin-top: 80px;
}

.mt-72 {
    margin-top: 72px;
}

.mt-64 {
    margin-top: 64px;
}

.mt-48 {
    margin-top: 48px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-32 {
    margin-top: 32px;
}

.mt-24 {
    margin-top: 24px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-16 {
    margin-top: 16px;
}

.mt-12 {
    margin-top: 12px;
}

.mt-8 {
    margin-top: 8px;
}

.mt-4 {
    margin-top: 4px;
}

.mb-96 {
    margin-bottom: 96px;
}

.mb-80 {
    margin-bottom: 80px;
}

.mb-72 {
    margin-bottom: 72px;
}

.mb-64 {
    margin-bottom: 64px;
}

.mb-48 {
    margin-bottom: 48px;
}

.mb-32 {
    margin-bottom: 32px;
}

.mb-24 {
    margin-bottom: 24px;
}

.mb-16 {
    margin-bottom: 16px;
}

.mb-12 {
    margin-bottom: 12px;
}

.mb-8 {
    margin-bottom: 8px;
}

.mb-4 {
    margin-bottom: 4px;
}

.padding-24 {
    padding: 24px;
}

.padding-48 {
    padding: 48px;
}

.flex-row {
    display: flex;
    flex-direction: row;
}

.flex-column {
    display: flex;
    flex-direction: column;
}

.align-center {
    align-items: center;
}

.align-start {
    align-items: flex-start;
}

.align-end {align-items: flex-end;}

.justify-center {
    justify-content: center;
}

.justify-space-between {
    justify-content: space-between;
}

.grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width:100%;
}

.grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-4 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-gap-12 {
    grid-gap: 12px;
}

.grid-gap-16 {
    grid-gap: 16px;
}

.grid-gap-24 {
    grid-gap: 24px;
}

.grid-gap-48 {
    grid-gap: 48px;
}

.column-gap-24 {
    column-gap: 24px
}

.column-gap-32 {
    column-gap: 32px
}

.column-gap-48 {
    column-gap: 48px
}

.column-gap-64 {
    column-gap: 64px
}

.column-gap-96 {
    column-gap: 96px
}

.column-gap-128 {
    column-gap: 128px
}
.row-gap-24 {
    row-gap: 24px
}
.row-gap-32 {
    row-gap: 32px
}

.row-gap-48 {
    row-gap: 48px
}

.button {
    border-radius: 100px;
    padding: 12px 24px 14px 24px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    transition: all .5s ease;
}

.button.text-xl {
    line-height: 20px;
}




.rounded-12 {
    border-radius: 12px;
}

.rounded {
    border-radius: 16px;
}

.rounded-24 {
    border-radius: 24px;
}

body .mobile {
    display: none;
}




@media(max-width:800px) {

    .mobile {
        display: initial
    }


    .inner {
        width: calc(100% - 48px);
    }

    body .desktop {
        display: none;
    }

    .flex-row {
        flex-direction: column;
    }

    .grid-2, .grid-3, .grid-4 {
        grid-template-columns: 1fr;
    }


    .grid-gap-24 {
        grid-gap: 16px;
    }

    .grid-gap-48 {
        grid-gap: 32px;
    }

    .pt-128 {
        padding-top: 96px;
    }
    .pb-128 {
        padding-bottom: 96px;
    }

    .pt-152 {
        padding-top: 100px;
    }

    .pb-152 {
        padding-top: 100px;
    }


    .mt-152 {
        margin-top: 100px;
    }

    .mt-128 {
        margin-top: 96px;
    }

    .mt-96 {
        margin-top: 80px;
    }

    .mt-80 {
        margin-top: 72px;
    }

    .mt-72 {
        margin-top: 64px;
    }

    .mt-64 {
        margin-top: 48px;
    }

    .mt-48 {
        margin-top: 32px;
    }

    .mt-32 {
        margin-top: 24px;
    }

    .mt-24 {
        margin-top: 16px;
    }

    .mt-16 {
        margin-top: 12px;
    }

    .mt-12 {
        margin-top: 8px;
    }

    .mt-8 {
        margin-top: 6px;
    }

    .mt-4 {
        margin-top: 4px;
    }

    .mb-96 {
        margin-bottom: 80px;
    }

    .mb-80 {
        margin-bottom: 72px;
    }

    .mb-72 {
        margin-bottom: 64px;
    }

    .mb-64 {
        margin-bottom: 48px;
    }

    .mb-48 {
        margin-bottom: 32px;
    }

    .mb-32 {
        margin-bottom: 24px;
    }

    .mb-24 {
        margin-bottom: 16px;
    }

    .mb-16 {
        margin-bottom: 12px;
    }

    .mb-12 {
        margin-bottom: 8px;
    }

    .mb-8 {
        margin-bottom: 6px;
    }

    .mb-4 {
        margin-bottom: 4px;
    }

	.mobile-mt-48 {
        margin-top: 48px;
    }

    .mobile-mt-24 {
        margin-top: 24px;
    }

    .heading-xl {
        font-size: 32px;
        line-height: 1.25;
    }

    .heading-lg {
        font-size: 32px;
    }

    .heading-md {
        font-size: 30px;
    }

    .heading-sm {
        font-size: 26px;
    }

    .heading-xs {
        font-size: 22px;
    }

    .text-xxl {
        font-size: 17px;
    }

    .text-xl {
        font-size: 18px;
    }

    .text-lg {
        font-size: 16px;
    }

    .text-md {
        font-size: 15px;
    }

    .text-sm {
        font-size: 14px;
    }

    .padding-48 {
        padding: 32px;
    }

    .padding-24 {
        padding: 16px;
    }



    .mobile-flex-column-reverse {
        flex-direction: column-reverse;
    }

}

header, footer, #sidebar {display:none;}
html, body { height: 100%; }
.container {
    display:flex;
    flex-direction:column;
    align-items:center;
}
.inner {
    width:calc(100% - 64px);
    max-width:1400px;
}
.logo {width:300px;height:auto;max-width:100%;float:none;margin:0 auto;}
.banner {
    background-color:var(--green);
    background-image:url('https://ritualhairstudio.ca/wp-content/uploads/2026/05/Leaf-Background-V3.jpg');
    background-size:cover;
    background-repeat:no-repeat;
    background-position: 50% 50%;
}
.banner .inner {
    padding-top:24px;
    display:flex;
    flex-direction:column;
    row-gap:100px;
    align-items:center;
    justify-content:space-between;
    padding-bottom:64px;
    height:auto !important;
}
.gothic-bg {background-color:var(--gothic)}
.bone-bg {background-color:#EEEEEE;}
.bone {color:#EEEEEE !important;}
.gothic {color:#080808;}
.green {color:var(--green)}
.bone-gradient {background:linear-gradient(to top, white, var(--bone))}
h1 {font-family:"Ritual Serif",Georgia;font-size:90px;text-transform:uppercase;letter-spacing:2%;font-weight:400;}
h2 {font-family:"Ritual Serif",Georgia;font-size:75px;text-transform:uppercase;letter-spacing:2%;}
h3 {font-family:"Ritual Serif",Georgia;font-size:32px;text-transform:uppercase;letter-spacing:2%;}
p {font-family:Georgia,serif;font-style:italic;font-size:22px;line-height:150%;}
.certifications {width:410px;}
.certification {font-family:'Inter';font-size:20px;font-style:italic;padding:24px 0;border-bottom:1px solid #DBDBDB;}
.vagaro-container {
    margin-top:48px;
    background-color:white;
    padding:64px;
    width:100%;
    height:auto;
    min-height:800px;
}
.dropcap {font-size:64px;}
.contact-link {letter-spacing:15%;text-transform:uppercase;}
.divider {width:100%;height:1px;background-color:var(--gothic);opacity:0.1;margin:24px 0;}
.meet-britt-content {margin-top:112px}
.meet-britt-content img {width:587px;max-width:calc(50% - 64px)}
.services {margin-top:200px;padding-top:46px;}


@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.rotating {
  animation: spin 20s linear infinite;
}
.book-now {row-gap:64px;}
.arrow {position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;transform:rotate(45deg);}
.contact-info {
display:inline-flex;
align-items:center;
flex-direction:column;
}
.banner .inner .flex-column {row-gap:64px;}


@media(max-width:1200px){
    .services-intro {column-gap:64px;}
}


@media(min-width:767px) and (max-width:1400px) and (orientation:landscape){
    h2 {font-size:45px;}

    #booking .flex-row {align-items:flex-start;}
    .meet-britt-content {column-gap:64px;}
    p {font-size:20px;}
    .vagaro-container {margin-top:24px;padding:48px;}
}

@media(min-width:767px) and (max-width:900px) and (orientation:portrait){
    .meet-britt-content {flex-direction:column;}
    #booking .flex-row {flex-direction:column;align-items:flex-start;}
    .inner {width:80%;}
    h1 {font-size:75px;}
    h2 {font-size:55px;}
}

@media(max-width:767px) {
.banner .inner {
    padding-top:32px;
    display:flex;
    flex-direction:column;
    row-gap:80px;
    align-items:center;
    justify-content:space-between;
    padding-bottom:64px;
    height:auto;
    min-height:0;
}
.meet-britt-content img {max-width:100%}
.book-now {width:180px;height:180px;}
.book-now img {max-width:100%;}
.logo {width:180px}
    h1 {font-size:46px;}
    h2 {font-size:36px;line-height:110%;}
    h3 {font-size:28px;}
    p {font-size:18px;}
    .vagaro-container {margin-top:32px;padding:0;}
    .contact-link {font-size:14px;}
    .certification {font-size:16px;}
    .certifications {width:330px;}
    .meet-britt-content {margin-top:64px}
    .services {margin-top:100px;padding-top:28px;}
    .contact-info {
align-items:center;
}
.book-now .arrow {
    width:50px;
    
}
.intro {
    padding-bottom:40px;
    padding-top:32px;
}
}


