/* Theme base styles */

/* Tools
Any animations, or functions used throughout the project.
Note: _macros.css needs to be imported into each stylesheet where macros are used and not included here
*/

/* Generic
This is where reset, normalize & box-sizing styles go.
*/

*, *:before, *:after {
  box-sizing: border-box;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/

/* CSS variables */

:root {
  --column-gap: 2.13%;
}

/* Mobile layout */

.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.row-fluid [class*='span'] {
  min-height: 1px;
  width: 100%;
}

/* Desktop layout */

@media (min-width: 768px) {
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  .row-fluid .span11 {
    width: calc(91.66% - var(--column-gap) * 0.0833);
  }

  .row-fluid .span10 {
    width: calc(83.33% - var(--column-gap) * 0.166);
  }

  .row-fluid .span9 {
    width: calc(75% - (var(--column-gap) * 0.25));
  }

  .row-fluid .span8 {
    width: calc(66.66% - var(--column-gap) * 0.333);
  }

  .row-fluid .span7 {
    width: calc(58.33% - var(--column-gap) * 0.4166);
  }

  .row-fluid .span6 {
    width: calc(50% - var(--column-gap) * 0.5);
  }

  .row-fluid .span5 {
    width: calc(41.66% - var(--column-gap) * 0.5833);
  }

  .row-fluid .span4 {
    width: calc(33.33% - var(--column-gap) * 0.6668);
  }

  .row-fluid .span3 {
    width: calc(25% - var(--column-gap) * 0.75);
  }

  .row-fluid .span2 {
    width: calc(16.66% - var(--column-gap) * 0.8333);
  }

  .row-fluid .span1 {
    width: calc(8.33% - var(--column-gap) * 0.9166);
  }
}
.content-wrapper {
  margin: 0 auto;
  padding: 0 15px;
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
/*     padding: 0; */
  }
}

.dnd-section > .row-fluid {
  margin: 0 auto;
}

.dnd-section .dnd-column {
  padding: 0 15px;
}

@media (max-width: 767px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
}

/* Elements
Base HMTL elements are styled in this section (<body<, <h1>, <a>, <p>, <button> etc.)
*/

body {
  line-height: 1.4;
  overflow-wrap: break-word;
}

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

/* Paragraphs */
*+p{
  padding-top: 20px;
}

p {

  margin: 0;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  margin: 0 0 1rem;
}

/* Lists */

ul,
ol {
  margin: 0 0 1rem;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 2px solid;
  margin: 0 0 1.4rem;
  padding-left: 0.7rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
  max-width: 100%;
  display: inline-block;
  height: auto;
  line-height: 0;
}
.button a, a.button, .buttonv2 a, a.buttonv2 {font-size: 16px;line-height: 1; display: inline-block; text-align: center; letter-spacing: 0.06em; color: #fff;  background-color: #F85E31;
  border-radius: 160px; padding:18px 28px; transition: all ease 0.3s; border: 1px solid #F85E31; font-weight: 500;}
.button a:hover, a.button:hover, .buttonv2 a:hover, a.buttonv2:hover {color: #F85E31;background-color: #FFFFFF;}

.buttonv2 a, a.buttonv2{ color: #262C3A; background-color: #7BEDF7; border: 1px solid #7BEDF7;}
.buttonv2 a:hover, a.buttonv2:hover{border-color: #7BEDF7; color: #262C3A; }

.btnLink a{font-size: 18px; line-height: 1.2; display: inline-block; font-weight: 700; font-family: NeueHaasGroteskText Pro; letter-spacing: 0.06em; color: #F85E31; transition: all ease 0.3s;}
.btnLink a:hover{color: #000;}
::-webkit-input-placeholder { opacity:1 !important; color: #000 !important; }
::-moz-placeholder { opacity:1 !important; color:#000 !important; }
:-ms-input-placeholder { opacity:1 !important; color:#000 !important; }

.hs-error-msgs { padding-top: 5px; line-height: 1;}
.hs-error-msg { font-size: 16px; line-height: 1; color: #f00;}

form .input { margin-right:0 !important; }
form fieldset { max-width:inherit !important; margin: 0 -15px !important  }
form fieldset.form-columns-1 .field { width:100% !important; }
form fieldset.form-columns-2 .field { width:50% !important; }
form fieldset.form-columns-3 .field { width:33.33% !important; }
form .field { padding:0 0 30px; }
form fieldset .field { padding-left:15px; padding-right:15px; }
form ul.multi-container { padding-top:10px; }
form ul.multi-container li { margin:5px 0; }
textarea, input[type="text"], input[type="number"], input[type="email"], input[type="tel"], select { background: transparent;  border: 0; border-radius: 0; border-bottom: 3px solid #F85E31;
  color: #000000; display: block;  font-size: 18px;  font-weight: 400;  line-height: 1;  margin: 0;  outline: none; padding: 12px 0; width: 100%!important; font-family: 'NeueHaasGroteskText Pro'; }

textarea { min-height:90px; }

input[type="submit"] { cursor: pointer; outline: none;  background-color: #F85E35;  border: 1px solid #f85e31;  border-radius: 160px;  color: #fff;  display: inline-block;  font-size: 16px;
  font-weight: 500; letter-spacing: .06em; line-height: 1;  padding: 18px 28px;  text-align: center; font-family: 'NeueHaasGroteskText Pro';  transition: all .3s ease; -webkit-transition: all .3s ease; 
  -moz-transition: all .3s ease; }
input[type="submit"]:hover { background: #fff; color: #f85e31; }

form input[type="radio"]+span,form input[type="checkbox"]+span { position: relative; display:block;  padding-left: 40px;  cursor:pointer;}
form input[type="radio"]+span:before,form input[type="checkbox"]+span:before { content: '';  color:#6b1631;  position:absolute;  left:4px;  top: 1px;  font-size:0; width: 24px;  height: 24px;
  display:block; border:2px solid #ccc;  transition:all ease .3s;  -webkit-transition:all ease .3s;  text-align:center;  line-height:14px;  border-radius: 4px;background-position: center center;
  background-repeat: no-repeat;  background-size: auto; }

form input[type="radio"]:checked+span:before { background: #F85E31; border-color:#F85E31;}

form input[type="checkbox"]:checked+span:before { border-color: #F85E31; font-size:12px;  background-color: #F85E31;  color:#fff;  letter-spacing: inherit; 
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFF' d='M0 11.522l1.578-1.626 7.734 4.619 13.335-12.526 1.353 1.354-14 18.646z'/%3E%3C/svg%3E");}

input[type="checkbox"], input[type=radio] { display: none;}

select {    background-repeat: no-repeat; background-size: 18px;  background-position: right center;  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' width='28px' height='16px' viewBox='0 0 28 16' enable-background='new 0 0 28 16' xml:space='preserve'%3E%3Cpolygon fill='%23F37422' points='25.9,0.4 14.2,11.9 2.1,0 0,2 12.1,14 14.2,16 16.3,14 28,2.5 '/%3E%3C/svg%3E");}
.input>ul { padding: 0; margin: 0; list-style: none;}
.input>ul>li+li{margin-top: 5px;}







@media (max-width:767px ) {

  form .field { padding:0 0 20px; }
  textarea, input[type="text"], input[type="number"], input[type="email"], input[type="tel"], select, {font-size: 16px; border-bottom: 2px solid #F85E31;}
  
  form fieldset.form-columns-2 .field { width:100% !important; }
  .actions{padding-top: 10px;}
  .hs-error-msg { font-size: 14px;}
   form input[type="radio"]+span:before,form input[type="checkbox"]+span:before{top: 1px; width: 20px; height: 20px;}
  
  form input[type=checkbox]+span, form input[type=radio]+span {padding-left: 36px;}
  
  
  select {  background-size: 16px;}


}
/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}

/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/

/* ----------- Header -----------  */

.header-section { background-color: #FFF; padding: 21px 0; }
.header-two-col {display: flex;flex-wrap: wrap;align-items: center; }
.header-left {width: 78px;}
.header-right {width: calc(100% - 78px);padding-left: 20px;}
.headernavigation .hs-menu-wrapper > ul > li > a {text-transform: none;display: inline-block;line-height: 1.22; font-weight: 500; font-family: 'NeueHaasGroteskText Pro'; font-size: 18px; color: #5A5A5A; letter-spacing: 0.08em; }
.headernavigation .hs-menu-wrapper > ul {display: flex;margin: 0;padding: 0;list-style: none;flex-wrap: wrap;justify-content: flex-end;align-items: center; }
.headernavigation .hs-menu-wrapper > ul > li {margin-left: 25px;margin-right: 25px; line-height: 0; }
.headernavigation .hs-menu-wrapper > ul > li > a:hover {   color: #000000; font-weight: 700; }
.headernavigation .hs-menu-wrapper > ul > li:last-child{margin-right: 0;}
.Fixed .header-section { background-color: #fff; }
.header-logo { line-height: 0;}

.childExpand { display: none; }

.headernavigation .hs-menu-wrapper>ul>li ul { margin-top: 12px;}
.headernavigation  {position: relative;}
.headernavigation .hs-menu-wrapper>ul>li ul {position: absolute;top: 100%;background-color: #343d4f;border-color: #343d4f;padding-top: 15px;padding-bottom: 15px;width: 232px;
  margin: 0; display: none;max-width: 100%;}
.headernavigation .hs-menu-wrapper>ul>li ul > li> a {background-color: transparent;font-weight: 500;color: #fff;display: block;padding: 10px 30px;line-height: 1.5;font-size: 15px !important;}
.headernavigation .hs-menu-wrapper>ul>li ul > li> a:hover {color: #7bedf8;}

.headernavigation .hs-menu-wrapper>ul>li>a {padding-bottom: 5px;padding-top: 5px;}
.headernavigation .hs-menu-wrapper>ul>li ul>li>a:hover {color: #7bedf8;}

@media (min-width: 992px) {

  .headernavigation .hs-menu-wrapper>ul>li:hover ul {display: block;}
  /*   .Fixed .header-section .headernavigation .hs-menu-wrapper > ul > li > a:hover {color: var(--blue-black);} */
  a.expandMenu , .closeIconB { display: none; }
  span.childExpand {display: none;}

  .headernavigation .hs-menu-wrapper>ul>li.active .product-first-section {display: block;}


}

@media (max-width: 1080px) {

  .headernavigation .hs-menu-wrapper > ul > li > a{font-size: 16px;}

  .headernavigation .hs-menu-wrapper>ul>li {margin-left: 10px;margin-right: 10px;}

}


@media (max-width: 991px) {
  .header-left { width: 60px;}
  .header-right {width: calc(100% - 60px);}

  .header-section .content-wrapper {max-width: 100%;}
  /*------------- expand menu ----------------  */
  /*-=-=-=-= Mobile menu JS USE  MENU ICON as '<a class="expandMenu"><i></i><i></i><i></i></a>' -=-=-=*/

  a.expandMenu { width: 30px; height: 30px; display: block; cursor: pointer; padding: 3px; position: absolute;  top: 28px;  right: 20px;}
  a.expandMenu i { position:relative; width: 30px; left:0; height: 4px; opacity:1; display: block; background: #262C3A; margin: 5px 0; transition:all ease 0.3s; -webkit-transition:all ease 0.3s; -moz-transition:all ease 0.3s; }
  a.expandMenu i:first-child {  margin-top: 0;}
  a.expandMenu.active i:first-child { transform: rotate(135deg); -webkit-transform: rotate(135deg); top: 10px; position: relative; }
  a.expandMenu.active i:nth-child(2) { position:relative; left:-46px; opacity:0; }
  a.expandMenu.active i:last-child { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); top: -8px; position: relative; }
  /*-=-=-=-= Mobile Submenu JS USE  SUBMENU ICON as '<a class="childExpand"><i></i><i></i></a>' -=-=-=*/
  .childExpand { cursor: pointer;height: 28px;margin: 0;padding: 0;position: absolute;right: 15px;text-align: center;top: 12px;width: 28px;    z-index: 999; }
  .childExpand i { position:relative; width: 15px; left:0; height: 1px; opacity:1; display: block; background:#fff; margin: 6px 0; transition:all ease 0.3s; -webkit-transition:all ease 0.3s; -moz-transition:all ease 0.3s; }
  .childExpand i + i { position: relative; transform: rotate(90deg); -moz-transform: rotate(90deg); -webkit-transform: rotate(90deg); top:-7px; }
  .childExpand.open i { transform: rotate(180deg); -moz-transform: rotate(180deg); -webkit-transform: rotate(180deg); }
  .childExpand.open i+i { transform: rotate(360deg); -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); }

  .childExpand { display: block; }

  .header-section {padding: 15px 0; position: relative;}
  .explore-title a span svg path { fill:var(--white); }
  .headernavigation .hs-menu-wrapper>ul>li>a {width: 100%;padding: 15px; font-size: 16px; color: #fff;}
  .headernavigation .hs-menu-wrapper>ul>li>a:hover{ color: #fff;}
  .headernavigation .hs-menu-wrapper>ul>li { margin: 0; width: 100%;}  
  .headernavigation .hs-menu-wrapper>ul>li + li { border-top: 1px solid rgb(255 255 255 / 20%);}
  .headernavigation{position: absolute; top: 100%; left: 0; width: 100%;  background-color: #f85e31;  z-index: 2;  display: none;}

  .childExpand svg {width: 28px;height: auto;}
  li.hs-item-has-children > a:after {display: none;}
  .headernavigation .hs-menu-wrapper>ul>li {position: relative;}
  .headernavigation .hs-menu-wrapper>ul>li ul {position: static;display: none;width: 100%;padding-top: 0;padding-bottom: 0;}
  .headernavigation .hs-menu-wrapper>ul>li ul>li>a {padding-left: 15px;padding-right: 15px;}
  span.childExpand.open svg {transform: rotate(45deg);}
  .headernavigation .hs-menu-wrapper>ul>li>a {width: calc(100% - 50px);}

}
/* Menu and simple menu */

.hs-menu-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: column;
  }
}

/* Vertical menu */

.hs-menu-wrapper.hs-menu-flow-vertical ul {
  flex-direction: column;
}

/* Flyouts */

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts ul {
  display: inline-flex;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-vertical ul {
    display: flex;
  }
}

.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}

/* Utilities
Helper classes with ability to override anything that comes before it
*/

/* For content that needs to be visually hidden but stay visible for screenreaders */

.show-for-sr {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}