/* Burly House Website Style Sheet */
/* Authored by, Marc Oldham */

/* Reset some default styling */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --color-aqua: #00C6E0;
    --color-red: #F2385A;
    --color-navy: #032048;
    --color-midnight-indigo: #110643;
    --color-purple: #5C0F35;
    --color-light-aqua: #bff9fb;
    --color-body: #191919;
    --color-light-grey: #F7F9FA;
    --color-grey: #e3e3e3;
    --color-deep-aqua: #034A5C;
    --color-dark-aqua: #022B3D;
    --color-wine: #8A2131;
}

.wine {
    color: var(--color-wine);
}
.purple {
    color: var(--color-purple);
}
.deep-aqua {
    color: var(--color-deep-aqua);
}
.light-aqua {
    color: var(--color-light-aqua);
}

@font-face {
    font-family: "InterTight";
    src:url(/fonts/Inter_Tight/InterTight-VariableFont_wght.ttf);
}

/* Body and HTML */
html, body {
    color: var(--color-body);
    height: 100%;
    font-family: "InterTight", Arial, sans-serif;
}

a, a:visited {
    color: var(--color-deep-aqua);
    transition: color 0.3s ease;
    text-decoration: none;
}
a:hover {
    color: var(--color-purple);
    text-decoration: underline;
}

h1 {
    font-size: 2.825em;
    line-height: 1.275em;
    padding-bottom: 0.325em;
}

h2 {
    font-size: 1.925em;
    line-height: 1.325em;
    padding-bottom: 0.325em;
}

h3 {
    font-size: 1.525em;
    font-weight: 600;    
    line-height: 1.375em;
    padding-bottom: 0.325em;
}

h4 {
    font-size: 1.325em;
    line-height: 1.25em;
    padding-bottom: 0.325em;
}

p {
    font-size: 1.185em;
    line-height: 1.625em;
    padding: 0 0 1.325em;
}

p.intro {
    font-size: 1.325em;
    padding-bottom: 0.625rem;
}

strong, b {
    font-weight: 600;
}

.body-color {
    color: var(--color-body);
}

ul#bullet-list {
    list-style-type: none;
    margin-top: 24px;
    margin-bottom: 32px;
    margin-left: 16px;
}

ul#bullet-list li {
    font-size: 1.125em;
    line-height: 1.625em;
    margin-bottom: 12px;    
    margin-left: 12px;
}
ul#bullet-list li:before {
    color: var(--color-aqua);
    content: "\0276F";
    margin-left: -24px;
    padding-right: 12px;    
}

ul#bullet-list.large li {
    font-size: 1.25em;
    line-height: 1.625em;
    padding-right: 72px;
}

.button-outline-ko,
.button-outline-ko:visited {
    padding: 0.625rem 1.125rem;
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    border: 1.5px solid #fff;
    border-radius: 3px;
    text-decoration: none;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: all 0.3s ease;
    width: max-content;
} 
.button-outline-ko:hover {
    background-color: var(--color-light-aqua); 
    color: #fff;
    text-decoration: none;
}

.button-wrap {
    display: flex;
}
.button-wrap .button-line {
    margin-right: 24px;
}

.button-line,
.button-line:visited {
    padding: 0.525rem 0.525rem;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--color-body);
    border-bottom: 2px solid var(--color-aqua);
    letter-spacing: 0.03em;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    width: max-content;
} 

.button-line::after {
    color: var(--color-body);
    content: "\2192"; 
    font-size: 18px;
    margin-left: 8px; 
    transition: all 0.3s ease;
}
.button-line:hover::after {
    color: var(--color-aqua);
    margin-left: 12px; 

}
.button-line:hover {
    color: var(--color-body);
    border-bottom: 2px solid var(--color-purple);
    text-decoration: none;
}

.button-line-ko,
.button-line-ko:visited {
    color: #fff;
    padding: 0.625rem 0.825rem;
    transition: all 0.3s ease;
}
.button-line-ko:hover {
    color: var(--color-light-aqua);
    border-bottom: 2px solid var(--color-light-aqua);
}

.button-purple,
.button-purple:visited {
    padding: 0.625rem 1.325rem;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #fff;
    background-color: var(--color-purple); 
    border: none;
    border-radius: 3px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 0 auto;
}
.button-purple:hover {
    background-color: var(--color-deep-aqua); 
    color: #fff;
}


/* Contact Page Specific Disabled Button */
.header .top-wrapper .header-wrapper .nav-links li.cta-button.mode-selected a, 
.header .top-wrapper .header-wrapper .nav-links li.cta-button.mode-selected a:hover {
    color: var(--color-body);
    background-color: var(--color-grey);
    border: 1px solid var(--color-grey);
}


.content-wrapper {
    max-width: 1140px;
    margin: 0 auto; 
    padding: 0 32px;
}
.just-left {
    justify-content: left;
}
.just-center {
    justify-content: center;
}
.just-right {
    justify-content: right;
    
}

.max-940 {
    max-width: 940px;
    width: -webkit-fill-available;
}
.max-860 {
    max-width: 860px;
    width: -webkit-fill-available;
}
.max-740 {
    max-width: 740px;
    width: -webkit-fill-available;
}

/* Forms */

form {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.form-group {
    display: flex;
    flex-direction: column;
    width: 100%;
}

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

.form-row {
    display: flex;
    gap: 15px;
    width: 100%;
}

.form-row .form-group {
    flex: 1; 
}

.form-row .form-button {
    flex: 1; 
}

label {
    font-weight: 600;
    margin-bottom: 16px;
}

input, textarea {
    margin-bottom: 16px;
    padding: 10px;
    font-family: 'InterTight';
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 4px;
    width: 100%;
}

textarea {
    resize: vertical;
    min-height: 240px;
}

form span {
    color: var(--color-red);
}

.required {
    font-size: 0.825em;
    margin-top: 24px;
    padding-bottom: 0;
    text-align: center;
}
.required span {
    color: var(--color-red);
}

.multi-select-container {
    margin-bottom: 20px;
}

.multi-select-label {
    font-weight: 600;
    letter-spacing: 0.02em;
    margin-bottom: 16px;
    display: block;
}

.multi-select-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.multi-select-buttons label {
    padding: 10px 20px;
    font-size: 16px;
    border: 1px solid var(--color-purple);
    background-color: #FFFFFF;
    border-radius: 3px;
    font-weight: 500;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s, color 0.3s;
}

.multi-select-buttons label.active {
    background-color: var(--color-purple);
    color: white;
}

.multi-select-buttons label:hover {
    background-color: var(--color-midnight-indigo);
    color: white;
}

.multi-select-buttons input {
    display: none; /* Hide the checkbox inputs */
}


/* Responsive 960px max */
@media (max-width: 960px) {
    h1 {
        font-size: 2.625em;
        line-height: 1.275em;
    }
    h2 {
        font-size: 1.925em;
    }
    ul#bullet-list.large li {
        padding-right: 0px;
    }    
    .form-row {
        flex-direction: column;
    }
}

/* Responsive 768px max */
@media (max-width: 768px) {
    .content-wrapper {
        padding: 0 56px;
    }
    .multi-select-container {
        width: 100%;
        display: flex;
        flex-direction: column;        
    }
    .multi-select-buttons {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 8px;
    }        
}

/* Responsive 540px max */
@media (max-width: 540px) {
    h1 {
        font-size: 2.25em;
    }
    h2 {
        font-size: 1.725em;
    }
    h3 {
        font-size: 1.425em;    
        
    }    
    .content-wrapper {
        padding: 0 32px; 
    } 
}


.app-head {
    width: 85%;
    margin: 0.33em auto 0.99em auto;
}

.app-head #app-err {
    padding: 24px 16px;
    font-family: sans-serif;
    border: 1px solid var(--color-red);
    border-radius: 12px;
    background-color: var(--color-light-grey);
    
    margin: 0 auto;
    max-width: 740px;
    width: auto;
}

.app-head #app-err ul {
    list-style-type: none;
    margin: 0 0 0 36px;
}

.app-head #app-err ul li {
    font-size: 1.185em;
    line-height: 1.475em;
    padding: 6px 0;
    margin-left: 12px;    
}

.app-head #app-err ul li:before {
    color: var(--color-red);
    content: "\2794";
    margin-left: -36px;
    padding-right: 18px;
}

.app-head {
    width: 85%;
    margin: 0.33em auto 0.99em auto;
}

.app-head #app-msg {
    padding: 24px 16px;
    font-family: sans-serif;
    border: 1px solid var(--color-teal);
    border-radius: 12px;
    background-color: var(--color-light-grey);
    margin: 0 auto;
    max-width: 740px;
    width: auto;
}

.app-head #app-msg ul {
    list-style-type: none;
    margin: 0 0 0 36px;
}

.app-head #app-msg ul li {
    font-size: 1.185em;
    line-height: 1.475em;
    padding: 6px 0;
    margin-left: 12px;
    
}

.app-head #app-msg ul li:before {
    color: var(--color-teal);
    content: "\2794";
    margin-left: -36px;
    padding-right: 18px;
}