/*
Theme Name: ThreeSixty
Theme URI: 
Author: Krzysiek Dróżdż (WPmagus.pl)
Author URI: https://wpmagus.pl/
Description: 
Version: 2.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: 
Text Domain: threesixty
*/



/* Style guide
 * ======================================== */

:root {
    --color-orange: #ee4009;
    --color-orange-dark: #de3702;
    --color-orange-80: #F1663A;
    --color-orange-60: #F58C6B;
    --color-orange-40: #F8B39D;
    --color-orange-20: #FCD9CE;
    --color-orange-10: #FDECE6;
    --color-orange-05: #FEF5F3;
    --color-indigo: #241c38;
    --color-indigo-light: #3B3056;
    --color-indigo-100: #2b233e;
    --color-indigo-80: #504960;
    --color-indigo-60: #7C7788;
    --color-indigo-40: #A7A4AF;
    --color-indigo-20: #D3D2D7;
    --color-indigo-10: #E9E8EB;
    --color-indigo-05: #F4F4F5;
    --color-yellow: #FBB03B;
    --color-cyan: #09C5EE;
    --color-violet: #7918F3;
    --color-green: #007D57;
    --color-red: #9E1F3F;
    --color-white: #fff;
    --color-grey: var(--color-indigo-40);
    --color-black: #000;

    --color-base-text: var(--color-indigo-60);
    --color-content-bg: var(--color-white);
    --color-html-bg: var(--color-white);

    --font-1: normal 700 4rem/1.2 'Poppins', sans-serif;
    --font-2: normal 700 2.375rem/1.2 'Poppins', sans-serif;
    --font-3: normal 700 1.75rem/1.2 'Poppins', sans-serif;
    --font-4: normal 700 1.25rem/1.2 'Poppins', sans-serif;
    --font-5: normal 700 1rem/1.2 'Poppins', sans-serif;
    --font-6: italic 700 1.25rem/1.2 'Poppins', sans-serif;
    --font-base: normal 400 1.125rem/1.6 'Poppins', sans-serif;
    --font-squeezed: normal 400 1.125rem/1.2 'Poppins', sans-serif;
    --font-featured: normal 400 1.375rem/1.2 'Poppins', sans-serif;
    --font-nav: normal 600 1rem/1.2 'Poppins', sans-serif;
    --font-subtitle: normal 700 1rem/1.1 'Poppins', sans-serif;
    --font-meta: normal 400 0.875rem/1.6 'Poppins', sans-serif;

    --space-huge: 7.5rem;
    --space-xlarge: 5rem;
    --space-large: 3.375rem;
    --space-0: 2.5rem;
    --space-1: 2.25rem;
    --space-2: 1.875rem;
    --space-3: 1.5rem;
    --space-4: 1.25rem;
    --space-5: 0.875rem;
    --space-6: 0.625rem;
    --space-7: 0.25rem;
    --space-base: var(--space-2);

    --space-container-padding: var(--space-0);

    --border-radius-base: 1.5rem;
    --border-radius-small: 0.375rem;
    --border-radius-asymetric-base: 0.9375rem 2.5rem 0.9375rem 0.9375rem;
    --border-radius-asymetric-large: 1.5rem 4.0625rem;
    --border-radius-asymetric-small: 0.75rem 1.5rem 0.75rem 0.75rem;;

    --shadow-base: 0 .25rem 1.1875rem 0 rgba(0, 0, 0, 0.11);

    --container-width: 1170px;
    --container-max-width: calc(100vw - 2*var(--space-container-padding));

    --content-wide-width: 1170px;
    --content-width: 730px;
}

@media (max-width: 780px) {
    :root {
        --font-1: normal 700 2.5rem/1.3 'Poppins', sans-serif;
        --font-2: normal 700 1.875rem/1.3 'Poppins', sans-serif;
        --font-3: normal 700 1.625rem/1.3 'Poppins', sans-serif;
        --font-4: normal 700 1.25rem/1.2 'Poppins', sans-serif;
        --font-5: normal 700 1rem/1.2 'Poppins', sans-serif;
        --font-6: italic 700 1.125rem/1.2 'Poppins', sans-serif;
        --font-base: normal 400 1.125rem/1.5 'Poppins', sans-serif;
        --font-squeezed: normal 400 1.125rem/1.2 'Poppins', sans-serif;
        --font-featured: normal 400 1.25rem/1.3 'Poppins', sans-serif;
        --font-subtitle: normal 700 1rem/1.1 'Poppins', sans-serif;
        --font-meta: normal 400 0.875rem/1.6 'Poppins', sans-serif;

        --space-huge: 5rem;
        --space-xlarge: 3.375rem;
        --space-large: 2.5rem;
        --space-0: 2.25rem;
        --space-1: 1.875rem;
        --space-2: 1.5rem;
        --space-3: 1.25rem;
        --space-4: 0.875rem;
        --space-5: 0.625rem;
        --space-6: 0.25rem;
        --space-7: 0.125rem;
        --space-base: var(--space-2);
    }
}

@media (max-width: 480px) {
    :root {
        --space-container-padding: var(--space-base);
    }
}



/* html5doctor.com Reset v1.6.1 - http://cssreset.com */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1rem 0;padding:0}input,select{vertical-align:middle}

html {box-sizing: border-box;}
*, *:before, *:after {box-sizing: inherit;}

a {text-decoration: underline;}
a:hover {text-decoration: none;}

p, ul, ol, table, blockquote, address, dl {margin: var(--space-base) 0;}
h1, h2, h3, h4, h5, h6 {margin: var(--space-0) 0 var(--space-base) 0;}

::-webkit-input-placeholder {color: #939393;}
:-moz-placeholder {color: #939393;}
::-moz-placeholder {color: #939393; opacity: 1;}
:-ms-input-placeholder {color: #939393;}

img {max-width: 100%; height: auto;}

img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"] {height: auto;}

embed,
iframe,
object,
video {margin: var(--space-base) 0; max-width: 100%;}

.grecaptcha-logo iframe {margin: 0;}

p > embed,
p > iframe,
p > object,
span > embed,
span > iframe,
span > object {margin-bottom: 0;}

input[type="submit"],
button,
select {-webkit-appearance: none;}

address {font-style: normal;}

main, article, section, header, footer, nav, aside {display: block;}



/* Tools
 * ======================================== */

#page-wrap {overflow-x: hidden; width: 100%; position: relative;}

.container {width: var(--container-width); max-width: var(--container-max-width); margin: 0 auto;}
.container:after {content: ''; display: block; clear: both;}

.screen-reader-text {position: absolute; width: 0; height: 0; overflow: hidden;}

.video-container {width: 100%; height: 0; padding-bottom: 56.25%; position: relative;}
.video-container iframe {width: 100%; height: 100%; position: absolute; left: 0; top: 0; right: 0; bottom: 0;}
.video-container .video-thumbnail {position: relative;}
.video-container .video-thumbnail:after {content: ''; width: 7.375rem; height: 7.375rem; border-radius: 100%; position: absolute; left: 50%; top: 50%; background: rgba(0, 0, 0, .25) url('assets/images/button-play.png') no-repeat 50% 50%; background-size: contain;
    -webkit-transform: translate(-50%, -50%);-moz-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);-o-transform: translate(-50%, -50%);transform: translate(-50%, -50%);
}

.icon a {text-decoration: none;}
.icon a span {display: none;}
.icon a:before {content: ''; font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";}
.icon--facebook a:before {content: '\f39e';}
.icon--youtube a:before {content: '\f167';}
.icon--twitter a:before {content: '\f099';}
.icon--tumblr a:before {content: '\f174';}
.icon--linkedin a:before {content: '\f0e1';}
.icon--google-plus a:before {content: '\f0d4';}
.icon--vimeo a:before {content: '\f194';}
.icon--pinterest a:before {content: '\f0d3';}
.icon--instagram a:before {content: '\f16d';}
.icon--rss a:before {content: '\f143';}
.icon--search a:before {content: '\f002'; font-weight: 600;}
.icon--phone a:before {content: '\f879'; font-weight: bold;}
.icon--mail a:before {content: '\f0e0';}

.skip-links {list-style: none; display: inline-block; position: absolute;}
.skip-link {position: fixed; left: -100vw; z-index: 9999; min-width: 20rem; top: 0; padding: var(--space-3) var(--space-base); text-decoration: none; background: var(--color-base-text); color: var(--color-content-bg);}
.skip-link:hover,
.skip-link:focus,
.skip-link:active {left: 0;}


#header .nav .nav-toggle {display: none; z-inedx: 10001; cursor: pointer; background: transparent; padding: 0; display: block; overflow: hidden; font-size: 0; text-indent: -9999px; border-radius: 0; border: none;}
#header .nav .nav-toggle span {top: 50%; display: block; position: absolute; left: 0; right: 0;
    -webkit-transition: background 0 0.3s; -moz-transition: background 0 0.3s; -ms-transition: background 0 0.3s; -o-transition: background 0 0.3s; transition: background 0 0.3s;
}
#header .nav .nav-toggle span:before,
#header .nav .nav-toggle span:after {position: absolute; display: block; left: 0; width: 100%; content: '';
    -webkit-transition-duration: 0.3s, 0.3s; -moz-transition-duration: 0.3s, 0.3s; -ms-transition-duration: 0.3s, 0.3s; -o-transition-duration: 0.3s, 0.3s; transition-duration: 0.3s, 0.3s;
    -webkit-transition-delay: 0.3s, 0; -moz-transition-delay: 0.3s, 0; -ms-transition-delay: 0.3s, 0; -o-transition-delay: 0.3s, 0; transition-delay: 0.3s, 0;
}
#header .nav .nav-toggle span:before {
    -webkit-transition-property: top, -webkit-transform; -moz-transition-property: top, -moz-transform; -ms-transition-property: top, -ms-transform; -o-transition-property: top, -o-transform; transition-property: top, transform;
}
#header .nav .nav-toggle span:after {
    -webkit-transition-property: bottom, -webkit-transform; -moz-transition-property: bottom, -moz-transform; -ms-transition-property: bottom, -ms-transform; -o-transition-property: bottom, -o-transform; transition-property: bottom, transform;
}
#header .nav.on .nav-toggle {}
#header .nav.on .nav-toggle span {background: none;}
#header .nav.on .nav-toggle span:before {top: 0;
    -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg);
}
#header .nav.on .nav-toggle span:after {bottom: 0;
    -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg);
}
#header .nav.on .nav-toggle span:before,
#header .nav.on .nav-toggle span:after {
    -webkit-transition-delay: 0, 0.3s; -moz-transition-delay: 0, 0.3s; -ms-transition-delay: 0, 0.3s; -o-transition-delay: 0, 0.3s; transition-delay: 0, 0.3s;
}


/* Global
 * ======================================== */

html {font-size: 16px; font-family: 'Red Hat Display', sans-serif; background: var(--color-bg);}
body {font: var(--font-base); color: var(--color-base-text);}

ul,
ol {margin-left: var(--space-base);}

a {color: var(--color-base-text); text-decoration: underline;
    -webkit-transition: all .3s; -moz-transition: all .3s; -ms-transition: all .3s; -o-transition: all .3s; transition: all .3s;
}
a:hover {text-decoration: none; color: var(--color-orange);}

h1,
h2,
h3,
h4,
h5,
h6 {color: var(--color-indigo-100);}
h1 {font: var(--font-1);}
h2 {font: var(--font-2);}
h3 {font: var(--font-3);}
h4 {font: var(--font-4);}
h5 {font: var(--font-5);}
h6 {font: var(--font-6);}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {text-decoration: none; color: inherit;}

blockquote {font-style: italic; position: relative;}

.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p {font: var(--font-3);}

table {border-collapse: collapse;}
table th,
table td {padding: var(--space-2); text-align: left;}
table thead th,
table thead td {background: rgba(var(--color-highlight-1-rgb), .2); border: 1px solid var(--color-grey);}
table tbody th,
table tbody td {border: 1px solid var(--color-grey);}

form {}
input,
button,
select,
textarea {font: var(--font-base); padding: var(--space-5) var(--space-base); font: var(--font-5); font-weight: 400; max-width: 100%; width: 100%; border: 2px solid var(--color-indigo-10); border-radius: var(--border-radius-small);}

input[type="radio"],
input[type="checkbox"] {width: auto; display: inline-block; vertical-align: baseline;}

form .fields {display: grid; grid-template-columns: 1fr; grid-column-gap: var(--space-0); grid-row-gap: var(--space-1);}
form .field {margin: var(--space-base) 0; display: block;}
form .field .label {display: block; font: var(--font-5); text-transform: uppercase; color: var(--color-indigo-100); margin: var(--space-6) 0;}
form .field .req {text-indent: -9999px; color: var(--color-orange); position: relative; display: inline-block;}
form .field .req:before {content: '*'; text-indent: 0; position: absolute; left: 0;}

button,
input[type="submit"],
.button,
.wp-block-button__link {min-width: min(100%, 20rem); margin-right: var(--space-base); width: fit-content; background: var(--color-orange); color: var(--color-white); cursor: pointer; font: var(--font-5); text-transform: uppercase; display: inline-block; padding: var(--space-5) var(--space-large); text-align: center; border: 0; border-radius: var(--border-radius-small); text-decoration: none; overflow: hidden; text-overflow: ellipsis; box-shadow: 0 .25rem 1rem 0 rgba(238, 64, 9, 0.30);
    -webkit-transition: all .3s, color .3s; -moz-transition: all .3s, color .3s; -ms-transition: all .3s, color .3s; -o-transition: all .3s, color .3s; transition: all .3s, color .3s;
}

button:hover,
input[type="submit"]:hover,
.button:hover,
.wp-block-button__link:hover {opacity: 1; color: var(--color-white); background: var(--color-orange-80);}

button.button--alt,
input[type="submit"].button--alt,
.button.button--alt,
.wp-block-button__link.has-threesixty-indigo-light-background-color,
.wp-block-button__link.button--alt {background: var(--color-indigo-80); box-shadow: 0 .25rem 1rem 0 rgba(80, 73, 96, 0.30);}

button.button--alt:hover,
input[type="submit"].button--alt:hover,
.button.button--alt:hover,
.wp-block-button__link.has-threesixty-indigo-light-background-color:hover,
.wp-block-button__link.button--alt:hover {background: var(--color-indigo-60);}


button:disabled,
input[type="submit"]:disabled,
.button:disabled,
.wp-block-button__link:disabled {color: var(--color-indigo-40); background: var(--color-indigo-10); box-shadow: none;}


.thumbnail,
.video-thumbnail {display: block; background: transparent no-repeat 50% 50%; background-size: cover; overflow: hidden;}
.thumbnail img,
.video-thumbnail img {display: block; width: 100%;
    -webkit-transition: opacity .3s; -moz-transition: opacity .3s; -ms-transition: opacity .3s; -o-transition: opacity .3s; transition: opacity .3s;
}
.thumbnail:hover {opacity: 1;}
.thumbnail:hover img {opacity: .75;}



.meta {font: var(--font-meta); line-height: var(--line-height-meta); color: var(--color-grey); margin: var(--space-2) 0;}
.meta a {color: var(--color-grey); text-decoration: none;}
.meta > * {margin-right: var(--space-3);}



.wpcf7 {position: relative;}
.wpcf7 br {display: none;}
.wpcf7 form .wpcf7-not-valid-tip {position: absolute; top: -16px; right: -10px; font-size: 80%; color: var(--color-white); background: var(--color-red); display: block; padding: 4px 6px;}
.wpcf7 form .wpcf7-response-output {display: block; position: absolute; top: 100px; left: 10%; right: 10%; padding: var(--space-base); border: 0; text-align: center; font-size: 18px; color: var(--color-content-bg); font-weight: bold; box-shadow: var(--space-3) var(--space-3) var(--space-3) 0 rgba(0, 0, 0, .2); z-index: 101;}
.wpcf7 form .wpcf7-response-output.wpcf7-display-none {display: none;}
.wpcf7 form .wpcf7-response-output:after {content: 'x'; position: absolute; top: 10px; right: 12px; color: var(--color-bg); cursor: pointer;}

.wpcf7 form.sent .wpcf7-response-output {background: var(--color-green);}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {border-color: var(--color-red); background: var(--color-red);}



.wp-pagenavi {text-align: center; display: block; width: 100%; margin: var(--space-0) 0;}
.wp-pagenavi .pages {display: none;}
.wp-pagenavi a,
.wp-pagenavi span {display: inline-block; min-width: 2rem; padding: var(--space-5) var(--space-5); color: var(--color-grey); border: 0;}
.wp-pagenavi a:hover,
.wp-pagenavi .current {color: var(--color-base-text); font-weight: bold;}


.slick-slider {}
.slick-slider .slick-arrow {position: absolute; bottom: -.75rem; z-index: 99; border: 0; text-indent: -9999px; padding: 0; margin: 0; box-shadow: none; min-width: 0; width: 3rem; height: 3rem; line-height: 3rem; background: transparent;}
.slick-slider .slick-arrow:before {position: absolute; color: var(--color-base-text); left: 0; top: 0; right: 0; bottom: 0; text-align: center; font-family: "Font Awesome 5 Free"; font-weight: bold; font-size: 2rem; text-indent: 0; opacity: .5;
    -webkit-transition: opacity .3s; -o-transition: opacity .3s; transition: opacity .3s;
}
.slick-slider:hover .slick-arrow:before {opacity: 1;}
.slick-slider .slick-prev {left: var(--space-base);}
.slick-slider .slick-prev:before {content: '\f0a8';}
.slick-slider .slick-next {right: var(--space-base);}
.slick-slider .slick-next:before {content: '\f0a9';}
.slick-dots {list-style: none; margin-left: 0; text-align: center;}
.slick-dots li {margin: 0 var(--space-6); display: inline-block; vertical-align: middle;}
.slick-dots button {display: block; margin: 0; min-width: 0; box-shadow: none; width: 1.125rem; height: 1.125rem; border: 4px solid var(--color-indigo-10); text-indent: -9999px; border-radius: 100%; padding: 0; background: transparent;}
.slick-dots .slick-active {}
.slick-dots button:hover,
.slick-dots .slick-active button {border-color: var(--color-orange);}



/* Articles */


/* Lists */
ul.list,
ol.list,
.list > .list-items {list-style: none; display: grid; grid-gap: var(--space-2); margin: var(--space-base) 0;}
.list .item {}
.list .wp-pagenavi {margin-left: var(--space-0);}


ul.list--logos {grid-template-columns: repeat(4, minmax(0, 1fr)); grid-gap: var(--space-large) var(--space-xlarge);}
.list--logos .item {text-align: center; background: var(--color-indigo-05); padding: var(--space-3) var(--space-1); border-radius: var(--border-radius-small);}
.list--logos .item img {object-fit: contain; object-position: 50% 50%; aspect-ratio: 180 / 42; width: 100%; height: 100%;}

@media (max-width: 960px) {
    ul.list--logos {grid-gap: var(--space-base);}
}
@media (max-width: 780px) {
    ul.list--logos {grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: var(--space-base) var(--space-large);}
}
@media (max-width: 480px) {
    ul.list--logos {grid-gap: var(--space-base);}
}


ol.list--toc {display: block;}
ol.list--toc li {margin: var(--space-5) 0;}


.list--steps {grid-template-columns: repeat(4, minmax(0, 1fr)); counter-reset: step-counter;}
.list--steps .item {padding: var(--space-1) var(--space-2); counter-increment: step-counter; color: var(--color-indigo-100); border-radius: var(--border-radius-base); box-shadow: var(--shadow-base);}
.list--steps .item:before {content: '0'counter(step-counter); font: var(--font-2);}
.list--steps .title {font: var(--font-4); margin: 0; color: inherit;}
.list--steps .item:nth-child(4n+1) {background: var(--color-yellow);}
.list--steps .item:nth-child(4n+2) {background: var(--color-orange); color: var(--color-white);}
.list--steps .item:nth-child(4n+3) {background: var(--color-violet); color: var(--color-white);}
.list--steps .item:nth-child(4n) {background: var(--color-cyan);}

@media (max-width: 960px) {
    .list--steps {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 480px) {
    .list--steps {grid-template-columns: repeat(1, minmax(0, 1fr));}
}


.list--faq {}
.list--faq .item {border-radius: var(--border-radius-small); overflow: hidden;}
.list--faq .item .question {font: var(--font-4); margin: 0; position: relative;}
.list--faq .item .question a {display: block; padding: var(--space-3); background: var(--color-indigo-05); border-radius: var(--border-radius-small);}
.list--faq .item .question a:after {content: '\f105'; font-family: "Font Awesome 5 Free"; position: absolute; right: var(--space-3); top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.list--faq .item .answer {max-height: 0; overflow: hidden; padding: 0 var(--space-3); border: 1px solid var(--color-indigo-05); border-bottom-left-radius: var(--border-radius-small);  border-bottom-right-radius: var(--border-radius-small);
    -webkit-transition: max-height.3s;
    -moz-transition: max-height.3s;
    -ms-transition: max-height.3s;
    -o-transition: max-height.3s;
    transition: max-height.3s;
}
.list--faq .item .answer > * {max-width: var(--content-width);}
.list--faq .item.on .answer {max-height: 300px;}
.list--faq .item.on .question a:after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -moz-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    -o-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}



.list--areas {grid-template-columns: repeat(4, minmax(0, 1fr));}
.list--areas .item {padding: var(--space-1) var(--space-2); color: var(--color-indigo-100); box-shadow: var(--shadow-base); text-align: center; display: flex; flex-direction: column; gap: var(--space-base); border-radius: var(--border-radius-small);}
.list--areas .item .icon {display: block; position: relative; margin: 0 auto; padding: 1.125rem; border-radius: 50%; border: 10px solid var(--color-indigo-20);}
.list--areas .item .icon:before {content: ''; position: absolute; left: -10px; top: -10px; right: -10px; bottom: -10px; border-radius: 50%; border: 10px solid transparent; border-right: 10px solid var(--color-orange);}
.list--areas .item .icon img {display: block; margin: 0 auto; width: 1.75rem; height: 1.75rem; aspect-ratio: 1 / 1; object-fit: contain; object-position: 50% 50%;}
.list--areas .item .title {font: var(--font-4); margin: 0;}
.list--areas .item:nth-child(4n+1) .icon:before {
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.list--areas .item:nth-child(4n+2) .icon:before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.list--areas .item:nth-child(4n+3) .icon:before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(445deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.list--areas .item:nth-child(4n) .icon:before {
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}
@media (max-width: 960px) {
    .list--areas {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 480px) {
    .list--areas {grid-template-columns: repeat(1, minmax(0, 1fr));}
}


.list--branches {}
.list--branches .list-items {grid-template-columns: repeat(2, minmax(0, 1fr));}
.list--branches .item {display: flex; flex-direction: column; padding: var(--space-1) var(--space-2); border-radius: var(--border-radius-base); border: 3px solid var(--color-indigo-05); text-align: center;}
.list--branches .item img {display: block; margin: 0 auto;}
.list--branches .item .title {font: var(--font-3); margin-bottom: 0;}
.list--branches .item p {margin-bottom: 0;}

@media (max-width: 780px) {
    .list--branches .list-items {grid-template-columns: repeat(1, minmax(0, 1fr));}
}



.list--team {}
.list--team .list-items {grid-gap: var(--space-0);}
.list--team .item {display: flex; gap: var(--space-base); align-items: center;}
.list--team .item .photo {border-radius: var(--border-radius-base); overflow: hidden; flex: 0 0 18.125rem;}
.list--team .item .photo img {display: block;}
.list--team .item .name {font: var(--font-3); margin: 0;}
.list--team .item .title {display: block; font: var(--font-5); text-transform: uppercase; color: var(--color-orange); margin: var(--space-5) 0 0 0;}
.list--team .item .bio {}
.list--team .item .bio > :last-child {margin-bottom: 0;}
.list--team .item:nth-child(2n) {flex-direction: row-reverse;}


.list--testimonial {width: calc(var(--content-width) + 2 * var(--space-base)); max-width: var(--container-max-width); margin: calc(-1 * var(--space-base)) calc(-1 * var(--space-base)) var(--space-base);}
.list--testimonial .item {padding: 0 var(--space-xlarge); margin: var(--space-base); border-radius: var(--border-radius-base); box-shadow: var(--shadow-base); text-align: center;}
.list--testimonial .item:before,
.list--testimonial .item:after {font: var(--font-1); color: var(--color-orange); line-height: 1;}
.list--testimonial .item:before {content: '“'; display: block; margin: var(--space-2) 0 calc(-1 * var(--space-2)) 0;}
.list--testimonial .item:after {content: '”'; display: block; margin: var(--space-2) 0 0 0;}
.list--testimonial .item .content {color: var(--color-indigo-100);}
.list--testimonial .item cite {color: var(--color-orange); font-weight: 500; font-style: normal;}
.list--testimonial .item cite:has(.company) .name:after {content: ', ';}
.list--testimonial .item cite .www {display: block; font: var(--font-meta); color: var(--color-base-text); text-decoration: none;}
.list--testimonial .slick-dots {margin-top: 0;}


.list--post {width: var(--content-wide-width); max-width: var(--container-max-width); position: relative; left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}
.list--post .list-items {grid-template-columns: repeat(3, minmax(0, 1fr)); grid-row-gap: var(--space-large);}
.list--post .meta {margin: var(--space-0) 0 var(--space-6) 0;}
.list--post .title {font: var(--font-3); margin: var(--space-6) 0;}
.list--post .thumbnail {border-radius: var(--border-radius-small);  background: var(--color-indigo-05);}
.list--post .thumbnail img {aspect-ratio: 16 / 9; object-fit: cover;}
.list--post .excerpt p {margin-top: 0;}
.list--post .excerpt p:last-child {margin-bottom: 0;}

@media (max-width: 780px) {
    .list--post .list-items {grid-template-columns: repeat(1, minmax(0, 1fr));}
}


/* Blocks */
/* Gutenberg Blocks */


.is-style-has-shadow {padding: var(--space-1) var(--space-2); box-shadow: var(--shadow-base);}

.is-style-overtitle {color: var(--color-orange); font: var(--font-subtitle); text-transform: uppercase; margin-bottom: var(--space-5);}
.is-style-overtitle + :is(h1, h2, h3, h4, h5, h6) {
    margin-top: 0;
}

.is-layout-flex {display: flex;}


.wp-block-embed,
.wp-block-columns {margin: var(--space-2) 0;}


.wp-block-quote {color: var(--color-indigo-100); position: relative;}
.wp-block-quote:before {content: '“'; font-size: 12rem; color: var(--color-orange); line-height: 1; position: absolute; left: -.75rem; top: -2rem; opacity: .25;}
.wp-block-quote cite {color: var(--color-orange); font: var(--font-meta); font-weight: 500; margin-top: calc(-1 * var(--space-3));}
.wp-block-quote cite:before {content: '- '; color: var(--color-indigo-100);}
.wp-block-quote cite a {text-decoration: none; margin-left: var(--space-7); font-weight: normal;}

.wp-block-quote,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {}



.wp-block-buttons {margin: var(--space-base) 0; flex-wrap: wrap;}


.wp-block-group,
.threesixty-block {max-width: var(--container-max-width); margin-left: auto; margin-right: auto;}
.wp-block-columns .wp-block-group,
.wp-block-columns .threesixty-block {max-width: 100%;}


.wp-block-cover {padding: 0;}


.wp-block-media-text > .wp-block-media-text__media img {display: block;}
.wp-block-media-text > .wp-block-media-text__content {padding: 0 var(--space-base);}

@media (max-width: 600px) {
    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {padding: 0;}
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {padding-left: 0;}
.wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {padding-right: 0;}

.wp-block-media-text.alignfull {}
.wp-block-media-text.alignfull.has-media-on-the-left {grid-template-columns: 35% 1fr;}
.wp-block-media-text.alignfull.has-media-on-the-right {grid-template-columns: 1fr 35%;}
.wp-block-media-text.alignfull .wp-block-media-text__content {padding-left: calc(50vw - min(var(--content-wide-width), var(--container-max-width)) / 2 ); flex-basis: 60%;}
.wp-block-media-text.alignfull .wp-block-media-text__media {}
.wp-block-media-text.alignfull.has-media-on-the-left .wp-block-media-text__content {padding-right: calc(50vw - min(var(--content-wide-width), var(--container-max-width)) / 2 ); flex-basis: 60%;}
.wp-block-media-text.alignfull.has-media-on-the-left .wp-block-media-text__media {}

@media (max-width: 960px) {
    .wp-block-media-text.alignfull {grid-template-columns: 100% !important; width: var(--container-max-width);}
    .wp-block-media-text.alignfull.is-stacked-on-mobile > .wp-block-media-text__media {grid-column: 1; grid-row: 1; padding: 0;}
    .wp-block-media-text.alignfull.is-stacked-on-mobile > .wp-block-media-text__content {grid-column: 1; grid-row: 2; padding: 0;}

    .wp-block-media-text.alignfull.is-stacked-on-mobile.has-media-on-the-left > .wp-block-media-text__media {margin-left: calc(-1 * var(--space-container-padding));}
    .wp-block-media-text.alignfull.is-stacked-on-mobile.has-media-on-the-right > .wp-block-media-text__media {margin-right: calc(-1 * var(--space-container-padding));}
}

@media (max-width: 780px) {
    .wp-block-media-text {grid-template-columns: 100% !important; width: var(--container-max-width);}
    .wp-block-media-text.is-stacked-on-mobile > .wp-block-media-text__media {grid-column: 1; grid-row: 1; padding: 0;}
    .wp-block-media-text.is-stacked-on-mobile > .wp-block-media-text__content {grid-column: 1; grid-row: 2; padding: 0;}

    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-left > .wp-block-media-text__media {margin-left: calc(-1 * var(--space-container-padding));}
    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right > .wp-block-media-text__media {margin-right: calc(-1 * var(--space-container-padding));}
}



.wp-block-cover .wp-block-media-text {}
.wp-block-cover .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media img {margin-left: auto;}
.wp-block-cover .wp-block-media-text.has-media-on-the-left .wp-block-media-text__media img {margin-right: auto;}
.wp-block-cover .wp-block-media-text .wp-block-media-text__media img {max-height: 30vh; width: auto;}
.wp-block-cover .wp-block-media-text h2 {font: var(--font-1);}
.wp-block-cover .wp-block-media-text .wp-block-button__link {min-width: 14rem;}


.wp-block-preformatted {}
.wp-block-preformatted:has(code) {
    font-size: 13px;
    border-radius: .5rem;
    overflow: hidden;
}


.alignwide {width: var(--content-wide-width); max-width: var(--container-max-width); position: relative; left: 50%; margin-left: 0; margin-right: 0;
    -webkit-transform: translateX(-50%);-moz-transform: translateX(-50%);-ms-transform: translateX(-50%);-o-transform: translateX(-50%);transform: translateX(-50%);
}
.alignfull {width: 100vw; max-width: 100vw; position: relative; left: 50%;
    -webkit-transform: translateX(-50%);-moz-transform: translateX(-50%);-ms-transform: translateX(-50%);-o-transform: translateX(-50%);transform: translateX(-50%);
}
.alignfull > .threesixty-block__inner-container,
.alignfull > .wp-block__inner-container {width: var(--content-wide-width); max-width: var(--container-max-width); margin: 0 auto;}

.wp-block-group.has-background,
.threesixty-block.has-background {padding: var(--space-xlarge) 0; margin: var(--space-xlarge) 0;}

.wp-block-group.has-background.alignfull {width: 100vw; max-width: 100vw; padding-left: 0; padding-right: 0; z-index: 50;}
.wp-block-group.has-background.alignfull > .wp-block-group__inner-container {width: var(--container-width); max-width: var(--container-max-width); margin-left: auto; margin-right: auto;}

.section-content .container > .has-background:first-child {margin-top: calc(-1 * var(--space-0));}
.section-content .container > .has-background:last-child {margin-bottom: calc(-1 * var(--space-0));}
.has-background + .has-background {margin-top: calc(-1 * var(--space-0));}


.wp-block-cover:first-child,
.wp-block-group.has-background:first-child,
.threesixty-block.has-background:first-child {margin-top: 0;}

.wp-block-cover:last-child,
.wp-block-group.has-background:last-child,
.threesixty-block.has-background:last-child {margin-bottom: 0;}


.wp-block-cover.alignfull {width: 100vw; max-width: 100vw;}
.wp-block-cover.alignfull .wp-block-cover__inner-container {width: var(--content-wide-width); max-width: var(--container-max-width);}

.wp-block-table .has-fixed-layout {width: calc(100% - 1px);}

.wp-block-columns {gap: var(--space-0); margin: var(--space-base) 0;}
.wp-block-columns .wp-block-column {flex-basis: 0; flex-grow: 1;}
.wp-block-columns .wp-block-column[style^="flex-basis"] {}



.threesixty-block {margin: var(--space-xlarge) 0;}
.threesixty-block .block-header {}
.threesixty-block .block-overtitle {color: var(--color-orange); font: var(--font-subtitle); text-transform: uppercase; margin-bottom: var(--space-5);}
.threesixty-block .block-title {}
.threesixty-block .block-overtitle + .block-title {margin-top: 0;}


.threesixty-block-toc {padding: var(--space-1) var(--space-2); background: var(--color-indigo-05);}


.threesixty-block-cta-banner {border-radius: var(--border-radius-base); text-align: center; max-width: var(--container-max-width); padding: 0 var(--space-1);}
.threesixty-block-cta-banner .block-header {width: var(--content-width); max-width: 100%; margin: 0 auto;}
.threesixty-block-cta-banner .block-title {font: var(--font-1); margin: 0 0 var(--space-1) 0;}

.threesixty-block-cta-banner.dark .block-title {color: var(--color-white);}
.threesixty-block-cta-banner.dark .button {background: var(--color-white); margin-right: 0;}
.threesixty-block-cta-banner.has-threesixty-orange-background-color .button {color: var(--color-orange);}




.threesixty-block-steps {}
.threesixty-block-steps .threesixty-block__inner-container {display: flex; gap: var(--space-base); align-items: center;}
.threesixty-block-steps .threesixty-block__inner-container > * {flex: 1 0 0;}
.threesixty-block-steps .list--steps {grid-template-columns: repeat(2, minmax(0, 1fr));}

@media (max-width: 960px) {
    .threesixty-block-steps .threesixty-block__inner-container {display: block;}
}
@media (max-width: 480px) {
    .threesixty-block-steps .list--steps {grid-template-columns: repeat(1, minmax(0, 1fr));}
}



/* Sections */
.section {width: var(--content-width); max-width: var(--container-max-width); margin-left: auto; margin-right: auto;}
.section-header {}
.section-header .section-title {font: var(--font-1); text-align: center;}


.section .section-footer {background: var(--color-indigo-05); padding: var(--space-large) 0; position: relative; z-index: 1; margin: var(--space-large) 0;}
.section .section-footer:before {content: ''; position: absolute; left: 50%; top: 0; height: 100%; width: 100vw; background: inherit;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}


.section--post_single {}
.section--post_single .section-title {text-align: left;}


.has-threesixty-indigo-background-color h1,
.has-threesixty-indigo-background-color h2,
.has-threesixty-indigo-background-color h3,
.has-threesixty-indigo-background-color h4,
.has-threesixty-indigo-background-color h5,
.has-threesixty-indigo-background-color h6 {color: var(--color-white);}

.has-threesixty-indigo-background-color .wpcf7 {background: var(--color-indigo-80); padding: var(--space-4) var(--space-2);}
.has-threesixty-indigo-background-color .wpcf7 .label {color: var(--color-white);}
.has-threesixty-indigo-background-color .wpcf7 input[type="text"],
.has-threesixty-indigo-background-color .wpcf7 input[type="email"] {background: var(--color-indigo); color: var(--color-white); border: 0;}


/* Header
 * ======================================== */

#header {}
#header .container {position: relative; display: flex; justify-content: space-between;}
#header .container:after {content: none;}
#header .site-title {margin: var(--space-base) 0; padding: 0; max-width: calc(100% - 5rem);}
#header .site-title a {width: 11.6875rem; height: 3rem; line-height: 3rem; max-width: 100%; display: block; font: var(--font-1); text-decoration: none; background: transparent no-repeat left 50%; background-size: contain;}

#header .nav {padding: 0; right: 0; position: static;}
#header .nav .nav-toggle {position: absolute; min-width: 0; box-shadow: none; display: none; width: 2rem; height: 1.5rem; top: 2.625rem; right: 0; margin-right: 0;}
#header .nav .nav-toggle span {height: 2px; background: var(--color-base-text); left: .25rem;}
#header .nav .nav-toggle span:before,
#header .nav .nav-toggle span:after {background: var(--color-base-text); height: 2px; left: -.25rem}
#header .nav .nav-toggle span:before {top: -.55rem;}
#header .nav .nav-toggle span:after {bottom: -.55rem;}
@media (max-width: 1080px) {
    #header .nav .nav-toggle {display: block;}

    #header .nav .nav-container {background: var(--color-content-bg); padding: var(--space-0) var(--space-0); position: absolute; top: 100%; min-height: 100vh; right: calc(-1 * var(--space-container-padding)); z-index: 10000; width: 100vw;}
    #header .nav .nav-container {
        -webkit-transform: translateX(150%); -moz-transform: translateX(150%); -ms-transform: translateX(150%); -o-transform: translateX(150%); transform: translateX(150%);
        -webkit-transition: all .5s; -moz-transition: all .5s; -ms-transition: all .5s; -o-transition: all .5s; transition: all .5s;
    }
    #header .nav.on .nav-container {
        -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0);
    }
}

#header .nav {text-align: right;}
#header .nav a {text-decoration: none; display: block; font: var(--font-nav); color: var(--color-indigo-100);}
#header .nav a:hover {opacity: 1; color: var(--color-orange);}
#header .nav .nav-container > ul {line-height: 3rem;}
#header .nav ul li {display: inline-block; margin-left: var(--space-1); position: relative;}
#header .nav ul li a {}
#header .nav ul li.current-menu-item > a,
#header .nav ul li.current_page_parent > a,
#header .nav ul li.current-menu-ancestor > a {color: var(--color-orange);}
@media (max-width: 1080px) {
    #header .nav {text-align: left;}
    #header .nav a {font: var(--font-4);}
    #header .nav ul {text-align: center; display: block; margin: 0; border-bottom: 1px solid var(--color-indigo-05);}
    #header .nav ul li {display: block; margin: 0; border-top: 1px solid var(--color-indigo-05);}
    #header .nav ul li a {display: block; padding: var(--space-5) 0;}
}

#header .nav ul .sub-menu {display: none; text-align: left; min-width: 15rem; margin: 0; position: absolute; z-index: 1100; left: calc(-1 * var(--space-base)); background: var(--color-content-bg);}
#header .nav ul .sub-menu li {margin-left: 0;}
#header .nav ul .sub-menu a {padding: var(--space-5) var(--space-base);}
#header .nav ul li a:focus + .sub-menu,
#header .nav ul li:focus-within .sub-menu,
#header .nav ul li:hover .sub-menu {display: block;}
@media (max-width: 1080px) {
    #header .nav ul .sub-menu {display: block; position: static;}
}


@media (max-width: 1080px) {
    body #main,
    body #footer {
        -webkit-transition: opacity .3s;
        -moz-transition: opacity .3s;
        -ms-transition: opacity .3s;
        -o-transition: opacity .3s;
        transition: opacity .3s;
    }

    body.nav-menu-on #main,
    body.nav-menu-on #footer {
        opacity: .15;
    }
}


/* Footer
 * ======================================== */

#footer {margin-top: var(--space-huge); font: var(--font-meta);}
#footer .site-title {margin: var(--space-base) 0; padding: 0; max-width: calc(100% - 5rem);}
#footer .site-title a {width: 11.6875rem; height: 3rem; line-height: 3rem; max-width: 100%; display: block; font: var(--font-1); text-decoration: none; background: transparent no-repeat left 50%; background-size: contain;}

#footer a {text-decoration: none; color: var(--color-indigo-80);}

#footer .nav {display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-gap: var(--space-1);}
#footer .nav ul {margin-left: 0;}
#footer .nav ul ul {margin: 0 0 0 var(--space-base);}
#footer .nav ul li {margin: var(--space-5) 0;}

@media (max-width: 780px) {
    #footer .nav {grid-template-columns: minmax(0, 1fr)}
}

#footer .widgets-container {display: flex; gap: var(--space-base); flex-wrap: wrap;}
#footer .widgets-container .widget {flex: 1 1 0;}

#footer .menu--social {display: flex; gap: var(--space-3);}

@media (max-width: 600px) {
    #footer {text-align: center;}
    #footer .site-title {margin: var(--space-base) auto;}
    #footer .widgets-container .widget {flex: 1 1 50%;}
}

#footer .copyright {text-align: center; display: block; color: var(--color-indigo-60); border-top: 1px solid var(--color-indigo-05); padding: var(--space-5) 0;}


/* Main
 * ======================================== */

#main {}




/* Print
 * ======================================== */

@media print {
    body {background: none !important; color: #2b2b2b; font-size: 12pt; width: 100%;}
    #header {background: none; min-height: 100px;}
    #header .site-title a {height: 100px;}
    #header .site-title:after {position: absolute; right: 0; top: 0;}
    #header nav {display: none;}
    #footer {display: none;}
    h2, h3 {page-break-after: avoid;}
    article a {font-weight: bolder; text-decoration: none;}
    article a[href^=http]:after {content:" <" attr(href) "> ";}
}



/* WP Styles
 * ======================================== */

.alignleft {float: left;}
.alignright {float: right;}
.aligncenter {display: block; margin-left: auto; margin-right: auto; text-align: center;}

blockquote.alignleft,
figure.wp-caption.alignleft,
img.alignleft {margin: .5em 1rem .5em 0;}
.wp-caption.alignleft {margin: .5em 1rem .5em 0;}

blockquote.alignright,
figure.wp-caption.alignright,
img.alignright {margin: .5em 0 .5em 1rem;}
.wp-caption.alignright {margin: .5em 0 .5em 1rem;}

blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {margin-top: .5em; margin-bottom: .5em;}

.site-content blockquote.alignleft,
.site-content blockquote.alignright {padding-top: .5em; width: 50%;}

.site-content blockquote.alignleft p,
.site-content blockquote.alignright p {margin-bottom: .5em;}

.wp-caption {margin-bottom: 1rem; color: #767676;}
.wp-caption img[class*="wp-image-"] {display: block; margin: 0;}
.wp-caption-text {font-style: italic; line-height: 1.4; margin: .5em 0;}
div.wp-caption .wp-caption-text {padding-right: 1rem}

div.wp-caption.alignright img[class*="wp-image-"],
div.wp-caption.alignright .wp-caption-text {padding-left: 1rem; padding-right: 0;}

.wp-smiley {border: 0; margin-bottom: 0; margin-top: 0; padding: 0;}
