/***************************************
* Body text & Permalink
****************************************/
html:not(.wp-toolbar) body {
    color:var(--vii-color-text);
    background:var(--vii-color-bg);
    font-family:var(--vii-font-primary);
    font-size:var(--vii-size-body);
    line-height:1.625; font-weight:500; letter-spacing:-.03em;
}
a, button {
    color:var(--vii-color-text);
    transition:var(--vii-transition);
}

/* Permalink */
.mceContentBody a:not([class*="btn_"]),
.wpb_text_column a:not([class*="btn_"]) {
    text-decoration:underline; color:var(--vii-color-permalink);
    font-weight:500;
}
.mceContentBody a:not([class*="btn_"]):hover,
.mceContentBody a:not([class*="btn_"]):focus,
.mceContentBody a:not([class*="btn_"]):active,
.wpb_text_column a:not([class*="btn_"]):hover,
.wpb_text_column a:not([class*="btn_"]):focus,
.wpb_text_column a:not([class*="btn_"]):active {
    color:var(--vii-color-permalink-highlight);
}

/***************************************
* Headings
****************************************/
.mceContentBody h1, .mceContentBody h2, .mceContentBody h3, .mceContentBody h4, .mceContentBody h5, .mceContentBody h6,
.main_content h1, .main_content h2, .main_content h3, .main_content h4, .main_content h5, .main_content h6,
.main_content .heading_1, .main_content .heading_2, .main_content .heading_3, .main_content .heading_4, .main_content .heading_5, .main_content .heading_6,
.heading_1, .heading_2, .heading_3, .heading_4, .heading_5, .heading_6 {
    color:var(--vii-color-heading); margin-bottom:var(--vii-spacing-heading);
    line-height:var(--vii-heading-lineheight); font-weight:600; letter-spacing:-.02em;
}
.mceContentBody h1, .main_content h1, .main_content .heading_1, .heading_1 {font-size:var(--vii-size-h1);}
.mceContentBody h2, .main_content h2, .main_content .heading_2, .heading_2 {font-size:var(--vii-size-h2);}
.mceContentBody h3, .main_content h3, .main_content .heading_3, .heading_3 {font-size:var(--vii-size-h3); letter-spacing:-.025em;}
.mceContentBody h4, .main_content h4, .main_content .heading_4, .heading_4 {font-size:var(--vii-size-h4); letter-spacing:-.015em}
.mceContentBody h5, .main_content h5, .main_content .heading_5, .heading_5 {font-size:var(--vii-size-h5); letter-spacing:0;}
.mceContentBody h6, .main_content h6, .main_content .heading_6, .heading_6 {font-size:var(--vii-size-h6); letter-spacing:-.03em; line-height:1.55;}

/* override classes display block to respect line height */
h1 [class*="heading_"],
h2 [class*="heading_"],
h3 [class*="heading_"],
h4 [class*="heading_"],
h5 [class*="heading_"],
h6 [class*="heading_"] {display:block;}

/***************************************
* Text format
****************************************/
/* White turns gray if is inside Editor */
body[class*="wp-editor"] {--vii-color-white:#ccc;}

/* tag line */
.txt_tag_line {
    display:block; width:fit-content;
    border-top:1px solid var(--vii-color-primary);
    border-bottom:1px solid var(--vii-color-primary);
    font-size:var(--vii-size-20); font-weight:600;
    padding:12px 25px;
    line-height:1.4;
}

/* highlight */
.txt_highlight {
    font-size:var(--vii-size-34); font-weight:600;
    color:var(--vii-color-primary); line-height:1.3;
}

/* text transform */
.txt_group {display:inline-block;}
.txt_uppercase {text-transform:uppercase;}

/* Colors */
.txt_color_white {color:var(--vii-color-white);}
.txt_color_orange {color:var(--vii-color-primary);}
.txt_color_black {color:var(--vii-color-text);}

/* font weight */
.txt_medium {font-weight:500;}
.txt_semibold {font-weight:600;}

/***************************************
* Buttons
****************************************/
a.btn_primary, a.btn_arrow, a.btn_primary_transparent, a.btn_primary_border_white {}

/* button primary */
[class*="btn_primary"] {
    --btn-bg-color:var(--vii-color-primary); --btn-color:var(--vii-color-on-primary);
    --btn-bg-color-hover:var(--vii-color-primary); --btn-color-hover:var(--vii-color-on-primary);
    --btn-border-color:var(--vii-color-primary); --btn-border-color-hover:var(--vii-color-primary);

    display:inline-flex; align-items:center; justify-content:center; gap:5px 28px;
    text-align:center; text-decoration:none; border:1px solid var(--btn-border-color);
    font-family:var(--vii-font-primary); font-weight:600; font-size:var(--vii-size-12);
    line-height:1.2; letter-spacing:.04em; text-transform:uppercase;
    background:var(--btn-bg-color); color:var(--btn-color);
    padding:5px 16px; min-height:50px; min-width:96px;
}
[class*="btn_primary"]:after {
    font-family:var(--vii-font-icomoon); content:"\e927"; font-weight:700;
}
.trigger-hover:hover [class*="btn_primary"], .trigger-hover:focus [class*="btn_primary"],
[class*="btn_primary"]:hover, [class*="btn_primary"]:focus {
    text-decoration:none; column-gap:40px;
    border-color:var(--btn-border-color-hover);
    background:var(--btn-bg-color-hover); color:var(--btn-color-hover);
}

/* button primary transparent */
[class*="btn_primary_transparent"] {
    --btn-bg-color:rgba(0, 0, 0, 0); --btn-color:var(--vii-color-primary);
    --btn-bg-color-hover:rgba(0, 0, 0, 0); --btn-color-hover:var(--vii-color-primary);
    --btn-border-color:var(--vii-color-primary); --btn-border-color-hover:var(--vii-color-primary);
}

/* button primary border white */
[class*="btn_primary_border_white"] {
    --btn-bg-color:rgba(0, 0, 0, 0); --btn-color:var(--vii-color-gray);
    --btn-bg-color-hover:var(--vii-color-primary); --btn-color-hover:var(--vii-color-on-primary);
    --btn-border-color:var(--vii-color-gray); --btn-border-color-hover:var(--vii-color-primary);
}

/* button primary arrow */
[class*="btn_arrow"] {line-height:1.5; letter-spacing:-.01em; position:relative; padding:4px 20px 4px 0;}
[class*="btn_arrow"]:before {
    content:"";
    width:0; height:1px; background:var(--vii-color-primary);
    position:absolute; left:0; bottom:0;
    transition:width .3s ease;
}
[class*="btn_arrow"]:after, [class*="btn_arrow"] i:before {
    font-family:var(--vii-font-icomoon); content:"\e92b";
    font-size:10px; line-height:1; color:var(--vii-color-primary);
    position:absolute; right:0; top:50%; transform:translateY(-50%);
}
[class*="btn_arrow"]:hover, [class*="btn_arrow"]:focus {color:var(--vii-color-primary);}
[class*="btn_arrow"]:hover:before, [class*="btn_arrow"]:focus:before {width:100%;}


/***************************************
* Text with icons
****************************************/
.txt_icon_address, .txt_icon_phone, .txt_icon_email, .txt_icon_clock {}
[class*="txt_icon_"] {position:relative; padding-left:26px; display:block;}
[class*="txt_icon_"]:before {
    position:absolute; top:.35em; left:2px;
    font-family:var(--vii-font-icomoon); color:var(--vii-color-primary); font-size:14px; line-height:1;
}

[class*="txt_icon_address"]:before {content:"\e90f";}
[class*="txt_icon_phone"]:before {content:"\e919";}
[class*="txt_icon_email"]:before {content:"\e914";}
[class*="txt_icon_clock"]:before {content:"\e91f";}

@media only screen and (max-width:480px) {
    [class*="txt_icon_"] {padding-left:20px;}
    [class*="txt_icon_"]:before {left:0;}
}


/***************************************
* Text icon color
****************************************/
.txt_icon_color_green, .txt_icon_color_red, .txt_icon_color_white {}
[class*="txt_icon_color_"] {padding-left:36px; display:inline-block;}
[class*="txt_icon_color_"]:before {
    top:-5px; left:0;
    content:""; width:32px; height:32px;
    background-size:contain; background-repeat:no-repeat;
}
[class*="txt_icon_color_green"] {color:#3bbc29;}
[class*="txt_icon_color_green"]:before {
    width:48px; height:48px; top:-13px; left:-8px;
    background-image:url("assets/images/sphere_green.png");
}
[class*="txt_icon_color_red"] {color:#ff3969;}
[class*="txt_icon_color_red"]:before {background-image:url("assets/images/sphere_red.png");}
[class*="txt_icon_color_white"] {color:#ccc;}
[class*="txt_icon_color_white"]:before {background-image:url("assets/images/sphere_gray.png");}


/***************************************
* List
****************************************/
/* Default unordered list for text block */
.mceContentBody ul,
.wpb_text_column ul {list-style:none; margin:0;}
.wpb_text_column ul ul {padding-top:15px;}

.mceContentBody ul:not(:last-child),
.wpb_text_column ul:not(:last-child) {margin-bottom:var(--vii-spacing-paragraph);}

.mceContentBody ul > li,
.wpb_text_column ul > li {padding:0 0 0 20px; position:relative;}

.mceContentBody ul > li:not(:last-child),
.wpb_text_column ul > li:not(:last-child) {margin-bottom:12px;}

.mceContentBody ul > li:before,
.wpb_text_column ul > li:before {
    position:absolute; top:8px; left:2px; content:"\e934";
    font-family:var(--vii-font-icomoon); color:var(--vii-color-primary);
    font-size:7px; line-height:1;
}
@media only screen and (max-width:767px) {
    .mceContentBody ul > li, .wpb_text_column ul > li {padding-left:15px;}
    .mceContentBody ul > li:before, .wpb_text_column ul > li:before {left:0;}
}

/* text align center */
.wpb_text_column ul > li[style*="text-align: center"],
.wpb_text_column ul > li[style*="text-align:center"],
.mceContentBody ul > li[style*="text-align: center"],
.mceContentBody ul > li[style*="text-align:center"] {padding:0}

.wpb_text_column ul > li[style*="text-align: center"]:before,
.wpb_text_column ul > li[style*="text-align:center"]:before,
.mceContentBody ul > li[style*="text-align: center"]:before,
.mceContentBody ul > li[style*="text-align:center"]:before {
    position:relative; display:inline-block;
    transform:translate(-2px, -11px); margin-right:12px;
}
@media only screen and (max-width:767px) {
    .wpb_text_column ul > li[style*="text-align: center"]:before,
    .wpb_text_column ul > li[style*="text-align:center"]:before,
    .mceContentBody ul > li[style*="text-align: center"]:before,
    .mceContentBody ul > li[style*="text-align:center"]:before {margin-right:6px;}
}


/***************************************
* Table
****************************************/
table th {font-weight:600;}

table.table_no_border {}
table.table_no_border tr td {padding:0; width:auto !important; border:none;}
table.table_no_border tr td:first-child {white-space:nowrap; padding-right:16px;}
table.table_no_border tr:not(:last-child) td {padding-bottom:14px;}
table.table_no_border tr td a[href*="tel"] {text-decoration:none;}

/* table heading */
tr.table_heading {background-color:var(--vii-color-gray-4);}

/* placeholder for admin */
tr.table_heading:not(:nth-child(1)) td {position:relative; overflow:hidden;}
tr.table_heading:not(:nth-child(1)) td:not(:nth-child(1)):before {
    content:"Leave empty for auto data.";
    position:absolute; top:0; left:0;
    color:#000; opacity:.1; font-size:14px;
    white-space:nowrap; max-width:100%;
    padding:12px 10px 0;
}

/***************************************
* Paragraph
****************************************/
.mceContentBody p:not(:last-child), .main_content p:not(:last-child) {margin-bottom:var(--vii-spacing-paragraph);}


/***************************************
* Separator
****************************************/
.mceContentBody hr, .main_content hr {margin-bottom:var(--vii-spacing-paragraph); border-bottom:1px solid rgb(10 21 43 / 20%);}
.mceContentBody .txt_color_white hr, .main_content .txt_color_white hr {border-color:rgba(255, 255, 255, .2);}