/****************************************
* #### 0> ROOT & FONT STYLES
*****************************************/
:root {
  --pc-base-space: calc(8px + 1.5625vw);
  --pc-clamp: max(16px, min(calc(8px + 1.5625vw), 64px));
  --pc-content-space: max(1.4em, min(calc(10px + 1.1vw), 2.5em));
  --pc-black: #000000;
  --pc-white: #FFFFFF;
  --pc-primary: #253551;
  --pc-secondary: #B2AC88;
  --pc-dark-gray: #333333;
  --pc-cocoa-black: #1A1A1A;
  --pc-slate-gray: #757575;
  --pc-white-smoke: #F5F5F5;
  --pc-ghost-white: #F9F9F9;
  --pc-off-white: #FFF8EE;
  --pc-lavender: #E8EAF9;
  --pc-seafoam-green: #9FE2BF;
  --pc-forest-green: #498063;
  --pc-soft-sky-blue: #D8EAFE;
  --pc-warm-sand: #E4DCC3;
  --pc-misty-teal: #7FB1A4;
  --pc-candy-apple: #A0000A;
  --pc-cool-plum: #5D4965;
  --pc-sunset-coral: #D9685D;
  --pc-purple-gray: #C9C7D1;
  --pc-base-color: #212529;
  --pc-focus-color: #007BFF;
  --pc-placeholder-color: #A3A3A3;
  --pc-scrollbar-thumb: #9C9C9C;
  --pc-scrollbar-track: #000;
  --pc-body-font: "Plus Jakarta Sans", sans-serif;
  --pc-heading-font: "Lora", serif;
  --pc-gap: 1.5rem;
  --pc-100: 100%;
  --pc-line-height: 1.77;
  --pc-line-height-reset: 1;
  --pc-rounded: 6px;
  --pc-font-clamp: max(22px, min(calc(12px + 1.5625vw), 64px));
  --pc-font-xs: clamp(14px, 1vw, 16px);
  --pc-font-sm: clamp(16px, 1.2vw, 18px);
  --pc-font-md: clamp(21px, 2vw, 24px);
  --pc-font-lg: clamp(24px, 2.5vw, 28px);
  --pc-font-xl: clamp(28px, 3vw, 34px);
  --pc-font-xxl: clamp(34px,3.5vw, 42px);
  --pc-font-xxxl: clamp(40px, 3.5vw, 52px);
  --pc-font-4xl: clamp(48px, 3.5vw, 64px);
  --pc-font-default: clamp(18px, 1.32vw, 21px);
  --pc-bold: 600;
  --pc-bolder: 900;
  --pc-none: none;
  --pc-auto: auto;
  --pc-0: 0;
  --pc-p025: calc(var(--pc-clamp) * 0.25);
  --pc-p05: calc(var(--pc-clamp) * 0.5);
  --pc-p1: var(--pc-clamp);
  --pc-p2: calc(var(--pc-clamp) * 2);

  /** MOBILE Default **/
  --pc-p2: calc(var(--pc-clamp) * 1.2);
  --pc-p3:   calc(var(--pc-clamp) * 1.2);
  --pc-p4:   calc(var(--pc-clamp) * 1.2);
  --pc-p5: 5%;

  --pc-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
  --pc-box-shadow: 0 8px 22px rgba(0,0,0,0.12);
  --pc-max-width: 1400px;
  --pc-stagger-offset: 20px;

  /** general styles **/
  --pc-default: var(--pc-base-color);
  --pc-body-link-color: var(--pc-primary);
  --pc-body-link-hover-color: var(--pc-secondary);
  --pc-body-bg: var(--pc-ghost-white);
  --pc-h1-color: var(--pc-primary);
  --pc-h2-color: var(--pc-primary);
  --pc-h3-h4-color: var(--pc-slate-gray);
  --pc-icon-color: var(--pc-primary);
  --pc-icon-hover-color: var(--pc-black);
  --pc-header-bg: var(--pc-white);
  --pc-header-color: var(--pc-base-color);
  --pc-header-link-hover-color: var(--pc-slate-gray);
  --pc-bg-overlay: var(--pc-white);
  --pc-bg-overlay-opacity: 0.4;
  --pc-page-header-bg-color: var(--pc-slate-gray);
  --pc-page-header-title-color: var(--pc-primary);
  --pc-page-header-description-color: var(--pc-base-color);
  --pc-page-header-overlay-light: rgba(255,255,255,0.32);
  --pc-page-header-overlay-dark: rgba(0,0,0,0.35);

  --pc-footer-bg: var(--pc-black);
  --pc-footer-color: var(--pc-white);
  --pc-footer-heading-color: var(--pc-white);
  --pc-footer-link-color: var(--pc-white);
  --pc-footer-link-hover-color: var(--pc-slate-gray);


  /** menu styles **/
  --pc-mob-menu-bg: var(--pc-white);
  --pc-mob-menu-link-color: var(--pc-primary);
  --pc-mob-menu-hover-color: var(--pc-secondary);
  --pc-mob-menu-content-color: var(--pc-white);
  --pc-mob-submenu-bg: var(--pc-white);
  --pc-mob-submenu-link-color: var(--pc-primary);
  --pc-mob-submenu-hover-color: var(--pc-secondary);
  --pc-menu-bg: var(--pc-white);
  --pc-menu-color: var(--pc-base-color);
  --pc-menu-hover-color: var(--pc-primary);
  --pc-submenu-bg: var(--pc-white-smoke);
  --pc-submenu-color: var(--pc-slate-gray);
  --pc-submenu-hover-color: var(--pc-primary);
  --pc-menu-font-family: var(--pc-body-font);

  /** button styles **/
  --pc-btn-bg: var(--pc-forest-green);
  --pc-btn-color: var(--pc-white);
  --pc-btn-hover-bg: var(--pc-seafoam-green);
  --pc-btn-hover-color: var(--pc-black);

  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1;
}

@media (min-width: 768px) {
  :root {
  --pc-p2 : calc(var(--pc-clamp) * 2);
    --pc-p3: calc(var(--pc-clamp) * 3);
    --pc-p4: calc(var(--pc-clamp) * 4);
  }
}

/* Fallback for browsers that don't support clamp() */
@supports not (font-size: clamp(1rem, 1.25rem, 1.5rem)) {
  :root {
--pc-font-xsm: 1rem;      
    --pc-font-sm: 1.125rem;   
    --pc-font-default: 1.25rem; 
    --pc-font-md: 1.5rem;  
    --pc-font-l: 1.75rem;
    --pc-font-xl: 28px;
    --pc-font-xxl: 40px;
    --pc-font-xxxl: 45px;
    --pc-font-4xl: 50px;
  }
}


/****************************************
 * #### 1> Normalize & Reset
 *****************************************/
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
}

html,
body {
  height: 100%;
}

body {
  line-height: 1.5;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: var(--pc-base-color);
  -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  border-style: none;
}

img,
video {
  height: auto;
}

iframe,
object,
embed {
  max-width: 100%;
  width: 100%;
}

legend,
fieldset,
select,
textarea,
input,
button {
  font: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
  font-weight: normal;
}

:focus-visible {
  outline: 2px solid var(--pc-focus-color);
  outline-offset: 2px;
}

main:focus,
main:focus-visible {
  outline: none;
}

a {
  color: inherit;
  text-decoration: none;
}

::placeholder {
  color: var(--pc-placeholder-color);
  opacity: 1;
}

::-webkit-input-placeholder {
  color: var(--pc-placeholder-color);
}

:-moz-placeholder {
  color: var(--pc-placeholder-color);
  opacity: 1;
}

::-moz-placeholder {
  color: var(--pc-placeholder-color);
  opacity: 1;
}

:-ms-input-placeholder {
  color: var(--pc-placeholder-color);
}

* {
  scrollbar-color: var(--pc-scrollbar-track) var(--pc-scrollbar-thumb);
}

::-webkit-scrollbar {
  width: 8px;
  background-color: var(--pc-scrollbar-track);
}

::-webkit-scrollbar-thumb {
  background: var(--pc-scrollbar-thumb);
  border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/****************************************
 * #### 2> Global Styles
 *****************************************/
html {
  font-size: calc(15px + 0.360625vw);
  scroll-behavior: smooth;
}

@media (min-width:1920px) {
  html {
    font-size: clamp(1rem, 2vw + 1rem, 1.5rem);
  }
}

body {
  line-height: var(--pc-line-height);
  margin: 0 auto;
  padding: var(--pc-0);
  background-color: var(--pc-body-bg);
  color: var(--pc-default);
  font-family: var(--pc-body-font);
  font-optical-sizing: auto;
  font-size: var(--pc-font-sm);
  font-style: normal;
  font-weight: 500;
  min-height: 100vh;
}
@media (min-width: 768px) { 
  body {
    font-size: var(--pc-font-default);
  }
}
[data-device~="non-mobile"],
.pc-hide {
  display: var(--pc-none);
}

@media (min-width:1024px) {
  [data-device~="non-mobile"] {
    display: block;
  }

  [data-device~="mobile"] {
    display: var(--pc-none);
  }
}

/* widths */
[data-width~="w100"] {
  width: var(--pc-100);
}

[data-width~="max"] {
  max-width: var(--pc-max-width);
}

[data-width~="max-100"],
[data-width~="full"] {
  max-width: var(--pc-100);
}
[data-width~="narrow"] {
  max-width: 800px;
}
[data-width~="max-900"] {
  max-width: 900px;
}
[data-width~="max-960"],
[data-width~="default"] {
  max-width: 960px;
}

[data-width~="max-1120"],
[data-width~="wide"] {
  max-width: 1120px;
}

pc-wrap,
.pc-wrapper {
  max-width: var(--pc-max-width);
  margin-left: var(--pc-auto);
  margin-right: var(--pc-auto);
  box-sizing: border-box;
  display: block;
}

pc-content {
  display: block;
}

main p {
  margin-bottom: 0.5rem;
}

ul,
ol {
  padding-left: 1.5rem;
}

.noul {
  list-style: none;
  padding: var(--pc-0);
  margin: var(--pc-0);
}

a {
  color: var(--pc-body-link-color);
  text-decoration: var(--pc-none);

}

main a {
  font-weight: 600;
}

a:hover,
a:focus {
  color: var(--pc-body-link-hover-color);
  text-decoration: var(--pc-none);
}

main a:hover,
main a:focus {
  border-bottom: 2px solid currentColor;
}
.pc-none:hover,
.pc-none:focus {
  border-bottom: var(--pc-none);
}
.pc-hover:hover,
.pc-hover:focus {
  border-bottom: var(--pc-none);
  text-decoration: underline;
}
h1,
h2,
h3,
h4 {
  font-weight: normal;
  margin: 0 0 .8rem;
  line-height: 1.3;
  font-family: var(--pc-heading-font);
  letter-spacing: -0.02em;
}
h5, h6 {
  font-weight: 600;
  margin: 0 0 0.8rem;
  line-height: 1.4;
  font-family: var(--pc-body-font);
  letter-spacing: 0;
  color: var(--pc-primary);
}

h1 a,
h2 a,
h3 a,
h4 a h5 a {
  text-decoration: none;
}

h1,
h1>a {
 color: var(--pc-h1-color);
  font-size: calc(var(--pc-font-clamp) * 2);
}
@media (min-width: 1600px) {  

  h1,
  h1>a {
    font-size: calc(var(--pc-font-clamp) * 1.5);
  }
}

h2,
h2>a {
  font-size: calc(var(--pc-font-clamp) * 1.75);
  color: var(--pc-h2-color);
}
@media (min-width: 1600px) {

  h2,
  h2>a {
    font-size: calc(var(--pc-font-clamp) * 1.25);
  }
}

h3,
h3>a {
  font-size: var(--pc-font-xxxl);
  color: var(--pc-h3-h4-color);
}
h4,
h4>a {
  font-size: var(--pc-font-xl);
  color: var(--pc-h3-h4-color);
}

h5 {
  font-size: var(--pc-font-default);
}

h6 {
  font-size: var(--pc-font-sm);
}

svg {
  max-width: 28px;
  max-height: 28px;
  height: auto;
  fill: var(--pc-icon-color);
  overflow: visible;
}

svg:hover {
  fill: var(--pc-icon-hover-color);
}

@media (max-width: 767.95px) {

  #sidebar_right,
  #sidebar_left {
    padding-bottom: var(--pc-1);
  }
}

@media (min-width: 768px) {
  #sidebar_right {
    padding-left: var(--pc-1);
  }
}

main li,
aside li {
  padding-bottom: 0.3rem;
}

.pc-fix {
  position: fixed;
}

.pc-rel {
  position: relative;
}

.pc-stk {
  position: sticky;
}

.pc-abs {
  position: absolute;
}

.pc-shadow {
  box-shadow: 0 2px 6px 0 rgba(40, 128, 244, 0.46);
}
.pc-box-shadow {
  box-shadow: var(--pc-box-shadow);
} 
em{
  font-style:italic;
  font-weight:600;  
}
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  white-space: nowrap;
  width: 1px;
}

.pc-img-frame,
.pc-img-frame img {
  box-shadow: var(--pc-box-shadow);
  border-radius: var(--pc-rounded);
}

.pc-logo {
  max-width: 350px;
}

@media screen and (min-width: 980px) {
  .pc-logo {
    max-width: 400px;
  }
}

[data-animate] {
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}
.animate__animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-duration: var(--animate-duration);
  animation-duration: var(--animate-duration);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
a.pc-fancy {
  border-bottom: 2px solid currentColor;
  padding-bottom: 2px;
  text-decoration: var(--pc-none);
}

a.pc-fancy:hover {
  color: var(--pc-lavendar);
  text-decoration: var(--pc-none);
}

/****************************************
 * #### 3> Layouts
 *****************************************/

/* Flexbox */

[data-flex] {
  display: flex;
  flex-wrap: wrap;
}

[data-flex~="inline"] {
  display: inline-flex;
}

[data-flex~="no-wrap"] {
  flex-wrap: nowrap;
}

[data-flex~="left"] {
  justify-content: flex-start;
}

[data-flex~="center"] {
  justify-content: center;
}

[data-flex~="right"] {
  justify-content: flex-end;
}

[data-flex~="between"] {
  justify-content: space-between;
}

[data-flex~="around"] {
  justify-content: space-around;
}

[data-column] {
  box-sizing: border-box;
  flex-shrink: 0;
}

[data-column~="fill"] {
  width: 0;
  min-width: 0;
  flex-grow: 1;
}

/* 8-column layout */
[data-column~="auto"] {
  width: auto;
}

[data-column~="1of8"] {
  width: calc(100% * 1 / 8);
}

[data-column~="2of8"] {
  width: calc(100% * 2 / 8);
}

[data-column~="3of8"] {
  width: calc(100% * 3 / 8);
}

[data-column~="4of8"] {
  width: calc(100% * 4 / 8);
}

[data-column~="5of8"] {
  width: calc(100% * 5 / 8);
}

[data-column~="6of8"] {
  width: calc(100% * 6 / 8);
}

[data-column~="7of8"] {
  width: calc(100% * 7 / 8);
}

[data-column~="8of8"] {
  width: 100%;
}

[data-flex~="row"] {
  flex-direction: row;
}

[data-flex~="row-reverse"] {
  flex-direction: row-reverse;
}

[data-flex~="column"] {
  flex-direction: column;
}

[data-flex~="column-reverse"] {
  flex-direction: column-reverse;
}

[data-flex~="gap"] {
  gap: var(--pc-base-space);
}

@media (max-width:899.95px) {
  [data-flex~="responsive-block"] {
    flex-direction: column;
  }

  [data-column~="full"] {
    width: 100%;
  }
}

@media (max-width:767.95px) {
  [data-flex~="responsive"] {
    flex-direction: column;
  }
}

/* Responsive layouts for larger devices */
@media (min-width: 900px) {
  [data-flex~="responsive-block"] {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  [data-flex="responsive"] {
    flex-direction: row;
  }
}

/* Grid */
[data-grid] {
  display: grid;
  grid-template-columns: 1fr;
}

/* Default mobile grid layout */
[data-grid~="cols-1"] {
  grid-template-columns: repeat(1, 1fr);
}

[data-grid~="cols-auto-r"] {
  grid-template-columns: auto 1fr;
}

[data-grid~="cols-f2"] {
  grid-template-columns: repeat(2, auto);
}

[data-grid~="cols-sandwich"] {
  grid-template-columns: auto 1fr auto;
}

@media (min-width:640px) {
  [data-grid~="cols-2"] {
    grid-template-columns: repeat(2, 1fr);
  }

  [data-grid~="cols-f3"] {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width:979.95px) {
  [data-grid~="order-1"] {
    order: 1;
  }

  [data-grid~="order-reverse"] {
    order: -1;
  }
}

@media (min-width: 768px) {
  [data-grid~="cols-auto"] {
    grid-template-columns: 1fr auto;
  }

  [data-grid~="post-cols-2"] {
    grid-template-columns: repeat(2, 1fr);
  }

  [data-grid~="cols-3"] {
    grid-template-columns: repeat(3, 1fr);
  }

  [data-grid~="col-span-2"] {
    grid-column: span 2
  }

  [data-grid~="col-span-1"] {
    grid-column: span 1
  }
}

@media (min-width: 980px) {

  [data-grid~="cols-4"] {
    grid-template-columns: repeat(4, 1fr);
  }

  [data-grid~="cols-5"] {
    grid-template-columns: repeat(5, 1fr);
  }

  [data-grid~="cols-6"] {
    grid-template-columns: repeat(6, 1fr);
  }

  [data-grid~="cols-12"] {
    grid-template-columns: repeat(12, 1fr);
  }

  [data-grid~="col-span-3"] {
    grid-column: span 3
  }

  [data-grid~="col-span-4"] {
    grid-column: span 4
  }
  [data-grid~="col-span-5"] {
    grid-column: span 5
  }
  [data-grid~="col-span-6"] {
    grid-column: span 6
  }

  [data-grid~="col-span-7"] {
    grid-column: span 7
  }

  [data-grid~="col-span-8"] {
    grid-column: span 8
  }

  [data-grid~="col-span-9"] {
    grid-column: span 9
  }

  [data-grid~="col-span-12"],
  [data-grid~="col-span-auto"] {
    grid-column: span 12
  }
}
@media (min-width: 1080px) {
  [data-grid~="cols-sidebar-left"] {
    grid-template-columns: 350px 1fr;
  }
  [data-grid~="cols-sidebar-right"] {
    grid-template-columns: 1fr 350px;
  }
} 

/* grid horizontal align */
[data-grid~="left"] {
  justify-self: start
}

[data-grid~="center"] {
  justify-self: center
}

[data-grid~="right"] {
  justify-self: end
}

/* grid vertical align */
[data-grid~="vtop"] {
  align-content: start
}

[data-grid~="vmiddle"] {
  align-content: center
}

[data-grid~="vbottom"] {
  align-content: end
}

/* grid each item vertical align */
[data-grid~="top"] {
  align-self: start
}

[data-grid~="middle"] {
  align-self: center
}

[data-grid~="bottom"] {
  align-self: end
}

[data-grid~="gap"] {
  gap: var(--pc-base-space);
}

/* flex, grid alignments */
[data-align~="top"],
[data-align~="left"] {
  align-items: flex-start;
}

[data-align~="middle"],
[data-align~="center"] {
  align-items: center;
}

[data-align~="bottom"],
[data-align~="right"] {
  align-items: flex-end;
}

[data-align~="stretch"] {
  align-items: stretch;
}

[data-align~="baseline"] {
  align-items: baseline;
}


/* block */
[data-block] {
  display: block;
}

[data-block~="iblock"] {
  display: inline-block
}

[data-block~="inline"] {
  display: inline
}

/* table layout */
[data-table] {
  display: table
}

[data-table~="row"] {
  display: table-row
}

[data-table~="cell"] {
  display: table-cell
}

[data-table~="fix"] {
  table-layout: fixed
}

[data-table~="w100"] {
  width: 100%;
}

[data-table~="top"],
[data-align~="vtop"] {
  vertical-align: top;
}

[data-table~="middle"],
[data-align~="vmiddle"] {
  vertical-align: middle;
}

[data-table~="bottom"],
[data-align~="vbottom"] {
  vertical-align: bottom;
}

/***************************************
### paddings, margins and gaps
****************************************/
/* Gap*/

[data-space~="g0"] {
  gap: var(--pc-0);
}

[data-space~="g025"] {
  gap: var(--pc-p025);
}

[data-space~="g05"] {
  gap: var(--pc-p05);
}

[data-space~="g1"] {
  gap: var(--pc-p1);
}

[data-space~="g2"] {
  gap: var(--pc-p2);
}

/* Padding*/
[data-space~="p0"] {
  padding: var(--pc-0);
}

[data-space~="p0-b"] {
  padding-bottom: var(--pc-0);
}

[data-space~="p0-t"] {
  padding-top: var(--pc-0);
}

[data-space~="p025"] {
  padding: var(--pc-p025);
}

[data-space~="p025-t"] {
  padding-top: var(--pc-p025);
}

[data-space~="p025-b"] {
  padding-bottom: var(--pc-p025);
}

[data-space~="p025-l"] {
  padding-left: var(--pc-p025);
}

[data-space~="p025-r"] {
  padding-right: var(--pc-p025);
}

[data-space~="p05"] {
  padding: var(--pc-p05);
}

[data-space~="p05-t"] {
  padding-top: var(--pc-p05);
}

[data-space~="p05-b"] {
  padding-bottom: var(--pc-p05);
}

[data-space~="p05-l"] {
  padding-left: var(--pc-p05);
}

[data-space~="p05-r"] {
  padding-right: var(--pc-p05);
}

[data-space~="p1"] {
  padding: var(--pc-p1);
}

[data-space~="p1-t"] {
  padding-top: var(--pc-p1);
}

[data-space~="p1-b"] {
  padding-bottom: var(--pc-p1);
}

[data-space~="p1-l"] {
  padding-left: var(--pc-p1);
}

[data-space~="p1-r"] {
  padding-right: var(--pc-p1);
}

[data-space~="p2"] {
  padding: var(--pc-p2);
}

[data-space~="p2-t"] {
  padding-top: var(--pc-p2);
}

[data-space~="p2-b"] {
  padding-bottom: var(--pc-p2);
}

[data-space~="p2-l"] {
  padding-left: var(--pc-p2);
}

[data-space~="p2-r"] {
  padding-right: var(--pc-p2);
}
[data-space~="p3"] {
  padding: var(--pc-p3);
}
[data-space~="p3-t"] {
  padding-top: var(--pc-p3);
}

[data-space~="p3-b"] {
  padding-bottom: var(--pc-p3);
}
[data-space~="p3-l"]    { padding-left: var(--pc-p3); }
[data-space~="p3-r"]    { padding-right: var(--pc-p3); }
[data-space~="p4"]      { padding: var(--pc-p4); }
[data-space~="p4-t"]    { padding-top: var(--pc-p4); }
[data-space~="p4-b"]    { padding-bottom: var(--pc-p4); }
[data-space~="p4-l"]    { padding-left: var(--pc-p4); }
[data-space~="p4-r"]    { padding-right: var(--pc-p4); }
[data-space~="p5-l"]    { padding-left: var(--pc-p5); }
[data-space~="p5-r"]    { padding-right: var(--pc-p5); }

/* Margin*/
[data-space~="m0"] {
  margin: var(--pc-0);
}

[data-space~="m0-b"] {
  margin-bottom: var(--pc-0);
}

[data-space~="m0-t"] {
  margin-top: var(--pc-0);
}

[data-space~="m1-b"] {
  margin-bottom: var(--pc-p1);
}

[data-space~="m1-t"] {
  margin-top: var(--pc-p1);
}

[data-space~="m-lr"] {
  margin-left: var(--pc-auto);
  margin-right: var(--pc-auto);
}


/***************************************
### Typography
****************************************/
[data-text~="xs"] {
  font-size: var(--pc-font-xs);
}

[data-text~="sm"] {
  font-size: var(--pc-font-sm);
}

[data-text~="md"] {
  font-size: var(--pc-font-md);
}

[data-text~="lg"] {
  font-size: var(--pc-font-lg);
}

[data-text~="xl"] {
  font-size: var(--pc-font-xl);
}

[data-text~="xxl"] {
  font-size: var(--pc-font-xxl);
}

[data-text~="bold"] {
  font-weight: var(--pc-bold);
}

[data-text~="bolder"] {
  font-weight: var(--pc-bolder);
}

[data-text~="light"] {
  font-weight: 300;
}

[data-text~="upper"] {
  text-transform: uppercase;
}

[data-text~="lower"] {
  text-transform: lowercase;
}

[data-text~="capitalize"] {
  text-transform: capitalize;
}

[data-text~="default"] {
  text-transform: none;
}

[data-text~="underline"] {
  border-bottom: 1px solid currentcolor;
}

[data-text~="center"] {
  text-align: center;
}

@media (max-width: 767.95px) {
  [data-text~="res-center"] {
    text-align: center;
  }
}

[data-text~="left"] {
  text-align: left;
}

[data-text~="right"] {
  text-align: right;
}


/****************************************
  * #### 5> colors
*****************************************/
/* -------------------------------
   Text Colors: data-color
--------------------------------*/
[data-color~="default"] {
  color: var(--pc-default);
}

[data-color~="black"] {
  color: var(--pc-black);
}

[data-color~="white"] {
  color: var(--pc-white);
}

[data-color~="primary"] {
  color: var(--pc-primary);
}

[data-color~="secondary"] {
  color: var(--pc-secondary);
}

[data-color~="ghost-white"] {
  color: var(--pc-ghost-white);
}

[data-color~="white-smoke"] {
  color: var(--pc-white-smoke);
}

[data-color~="lavender"] {
  color: var(--pc-lavender);
}

[data-color~="slate-gray"] {
  color: var(--pc-slate-gray);
}

[data-color~="seafoam-green"] {
  color: var(--pc-seafoam-green);
}

[data-color~="forest-green"] {
  color: var(--pc-forest-green);
}

[data-color~="dark-gray"] {
  color: var(--pc-dark-gray);
}

[data-color~="cool-plum"] {
  color: var(--pc-cool-plum);
}

[data-color~="misty-teal"] {
  color: var(--pc-misty-teal);
}

[data-color~="soft-sky-blue"] {
  color: var(--pc-soft-sky-blue);
}

[data-color~="sunset-coral"] {
  color: var(--pc-sunset-coral);
}

[data-color~="warm-sand"] {
  color: var(--pc-warm-sand);
}

[data-color~="purple-gray"] {
  color: var(--pc-purple-gray);
}

[data-color~="cocoa-black"] {
  color: var(--pc-cocoa-black);
}

[data-color~="candy-apple"] {
  color: var(--pc-candy-apple);
}
[data-color~="heading"] {
  color: var(--pc-primary);
}

/* ------------------------------------
   Text Colors Hover: data-hover-color
-------------------------------------*/
[data-hover-color~="default"]:hover {
  color: var(--pc-default);
}

[data-hover-color~="black"]:hover {
  color: var(--pc-black);
}

[data-hover-color~="white"]:hover {
  color: var(--pc-white);
}

[data-hover-color~="primary"]:hover {
  color: var(--pc-primary);
}

[data-hover-color~="secondary"]:hover {
  color: var(--pc-secondary);
}

[data-hover-color~="ghost-white"]:hover {
  color: var(--pc-ghost-white);
}

[data-hover-color~="white-smoke"]:hover {
  color: var(--pc-white-smoke);
}

[data-hover-color~="lavender"]:hover {
  color: var(--pc-lavender);
}

[data-hover-color~="slate-gray"]:hover {
  color: var(--pc-slate-gray);
}

[data-hover-color~="seafoam-green"]:hover {
  color: var(--pc-seafoam-green);
}
[data-hover-color~="forest-green"]:hover {
  color: var(--pc-forest-green);
}

[data-hover-color~="dark-gray"]:hover {
  color: var(--pc-dark-gray);
}

[data-hover-color~="cool-plum"]:hover {
  color: var(--pc-cool-plum);
}

[data-hover-color~="misty-teal"]:hover {
  color: var(--pc-misty-teal);
}

[data-hover-color~="soft-sky-blue"]:hover {
  color: var(--pc-soft-sky-blue);
}

[data-hover-color~="sunset-coral"]:hover {
  color: var(--pc-sunset-coral);
}

[data-hover-color~="warm-sand"]:hover {
  color: var(--pc-warm-sand);
}

[data-hover-color~="purple-gray"]:hover {
  color: var(--pc-purple-gray);
}

[data-hover-color~="cocoa-black"]:hover {
  color: var(--pc-cocoa-black);
}

[data-hover-color~="candy-apple"]:hover {
  color: var(--pc-candy-apple);
}

/* -------------------------------
   Background Colors: data-bg
--------------------------------*/
[data-bg~="body"] {
  background-color: var(--pc-body-bg);
}

[data-bg~="default"] {
  background-color: rgba(40, 128, 244, 0.16);
}

[data-bg~="black"] {
  background-color: var(--pc-black);
}

[data-bg~="white"] {
  background-color: var(--pc-white);
}

[data-bg~="primary"] {
  background-color: var(--pc-primary);
}

[data-bg~="secondary"] {
  background-color: var(--pc-secondary);
}

[data-bg~="ghost-white"] {
  background-color: var(--pc-ghost-white);
}

[data-bg~="white-smoke"] {
  background-color: var(--pc-white-smoke);
}

[data-bg~="lavender"] {
  background-color: var(--pc-lavender);
}

[data-bg~="slate-gray"] {
  background-color: var(--pc-slate-gray);
}

[data-bg~="seafoam-green"] {
  background-color: var(--pc-seafoam-green);
}

[data-bg~="forest-green"] {
  background-color: var(--pc-forest-green);
}

[data-bg~="dark-gray"] {
  background-color: var(--pc-dark-gray);
}

[data-bg~="cool-plum"] {
  background-color: var(--pc-cool-plum);
}

[data-bg~="misty-teal"] {
  background-color: var(--pc-misty-teal);
}

[data-bg~="soft-sky-blue"] {
  background-color: var(--pc-soft-sky-blue);
}

[data-bg~="sunset-coral"] {
  background-color: var(--pc-sunset-coral);
}

[data-bg~="warm-sand"] {
  background-color: var(--pc-warm-sand);
}

[data-bg~="purple-gray"] {
  background-color: var(--pc-purple-gray);
}

[data-bg~="cocoa-black"] {
  background-color: var(--pc-cocoa-black);
}

[data-bg~="candy-apple"] {
  background-color: var(--pc-candy-apple);
}
[data-bg~="off-white"] {
  background-color: var(--pc-off-white);
}


/* --------------------------------------
   Background Hover Colors: data-hover-bg
-----------------------------------------*/

[data-hover-bg~="body"]:hover {
  background-color: var(--pc-body-bg);
}

[data-hover-bg~="default"]:hover {
  background-color: rgba(40, 128, 244, 0.16);
}

[data-hover-bg~="black"]:hover {
  background-color: var(--pc-black);
}

[data-hover-bg~="white"]:hover {
  background-color: var(--pc-white);
}

[data-hover-bg~="primary"]:hover {
  background-color: var(--pc-primary);
}

[data-hover-bg~="secondary"]:hover {
  background-color: var(--pc-secondary);
}

[data-hover-bg~="ghost-white"]:hover {
  background-color: var(--pc-ghost-white);
}

[data-hover-bg~="white-smoke"]:hover {
  background-color: var(--pc-white-smoke);
}

[data-hover-bg~="lavender"]:hover {
  background-color: var(--pc-lavender);
}

[data-hover-bg~="slate-gray"]:hover {
  background-color: var(--pc-slate-gray);
}

[data-hover-bg~="seafoam-green"]:hover {
  background-color: var(--pc-seafoam-green);
}

[data-hover-bg~="forest-green"]:hover {
  background-color: var(--pc-forest-green);
}

[data-hover-bg~="dark-gray"]:hover {
  background-color: var(--pc-dark-gray);
}

[data-hover-bg~="cool-plum"]:hover {
  background-color: var(--pc-cool-plum);
}

[data-hover-bg~="misty-teal"]:hover {
  background-color: var(--pc-misty-teal);
}

[data-hover-bg~="soft-sky-blue"]:hover {
  background-color: var(--pc-soft-sky-blue);
}

[data-hover-bg~="sunset-coral"]:hover {
  background-color: var(--pc-sunset-coral);
}

[data-hover-bg~="warm-sand"]:hover {
  background-color: var(--pc-warm-sand);
}

[data-hover-bg~="purple-gray"]:hover {
  background-color: var(--pc-purple-gray);
}

[data-hover-bg~="cocoa-black"]:hover {
  background-color: var(--pc-cocoa-black);
}

[data-hover-bg~="candy-apple"]:hover {
  background-color: var(--pc-candy-apple);
}

[data-hover-color],
[data-hover-bg] {
  transition: all 0.2s ease-in-out;
}

/****************************************
  * #### 6> Elements
*****************************************/
input[type="submit"],
[data-button],
.pc-btn {
  display: inline-block;
  padding: .20rem 1rem;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  border:none;
  border-radius: 20px;
  background: var(--pc-btn-bg);
  color: var(--pc-btn-color);
  outline: none;
  text-decoration: none;
  font-size: var(--pc-font-sm);
  font-weight: var(--pc-bold);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  transform: perspective(1px) translateZ(0);
  transition: color 0.3s ease-out;
}

input[type="submit"]:is(:hover, :focus, :active),
[data-button]:is(:hover, :focus, :active),
.pc-btn:is(:hover, :focus, :active) {
  background: var(--pc-btn-hover-bg);
  color: var(--pc-btn-hover-color);
  border-bottom: none;
}

input[type="submit"]:is(:hover, :focus, :active)::before,
[data-button]:is(:hover, :focus, :active)::before,
.pc-btn:is(:hover, :focus, :active)::before {
  transform: scaleX(1);
}

[data-button~="half"]{
    width: 50%;
}
[data-button~="full"]{
    width: 100%;
}
@media (max-width: 600px) {
  [data-button],
  .pc-btn {
    width: 100%;
    font-size: var(--pc-font-xs);
  }
}
@media (max-width: 340px) {
  [data-button],
  .pc-btn {
    padding:.20rem .75rem
  }
}
.pc-embed-container {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}

.pc-embed-container iframe {
  position: absolute;
  top: 0;
  border: 0;
  height: 100%;
  width: 100%;
}

/* popup styles */
.open-modal {
  cursor: pointer;
}

.pure-modal .checkbox {
  display: var(--pc-none);
}

/* Gray background */
.pure-modal .pure-modal-overlay {
  opacity: 0;
  transition: all 0.3s ease;
  width: 50%;
  position: absolute;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -100;
  transform: scale(1);
  display: var(--pc-none);
  background-color: rgba(0, 0, 0, 0.9);
}

/* Box */
.pure-modal .pure-modal-wrap {
  background: #fdfbfb;
  border-radius: 0.2em;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.2);
  line-height: 1.6;
  padding: var(--pc-p1) var(--pc-p2);
  width: 95%;
  margin: 20px auto;
  align-self: flex-start;
  transition: all 0.5s ease;
}

@media (min-width: 1150px) {
  .pure-modal .pure-modal-wrap {
    width: 60%;
    padding: var(--pc-p1);
    max-width: 920px;
    top: 20px;
  }
}

.pure-modal .pure-modal-wrap.small {
  width: 30%;
}

.pure-modal .pure-modal-wrap.a-center {
  align-self: center;
}

.pure-modal .pure-modal-wrap.from-left {
  transform: translateX(-100%);
}

.pure-modal .pure-modal-wrap.from-right {
  transform: translateX(100%);
}

.pure-modal .pure-modal-wrap.from-top {
  transform: translateY(-100%);
}

.pure-modal .pure-modal-wrap.from-bottom {
  transform: translateY(100%);
}


/* Close button */
.pure-modal .pure-modal-overlay .close {
  display: flex;
  flex-direction: column;
  align-content: center;
  background: var(--pc-sunset-coral);
  border-radius: 50%;
  justify-content: center;
  position: absolute;
  right: -5px;
  top: -10px;
  font-size: 15px;
  width: 30px;
  height: 30px;
  color: var(--pc-white);
  text-align: center
}

.pure-modal .pure-modal-overlay .close:hover {
  cursor: pointer;
  background-color: #d1d1d1;
  color: #4b5361;
  transition: all 0.3s ease;
}

.pure-modal .o-close {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: -100;
}

.pure-modal input:checked~.o-close {
  z-index: 9998;
}

.pure-modal input:checked~.pure-modal-overlay {
  transform: scale(1);
  opacity: 1;
  z-index: 9997;
  overflow: auto;
  display: var(--pc-flex);
  animation-duration: 0.5s;
  animation-name: fade-in;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: fade-in;
}

.pure-modal input:checked~.pure-modal-overlay .pure-modal-wrap {
  transform: translateY(0);
  z-index: 9999;
}

.pure-modal form.search-form {
  width: 100%;
  max-width: 100%;
}

.pure-modal .search-field {
  height: 47px;
  color: var(--pc-black);
}

/* Fadein from display:none */
@keyframes fade-in {
  0% {
    display: var(--pc-none);
    opacity: 0;
  }

  1% {
    display: var(--pc-flex);
    opacity: 0;
  }

  100% {
    display: var(--pc-flex);
    opacity: 1;
  }
}

@-moz-keyframes fade-in {
  0% {
    display: var(--pc-none);
    opacity: 0;
  }

  1% {
    display: var(--pc-flex);
    opacity: 0;
  }

  100% {
    display: var(--pc-flex);
    opacity: 1;
  }
}

@-webkit-keyframes fade-in {
  0% {
    display: var(--pc-none);
    opacity: 0;
  }

  1% {
    display: var(--pc-flex);
    opacity: 0;
  }

  100% {
    display: var(--pc-flex);
    opacity: 1;
  }
}

/****************************************
  * #### 7> header
*****************************************/
#pc-top-bar {
  padding: 5px;
}

.top-bar-links li::after {
  content: '|';
  margin: 0 8px;
}

#pc_global_header {
  background-color: var(--pc-header-bg);
  color: var(--pc-header-color);
}

@media (min-width:1024px) {
  #pc_global_header pc-wrap[data-grid] {
    grid-template-columns: 1fr auto;
    justify-items: start;
  }
}

@media (max-width:1023.95px) {
  .pc-header-links[data-grid~="cols-sandwich"] {
    grid-template-columns: auto auto auto;
  }

  .pc-header-links {
    padding-top: 10px;
  }

  .pc-header-links .pc-btn {
    width: 100%;
  }
}

#pc-sticky-mob-nav.smaller {
  background: var(--pc-white);
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 12;
  -webkit-box-shadow: 0 1px 15px rgba(89,93,92,.7);
  box-shadow: 0 1px 15px #595d5cb3;
}

#mb-menu-btn {
  margin-right: 3px;
  margin-top:5px;
}
@media (min-width:1024px) {
  #mb-menu-btn{
    display: var(--pc-none);
  }
}
#mb-menu-btn svg {
  max-width: 35px;
  max-height: 35px;
}

/* Mobile Menu Styles */
.overlay {
  background-color: var(--pc-mob-menu-bg);
  overflow-y: hidden;
  color: var(--pc-mob-menu-content-color);
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 300;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1);
  box-shadow: 5px 0 5px -5px #333;
}

.overlay-content {
  position: relative;
  top: 4%;
  width: 100%;
  margin-bottom: 7em;
}

.overlay .closebtn {
  background-color: var(--pc-secondary);
  top: 15px;
  right: 15px;
  font-size: 22px;
  border-radius: 100%;
  height: 32px;
  width: 32px;
  color: var(--pc-black);
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: end;
}

.nav-mobile .menu-sidebar {
  box-shadow: 5px 0 5px -5px #333;
  display: block;
  bottom: 0;
  background: var(--pc-mob-menu-bg);
  color: var(--pc-mob-menu-content-color);
  position: fixed;
  _transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1);
  top: 70px;
  left: 0;
  list-style-type: none;
  padding: 0;
  overflow-y: auto;
  width: 100%;
}

.nav-mobile .menu-sidebar .arrow {
  position: absolute;
  line-height: 50px;
  font-size: 32px;
  color: var(--pc-white);
  top: 0;
  z-index: 0;
}

.nav-mobile .menu-sidebar .arrow.right {
  right: 25px;
}

.nav-mobile .menu-sidebar li {
  height: 55px;
  line-height: 55px;
  font-size: 16px;
  text-align: left;
  position: relative;
  border-bottom: 1px solid rgba(98, 98, 98, 0.2);
  border-top: 1px solid rgba(98, 98, 98, 0.2);
  padding-left: 15px;
}

.nav-mobile li.pc-menu-footer {
  border: none;
  line-height: 1.77;
  padding-top:var(--pc-p1);
}

.nav-mobile .menu-sidebar li .menu-sub {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  overflow: hidden;
  overflow-y: auto;
  background: var(--pc-mob-menu-bg);
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0, 0, 0.3, 1);
  list-style-type: none;
  padding: 0;
  margin: 0;
  z-index: 2;
}

.nav-mobile .menu-sidebar li .menu-sub li {
  overflow: hidden;
}

.nav-mobile .menu-sidebar li .menu-sub .menu-sub-title {
  padding-left: 20px;
}

.nav-mobile .menu-sidebar li .submenu-label {
  cursor: pointer;
  width: 100%;
  height: 100%;
  display: block;
  color: var(--pc-mob-menu-link-color);
  font-weight: 600;
}

.menu-sidebar li .menu-sub .menu-sub-title label::before {
  content: "\2039";
  font-size: 32px;
  margin-top: -3px;
  vertical-align: top;
  display: inline-block;
  padding-right: 4px;
  color: var(--pc-white);
}

.nav-mobile .menu-sidebar li.menu-sub-title .submenu-label {
  color: var(--pc-white);
  font-weight: 600;
}

.nav-mobile .menu-sidebar li .submenu-toggle {
  display: none;
}

.nav-mobile .menu-sidebar li .submenu-toggle.active~.menu-sub,
.nav-mobile .menu-sidebar li .submenu-toggle:checked~.menu-sub {
  width: 100%;
  visibility: visible;
  z-index: 1;
  transition: width 0.35s cubic-bezier(0, 0, 0.3, 1);
}

.pc-mb-nav-item>a,
.menu-view-all>a,
.submenu-view-all>a,
.pc-mb-help>a {
  color: var(--pc-mob-menu-link-color);
}

.pc-mb-help svg {
  fill: var(--pc-secondary);
}

/* desktop menu */
.pc-site-nav {
  background: var(--pc-menu-bg);
}
#pc-sticky-site-nav.smaller{
  background: var(--pc-menu-bg);
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 12;
  -webkit-box-shadow: 0 1px 15px rgba(89,93,92,.7);
  box-shadow: 0 1px 15px #595d5cb3;
}
#pc-sticky-site-nav.smaller #pc_nav {
  transform: scale(.9);
  transform-origin: top center;
}

.menu>li.menu-dropdown-icon>a+ul:not(.sub-menu.normal-sub)>li>a {
  font-weight: 600;
  font-size: 1.4em;
  color: var(--pc-primary);
}

.menu-dropdown-icon>a::after {
  content: "\23F7";
  font-size: 20px;
  padding: 0;
  margin-left: 2px;
  margin-top:-2px;
  display: inline-block;
}

#pc_nav ul.menu {
  padding-left: 0;
}

.menu>ul {
   margin: 0 auto;
  width: 100%;
  list-style: none;
  padding: 0;
  position: relative;
  box-sizing: border-box;
  display: flex;   
  justify-content: center;
  align-items: center;
}


.menu>ul>li {
 padding: 10px 12px;
  margin: 0;
  position: relative;
}
.menu>ul>li a {
    text-decoration: none;
    display: flex;
  color: var(--pc-menu-color);
  font-size: var(--pc-font-sm);
  font-family: var(--pc-menu-font-family);
  position: relative;
  align-items: center;
}
.menu>ul>li a:hover {
  color: var(--pc-menu-hover-color);
}
.menu > ul > li > a::before{
  position:absolute;
  bottom:0;
  width:var(--pc-0);
  height:2px;
  background:var(--pc-menu-hover-color);
  content:"";
  left:0;
  transition:all .4s;
  opacity:0;
  visibility:hidden
}
.menu > ul > li.current-menu-parent > a:hover::before,
.menu > ul > li > a:hover::before{
  width:30px;
  opacity:1;
  visibility:visible
}

/* =========================================
   3. SUBMENU LAYOUT (THE FIX)
   ========================================= */

/* Base Dropdown Style */
.menu > ul > li > ul {
  display: block; /* We use opacity to toggle, not display */
  opacity: 0;
  visibility: hidden;
  
  width: 260px; /* Default width for single column */
  background: var(--pc-submenu-bg);
  padding: 10px 0 0; /* Removing padding so borders touch the edge */
  position: absolute;
  z-index: 99;
  left: 0;
  margin: 0;
  list-style: none;
  box-sizing: border-box;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  border-radius: 0 0 8px 8px;
  
  /* Animation Setup */
  transform: translateY(20px);
  transition: all 0.3s ease;
}

/* Show Dropdown on Hover */
.menu > ul > li:hover > ul {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Dropdown Links */
.menu > ul > li > ul li a {
  color: var(--pc-submenu-color);
  padding: 10px 8px; /* Comfortable click area */
  width: 100%;
  display: block;
  text-align: left;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

/* Hover Effect on Dropdown Items */
.menu > ul > li > ul li a:hover {
  background: rgba(127, 177, 164, 0.1);
  color: var(--pc-submenu-hover-color);
  transform: translateX(2px);
}


/* =========================================
   4. MULTI-COLUMN GRIDS (THE TABLE LOOK)
   ========================================= */

/* Shared Styles for 2, 3, and 4 columns */
.menu > ul > li[class*="pc-mcol"] > ul {
    display: grid; 
    padding: 0;
    padding: 10px 0 0; 
    grid-gap: 5px; /* Space between items */
    border-radius: 0 0 8px 8px;
}

/* Make grid items flex containers so text centers vertically */
.menu > ul > li[class*="pc-mcol"] > ul > li {
    display: flex;
    margin: 0;
    width: auto; /* Overrides old width settings */    
 }

/* Ensure links fill the grid cells */
.menu > ul > li[class*="pc-mcol"] > ul > li a {
   width: 100%;
    height: 100%;
    display: flex;
    align-items: center;  
    padding: 10px 8px;
     transition: all 0.2s ease;
}


.menu > ul > li.pc-mcol2 > ul {
    width: 600px;
    grid-template-columns: 1fr 1fr;
}
.menu > ul > li.pc-mcol2 > ul > li:nth-child(2n) { border-right: none; }
.menu > ul > li.pc-mcol2 > ul > li:nth-last-child(-n+2) { border-bottom: none; }


.menu > ul > li.pc-mcol3 > ul {
    width: 850px;
    grid-template-columns: 1fr 1fr 1fr;
}
.menu > ul > li.pc-mcol3 > ul > li:nth-child(3n) { border-right: none; }
.menu > ul > li.pc-mcol3 > ul > li:nth-last-child(-n+3) { border-bottom: none; }


.menu > ul > li.pc-mcol4 > ul {
    width: 1100px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.menu > ul > li.pc-mcol4 > ul > li:nth-child(4n) { border-right: none; }
.menu > ul > li.pc-mcol4 > ul > li:nth-last-child(-n+4) { border-bottom: none; }

.menu>li.menu-dropdown-icon>a+ul:not(.sub-menu.normal-sub)>li>a {
    font-weight: 600;
    font-size: clamp(18px, 2vw, 20px);
    color: var(--pc-white);
}

li.menu-dropdown-icon li.mega-col>a {
    color: var(--pc-black);
    padding-left: 0.5em;
    text-transform: uppercase;
    font-weight: 600
}

li.menu-dropdown-icon li.mega-col li {
    padding: 0.3em 0
}


@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0)
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0)
  }
}

@-webkit-keyframes fadeInUp {
  from {
    transform: translate3d(0, 0, 0)
  }

  to {
    transform: translate3d(0, 0, 0);
    opacity: 1
  }
}

/****************************************
  * #### 8> page and blog styles
*****************************************/
#pc-breadcrumb span.item {
  /* Ensures the separator and text stay together */
  display: inline-flex; 
  align-items: center;
}

#pc-breadcrumb span.item::before {
  content: '\00bb'; /* » */
  margin-left: 6px;
  margin-right: 6px;
  color: var(--pc-page-header-description-color); /* Ensure separators match text */
  opacity: 0.7; /* Optional: makes separator slightly subtle */
}
#pc-breadcrumb span.pc-hide { display: none; }
#pc-breadcrumb span.pc-hide:last-child::before {
  content: none;
}
#pc-breadcrumb span.item:first-child::before {
  content: none;
}
#pc-breadcrumb a {
  border-bottom: 1px solid currentColor;
  text-decoration: var(--pc-none);
  font-weight: 500;
  color: var(--pc-page-header-description-color);
  transition: opacity 0.3s ease;
}

#pc-breadcrumb a:hover {
  opacity: 0.8;
  border-bottom-color: transparent; /* Optional hover effect */
}
#pc_page_header{
  background-color: var(--pc-page-header-bg-color);
}
#pc_page_header p{
  color:var(--pc-page-header-description-color);
  max-width:60ch;
}
#pc_page_header h1{
  color:var(--pc-page-header-title-color);
  margin-bottom:.5rem;
}
.pc-header-picture,
.pc-header-img{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.pc-header-img{
    object-fit: cover;
    z-index: 1;
    object-position: center center;
}
#pc_page_header .pc-header-overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;
}
#pc_page_header .pc-header-overlay-light{
  background: var(--pc-page-header-overlay-light);
}
#pc_page_header .pc-header-overlay-dark{
  background: var(--pc-page-header-overlay-dark);
}
.pc-header-overlay + pc-wrap{
  position: relative;
  z-index: 3;
}
#pc_page_header .pc-text-mode-dark * {
   --pc-page-header-title-color:var(--pc-white);
   --pc-page-header-description-color:var(--pc-white);    
}
#pc_page_header .pc-text-mode-light *{
    --pc-page-header-title-color:var(--pc-black);
   --pc-page-header-description-color:var(--pc-black); 
}
 #pc_content_wrapper{
  width: 100%;
  max-width:var(--pc-max-width);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box; 
 }
 
@media (min-width:1080px) {
  #pc_content_wrapper{
    max-width: 1600px;
    padding-left:var(--pc-p1);
    padding-right:var(--pc-p1);   
  }
 #pc_content_wrapper[data-aside~="left"] main{
  padding-left:var(--pc-0);
 }
  #pc_content_wrapper[data-aside~="right"] main{
  padding-right:var(--pc-0);
 }
}
@media (max-width:1079.95px) {
 #pc_content_wrapper[data-aside~="left"] #pc_sidebar{
  order: 1;
 }
}
#pc_sidebar1{
  --offset: var(--pc-base-space);
  align-self: start;
  position: sticky;
  top: var(--offset);
}

#pc_sidebar .widget {
  background-color: var(--pc-lavender);
  padding: var(--pc-p05);
  border-radius: var(--pc-rounded);
  margin-bottom: var(--pc-p2 );
  box-shadow: var(--pc-shadow);
}
@media (min-width:1080px) {
  #pc_sidebar .widget {
    margin-bottom: var(--pc-p1);
  }
}
.widget form{
  padding:0;
}
.pc-block-section{
  margin-bottom: var(--pc-p2);
}

#pc-breadcrumb {
  /* Use Flexbox for better alignment and wrapping */
  display: flex;
  flex-wrap: wrap;
  align-items: center;   
  list-style: var(--pc-none);
  padding-top: var(--pc-p05);
  font-size: var(--pc-font-sm);
  font-family: var(--pc-heading-font);
  color: var(--pc-cocoa-black);
  justify-content: center;
}

.pc-post-title a:hover,
.pc-post-title a:focus {
  color: var(--pc-primary);
}

@media (min-width: 768px) {
  .pc-posts [data-grid~="cols-4"] {
    grid-template-columns: repeat(4, 1fr);
  }

  .pc-posts [data-grid~="col-span-3"] {
    grid-column: span 3;
  }
}
 .pc-meta-list{
  margin-top:1rem;
}
.pc-post-excerpt-text {
  max-width: 85ch;
}
@media (max-width: 1179.95px) {
  .post-navigation-content{
    margin-top:var(--pc-p2);
  }
}
.post-navigation .nav-links {
  display: flex;
  flex-direction: column;
  gap:var(--pc-p1);
  font-size:var(--pc-font-sm);
  }
 @media (min-width: 768px) {
  .post-navigation .nav-links {
    justify-content: space-between;
    flex-direction: row;
  }
}
  .post-navigation .nav-links a{
    display: flex;
    flex-direction: column;
  }
  .post-navigation .nav-links a:hover,
  .post-navigation .nav-links a:focus{
    border-bottom: none;
  }
  .post-navigation .nav-links a span{
    color:var(--pc-slate-gray);
  }

#pc-pagenav .page-numbers {
  display: block;
  text-decoration: none;
  width: 50px;
  height: 50px;
  line-height: 50px;
  margin: 5px;
  background: #fff;
  border-radius: 4px;
  text-align: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
  color:var(--pc-primary);

}
#pc-pagenav .page-numbers.current{
  background: var(--pc-primary);
  color:var(--pc-white);
}
#pc-pagenav .page-numbers.prev,
#pc-pagenav .page-numbers.next{
  font-size:24px;
  line-height: 45px;
}
.pc-share-icon {
  background-color: var(--pc-misty-teal);
  padding:10px;
  border-radius: 30px;
}
.pc-share-icon svg{
  fill:var(--pc-misty-teal);
}
/****************************************
  * #### 9> Form styles
*****************************************/
form {
  margin: 0 auto;
  padding: 20px;
}

input[type="text"],
input[type="email"],
input[type="password"],
input,
textarea,
select {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

label {
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
}

textarea {
  resize: vertical;
  height: 100px;
}

input:required:invalid:focus,
textarea:required:invalid:focus,
select:required:invalid:focus {
  outline: none;
  box-shadow: 0 0 5px rgba(217, 83, 79, 0.5);
  border-color: #d9534f;
}
label span.required {
  color: red;
}
@media (max-width: 600px) {
  form {
    padding: 10px;
  }
}

/****************************************
  * #### 10> All widget styles
*****************************************/
.pc-widget-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pc-widget-item {
    align-items: flex-start;
    margin-bottom: 12px;
    border-bottom: 1px solid #eee;
}

.pc-widget-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.pc-widget-item.pc-widget-item-no-img {
    background:var(--pc-ghost-white);
}
.pc-widget-item.pc-widget-item-no-img:nth-child(even) {
    background:var(--pc-white-smoke);
}
/* Thumbnail */
.pc-widget-img-link {
    flex-shrink: 0;
    width: 70px; /* Fixed width for consistency */
    height: 70px;
}

.pc-widget-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px; /* Optional: Rounded corners */
    display: block;
}

/* Content */
.pc-widget-content {
    display: flex;
    flex-direction: column;
}

.pc-widget-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.3;
    text-decoration: none;
    color: inherit;
    margin-bottom: 5px;
    transition: color 0.2s ease;
}

.pc-widget-title:hover {
    color: var(--pc-primary); /* Your brand color */
}

.pc-widget-date {
    font-size: 13px;
    color: #888;
}

/****************************************
  * #### 11> footer
*****************************************/
#pc_global_footer {
  background-color: var(--pc-footer-bg);
  color: var(--pc-footer-color);
}

.footer-widgets {
  background-color: var(--pc-white);
  border-top-left-radius: 10px;
  border-bottom-right-radius: 10px;
  box-shadow: var(--pc-shadow);
}

.footer-widgets :is(h1, h2, h3, h4) {
  color: var(--pc-footer-heading-color)
}

#pc_global_footer a {
  color: var(--pc-footer-link-color);
  text-decoration: var(--pc-none);
  transition: font-weight 0.2s ease, transform 0.2s ease;
}

#pc_global_footer a:hover,
#pc_global_footer a:focus {
  color: var(--pc-footer-link-hover-color);
  transform: scale(1.02);
  font-weight: 600;
}

#pc_global_footer .q-menu a {
  color: var(--pc-black);
  border-bottom: 1px solid var(--pc-black);
  padding-bottom: 0.03em;
}

#pc_copyright a {
  padding-left: 5px;
  color: var(--pc-white)
}

#pc_copyright a:hover,
#pc_copyright a:focus {
  color: var(--pc-white);
  font-weight: 500;
  text-decoration: underline;
}

/**************************
 * #### 12 > WORDPRESS CORE CSS
 ****************************/
.alignright,
.alignleft,
a img.alignleft,
a img.alignright,
.wp-caption.alignright,
.wp-caption.alignleft,
figure.alignleft,
figure.alignright,
img.alignleft,
img.alignright {
  float: var(--pc-none);
  display: block;
  margin: 5px auto;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 10px auto 10px auto;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  max-width: 96%;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  padding: 0;
  width: auto
}

.wp-caption p.wp-caption-text,
.wp-caption figcaption {
  font-size: 0.8rem;
  margin: 0 auto;
  padding: 5px;
  font-style: italic;
}
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000
}

.skip-link {
  display: inline-block;
  padding: 0.7rem 1rem 0.5rem 1rem;
  background: var(--pc-white);
  color: var(--pc-primary);
  text-decoration: none;
  font-weight: 700;
  text-transform: uppercase;
  position: absolute;
  top: 1rem;
  left: 1rem;
}

.skip-link:hover {
  background: var(--pc-cocoa-black);
  color: var(--pc-ghost-white);
}

.skip-link:not(:focus) {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

@media (min-width:768px) {
  .alignnone {
    margin: 5px 20px 20px 0;
  }

  a img.alignnone {
    margin: 5px 20px 20px 0;
  }

  .alignright,
  .wp-caption.alignright,
  figure.alignright{
    float: right;
    margin: 5px 0 20px 20px;
  }

  .alignleft,
  .wp-caption.alignleft,
  figure.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
  }

  a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
  }

  a img.alignnone {
    margin: 5px 20px 20px 0;
  }

  a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
  }
  img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
  }
  img.alignnone {
    margin: 5px 20px 20px 0;
  }
  img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
  }

}

@media print {
    /* 1. Reset Page Margins & Colors */
    @page {
        margin: 2cm;
    }
    body {
        background: #fff !important;
        color: #000 !important;
        font-size: 12pt !important;
        line-height: 1.5;
    }

    /* 2. Hide Non-Essential Elements */
    /* Hide the header, sidebars, share buttons, footer, and navigation */
    .pc-announcements-bar,
    #pc-top-bar,
    #pc_page_header,
    #pc_sidebar,
    .pc-share-area,
    #pc-site-nav,
    #colophon, /* Assuming standard WP footer ID */
    .pc-breadcrumb,
    .pc-pagination,
    #pc_newsletter,
    .admin-bar {
        display: none !important;
    }

    /* 3. Reset Layout Grids */
    /* Force main content to take full width */
    pc-content,
    pc-content[data-grid],
    main[data-grid] {
        display: block !important;
        width: 100% !important;
        grid-template-columns: none !important;
        gap: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    main#primary {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 4. Typography Cleanups */
    h1, h2, h3 {
        page-break-after: avoid;
        color: #000 !important;
    }
    
    p, blockquote {
        orphans: 3;
        widows: 3;
    }

    /* 5. Utility: Expand Links (Optional but Pro) */
    /* Prints the URL next to the link text so people can read it on paper */
    a[href^="http"]:after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
        color: #666;
    }

    /* Don't expand local internal links or the source links that are already clear */
    a[href^="#"]:after,
    .pc-meta-list a:after {
        content: "";
    }
    
/* 6. Image Handling (Ink Saver) */
    img {
        max-width: 100% !important;
        height: auto !important;
        
        /* Don't let an image get cut in half at the bottom of a page */
        page-break-inside: avoid; 
        
        /* OPTIONAL: Save user's color ink by forcing grayscale */
        filter: grayscale(100%); 
    }

    /* Hide background images to save massive amounts of ink */
    * {
        background-image: none !important; 
    }
}