@charset "UTF-8";

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 300;

  src: url(../static/fonts/Lato/Lato-Light.ttf) format("truetype");

  font-display: swap;
}

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 400;

  src: url(../static/fonts/Lato/Lato-Regular.ttf) format("truetype");

  font-display: swap;
}

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 500;

  src: url(../static/fonts/Lato/Lato-Medium.ttf) format("truetype");

  font-display: swap;
}

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 600;

  src: url(../static/fonts/Lato/Lato-Semibold.ttf) format("truetype");

  font-display: swap;
}

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 700;

  src: url(../static/fonts/Lato/Lato-Bold.ttf) format("truetype");

  font-display: swap;
}

@font-face {
  font-family: "Lato";

  font-style: normal;

  font-weight: 900;

  src: url(../static/fonts/Lato/Lato-Black.ttf) format("truetype");

  font-display: swap;
}

:root {
  /* Fonts */

  --bic-primary-font: "Lato";

  --bic-heading-font: "Lato";

  /* Color Palette Variables */

  --color-main: #dc2626;

  --color-main-hover: #b91c1c;

  --color-main-light: #fef2f2;

  --color-main-shadow: rgba(220, 38, 38, 0.3);

  --color-cyan: #0891b2;

  --color-cyan-hover: #0e7490;

  --color-white: #ffffff;

  --color-white-20: rgba(255, 255, 255, 0.2);

  --color-black: #111827;

  --color-gray: #374151;

  --color-gray-light: #f3f4f6;

  --color-border: #e5e7eb;

  --color-orange: #ff9800;

  --color-accent: var(--color-orange);

  --color-blue-800: #1e40af;

  --color-footer-bg: #1959aa;

  --color-footer-text: rgba(255, 255, 255, 0.8);

  --color-footer-muted: rgba(255, 255, 255, 0.6);

  --color-footer-border: rgba(255, 255, 255, 0.1);

  --color-footer-social-bg: rgba(255, 255, 255, 0.1);

  --color-footer-social-hover: rgba(255, 255, 255, 0.25);

  --color-blue-2: #1959aa;

  --color-primary: #5bbee9;

  --color-primary-hover: #17b0e4;

  --color-sky: #5bbee9;

  --color-about-bg: #f9fafb;

  --color-stat-text: rgba(39, 39, 42, 0.85);

  --color-banner-overlay-start: rgba(11, 56, 108, 0.7);

  --color-banner-overlay-end: rgba(11, 56, 108, 0.4);

  --color-news-date: #717182;

  --color-news-title: #282828;

  --color-navy: #213b8b;

  --color-archive-overlay: rgba(33, 59, 139, 0.4);

  --color-facebook: #1877f2;

  --color-facebook-hover: #0d65d9;

  --color-content-text: #27272a;

  --color-about-culture-overlay: linear-gradient(
    180deg,
    rgba(33, 59, 139, 0.9) 0%,

    rgba(33, 59, 139, 0.75) 100%
  );

  --color-pillar-blue-overlay: linear-gradient(
    180deg,
    rgba(33, 59, 139, 0.75) 0%,

    rgba(33, 59, 139, 0.92) 100%
  );

  --color-pillar-orange-overlay: linear-gradient(
    180deg,
    rgba(255, 152, 0, 0.75) 0%,

    rgba(255, 152, 0, 0.92) 100%
  );

  --color-prod-thumb-bg: #f4efea;

  --color-prod-title: #111827;

  --color-prod-price: #6b7280;

  --color-prod-origin: #9ca3af;

  --color-prod-card-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.04);

  --color-prod-card-shadow-hover: 0 0.75rem 1.75rem rgba(0, 0, 0, 0.08);

  /* Theme Layout & Component Variables */

  --bic-primary-color: var(--color-primary);

  --bic-primary-hover-color: var(--color-primary-hover);

  --bic-secondary-color: var(--color-main);

  --bic-secondary-hover-color: var(--color-main-hover);

  --bic-text-color: var(--color-black);

  --bic-link-color: var(--color-cyan);

  --bic-border-color: var(--color-border);

  --bic-border-radius: 0.625rem;

  --bic-container-width: 97.5rem;

  --bic-col-gap: 0.9375rem;

  --bic-site-gap: 5.9375rem;

  --bic-header-height: 6rem;

  --bic-offcanvas-width: 100%;
}

@media (min-width: 576px) {
  :root {
    --bic-offcanvas-width: 27rem;
  }
}

@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes toRightFromLeft {
  49% {
    transform: translate(0.5625rem, -0.5625rem) scale(0.5);
  }

  50% {
    opacity: 0;

    transform: translate(-0.5625rem, 0.5625rem) scale(1);
  }

  51% {
    opacity: 1;
  }
}

::-webkit-scrollbar {
  width: 0.3125rem;
}

::-webkit-scrollbar-track {
  background: #fff;
}

::-webkit-scrollbar-thumb {
  background: var(--bic-secondary-color);

  border-radius: 0.5rem;
}

/*--------------------------------------------------------------

## Reboot

--------------------------------------------------------------*/

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

html {
  font-family: sans-serif;

  font-size: 16px;

  line-height: 1.15;

  -webkit-text-size-adjust: 100%;

  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@media (min-width: 1441px) and (max-width: 1600px) {
  html {
    font-size: 15px !important;
  }
}

@media (min-width: 1281px) and (max-width: 1440px) {
  html {
    font-size: 13px !important;
  }
}

@media (min-width: 1024px) and (max-width: 1280px) {
  html {
    font-size: 12px !important;
  }
}

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

body {
  margin: 0;

  font-family: var(--bic-primary-font), sans-serif;

  font-size: 1rem;

  color: var(--bic-text-color);

  font-weight: 400;

  font-style: normal;

  line-height: 1.5;

  overflow-x: hidden;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr,
.wp-block-separator {
  box-sizing: content-box;

  height: 0;

  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;

  margin-bottom: 1rem;
}

p {
  margin-top: 0;

  margin-bottom: 1.25rem;
}

p:last-child {
  margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;

  text-decoration: underline dotted;

  cursor: help;

  border-bottom: 0;

  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;

  font-style: normal;

  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;

  margin-bottom: 1rem;
}

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

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;

  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;

  font-size: 75%;

  line-height: 0;

  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: var(--bic-link-color);

  text-decoration: none;

  background-color: transparent;

  transition: 0.25s;
}

a:hover {
  color: var(--bic-primary-color);

  text-decoration: none;
}

a:not([href]) {
  color: inherit;

  text-decoration: none;
}

a:not([href]):hover {
  color: inherit;

  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family:
    SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;

  font-size: 1em;
}

pre {
  margin-top: 0;

  margin-bottom: 1rem;

  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;

  border-style: none;
}

svg {
  overflow: hidden;

  vertical-align: middle;
}

table,
.wp-block-table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;

  padding-bottom: 0.75rem;

  color: #6c757d;

  text-align: left;

  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;

  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;

  outline: 0.3125rem auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;

  font-family: inherit;

  font-size: inherit;

  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

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

  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;

  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;

  resize: vertical;
}

fieldset {
  min-width: 0;

  padding: 0;

  margin: 0;

  border: 0;
}

legend {
  display: block;

  width: 100%;

  max-width: 100%;

  padding: 0;

  margin-bottom: 0.5rem;

  font-size: 1.25rem;

  line-height: inherit;

  color: inherit;

  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

[type="search"] {
  outline-offset: -0.125rem;

  -webkit-appearance: none;
}

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

::-webkit-file-upload-button {
  font: inherit;

  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;

  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

.screen-reader-text,
.sr-only {
  display: none;
}

/*--------------------------------------------------------------

## Typography

--------------------------------------------------------------*/

html {
  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  font-size: 1rem;

  font-family: var(--bic-primary-font);
}

@media (min-width: 992px) {
  html {
    scrollbar-gutter: stable;
  }
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-top: 0;

  margin-bottom: 1.25rem;

  word-wrap: break-word;

  font-family: var(--bic-primary-font);

  color: var(--bic-text-color);

  font-weight: 700;

  text-transform: none;

  line-height: 1.35;
}

@media (max-width: 767.98px) {
  h1,
  .h1 {
    font-size: 2.25rem;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  h1,
  .h1 {
    font-size: 2.625rem;
  }
}

@media (min-width: 992px) {
  h1,
  .h1 {
    font-size: 2.625rem;
  }
}

@media (max-width: 767.98px) {
  h2,
  .h2 {
    font-size: 2rem;
  }
}

@media (min-width: 768px) {
  h2,
  .h2 {
    font-size: 2.25rem;
  }
}

@media (max-width: 767.98px) {
  h3,
  .h3 {
    font-size: 1.75rem;
  }
}

@media (min-width: 768px) {
  h3,
  .h3 {
    font-size: 1.5rem;
  }
}

@media (max-width: 767.98px) {
  h4,
  .h4 {
    font-size: 1.125rem;
  }
}

@media (min-width: 768px) {
  h4,
  .h4 {
    font-size: 1.25rem;
  }
}

@media (max-width: 767.98px) {
  h5,
  .h5 {
    font-size: 1.125rem;
  }
}

@media (min-width: 768px) {
  h5,
  .h5 {
    font-size: 1rem;
  }
}

@media (max-width: 767.98px) {
  h6,
  .h6 {
    font-size: 1rem;
  }
}

@media (min-width: 768px) {
  h6,
  .h6 {
    font-size: 1rem;
  }
}

hr,
.wp-block-separator {
  border: 0;

  border-top: 1px solid var(--bic-border-color);
}

mark,
.mark {
  padding: 0.2em;

  background-color: #fcf8e3;
}

.ellipsis {
  overflow: hidden;

  text-overflow: ellipsis;
}

.ellipsis-2 {
  overflow: hidden;

  text-overflow: ellipsis;

  -webkit-line-clamp: 2;

  display: -webkit-box;

  -webkit-box-orient: vertical;
}

.ellipsis-3 {
  overflow: hidden;

  text-overflow: ellipsis;

  -webkit-line-clamp: 3;

  display: -webkit-box;

  -webkit-box-orient: vertical;
}

/*--------------------------------------------------------------

## Tables

--------------------------------------------------------------*/

table,
.wp-block-table {
  width: 100%;

  border-collapse: collapse;

  margin-bottom: 0;

  text-align: left;
}

table th,
.wp-block-table th,
table td,
.wp-block-table td {
  padding: 0.625rem 0.9375rem;

  vertical-align: middle;

  border: none;

  border-top: 1px solid var(--bic-border-color);
}

table thead,
.wp-block-table thead {
  border-bottom: 0.125rem solid var(--bic-border-color);
}

table tfoot,
.wp-block-table tfoot {
  border-top: 0.125rem solid var(--bic-border-color);
}

table tbody + tbody,
.wp-block-table tbody + tbody {
  border-top: 0.125rem solid var(--bic-border-color);
}

table th,
.wp-block-table th,
table td,
.wp-block-table td {
  border: 1px solid var(--bic-border-color);
}

table thead th,
.wp-block-table thead th,
table thead td,
.wp-block-table thead td {
  border-bottom-width: 1px;
}

table:not(
    .has-small-font-size,
    .has-medium-font-size,
    .has-large-font-size,
    .has-x-large-font-size
  )
  th,
.wp-block-table:not(
    .has-small-font-size,
    .has-medium-font-size,
    .has-large-font-size,
    .has-x-large-font-size
  )
  th {
  font-family: var(--bic-primary-font), sans-serif;

  font-weight: 400;

  text-transform: none;

  line-height: normal;
}

table.has-small-font-size th,
.has-small-font-size.wp-block-table th,
table.has-medium-font-size th,
.has-medium-font-size.wp-block-table th,
table.has-large-font-size th,
.has-large-font-size.wp-block-table th,
table.has-x-large-font-size th,
.has-x-large-font-size.wp-block-table th {
  font-size: inherit;

  line-height: 1.2;
}

table[style*="font-style"] th,
[style*="font-style"].wp-block-table th {
  font-style: inherit;
}

table[style*="font-weight"] th,
[style*="font-weight"].wp-block-table th {
  font-weight: inherit;
}

table[style*="line-height"] th,
[style*="line-height"].wp-block-table th {
  line-height: inherit;
}

table[style*="letter-spacing"] th,
[style*="letter-spacing"].wp-block-table th {
  letter-spacing: inherit;
}

table[style*="text-transform"] th,
[style*="text-transform"].wp-block-table th {
  text-transform: inherit;
}

.wp-block-table.is-style-stripes {
  border-bottom: none;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: #f2f2f2;
}

.wp-block-table figcaption {
  padding: 0.75rem 0;

  color: var(--bic-primary-color);

  text-align: left;
}

.wp-block-table figcaption:not(:first-child) {
  margin-top: 0;
}

.bic-table-simple-bordered tr th,
.bic-table-simple-bordered tr td {
  border: none;

  border-top: 1px solid var(--bic-border-color);
}

.bic-table-striped tbody tr:nth-of-type(odd) {
  background-color: #f2f2f2;
}

@media (max-width: 575.98px) {
  .bic-table-responsive-sm {
    display: block;

    width: 100%;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;

    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}

@media (max-width: 767.98px) {
  .bic-table-responsive-md {
    display: block;

    width: 100%;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;

    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}

@media (max-width: 991.98px) {
  .bic-table-responsive-lg {
    display: block;

    width: 100%;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;

    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}

@media (max-width: 1247.98px) {
  .bic-table-responsive-xl {
    display: block;

    width: 100%;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;

    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}

.bic-table-responsive {
  display: block;

  width: 100%;

  overflow-x: auto;

  -webkit-overflow-scrolling: touch;

  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

/*--------------------------------------------------------------

## Entry

--------------------------------------------------------------*/

.ContentBody ol li,
.ContentBody ul li {
  padding: 0 0 0.75rem 0.375rem;
}

.ContentBody p {
  display: block;
}

.ContentBody ol,
.ContentBody ul {
  margin: 0 0 0.75rem 1rem;

  padding-left: 0.625rem;
}

.ContentBody ul {
  list-style: disc;
}

.ContentBody ol {
  list-style-type: decimal;
}

.ContentBody ol ol {
  list-style: upper-alpha;
}

.ContentBody ol ol ol {
  list-style: lower-roman;
}

.ContentBody ol ol ol ol {
  list-style: lower-alpha;
}

.ContentBody ol ol,
.ContentBody ol ul,
.ContentBody ul ol,
.ContentBody ul ul {
  margin-bottom: 0;
}

.ContentBody strong,
.ContentBody b {
  font-weight: 700;
}

.ContentBody cite,
.ContentBody em {
  font-style: italic;
}

.ContentBody cite {
  border: none;
}

.ContentBody big {
  font-size: 1.25rem;
}

.ContentBody blockquote,
.ContentBody blockquote p {
  font-weight: 400;

  font-size: var(--bic-font-size);
}

.ContentBody blockquote p {
  margin: 0;
}

.ContentBody blockquote p:not(:last-child) {
  padding-bottom: 1rem;
}

.ContentBody blockquote p {
  border-left: 0.1875rem solid #ddd;

  padding-left: 0.875rem;
}

.ContentBody blockquote cite {
  font-size: 0.75rem;

  letter-spacing: 0.0375rem;

  text-transform: uppercase;

  color: #555;
}

.ContentBody pre {
  font-size: 1rem;

  margin-bottom: 1.25rem;

  padding: 0.75rem 1.25rem;

  background: #f4f4f4;
}

.ContentBody figure {
  margin: 0 auto 1rem;

  text-align: center;
}

.ContentBody figure figcaption {
  font-size: 0.875rem;

  padding: 0.25rem;
}

.ContentBody code,
.ContentBody kbd,
.ContentBody samp,
.ContentBody var {
  font-size: 1rem;
}

.ContentBody abbr,
.ContentBody acronym,
.ContentBody dfn {
  cursor: help;

  border-bottom: 1px dotted var(--bic-border-color);
}

.ContentBody address {
  display: block;

  margin: 0 0 1.25rem;
}

.ContentBody del,
.ContentBody ins {
  color: #555;
}

.ContentBody ins {
  text-decoration: none;

  border: none;
}

.ContentBody sub,
.ContentBody sup {
  font-size: 0.625rem;

  line-height: 1;

  position: relative;

  vertical-align: baseline;
}

.ContentBody sup {
  bottom: 0.75rem;
}

.ContentBody sub {
  top: 0.375rem;
}

.ContentBody table {
  width: 100%;

  margin-bottom: 1.25rem;

  border-collapse: collapse;

  text-align: left;
}

.ContentBody tr td,
.ContentBody tr th {
  padding: 0.625rem;

  vertical-align: top;

  border: 1px solid var(--bic-border-color);
}

.ContentBody img {
  display: block;

  margin: 0 auto;

  border-radius: 0.625rem;

  max-width: 100%;

  height: 100%;
}

.ContentBody img.wp-smiley {
  margin: 0;

  padding: 0;

  border: none;
}

.ContentBody img.aligncenter {
  margin: 0 auto 0.375rem;

  display: block;
}

.ContentBody .wp-caption {
  max-width: 100%;

  margin: 0 auto 1rem;
}

.ContentBody .wp-caption a {
  cursor: pointer;
}

.ContentBody .wp-caption img {
  display: block;

  max-width: 100%;

  margin: 0 auto;

  border-radius: 0.5rem;
}

.ContentBody .wp-caption .wp-caption-text,
.ContentBody .wp-caption-dd {
  font-size: 1rem;

  padding: 0.5rem 0.5rem 0.5rem 1.875rem;

  text-align: left;

  color: #555;

  position: relative;
}

.ContentBody .wp-caption .wp-caption-text:before {
  font-size: 0.875rem;

  font-weight: 600;

  font-style: normal;

  position: absolute;

  top: 0.4375rem;

  left: 0.625rem;

  content: "\2014";

  color: #555;
}

.ContentBody br {
  float: none;

  clear: both;
}

.ContentBody hr {
  height: 0;

  margin-bottom: 1.25rem;

  border-bottom: 1px dashed var(--bic-border-color);

  background: 0 0;
}

.ContentBody h1 {
  font-size: 1.875rem;

  line-height: 1.2;
}

.ContentBody h2 {
  font-size: 1.625rem;

  line-height: 1.16;
}

.ContentBody h3 {
  font-size: 1.5rem;

  line-height: 1.35;
}

.ContentBody h4 {
  font-size: 1.25rem;
}

.ContentBody h5,
.ContentBody h6 {
  font-size: 1.125rem;
}

.ContentBody h6 {
  line-height: 1.3;
}

.ContentBody ul:not(:last-child) {
  margin-bottom: 1.25rem;
}

.ContentBody ul > li {
  padding: 0;

  position: relative;
}

.ContentBody ol > li {
  padding: 0;
}

.ContentBody ol > li:not(:last-child),
.ContentBody ul > li:not(:last-child) {
  margin-bottom: 0.625rem;
}

.ContentBody tr {
  border-top: 1px solid var(--bic-border-color);

  border-bottom: 1px solid var(--bic-border-color);
}

.ContentBody tr:first-child {
  border-top: none;
}

.ContentBody tr:last-child {
  border-bottom: none;
}

.ContentBody tr:nth-child(2n) {
  background: var(--bic-border-color);
}

.alignnone {
  max-width: 100%;
}

.alignleft {
  float: none;

  margin-right: 0;
}

.alignleft:first-child + * {
  margin-top: 0;
}

@media (min-width: 576px) {
  .alignleft {
    float: left;

    margin-right: 1.25rem;
  }
}

.alignright {
  float: none;

  margin-left: 0;
}

.alignright:first-child + * {
  margin-top: 0;
}

@media (min-width: 576px) {
  .alignright {
    float: right;

    margin-left: 1.25rem;
  }
}

.aligncenter {
  display: block;

  clear: both;

  margin-left: auto;

  margin-right: auto;

  max-width: 100%;

  object-fit: cover;

  width: auto;

  height: 100%;
}

.aligncenter .wp-caption-text,
.aligncenter .wp-caption-dd {
  text-align: center;
}

img.alignleft,
img.alignright {
  margin-bottom: 1rem;
}

/*--------------------------------------------------------------

## Forms

--------------------------------------------------------------*/

.required {
  color: red;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.bic-button {
  background: var(--bic-secondary-color);

  color: #fff;

  position: relative;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  text-decoration: none;

  border: none;

  transition: 0.25s;

  box-shadow: none;

  overflow: hidden;

  z-index: 1;

  cursor: pointer;

  font-family: var(--bic-primary-font), sans-serif;

  line-height: 1.2;

  font-weight: 700;

  font-style: normal;

  text-transform: none;

  padding: 0.625rem 0.9375rem;

  min-height: 2.875rem;

  border-radius: var(--bic-border-radius);
}

button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.bic-button:focus,
.bic-button:hover {
  opacity: 0.9;

  color: #fff;

  outline: none;
}

button:disabled,
button:disabled[disabled],
input[type="button"]:disabled,
input[type="button"]:disabled[disabled],
input[type="reset"]:disabled,
input[type="reset"]:disabled[disabled],
input[type="submit"]:disabled,
input[type="submit"]:disabled[disabled],
.bic-button:disabled,
.bic-button:disabled[disabled] {
  opacity: 0.7;

  color: #fff;
}

button:disabled:hover,
button:disabled[disabled]:hover,
input[type="button"]:disabled:hover,
input[type="button"]:disabled[disabled]:hover,
input[type="reset"]:disabled:hover,
input[type="reset"]:disabled[disabled]:hover,
input[type="submit"]:disabled:hover,
input[type="submit"]:disabled[disabled]:hover,
.bic-button:disabled:hover,
.bic-button:disabled[disabled]:hover {
  opacity: 0.7;

  color: #fff;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
select,
textarea {
  display: block;

  width: 100%;

  background-color: #f2f2f2;

  color: #282828;

  line-height: 1.2;

  font-weight: 500;

  border: 1px solid var(--bic-border-color);

  padding: 0.625rem 0.9375rem;

  font-family: var(--bic-primary-font), sans-serif;

  text-transform: none;

  width: 100%;

  min-height: 2.875rem;

  margin: 0;

  outline: none;

  appearance: none;

  transition: 0.25s;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
select:focus,
textarea:focus {
  outline: none;

  box-shadow: none;
}

input[type="text"]:focus::placeholder,
input[type="email"]:focus::placeholder,
input[type="url"]:focus::placeholder,
input[type="password"]:focus::placeholder,
input[type="search"]:focus::placeholder,
input[type="number"]:focus::placeholder,
input[type="tel"]:focus::placeholder,
input[type="range"]:focus::placeholder,
input[type="date"]:focus::placeholder,
input[type="month"]:focus::placeholder,
input[type="week"]:focus::placeholder,
input[type="time"]:focus::placeholder,
input[type="datetime"]:focus::placeholder,
input[type="datetime-local"]:focus::placeholder,
input[type="color"]:focus::placeholder,
select:focus::placeholder,
textarea:focus::placeholder {
  opacity: 1;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="number"]::placeholder,
input[type="tel"]::placeholder,
input[type="range"]::placeholder,
input[type="date"]::placeholder,
input[type="month"]::placeholder,
input[type="week"]::placeholder,
input[type="time"]::placeholder,
input[type="datetime"]::placeholder,
input[type="datetime-local"]::placeholder,
input[type="color"]::placeholder,
select::placeholder,
textarea::placeholder {
  color: var(--bic-text-color);
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

select:not([size]):not([multiple]) {
  height: 2.875rem;

  padding-right: 1.875rem;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cg fill='currentColor'%3E%3Cpath d='M10.293,3.293,6,7.586,1.707,3.293A1,1,0,0,0,.293,4.707l5,5a1,1,0,0,0,1.414,0l5-5a1,1,0,1,0-1.414-1.414Z' fill='currentColor'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");

  background-size: 0.75rem;

  background-repeat: no-repeat;

  background-position: calc(100% - 1rem) center;
}

select::-ms-expand {
  display: none;
}

textarea {
  height: 6.25rem;

  resize: vertical;
}

label {
  font-family: var(--bic-primary-font), sans-serif;

  line-height: 1.2;

  text-transform: none;

  margin-bottom: 0.75rem;
}

.post-password-form {
  padding: 1rem;

  background: #f2f2f2;

  border-radius: var(--bic-border-radius);
}

@media (min-width: 576px) {
  .post-password-form {
    padding: 2rem;
  }
}

@media (min-width: 992px) {
  .post-password-form {
    padding: 3rem;
  }
}

.post-password-form label {
  margin-bottom: 0;

  flex: 1;
}

.post-password-form input[type="password"] {
  margin-top: 0.5rem;

  border: 1px solid var(--bic-border-color);
}

.post-password-form input[type="password"]:focus {
  outline: none;

  box-shadow: none;
}

.post-password-form input[type="submit"] {
  margin-left: 0.5rem;
}

.post-password-form > p:first-child {
  margin-bottom: 2rem;
}

.post-password-form > p:last-child {
  display: flex;

  align-items: flex-end;

  margin-bottom: 0;
}

/*--------------------------------------------------------------

# Swiper

--------------------------------------------------------------*/

:root {
  --swiper-theme-color: var(--bic-primary-color);
}

.bic-swiper-pagination1 {
  position: absolute;

  bottom: 1.875rem;

  margin: 0;

  left: 0;
}

.bic-swiper-pagination1 .swiper-pagination-bullet {
  border-color: #fff;
}

.bic-swiper-pagination1 .swiper-pagination-bullet-active {
  width: 3.125rem;

  background: var(--bic-primary-color);

  border-radius: 1.875rem;
}

.bic-swiper-btn {
  position: absolute;

  top: 50%;

  z-index: 5;

  transform: translateY(-50%);

  background: #fff;

  border-color: var(--bic-primary-color);

  color: var(--bic-primary-color);

  opacity: 0;

  visibility: hidden;
}

.bic-swiper-btn.swiper-prev {
  left: 0.9375rem;

  transform: translateX(-0.9375rem);
}

.bic-swiper-btn.swiper-next {
  right: 0.9375rem;

  transform: translateX(0.9375rem);
}

.bic-swiper-btn .bic-icon {
  font-size: 1.25rem;

  font-weight: 700;

  color: currentColor;
}

.bic-swiper-btn:hover,
.bic-swiper-btn:focus {
  background: var(--bic-primary-color);

  border-color: var(--bic-primary-color);

  color: #fff !important;
}

.swiper:hover .bic-swiper-btn {
  opacity: 1;

  visibility: visible;

  transform: none;
}

/*--------------------------------------------------------------

## Contact Form 7

--------------------------------------------------------------*/

.wpcf7 {
  margin: 0;

  padding: 0;
}

.wpcf7 .screen-reader-response {
  position: absolute;

  overflow: hidden;

  clip: rect(1px, 1px, 1px, 1px);

  height: 1px;

  width: 1px;

  margin: 0;

  padding: 0;

  border: 0;
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output,
.wpcf7 .wpcf7-display-none {
  /* support version below 5.4 */

  display: none;
}

.wpcf7 form .wpcf7-response-output {
  margin: 1rem 0 0;

  padding: 0.625rem 0.9375rem;

  background: #6cdcff;

  font-size: 0.875rem;

  color: #00526c;

  border-radius: var(--bic-border-radius);
}

.wpcf7 form.sent .wpcf7-response-output {
  background: #d8f6df;

  color: #145523;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  background: #ff918a;

  color: #8a0900;
}

.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  background: #fff4d3;

  color: #a07800;
}

.wpcf7 .wpcf7-form-control-wrap {
  position: relative;

  display: block;
}

.wpcf7 label .wpcf7-form-control-wrap {
  margin-top: 0.625rem;
}

.wpcf7 input.wpcf7-not-valid {
  border-color: #f00f00;
}

.wpcf7 .wpcf7-not-valid-tip {
  color: #f00f00;

  font-size: 0.875rem;

  font-weight: normal;

  display: block;

  margin-top: 0.375rem;
}

.wpcf7 .use-floating-validation-tip .wpcf7-not-valid-tip {
  position: absolute;

  top: 20%;

  left: 20%;

  z-index: 100;

  border: 1px solid #f00f00;

  background: var(--bic-color-secondary);

  padding: 0.1875rem 0.5rem;
}

.wpcf7 .wpcf7-list-item {
  display: inline-block;

  margin: 0 0 0 0.625rem;
}

.wpcf7 .wpcf7-list-item-label:before,
.wpcf7 .wpcf7-list-item-label:after {
  content: " ";
}

.wpcf7 .wpcf7-spinner {
  visibility: hidden;

  display: inline-block;

  margin-left: 0.625rem;

  vertical-align: middle;

  width: 1.25rem;

  height: 1.25rem;

  border: 0.125rem solid var(--bic-border-color);

  border-top-color: var(--bic-primary-color);

  border-radius: 50%;

  position: relative;

  animation: loader-rotate 1s linear infinite;

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  margin: 0;

  z-index: 999;
}

.form-actions {
  position: relative;
}

@keyframes loader-rotate {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

.wpcf7 form.submitting .wpcf7-spinner,
.wpcf7 .wpcf7-spinner.is-active {
  visibility: visible;
}

.wpcf7 div.ajax-error {
  display: none;
}

.wpcf7 .placeheld {
  color: var(--bic-primary-color);
}

.wpcf7 .wpcf7-recaptcha iframe {
  margin-bottom: 0;
}

.wpcf7 input[type="file"] {
  cursor: pointer;
}

.wpcf7 input[type="file"]:disabled {
  cursor: default;
}

.wpcf7 .wpcf7-submit {
  vertical-align: middle;
}

.wpcf7 .wpcf7-submit:disabled {
  cursor: not-allowed;
}

/*--------------------------------------------------------------

# Easy select

--------------------------------------------------------------*/

.easy-select {
  --es-height: 2.875rem;

  --es-text: var(--bic-text-color);

  --es-text-hover: var(--bic-text-color);

  --es-radius: var(--bic-border-radius);

  --es-border: 1px solid var(--bic-border-color);

  --es-border-hover: 1px solid var(--bic-primary-color);
}

/*--------------------------------------------------------------

# Layouts container

--------------------------------------------------------------*/

.bic-container,
.bic-container-fluid {
  width: 100%;

  padding-left: var(--bic-col-gap);

  padding-right: var(--bic-col-gap);

  margin-right: auto;

  margin-left: auto;
}

.bic-container {
  max-width: var(--bic-container-width);
}

.bic-row {
  display: -ms-flexbox;

  display: flex;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;

  margin-left: calc(var(--bic-col-gap) * -1);

  margin-right: calc(var(--bic-col-gap) * -1);

  row-gap: calc(var(--bic-col-gap) * 2);
}

.bic-row.no-gutters {
  margin-right: 0;

  margin-left: 0;
}

.bic-row.no-gutters > .bic-col,
.bic-row.no-gutters > [class*="col-"] {
  padding-right: 0;

  padding-left: 0;
}

.bic-col,
.bic-col-1,
.bic-col-10,
.bic-col-11,
.bic-col-12,
.bic-col-2,
.bic-col-3,
.bic-col-4,
.bic-col-5,
.bic-col-6,
.bic-col-7,
.bic-col-8,
.bic-col-9,
.bic-col-auto,
.bic-col-lg,
.bic-col-lg-1,
.bic-col-lg-10,
.bic-col-lg-11,
.bic-col-lg-12,
.bic-col-lg-2,
.bic-col-lg-3,
.bic-col-lg-4,
.bic-col-lg-5,
.bic-col-lg-6,
.bic-col-lg-7,
.bic-col-lg-8,
.bic-col-lg-9,
.bic-col-lg-auto,
.bic-col-md,
.bic-col-md-1,
.bic-col-md-10,
.bic-col-md-11,
.bic-col-md-12,
.bic-col-md-2,
.bic-col-md-3,
.bic-col-md-4,
.bic-col-md-5,
.bic-col-md-6,
.bic-col-md-7,
.bic-col-md-8,
.bic-col-md-9,
.bic-col-md-auto,
.bic-col-sm,
.bic-col-sm-1,
.bic-col-sm-10,
.bic-col-sm-11,
.bic-col-sm-12,
.bic-col-sm-2,
.bic-col-sm-3,
.bic-col-sm-4,
.bic-col-sm-5,
.bic-col-sm-6,
.bic-col-sm-7,
.bic-col-sm-8,
.bic-col-sm-9,
.bic-col-sm-auto,
.bic-col-xl,
.bic-col-xl-1,
.bic-col-xl-10,
.bic-col-xl-11,
.bic-col-xl-12,
.bic-col-xl-2,
.bic-col-xl-3,
.bic-col-xl-4,
.bic-col-xl-5,
.bic-col-xl-6,
.bic-col-xl-7,
.bic-col-xl-8,
.bic-col-xl-9,
.bic-col-xl-auto {
  position: relative;

  width: 100%;

  min-height: 1px;

  padding-left: var(--bic-col-gap);

  padding-right: var(--bic-col-gap);
}

.bic-col {
  -ms-flex-preferred-size: 0;

  flex-basis: 0%;

  -ms-flex-positive: 1;

  flex-grow: 1;

  max-width: 100%;
}

.bic-col-auto {
  -ms-flex: 0 0 auto;

  flex: 0 0 auto;

  width: auto;

  max-width: none;
}

.bic-col-1 {
  -ms-flex: 0 0 8.333333%;

  flex: 0 0 8.333333%;

  max-width: 8.333333%;
}

.bic-col-2 {
  -ms-flex: 0 0 16.666667%;

  flex: 0 0 16.666667%;

  max-width: 16.666667%;
}

.bic-col-3 {
  -ms-flex: 0 0 25%;

  flex: 0 0 25%;

  max-width: 25%;
}

.bic-col-4 {
  -ms-flex: 0 0 33.333333%;

  flex: 0 0 33.333333%;

  max-width: 33.333333%;
}

.bic-col-5 {
  -ms-flex: 0 0 41.666667%;

  flex: 0 0 41.666667%;

  max-width: 41.666667%;
}

.bic-col-6 {
  -ms-flex: 0 0 50%;

  flex: 0 0 50%;

  max-width: 50%;
}

.bic-col-7 {
  -ms-flex: 0 0 58.333333%;

  flex: 0 0 58.333333%;

  max-width: 58.333333%;
}

.bic-col-8 {
  -ms-flex: 0 0 66.666667%;

  flex: 0 0 66.666667%;

  max-width: 66.666667%;
}

.bic-col-9 {
  -ms-flex: 0 0 75%;

  flex: 0 0 75%;

  max-width: 75%;
}

.bic-col-10 {
  -ms-flex: 0 0 83.333333%;

  flex: 0 0 83.333333%;

  max-width: 83.333333%;
}

.bic-col-11 {
  -ms-flex: 0 0 91.666667%;

  flex: 0 0 91.666667%;

  max-width: 91.666667%;
}

.bic-col-12 {
  -ms-flex: 0 0 100%;

  flex: 0 0 100%;

  max-width: 100%;
}

@media (min-width: 576px) {
  .bic-col-sm {
    -ms-flex-preferred-size: 0;

    flex-basis: 0%;

    -ms-flex-positive: 1;

    flex-grow: 1;

    max-width: 100%;
  }

  .bic-col-sm-auto {
    -ms-flex: 0 0 auto;

    flex: 0 0 auto;

    width: auto;

    max-width: none;
  }

  .bic-col-sm-1 {
    -ms-flex: 0 0 8.333333%;

    flex: 0 0 8.333333%;

    max-width: 8.333333%;
  }

  .bic-col-sm-2 {
    -ms-flex: 0 0 16.666667%;

    flex: 0 0 16.666667%;

    max-width: 16.666667%;
  }

  .bic-col-sm-3 {
    -ms-flex: 0 0 25%;

    flex: 0 0 25%;

    max-width: 25%;
  }

  .bic-col-sm-4 {
    -ms-flex: 0 0 33.333333%;

    flex: 0 0 33.333333%;

    max-width: 33.333333%;
  }

  .bic-col-sm-5 {
    -ms-flex: 0 0 41.666667%;

    flex: 0 0 41.666667%;

    max-width: 41.666667%;
  }

  .bic-col-sm-6 {
    -ms-flex: 0 0 50%;

    flex: 0 0 50%;

    max-width: 50%;
  }

  .bic-col-sm-7 {
    -ms-flex: 0 0 58.333333%;

    flex: 0 0 58.333333%;

    max-width: 58.333333%;
  }

  .bic-col-sm-8 {
    -ms-flex: 0 0 66.666667%;

    flex: 0 0 66.666667%;

    max-width: 66.666667%;
  }

  .bic-col-sm-9 {
    -ms-flex: 0 0 75%;

    flex: 0 0 75%;

    max-width: 75%;
  }

  .bic-col-sm-10 {
    -ms-flex: 0 0 83.333333%;

    flex: 0 0 83.333333%;

    max-width: 83.333333%;
  }

  .bic-col-sm-11 {
    -ms-flex: 0 0 91.666667%;

    flex: 0 0 91.666667%;

    max-width: 91.666667%;
  }

  .bic-col-sm-12 {
    -ms-flex: 0 0 100%;

    flex: 0 0 100%;

    max-width: 100%;
  }

  .bic-col-sm-50 {
    flex: 0 0 20%;

    max-width: 20%;
  }

  .bic-col-sm-70 {
    flex: 0 0 14.285714%;

    max-width: 14.285714%;
  }

  .bic-col-sm-80 {
    flex: 0 0 12.5%;

    max-width: 12.5%;
  }

  .bic-col-sm-90 {
    flex: 0 0 11.111111%;

    max-width: 11.111111%;
  }

  .bic-col-sm-100 {
    flex: 0 0 10%;

    max-width: 10%;
  }

  .bic-col-sm-110 {
    flex: 0 0 9.090909%;

    max-width: 9.090909%;
  }
}

@media (min-width: 768px) {
  .bic-col-md {
    -ms-flex-preferred-size: 0;

    flex-basis: 0%;

    -ms-flex-positive: 1;

    flex-grow: 1;

    max-width: 100%;
  }

  .bic-col-md-auto {
    -ms-flex: 0 0 auto;

    flex: 0 0 auto;

    width: auto;

    max-width: none;
  }

  .bic-col-md-1 {
    -ms-flex: 0 0 8.333333%;

    flex: 0 0 8.333333%;

    max-width: 8.333333%;
  }

  .bic-col-md-2 {
    -ms-flex: 0 0 16.666667%;

    flex: 0 0 16.666667%;

    max-width: 16.666667%;
  }

  .bic-col-md-3 {
    -ms-flex: 0 0 25%;

    flex: 0 0 25%;

    max-width: 25%;
  }

  .bic-col-md-4 {
    -ms-flex: 0 0 33.333333%;

    flex: 0 0 33.333333%;

    max-width: 33.333333%;
  }

  .bic-col-md-5 {
    -ms-flex: 0 0 41.666667%;

    flex: 0 0 41.666667%;

    max-width: 41.666667%;
  }

  .bic-col-md-6 {
    -ms-flex: 0 0 50%;

    flex: 0 0 50%;

    max-width: 50%;
  }

  .bic-col-md-7 {
    -ms-flex: 0 0 58.333333%;

    flex: 0 0 58.333333%;

    max-width: 58.333333%;
  }

  .bic-col-md-8 {
    -ms-flex: 0 0 66.666667%;

    flex: 0 0 66.666667%;

    max-width: 66.666667%;
  }

  .bic-col-md-9 {
    -ms-flex: 0 0 75%;

    flex: 0 0 75%;

    max-width: 75%;
  }

  .bic-col-md-10 {
    -ms-flex: 0 0 83.333333%;

    flex: 0 0 83.333333%;

    max-width: 83.333333%;
  }

  .bic-col-md-11 {
    -ms-flex: 0 0 91.666667%;

    flex: 0 0 91.666667%;

    max-width: 91.666667%;
  }

  .bic-col-md-12 {
    -ms-flex: 0 0 100%;

    flex: 0 0 100%;

    max-width: 100%;
  }

  .bic-col-md-50 {
    flex: 0 0 20%;

    max-width: 20%;
  }

  .bic-col-md-70 {
    flex: 0 0 14.285714%;

    max-width: 14.285714%;
  }

  .bic-col-md-80 {
    flex: 0 0 12.5%;

    max-width: 12.5%;
  }

  .bic-col-md-90 {
    flex: 0 0 11.111111%;

    max-width: 11.111111%;
  }

  .bic-col-md-100 {
    flex: 0 0 10%;

    max-width: 10%;
  }

  .bic-col-md-110 {
    flex: 0 0 9.090909%;

    max-width: 9.090909%;
  }
}

@media (min-width: 1025px) {
  .bic-col-lg {
    -ms-flex-preferred-size: 0;

    flex-basis: 0%;

    -ms-flex-positive: 1;

    flex-grow: 1;

    max-width: 100%;
  }

  .bic-col-lg-auto {
    -ms-flex: 0 0 auto;

    flex: 0 0 auto;

    width: auto;

    max-width: none;
  }

  .bic-col-lg-1 {
    -ms-flex: 0 0 8.333333%;

    flex: 0 0 8.333333%;

    max-width: 8.333333%;
  }

  .bic-col-lg-2 {
    -ms-flex: 0 0 16.666667%;

    flex: 0 0 16.666667%;

    max-width: 16.666667%;
  }

  .bic-col-lg-3 {
    -ms-flex: 0 0 25%;

    flex: 0 0 25%;

    max-width: 25%;
  }

  .bic-col-lg-4 {
    -ms-flex: 0 0 33.333333%;

    flex: 0 0 33.333333%;

    max-width: 33.333333%;
  }

  .bic-col-lg-5 {
    -ms-flex: 0 0 41.666667%;

    flex: 0 0 41.666667%;

    max-width: 41.666667%;
  }

  .bic-col-lg-6 {
    -ms-flex: 0 0 50%;

    flex: 0 0 50%;

    max-width: 50%;
  }

  .bic-col-lg-7 {
    -ms-flex: 0 0 58.333333%;

    flex: 0 0 58.333333%;

    max-width: 58.333333%;
  }

  .bic-col-lg-8 {
    -ms-flex: 0 0 66.666667%;

    flex: 0 0 66.666667%;

    max-width: 66.666667%;
  }

  .bic-col-lg-9 {
    -ms-flex: 0 0 75%;

    flex: 0 0 75%;

    max-width: 75%;
  }

  .bic-col-lg-10 {
    -ms-flex: 0 0 83.333333%;

    flex: 0 0 83.333333%;

    max-width: 83.333333%;
  }

  .bic-col-lg-11 {
    -ms-flex: 0 0 91.666667%;

    flex: 0 0 91.666667%;

    max-width: 91.666667%;
  }

  .bic-col-lg-12 {
    -ms-flex: 0 0 100%;

    flex: 0 0 100%;

    max-width: 100%;
  }

  .bic-col-lg-50 {
    flex: 0 0 20%;

    max-width: 20%;
  }

  .bic-col-lg-70 {
    flex: 0 0 14.285714%;

    max-width: 14.285714%;
  }

  .bic-col-lg-80 {
    flex: 0 0 12.5%;

    max-width: 12.5%;
  }

  .bic-col-lg-90 {
    flex: 0 0 11.111111%;

    max-width: 11.111111%;
  }

  .bic-col-lg-100 {
    flex: 0 0 10%;

    max-width: 10%;
  }

  .bic-col-lg-110 {
    flex: 0 0 9.090909%;

    max-width: 9.090909%;
  }
}

@media (min-width: 1200px) {
  .bic-col-xl {
    -ms-flex-preferred-size: 0;

    flex-basis: 0%;

    -ms-flex-positive: 1;

    flex-grow: 1;

    max-width: 100%;
  }

  .bic-col-xl-auto {
    -ms-flex: 0 0 auto;

    flex: 0 0 auto;

    width: auto;

    max-width: none;
  }

  .bic-col-xl-1 {
    -ms-flex: 0 0 8.333333%;

    flex: 0 0 8.333333%;

    max-width: 8.333333%;
  }

  .bic-col-xl-2 {
    -ms-flex: 0 0 16.666667%;

    flex: 0 0 16.666667%;

    max-width: 16.666667%;
  }

  .bic-col-xl-3 {
    -ms-flex: 0 0 25%;

    flex: 0 0 25%;

    max-width: 25%;
  }

  .bic-col-xl-4 {
    -ms-flex: 0 0 33.333333%;

    flex: 0 0 33.333333%;

    max-width: 33.333333%;
  }

  .bic-col-xl-5 {
    -ms-flex: 0 0 41.666667%;

    flex: 0 0 41.666667%;

    max-width: 41.666667%;
  }

  .bic-col-xl-6 {
    -ms-flex: 0 0 50%;

    flex: 0 0 50%;

    max-width: 50%;
  }

  .bic-col-xl-7 {
    -ms-flex: 0 0 58.333333%;

    flex: 0 0 58.333333%;

    max-width: 58.333333%;
  }

  .bic-col-xl-8 {
    -ms-flex: 0 0 66.666667%;

    flex: 0 0 66.666667%;

    max-width: 66.666667%;
  }

  .bic-col-xl-9 {
    -ms-flex: 0 0 75%;

    flex: 0 0 75%;

    max-width: 75%;
  }

  .bic-col-xl-10 {
    -ms-flex: 0 0 83.333333%;

    flex: 0 0 83.333333%;

    max-width: 83.333333%;
  }

  .bic-col-xl-11 {
    -ms-flex: 0 0 91.666667%;

    flex: 0 0 91.666667%;

    max-width: 91.666667%;
  }

  .bic-col-xl-12 {
    -ms-flex: 0 0 100%;

    flex: 0 0 100%;

    max-width: 100%;
  }

  .bic-col-xl-50 {
    flex: 0 0 20%;

    max-width: 20%;
  }

  .bic-col-xl-70 {
    flex: 0 0 14.285714%;

    max-width: 14.285714%;
  }

  .bic-col-xl-80 {
    flex: 0 0 12.5%;

    max-width: 12.5%;
  }

  .bic-col-xl-90 {
    flex: 0 0 11.111111%;

    max-width: 11.111111%;
  }

  .bic-col-xl-100 {
    flex: 0 0 10%;

    max-width: 10%;
  }

  .bic-col-xl-110 {
    flex: 0 0 9.090909%;

    max-width: 9.090909%;
  }
}

.bic-flex-auto {
  flex: auto !important;
}

.bic-flex-one {
  flex: 1 !important;
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-flex {
  display: -ms-flexbox !important;

  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;

  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-flex {
    display: -ms-flexbox !important;

    display: flex !important;
  }

  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;

    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-flex {
    display: -ms-flexbox !important;

    display: flex !important;
  }

  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;

    display: inline-flex !important;
  }
}

@media (min-width: 1025px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-flex {
    display: -ms-flexbox !important;

    display: flex !important;
  }

  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;

    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-flex {
    display: -ms-flexbox !important;

    display: flex !important;
  }

  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;

    display: inline-flex !important;
  }
}

.flex-row {
  -ms-flex-direction: row !important;

  flex-direction: row !important;
}

.flex-column {
  -ms-flex-direction: column !important;

  flex-direction: column !important;
}

.flex-row-reverse {
  -ms-flex-direction: row-reverse !important;

  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -ms-flex-direction: column-reverse !important;

  flex-direction: column-reverse !important;
}

.flex-wrap {
  -ms-flex-wrap: wrap !important;

  flex-wrap: wrap !important;
}

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;

  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;

  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  -ms-flex: 1 1 auto !important;

  flex: 1 1 auto !important;
}

.justify-content-start {
  -ms-flex-pack: start !important;

  justify-content: flex-start !important;
}

.justify-content-end {
  -ms-flex-pack: end !important;

  justify-content: flex-end !important;
}

.justify-content-center {
  -ms-flex-pack: center !important;

  justify-content: center !important;
}

.justify-content-between {
  -ms-flex-pack: justify !important;

  justify-content: space-between !important;
}

.justify-content-around {
  -ms-flex-pack: distribute !important;

  justify-content: space-around !important;
}

.align-items-start {
  -ms-flex-align: start !important;

  align-items: flex-start !important;
}

.align-items-end {
  -ms-flex-align: end !important;

  align-items: flex-end !important;
}

.align-items-center {
  -ms-flex-align: center !important;

  align-items: center !important;
}

.align-content-start {
  -ms-flex-line-pack: start !important;

  align-content: flex-start !important;
}

.align-content-end {
  -ms-flex-line-pack: end !important;

  align-content: flex-end !important;
}

.align-content-center {
  -ms-flex-line-pack: center !important;

  align-content: center !important;
}

/*--------------------------------------------------------------

# Icons

--------------------------------------------------------------*/

@font-face {
  font-family: "bic-icons";

  src:
    url("../static/icon-fonts/icons.ttf") format("truetype"),
    url("../static/icon-fonts/icons.woff") format("woff"),
    url("../static/icon-fonts/icons.svg#icons") format("svg");

  font-weight: normal;

  font-style: normal;

  font-display: swap;
}

[class^="bic-icon-"],
[class*=" bic-icon-"] {
  font-family: "bic-icons" !important;

  speak: none;

  font-style: normal;

  font-weight: normal;

  font-variant: normal;

  text-transform: none;

  line-height: 1;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;
}

.bic-icon-new-window:before {
  content: "\e932";
}

.bic-icon-not-found:before {
  content: "\e930";
}

.bic-icon-location-fill:before {
  content: "\e931";
}

.bic-icon-location:before {
  content: "\e92f";
}

.bic-icon-linkedIn:before {
  content: "\e92e";
}

.bic-icon-facebook:before {
  content: "\e91d";
}

.bic-icon-instagram:before {
  content: "\e91e";
}

.bic-icon-link:before {
  content: "\e920";
}

.bic-icon-pinterest:before {
  content: "\e921";
}

.bic-icon-snapchat:before {
  content: "\e923";
}

.bic-icon-tiktok:before {
  content: "\e924";
}

.bic-icon-tumblr:before {
  content: "\e925";
}

.bic-icon-vimeo:before {
  content: "\e926";
}

.bic-icon-youtube .path1:before {
  content: "\e928";

  color: rgb(68, 68, 68);
}

.bic-icon-youtube .path2:before {
  content: "\e929";

  margin-left: -1em;

  color: rgb(255, 255, 255);
}

.bic-icon-comment-o:before {
  content: "\f0e5";
}

.bic-icon-comments-o:before {
  content: "\f0e6";
}

.bic-icon-mail-reply:before {
  content: "\f112";
}

.bic-icon-reply1:before {
  content: "\f112";
}

.bic-icon-menu1:before {
  content: "\e91f";
}

.bic-icon-filter:before {
  content: "\e915";
}

.bic-icon-arrow-down:before {
  content: "\e914";
}

.bic-icon-arrow-short-left:before {
  content: "\e916";
}

.bic-icon-arrow-short-right:before {
  content: "\e919";
}

.bic-icon-alert:before {
  content: "\e901";
}

.bic-icon-cart:before {
  content: "\e902";
}

.bic-icon-dark-mode:before {
  content: "\e903";
}

.bic-icon-download:before {
  content: "\e905";
}

.bic-icon-info:before {
  content: "\e907";
}

.bic-icon-light-mode:before {
  content: "\e908";
}

.bic-icon-menu:before {
  content: "\e909";
}

.bic-icon-reference:before {
  content: "\e90b";
}

.bic-icon-reply-2:before {
  content: "\e910";
}

.bic-icon-search:before {
  content: "\e911";
}

.bic-icon-success:before {
  content: "\e912";
}

.bic-icon-twitter-x:before {
  content: "\e913";
}

.bic-icon-x:before {
  content: "\e92b";
}

.bic-icon-byuser:before {
  content: "\e942";
}

.bic-icon-reply:before {
  content: "\e940";
}

.bic-icon-arrow-long-left:before {
  content: "\e917";
}

.bic-icon-arrow-long-right:before {
  content: "\e92c";
}

.bic-icon-comments:before {
  content: "\e92d";
}

.bic-icon-timer:before {
  content: "\e91a";
}

.bic-icon-image:before {
  content: "\e92a";
}

.bic-icon-activity:before {
  content: "\e900";
}

.bic-icon-arrow-left:before {
  content: "\e904";
}

.bic-icon-arrow-right:before {
  content: "\e906";
}

.bic-icon-award:before {
  content: "\e90a";
}

.bic-icon-chevron-down:before {
  content: "\e90c";
}

.bic-icon-chevron-left:before {
  content: "\e90d";
}

.bic-icon-chevron-right:before {
  content: "\e90e";
}

.bic-icon-chevron-up:before {
  content: "\e90f";
}

.bic-icon-message-square:before {
  content: "\e918";
}

.bic-icon-music:before {
  content: "\e91b";
}

.bic-icon-play:before {
  content: "\e91c";
}

.bic-icon-watch:before {
  content: "\e922";
}

.bic-icon-zap:before {
  content: "\e927";
}

.bic-icon-eye:before {
  content: "\e9ce";
}

/*--------------------------------------------------------------

# Site

--------------------------------------------------------------*/

body {
  --bic-wpadminbar-height: 0;
}

@media screen and (min-width: 601px) {
  body.admin-bar {
    --bic-wpadminbar-height: 2.875rem;
  }
}

@media screen and (min-width: 783px) {
  body.admin-bar {
    --bic-wpadminbar-height: 2rem;
  }
}

.bic-site-inner {
  display: flex;

  flex-direction: column;
}

.bic-site-inner > * {
  flex: 0 0 auto;
}

.bic-site-inner main {
  flex: 1 0 auto;

  min-height: 50vh;
}

.bic-site-overlay {
  display: none;
}

.bic-image-cover {
  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;
}

.bic-image-contain {
  width: 100%;

  height: 100%;

  object-fit: contain;

  object-position: center;
}

.bic-image-holder img {
  object-position: center;

  height: 100%;

  width: 100%;

  object-fit: cover;

  transition: transform 0.3s;
}

.skeleton-bg {
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgd2lkdGg9IjEwMHB4IiBoZWlnaHQ9IjEwMHB4Ij4NCjxjaXJjbGUgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNTA1MjU0IiBzdHJva2Utd2lkdGg9IjEwIiByPSI0NSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY2IDQ0IiBzdHlsZT0iJiMxMDsgICAgLyogc3Ryb2tlLWRhc2hhcnJheTogMTY2IDQ0OyAqLyYjMTA7Ij4NCiAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIi8+DQo8L2NpcmNsZT4NCjwvc3ZnPg==)
    no-repeat center/1.875rem;
}

.bic-page-header__banner {
  position: relative;

  overflow: hidden;
}

.bic-image-ratio {
  display: block;

  position: relative;

  background-color: #fff;

  overflow: hidden;

  padding-top: 0;

  transition: all 0.3s;

  width: 100%;

  aspect-ratio: 3/2;
}

.bic-image-ratio > a,
.bic-image-ratio > img {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;
}

.bic-button--primary {
  text-transform: none;

  min-height: 3.5rem;

  padding-left: 1.25rem;

  padding-right: 4rem;

  border-radius: 6.1875rem;

  background: var(--bic-primary-color);
}

.bic-button--primary::after {
  content: "";

  position: absolute;

  top: 0;

  left: 0;

  width: 0;

  height: 100%;

  background-color: hsla(0, 0%, 100%, 0.5);

  transition: none;
}

.bic-button--primary:hover:after {
  width: 120%;

  background-color: hsla(0, 0%, 100%, 0);

  transition: all 0.5s ease-in-out;
}

.bic-button--primary .bic-button__icon {
  width: 2.875rem;

  height: 2.875rem;

  display: flex;

  align-items: center;

  justify-content: center;

  color: var(--bic-primary-color);

  background: #fff;

  border-radius: 100%;

  position: absolute;

  top: 50%;

  right: 0.3125rem;

  transform: translateY(-50%);

  transition: 0.3s;
}

.bic-button--primary:hover svg {
  animation: toRightFromLeft 0.3s forwards;
}

.bic-social {
  display: flex;

  justify-content: flex-start;

  gap: 0.625rem;
}

.bic-social__link {
  display: flex;

  justify-content: center;

  align-items: center;

  text-decoration: none;

  color: var(--bic-link-color);

  transition: 0.25s;
}

.bic-social__link:hover {
  color: var(--bic-primary-color);
}

.bic-social__link svg {
  width: 1.5rem;

  height: 1.5rem;

  transition: 0.25s;

  fill: currentColor;
}

.bic-social__link svg path {
  fill: currentColor;
}

/*--------------------------------------------------------------

# Offcanvas

--------------------------------------------------------------*/

.bic-offcanvas {
  transform: translate3d(0, 0, 0);

  position: fixed;

  height: calc(100% - var(--bic-wpadminbar-height));

  top: var(--bic-wpadminbar-height);

  left: calc(var(--bic-offcanvas-width) * -1);

  width: var(--bic-offcanvas-width);

  display: flex;

  flex-direction: column;

  background: var(--color-white);

  -webkit-overflow-scrolling: touch;

  z-index: 100;

  transition: 0.4s;

  overflow: hidden;
}

@media (min-width: 1025px) {
  .bic-offcanvas {
    --bic-offcanvas-width: 37.5rem;
  }
}

body.open-menu {
  overflow: hidden;
}

body.open-menu .bic-offcanvas {
  transform: translate3d(var(--bic-offcanvas-width), 0, 0);
}

body.open-menu .bic-site-overlay {
  display: block;

  position: fixed;

  top: 0;

  right: 0;

  bottom: 0;

  left: 0;

  background: rgba(0, 0, 0, 0.3);

  animation: fade 0.5s;

  z-index: 99;
}

.bic-offcanvas__header {
  display: grid;

  grid-template-columns: 1fr 2.5rem;

  align-items: center;

  padding: 0 var(--bic-col-gap);

  min-height: var(--bic-header-height);
}

.bic-offcanvas .bic-logo {
  display: flex;
}

.bic-offcanvas__nav {
  display: flex;

  align-items: center;

  justify-content: center;
}

.bic-offcanvas__toggle {
  display: flex;

  align-items: center;

  justify-content: center;

  cursor: pointer;

  width: 2.5rem;

  height: 2.5rem;

  background: var(--color-gray-light);

  border-radius: 50%;
}

.bic-offcanvas__toggle .bic-icon {
  font-size: 1rem;

  color: var(--bic-link-color);

  transform: translateZ(0);

  transition: 0.25s;
}

@media (hover: hover) {
  .bic-offcanvas__toggle:hover .bic-icon {
    color: var(--bic-primary-color);

    transform: translateZ(0) rotate(180deg);
  }
}

.bic-offcanvas__sidebar {
  flex: 1;

  overflow-x: hidden;

  overflow-y: auto;
}

.bic-offcanvas__inner {
  padding: 0 0.9375rem 1.25rem;

  display: flex;

  flex-direction: column;

  height: 100vh;
}

.bic-offcanvas__menu {
  margin-bottom: 1.25rem;
}

.bic-offcanvas__menu ul {
  list-style: none;

  padding: 0;

  margin: 0;
}

/* ==========================================================================

   Mobile Offcanvas Menu - Inline Accordion (Style như Hình 2)

   ========================================================================== */

/* Hide desktop inline caret in mobile offcanvas menu */

.bic-offcanvas__menu .header__menu-caret {
  display: none !important;
}

.bic-offcanvas__menu ul {
  list-style: none;

  padding: 0;

  margin: 0;
}

.bic-offcanvas__menu ul li {
  position: relative;

  width: 100%;
}

.bic-offcanvas__menu ul li.menu-item-has-children {
  position: relative;

  width: 100%;
}

.bic-offcanvas__menu ul li > a {
  display: flex;

  align-items: center;

  padding: 0.875rem 3.125rem 0.875rem 0.375rem;

  font-family: var(--bic-primary-font, "Inter"), sans-serif;

  font-weight: 700;

  font-size: 1rem;

  text-transform: uppercase;

  color: var(--bic-link-color, #1e293b);

  transition: color 0.2s ease;

  text-decoration: none;

  position: relative;

  width: 100%;

  box-sizing: border-box;
}

.bic-offcanvas__menu ul li.current-menu-item > a,
.bic-offcanvas__menu ul li.current-menu-parent > a {
  color: #dc2626;
}

/* Dedicated Arrow Toggle Button on the right */

.bic-offcanvas__sub-toggle {
  position: absolute;

  top: 0.25rem;

  right: 0;

  width: 3rem;

  height: 3rem;

  display: flex;

  align-items: center;

  justify-content: center;

  background: transparent;

  border: none;

  cursor: pointer;

  color: #1e293b;

  padding: 0;

  z-index: 5;

  transition: color 0.25s ease;
}

.bic-offcanvas__sub-toggle .bic-caret-icon {
  width: 0.8125rem;

  height: 0.5rem;

  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bic-offcanvas__menu
  ul
  li.submenu-open
  > .bic-offcanvas__sub-toggle
  .bic-caret-icon {
  transform: rotate(180deg);

  color: #dc2626;
}

/* Submenu - Pure Inline Accordion (Pushes down, not absolute, no box shadow, with vertical accent line like Image 2) */

.bic-offcanvas__menu .sub-menu,
.bic-offcanvas__menu .header__submenu {
  position: static !important;

  top: auto !important;

  left: auto !important;

  width: 100% !important;

  min-width: 0 !important;

  max-width: 100% !important;

  background: transparent !important;

  background-color: transparent !important;

  border: none !important;

  border-radius: 0 !important;

  box-shadow: none !important;

  opacity: 1 !important;

  visibility: visible !important;

  pointer-events: auto !important;

  transform: none !important;

  margin: 0 !important;

  padding: 0.25rem 0 1rem 1.25rem !important;

  border-left: 0.125rem solid #fca5a5 !important; /* Soft red line like Image 2 */

  margin-left: 1rem !important;

  box-sizing: border-box !important;

  list-style: none !important;
}

.bic-offcanvas__menu .sub-menu li,
.bic-offcanvas__menu .header__submenu-item {
  list-style: none !important;

  border: none !important;

  margin: 0 !important;

  padding: 0 !important;
}

.bic-offcanvas__menu .sub-menu li a,
.bic-offcanvas__menu .header__submenu-link {
  display: block !important;

  padding: 0.625rem 0 !important;

  font-size: 1rem !important;

  font-weight: 500 !important;

  line-height: 1.5 !important;

  text-transform: none !important;

  color: #334155 !important;

  background: transparent !important;

  background-color: transparent !important;

  border-radius: 0 !important;

  text-decoration: none !important;

  white-space: normal !important;

  transition:
    color 0.2s ease,
    transform 0.2s ease !important;
}

.bic-offcanvas__menu .sub-menu li a:hover,
.bic-offcanvas__menu .header__submenu-link:hover,
.bic-offcanvas__menu .sub-menu li.current-menu-item > a,
.bic-offcanvas__menu .header__submenu-item--active > .header__submenu-link {
  color: #dc2626 !important;

  background: transparent !important;

  transform: translateX(0.25rem) !important;
}

.bic-offcanvas__bottombar {
  position: fixed;

  bottom: 0;

  width: 100%;

  margin-top: auto;

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-left: -0.9375rem;

  margin-right: -0.9375rem;

  padding: 1.25rem 0.9375rem;

  border-top: 1px solid var(--bic-border-color);
}

.bic-offcanvas__bottombar .bic-offcanvas__button,
.bic-offcanvas__bottombar .bic-header__custom-button {
  width: 100%;
}

/*--------------------------------------------------------------

# Header (BEM Architecture)

--------------------------------------------------------------*/

.header,
.bic-header {
  position: sticky;

  top: var(--bic-wpadminbar-height, 0);

  left: 0;

  width: 100%;

  background-color: var(--color-white);

  z-index: 999;

  box-shadow: 0 1px 0.1875rem 0 rgba(0, 0, 0, 0.05);

  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.header--sticky,
.bic-header--sticky {
  box-shadow: 0 0.25rem 1.25rem -0.125rem rgba(0, 0, 0, 0.08);

  background-color: rgba(255, 255, 255, 0.98);
}

.header--sticky .header__inner,
.bic-header--sticky .header__inner {
  height: 4.25rem;
}

.header--sticky .header__logo-img,
.bic-header--sticky .header__logo-img {
  width: 5.25rem;

  max-height: 3.25rem;
}

.header--sticky .header__hotline,
.bic-header--sticky .header__hotline {
  padding: 0.5rem 1rem;
}

.header__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 1.25rem;

  padding-right: 1.25rem;
}

@media (min-width: 1400px) {
  .header__container {
    padding-left: 2rem;

    padding-right: 2rem;
  }
}

.header__inner {
  display: flex;

  align-items: center;

  justify-content: space-between;

  height: 6rem;

  width: 100%;

  transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Logo */

.header__logo {
  display: inline-flex;

  align-items: center;

  flex-shrink: 0;
}

.header__logo-link {
  display: inline-flex;

  align-items: center;

  text-decoration: none;
}

.header__logo-img {
  width: 7rem;

  height: auto;

  max-height: 4.5rem;

  object-fit: contain;

  display: block;

  transition:
    width 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Navigation */

.header__nav {
  display: flex;

  align-items: center;

  justify-content: center;

  flex: 1 1 auto;

  min-width: 0;

  margin: 0 1rem;
}

.header__menu {
  display: flex;

  align-items: center;

  list-style: none;

  margin: 0;

  padding: 0;

  gap: 1.25rem;
}

.header__menu-item {
  position: relative;

  list-style: none;

  margin: 0;

  padding: 0;

  flex-shrink: 0;
}

.header__menu-link {
  display: inline-flex;

  align-items: center;

  gap: 0.375rem;

  font-family: var(--bic-primary-font, "Lato"), sans-serif;

  font-size: 0.9375rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-transform: uppercase;

  color: var(--bic-primary-color);

  text-decoration: none;

  cursor: pointer;

  white-space: nowrap;

  transition: color 0.25s ease;
}

.header__menu-title {
  white-space: nowrap;
}

.header__menu-link:hover,
.header__menu-link:focus,
.header__menu-item--active > .header__menu-link,
.header__menu-item.current-menu-item > .header__menu-link,
.header__menu-item.current-menu-parent > .header__menu-link,
.header__menu-link--active {
  color: var(--color-main);
}

.header__menu-icon--home {
  width: 1rem;

  height: 1rem;

  color: var(--color-main);

  flex-shrink: 0;

  display: inline-flex;
}

.header__menu-caret {
  width: 0.625rem;

  height: 0.375rem;

  color: var(--color-black);

  flex-shrink: 0;

  margin-left: 0.125rem;

  transition:
    transform 0.25s ease,
    color 0.25s ease;
}

.header__menu-item:hover > .header__menu-link .header__menu-caret {
  color: var(--color-main);

  transform: rotate(180deg);
}

/* Submenu Dropdown (Desktop Nav Only) */

.header__nav .header__submenu {
  position: absolute;

  top: 100%;

  left: 0;

  min-width: 15rem;

  background-color: var(--color-white);

  border-radius: 0.5rem;

  box-shadow:
    0 0.625rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1),
    0 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);

  border: 1px solid var(--color-gray-light);

  padding: 0.5rem 0;

  margin: 0;

  list-style: none;

  opacity: 0;

  visibility: hidden;

  pointer-events: none;

  transform: translateY(0.625rem);

  transition:
    opacity 0.25s ease,
    transform 0.25s ease,
    visibility 0.25s ease;

  z-index: 1000;
}

.header__nav .header__menu-item:hover > .header__submenu {
  opacity: 1;

  visibility: visible;

  pointer-events: auto;

  transform: translateY(0);
}

.header__nav .header__submenu .header__submenu {
  top: 0;

  left: 100%;
}

.header__nav .header__submenu-item {
  list-style: none;

  margin: 0;

  padding: 0;
}

.header__nav .header__submenu-link {
  display: block;

  padding: 0.625rem 1.25rem;

  font-family: var(--bic-primary-font, "Lato"), sans-serif;

  font-size: 0.9375rem;

  font-weight: 500;

  text-transform: none;

  color: var(--color-gray);

  text-decoration: none;

  white-space: nowrap;

  transition: all 0.2s ease;
}

.header__nav .header__submenu-link:hover,
.header__nav .header__submenu-item--active > .header__submenu-link,
.header__nav .header__submenu-link--active {
  background-color: var(--color-main-light);

  color: var(--color-main);

  padding-left: 1.5rem;
}

/* Header Actions */

.header__actions {
  display: flex;

  align-items: center;

  gap: 1.25rem;

  flex-shrink: 0;
}

/* Language Switcher */

.header__lang {
  display: inline-flex;

  align-items: center;

  flex-shrink: 0;
}

.header__lang-link {
  font-family: var(--bic-primary-font, "Lato"), sans-serif;

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-transform: uppercase;

  color: var(--color-black);

  text-decoration: none;

  white-space: nowrap;

  transition: color 0.2s ease;

  cursor: pointer;
}

.header__lang-link:hover {
  color: var(--color-main);
}

.header__lang-link--active {
  color: var(--color-main);
}

.header__lang-sep {
  padding: 0 0.5rem;

  font-family: "Plus Jakarta Sans", sans-serif;

  font-size: 0.875rem;

  font-weight: 500;

  line-height: 1.25rem;

  color: var(--color-black);

  user-select: none;
}

/* Hotline Button */

.header__hotline {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  background-color: var(--color-main);

  padding: 0.75rem 1.25rem;

  border-radius: 0.5rem;

  text-decoration: none;

  cursor: pointer;

  flex-shrink: 0;

  white-space: nowrap;

  transition: all 0.25s ease;
}

.header__hotline:hover {
  background-color: var(--color-main-hover);

  transform: translateY(-1px);

  box-shadow: 0 0.25rem 0.75rem var(--color-main-shadow);
}

.header__hotline:active {
  transform: translateY(0);
}

.header__hotline-icon {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding: 0.375rem;

  border-radius: 9999px;

  background-color: var(--color-white-20);

  flex-shrink: 0;
}

.header__hotline-icon svg {
  width: 1rem;

  height: 1rem;

  display: block;
}

.header__hotline-text {
  font-family: var(--bic-primary-font, "Lato"), sans-serif;

  font-size: 0.9375rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-transform: uppercase;

  color: var(--color-white);

  white-space: nowrap;
}

/* Mobile Toggle */

.header__toggle {
  display: none;

  background: transparent;

  border: none;

  padding: 0.375rem;

  cursor: pointer;

  color: var(--color-black);

  border-radius: 0.375rem;

  align-items: center;

  justify-content: center;

  transition: color 0.2s ease;
}

.header__toggle:hover {
  color: var(--color-main);
}

.header__toggle svg {
  display: block;

  width: 1.75rem;

  height: 1.75rem;
}

.header__toggle .bic-icon-close {
  display: none !important;
}

.header__toggle .bic-icon-hamburger {
  display: block !important;
}

body.open-menu .header__toggle,
.header__toggle.active {
  color: var(--color-main);
}

body.open-menu .header__toggle .bic-icon-hamburger,
.header__toggle.active .bic-icon-hamburger {
  display: none !important;
}

body.open-menu .header__toggle .bic-icon-close,
.header__toggle.active .bic-icon-close {
  display: block !important;

  animation: bicToggleRotateIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes bicToggleRotateIn {
  from {
    opacity: 0;

    transform: rotate(-90deg) scale(0.85);
  }

  to {
    opacity: 1;

    transform: rotate(0deg) scale(1);
  }
}

/* Responsive Media Queries */

@media (min-width: 1400px) {
  .header__menu {
    gap: 1.625rem;
  }

  .header__menu-link {
    font-size: 0.9375rem;

    gap: 0.5rem;
  }

  .header__actions {
    gap: 1.5rem;
  }

  .header__hotline {
    padding: 0.75rem 1.5rem;
  }

  .header__hotline-text {
    font-size: 1rem;
  }
}

@media (min-width: 1600px) {
  .header__menu {
    gap: 2rem;
  }

  .header__menu-link {
    font-size: 1rem;
  }

  .header__actions {
    gap: 1.75rem;
  }
}

@media (max-width: 1199.98px) {
  .header__nav {
    display: none !important;
  }

  .header__actions {
    display: flex !important;

    align-items: center;

    gap: 1rem;
  }

  .header__toggle {
    display: inline-flex !important;
  }

  .header,
  .bic-header {
    height: 5rem;

    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .header__inner {
    height: 5rem;
  }

  .header--sticky,
  .bic-header--sticky {
    height: 3.875rem !important;
  }

  .header--sticky .header__inner,
  .bic-header--sticky .header__inner {
    height: 3.875rem !important;
  }

  .header--sticky .header__logo-img,
  .bic-header--sticky .header__logo-img {
    width: 4.75rem;

    max-height: 2.75rem;
  }

  .header__container {
    padding-left: 1.25rem;

    padding-right: 1.25rem;
  }
}

@media (max-width: 767.98px) {
  .header,
  .bic-header {
    height: 4.375rem;
  }

  .header__inner {
    height: 4.375rem;
  }

  .header--sticky,
  .bic-header--sticky {
    height: 3.5rem !important;
  }

  .header--sticky .header__inner,
  .bic-header--sticky .header__inner {
    height: 3.5rem !important;
  }

  .header__logo-img {
    width: 6rem;

    height: 3.75rem;

    padding: 0.375rem;
  }

  .header--sticky .header__logo-img,
  .bic-header--sticky .header__logo-img {
    width: 4.25rem;

    height: auto;

    padding: 0.125rem;
  }

  .header__actions {
    gap: 0.75rem;
  }

  .header__lang-link {
    font-size: 0.9375rem;

    font-weight: 600;
  }

  .header__lang-sep {
    padding: 0 0.25rem;

    font-size: 0.8125rem;
  }
}

/*--------------------------------------------------------------

# Main

--------------------------------------------------------------*/

.bic-filter {
  display: flex;

  gap: 1.875rem;

  justify-content: space-between;
}

.bic-filter > * {
  display: flex;

  align-items: center;
}

.bic-filter-item.bic-col-center {
  flex: 1;
}

.bic-outernav {
  display: flex;

  align-items: center;

  justify-content: center;

  gap: 0.9375rem;

  margin: 1.875rem 1.25rem;
}

.bic-outernav__item {
  display: flex;

  align-items: center;

  justify-content: center;

  padding: 0.5rem 1.25rem;

  color: var(--bic-text-color);

  font-weight: 700;

  text-transform: uppercase;

  border: 1px solid var(--bic-border-color);

  border-radius: var(--bic-border-radius);

  transition: all 0.3s;
}

.bic-outernav__item:hover,
.bic-outernav__item.active {
  background: var(--bic-primary-color);

  border-color: var(--bic-primary-color);

  color: #fff;
}

section.bic-ani {
  overflow: hidden;
}

.bic-section__head {
  position: relative;

  margin-bottom: 2.5rem;
}

.bic-section__title-sub {
  color: var(--bic-primary-color);

  margin-bottom: 0.5rem;
}

.section-title {
  font-size: 2rem;

  color: var(--color-primary);

  font-weight: 600;

  line-height: 3rem;

  margin: 0;

  font-family: var(--bic-heading-font), sans-serif;

  letter-spacing: 0.02em;

  position: relative;
}

/*--------------------------------------------------------------

# Shared Primary Button

--------------------------------------------------------------*/

.btn-primary,
.btn-viewmore {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding: 0.75rem 2.25rem;

  background-color: var(--color-main);

  color: var(--color-white);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  border-radius: 0.375rem;

  text-decoration: none;

  border: none;

  cursor: pointer;

  box-shadow: 0 0.25rem 0.75rem var(--color-main-shadow);

  transition:
    background-color 0.25s ease,
    transform 0.2s ease,
    box-shadow 0.25s ease;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.btn-viewmore:hover,
.btn-viewmore:focus-visible {
  background-color: var(--color-main-hover);

  color: var(--color-white);

  transform: translateY(-0.125rem);

  box-shadow: 0 0.375rem 1.125rem var(--color-main-shadow);
}

.btn-primary:active,
.btn-viewmore:active {
  transform: translateY(0);
}

@media (max-width: 640px) {
  .btn-primary,
  .btn-viewmore {
    width: 100%;

    max-width: 17.5rem;

    padding: 0.75rem 1.5rem;
  }
}

.bic-breadcrumbs {
  position: relative;

  word-wrap: break-word;

  margin-bottom: 0.625rem;

  z-index: 2;
}

.bic-breadcrumbs a,
.bic-breadcrumbs span {
  text-decoration: none;

  color: var(--bic-link-color);
}

.bic-breadcrumbs a:hover {
  color: var(--bic-primary-color);
}

.bic-breadcrumbs .breadcrumb_last,
.bic-breadcrumbs .last,
.bic-breadcrumbs .aioseo-breadcrumb:last-child {
  opacity: 0.9;
}

.bic-breadcrumbs .bic-separator {
  margin: 0 0.1875rem;

  position: relative;
}

.bic-breadcrumbs .bic-separator:after {
  font-family: "bic-icons";

  content: "\e90e";

  color: var(--bic-link-color);

  vertical-align: bottom;
}

.bic-page-header {
  position: relative;

  margin-top: var(--bic-header-height);

  min-height: 22.5rem;
}

.bic-page-header:before {
  content: "";

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: var(--bic-secondary-color);

  z-index: 1;
}

.bic-page-header--background .bic-page-header__banner::before {
  content: "";

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: rgba(0, 0, 0, 0.4);

  z-index: 2;
}

.bic-page-header--background .bic-page-header__content {
  position: absolute;

  width: 100%;

  top: 50%;

  transform: translateY(-50%);

  z-index: 3;

  left: 0;
}

.bic-page-header__title {
  font-size: 2.25rem;

  font-weight: 700;

  color: var(--bic-link-color);

  margin: 0;
}

.bic-page-header--background .bic-page-header__title,
.bic-page-header--background .bic-breadcrumbs a,
.bic-page-header--background .bic-breadcrumbs span,
.bic-page-header--background .bic-breadcrumbs .bic-separator:after {
  color: #fff;
}

.bic-page-header__archive-description {
  position: relative;

  margin-top: 1.25rem;
}

/* Entry card */

.bic-entry__inner {
  display: flex;

  flex-direction: column;

  height: 100%;

  background: #fff;

  overflow: hidden;

  border: 1px solid var(--bic-border-color);

  border-radius: var(--bic-border-radius);

  transition: all 0.3s;
}

.bic-entry__inner:hover {
  box-shadow:
    0 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1),
    0 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
}

.bic-entry__inner:hover .bic-entry__thumbnail img {
  transform: scale(1.1);
}

.bic-entry__content {
  position: relative;

  width: 100%;

  max-width: 100%;

  padding: 1.5rem;

  display: flex;

  flex-direction: column;

  row-gap: 0.75rem;
}

.bic-entry__title {
  font-size: 1.125rem;

  font-weight: 600;

  color: var(--bic-text-color);

  text-transform: none;

  margin: 0 !important;
}

.bic-entry__title a {
  color: currentColor;
}

.bic-entry__inner:hover .bic-entry__title {
  color: var(--bic-primary-color);
}

.bic-entry__post-meta {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 0.625rem;

  transition: 0.25s all;

  color: #48494a;

  line-height: 1;
}

.bic-meta-date {
  display: flex;

  align-items: center;

  gap: 0.3125rem;
}

.bic-meta-date .bic-icons svg {
  width: 0.875rem;

  height: 0.875rem;
}

.bic-meta-category .post-categories {
  margin: 0;

  padding: 0;

  list-style: none;

  display: flex;

  flex-wrap: wrap;

  gap: 0.625rem;
}

.bic-entry__post-meta .bic-meta-category .post-categories li {
  position: relative;

  line-height: 1;
}

.bic-entry__post-meta .bic-meta-category .post-categories li a {
  position: relative;

  z-index: 2;

  display: flex;

  justify-content: center;

  align-items: center;

  color: var(--bic-primary-color);

  font-weight: 600;
}

.bic-entry__excerpt {
  color: #4a5565;

  display: -webkit-box;

  -webkit-line-clamp: 3;

  -webkit-box-orient: vertical;

  overflow: hidden;

  text-overflow: ellipsis;
}

.bic-entry__link {
  position: relative;

  margin-top: 1rem;
}

.bic-entry__link a {
  display: flex;

  align-items: center;

  gap: 0.375rem;

  color: var(--bic-primary-color);
}

.bic-entry__link .bic-icons svg {
  width: 1.25rem;

  height: 1.25rem;
}

.bic-entry__link a:hover svg {
  animation: toRightFromLeft 0.3s forwards;
}

/* Single */

.single .bic-entry__header .bic-entry__post-meta {
  margin: 0.625rem 0 0;
}

.bic-single .bic-entry__header {
  position: relative;

  margin-bottom: 1.25rem;

  padding-bottom: 1.25rem;

  border-bottom: 1px solid var(--bic-border-color);
}

.bic-single .bic-entry__post-meta {
  margin: 1.25rem 0 0;
}

.bic-sidebar .bic-single .bic-entry__content {
  padding: 0;
}

.bic-entry__footer {
  position: relative;

  margin-top: 1.875rem;
}

.bic-share .bic-social__link {
  width: 2.875rem;

  height: 2.875rem;

  background-color: var(--bic-primary-color);

  color: #fff;

  border-radius: var(--bic-border-radius);
}

.bic-share .bic-social__link:hover {
  background-color: var(--bic-secondary-color);

  color: #fff;
}

.bic-entry__comments {
  margin-top: 1.875rem;
}

/* Pagination */

.bic-pagination {
  margin-top: 1.875rem;
}

.bic-pglinks {
  display: flex;

  align-items: center;

  justify-content: center;

  flex-wrap: wrap;

  gap: 0.625rem;

  padding: 0;
}

.bic-pglink {
  border: 1px solid transparent;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 2.5rem;

  height: 2.5rem;

  text-decoration: none;

  color: var(--bic-text-color);

  line-height: 1;

  font-weight: 700;

  border-radius: 50%;

  transition: all 0.3s;
}

.bic-pglink .bic-icon {
  font-size: 1.25rem;

  font-weight: 700;
}

.bic-pglink.current,
.bic-pglink:not(.disabled):hover {
  border-color: var(--bic-primary-color);

  background: var(--bic-primary-color);

  color: #fff;
}

.bic-pglink.disabled {
  opacity: 0.7;

  cursor: no-drop;
}

a.read-more-link {
  display: inline-block;

  padding: 0.75rem 1.5rem;

  margin-top: 2.5rem;

  border-radius: var(--bic-border-radius);

  background: var(--bic-primary-color);

  color: #fff;

  transition: all 0.3s;
}

a.read-more-link:hover {
  background: var(--bic-primary-hover-color);

  color: #fff;
}

/*--------------------------------------------------------------

# Sidebar

--------------------------------------------------------------*/

.widget {
  width: 100%;

  max-width: 100%;

  margin-left: auto;

  margin-right: auto;

  margin-bottom: 2.5rem;
}

.bic-widget-area .widget {
  break-inside: avoid;
}

.bic-widget-area {
  position: sticky;

  top: calc(var(--bic-wpadminbar-height) + var(--bic-header-height) + 1.875rem);

  padding-top: 0;
}

.widget-title {
  font-size: 1.25rem;

  font-weight: 600;

  color: var(--bic-link-color);

  margin-bottom: 1.25rem;
}

.bic-sidebar__area .widget-title {
  position: relative;

  padding-bottom: 0.75rem;
}

.bic-sidebar__area .widget-title::before {
  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: 20%;

  height: 0.125rem;

  background: currentColor;

  transition: all 0.3s;
}

.bic-sidebar__area .widget:hover .widget-title::before {
  width: 100%;
}

.bic-widget-post:not(:last-child) {
  margin-bottom: 1.25rem;
}

.bic-widget-post .bic-entry__inner {
  padding: 0;

  border: none;

  box-shadow: none;

  flex-direction: row;
}

.bic-widget-post .bic-entry__thumbnail {
  flex: 0 0 auto;

  width: 7.5rem;

  height: 5rem;

  padding: 0;

  border-radius: var(--bic-border-radius);

  border: 1px solid var(--bic-border-color);
}

.bic-widget-post .bic-entry__content {
  flex: 1;

  padding: 0.625rem;

  padding-left: 0.9375rem;
}

.bic-widget-post .bic-entry__title {
  margin: 0;
}

.bic-widget-post .bic-entry__post-meta,
.bic-widget-post .bic-entry__excerpt {
  display: none !important;
}

.widget_nav_menu + .widget_nav_menu {
  border-top: 1px solid var(--bic-border-color);

  padding-top: 1.25rem;

  margin-top: 0.625rem;
}

.widget_nav_menu ul {
  list-style: none;

  padding: 0;

  margin: 0;

  overflow: hidden;

  border-radius: var(--bic-border-radius);
}

.widget_nav_menu ul.menu li:not(:last-child) > a {
  margin: 0;

  border-bottom: 1px solid #f8f8f8;
}

.widget_nav_menu ul > li.menu-item-has-children > span:after {
  font-size: 1.25rem;
}

.widget_nav_menu a {
  display: block;

  font-weight: 700;

  padding: 0.75rem 1.25rem;

  background-color: #f2f2f2;

  transition: all 0.3s;
}

.widget_nav_menu ul.menu li[class*="current"] > a,
.widget_nav_menu ul.menu li:hover a {
  background-color: var(--bic-primary-color);

  color: #fff;
}

.widget_nav_menu .menu-item-has-children {
  position: relative;

  width: 100%;
}

.widget_nav_menu .menu-item-has-children > span {
  position: absolute;

  right: 0;

  top: 0.1875rem;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 1.25rem;

  margin-left: auto;

  padding-right: 0.3125rem;

  cursor: pointer;
}

.widget_nav_menu .menu-item-has-children > span:after {
  font-family: "bic-icons";

  font-size: 1.25rem;

  content: "\e90c";
}

.widget_nav_menu .menu-item-has-children > ul {
  width: 100%;

  order: 3;
}

.widget_nav_menu .menu-item-has-children .menu-item-has-children > span {
  top: 0.1875rem;
}

.widget_nav_menu .menu-item-expanded > span:after {
  content: "\e90f";
}

.widget_nav_menu .menu > .menu-item:not(.menu-item-has-children) > a:after {
  visibility: hidden;
}

.widget_nav_menu .sub-menu {
  display: none;
}

.widget_nav_menu .sub-menu a {
  padding: 0.625rem 0 0.625rem 0.625rem;

  line-height: 1;
}

.widget_nav_menu .sub-menu .sub-menu {
  padding: 0 0 0 0.625rem;
}

.widget_nav_menu .menu {
  margin: -0.625rem 0;
}

.widget_nav_menu .menu > .menu-item > .sub-menu {
  padding-bottom: 0.625rem;
}

.widget_nav_menu .menu-item-has-children > a {
  padding-right: 1.25rem;

  width: calc(100% - 1.25rem);
}

/*--------------------------------------------------------------

# Comment

--------------------------------------------------------------*/

.comment-list {
  padding: 0;

  margin: 0;

  list-style: none;
}

.comment-list > li {
  margin-top: 1.25rem;
}

.comment-list > li.depth-1:not(:first-child) {
  border-top: 1px solid var(--bic-border-color);

  padding-top: 1.25rem;
}

.comment-list > li:first-child {
  margin-top: 1.25rem;
}

.comment-list .comment-body {
  display: flex;

  flex-direction: column;
}

.comment-list .comment-body > .reply {
  display: inline-flex;

  order: 3;

  margin-top: 0.625rem;
}

.comment-list .comment-content {
  font-style: normal;

  color: var(--bic-text-color);

  margin-top: 0.625rem;
}

.comment-list .comment-meta {
  font-size: 0.875rem;

  color: #48494a;
}

.comment-list .comment-edit-link {
  color: var(--bic-link-color);

  transition: 0.25s;

  margin-left: 0.3125rem;

  text-transform: none;
}

.comment-list .comment-edit-link:hover {
  color: var(--bic-primary-color);
}

.comment-list .comment-author .says {
  display: none;
}

.comment-list .bypostauthor > .comment-body .comment-author:before {
  font-family: "bic-icons";

  font-size: 1.25rem;

  display: flex;

  align-items: center;

  max-height: 1.25rem;

  margin-right: 0.3125rem;
}

.comment-list .byuser .comment-author b {
  display: inline-flex;

  align-items: center;

  position: relative;
}

.comment-list .children {
  margin: 0;

  margin-top: 1.25rem;

  padding-left: 2rem;

  list-style: none;
}

.comment-list .children > li:not(:first-child) {
  margin-top: 1.25rem;
}

@media (max-width: 575.98px) {
  .comment-list .children {
    padding-left: 1.25rem;
  }
}

.comment-list .children .children .children .children .children .children {
  padding-left: 0;
}

@media (min-width: 768px) {
  .comment-list .children .children .children .children .children .children {
    padding-left: 0;
  }
}

.comment-meta {
  line-height: 1.3;

  order: 1;

  position: relative;

  display: flex;

  flex-wrap: wrap;

  align-items: center;
}

.comment-meta img {
  width: 2.875rem;

  height: 2.875rem;

  margin-right: 0.9375rem;

  border-radius: 50%;
}

.comment-meta:after {
  content: "";

  display: block;

  clear: both;
}

.comment-meta time {
  font-size: inherit;

  color: #444;
}

.comment-meta a {
  display: inline;

  transition: 0.25s;

  text-decoration: none;

  color: #444;
}

.comment-meta a time {
  color: #444;

  transition: 0.25s;
}

.comment-metadata {
  display: flex;

  flex-wrap: wrap;

  align-items: baseline;

  margin-left: 0.625rem;

  margin-top: 0.125rem;
}

@media (max-width: 575.98px) {
  .comment-metadata {
    width: 100%;

    margin-left: 0;
  }
}

.comment-metadata > * {
  display: flex;

  align-items: center;

  margin-top: 0.3125rem;
}

@media (min-width: 576px) {
  .comment-metadata > * {
    margin-top: 0;
  }
}

.comment-author {
  display: flex;

  align-items: center;
}

@media (max-width: 575.98px) {
  .comment-author {
    width: 100%;
  }
}

.comment-author .fn {
  display: flex;

  align-items: center;

  color: var(--bic-primary-color);
}

.comment-author .fn a {
  color: currentColor;
}

.comment-content {
  order: 2;
}

.comment-content > * {
  margin-top: 1.75rem;

  margin-bottom: 1.75rem;
}

@media (min-width: 576px) {
  .comment-content > * {
    margin-top: 1.75rem;

    margin-bottom: 1.75rem;
  }
}

.comment-content > *:first-child {
  margin-top: 0;
}

.comment-content > *:last-child {
  margin-bottom: 0;
}

.comment-reply-link {
  display: inline;

  color: #444;

  transition: 0.25s;

  text-decoration: none;
}

.comment-reply-link:hover {
  color: var(--bic-primary-color);
}

.bic-cancel-reply-button {
  display: inline;
}

#cancel-comment-reply-link {
  display: inline;

  color: #444;

  transition: 0.25s;

  text-decoration: none;

  margin-left: 1.25rem;
}

#cancel-comment-reply-link:hover {
  color: var(--bic-primary-color);
}

.comment-respond {
  margin-top: 1.875rem;

  order: 99;

  overflow: hidden;
}

.bic-comments__title {
  font-size: 1.5rem;

  font-weight: 700;

  color: var(--bic-text-color);

  text-transform: none;

  margin-bottom: 1.25rem;
}

.comment-form {
  display: flex;

  flex-wrap: wrap;

  justify-content: space-between;

  align-items: baseline;
}

.comment-form label {
  margin-bottom: 0.5rem;

  color: var(--bic-text-color);
}

.comment.bypostauthor {
  outline: none;
}

.comment-notes,
.comment-form-comment,
.comment-form-cookies-consent,
.logged-in-as {
  flex: 0 0 100%;

  max-width: 100%;

  position: relative;

  width: 100%;
}

.comment-notes textarea,
.comment-form-comment textarea,
.comment-form-cookies-consent textarea,
.logged-in-as textarea {
}

.comment-notes a,
.comment-form-comment a,
.comment-form-cookies-consent a,
.logged-in-as a {
  text-decoration: underline;
}

.comment-notes a:hover,
.comment-form-comment a:hover,
.comment-form-cookies-consent a:hover,
.logged-in-as a:hover {
  text-decoration: none;
}

.comment-form-comment {
  order: 1;
}

.comment-form-comment textarea {
  display: block;

  width: 100%;

  height: 6.25rem;

  transition: none;
}

.comment-form-author,
.comment-form-email {
  flex: 0 0 100%;

  max-width: 100%;

  position: relative;

  width: 100%;
}

.comment-form-author.comment-form-author,
.comment-form-email.comment-form-author {
  order: 2;
}

.comment-form-author.comment-form-email,
.comment-form-email.comment-form-email {
  order: 3;
}

@media (min-width: 768px) {
  .comment-form-author,
  .comment-form-email {
    flex: 0 0 49%;

    max-width: 49%;
  }
}

.comment-form-author input,
.comment-form-email input {
  display: block;

  width: 100%;

  height: 100%;

  transition: 0.25s;
}

@media (hover: hover) {
  .comment-form-author input:hover,
  .comment-form-email input:hover {
    opacity: 0.7;
  }
}

.comment-form-comment,
.comment-form-author,
.comment-form-email {
  width: 100%;

  border: none;

  background: transparent;

  line-height: 1.2;
}

@media (max-width: 575.98px) {
  .comment-form-comment,
  .comment-form-author,
  .comment-form-email {
    margin-bottom: 0.625rem;
  }
}

@media (min-width: 576px) {
  .comment-form-comment,
  .comment-form-author,
  .comment-form-email {
    margin-bottom: 1.25rem;
  }
}

.comment-form-comment input,
.comment-form-comment textarea,
.comment-form-author input,
.comment-form-author textarea,
.comment-form-email input,
.comment-form-email textarea {
  transition: 0.25s;
}

@media (hover: hover) {
  .comment-form-comment input:hover,
  .comment-form-comment textarea:hover,
  .comment-form-author input:hover,
  .comment-form-author textarea:hover,
  .comment-form-email input:hover,
  .comment-form-email textarea:hover {
    opacity: 0.7;
  }
}

.comment-form-cookies-consent {
  order: 5;

  margin-bottom: 1.25rem;

  display: grid;

  grid-template-columns: 1.125rem 1fr;

  gap: 0.3125rem;

  align-items: flex-start;
}

.comment-form-cookies-consent label {
  margin: 0;
}

.comment-form-cookies-consent input {
  width: 1.125rem;

  height: 1.125rem;
}

.comment-notes {
  order: 1;

  margin-bottom: 1.25rem;

  color: #444;
}

.comment-awaiting-moderation {
  width: 100%;

  margin-top: 0.5rem;

  margin-bottom: 1.25rem;
}

.logged-in-as,
.form-allowed-tags {
  margin-bottom: 1.25rem;
}

.form-submit {
  order: 6;

  width: 100%;

  margin-bottom: 0;
}

@media (max-width: 575.98px) {
  .form-submit {
    display: flex;

    align-items: center;
  }
}

@media (max-width: 575.98px) {
  .form-submit button {
    width: 100%;
  }
}

.no-comments {
  margin-top: 1.25rem;

  padding: 0.625rem;
}

.logged-in-as a:hover {
  color: var(--bic-primary-color);

  text-decoration: none;
}

/*--------------------------------------------------------------

# About Section (BEM)

--------------------------------------------------------------*/

.about {
  position: relative;

  background-color: var(--color-about-bg);

  padding: 5rem 0;

  width: 100%;
}

.about__container {
  width: 100%;

  max-width: 91.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 1.5rem;

  padding-right: 1.5rem;
}

.about__inner {
  display: flex;

  align-items: center;

  justify-content: center;

  gap: 3rem;

  width: 100%;
}

.about__media {
  flex: 1 1 50%;

  height: 31.25rem;

  border-radius: 0.5rem;

  overflow: hidden;

  position: relative;

  background-color: var(--color-border);
}

.about__image {
  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;
}

.about__content {
  flex: 1 1 50%;

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  gap: 1rem;
}

.about__desc {
  color: var(--color-black);

  font-family: var(--bic-primary-font), sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  text-align: justify;

  margin: 0;
}

.about__desc p {
  margin: 0 0 0.75rem;
}

.about__desc p:last-child {
  margin-bottom: 0;
}

.about__stats {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 1rem 2rem;

  width: 100%;

  margin-top: 0.5rem;

  margin-bottom: 0.5rem;
}

.about__stat-item {
  display: flex;

  align-items: center;

  gap: 0.75rem;
}

.about__stat-icon {
  flex-shrink: 0;

  width: 1.25rem;

  height: 1.25rem;

  color: var(--color-blue-2);

  display: flex;

  align-items: center;

  justify-content: center;

  margin-top: 0.25rem;
}

.about__stat-icon svg {
  width: 1.25rem;

  height: 1.25rem;

  display: block;
}

.about__stat-text {
  color: var(--color-stat-text);

  font-family: var(--bic-primary-font), sans-serif;

  font-size: 1.25rem;

  font-weight: 600;

  line-height: 1.75rem;
}

.about__action {
  margin-top: 0.5rem;
}

/* Responsive Media Queries */

@media (max-width: 1199.98px) {
  .about__inner {
    gap: 2rem;
  }

  .about__media {
    height: 27.5rem;
  }

  .about__stat-text {
    font-size: 1.125rem;

    line-height: 1.625rem;
  }
}

@media (max-width: 991.98px) {
  .about {
    padding: 3.75rem 0;
  }

  .about__inner {
    flex-direction: column;

    gap: 2.5rem;
  }

  .about__media {
    width: 100%;

    height: 23.75rem;

    flex: none;
  }

  .about__content {
    width: 100%;

    flex: none;
  }
}

@media (max-width: 639.98px) {
  .about {
    padding: 3rem 0;
  }

  .about__media {
    height: 16.25rem;
  }

  .products-cat__desc,
  .about__desc {
    text-align: justify;
  }

  .about__stats {
    grid-template-columns: 1fr;

    gap: 0.875rem;
  }

  .about__stat-text {
    font-size: 1.0625rem;

    line-height: 1.5rem;
  }

  .about__action {
    width: 100%;
  }
}

/*--------------------------------------------------------------

# Products Categories Section (BEM)

--------------------------------------------------------------*/

.products-cat {
  position: relative;

  background-color: var(--color-about-bg);

  padding-bottom: 5rem;

  width: 100%;
}

.products-cat__container {
  width: 100%;

  max-width: 91.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 1.5rem;

  padding-right: 1.5rem;

  display: flex;

  flex-direction: column;

  gap: 2rem;
}

.products-cat__header {
  display: flex;

  flex-direction: column;

  gap: 1rem;

  max-width: 56.6875rem;
}

.products-cat__desc {
  color: var(--color-stat-text);

  font-family: var(--bic-primary-font), sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  margin: 0;
}

.products-cat__desc p {
  margin: 0 0 0.5rem;
}

.products-cat__desc p:last-child {
  margin-bottom: 0;
}

.products-cat__grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 2rem;

  width: 100%;
}

.products-cat__card {
  display: flex;

  flex-direction: column;

  background-color: var(--color-white);

  border: 1px solid var(--color-border);

  border-radius: 0.5rem;

  overflow: hidden;

  text-decoration: none;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.products-cat__card:hover,
.products-cat__card:focus-visible {
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.08);

  border-color: var(--color-primary);
}

.products-cat__media {
  width: 100%;

  height: 18.125rem;

  overflow: hidden;

  background-color: var(--color-white);

  position: relative;

  display: flex;

  align-items: center;

  justify-content: center;
}

.products-cat__image {
  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.4s ease;
}

.products-cat__card:hover .products-cat__image,
.products-cat__card:focus-visible .products-cat__image {
  transform: scale(1.05);
}

.products-cat__body {
  padding: 1.5rem 1.25rem 2rem;

  display: flex;

  align-items: center;

  justify-content: center;

  text-align: center;

  background-color: var(--bic-primary-color);

  border-top: 1px solid var(--color-border);
}

.products-cat__name {
  color: var(--color-black);

  font-family: var(--bic-primary-font), sans-serif;

  font-size: 1.25rem;

  font-weight: 600;

  line-height: 1.75rem;

  margin: 0;

  transition: color 0.25s ease;
}

.products-cat__card:hover .products-cat__name,
.products-cat__card:focus-visible .products-cat__name {
  color: var(--color-white);
}

/* Responsive Media Queries */

@media (max-width: 991.98px) {
  .products-cat {
    padding-bottom: 3.75rem;
  }

  .products-cat__grid {
    grid-template-columns: 1fr;

    gap: 1.5rem;
  }

  .products-cat__media {
    height: 20rem;
  }
}

@media (max-width: 639.98px) {
  .products-cat {
    padding-bottom: 3rem;
  }

  .products-cat__media {
    height: 15rem;
  }

  .products-cat__body {
    padding: 1.125rem 1rem 1.5rem;
  }

  .products-cat__name {
    font-size: 1.125rem;

    line-height: 1.625rem;
  }
}

/*--------------------------------------------------------------

# Banner CTA Section (BEM)

--------------------------------------------------------------*/

.banner-cta {
  position: relative;

  width: 100%;

  min-height: 31.25rem;

  display: flex;

  align-items: center;

  justify-content: center;

  overflow: hidden;
}

.banner-cta__media {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  overflow: hidden;

  z-index: 1;
}

.banner-cta__image {
  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  display: block;
}

.banner-cta__overlay {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: linear-gradient(
    90deg,
    var(--color-banner-overlay-start) 0%,

    var(--color-banner-overlay-end) 100%
  );

  pointer-events: none;
}

.banner-cta__container {
  position: relative;

  z-index: 2;

  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding: 4rem 1.5rem;

  display: flex;

  justify-content: center;

  align-items: center;
}

.banner-cta__content {
  width: 100%;

  max-width: 80rem;

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  gap: 2rem;
}

.banner-cta__title {
  color: var(--color-white);

  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 2.625rem;

  font-weight: 600;

  line-height: 3rem;

  margin: 0;

  text-align: center;

  max-width: 68.75rem;
}

.banner-cta__desc {
  color: var(--color-white);

  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  margin: 0;

  text-align: center;
}

.banner-cta__action {
  display: flex;

  justify-content: center;

  align-items: center;
}

/* Responsive */

@media (max-width: 991.98px) {
  .banner-cta {
    min-height: 26.25rem;
  }

  .banner-cta__container {
    padding: 3rem 1.25rem;
  }

  .banner-cta__content {
    gap: 1.5rem;
  }

  .banner-cta__title {
    font-size: 2rem;

    line-height: 2.375rem;
  }
}

@media (max-width: 639.98px) {
  .banner-cta {
    min-height: 22.5rem;
  }

  .banner-cta__container {
    padding: 2.5rem 1rem;
  }

  .banner-cta__content {
    gap: 1.25rem;
  }

  .banner-cta__title {
    font-size: 1.5rem;

    line-height: 2rem;
  }

  .banner-cta__desc {
    font-size: 0.875rem;

    line-height: 1.375rem;
  }
}

/*--------------------------------------------------------------

# Home News Section (BEM)

--------------------------------------------------------------*/

.home-news {
  width: 100%;

  background-color: var(--color-about-bg);

  padding: 5rem 0;

  position: relative;
}

.home-news__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;

  display: flex;

  flex-direction: column;

  gap: 2rem;
}

.home-news__header {
  display: flex;

  flex-direction: column;

  gap: 0.75rem;

  max-width: 43.75rem;
}

.home-news__desc {
  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.625rem;

  color: var(--color-news-title);

  margin: 0;
}

.home-news__grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 2rem;

  width: 100%;
}

.home-news__card {
  display: flex;

  flex-direction: column;

  background-color: var(--color-white);

  border: 1px solid var(--color-border);

  border-radius: 0.25rem;

  overflow: hidden;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.home-news__card:hover {
  box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.08);

  border-color: var(--color-primary);
}

.home-news__media {
  width: 100%;

  height: 18.875rem;

  overflow: hidden;

  background-color: var(--color-border);

  position: relative;

  display: block;
}

.home-news__thumb {
  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  display: block;

  transition: transform 0.4s ease;
}

.home-news__card:hover .home-news__thumb {
  transform: scale(1.05);
}

.home-news__body {
  padding: 1.5rem;

  display: flex;

  flex-direction: column;

  gap: 0.75rem;

  flex: 1;
}

.home-news__meta {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--color-news-date);

  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.625rem;
}

.home-news__meta-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  color: var(--color-news-date);
}

.home-news__card-title {
  margin: 0;

  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 1.25rem;

  font-weight: 600;

  line-height: 1.75rem;

  color: var(--color-news-title);

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;
}

.home-news__card-link {
  color: inherit;

  text-decoration: none;

  transition: color 0.25s ease;
}

.home-news__card-link:hover,
.home-news__card-link:focus-visible {
  color: var(--color-primary);
}

.home-news__readmore {
  margin-top: auto;

  padding-top: 0.25rem;

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--color-primary);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-decoration: none;

  transition:
    gap 0.25s ease,
    color 0.25s ease;
}

.home-news__readmore:hover,
.home-news__readmore:focus-visible {
  color: var(--color-primary-hover);

  gap: 0.75rem;
}

.home-news__readmore-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  color: inherit;
}

.home-news__action {
  display: flex;

  justify-content: center;

  align-items: center;

  width: 100%;

  margin-top: 0.5rem;
}

/* Responsive */

@media (max-width: 1024px) {
  .home-news {
    padding: 3.75rem 0;
  }

  .home-news__grid {
    grid-template-columns: repeat(2, 1fr);

    gap: 1.5rem;
  }

  .home-news__container {
    padding-left: 1.5rem;

    padding-right: 1.5rem;
  }
}

@media (max-width: 640px) {
  .home-news {
    padding: 3rem 0;
  }

  .home-news__container {
    padding-left: 1rem;

    padding-right: 1rem;

    gap: 1.5rem;
  }

  .home-news__grid {
    grid-template-columns: 1fr;

    gap: 1.25rem;
  }

  .home-news__media {
    height: 13.75rem;
  }

  .home-news__body {
    padding: 1.125rem 1rem;
  }

  .home-news__card-title {
    font-size: 1.125rem;

    line-height: 1.625rem;
  }
}

/*--------------------------------------------------------------

# Home Partners Section (BEM)

--------------------------------------------------------------*/

.home-partners {
  width: 100%;

  background-color: var(--color-white);

  padding: 5rem 0;

  position: relative;
}

.home-partners__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;

  display: flex;

  flex-direction: column;

  gap: 2rem;
}

.home-partners__header {
  display: flex;

  flex-direction: column;

  align-items: flex-start;

  width: 100%;
}

.home-partners__slider {
  width: 100%;

  position: relative;

  overflow: hidden;
}

.home-partners__slider .swiper {
  width: 100%;

  padding: 0.625rem 0;
}

.home-partners__slide {
  height: auto;

  display: flex;

  justify-content: center;

  align-items: center;
}

.home-partners__card {
  width: 100%;

  max-width: 14.375rem;

  padding: 0.625rem;

  background-color: var(--color-white);

  border-radius: 1.25rem;

  border: 1px solid var(--color-primary);

  display: flex;

  align-items: center;

  justify-content: center;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.home-partners__card:hover {
  border-color: var(--color-primary-hover);
}

.home-partners__inner {
  width: 100%;

  height: 6.875rem;

  padding: 1rem;

  background-color: var(--color-white);

  border-radius: 0.625rem;

  overflow: hidden;

  display: flex;

  align-items: center;

  justify-content: center;
}

.home-partners__img {
  max-width: 10.25rem;

  max-height: 4.875rem;

  width: auto;

  height: auto;

  object-fit: contain;

  display: block;

  transition: transform 0.3s ease;
}

.home-partners__card:hover .home-partners__img {
  transform: scale(1.05);
}

/* Responsive */

@media (max-width: 1024px) {
  .home-partners {
    padding: 3.75rem 0;
  }

  .home-partners__container {
    padding-left: 1.5rem;

    padding-right: 1.5rem;

    gap: 1.5rem;
  }
}

@media (max-width: 640px) {
  .home-partners {
    padding: 3rem 0;
  }

  .home-partners__container {
    padding-left: 1rem;

    padding-right: 1rem;

    gap: 1.25rem;
  }

  .home-partners__inner {
    height: 5.625rem;

    padding: 0.625rem;
  }

  .home-partners__img {
    max-height: 3.75rem;
  }
}

/*--------------------------------------------------------------

# Footer (BEM)

--------------------------------------------------------------*/

.footer {
  position: relative;

  z-index: 10;

  background-color: var(--color-footer-bg);

  padding-top: 4rem;

  color: var(--color-white);

  font-family: var(--bic-primary-font), sans-serif;
}

.footer__container {
  width: 100%;

  max-width: 91.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 1.5rem;

  padding-right: 1.5rem;
}

.footer__main {
  display: flex;

  justify-content: space-between;

  align-items: flex-start;

  gap: 3rem;

  padding-bottom: 4rem;
}

/* Col 1: About */

.footer__col--about {
  flex: 0 0 34.375rem;

  max-width: 34.375rem;

  display: flex;

  flex-direction: column;

  align-items: flex-start;
}

.footer__heading {
  font-size: 1.25rem;

  font-weight: 600;

  line-height: 1.4;

  color: var(--color-white);

  margin-top: 0;

  margin-bottom: 1.5rem;

  text-transform: uppercase;

  letter-spacing: 0.02em;
}

.footer__desc {
  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5;

  color: var(--color-footer-text);

  margin-top: 0;

  margin-bottom: 1.5rem;
}

.footer__slogan {
  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5;

  color: var(--color-footer-text);

  margin: 0;

  max-width: 20rem;
}

/* Col 2: Contact */

.footer__col--contact {
  flex: 1 1 0%;

  min-width: 17.5rem;

  display: flex;

  flex-direction: column;

  align-items: flex-start;
}

.footer__title {
  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  color: var(--color-white);

  margin-top: 0;

  margin-bottom: 1.5rem;

  text-transform: uppercase;

  letter-spacing: 0.04em;
}

.footer__contact-list {
  display: flex;

  flex-direction: column;

  gap: 1rem;

  width: 100%;

  margin-bottom: 1.5rem;
}

.footer__contact-item {
  display: flex;

  align-items: flex-start;

  gap: 0.75rem;

  width: 100%;
}

.footer__contact-icon {
  flex-shrink: 0;

  width: 1.25rem;

  height: 1.25rem;

  color: var(--color-white);

  margin-top: 0.125rem;

  display: flex;

  align-items: center;

  justify-content: center;
}

.footer__contact-icon svg {
  width: 1.25rem;

  height: 1.25rem;

  display: block;
}

.footer__contact-text {
  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  color: var(--color-footer-text);

  word-break: break-word;
}

.footer__contact-link {
  color: var(--color-footer-text);

  text-decoration: none;

  transition: color 0.2s ease;
}

.footer__contact-link:hover,
.footer__contact-link:focus-visible {
  color: var(--color-white);

  text-decoration: underline;
}

.footer__socials {
  display: flex;

  align-items: center;

  gap: 0.75rem;
}

.footer__social-link {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  width: 2.5rem;

  height: 2.5rem;

  border-radius: 0.5rem;

  background-color: var(--color-footer-social-bg);

  color: var(--color-white);

  text-decoration: none;

  transition:
    background-color 0.25s ease,
    transform 0.2s ease;
}

.footer__social-link:hover,
.footer__social-link:focus-visible {
  background-color: var(--color-footer-social-hover);

  color: var(--color-white);

  transform: translateY(-0.125rem);
}

.footer__social-link svg {
  width: 1.25rem;

  height: 1.25rem;

  display: block;
}

/* Col 3: Quick Links */

.footer__col--links {
  flex: 0 0 auto;

  min-width: 12.5rem;

  display: flex;

  flex-direction: column;

  align-items: flex-start;
}

.footer__nav {
  width: 100%;
}

.footer__menu {
  list-style: none;

  padding: 0;

  margin: 0;

  display: flex;

  flex-direction: column;

  gap: 0.75rem;
}

.footer__menu-item,
.footer__menu > li {
  margin: 0;

  padding: 0;

  list-style: none;
}

.footer__menu-link,
.footer__menu > li > a {
  display: inline-block;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  color: var(--color-footer-text);

  text-decoration: none;

  transition:
    color 0.2s ease,
    transform 0.2s ease;
}

.footer__menu-link:hover,
.footer__menu-link:focus-visible,
.footer__menu > li > a:hover,
.footer__menu > li > a:focus-visible {
  color: var(--color-white);

  transform: translateX(0.1875rem);
}

/* Bottom Bar */

.footer__bottom {
  border-top: 1px solid var(--color-footer-border);

  padding-top: 1.5rem;

  padding-bottom: 1.5rem;
}

.footer__bottom-inner {
  display: flex;

  justify-content: space-between;

  align-items: center;

  gap: 1.5rem;
}

.footer__copyright a,
.footer__copyright {
  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  color: var(--color-footer-muted);
}

.footer__copyright a:hover {
  color: #fff;
}

.footer__policies {
  display: flex;

  align-items: center;

  gap: 1.5rem;

  flex-shrink: 0;
}

.footer__policy-link {
  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  color: var(--color-footer-muted);

  text-decoration: none;

  transition: color 0.2s ease;
}

.footer__policy-link:hover,
.footer__policy-link:focus-visible {
  color: var(--color-white);
}

/* Responsive Media Queries */

@media (max-width: 1199.98px) {
  .footer__main {
    flex-wrap: wrap;

    gap: 2.25rem;
  }

  .footer__col--about {
    flex: 1 1 100%;

    max-width: 100%;
  }

  .footer__col--contact {
    flex: 1 1 calc(60% - 1.125rem);
  }

  .footer__col--links {
    flex: 1 1 calc(40% - 1.125rem);
  }
}

@media (max-width: 767.98px) {
  .footer {
    padding-top: 3rem;
  }

  .footer__main {
    flex-direction: column;

    gap: 2rem;

    padding-bottom: 2.5rem;
  }

  .footer__col--about,
  .footer__col--contact,
  .footer__col--links {
    flex: 1 1 100%;

    max-width: 100%;

    width: 100%;
  }

  .footer__bottom-inner {
    flex-direction: column;

    align-items: flex-start;

    gap: 1rem;
  }

  .footer__policies {
    flex-wrap: wrap;

    gap: 1rem;
  }
}

.wpcf7-turnstile.cf-turnstile {
  text-align: center;

  margin-top: 1.25rem;
}

/*--------------------------------------------------------------

# Splitting text animation

--------------------------------------------------------------*/

.bic-section__title span.char,
.bic-section__title span.word {
  display: inline-block;
}

.bic-section__title span.char {
  position: relative;

  transform: translate(3.125rem, 0);

  opacity: 0;

  transition: all 0.3s;
}

.bic-ani.show .bic-section__title span.char {
  transform: translate(0, 0);

  transition-delay: calc(30ms * var(--char-index));

  opacity: 1;
}

/*--------------------------------------------------------------

# Scroll top & Loading

--------------------------------------------------------------*/

.bic-scroll-top {
  opacity: 0;

  visibility: hidden;

  transform: translateY(0.9375rem);

  position: fixed;

  bottom: 0.625rem;

  right: 0.625rem;

  z-index: 99;

  display: flex;

  justify-content: center;

  align-items: center;

  border-radius: 50%;

  background: var(--bic-secondary-color);

  box-shadow: 0 0.625rem 1.5625rem 0 rgba(0, 0, 0, 0.15);

  color: #fff;

  transition: 0.25s;

  width: 2.875rem;

  height: 2.875rem;

  padding: 0;
}

.bic-scroll-top .bic-icon {
  font-size: 1.5rem;

  font-weight: 700;

  color: #fff;
}

@media (min-width: 992px) {
  .bic-scroll-top {
    bottom: 1.875rem;

    right: 1.875rem;
  }
}

.bic-scroll-top.show {
  opacity: 1;

  visibility: visible;

  transform: translateY(0);
}

body.loading {
  overflow: hidden;
}

.bic-loading {
  position: fixed;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  z-index: 99999;

  width: 100%;

  height: 100%;

  display: flex;

  align-items: center;

  justify-content: center;

  background: #ffffff80;

  opacity: 0;

  visibility: hidden;

  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    transform 0.3s ease;
}

body.loading .bic-loading {
  opacity: 1;

  visibility: visible;

  pointer-events: unset;
}

.bic-loading__icon {
  width: 3.75rem;

  height: 3.75rem;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 100%;

  border: 0.125rem solid #ddd;

  border-top-color: var(--bic-primary-color);

  background: transparent;

  animation: spin 1s linear infinite;
}

/*--------------------------------------------------------------

# Responsive

--------------------------------------------------------------*/

@media only screen and (min-width: 1537px) and (max-width: 1700px) {
  :root {
    --bic-container-width: 85rem;

    --bic-site-gap: 5rem;
  }
}

@media only screen and (min-width: 1441px) and (max-width: 1536px) {
  :root {
    --bic-container-width: 78.75rem;

    --bic-site-gap: 5rem;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1440px) {
  :root {
    --bic-container-width: 72.5rem;

    --bic-site-gap: 5rem;
  }
}

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
  :root {
    --bic-container-width: 66.25rem;

    --bic-site-gap: 3.75rem;
  }
}

@media only screen and (max-width: 1024px) {
  :root {
    --bic-site-gap: 3.75rem;
  }

  .section-title,
  .bic-section__title {
    font-size: 1.5rem;

    line-height: 2.125rem;
  }

  .bic-page-header {
    min-height: 15.625rem;
  }
}

@media only screen and (max-width: 767px) {
  :root {
    --bic-header-height: 4.25rem;
  }
}

@media (max-width: 480px) {
  :root {
    --bic-site-gap: 2.875rem;
  }

  .section-title,
  .bic-section__title {
    font-size: 1.25rem;

    line-height: 1.75rem;
  }

  .bic-header__logo img {
    max-width: 11.25rem;

    width: 11.25rem;
  }

  .bic-header__search-toggle {
    width: 2.5rem;

    height: 2.5rem;
  }

  .bic-page-header {
    min-height: 9.375rem;
  }

  .bic-page-header__title {
    font-size: 1.5rem;
  }

  .bic-entry__content {
    padding: 0.9375rem;
  }

  a.read-more-link {
    margin-top: 1.875rem;
  }

  .bic-swiper-pagination1 {
    bottom: 0.9375rem;
  }
}

/* ==========================================================================

   # Archive Page (BEM)

   ========================================================================== */

.archive-page {
  width: 100%;

  background-color: var(--color-white);
}

.bic-container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;
}

/* Banner */

.archive-banner {
  width: 100%;

  height: 25rem;

  position: relative;

  overflow: hidden;

  display: flex;

  align-items: center;

  justify-content: center;

  background-color: var(--color-footer-bg);
}

.archive-banner__media {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

  z-index: 1;
}

.archive-banner__media img {
  width: 100%;

  height: 100%;

  object-fit: cover;
}

.archive-banner__overlay {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: var(--color-archive-overlay);

  z-index: 2;
}

.archive-banner__content {
  position: relative;

  z-index: 3;

  width: 100%;

  text-align: center;
}

.archive-banner__title {
  color: var(--color-white);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 3rem;

  font-weight: 600;

  line-height: 1.5;

  margin: 0;

  word-wrap: break-word;
}

/* Breadcrumb */

.archive-breadcrumb {
  width: 100%;

  background-color: var(--color-about-bg);

  border-bottom: 1px solid var(--color-border);

  padding: 1rem 0;
}

.archive-breadcrumb__list {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 0.5rem;

  margin: 0;

  padding: 0;

  list-style: none;
}

.archive-breadcrumb__item {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 0.875rem;

  line-height: 1.3125rem;
}

.archive-breadcrumb__link {
  color: var(--color-news-date);

  font-weight: 500;

  text-decoration: none;

  transition: color 0.2s ease;
}

.archive-breadcrumb__link:hover {
  color: var(--bic-secondary-color);
}

.archive-breadcrumb__sep {
  display: inline-flex;

  align-items: center;

  color: var(--color-news-date);
}

.archive-breadcrumb__current {
  color: var(--bic-secondary-color);

  font-weight: 600;
}

/* Category Filter */

.archive-filter {
  width: 100%;

  background-color: var(--color-white);

  border-bottom: 1px solid var(--color-border);

  padding: 1.5rem 0;
}

.archive-filter__list {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 0.75rem;

  margin: 0;

  padding: 0;

  list-style: none;
}

.archive-filter__btn {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding: 0.625rem 1.5rem;

  background-color: var(--color-gray-light);

  border-radius: 0.5rem;

  color: var(--color-black);

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-decoration: none;

  border: none;

  cursor: pointer;

  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;

  white-space: nowrap;
}

.archive-filter__btn:hover {
  background-color: var(--color-border);
}

.archive-filter__btn--active,
.archive-filter__btn--active:hover {
  background-color: var(--bic-secondary-color);

  color: var(--color-white);
}

/* Main Content & Grid */

.archive-main {
  width: 100%;

  padding-top: 3rem;

  padding-bottom: 5rem;

  background-color: var(--color-white);
}

.archive-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 2rem;

  width: 100%;
}

/* Card */

.archive-card {
  display: flex;

  flex-direction: column;

  background-color: var(--color-white);

  border-radius: 0.25rem;

  border: 1px solid var(--color-border);

  overflow: hidden;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.archive-card:hover {
  transform: translateY(-0.25rem);

  box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.08);

  border-color: var(--color-orange);
}

.archive-card__thumb {
  width: 100%;

  aspect-ratio: 4 / 3;

  overflow: hidden;

  position: relative;

  background-color: var(--color-gray-light);

  display: block;
}

.archive-card__img {
  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.4s ease;
}

.archive-card:hover .archive-card__img {
  transform: scale(1.05);
}

.archive-card__body {
  padding: 1.5rem;

  display: flex;

  flex-direction: column;

  flex-grow: 1;

  gap: 0.75rem;
}

.archive-card__meta {
  display: flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--color-news-date);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;
}

.archive-card__meta-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  stroke: var(--color-news-date);
}

.archive-card__title {
  margin: 0;

  color: var(--color-navy);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1.125rem;

  font-weight: 600;

  line-height: 1.6875rem;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;
}

.archive-card__title a {
  color: inherit;

  text-decoration: none;

  transition: color 0.2s ease;
}

.archive-card__title a:hover {
  color: var(--color-orange);
}

.archive-card__excerpt {
  margin: 0;

  color: var(--color-news-date);

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.625rem;

  display: -webkit-box;

  -webkit-line-clamp: 3;

  -webkit-box-orient: vertical;

  overflow: hidden;
}

.archive-card__more {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--bic-secondary-color);

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-decoration: none;

  margin-top: auto;

  padding-top: 0.25rem;

  transition: color 0.2s ease;
}

.archive-card__more-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  stroke: var(--color-orange);

  transition: transform 0.2s ease;
}

.archive-card:hover .archive-card__more-icon,
.archive-card__more:hover .archive-card__more-icon {
  transform: translateX(0.25rem);
}

/* Empty State */

.archive-empty {
  width: 100%;

  text-align: center;

  padding: 3.75rem 1.25rem;

  color: var(--color-news-date);

  font-size: 1.125rem;
}

/* Pagination */

.archive-pagination {
  margin-top: 3rem;

  width: 100%;

  display: flex;

  justify-content: center;

  align-items: center;

  gap: 0.625rem;
}

.archive-pagination__list {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.5rem;

  margin: 0;

  padding: 0;

  list-style: none;
}

.archive-pagination .page-numbers {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-width: 2.5rem;

  height: 2.5rem;

  padding: 0 1rem;

  border-radius: 0.25rem;

  border: 1px solid var(--color-border);

  color: var(--color-navy);

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  text-decoration: none;

  transition: all 0.2s ease;

  background-color: var(--color-white);
}

.archive-pagination .page-numbers:hover:not(.current) {
  border-color: var(--bic-secondary-color);

  color: var(--bic-secondary-color);
}

.archive-pagination .page-numbers.current {
  background-color: var(--bic-secondary-color);

  border-color: var(--bic-secondary-color);

  color: var(--color-white);
}

.archive-pagination .page-numbers.prev,
.archive-pagination .page-numbers.next {
  width: 2.5rem;

  min-width: 2.5rem;

  padding: 0;

  border-radius: 0.5rem;

  color: var(--color-news-title);
}

.archive-pagination .page-numbers.dots {
  border: none;

  background: transparent;

  min-width: 1.5rem;

  padding: 0;

  color: var(--color-news-date);
}

/* Responsive Media Queries */

@media (max-width: 1200px) {
  .archive-banner__title {
    font-size: 2.5rem;
  }
}

@media (max-width: 991px) {
  .archive-banner {
    height: 20rem;
  }

  .archive-banner__title {
    font-size: 2rem;
  }

  .archive-grid {
    grid-template-columns: repeat(2, 1fr);

    gap: 1.5rem;
  }

  .archive-main {
    padding-top: 2.25rem;

    padding-bottom: 3.75rem;
  }

  .archive-filter {
    padding: 1rem 0;
  }

  .archive-filter__list {
    overflow-x: auto;

    flex-wrap: nowrap;

    padding-bottom: 0.375rem;

    -webkit-overflow-scrolling: touch;
  }

  .archive-filter__btn {
    padding: 0.5rem 1.125rem;

    font-size: 0.9375rem;

    flex-shrink: 0;
  }
}

@media (max-width: 640px) {
  .archive-banner {
    height: 13.75rem;
  }

  .archive-banner__title {
    font-size: 1.5rem;

    line-height: 2.125rem;
  }

  .bic-container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .archive-grid {
    grid-template-columns: 1fr;

    gap: 1.25rem;
  }

  .archive-card__body {
    padding: 1.125rem;

    gap: 0.625rem;
  }

  .archive-card__title {
    font-size: 1rem;

    line-height: 1.5rem;
  }

  .archive-card__excerpt {
    font-size: 0.875rem;

    line-height: 1.375rem;
  }

  .archive-pagination {
    margin-top: 2rem;
  }

  .archive-pagination .page-numbers {
    min-width: 2.25rem;

    height: 2.25rem;

    padding: 0 0.75rem;

    font-size: 0.875rem;
  }

  .archive-pagination .page-numbers.prev,
  .archive-pagination .page-numbers.next {
    width: 2.25rem;

    min-width: 2.25rem;
  }
}

/* ==========================================================================

   # Single Post Page (BEM)

   ========================================================================== */

.single-page {
  width: 100%;

  background-color: var(--color-white);
}

.single-article {
  width: 100%;

  padding: 3rem 0 4rem 0;

  background-color: var(--color-white);
}

.single-article__container {
  width: 100%;

  max-width: 56.25rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 1.5rem;

  padding-right: 1.5rem;
}

.single-article__title {
  margin: 0 0 1rem 0;

  color: var(--color-navy);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 2.25rem;

  font-weight: 600;

  line-height: 1.4;

  word-wrap: break-word;
}

.single-article__meta {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 1.25rem;

  padding-bottom: 1.5rem;

  border-bottom: 1px solid var(--color-border);
}

.single-article__meta-item {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--color-news-date);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;
}

.single-article__meta-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  stroke: var(--color-news-date);
}

.single-article__lead {
  margin: 1.5rem 0 1rem 0;

  color: var(--color-content-text);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1.125rem;

  font-weight: 600;

  line-height: 1.75rem;
}

.single-article__featured {
  width: 100%;

  margin: 1rem 0 1.5rem 0;

  border-radius: 0.5rem;

  overflow: hidden;

  background-color: var(--color-gray-light);
}

.single-article__featured img {
  width: 100%;

  height: auto;

  max-height: 30rem;

  object-fit: cover;

  display: block;
}

.single-article__content {
  width: 100%;

  color: var(--color-content-text);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.625rem;

  word-break: break-word;
}

.single-article__content p {
  margin-top: 0;

  margin-bottom: 1rem;
}

.single-article__content h2,
.single-article__content h3,
.single-article__content h4 {
  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  color: var(--color-navy);

  font-weight: 600;

  margin: 1.75rem 0 1rem 0;

  line-height: 1.4;
}

.single-article__content h2 {
  font-size: 1.5rem;
}

.single-article__content h3 {
  font-size: 1.25rem;
}

.single-article__content ul,
.single-article__content ol {
  margin: 1rem 0 1.25rem 1.5rem;

  padding: 0;
}

.single-article__content li {
  margin-bottom: 0.5rem;

  line-height: 1.5rem;
}

.single-article__content img {
  max-width: 100%;

  height: auto;

  border-radius: 0.5rem;

  margin: 1.25rem 0;
}

.single-article__content blockquote {
  margin: 1.5rem 0;

  padding: 0.75rem 1.25rem;

  border-left: 0.1875rem solid var(--color-navy);

  background-color: var(--color-about-bg);

  color: var(--color-gray);

  font-style: italic;

  border-radius: 0 0.25rem 0.25rem 0;
}

/* Share Bar */

.single-article__share {
  margin-top: 2rem;

  padding-top: 1.5rem;

  border-top: 1px solid var(--color-border);

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 1rem;
}

.single-article__share-label {
  color: var(--color-navy);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 0.875rem;

  font-weight: 600;

  line-height: 1.25rem;
}

.single-article__share-btn {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  padding: 0.625rem 1.5rem;

  background-color: var(--color-facebook);

  color: var(--color-white);

  border-radius: 0.5rem;

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 0.875rem;

  font-weight: 600;

  line-height: 1.25rem;

  text-decoration: none;

  transition:
    background-color 0.2s ease,
    transform 0.2s ease;
}

.single-article__share-btn:hover {
  background-color: var(--color-facebook-hover);

  color: var(--color-white);

  transform: translateY(-1px);
}

.single-article__share-icon {
  width: 1rem;

  height: 1rem;

  fill: currentColor;
}

/* Related Posts Section */

.single-related {
  width: 100%;

  padding: 5rem 0;

  background-color: var(--color-about-bg);

  border-top: 1px solid var(--color-border);
}

.single-related__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;
}

.single-related__title {
  margin: 0 0 2rem 0;

  color: var(--color-navy);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 2rem;

  font-weight: 600;

  line-height: 3rem;
}

.single-related__action {
  margin-top: 3rem;

  display: flex;

  justify-content: center;

  align-items: center;
}

.single-related__btn {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.5rem;

  padding: 0.75rem 2rem;

  background-color: var(--color-navy);

  color: var(--color-white);

  border-radius: 0.25rem;

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 600;

  line-height: 1.5rem;

  text-decoration: none;

  transition:
    background-color 0.2s ease,
    transform 0.2s ease;
}

.single-related__btn:hover {
  background-color: var(--color-orange);

  color: var(--color-white);

  transform: translateY(-0.125rem);
}

.single-related__btn-icon {
  width: 1rem;

  height: 1rem;

  flex-shrink: 0;

  stroke: currentColor;
}

/* Responsive */

@media (max-width: 991px) {
  .single-article {
    padding: 2.25rem 0 3rem 0;
  }

  .single-article__title {
    font-size: 1.75rem;

    line-height: 2.375rem;
  }

  .single-related {
    padding: 3.75rem 0;
  }

  .single-related__title {
    font-size: 1.75rem;

    line-height: 2.375rem;

    margin-bottom: 1.5rem;
  }
}

@media (max-width: 640px) {
  .single-article {
    padding: 1.5rem 0 2.25rem 0;
  }

  .single-article__container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .single-article__title {
    font-size: 1.375rem;

    line-height: 1.875rem;
  }

  .single-article__meta {
    gap: 0.75rem;
  }

  .single-article__lead {
    font-size: 1rem;

    line-height: 1.5rem;
  }

  .single-related {
    padding: 2.5rem 0;
  }

  .single-related__container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .single-related__title {
    font-size: 1.375rem;

    line-height: 1.875rem;
  }

  .single-related__action {
    margin-top: 2rem;
  }
}

/* ==========================================================================

   # About Page (BEM)

   ========================================================================== */

.page-about {
  width: 100%;

  background-color: var(--color-white);
}

/* About Intro Section */

.about-intro {
  width: 100%;

  padding: 5rem 0;

  background-color: var(--color-about-bg);
}

.about-intro__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;

  display: flex;

  align-items: center;

  gap: 3rem;
}

.about-intro__media {
  flex: 1;

  height: 31.25rem;

  border-radius: 0.5rem;

  overflow: hidden;

  background-color: var(--color-gray-light);

  display: block;
}

.about-intro__img {
  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;
}

.about-intro__body {
  flex: 1;

  display: flex;

  flex-direction: column;

  gap: 1rem;
}

.about-intro__title {
  margin: 0;

  color: var(--color-navy);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 2rem;

  font-weight: 600;

  line-height: 3rem;
}

.about-intro__desc {
  margin: 0;

  color: var(--color-content-text);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1.125rem;

  font-weight: 500;

  line-height: 1.75rem;
}

.about-intro__features {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 1rem 1.5rem;

  margin-top: 0.5rem;

  list-style: none;

  padding: 0;
}

.about-intro__feature {
  display: flex;

  align-items: flex-start;

  gap: 0.75rem;
}

.about-intro__feature-icon {
  width: 1.25rem;

  height: 1.25rem;

  color: var(--color-orange);

  flex-shrink: 0;

  margin-top: 0.125rem;
}

.about-intro__feature-text {
  color: var(--color-content-text);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;
}

.about-intro__action {
  margin-top: 0.75rem;
}

/* About Culture Section */

.about-culture {
  width: 100%;

  position: relative;

  overflow: hidden;

  padding: 6rem 0;

  background-color: var(--color-footer-bg);
}

.about-culture__bg {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

  z-index: 1;
}

.about-culture__overlay {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: var(--color-about-culture-overlay);

  z-index: 2;
}

.about-culture__container {
  position: relative;

  z-index: 3;

  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;
}

.about-culture__header {
  max-width: 56.25rem;

  margin: 0 auto 4rem auto;

  text-align: center;

  display: flex;

  flex-direction: column;

  gap: 1rem;
}

.about-culture__title {
  margin: 0;

  color: var(--color-white);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 2.25rem;

  font-weight: 600;

  line-height: 3.375rem;
}

.about-culture__subtitle {
  margin: 0;

  color: rgba(255, 255, 255, 0.9);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1.125rem;

  font-weight: 500;

  line-height: 1.75rem;
}

.about-culture__grid {
  display: grid;

  grid-template-columns: repeat(5, 1fr);

  gap: 2rem;

  width: 100%;

  list-style: none;

  padding: 0;

  margin: 0;
}

.about-culture__item {
  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 1.25rem;

  text-align: center;
}

.about-culture__icon-wrap {
  width: 6rem;

  height: 6rem;

  border-radius: 50%;

  background-color: var(--color-white);

  box-shadow: 0 0.625rem 1.5625rem rgba(0, 0, 0, 0.15);

  display: flex;

  align-items: center;

  justify-content: center;

  color: var(--color-navy);

  flex-shrink: 0;

  transition: transform 0.3s ease;
}

.about-culture__item:hover .about-culture__icon-wrap {
  transform: translateY(-0.375rem) scale(1.05);
}

.about-culture__icon {
  width: 3rem;

  height: 3rem;

  stroke: var(--color-navy);
}

.about-culture__text {
  color: var(--color-white);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1rem;

  font-weight: 500;

  line-height: 1.5rem;

  margin: 0;
}

/* About Pillars (Vision, Mission, Values) */

.about-pillars {
  width: 100%;

  padding: 5rem 0 6.25rem 0;

  background-color: var(--color-white);
}

.about-pillars__container {
  width: 100%;

  max-width: 95.625rem;

  margin-left: auto;

  margin-right: auto;

  padding-left: 2rem;

  padding-right: 2rem;
}

.about-pillars__grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 2rem;

  width: 100%;
}

.about-pillars__card {
  position: relative;

  height: 24rem;

  border-radius: 0.5rem;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  text-align: center;

  padding: 2rem 1.5rem;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.about-pillars__card:hover {
  transform: translateY(-0.375rem);

  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.15);
}

.about-pillars__card-bg {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

  z-index: 1;
}

.about-pillars__card-overlay {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  z-index: 2;
}

.about-pillars__card-overlay--blue {
  background: var(--color-pillar-blue-overlay);
}

.about-pillars__card-overlay--orange {
  background: var(--color-pillar-orange-overlay);
}

.about-pillars__card-content {
  position: relative;

  z-index: 3;

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 1rem;

  max-width: 25rem;
}

.about-pillars__card-title {
  margin: 0;

  color: var(--color-white);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 2rem;

  font-weight: 600;

  line-height: 3rem;
}

.about-pillars__card-desc {
  margin: 0;

  color: rgba(255, 255, 255, 0.95);

  font-family: var(--bic-primary-font), "Montserrat", sans-serif;

  font-size: 1.125rem;

  font-weight: 500;

  line-height: 1.75rem;
}

/* Responsive Media Queries */

@media (max-width: 1200px) {
  .about-culture__grid {
    grid-template-columns: repeat(3, 1fr);

    gap: 1.75rem;
  }
}

@media (max-width: 991px) {
  .about-intro {
    padding: 3.75rem 0;
  }

  .about-intro__container {
    flex-direction: column;

    gap: 2.25rem;
  }

  .about-intro__media {
    width: 100%;

    height: 23.75rem;
  }

  .about-intro__title {
    font-size: 1.75rem;

    line-height: 2.5rem;
  }

  .about-culture {
    padding: 4rem 0;
  }

  .about-culture__header {
    margin-bottom: 2.5rem;
  }

  .about-culture__title {
    font-size: 1.875rem;

    line-height: 2.75rem;
  }

  .about-pillars {
    padding: 3.75rem 0 5rem 0;
  }

  .about-pillars__grid {
    grid-template-columns: 1fr;

    gap: 1.5rem;
  }

  .about-pillars__card {
    height: 20rem;
  }
}

@media (max-width: 640px) {
  .about-intro {
    padding: 2.5rem 0;
  }

  .about-intro__container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .about-intro__media {
    height: 16.25rem;
  }

  .about-intro__title {
    font-size: 1.5rem;

    line-height: 2.125rem;
  }

  .about-intro__desc {
    font-size: 1rem;

    line-height: 1.5625rem;
  }

  .about-intro__features {
    grid-template-columns: 1fr;

    gap: 0.75rem;
  }

  .about-culture {
    padding: 3rem 0;
  }

  .about-culture__container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .about-culture__title {
    font-size: 1.5rem;

    line-height: 2.125rem;
  }

  .about-culture__subtitle {
    font-size: 1rem;

    line-height: 1.5rem;
  }

  .about-culture__grid {
    grid-template-columns: 1fr;

    gap: 1.5rem;
  }

  .about-pillars {
    padding: 2.5rem 0 3.75rem 0;
  }

  .about-pillars__container {
    padding-left: 1rem;

    padding-right: 1rem;
  }

  .about-pillars__card {
    height: 17.5rem;

    padding: 1.5rem 1rem;
  }

  .about-pillars__card-title {
    font-size: 1.5rem;

    line-height: 2.125rem;
  }

  .about-pillars__card-desc {
    font-size: 1rem;

    line-height: 1.5rem;
  }
}

/* ==========================================================================

   Product Archive Page (BEM)

   ========================================================================== */

.prod-archive-main {
  width: 100%;

  padding: 3rem 0 5rem 0;

  background-color: var(--color-white);
}

.prod-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 1.75rem;
}

.prod-card {
  display: flex;

  flex-direction: column;

  background-color: var(--color-white);

  border: 1px solid var(--color-border);

  border-radius: 1rem;

  overflow: hidden;

  text-decoration: none;

  box-shadow: 0 0.25rem 1.25rem rgba(0, 0, 0, 0.04);

  transition:
    transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.3s ease;

  position: relative;
}

.prod-card:hover {
  box-shadow: 0 1rem 2.25rem rgba(17, 24, 39, 0.12);

  border-color: rgba(91, 190, 233, 0.5);
}

.prod-card__media {
  position: relative;

  width: 100%;

  overflow: hidden;

  background-color: var(--color-gray-light);
}

.prod-card__thumb {
  display: block;

  width: 100%;

  aspect-ratio: 1/1;

  position: relative;

  overflow: hidden;

  text-decoration: none;
}

.prod-card__img {
  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.prod-card:hover .prod-card__img {
  transform: scale(1.06);
}

.prod-card__overlay {
  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.02) 0%,

    rgba(0, 0, 0, 0.15) 100%
  );

  opacity: 0;

  pointer-events: none;

  transition: opacity 0.3s ease;
}

.prod-card:hover .prod-card__overlay {
  opacity: 1;
}

.prod-card__badge {
  position: absolute;

  z-index: 2;

  pointer-events: none;

  display: inline-flex;

  align-items: center;

  gap: 0.3125rem;

  padding: 0.375rem 0.875rem;

  border-radius: 62.4375rem;

  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 0.75rem;

  font-weight: 700;

  line-height: 1;

  box-shadow: 0 0.125rem 0.625rem rgba(0, 0, 0, 0.08);
}

.prod-card__badge--cat {
  top: 0.875rem;

  left: 0.875rem;

  background: rgba(255, 255, 255, 0.94);

  backdrop-filter: blur(0.5rem);

  -webkit-backdrop-filter: blur(0.5rem);

  color: var(--color-navy);

  border: 1px solid rgba(255, 255, 255, 0.9);

  text-transform: uppercase;

  letter-spacing: 0.03125rem;
}

.prod-card__badge--weight {
  top: 0.875rem;

  right: 0.875rem;

  background: rgba(33, 59, 139, 0.88);

  backdrop-filter: blur(0.5rem);

  -webkit-backdrop-filter: blur(0.5rem);

  color: var(--color-white);

  border: 1px solid rgba(255, 255, 255, 0.2);
}

.prod-card__body {
  padding: 1.375rem 1.5rem 1.375rem 1.5rem;

  display: flex;

  flex-direction: column;

  flex-grow: 1;

  background-color: var(--color-white);
}

.prod-card__title {
  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1.125rem;

  font-weight: 700;

  line-height: 1.4;

  color: var(--color-black);

  margin: 0 0 1rem 0;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;
}

.prod-card__title a {
  color: var(--color-black);

  text-decoration: none;

  transition: color 0.2s ease;
}

.prod-card:hover .prod-card__title a,
.prod-card__title a:hover {
  color: var(--bic-secondary-color);
}

.prod-card__footer {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 0.75rem;

  padding-top: 1rem;

  margin-top: auto;

  border-top: 1px solid var(--color-border);
}

.prod-card__price-wrap {
  display: flex;

  flex-direction: column;

  gap: 0.125rem;
}

.prod-card__price-label {
  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 0.75rem;

  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.03125rem;

  color: var(--color-news-date);
}

.prod-card__price {
  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 700;

  color: var(--bic-secondary-color);

  margin: 0;

  line-height: 1.3;
}

.prod-card__btn {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.375rem;

  padding: 0.5625rem 1.125rem;

  border-radius: 0.5rem;

  background-color: var(--bic-secondary-color);

  color: var(--color-white);

  font-weight: 600;

  line-height: 1;

  text-decoration: none;

  border: 1px solid transparent;

  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.prod-card:hover .prod-card__btn {
  background-color: var(--bic-secondary-color);

  color: var(--color-white);

  box-shadow: 0 0.25rem 0.75rem var(--color-main-shadow);
}

.prod-card__btn-icon {
  transition: transform 0.25s ease;
}

.prod-card:hover .prod-card__btn-icon {
  transform: translateX(0.1875rem);
}

/* Responsive Breakpoints */

@media (max-width: 1200px) {
  .prod-grid {
    grid-template-columns: repeat(3, 1fr);

    gap: 1.25rem;
  }

  .prod-card__body {
    padding: 1.125rem 1.25rem;
  }

  .prod-card__title {
    font-size: 1.0625rem;
  }
}

@media (max-width: 992px) {
  .prod-grid {
    grid-template-columns: repeat(2, 1fr);

    gap: 1.25rem;
  }
}

@media (max-width: 768px) {
  .prod-archive-main {
    padding: 2rem 0 3.75rem 0;
  }

  .prod-grid {
    grid-template-columns: repeat(2, 1fr);

    gap: 1rem;
  }

  .prod-card__body {
    padding: 1rem;
  }

  .prod-card__title {
    font-size: 1rem;

    margin-bottom: 0.75rem;
  }

  .prod-card__footer {
    padding-top: 0.75rem;
  }

  .prod-card__price {
    font-size: 0.9375rem;
  }

  .prod-card__btn {
    padding: 0.4375rem 0.875rem;

    font-size: 0.8125rem;
  }
}

@media (max-width: 576px) {
  .prod-grid {
    grid-template-columns: 1fr;

    gap: 1.25rem;
  }

  .prod-card__thumb {
    aspect-ratio: 16 / 10;
  }
}

/* ==========================================================================

   Single Product Page (BEM)

   ========================================================================== */

.single-prod-page {
  background-color: var(--color-white);
}

.single-prod {
  width: 100%;

  padding: 2.5rem 0 5rem 0;

  background-color: var(--color-white);
}

.single-prod__layout {
  display: grid;

  grid-template-columns: minmax(0, 1fr) 18.75rem;

  gap: 2.25rem;

  align-items: start;
}

.single-prod__main {
  min-width: 0;

  width: 100%;
}

/* Hero Section: Gallery & Quick Info */

.single-prod__hero {
  display: grid;

  grid-template-columns: 26.25rem minmax(0, 1fr);

  gap: 2.25rem;

  align-items: start;
}

/* Gallery Swiper Slider */

.single-prod__gallery {
  min-width: 0;

  width: 100%;

  display: flex;

  flex-direction: column;
}

.single-prod__main-swiper {
  width: 100%;

  height: 25rem;

  background-color: var(--color-prod-thumb-bg);

  border-radius: 1rem;

  overflow: hidden;

  position: relative;

  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.04);
}

.single-prod__slide {
  width: 100%;

  height: 100%;

  display: flex;

  align-items: center;

  justify-content: center;

  padding: 1.5rem;

  box-sizing: border-box;
}

.single-prod__gallery-main {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: zoom-in;
  text-decoration: none;
  outline: none;
}

.single-prod__zoom-icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: #1a1a1a;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  opacity: 0.75;
  transform: scale(0.92);
  transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.2s ease, color 0.2s ease;
  pointer-events: none;
  z-index: 2;
}

.single-prod__gallery-main:hover .single-prod__zoom-icon {
  opacity: 1;
  transform: scale(1);
  background: #ffffff;
  color: #da251d;
}

.single-prod__gallery-main:hover .single-prod__gallery-img {
  transform: scale(1.02);
}

.single-prod__gallery-img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
  user-select: none;
  transition: transform 0.3s ease;
}

.single-prod__thumbs-swiper {
  width: 100%;

  margin-top: 0.875rem;

  overflow: hidden;

  padding-bottom: 0.125rem;
}

.single-prod__thumb-slide {
  width: 4.5rem !important;

  height: 4.5rem;

  flex-shrink: 0;
}

.single-prod__thumb-btn {
  width: 100%;

  height: 100%;

  border-radius: 0.625rem;

  background-color: var(--color-prod-thumb-bg);

  border: 0.125rem solid transparent;

  padding: 0.375rem;

  cursor: pointer;

  display: flex;

  align-items: center;

  justify-content: center;

  transition: all 0.25s ease;

  overflow: hidden;

  box-sizing: border-box;
}

.single-prod__thumb-btn img {
  max-width: 100%;

  max-height: 100%;

  object-fit: contain;

  display: block;
}

.single-prod__thumb-btn.is-active,
.single-prod__thumb-slide.swiper-slide-thumb-active .single-prod__thumb-btn {
  background-color: #ffffff;

  border-color: var(--bic-secondary-color);
}

/* Info Column */

.single-prod__info {
  display: flex;

  flex-direction: column;

  min-width: 0;
}

.single-prod__title {
  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1.75rem;

  font-weight: 700;

  color: var(--bic-secondary-color);

  line-height: 1.3;

  margin: 0 0 1rem 0;
}

.single-prod__price-box {
  margin-bottom: 0.5rem;
}

.single-prod__price {
  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1.125rem;

  font-weight: 700;

  color: var(--color-black);

  margin-bottom: 0.25rem;

  line-height: 1.3;
}

.single-prod__origin {
  color: var(--color-news-date);

  font-weight: 500;

  line-height: 1.4;

  margin-bottom: 0.25rem;
}

.single-prod__weight {
  color: var(--color-gray);

  font-weight: 500;

  line-height: 1.4;
}

.single-prod__weight strong {
  color: var(--color-black);

  font-weight: 700;
}

/* Product Information right below "Liên hệ" */

.single-prod__desc-box {
  margin: 1.125rem 0 1.5rem 0;

  padding-top: 1.125rem;

  border-top: 1px solid var(--color-border);
}

.single-prod__desc-heading {
  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 700;

  color: var(--color-black);

  margin: 0 0 0.75rem 0;

  display: flex;

  align-items: center;

  gap: 0.375rem;

  line-height: 1.3;
}

.single-prod__desc-bullet {
  color: var(--bic-secondary-color);

  font-size: 1.125rem;

  line-height: 1;
}

.single-prod__desc-body {
  line-height: 1.65;

  color: var(--color-content-text);
}

.single-prod__desc-body p {
  margin: 0 0 0.625rem 0;
}

.single-prod__desc-body p:last-child {
  margin-bottom: 0;
}

.single-prod__ingredients-text {
  margin-top: 0.75rem;
}

.single-prod__ingredients-text p {
  margin: 0 0 0.375rem 0;
}

.single-prod__content-text {
  margin-top: 0.5rem;
}

/* CTA Row: Hotline & Messenger */

.single-prod__cta-row {
  display: flex;

  align-items: center;

  gap: 2.25rem;

  flex-wrap: wrap;

  padding-top: 0.625rem;
}

.single-prod__cta-item {
  display: flex;

  flex-direction: column;

  gap: 0.5rem;
}

.single-prod__cta-label {
  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-weight: 700;

  color: var(--bic-secondary-color);

  line-height: 1.2;
}

.single-prod__hotline-btn {
  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  padding: 0.5rem 1.375rem;

  border-radius: 62.4375rem;

  border: 0.09375rem solid var(--bic-secondary-color);

  background-color: var(--color-white);

  color: var(--bic-secondary-color);

  font-family: var(--bic-primary-font), "Lato", sans-serif;

  font-size: 0.9375rem;

  font-weight: 700;

  text-decoration: none;

  transition: all 0.25s ease;

  line-height: 1.4;
}

.single-prod__hotline-btn:hover {
  background-color: var(--bic-secondary-color);

  color: var(--color-white);

  transform: translateY(-0.125rem);

  box-shadow: 0 0.25rem 0.875rem var(--color-main-shadow);
}

.single-prod__messenger-btn {
  width: 2.75rem;

  height: 2.75rem;

  border-radius: 50%;

  background-color: #0084ff;

  color: var(--color-white);

  display: inline-flex;

  align-items: center;

  justify-content: center;

  text-decoration: none;

  transition: all 0.25s ease;

  box-shadow: 0 0.25rem 0.75rem rgba(0, 132, 255, 0.35);
}

.single-prod__messenger-btn:hover {
  transform: translateY(-0.125rem) scale(1.05);

  box-shadow: 0 0.375rem 1rem rgba(0, 132, 255, 0.45);
}

/* Sidebar Widget */

.single-prod__sidebar {
  width: 100%;

  position: sticky;

  top: 6.875rem;

  align-self: start;
}

/* Sidebar Widget */

.single-prod__widget {
  border: 1px solid var(--color-border);

  border-radius: 0.75rem;

  overflow: hidden;

  background-color: var(--color-white);

  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.04);
}

.single-prod__widget-header {
  background-color: var(--bic-secondary-color);

  color: var(--color-white);

  padding: 0.875rem 1.25rem;

  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.03125rem;

  line-height: 1.3;
}

.single-prod__cat-list {
  list-style: none;

  margin: 0;

  padding: 0;
}

.single-prod__cat-item {
  border-bottom: 1px solid var(--color-border);
}

.single-prod__cat-item:last-child {
  border-bottom: none;
}

.single-prod__cat-link {
  display: block;

  padding: 0.875rem 1.25rem;

  font-size: 0.9375rem;

  font-weight: 500;

  color: var(--color-gray);

  text-decoration: none;

  transition: all 0.2s ease;

  line-height: 1.4;
}

.single-prod__cat-link:hover,
.single-prod__cat-item.is-active .single-prod__cat-link {
  color: var(--bic-secondary-color);

  background-color: var(--color-main-light);

  padding-left: 1.5rem;

  font-weight: 600;
}

/* Responsive Breakpoints */

@media (max-width: 1200px) {
  .single-prod__layout {
    grid-template-columns: 1fr 18.75rem;

    gap: 2.25rem;
  }

  .single-prod__hero {
    grid-template-columns: 25rem 1fr;

    gap: 2rem;
  }

  .single-prod__gallery-main {
    height: 21.25rem;
  }
}

@media (max-width: 992px) {
  .single-prod__layout {
    grid-template-columns: 1fr;

    gap: 3rem;
  }

  .single-prod__hero {
    grid-template-columns: 23.75rem 1fr;

    gap: 1.75rem;
  }
}

@media (max-width: 768px) {
  .single-prod {
    padding: 1.75rem 0 3.75rem 0;
  }

  .single-prod__hero {
    grid-template-columns: 1fr;

    gap: 1.5rem;
  }

  .single-prod__gallery-main {
    height: 18.75rem;
  }

  .single-prod__title {
    font-size: 1.5rem;
  }

  .single-prod__trust-grid {
    grid-template-columns: 1fr;

    gap: 0.75rem;
  }

  .single-prod__cta-row {
    gap: 1.25rem;
  }
}

@media (max-width: 480px) {
  .single-prod__gallery-main {
    height: 15rem;

    padding: 1rem;
  }

  .single-prod__thumb-btn {
    width: 3.75rem;

    height: 3.75rem;
  }

  .single-prod__ingredients-table td {
    padding: 0.625rem 0.875rem;

    font-size: 0.8125rem;
  }
}

/* Single Product: Related Products Grid */

.single-prod-related {
  padding: 3.75rem 0 5rem 0;

  background-color: var(--color-about-bg);

  border-top: 1px solid var(--color-border);
}

.single-prod-related .single-related__title {
  color: var(--bic-secondary-color);

  font-family: var(--bic-heading-font), "Lato", sans-serif;

  font-size: 1.75rem;

  font-weight: 700;

  margin-bottom: 2rem;
}

.single-prod-related .prod-grid {
  grid-template-columns: repeat(4, 1fr);

  gap: 1.5rem;
}

@media (max-width: 1200px) {
  .single-prod-related .prod-grid {
    grid-template-columns: repeat(3, 1fr);

    gap: 1.25rem;
  }
}

@media (max-width: 992px) {
  .single-prod-related .prod-grid {
    grid-template-columns: repeat(2, 1fr);

    gap: 1.25rem;
  }
}

@media (max-width: 576px) {
  .single-prod-related {
    padding: 2.5rem 0 3.75rem 0;
  }

  .single-prod-related .single-related__title {
    font-size: 1.375rem;

    margin-bottom: 1.5rem;
  }

  .single-prod-related .prod-grid {
    grid-template-columns: 1fr;

    gap: 1rem;
  }
}
