/***************** variables *********************/
@font-face { font-family: "suissie"; src: url(../../assets/fonts/suissie.woff); }

:root {
  --primary: #4A082E;
  --secondary: #D7630F;
  --light: #fff0f9;
  --dark: #2C091C;
  --modedark: #0F0C11;
  --black: #000;
  --success: #8A8E00;
  --danger: #9148D9;
  --warning: #FF7015;
  --info: #0F9585;
  --prifade: #4A082E80;
  --secfade: #D7630F80;

  --opac1light: rgba(255,255,255,0.1);
  --opac2light: rgba(255,255,255,0.2);
  --opac3light: rgba(255,255,255,0.3);
  --opac4light: rgba(255,255,255,0.4);
  --opac5light: rgba(255,255,255,0.5);
  --opac6light: rgba(255,255,255,0.6);
  --opac7light: rgba(255,255,255,0.7);
  --opac8light: rgba(255,255,255,0.8);
  --opac9light: rgba(255,255,255,0.9);
  --opac1dark: rgba(0,0,0,0.1);
  --opac2dark: rgba(0,0,0,0.2);
  --opac3dark: rgba(0,0,0,0.3);
  --opac4dark: rgba(0,0,0,0.4);
  --opac5dark: rgba(0,0,0,0.5);
  --opac6dark: rgba(0,0,0,0.6);
  --opac7dark: rgba(0,0,0,0.7);
  --opac8dark: rgba(0,0,0,0.8);
  --opac8dark: rgba(0,0,0,0.9);

  --customlight: rgba(206,124,42,0.8);
  --customdark: rgba(36,27,23,0.8);
  --offwhite: #f7f7f7;
  --custom1: #2e2e2e;
  --custom2: #4f4f4f;
  --custom3: #7a7a7a;
  --custom4: #a6a6a6;
  --custom5: #d9d9d9;
  --custom6: #e6e6e6;
  --custom7: #3B577C;
  --custom8: #baa7c7 /*93BBD1*/;
  --custom9: #C2D1E6;
  --ccard: #F8F7EE;

  --trans: .3s;
  --translow: .5s;
  --translower: .7s;
  --translowest: 1s;
  --boradius: 2rem;
  --borahalf: 1rem;
  --boracus: 2rem;

  --font1: 'Quicksand', sans-serif;
  --font2: 'Quicksand', sans-serif;
  --font3: 'Ms Madi', cursive;
  --fonticon: 600 1rem "Font Awesome 5 Free","Font Awesome 5 Brands";

  --glowinset: 0px 0px 5rem .5rem rgba(0,0,0,0.2) inset;
  --glowlightinset: 0px 0px 5rem .5rem rgba(255,255,255,0.2) inset;

  --borderwidth:1px;
  --border:var(--borderwidth) solid var(--dark);
  --borderlight:var(--borderwidth) solid var(--light);

  /* overscroll-behavior: none; */
  overflow-x: hidden;
}

html {background-color: var(--dark) !important; overscroll-behavior: none; scroll-behavior: smooth !important; word-wrap:break-word;}
body {background-color: var(--dark); overscroll-behavior: none; color:var(--light) !important; font-family: var(--font1); font-weight:300; font-size: 18px; line-height: 1.7; overflow-x:unset;}
section > .container {max-width: 70vw !important;}
main {background-color: inherit;}
main > * {transition: var(--trans);}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {padding-inline:0;}
.container-fluid {padding-block:6rem;}



/***************** paragraphs *******************/

h0, h1, h2, h3, h4, h5, h6 {font-family:var(--font2); margin:0 0 1rem 0; padding:0; color: inherit; letter-spacing:.8px; line-height:1.3;}
h0 {font-size: 6rem; line-height:.9; margin-left: -8px;}
h1 {font-size: 4rem; line-height:1;}
h2 {font-size: 3rem; line-height:1.2;}
h3 {font-size: 2.5rem; line-height:1.3;}
h4 {font-size: 2rem; line-height: 1.4;}
h5 {font-size: 1.25rem; line-height: 1.5; font-family: var(--font1); font-weight: 300;}
h6 {font-size: .8rem; line-height: 1.3; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; font-family:var(--font1);}
p {margin-bottom: 1rem;}
p, a, ul, ol, li {margin: 0; margin-bottom:0; padding: 0; font-family:inherit;}
b, strong {font-weight:900;}
h1 strong {font-weight:500; font-size: 5.5rem; line-height: 1;}

:is(h0, h1, h2, h3, h4, h5, h6) strong {color:var(--primary);}
.text-light :is(h0, h1, h2, h3, h4, h5, h6) strong {color:var(--light);}


main a, main a * {transition:var(--trans); text-decoration:none; border:none;}
main a {color:inherit; transition: var(--trans); border-bottom:1px dashed; text-decoration:none !important; cursor:pointer;}
main a:hover {color:inherit;}
small {display:inline-block;}

::-webkit-scrollbar {display: none;}
::selection, ::-moz-selection {color: var(--light); background: var(--primary);}

hr {width: 100%; margin: 1rem auto auto auto; min-height: 1px; background-color: inherit; border-color: inherit;}
.spacer {height: 30px;}

.font1, .font1 h1, .font1 h2, .font1 h3, .font1 h4, .font1 h5, .font1 h6  { font-family:var(--font1) !important; }
.font2, .font2 h1, .font2 h2, .font2 h3, .font2 h4, .font2 h5, .font2 h6, .font2 p { font-family:var(--font2) !important; }
.font3, .font3 h1, .font3 h2, .font3 h3, .font3 h4, .font3 h5, .font3 h6, .font3 p { font-family:var(--font3) !important; letter-spacing: 1px;}
.font-100, .font-100 * {font-weight:100 !important;}
.font-300, .font-300 * {font-weight:300 !important;}
.font-400, .font-400 * {font-weight:400 !important;}
.font-500, .font-500 * {font-weight:500 !important;}
.font-600, .font-600 * {font-weight:600 !important;}
.font-700, .font-700 * {font-weight:700 !important;}
.font-900, .font-900 * {font-weight:900 !important;}
[class*='lh-'], [class*='lh-'] * {display: block;}
.lh-normal, .lh-normal * {line-height:normal;}
.lh-xs, .lh-xs * {line-height:1;}
.lh-sm, .lh-sm * {line-height:1.2;}
.lh-md, .lh-md * {line-height:1.5;}
.lh-lg, .lh-lg * {line-height:2;}
.lh-xl, .lh-xl * {line-height:2.5;}
.lh-xxl, .lh-xxl * {line-height:3;}





html:not(.cms) a:is([href*='wa.me'], [href*='sms:'], [href*='tel:'],[href*='mailto:'],[href*='goo.gl'],[href*='.com'],[href*='.se']):not(.btn) {}
html:not(.cms) a:is([href*='wa.me'], [href*='sms:'], [href*='tel:'],[href*='mailto:'],[href*='goo.gl'],[href*='.com'],[href*='.se']):before {font: var(--fonticon); margin-right:5px; font-size:inherit;}
.block-button a[href*='sms:']:before, a[href*='wa.me']:before {content:"\f7cd";}
.block-button a[href*='tel:']:after, a[href*='tel:']:before {content:"\f095";}
.block-button a[href*='mailto:']:after, a[href*='mailto:']:before {content:"\f0e0" !important;}
.block-button a[href*='goo.gl']:after, a[href*='goo.gl']:before {content:"\f3c5";}
.block-button a:is([href*='.com'],[href*='.se']):after, a:is([href*='.com'],[href*='.se']):before {content:"\f0ac";}
a[href*='facebook.com']:before, a.fblink:before {content:"\f082";}
a[href*='instagram.com']:before {content:"\f16d";}
a[href*='twitter.com']:before {content:"\f099";}
a[href*='linkedin.com']:before {content:"\f08c";}
a[href*='youtube.com']:before {content:"\f431";}
html:not(.cms) .clean:before, html:not(.cms) .clean a:before {display:none !important;}
.clean, .clean a {padding-inline:0 !important; border:none !important; text-decoration:none !important; margin-left:0 !important;}
main :is(.block-header, .block-text) a:has(:before) {margin-left:0 !important;}


/***************** buttons-v2 *********************/
.btn, .btn:is(:hover, :focus, :active) {box-shadow: none !important; outline:none !important;  text-decoration:none !important; background-color: var(--primary);}
.btn {margin-top: 2rem; border-radius:var(--boradius); text-transform:uppercase; letter-spacing:1px; color:var(--light) !important; font-weight:700; z-index: 1; position: relative; padding:.8rem 1.5rem !important; transition:var(--trans); max-width: 100%;}
.btn:is(:hover, :focus, :active):not(.btn-light, .btn-warning, .btn-info, .btn-outline, .btn-default) {color:var(--light) !important; background-color: var(--secondary) !important;}
.btn:is(:active) {opacity: .5;}
.btn-info {background:transparent !important; color:var(--dark) !important; padding:.3rem !important; font-size:.85rem;}
.btn-info:after {font: var(--fonticon); float:right; margin-left:10px; transition:var(--trans); content: "\f061" !important; }
.btn-info:hover:after {margin-left:15px;}

.btn {text-wrap: nowrap; font-weight: 400; font-size: 1rem; height: 3.5rem; padding: .5rem 4rem .5rem 1rem !important; display: inline-flex; flex-direction: row; align-items: center; border:1px solid var(--opac3light) !important; background-color: var(--secfade); color: var(--light); -webkit-box-shadow: var(--glowlightinset); box-shadow: var(--glowlightinset); -webkit-backdrop-filter:blur(1rem); backdrop-filter:blur(1rem); }
.btn:after {position: absolute; transition: var(--trans); right:.5rem; height:2.8rem; width: 2.8rem; display: inline-flex; flex-direction: row; align-items: center; justify-content: center; border-radius: var(--boradius); background-color: var(--light); content: "\f061"; font:var(--fonticon);}
.btn span:nth-child(2) {display: none;}
.btn.btn-primary { /*color:var(--primary) !important;*/}
.btn.btn-primary:after {background-color: var(--primary); color:var(--light);}
.btn.btn-secondary:after {background-color: var(--secondary);}
.btn.btn-light:after {color:var(--dark); background-color: var(--light);}
.btn.btn-dark:after {background-color: var(--dark);}
.btn:hover {border-color: var(--dark) !important;}
.btn.btn-light:hover {border-color: var(--light) !important;}

.btn.btn-icon {line-height: 1.2; height:8rem; width: 8rem; border-radius: 50%; text-wrap: auto; text-align: center; padding-right: 1rem !important; padding-top: 1rem !important; align-items: center; justify-content: center;}
.btn.btn-icon.btn-lg {height: 10rem; width: 10rem; padding-top: .5rem !important; font-size: 1.3rem;}
.btn.btn-icon:after {right:0; top:0; bottom: auto;}
.btn.btn-icon:hover:after {transform: translateX(.5rem) scale(.8);}
.btn.btn-icon[href^='#']:hover:after {top: 50%; right: 1rem; transform: translateX(50%) translateY(50%) rotate(90deg) scale(.8);}

.btn.btn-sm:not(.btn-icon) {font-size: .8rem; height: 2.5rem; padding-right: 3rem !important;}
.btn.btn-sm:not(.btn-icon):after {height: 2rem; width: 2rem; right: .25rem;}

.bg-primary .btn.btn-icon {color:var(--light) !important;}
.bg-primary .btn.btn-icon:after {background-color: var(--light); color:var(--dark);}

@media (max-width:767px) {
  .btn.btn-icon {padding-top: .75rem !important;}
  .btn.btn-icon.btn-lg {height: 8rem; width: 8rem; font-size: 1rem;}
  .btn.btn-icon[href^='#']:hover:after {transform: translateX(50%) translateY(50%) rotate(90deg) scale(.8);}
}

/***************** styling *********************/
main ol {margin-left:1rem !important;}
main ul {list-style:none;}
main ul li:before {content: "\f0da"; font: var(--fonticon); padding: 0 10px 0 0; color: var(--primary);}
main .bg-primary ul li:before {color: var(--secondary);}
main ul li ul {margin-top:0; margin-left:1rem; font-size: smaller; padding-bottom:.3rem !important;}
main ul li ul li {line-height:2;}
main ul li ul li:before {content: "-";}
main ul.clean {list-style: none;}
main ul.clean > li::before {display: none;}

.block-header, .block-text {margin-bottom: 1.5rem;}
:is(.block-header, .block-text) *[tooltip]:after {content:"\f059"; font: var(--fonticon); font-size: inherit !important; opacity: .6; margin-left: 3px; transform: scale(.75); display: inline-flex;}
:is(.block-header, .block-text) p:has(+ p) {margin-bottom: 1rem;}

.bg-primary .block-form .form-3 .form-group > label, .div-bot.bg-primary + div:after, .bg-primary.flow .__col .block-image:first-child .__content, .bubble-primary + .sticky-bubbles .bubble, .banner-primary + .div-banner-roll, .filter-primary:before, .cards-primary .__col > .block-section, .bg-primary {background-color: var(--primary) !important;}
.bg-secondary .block-form .form-3 .form-group > label, .div-bot.bg-secondary + div:after, .bg-secondary.flow .__col .block-image:first-child .__content, .bubble-secondary + .sticky-bubbles .bubble, .banner-secondary + .div-banner-roll, .filter-secondary:before, .cards-secondary .__col > .block-section, .bg-secondary {background-color: var(--secondary) !important;}
.bg-dark .block-form .form-3 .form-group > label, .div-bot.bg-dark + div:after, .bg-dark.flow .__col .block-image:first-child .__content, .bubble-dark + .sticky-bubbles .bubble, .banner-dark + .div-banner-roll, .filter-dark:before, .cards-dark .__col > .block-section, .bg-dark {background-color: var(--dark) !important;}
.bg-modedark .block-form .form-3 .form-group > label, .div-bot.bg-modedark + div:after, .bg-modedark.flow .__col .block-image:first-child .__content, .bubble-modedark + .sticky-bubbles .bubble, .banner-modedark + .div-banner-roll, .filter-modedark:before, .cards-modedark .__col > .block-section, .bg-modedark {background-color: var(--modedark) !important;}
.bg-black .block-form .form-3 .form-group > label, .div-bot.bg-black + div:after, .bg-black.flow .__col .block-image:first-child .__content, .bubble-black + .sticky-bubbles .bubble, .banner-black + .div-banner-roll, .filter-black:before, .cards-black .__col > .block-section, .bg-black {background-color: var(--black) !important;}
.bg-light .block-form .form-3 .form-group > label, .div-bot.bg-light + div:after, .bg-light.flow .__col .block-image:first-child .__content, .bubble-light + .sticky-bubbles .bubble, .banner-light + .div-banner-roll, .filter-light:before, .cards-light .__col > .block-section, .bg-light {background-color: var(--light) !important;}
.bg-white .block-form .form-3 .form-group > label, .div-bot.bg-white + div:after, .bg-white.flow .__col .block-image:first-child .__content, .bubble-white + .sticky-bubbles .bubble, .banner-white + .div-banner-roll, .filter-white:before, .cards-white .__col > .block-section, .bg-white {background-color: #FFF !important;}
.bg-info .block-form .form-3 .form-group > label, .div-bot.bg-info + div:after, .bg-info.flow .__col .block-image:first-child .__content, .bubble-info + .sticky-bubbles .bubble, .banner-info + .div-banner-roll, .filter-info:before, .cards-info .__col > .block-section, .bg-info {background-color: var(--info);}
.bg-success .block-form .form-3 .form-group > label, .div-bot.bg-success + div:after, .bg-success.flow .__col .block-image:first-child .__content, .bubble-success + .sticky-bubbles .bubble, .banner-success + .div-banner-roll, .filter-success:before, .cards-success .__col > .block-section, .bg-success {background-color: var(--success);}
.bg-danger .block-form .form-3 .form-group > label, .div-bot.bg-danger + div:after, .bg-danger.flow .__col .block-image:first-child .__content, .bubble-danger + .sticky-bubbles .bubble, .banner-danger + .div-banner-roll, .filter-danger:before, .cards-danger .__col > .block-section, .bg-danger {background-color: var(--danger);}
.bg-warning .block-form .form-3 .form-group > label, .div-bot.bg-warning + div:after, .bg-warning.flow .__col .block-image:first-child .__content, .bubble-warning + .sticky-bubbles .bubble, .banner-warning + .div-banner-roll, .filter-warning:before, .cards-warning .__col > .block-section, .bg-warning {background-color: var(--warning);}
.bg-white .block-form .form-3 .form-group > label, .div-bot.bg-white + div:after, .bg-white.flow .__col .block-image:first-child .__content, .bubble-white + .sticky-bubbles .bubble, .banner-white + .div-banner-roll, .filter-white:before, .cards-white .__col > .block-section, .bg-white {background-color: white;}

.bg-customlight .block-form .form-3 .form-group > label, .div-bot.bg-customlight + div:after, .bg-customlight.flow .__col .block-image:first-child .__content, .bubble-customlight + .sticky-bubbles .bubble, .banner-customlight + .div-banner-roll, .filter-customlight:before, .cards-customlight .__col > .block-section, .bg-customlight {background-color: var(--opac8light) !important;}
.bg-customdark .block-form .form-3 .form-group > label, .div-bot.bg-customdark + div:after, .bg-customdark.flow .__col .block-image:first-child .__content, .bubble-customdark + .sticky-bubbles .bubble, .banner-customdark + .div-banner-roll, .filter-customdark:before, .cards-customdark .__col > .block-section, .bg-customdark {background-color: var(--opac8dark) !important;}
.bg-custom0 .block-form .form-3 .form-group > label, .div-bot.bg-custom0 + div:after, .bg-custom0.flow .__col .block-image:first-child .__content, .bubble-custom0 + .sticky-bubbles .bubble, .banner-custom0 + .div-banner-roll, .filter-custom0:before, .cards-custom0 .__col > .block-section, .bg-custom0 {background-color: var(--custom0) !important;}
.bg-custom1 .block-form .form-3 .form-group > label, .div-bot.bg-custom1 + div:after, .bg-custom1.flow .__col .block-image:first-child .__content, .bubble-custom1 + .sticky-bubbles .bubble, .banner-custom1 + .div-banner-roll, .filter-custom1:before, .cards-custom1 .__col > .block-section, .bg-custom1 {background-color: var(--custom1) !important;}
.bg-custom2 .block-form .form-3 .form-group > label, .div-bot.bg-custom2 + div:after, .bg-custom2.flow .__col .block-image:first-child .__content, .bubble-custom2 + .sticky-bubbles .bubble, .banner-custom2 + .div-banner-roll, .filter-custom2:before, .cards-custom2 .__col > .block-section, .bg-custom2 {background-color: var(--custom2) !important;}
.bg-custom3 .block-form .form-3 .form-group > label, .div-bot.bg-custom3 + div:after, .bg-custom3.flow .__col .block-image:first-child .__content, .bubble-custom3 + .sticky-bubbles .bubble, .banner-custom3 + .div-banner-roll, .filter-custom3:before, .cards-custom3 .__col > .block-section, .bg-custom3 {background-color: var(--custom3) !important;}
.bg-custom4 .block-form .form-3 .form-group > label, .div-bot.bg-custom4 + div:after, .bg-custom4.flow .__col .block-image:first-child .__content, .bubble-custom4 + .sticky-bubbles .bubble, .banner-custom4 + .div-banner-roll, .filter-custom4:before, .cards-custom4 .__col > .block-section, .bg-custom4 {background-color: var(--custom4) !important;}
.bg-custom5 .block-form .form-3 .form-group > label, .div-bot.bg-custom5 + div:after, .bg-custom5.flow .__col .block-image:first-child .__content, .bubble-custom5 + .sticky-bubbles .bubble, .banner-custom5 + .div-banner-roll, .filter-custom5:before, .cards-custom5 .__col > .block-section, .bg-custom5 {background-color: var(--custom5) !important;}
.bg-custom6 .block-form .form-3 .form-group > label, .div-bot.bg-custom6 + div:after, .bg-custom6.flow .__col .block-image:first-child .__content, .bubble-custom6 + .sticky-bubbles .bubble, .banner-custom6 + .div-banner-roll, .filter-custom6:before, .cards-custom6 .__col > .block-section, .bg-custom6 {background-color: var(--custom6) !important;}
.bg-custom7 .block-form .form-3 .form-group > label, .div-bot.bg-custom7 + div:after, .bg-custom7.flow .__col .block-image:first-child .__content, .bubble-custom7 + .sticky-bubbles .bubble, .banner-custom7 + .div-banner-roll, .filter-custom7:before, .cards-custom7 .__col > .block-section, .bg-custom7 {background-color: var(--custom7) !important;}
.bg-custom8 .block-form .form-3 .form-group > label, .div-bot.bg-custom8 + div:after, .bg-custom8.flow .__col .block-image:first-child .__content, .bubble-custom8 + .sticky-bubbles .bubble, .banner-custom8 + .div-banner-roll, .filter-custom8:before, .cards-custom8 .__col > .block-section, .bg-custom8 {background-color: var(--custom8) !important;}
.bg-custom9 .block-form .form-3 .form-group > label, .div-bot.bg-custom9 + div:after, .bg-custom9.flow .__col .block-image:first-child .__content, .bubble-custom9 + .sticky-bubbles .bubble, .banner-custom9 + .div-banner-roll, .filter-custom9:before, .cards-custom9 .__col > .block-section, .bg-custom9 {background-color: var(--custom9) !important;}

.bg-gradient1.flow .__col .block-image:first-child .__content, .bubble-gradient1 + .sticky-bubbles .bubble, .banner-gradient1 + .div-banner-roll, .filter-gradient1:before, .cards-gradient1 .__col > .block-section, .bg-gradient1 {background:linear-gradient(315deg, var(--primary), var(--custom7));}
.bg-gradient2.flow .__col .block-image:first-child .__content, .bubble-gradient2 + .sticky-bubbles .bubble, .banner-gradient2 + .div-banner-roll, .filter-gradient2:before, .cards-gradient2 .__col > .block-section, .bg-gradient2 {background:linear-gradient(315deg, var(--secondary), var(--custom8));}
.bg-gradient3.flow .__col .block-image:first-child .__content, .bubble-gradient3 + .sticky-bubbles .bubble, .banner-gradient3 + .div-banner-roll, .filter-gradient3:before, .cards-gradient3 .__col > .block-section, .bg-gradient3 {background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 70%, var(--custom7)) 150%;}
.bg-gradient4.flow .__col .block-image:first-child .__content, .bubble-gradient4 + .sticky-bubbles .bubble, .banner-gradient4 + .div-banner-roll, .filter-gradient4:before, .cards-gradient4 .__col > .block-section, .bg-gradient4 {background:linear-gradient(135deg, var(--custom5) 0%, var(--custom6) 70%, var(--custom4)) 150%;}
.bg-gradient5.flow .__col .block-image:first-child .__content, .bubble-gradient5 + .sticky-bubbles .bubble, .banner-gradient5 + .div-banner-roll, .filter-gradient5:before, .cards-gradient5 .__col > .block-section, .bg-gradient5 {background:linear-gradient(135deg, var(--custom4) 0%, var(--custom5) 70%, var(--custom2)) 150%;}
.bg-gradient6.flow .__col .block-image:first-child .__content, .bubble-gradient6 + .sticky-bubbles .bubble, .banner-gradient6 + .div-banner-roll, .filter-gradient6:before, .cards-gradient6 .__col > .block-section, .bg-gradient6 {background:linear-gradient(135deg, var(--custom2) 0%, var(--custom1) 70%, var(--dark)) 150%;}



.__base .text-light, .text-light, .text-light p {color: var(--light) !important;}
.text-light h6, .text-light h1, .text-light h2, .text-light h3, .text-light h4, .text-light h5, .text-light a:not(.btn), .text-light a:not(.btn):hover {color: var(--light) !important; }
.text-light hr {background-color: var(--light) !important; color: var(--light) !important;}

.text-dark, .text-dark p, .text-dark h1, .text-dark h2, .text-dark h3, .text-dark h4, .text-dark h5, .text-dark h6, .text-dark a:not(.btn), .text-dark a:not(.btn):hover {color: var(--dark) !important;}
.text-primary, .text-primary p, .text-primary h1, .text-primary h2, .text-primary h3, .text-primary h4, .text-primary h5, .text-primary h6, .text-primary a, .text-primary a:hover {color: var(--primary) !important;}
.text-secondary, .text-secondary p, .text-secondary h1, .text-secondary h2, .text-secondary h3, .text-secondary h4, .text-secondary h5, .text-secondary h6, .text-secondary a, .text-secondary a:hover {color: var(--secondary) !important;}

.text-success, .text-success p, .text-success h1, .text-success h2, .text-success h3, .text-success h4, .text-success h5, .text-success h6, .text-success a, .text-success a:hover {color: var(--success);}
.text-danger, .text-danger p, .text-danger h1, .text-danger h2, .text-danger h3, .text-danger h4, .text-danger h5, .text-danger h6, .text-danger a, .text-danger a:hover {color: var(--danger);}
.text-warning, .text-warning p, .text-warning h1, .text-warning h2, .text-warning h3, .text-warning h4, .text-warning h5, .text-warning h6, .text-warning a, .text-warning a:hover {color: var(--warning);}
.text-info, .text-info p, .text-info h1, .text-info h2, .text-info h3, .text-info h4, .text-info h5, .text-info h6, .text-info a, .text-info a:hover {color: var(--info);}
.text-custom1, .text-custom1 p, .text-custom1 h1, .text-custom1 h2, .text-custom1 h3, .text-custom1 h4, .text-custom1 h5, .text-custom1 h6, .text-custom1 a, .text-custom1 a:hover {color: var(--custom1);}
.text-custom2, .text-custom2 p, .text-custom2 h1, .text-custom2 h2, .text-custom2 h3, .text-custom2 h4, .text-custom2 h5, .text-custom2 h6, .text-custom2 a, .text-custom2 a:hover {color: var(--custom2);}
.text-custom3, .text-custom3 p, .text-custom3 h1, .text-custom3 h2, .text-custom3 h3, .text-custom3 h4, .text-custom3 h5, .text-custom3 h6, .text-custom3 a, .text-custom3 a:hover {color: var(--custom3);}
.text-custom4, .text-custom4 p, .text-custom4 h1, .text-custom4 h2, .text-custom4 h3, .text-custom4 h4, .text-custom4 h5, .text-custom4 h6, .text-custom4 a, .text-custom4 a:hover {color: var(--custom4);}
.text-custom5, .text-custom5 p, .text-custom5 h1, .text-custom5 h2, .text-custom5 h3, .text-custom5 h4, .text-custom5 h5, .text-custom5 h6, .text-custom5 a, .text-custom5 a:hover {color: var(--custom5);}
.text-custom6, .text-custom6 p, .text-custom6 h1, .text-custom6 h2, .text-custom6 h3, .text-custom6 h4, .text-custom6 h5, .text-custom6 h6, .text-custom6 a, .text-custom6 a:hover {color: var(--custom6);}
.text-custom7, .text-custom7 p, .text-custom7 h1, .text-custom7 h2, .text-custom7 h3, .text-custom7 h4, .text-custom7 h5, .text-custom7 h6, .text-custom7 a, .text-custom7 a:hover {color: var(--custom7);}
.text-custom8, .text-custom8 p, .text-custom8 h1, .text-custom8 h2, .text-custom8 h3, .text-custom8 h4, .text-custom8 h5, .text-custom8 h6, .text-custom8 a, .text-custom8 a:hover {color: var(--custom8);}
.text-custom9, .text-custom9 p, .text-custom9 h1, .text-custom9 h2, .text-custom9 h3, .text-custom9 h4, .text-custom9 h5, .text-custom9 h6, .text-custom9 a, .text-custom9 a:hover {color: var(--custom9);}

[class*="filter-"] {position:relative; overflow:hidden;}
[class*="filter-"]:before {transition:1s all; position: absolute; content: " "; top: 0; left: 0; width: 100%; height: 100%; display: block; opacity: .3; z-index: 2;}
.filter-opac1:before {opacity:.1 !important;} .filter-opac2:before {opacity:.2 !important;} .filter-opac3:before {opacity:.3 !important;} .filter-opac5:before {opacity:.5 !important;} .filter-opac6:before {opacity:.6 !important;} .filter-opac7:before {opacity:.7 !important;} .filter-opac8:before {opacity:.8 !important;} .filter-opac9:before {opacity:.9 !important;} .filter-opac95:before {opacity:.95 !important;} .filter-opac98:before {opacity:.98 !important;} .filter-opac:before {opacity:1 !important;}
.filter-blur3:before {backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);} .filter-blur5:before {backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px);}
[class*="filter-blur"]:before { opacity:1 !important; filter:opacity(.8);}
.filter-left:before, .filter-right:before, .filter-bottom:before, .filter-top:before {background-color:inherit !important; width: 50%; left: auto !important; right: 0 !important; filter: blur(50px); transform: scale(1.6);}
.filter-bottom:before, .filter-top:before {width:100% !important; height: 50%; left:0 !important; bottom:0 !important; top: auto !important;}
.filter-left:before {left: 0 !important; right: auto !important;}
.filter-top:before {top:0 !important; bottom:auto !important;}
.filter-bnw:after {content:""; position:absolute; inset:0; background-color: black !important; opacity: 1; mix-blend-mode: saturation;}
[class*="filter-"] > div {position:relative; z-index:3;}
.filter-custom:before {filter: none; transform: none;}
.filter-custom.filter-left:before {border-radius: 0 0 150px 0;}
.filter-custom.filter-right:before {border-radius: 150px 0 0 0;}
.filter-slant.filter-left:before, .filter-slant.filter-right:before {filter: none; }
.filter-slant.filter-left:before {transform: skewX(-15deg) scaleX(1.5);}
.filter-slant.filter-right:before {transform: skewX(15deg) scaleX(1.5);}

.filter-left-top:before, .filter-right-top:before, .filter-bottom-right:before, .filter-bottom-left:before {width: 33%; height: 50%;}
.filter-bottom-right:before {inset: auto 0 0 auto;}
.filter-right-top:before {inset: 0 0 auto auto;}
.filter-bottom-left:before {inset: auto auto 0 0;}
.filter-left-top.filter-radius:before { border-bottom-right-radius: var(--boxadius);}
.filter-bottom-right.filter-radius:before { border-top-left-radius: var(--boxadius);}
.filter-right-top.filter-radius:before { border-bottom-left-radius: var(--boxadius);}
.filter-bottom-left.filter-radius:before { border-top-right-radius: var(--boxadius);}

.w-5 {width: 5%;}
.w-10 {width: 10%;}
.w-15 {width: 15%;}
.w-20 {width: 20%;}
.w-25 {width: 25%;}
.w-30 {width: 30%;}
.w-35 {width: 35%;}
.w-40 {width: 40%;}
.w-45 {width: 45%;}
.w-50 {width: 50%;}
.w-55 {width: 55%;}
.w-60 {width: 60%;}
.w-65 {width: 65%;}
.w-70 {width: 70%;}
.w-75 {width: 75%;}
.w-80 {width: 80%;}
.w-85 {width: 85%;}
.w-90 {width: 90%;}
.w-95 {width: 95%;}
.w-100 {width: 100%;}

.wh-5 {width: 5vw;}
.wh-10 {width: 10vw;}
.wh-15 {width: 15vw;}
.wh-20 {width: 20vw;}
.wh-25 {width: 25vw;}
.wh-30 {width: 30vw;}
.wh-35 {width: 35vw;}
.wh-40 {width: 40vw;}
.wh-45 {width: 45vw;}
.wh-50 {width: 50vw;}
.wh-55 {width: 55vw;}
.wh-60 {width: 60vw;}
.wh-65 {width: 65vw;}
.wh-70 {width: 70vw;}
.wh-75 {width: 75vw;}
.wh-80 {width: 80vw;}
.wh-85 {width: 85vw;}
.wh-90 {width: 90vw;}
.wh-95 {width: 95vw;}
.wh-100 {width: 100vw;}


  .bgy-0 {background-position-y: 0%;}
  .bgy-5 {background-position-y: 5%;}
  .bgy-10 {background-position-y: 10%;}
  .bgy-20 {background-position-y: 20%;}
  .bgy-30 {background-position-y: 30%;}
  .bgy-40 {background-position-y: 40%;}
  .bgy-50 {background-position-y: 50%;}
  .bgy-60 {background-position-y: 60%;}
  .bgy-70 {background-position-y: 70%;}
  .bgy-80 {background-position-y: 80%;}
  .bgy-90 {background-position-y: 90%;}
  .bgy-100 {background-position-y: 100%;}

  .bgx-0 {background-position-x: 0%;}
  .bgx-5 {background-position-x: 5%;}
  .bgx-10 {background-position-x: 10%;}
  .bgx-20 {background-position-x: 20%;}
  .bgx-30 {background-position-x: 30%;}
  .bgx-40 {background-position-x: 40%;}
  .bgx-50 {background-position-x: 50%;}
  .bgx-60 {background-position-x: 60%;}
  .bgx-70 {background-position-x: 70%;}
  .bgx-80 {background-position-x: 80%;}
  .bgx-90 {background-position-x: 90%;}
  .bgx-100 {background-position-x: 100%;}

.cards-vh-5 .__col .block-section, .vh-5 {height: 5vh !important;}
.cards-vh-10 .__col .block-section, .vh-10 {height: 10vh !important;}
.cards-vh-15 .__col .block-section, .vh-15 {height: 15vh !important;}
.cards-vh-20 .__col .block-section, .vh-20 {height: 20vh !important;}
.cards-vh-25 .__col .block-section, .vh-25 {height: 25vh !important;}
.cards-vh-30 .__col .block-section, .vh-30 {height: 30vh !important;}
.cards-vh-35 .__col .block-section, .vh-35 {height: 35vh !important;}
.cards-vh-40 .__col .block-section, .vh-40 {height: 40vh !important;}
.cards-vh-45 .__col .block-section, .vh-45 {height: 45vh !important;}
.cards-vh-50 .__col .block-section, .vh-50 {height: 50vh !important;}
.cards-vh-55 .__col .block-section, .vh-55 {height: 55vh !important;}
.cards-vh-60 .__col .block-section, .vh-60 {height: 60vh !important;}
.cards-vh-65 .__col .block-section, .vh-65 {height: 65vh !important;}
.cards-vh-70 .__col .block-section, .vh-70 {height: 70vh !important;}
.cards-vh-75 .__col .block-section, .vh-75 {height: 75vh !important;}
.cards-vh-80 .__col .block-section, .vh-80 {height: 80vh !important;}
.cards-vh-85 .__col .block-section, .vh-85 {height: 85vh !important;}
.cards-vh-90 .__col .block-section, .vh-90 {height: 90vh !important;}
.cards-vh-95 .__col .block-section, .vh-95 {height: 95vh !important;}
.cards-vh-100 .__col .block-section, .vh-100 {height: 100vh !important;}
.cards-vh-150 .__col .block-section, .vh-150 {height: 150vh !important;}
.cards-vh-200 .__col .block-section, .vh-200 {height: 200vh !important;}

.cards-vh-min-25 .__col .block-section, .vh-min-25 {min-height: 25vh !important;}
.cards-vh-min-30 .__col .block-section, .vh-min-30 {min-height: 30vh !important;}
.cards-vh-min-40 .__col .block-section, .vh-min-40 {min-height: 40vh !important;}
.cards-vh-min-50 .__col .block-section, .vh-min-50 {min-height: 50vh !important;}
.cards-vh-min-60 .__col .block-section, .vh-min-60 {min-height: 60vh !important;}
.cards-vh-min-75 .__col .block-section, .vh-min-75 {min-height: 75vh !important;}
.cards-vh-min-100 .__col .block-section, .vh-min-100 {min-height: 100vh !important;}

.m0 .__content, .p0 .__content, .ms0 .__content *:not(:first-child) {margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important;}
.m1st .__content *:first-child, .m0 *:is(h1, h2, h3, h4, h5, h6, p, img, ul, li, ol), .mu0 ul, .mo0 ol, .ml0 li, .mul0 ul, .mul0 li,
.mh0 *:is(h1, h2, h3, h4, h5, h6), .mp0 p, .mi0 img, .mh60 h6 {margin-top: 0 !important; margin-bottom: 0 !important;}
.p1st .__content *:first-child, .p0 *:is(h1, h2, h3, h4, h5, h6, p, img, ul, li, ol), .pu0 ul, .pl0 li, .pul0 ul, .pul0 li,
.ph0 *:is(h1, h2, h3, h4, h5, h6), .pp0 p, .pi0 img {padding-top: 0 !important; padding-bottom: 0 !important;}
.pc0 .__content {padding:0 !important;}


.text-justify-left, .text-justify-right, .text-justify-center {text-align: justify;}
.text-left-center, .text-left-right, .text-left-justify {text-align: left;}
.text-right-center, .text-right-left, .text-right-justify {text-align: right;}
.text-center-right, .text-center-left, .text-center-justify {text-align:center !important;}



.flex-direction-column {display: flex; flex-direction: column;}
.flex-direction-row {display: flex; flex-direction: row; justify-content: space-between;}


:is(.pull-bottom,.pull-bottom-middle,.pull-middle,.pull-middle-bottom) .col, .col:is(.pull-bottom,.pull-bottom-middle,.pull-middle,.pull-middle-bottom) {display: flex; align-items: center;}
:is(.pull-bottom,.pull-bottom-middle) .col, .col:is(.pull-bottom,.pull-bottom-middle) {align-items: flex-end;}
:is(.pull-bottom,.pull-bottom-middle,.pull-middle,.pull-middle-bottom) .col > .block-section, .col:is(.pull-bottom,.pull-bottom-middle,.pull-middle,.pull-middle-bottom) > .block-section {height: unset;}

input:is(:active,:hover,:focus,:focus-within) {box-shadow: none !important; border-color:var(--primary) !important;}
.row {margin-inline:0; overflow: unset;}
.col-px-0 > [class*='col-'] {padding-inline:0;}
.gap {gap:1rem;}
.row-gap {row-gap:1rem;}
.col-gap {column-gap:1rem;}

/*---------------- gallery-carousel -------------------*/


.carousel.carousel-fade .carousel-item {display: block; opacity: 0; transition: opacity ease-out .7s;}
.carousel.carousel-fade .carousel-item.active {opacity: 1 !important;}

.carousel {height: 100%;}
.carousel :is(.carousel-inner, .carousel-item, .carousel-item img) {height: 100%; width:100%; object-fit: cover; object-position: center;}
.carousel .carousel-indicators {gap:.25rem; margin-inline:0 !important; bottom:1rem;}
.carousel .carousel-indicators li {cursor: pointer; background-color: var(--custom5); width: .75rem; height: .75rem; border-radius: 50%; transition: var(--trans);}
.carousel .carousel-indicators li.active {background-color: var(--primary);}
.carousel .carousel-caption {background-color: var(--opac7dark); transition: var(--trans); position: absolute; inset: 0; text-align: left; padding: 3rem; display: flex !important; align-items: flex-start; justify-content: flex-end; flex-direction: column;}
.carousel .carousel-item:hover .carousel-caption {background-color: var(--opac2dark);}
.carousel .carousel-caption *:not(:last-child) {margin-bottom: .5rem;}

hr[spacer] {margin-block: 3rem; border:none;}

img {width: 100%; object-fit: cover; object-position: center;}
.pull-right, .pull-right-left {float: right;}
.pull-left, .pull-left-right {float: left;}

/********cardscus*********/


.cards-1 .col .block-section {min-height: 60vh; display: flex; flex-direction: row; flex-wrap: nowrap; padding: 2rem; border-radius: var(--boradius); border:1px solid var(--opac3light); position: relative; overflow: hidden;}
.cards-1 .col .block-section > div {flex:1; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; position: relative;}
.cards-1 .col .block-section .left {padding-right: 2rem;}
.cards-1 .col .block-section .left h1:first-child {position: absolute; line-height: normal; font-size: 20rem; top: -10rem; left: -3rem; z-index: -1; opacity: .05;}
.cards-1 .col .block-section .right {border-radius: var(--boradius); overflow: hidden; padding: 2rem 6rem 2rem 2rem;}
.cards-1 .col .block-section .right .img-container {position: absolute; height: 100%; z-index: -1; inset:0; }
.cards-1 .col .block-section .right img {filter: brightness(0.3); height: 100%; width: 100%; transition: var(--trans);}
.cards-1 .col .block-section .right:hover img {transform: scale(1.5);filter: brightness(0.5);}
.cards-1 .col .block-section .right .icon-det span {display: block;}
.cards-1 .col .block-section .right .icon-det span:not(:last-child) {margin-bottom: .25rem;}
.cards-1 .col .block-section .right a.btn {background: var(--primary);  color: var(--light) !important; position: absolute; right: 2rem; bottom: 2rem; border-radius: 50%; height: 4rem; width: 4rem; display: flex; align-items: center; justify-content: center;}
.cards-1 .col .block-section .right a.btn:hover {color:var(--light) !important;}


@media (max-width:767px) {
  .cards-1 .col .block-section {padding: 3rem 1rem 1rem 1rem; flex-direction: column;}
  .cards-1 .col .block-section > div {flex:1; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; position: relative;}
  .cards-1 .col .block-section .left {margin-bottom: 2rem; padding-right: 0;}
}


.hover:is(.opac1,.opac3,.opac5,.opac7,.opac9) {transition:var(--trans);}
.hover:is(.opac1,.opac3,.opac5,.opac7,.opac9):hover {opacity:1;}
.opac1 {opacity:.1;} .opac2 {opacity:.2;} .opac3 {opacity:.3;} .opac4 {opacity:.4;} .opac5 {opacity:.5;} .opac6 {opacity:.6;} .opac7 {opacity:.75;} .opac8 {opacity:.8;} .opac9 {opacity:.9;}

.head {position: relative;}
.head:after {content:""; position: absolute; border-bottom: 1px solid var(--dark); width:5rem; height: 1px; margin-left: .5rem; top: 50%; transform: translateY(-50%);}
:is(body,dark, .text-light) .head:after, .text-light.head:after {border-color: var(--light);}
:is(body,dark, .text-custom8) .head:after, .text-custom8.head:after {border-color: var(--custom8);}




@media (max-width: 2050px) {
  body {font-size: 16px;}
}

@media (max-width: 1920px) {
  /* body {font-size: 13px;} */
  section > .container {max-width: 80vw !important;}
}

@media (max-width: 1560px) {
  section > .container {max-width: 90vw !important;}
}


@media (max-width: 1280px) {
  h1 strong {font-size: 4rem; line-height: 1.2;}
}

@media (max-width: 992px) {
  h0, h1 {font-size: 3.5rem; letter-spacing: 2px;}
  h2 {font-size: 2.5rem; letter-spacing: 2px;}
  h3 {font-size: 2rem; letter-spacing: 2px;}
  h4 {font-size: 1.6rem; letter-spacing: 1px;}
  h5 {font-size: 1.2rem; letter-spacing: 0px;}


}

@media (min-width: 768px) {
  .col.order-2-md {order:2;}
}

@media (max-width: 767px) {
  html,body {font-size: 13px;}
  h0,h1,h2,h3,h4,h5 {letter-spacing: 0px;}
  h1:has(>strong), h1 strong {font-size: 3rem; line-height: 1.3;}
  h0 {margin-left: 0;}
  h0, h1 {font-size: 3rem;}
  h2 {font-size: 2rem;}
  h3 {font-size: 1.7rem;}
  h4 {font-size: 1.5rem;}
  h5 {font-size: 1rem; line-height: 1.7;}


  .text-left-justify, .text-right-justify, .text-center-justify {text-align: justify !important;}
  .text-left-center, .text-right-center, .text-justify-center {text-align: center !important;}
  .text-right-left, .text-center-left, .text-justify-left {text-align: left !important;}
  .text-left-right, .text-center-right, .text-justify-right {text-align: right !important;}
  :is(.text-left-center, .text-right-center) .block-list.socials .block-list-group {justify-content: center;}


  :is(.pull-bottom-middle) .col, .col:is(.pull-bottom-middle) {align-items: center;}
  :is(.pull-middle-bottom) .col, .col:is(.pull-middle-bottom) {align-items: flex-end;}


  .w-md-auto {width:auto !important;}
  .w-md-100 {width:100% !important;}
  .w-md-95 {width:95% !important;}
  .w-md-90 {width:90% !important;}
  .w-md-85 {width:85% !important;}
  .w-md-80 {width:80% !important;}
  .w-md-75 {width:75% !important;}
  .w-md-70 {width:70% !important;}
  .w-md-65 {width:65% !important;}
  .w-md-60 {width:60% !important;}
  .w-md-55 {width:55% !important;}
  .w-md-50 {width:50% !important;}
  .w-md-45 {width:45% !important;}
  .w-md-40 {width:40% !important;}
  .w-md-35 {width:35% !important;}
  .w-md-30 {width:30% !important;}
  .w-md-25 {width:25% !important;}
  .w-md-20 {width:20% !important;}
  .vh-md-auto {height:auto !important;}
  .vh-md-100 {height:100vh !important;}
  .vh-md-90 {height:90vh !important;}
  .vh-md-80 {height:80vh !important;}
  .vh-md-70 {height:70vh !important;}
  .vh-md-60 {height:60vh !important;}
  .vh-md-50 {height:50vh !important;}
  .vh-md-40 {height:40vh !important;}
  .vh-md-30 {height:30vh !important;}
  .vh-md-20 {height:20vh !important;}

  .wh-md-5 {width: 5vw !important;}
  .wh-md-10 {width: 10vw !important;}
  .wh-md-15 {width: 15vw !important;}
  .wh-md-20 {width: 20vw !important;}
  .wh-md-25 {width: 25vw !important;}
  .wh-md-30 {width: 30vw !important;}
  .wh-md-35 {width: 35vw !important;}
  .wh-md-40 {width: 40vw !important;}
  .wh-md-45 {width: 45vw !important;}
  .wh-md-50 {width: 50vw !important;}
  .wh-md-55 {width: 55vw !important;}
  .wh-md-60 {width: 60vw !important;}
  .wh-md-65 {width: 65vw !important;}
  .wh-md-70 {width: 70vw !important;}
  .wh-md-75 {width: 75vw !important;}
  .wh-md-80 {width: 80vw !important;}
  .wh-md-85 {width: 85vw !important;}
  .wh-md-90 {width: 90vw !important;}
  .wh-md-95 {width: 95vw !important;}
  .wh-md-100 {width: 100vw !important;}

  .d-none-md {display:none !important;}
  .order-md .block-columns > .__col:nth-child(1) {order:2;}
  .order-md .block-columns > .__col:nth-child(2) {order:1;}


  .__col.order-1-md {order:1;}
  .__col.order-2-md {order:2;}

  .pull-right-left {float: left;}
  .pull-left-right {float: right;}

  .p-0-md {padding:0 !important;}
  .p-1-md {padding:.5rem !important;}
  .p-2-md {padding:1rem !important;}
  .p-3-md {padding:1.5rem !important;}
  .p-4-md {padding:2rem !important;}
  .p-5-md {padding:3rem !important;}
  .pl-0-md {padding-left:0 !important;}
  .pl-5-md {padding-left:3rem !important;}
  .pr-0-md {padding-right:0 !important;}
  .pr-5-md {padding-right:3rem !important;}
  .pt-0-md {padding-top:0 !important;}
  .pt-5-md {padding-top:3rem !important;}
  .pb-0-md {padding-bottom:0 !important;}
  .pb-5-md {padding-bottom:3rem !important;}
  .px-0-md {padding-inline:0rem !important;}
  .px-1-md {padding-inline:.5rem !important;}
  .px-2-md {padding-inline:1rem !important;}
  .px-3-md {padding-inline:1.5rem !important;}
  .px-4-md {padding-inline:2rem !important;}
  .px-5-md {padding-inline:3rem !important;}
  .py-0-md {padding-block:0 !important;}
  .py-1-md {padding-block:.5rem !important;}
  .py-2-md {padding-block:1rem !important;}
  .py-3-md {padding-block:1.5rem !important;}
  .py-4-md {padding-block:2rem !important;}
  .py-5-md {padding-block:3rem !important;}

  .m-0-md {margin:0 !important;}
  .m-1-md {margin:.5rem !important;}
  .m-2-md {margin:1rem !important;}
  .m-3-md {margin:1.5rem !important;}
  .m-4-md {margin:2rem !important;}
  .m-5-md {margin:3rem !important;}
  .ml-0-md {margin-left:0 !important;}
  .ml-5-md {margin-left:3rem !important;}
  .mr-0-md {margin-right:0 !important;}
  .mr-5-md {margin-right:3rem !important;}
  .mt-0-md {margin-top:0 !important;}
  .mt-5-md {margin-top:3rem !important;}
  .mb-0-md {margin-bottom:0 !important;}
  .mb-5-md {margin-bottom:3rem !important;}
  .mx-0-md {margin-inline:0 !important;}
  .mx-1-md {margin-inline:.5rem !important;}
  .mx-2-md {margin-inline:1rem !important;}
  .mx-3-md {margin-inline:1.5rem !important;}
  .mx-4-md {margin-inline:2rem !important;}
  .mx-5-md {margin-inline:3rem !important;}
  .my-0-md {margin-block:0 !important;}
  .my-1-md {margin-block:.5rem !important;}
  .my-2-md {margin-block:1rem !important;}
  .my-3-md {margin-block:1.5rem !important;}
  .my-4-md {margin-block:2rem !important;}
  .my-5-md {margin-block:3rem !important;}


  .bgy-0-md {background-position-y: 0% !important;}
  .bgy-5-md {background-position-y: 5% !important;}
  .bgy-10-md {background-position-y: 10% !important;}
  .bgy-20-md {background-position-y: 20% !important;}
  .bgy-30-md {background-position-y: 30% !important;}
  .bgy-40-md {background-position-y: 40% !important;}
  .bgy-50-md {background-position-y: 50% !important;}
  .bgy-60-md {background-position-y: 60% !important;}
  .bgy-70-md {background-position-y: 70% !important;}
  .bgy-80-md {background-position-y: 80% !important;}
  .bgy-90-md {background-position-y: 90% !important;}
  .bgy-100-md {background-position-y: 100% !important;}

  .bgx-0-md {background-position-x: 0% !important;}
  .bgx-5-md {background-position-x: 5% !important;}
  .bgx-10-md {background-position-x: 10% !important;}
  .bgx-20-md {background-position-x: 20% !important;}
  .bgx-30-md {background-position-x: 30% !important;}
  .bgx-40-md {background-position-x: 40% !important;}
  .bgx-50-md {background-position-x: 50% !important;}
  .bgx-60-md {background-position-x: 60% !important;}
  .bgx-70-md {background-position-x: 70% !important;}
  .bgx-80-md {background-position-x: 80% !important;}
  .bgx-90-md {background-position-x: 90% !important;}
  .bgx-100-md {background-position-x: 100% !important;}

  .row {flex-direction: column;}
  .flex-direction-md-column {flex-direction: column;}
  .align-items-end .col {display: flex; justify-content: flex-end; flex-direction: column;}

  .btn {font-size: .8rem;}
  .carousel .carousel-caption {padding: 2rem !important;}

}

@media (max-width: 558px) {
  h0, h1 {font-size: 2.5rem;}
  h2 {font-size: 2rem;}
  .btn {margin-top: .5rem;}
}

@media (max-width: 320px) {

}




/*************NAVIGATION BAR*************/

:root {--navh:5rem;}

html:has(.hero:hover) .navbar {/*opacity: .1;*/}

.navbar {transition:1s all; background: white; height:var(--navh); width:max-content; border-radius: calc(var(--boradius) * 2); position: fixed; top: 2rem; left:50%; transform:translateX(-50%) scale(.9); transform-origin: top; z-index: 999; display: flex; flex-direction: row; padding-inline:2rem;  flex-wrap: nowrap;}
.navbar a, .navbar>li>a {text-transform:unset;}
.navbar a:before {display: none;}
.navbar .navbar-brand {width: calc(var(--navh) * 2.5); padding: 0; margin: 0 0 0 0;}
.navbar .navbar-brand img {width:100%; margin-top:-3px; transition:var(--trans);}
.navbar .nav-toggler {display:none;}
.navbar .navbar-nav {transition:1s all; margin-left:2rem; display: flex; flex-direction: row; align-content: center; justify-content: space-around;}
.navbar .navbar-nav > .nav-item.has_childs > .nav-link:after {content: "\f078"; font:var(--fonticon); border:none; transition:var(--trans); font-size: .8rem; margin-left: .5rem;}
.navbar .navbar-nav > .nav-item.has_childs.show > .nav-link:after {transform: rotate(-180deg); /*background: white; transform: translateX(-5rem) translateY(3.5rem) scale(1) rotate(45deg); font-size: 0; width: 1rem; height: 1rem;*/}
.navbar .navbar-nav :is(.nav-item > .nav-link:hover, .nav-item.active > .nav-link) {color:var(--primary);}
.navbar .navbar-nav > .nav-item > .nav-link {font-weight:500; transition:var(--trans); margin-left:.5rem; padding:1rem 1.5rem; line-height:normal; color:var(--dark); font-size:1.1rem; display: flex; align-items: center;}
.navbar .navbar-nav .nav-item.no-child > ul, .navbar .navbar-nav .nav-item.no-child > .nav-link::after {display:none;}
.navbar .navbar-nav .dropdown-menu {background: white; border-radius: 1rem; position: absolute; margin-top: 1.5rem; width:max-content; padding:1rem; display: block; transition: .3s; transform: scale(0); transform-origin: top;}
.navbar .navbar-nav .dropdown-menu.show {transform:scale(1);}
.navbar .navbar-nav .dropdown-menu > li {}
.navbar .navbar-nav .dropdown-menu > li > a {transition:var(--trans); color:var(--dark); padding:.25rem 1rem;}
.navbar .navbar-nav .dropdown-menu > li > a:hover {color:var(--primary);}
.navbar .nav-contact {display:none;}
.navbar.scrolled:not(:hover) {opacity:.3;}
.navbar.scrolled:not(:hover,.open) .navbar-nav {overflow: hidden; max-width: 0; opacity: 0; margin:0;}
.navbar.bx:not(:hover) {top:-6rem;}

@media(max-width:1560px) {
    :root {--navh:4.5rem;}
    .navbar {padding-inline:1rem;}
    .navbar .navbar-nav .dropdown-menu {margin-top: 1rem; }
}

@media (min-width:768px) {
    .navbar .navbar-nav > .nav-item.nav-btn:last-child {margin-right: -.5rem;}
    .navbar .navbar-nav > .nav-item.nav-btn {margin-left: 1rem;}
    .navbar .navbar-nav > .nav-item.nav-btn > .nav-link:hover {background:var(--secondary);}
    .navbar .navbar-nav > .nav-item.nav-btn > .nav-link {background:var(--primary); border-radius:var(--boradius); color:var(--light);}
}

@media (max-width:767px) {
    :root{--navpads:2rem;}
    .navbar {max-height:calc(var(--navh) + var(--navpads)); overflow:hidden; opacity:1 !important; background:transparent; inset: 0; transform:none; height: 100%; border-radius: 0; width: 100vw; flex-direction: column; padding-inline:var(--navpads); padding-bottom:var(--navpads);}
    .navbar .nav-toggler {display:block; position: absolute; inset: 1rem var(--navpads) auto auto; height: var(--navh); color:var(--light); padding:0; font-size:1.5rem; display: flex; align-items: center; text-decoration:none; width: 3rem; display: flex; justify-content: flex-end;}
    .navbar .navbar-brand {display:flex; transition:var(--trans); position: absolute; inset: 1rem auto auto var(--navpads); height: var(--navh);}
    .navbar .navbar-brand img {object-fit: contain; filter:contrast(0) saturate(0) brightness(2);}
    .navbar .navbar-nav {flex-direction: column; width:100%; margin: calc(var(--navh) + 3rem) 0 0 0;}
    .navbar .navbar-nav .nav-item .nav-link {color:var(--light);}
    .navbar .navbar-nav > .nav-item > .nav-link {margin-left: 0; padding-inline:0; font-size:1.5rem; display: flex; justify-content: space-between;}
    .navbar .navbar-nav > .nav-item.has_childs > .nav-link:after {font-size:1rem; margin-right:5px;}
    .navbar .navbar-nav .dropdown-menu {inset:0 !important; border-radius:0; border-left:1px solid var(--light) !important; padding-block:0; max-height:0px; margin: 0 0 0 1rem; background: transparent; width: 100%; position: relative;}
    .navbar .navbar-nav .dropdown-menu.show {max-height:100%; padding-block:1rem;}
    .navbar .nav-contact {display:flex; flex-direction:column; width:100%;}
    .navbar .nav-contact li:has(a:empty) {display:none;}
    .navbar .nav-contact li {list-style:none;}
    .navbar .nav-contact li a {color:var(--light); padding-inline:0; letter-spacing:1px;}
    .navbar .nav-contact .contact li a:before {margin-right:.5rem;}
    .navbar .nav-contact .contact li {border-bottom: 1px solid var(--light); width: 100%; display: block; padding: .5rem 0;}
    .navbar .nav-contact .contact li:first-child {border-top: 1px solid var(--light); }
    .navbar .nav-contact .social {display:flex; gap:1rem; margin-top:2rem; justify-content: flex-start;}
    .navbar .nav-contact .social li {}
    .navbar .nav-contact .social li a {font-size:0; letter-spacing:0; line-height:normal; background:var(--primary); height:3rem; width:3rem; border-radius:50%; display:flex;align-items: center; justify-content: center;}
    .navbar .nav-contact .social li a:before {display:flex; font-size:1.5rem; align-items: center; justify-content: center; margin: 0;}


    .navbar.bx:not(.open) {top:-8rem !important;}
    html:not(:has(.hero)) .navbar, .navbar:is(.scrolled,.open) {background:var(--dark);}
    .navbar.open {max-height:100vh;}
    .navbar:not(.open) :is(.navbar-nav,.nav-contact) {overflow:hidden !important; max-height:0px;}
    .navbar.scrolled {box-shadow:0px 2px 10px rgba(0,0,0,0.1);}
}

@media (max-width:558px) {
    :root {--navh:3rem;}
    .navbar .nav-contact .contact li {padding:.75rem 0; line-height:1.5;}
}






/***************FOOTER*****************/

footer {position: relative; z-index: 5; border-top:1px solid;}
footer a {color:var(--dark) !important; transition: var(--trans); text-decoration: none !important; border:none !important;}
footer a:hover {color:var(--primary) !important;}
footer a:before {font-size: inherit !important;}
footer .row .col {padding:5rem;}
footer .row .col:not(:last-child) {border-right:1px solid;}
footer .socials {display: flex; gap:1rem;}
footer .socials a {display: flex; align-items: center; justify-content: center; font-size: 1.75rem; height: 4rem; width: 4rem; border-radius: 50%; border:1px solid var(--dark) !important; transition: var(--trans);}
footer .socials a:hover {background-color:var(--primary) !important; color:var(--light) !important;}
footer .socials a:before {margin: 0 !important;}
footer .socials a[href=''] {display: none;}

@media (max-width:767px) {
    footer .row .col {border-right:none !important;}
    footer .row .col:not(:last-child) {padding-bottom: 0;}
}


/***************RX-base*******************/

html.post main > .block-section {min-height: 100vh; display: flex; align-items: center;}
html.post main > .block-section > .block-section-container {width: 100%;}
html.post .navbar {display: none;}

:root {--herospacing: 2rem;}
body {transition: var(--trans); }
html:after, body:after {transition: var(--trans); opacity: 1; animation:bodybg-change 15s linear infinite; content:""; position: fixed; height: 100vh; inset:0; z-index: -1; background-image: url(""); background-size: cover !important; background-position: 50% 50% !important; background-repeat: no-repeat; background-attachment:scroll !important;}

@keyframes bodybg-change {
}

@keyframes blink { 50% { opacity:.1; } 100% {opacity:1;}}
html:before {filter:saturate(0) brightness(20); transition:var(--trans); content:""; position:fixed; inset:0; background:url("../../assets/images/icon-loader.gif") 50% 50% / 8rem no-repeat scroll transparent; z-index:2000;}
html.load:before {animation:blink 1s infinite linear; }
html.load body {background:var(--primary) !important; animation:unset !important;}
html.loading main > * {opacity: 0;}
html.load {overflow:hidden;}
html:not(.load):before {opacity:0 !important; z-index:-10 !important;}
html:not(.cms,.ready) body {opacity:0;}

@media (max-width:767px) {
    html:before {background-size:5rem !important;}
}


.hidden {transition: var(--trans); opacity: 0 !important;}
div.preload {display:none; flex-direction: row; flex-wrap:nowrap;}
div.preload * {flex:1; width:1%;}

video {width:100%; height: 100%; object-fit: cover;}
.bg-video {position: absolute; inset:0; height: inherit; width:100%; z-index: 0;}
.bg-video:before {content:""; background: black; opacity: .3; position: absolute; inset:0;}
.bg-fixed > .bg-video {position: fixed; height: 100%;}

img.white {filter:saturate(0) brightness(20);}
img.invert {filter:invert(1);}


main > .block-section {background-color: inherit; position: relative;}
main > .block-section > .block-section-container {z-index: 3; position: relative;}
main > .block-section:not(.full-width-all,.full-width-all-md) > .block-section-container {/*overflow-x: hidden;*/ max-width: 80vw; margin-inline:auto; padding-block:10rem;}
main .py-section {padding-block:5rem !important;}
main > .block-section .block-column .__col {padding-inline:0;}

.mx-auto {display: block;}

.border {border: var(--border) !important;}
.border-col .__col:not(:last-child) {border-right:var(--border) !important;}
.border-top {border-top:var(--border) !important;}
.border-bottom {border-bottom:var(--border) !important;}


.sticky-top {-webkit-position: sticky !important; position: sticky !important; top:0;}
.under {position: relative; z-index: 1;}
.above {position: relative; z-index: 3;}


@keyframes error {
  0% {transform: translateX(-3px);}
  10% {transform: translateX(3px);}
  20% {transform: translateX(-1px);}
  30% {transform: translateX(1px);}
  40% {transform: translateX(-2px);}
  50% {transform: translateX(2px);}
  100% {transform: translateX(0);}
}


.form-control {font-size: 1.2rem; border-radius: calc(var(--boradius) / 2); padding: 1rem; height: unset;}

.block-form {/*margin-top: 2rem;*/}
.block-form form {position: relative;}
.block-form form .form-border {border:1px solid; margin-inline:0; margin-bottom: 2rem;}
.block-form form .form-label {padding:1rem .8rem 1.5rem .8rem;}
.block-form form .form-label:has(+.form-group) {padding-bottom: 0;}
.block-form form .form-label small {display: block; padding-left: 1px; line-height: 1.3;}
.block-form form .form-group {padding-inline:0 !important; min-height: 3rem; padding-top:2rem; margin-bottom: 0;}
.block-form form .form-group:has(> .form-checkbox) {min-height: unset; padding-top: 0;}
.block-form form .form-group label {width: 100%; padding: 0; transition: var(--trans); z-index: 1; color:var(--custom4); font-size: 1rem; line-height: 1.1; position: absolute; min-height: inherit; display: flex; align-items: flex-start; height: 100%; margin: 0;}
.block-form form .form-group label:has(>a) {display: block !important;}
.block-form form .form-border .form-group label {padding: 0 .8rem; }
.block-form form .form-border .form-group select.form-control {padding-inline:.6rem !important;}
.block-form form .form-group label small {font-size: .6rem; margin-top: 3px; margin-left:auto; padding-left: .5rem; margin-bottom: -.3rem; text-align: right;}
.block-form form .form-group label small input[type="checkbox"] {margin-right: 2px;}
.block-form form .form-group label strong {margin-left: 5px;}
.block-form form .form-group textarea.form-control {min-height: 8rem;}
.block-form form .form-group textarea.form-control.lg {min-height: 15rem;}
.block-form form .form-group select.form-control {margin-top: -.5px;}
.block-form form .form-group .form-control[type='color'] {cursor: pointer; height: 4rem;}
.block-form form .form-group:has(.form-control[readonly]) {background-color: var(--opac1dark); cursor: no-drop;}
.block-form form .form-group .form-control[readonly] {cursor: inherit;}
.block-form form .form-group:has(.form-control[type='color']:not([required])) label {opacity: .4;}
.block-form form .form-group:has(.form-control[type='color']:not([required])) > input {pointer-events: none;}
.block-form form .form-group:has(.form-control[type='color']:not([required])) > input:before {content: ""; position: absolute; background: var(--light); inset: .8rem; opacity: .8;}
.block-form form .form-border .form-group .form-control {padding-inline: .8rem;}
.block-form form .form-group .form-control {padding: .8rem 0; border:none; z-index: 2; position: relative; border-bottom: 1px solid; background: transparent; border-radius: 0; line-height: normal; height: unset; min-height: inherit; box-shadow:none !important; outline:none !important;}
.block-form form .form-group .form-control[type='file'] {font-size: .8rem; margin-top: -1.5px;}
.block-form form .form-group.col-md-6:has(+ .col-md-6), .block-form form .form-group.col-md-4:has(+ .col-md-4) {/*border-right:1px solid;*/}
.block-form form .form-group.d-flex {display: flex; flex-direction: row;}
.block-form form .form-group.d-flex label {position: relative; margin:0 !important; color:var(--dark); padding-right: 0;}
.block-form form .form-group.d-flex .form-control {flex:1;}
.block-form form .form-group.captcha {border-bottom: 1px solid;}
.block-form form .form-group .form-checkbox {display: flex; cursor: pointer; margin-bottom: .5rem; align-items: center; border-bottom: 1px solid; padding-bottom: .5rem;}
.block-form form .form-group .form-checkbox label {color:var(--dark); margin: 0 !important; position: relative; line-height: 1.3;}
.block-form form .form-group .form-checkbox input[type="checkbox"] {transition: var(--trans); min-height: 1.25rem; justify-content: flex-start; width: 1.25rem; margin-inline: .4rem 1rem;}
.block-form form .form-group .form-checkbox input[type="checkbox"]:is(:focus,:active,:focus-within,.invalid):not(:checked) {box-shadow: 0 0 .5rem var(--danger) !important; background: var(--danger) !important;}
.block-form form .form-group .form-checkbox input[type="checkbox"]:is(:focus,:active,:focus-within,.invalid):checked {box-shadow: 0 0 .5rem var(--dark) !important; background: var(--dark) !important;}
.block-form form .form-group .form-checkbox.first {border-top: 1px solid !important; padding-top: .5rem;}
.block-form form :is(.form-group,.form-checkbox):has(.form-control.invalid) > label {animation: error .5s linear 1 forwards; color:var(--danger);}
.block-form form :is(.form-group,.form-checkbox):has(.form-control[required]) > label:before {content:"*"; margin-right: 5px;}


.block-form form:before {position: absolute; content:"EMAIL SENT"; font-size: 0px; display: flex; align-items: flex-start; justify-content: center; inset:auto 0 0 0; transition: var(--trans); transform: scale(0); transform-origin: bottom; filter: blur(2rem);}
.block-form form.loading:before {background: /*url("../../assets/images/icon-loader.gif")*/ 50% calc(100% - 4rem) / 8rem no-repeat scroll var(--light); opacity: .5; inset: 0; z-index: 10; /*cursor: wait;*/ transform: scale(1); filter: blur(0);}
.bg-custom6 .block-form form.loading:before {background-color:var(--custom6) !important;}
.block-form form.loading:not(.sent) > *:not(.captcha) * {pointer-events: none;}
.block-form form.loading.sent:before {text-transform: uppercase; font-weight: 700; font-size: 1.3rem; background: transparent; opacity: 1; top: auto; bottom: -4rem;}
.block-form form.authenticating .captcha {transform: translateX(-50%) scale(.6); z-index: 12;}
.block-form form .captcha {
  transition: var(--trans); max-width: 40rem; background-color: white; border-radius: var(--boradius); padding:2rem; border:1px solid var(--opac3dark); position: absolute; bottom: 0%; left: 50%; transform: translateX(-50%) scale(0); z-index: -1; transform-origin: bottom;
  * {margin:0;}
  .close {font-size: 1rem; text-decoration: none; border:none; cursor: pointer; position: absolute; right: -1rem; top: -1rem; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--dark); color: var(--light) !important; height: 3rem; width: 3rem; opacity: 1;}
  .title {
    display: flex; align-items: center; justify-content: space-between; gap:1rem;
  }
  .text {
    display: flex; align-items: center; justify-content: space-between; gap:1rem; margin-top:0;
    h5 {flex:1;}
    .base {color:var(--opac3dark); border:1px solid; width: 6rem; height: 6rem; display: flex; align-items: center; justify-content: center; padding: 1rem; border-radius: 50%;}
  }
  .body {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: nowrap; gap:1rem; margin-top:1rem;
    .option {color:var(--opac5dark); transition: var(--trans); cursor: pointer; flex:1; background: var(--opac1dark); width: 6rem; height: 6rem; display: flex; align-items: center; justify-content: center; padding: 1rem; border-radius: 50%; position: relative; overflow: hidden;}
    .option:before {content:""; opacity: .5; background: url('../../assets/images/dots.png') 50% 50% / 2.5rem repeat scroll transparent; position: absolute; inset:0;}
    .option:is(.active,:active,:focus,:focus-within) {font-size: 1.7rem;}
    .option.invalid:before {background-color: var(--danger);}
    .option.success:before {background-color: var(--success);}
  }
}
.block-form form .captcha:has(.option:is(.invalid,.success)) > *:not(.close) {pointer-events: none !important; opacity: .5;}
.block-form form .captcha:has(.option:is(.invalid,.success)) {cursor: wait;}
.block-form form .captcha:has(.option.invalid) .title h6:after {content:"[INVALID, TRY AGAIN]"; color:var(--danger); margin-left: 5px; font-weight: 900;}
.block-form form .captcha:has(.option.success) .title h6:after {content:"[SUCCESS, PLEASE WAIT]"; color:var(--success); margin-left: 5px; font-weight: 900;}
.block-form form .captcha:has(.option.success) .close {display: none; pointer-events: none !important; color:var(--dark) !important;}

@media (min-width:768px) {
  .block-form form .captcha .body:has(.option:hover) .option:not(:hover) {color:var(--opac2dark);}
  .block-form form .form-group:last-child, .block-form form .form-group.last {margin-bottom: 0;}
  .block-form form .form-group:has(.form-control:focus, .form-control:active, .form-control:focus-within, .form-control:not(:placeholder-shown)) label {font-size: .8rem; min-height: 0; margin-top: -.8rem; margin-left: 0 !important;}
  .block-form form .form-group:last-child:not(.col-md-6,.col-md-4) .form-control, .block-form form .form-group.last .form-control {border-bottom: none !important;}
}
@media (max-width:767px) {
  :is(html,body):has(.block-form form .captcha) {overflow: hidden;}
  .block-form form .captcha {max-width: 100%; position: fixed; top:50%; bottom: auto; transform-origin: center;}
  .block-form form .captcha .close {font-size: 1rem; height: 2rem; width: 2rem; right: -.5rem; top: -.5rem;}
  .block-form form .captcha :is(.text, .body) {gap:.5rem;}
  .block-form form .captcha :is(.text .base, .body .option) {width: 4rem; height: 4rem;}
  .block-form form .captcha .body .option:before {opacity: .3;}
  .block-form form.authenticating .captcha {transform: translate(-50%, -50%) scale(.7);}
  .block-form form .captcha .title {margin-bottom: .5rem;}

  html:has(.form-control:focus, .form-control:active, .form-control:focus-within) .tooltip {display: none;}
  .block-form form .form-group:last-child {margin-bottom: 0;}
  .block-form form .form-group:last-child .form-control {border-bottom: none;}
  .block-form form .form-group label {font-size: .8rem; position: relative; min-height: unset;}
  .block-form form .form-group .form-control {font-size: .9rem;}
  .block-form form .form-group .form-control .form-checkbox label {font-size: .8rem;}
  .block-form form .form-group select.form-control {margin-inline:-4px;}
}

.block-tabs .nav-tabs {border: none;}
.block-tabs .nav-tabs .nav-item:before {display: none;}
.block-tabs .nav-tabs .nav-item {padding-right:.5rem;}
.block-tabs .nav-tabs .nav-link {border-radius: 0; background-color: var(--light); border: 1px solid var(--opac3dark); border-bottom-color: var(--dark);}
.block-tabs .nav-tabs .nav-link.active {border-color:var(--dark); border-bottom-color: var(--light); color:var(--primary);}
.block-tabs .nav-tabs .nav-link:not(.active):hover {background-color: var(--opac1dark);}
.block-tabs .tab-content {border:1px solid; background-color: var(--light);}

.tooltip.bs-tooltip-right * {text-align: left !important;}
.tooltip.bs-tooltip-right p {font-size: .7rem !important;}

.no-border-right {border-right:none !important;}

.pull-middle .block-column {align-items: center; min-height: 100%; /*height: 100%;*/}
.pull-middle .__col .col-section {display: flex; align-items: center; flex-wrap: wrap; flex-direction: column; justify-content: center; height: 100%;}
.d-flex.flex-column {flex-direction: column;}
.d-flex.justify-end {justify-content: flex-end;}

.slick {width: 100%; overflow: hidden;}
.slick :is(.slick-list,.slick-track) {display: flex;}
.slick .slick-dots {display: flex; flex-direction: row; justify-content: center; width: 100%; gap:.5rem;}
.slick .slick-dots li:before {display:none;}
.slick .slick-dots li button {display: flex; box-shadow: none; outline:none; border:none; width: .75rem; height: .75rem; border-radius: 50%; background-color: var(--custom4); font-size: 0; transition: var(--trans); opacity: .6;}
.slick .slick-dots li.slick-active button {background-color: var(--dark);}
.slick .slick-dots li:hover button {opacity: 1;}

.bg-image {background-size: cover; background-repeat: no-repeat;}
.bg-fixed {background-attachment: fixed;}
.bg-contain {background-size: contain !important;}

table td {overflow-wrap:anywhere;}

/***************customs*******************/

/* main:before {content:""; background: url("../../files/bg-noise.png") 10rem 10rem / contain repeat; position: fixed; inset:0; z-index: 1;} */

span.date {line-height: normal; margin-inline: .5rem auto; border: 1px solid var(--opac3light); border-radius: 5px; padding: 2px 4px; font-size: 1rem; letter-spacing: 1px; font-family: var(--font2); margin-bottom: 1rem; display: inline-block;}

.text-outline * {color: transparent !important; -webkit-text-stroke: 1.5px var(--dark); text-stroke: 1.5px var(--dark); display: block;}
.text-primary.text-outline * {color:transparent !important; -webkit-text-stroke: 1.5px var(--primary); text-stroke: 1.5px var(--primary);}
.text-secondary.text-outline * {color:transparent !important; -webkit-text-stroke: 1.5px var(--secondary); text-stroke: 1.5px var(--secondary);}
.text-light.text-outline * {color:transparent !important; -webkit-text-stroke: 1.5px var(--light); text-stroke: 1.5px var(--light);}

.hero {height: 130vh;}
.hero .text-outline * {font-size: 12rem; font-weight: 900; letter-spacing: 0px; text-wrap-mode:nowrap;}
.hero > .block-section-container {height: 100vh; -webkit-position: sticky !important; position: sticky !important; top:0;     display: flex; align-items: center; justify-content: center;}
.hero .bg-video:before {opacity: .3;}

.sec-works .__col {transition: var(--trans); overflow: hidden;}
.sec-works .col-section .block-list-custom {background: var(--light); }
.sec-works .col-section .block-list-custom .list-item {height: 30vh; transition: var(--trans); cursor: pointer; border-top:var(--border); padding: 2rem; display: flex; justify-content: center; align-items: center;}
.sec-works .col-section .block-list-custom .list-item img {width: 70%; filter:saturate(0) brightness(0); transition: var(--trans);}
.sec-works .col-section .block-list-custom .list-item * {margin-bottom: 0;}
.sec-works .col-section .block-list-custom .list-item:is(.active,:hover) {background-color: var(--primary); color:var(--light);}
.sec-works .col-section .block-list-custom .list-item:is(.active,:hover) img {filter:contrast(0) saturate(0) brightness(20);}
.sec-works .col-section:has(.list-item:is(:hover)) .block-list-custom .list-item:not(:hover) {opacity: .2;}
.sec-works .col-section.list-custom-section {position: relative; display: flex; height: 100%; width: 100%;}
.sec-works .col-section.list-custom-section .list-custom-container {transition: var(--trans); position: absolute; transform-origin: right bottom; display: flex; height: 100%; width: 100%;}
.sec-works .col-section.list-custom-section .list-custom-container:not(.active) {opacity: 0; z-index: -1;}
.sec-works .col-section.list-custom-section .list-custom-container * {transform-origin: right bottom; }
.sec-works .col-section.list-custom-section .list-custom-container:not(.active) * {transform: scale(0);}
.sec-works .col-section.list-custom-section .list-custom-container:before {transition: var(--trans); content:""; background: var(--black); position: absolute; inset:0; z-index: 2; opacity: .8;}
.sec-works .col-section.list-custom-section .list-custom-container:hover:not(:has(.content:hover)):before {opacity: .3;}
.sec-works .col-section.list-custom-section .list-custom-container :is(video,img) {position: absolute; height: 100%; width: 100%; object-fit: cover; object-position: center; z-index: 1;}
.sec-works .col-section.list-custom-section .list-custom-container img {object-position: top center; transition:10s object-position; }
.sec-works .col-section.list-custom-section .list-custom-container.active:not(:has(.content:hover)) img {/*object-position: bottom center;*/}
.sec-works .col-section.list-custom-section .list-custom-container.active:not(:has(.content:hover)):hover img {object-position: bottom center;}
.sec-works .col-section.list-custom-section .list-custom-container:hover:not(:has(.content:hover)) .content {filter:blur(3px) opacity(.3);}
.sec-works .col-section.list-custom-section .list-custom-container .content {text-align: right; color:var(--light); position: absolute; z-index: 3; inset:auto 5rem 5rem auto; width: 50%; border-bottom: var(--borderlight); transition: var(--trans);}
.sec-works .col-section.list-custom-section .list-custom-container .content :is(p,h5,ul) {margin-top: 1.5rem;}
.sec-works .col-section.list-custom-section .list-custom-container .content ul li {border-top:var(--borderlight); text-transform: uppercase; padding: .75rem 1px; letter-spacing: 2px;}
.sec-works .col-section.list-custom-section .list-custom-container .content ul li:before {display: none;}

.reviews .__col {transition: var(--trans);}
.reviews .__col:not(.slick-current + .__col) .col-section .block-button {transform: scale(0); overflow: hidden; opacity: 0;}
.reviews :is(.__col.slick-current, .__col:has(~ .slick-current)) {transform-origin: 20% 50%;}
.reviews .__col.slick-current + .__col ~ .__col {transform-origin: 80% 50%;}
.reviews .__col:not(.slick-current + .__col) .col-section:before {transform: scale(0);}
.reviews .__col .col-section:before {content:"\f10d"; font:var(--fonticon); font-size: 8rem; transform: scaleX(.9); margin-bottom: 2rem; opacity: .1; margin-left: -4rem; transition: var(--trans);}
.reviews .__col .col-section {padding: 5rem 0rem 5rem 0rem;}
.reviews .__col .col-section .block-text :is(h1,h2,h3,h4) {width: 80%;}
.reviews .__col .col-section .block-text :is(h5,p) {width: 60%; margin-left: auto;}
.reviews .__col .col-section .block-button {margin-right: -4rem; max-height: 20rem; transition: var(--trans); margin-left: auto;}


.box1 {width: 80%; position: absolute; inset: 0 auto auto 0;}
.bg-pan {background-position-x:0; animation:pan-lr 160s linear infinite;}

@keyframes pan-lr {
  50% {background-position-x:100%;}
}

.pop {transition: var(--trans) all, 0s background-color 0s; inset:0; background-color: transparent; -webkit-backdrop-filter: blur(.2rem); backdrop-filter: blur(.2rem); position: fixed; z-index: 20000; display: flex; align-items: center; justify-content: center; align-content: center; overflow: hidden; transform: scale(0); transform-origin: center; opacity: 0;}
.pop.show {transform: scale(1); opacity: 1; background-color: var(--opac1dark); transition: var(--trans) all, var(--trans) background-color var(--trans);}
.pop .close {z-index: 10 !important; font-size: 1rem; text-decoration: none; border:none; cursor: pointer; position: absolute !important; right: -1rem; top: -1rem; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--dark); color: var(--light) !important; height: 3rem; width: 3rem; opacity: 1;}
.pop .block-section {min-width: 40vw; max-width: 80vw; background: url("../../files/blue1.jpg") 50% 50% / cover no-repeat scroll transparent; position: relative; border-radius: var(--boradius); color: var(--light);}
.pop .block-section-container {padding: 3rem; border-radius: inherit; background:url("../../files/pop-cute.gif") -5% 90% / 40vh no-repeat scroll transparent;}
.pop .block-section-container:before {position: absolute; content:""; inset:0; z-index: :1; background: var(--dark); opacity: .4; border-radius: inherit;}
.pop .block-section-container *:not(.close) {position: relative; z-index: 3; }


.cards-service {overflow-x: auto; scroll-snap-type:x mandatory;}
.cards-service .__col {scroll-snap-align:start; transition: var(--trans); color:var(--custom2); display: flex; flex-direction: column; padding: 3rem 2rem !important; border:1px solid; border-right: none;}
.cards-service .__col:is(:hover,:focus) {color:var(--dark); border-color:var(--dark); background-color: var(--opac1dark); z-index: 3;}
.cards-service .__col:is(:hover,:focus) + .__col {border-left-color: var(--dark);}
.cards-service:has(.__col:hover) .__col:not(:hover):not([class*='bg-']) {color:var(--custom4); filter:saturate(0) contrast(0.7) opacity(.6);}
.cards-service .__col:last-child {border-right:1px solid !important;}
.cards-service .__col .block-text h6 {font-weight: 300;}
.cards-service .__col .block-text ul {border-block:1px solid; margin-top: .5rem; padding-bottom: 0 !important;}
.cards-service .__col .block-text ul li {border-bottom:1px solid; padding-block: .5rem; line-height: 1.4;}
.cards-service .__col .block-text ul li:before {display: none;}
.cards-service .__col .block-text ul li a {border-color:transparent; display: inline-block;}
.cards-service .__col .block-text ul li a:hover {border-color:var(--primary);}
.cards-service .__col .block-text ul li:last-child {border-bottom: none;}
.cards-service .__col .block-text ul li:has(ul) {padding-bottom: 0; padding-right: 0;}
.cards-service .__col .block-text ul ul {border-bottom: none; border-right:none; border-left:1px solid; margin-left: .5rem; position: relative;}
.cards-service .__col .block-text ul ul:before {height: 1px; left: -.6rem; top: -1px; border: inherit; content: ""; position: absolute; right: 0;}
.cards-service .__col .block-text ul ul li {padding:.5rem .4rem;}
.cards-service .__col .block-image {border:1px solid; margin-bottom: 1.5rem; height: 15rem; background-color: var(--custom6); overflow: hidden;}
.cards-service .__col .block-image img {height: 100%; object-fit: contain;}
.cards-service .__col .block-button {margin-top: auto;}
.cards-service .__col .block-button .btn {margin-top: 1rem;}
.cards-service .__col .price {transform-origin: bottom right; transform: scale(0); transition: var(--trans); background-color: var(--custom5); color:var(--dark); margin: 0; position: absolute; z-index: 5; right: 2rem; letter-spacing: 0; padding: 1rem; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 50% 50% 0; border:1px solid var(--dark); width: 7rem; height: 7rem; margin-top: -1rem; overflow-wrap: anywhere; line-height: 1; text-align: center;}
.cards-service .__col:is(:hover,:focus) .price { transform: scale(1); background-color: var(--primary); color:var(--light);}
.cards-service .__col .price small {display: block; font-size: .6rem; margin-bottom: 5px; line-height: 1.3;}
.cards-service .__col .price em {font-size: .7rem; font-style: normal; text-decoration: line-through; color: orange; margin-top: 1px;}
.cards-service .__col .price strong {color:inherit; font-size: .6rem; margin-block: 5px 0;}

.cards-service:has(.flow) {border: 1px solid;}
.cards-service .flow {overflow-x: auto; display: flex; flex-wrap: nowrap; scroll-snap-type:x mandatory;}
.cards-service .flow::-webkit-scrollbar {width: .4rem; height: .4rem; transition:var(--trans); border:1px solid var(--dark);}
.cards-service .flow::-webkit-scrollbar-track {background: var(--dark);}
.cards-service .flow::-webkit-scrollbar-thumb {background: var(--secondary); border-radius:0; cursor:pointer;}
.cards-service .flow .block-text:last-child {margin-top: auto; margin-bottom: 0;}
.cards-service .flow .block-text p ~ :is(small,strong) {margin-top: 1rem; letter-spacing: .5px; color:var(--custom4);}
.cards-service .flow .__col {position: relative; border-block:none !important; overflow: hidden;}
.cards-service .flow .__col:before {left: -2rem; letter-spacing: -2rem; transition: var(--trans); position: absolute; content: ""; z-index: 0; line-height: 1; font-size: 10rem; font-weight: 900; opacity: .1; top: 0;}
.cards-service .flow .__col:hover:before {left:0rem; letter-spacing: -1rem; opacity: .1;}
.cards-service .flow .__col:nth-child(1):before {content: "A1";} .cards-service .flow .__col:nth-child(2):before {content: "A2";} .cards-service .flow .__col:nth-child(3):before {content: "B1";} .cards-service .flow .__col:nth-child(4):before {content: "B2";} .cards-service .flow .__col:nth-child(5):before {content: "C1";} .cards-service .flow .__col:nth-child(6):before {content: "C2";} .cards-service .flow .__col:nth-child(7):before {content: "D1";} .cards-service .flow .__col:nth-child(8):before {content: "D2";}
.cards-service .flow .__col:first-child {border-left: none !important;}
.cards-service .flow .__col:last-child {border-right: none !important;}
.bg-primary {
  .cards-service, .cards-service .__col {border-color: var(--opac3light);}
  .cards-service .__col:is(:hover,:focus) + .__col {border-left-color: var(--opac3light);}
  .cards-service .flow .__col:before {color:var(--opac5light);}
  .cards-service .__col .block-text.text-primary * {color:var(--light) !important;}
  .cards-service .flow .block-text p ~ :is(small,strong) {color:var(--opac6light);}
}

html, body, main, .block-section, .block-section-container {height: 100%;}
#question:is(.loading,.loaded) .options {transform: scale(0);}
#question.loaded .answer {opacity: 1;}
.question-box {display: flex; flex-direction: column; gap:2rem; margin-bottom: 3rem; width: 100%;
  .title {display: flex; justify-content: space-between; align-items: center; gap: 1rem;}
  .text:before {content:"\f10d"; font: var(--fonticon); font-size: 5rem; opacity: 1; color:var(--primary); margin-left: -5rem; margin-top: -2.5rem;}
  .text {display: flex; gap: 1rem; border: 4px solid var(--opac1light); border-radius: var(--boracus); padding: 2rem;}
  .text :last-child {margin-bottom: 0;}
  .options {transition: var(--trans); margin-bottom: auto; display: flex; flex-direction: row; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: stretch;
    a {background: linear-gradient(to bottom, var(--success), var(--dark)); flex: 1 calc(50% - 1rem); border-bottom: none !important; font-size: 1.2rem; border-radius: var(--boradius); padding: 1rem 4rem; text-align: center; display: flex; align-items: center; justify-content: center; min-height: 6rem; font-weight: 500;}
    a:nth-child(2) {background: linear-gradient(to bottom, var(--warning), var(--dark));}
    a:nth-child(3) {background: linear-gradient(to bottom, var(--danger), var(--dark));}
    a:nth-child(4) {background: linear-gradient(to bottom, var(--info), var(--dark));}
    a:is(:hover,:active,:focus-within) {transform: translateY(-3px); box-shadow: 0rem .5rem .5rem var(--opac1light);}
  }
  .options:has(a:is(:hover,:active,:focus-within)) a:not(:hover,:active,:focus-within) {filter: saturate(0.5) opacity(.6);}
  .options:not(:has(a:nth-child(4))) a {flex:1; min-height: 10rem;}
  .answer {animation:error .5s linear 2 forwards; transition: var(--trans); opacity: 0; background: var(--primary); border-radius: var(--boradius); overflow: hidden; padding: 2rem; border: 1px solid var(--opac1light); display: flex; gap: 2rem;
    .content {flex:1;}
    .content :last-child {margin-bottom:0;}
    .stat {margin-bottom:0;}
    .stat:before {font-weight: 900; letter-spacing: 2px;}
    img {border-radius: inherit; object-fit: cover; width: 30%; max-height: 15rem;}
  }
  .answer.correct {box-shadow: 0 0 1rem var(--success);}
  .answer.correct .stat:before {content:"CORRECT!"; color:var(--success);}
  .answer.wrong .stat:before {content:"WRONG!"; color:var(--danger);}
}
.question-nav {display: flex; justify-content: center; width: 100%; gap: 1rem; margin-top: auto;
  a {width: 2.5rem; height: 2.5rem; background: var(--opac1dark); display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid var(--opac1light); line-height: normal; text-align: center; }
  a:hover {background-color: var(--primary);}
  .end, .summary {width: unset; border-radius: var(--boradius); padding: 1rem; font-size: .7rem; letter-spacing: 1px; }
  .end {background-color: var(--custom1); margin-right: auto;}
  .summary {background-color: var(--primary); margin-left: auto;}
  .nums {display: flex; gap:.5rem;}
  .nums a.active {background-color: var(--opac6dark); font-weight: 600;}
  .nums a[data-result='0'] {border-color: maroon !important;}
  .nums a[data-result='1'] {border-color: var(--success) !important;}
}


/***************RX*******************/

@media (prefers-reduced-motion: reduce) {
    .fade {
        transition: opacity .15s linear;
    }
}

@media (max-width:1560px) {

}


@media (min-width:993px) {

}

@media (max-width: 992px) {
}

@media (min-width: 768px) {
  .slick :is(.slick-list,.slick-track) {width: 100% !important;}
  .reviews :is(:is(.__col.slick-current, .__col:has(~ .slick-current)), .__col.slick-current + .__col ~ .__col) {transform: scale(.6); filter:blur(5px);}
}


@media (max-width: 767px) {

  main > .block-section:not(.full-width-all,.full-width-all-md) > .block-section-container {padding-block:5rem;}
  main > .block-section:is(.full-width-all-md) > .block-section-container {max-width: 80vw; margin-inline:auto; padding-block:5rem;}
  main .py-section {padding-block:5rem;}
  .border-col .__col:not(:last-child) {border-right:none !important; border-bottom:var(--border) !important;}

  .sec-works .col-section {overflow: hidden;}
  .sec-works .col-section .block-list-custom {display: flex; flex-wrap: wrap; margin-inline:-1px;}
  .sec-works .col-section .block-list-custom .list-item {padding: 1rem; flex:1 calc(100% / 3); display: flex; justify-content: center; height: 15vh; border:.5px solid !important;}
  .sec-works .col-section .block-list-custom .list-item img {width: 5rem;}
  /* .sec-works .col-section .block-list-custom .list-item:not(:nth-child(3),:nth-child(6)) {border-right:1px solid;} */
  .sec-works .col-section .block-list-custom .list-item :is(h1,h2,h3,h4) {font-size: 1.1rem; letter-spacing: 1px;}
  .sec-works .col-section .block-list-custom .list-item:after {display: none;}
  .sec-works .col-section .block-list-custom .list-item:nth-child(n+4) {/*display: none;*/}
  .sec-works .col-section.list-custom-section .list-custom-container .content {width: calc(100% - 4rem); text-align: left;}
  .sec-works .col-section.list-custom-section .list-custom-container .content span.date {margin-left: 0;}
  .sec-works .sticky-top {height:calc(100vh - 15vh) !important;}

  .reviews .__col {/*flex: 1 100% !important; max-width: 100% !important; */width: 100vw !important;}
  .reviews .__col .col-section {max-width: 80vw; margin-inline:auto;}
  .reviews .__col .col-section:before {margin-left: -.7rem;}
  .reviews .__col .col-section .block-text :is(h1,h2,h3,h4) {width: 100%;}
  .reviews .__col .col-section .block-text :is(h5,p) {width: 100%;}
  .reviews .__col .col-section .block-button {margin-right: 0; margin-top: 2rem; padding-right: .5rem;}
  .reviews .__col.slick-current .col-section:before {transform: scale(1) !important;}
  .reviews .__col.slick-current .col-section .block-button {transform: scale(1) !important; opacity: 1 !important;}

  .reviews .__col.slick-current + .__col .col-section:before {transform: scale(0);}
  .reviews .__col.slick-current + .__col .col-section .block-button {transform: scale(0); opacity: 0;}


  .block-section-container:has(>.cards-service) { overflow-x: auto;}
  .cards-service {display: flex; flex-wrap: nowrap; flex-direction: row; width: 100%;}
  .cards-service:has(.flow) {}
  .cards-service .__col {min-width: calc(100% - 1px); filter: none !important; color:var(--dark) !important; }
  .cards-service .flow .__col {min-width: 100%;}

  html, body, main, .block-section, .block-section-container {height: unset;}
  .question-box .text:before {margin-left: -3rem; position: absolute; z-index: -1;}
  .question-box .answer {flex-wrap: wrap;}
  .question-box .answer img {width: 100%;}
  .question-nav :is(.end, .summary) {flex:1;}
  .question-nav .summary {display: flex; flex-direction: column; flex-wrap: nowrap;}
  .question-nav .nums { gap: .25rem; flex-wrap: wrap; justify-content: center;}
}

@media (max-width: 558px) {
  /* .tooltip {display: none !important;} */
  .sec-works .sticky-top {height: 100vh !important;}
  .sec-works .col-section .block-list-custom .list-item {height: 10vh;}
  .sec-works .col-section.list-custom-section .list-custom-container .content {right: 2rem;}
}
