:root {
  /*--background: hsl(210 33% 98%);*/
  --foreground: hsl(210 50% 10%);
  --card: hsl(0 0% 100%);
  /*--card-foreground: hsl(210 50% 10%);*/
  /*--popover: hsl(0 0% 100%);*/
  /*--popover-foreground: hsl(210 50% 10%);*/

  --primary: hsl(205 85% 25%);
  --primary-foreground: hsl(0 0% 100%);
  --primary-10: hsl(205 85% 25% / .1);
  --primary-20: hsl(205 85% 25% / .2);
  --primary-50: hsl(205 85% 25% / .5);

  --secondary: hsl(200 40% 96%);
  --secondary-foreground: hsl(205 85% 25%);

  /*--muted: hsl(200 20% 94%);*/
  /*--muted-foreground: hsl(210 20% 45%);*/

  --accent: hsl(190 75% 45%);
  --accent-foreground: hsl(0 0% 100%);
  --accent-10: hsl(190 75% 45% / .1);
  --accent-20: hsl(190 75% 45% / .2);
  --accent-30: hsl(190 75% 45% / .3);
  --accent-50: hsl(190 75% 45% / .5);

  --destructive: hsl(0 84.2% 60.2%);
  /*--destructive-foreground: hsl(0 0% 100%);*/
  --destructive-10: hsl(0 84.2% 60.2% / .1);
  
  --white-10: #ffffff1a;
  --white-20: #fff3;

  --border: hsl(210 25% 88%);
  /*--input: hsl(210 25% 88%);*/
  /*--ring: hsl(205 85% 25%);*/

  /*--success: hsl(142 71% 45%);*/
  /*--success-foreground: hsl(142 76% 36%);*/
  /*--success-muted: hsl(142 76% 94%);*/

  /*--info: hsl(217 91% 60%);*/
  /*--info-muted: hsl(217 91% 95%);*/
  /*--info-foreground: hsl(217 91% 30%);*/

  /*--warning: hsl(271 81% 56%);*/
  /*--warning-muted: hsl(271 81% 95%);*/
  /*--warning-foreground: hsl(271 81% 30%);*/

  /*--form-card: hsl(0 0% 100%);*/
  /*--form-card-foreground: hsl(215 25% 15%);*/
  /*--form-card-muted: hsl(215 16% 47%);*/
  /*--form-card-border: hsl(214 32% 91%);*/

  /*--radius: 0.75rem;*/

  --gradient-hero: linear-gradient(
    135deg,
    hsl(205 85% 25%) 0%,
    hsl(190 75% 35%) 100%
  );

  --gradient-subtle: linear-gradient(
    180deg,
    hsl(200 40% 98%) 0%,
    hsl(200 30% 94%) 100%
  );

  --shadow-card: 0 4px 24px -4px hsl(205 85% 25% / 0.08);
  --shadow-card-hover: 0 8px 32px -4px hsl(205 85% 25% / 0.15);
  
  /* border radius */
  --rounded-md: 6px;
  --rounded-xl: 12px;
  --rounded-2xl: 16px;
}




.bg-hero-gradient {
    background: var(--gradient-hero) !important;
}

.bg-subtle-gradient {
    background-image: var(--gradient-subtle);
}

.logo-dropshadow {
    filter: drop-shadow(rgba(255, 255, 255, 0.3) 0px 0px 15px);
}








/* Hover Card Common Transitions */

:is(.hover-card-1, .hover-card-2, .hover-card-3) {
  transition:
    background-color 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

:is(.hover-card-1, .hover-card-2, .hover-card-3)
.h-title .elementor-heading-title {
  transition: color 0.3s ease;
}

:is(.hover-card-1, .hover-card-2, .hover-card-3)
.h-icon .elementor-icon {
  transition: 
    background 0.3s ease,
    transform 0.3s ease;
}

:is(.hover-card-1, .hover-card-2, .hover-card-3)
.h-btn svg {
  transition: transform 0.3s ease;
}


/* Hover Card 1 */

.hover-card-1:hover {
  border-color: var(--primary-50);
  box-shadow: var(--shadow-card-hover);
}

.hover-card-1:hover .h-title .elementor-heading-title {
  color: var(--primary);
}

.hover-card-1:hover .h-icon .elementor-icon {
  background: var(--primary-20) !important;
}

.hover-card-1:hover .h-btn svg {
    transform: translateX(0.25rem);
}


/* Hover Card 2 */

.hover-card-2:hover {
  border-color: var(--accent-50);
  box-shadow: var(--shadow-card-hover);
}

.hover-card-2:hover .h-title .elementor-heading-title {
  color: var(--accent);
}

.hover-card-2:hover .h-icon .elementor-icon {
  background: var(--accent-20) !important;
}

.hover-card-2:hover .h-btn svg {
    transform: translateX(0.25rem);
}


/* Hover Card 3 */

.hover-card-3:hover {
  box-shadow: var(--shadow-card-hover);
}

.hover-card-3:hover .h-icon .elementor-icon {
  transform: scale(1.1);
}










/* Label Sizes */

.label-s {
  display: inline-block;
  border-radius: 50px;
  padding: 4px 12px;
  line-height: 1rem;
}

.label-s .elementor-heading-title {
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
}

.label-m {
  display: inline-block;
  border-radius: 50px;
  padding: 6px 16px;
}

.label-m .elementor-heading-title {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}

/* Label Colors */

.label-primary {
    color: var(--primary);
    background-color: var(--primary-10);
}

.label-primary2 {
    color: var(--secondary-foreground);
    background-color: var(--secondary);
}

.label-secondary {
    color: var(--accent);
    background-color: var(--accent-10);
}

.label-destructive {
    color: var(--destructive);
    background-color: var(--destructive-10);
}

.label-accent {
    color: var(--accent-foreground);
    background-color: var(--accent-20);
}

.label-accent-border {
    color: var(--accent-foreground);
    background-color: var(--accent-20);
    border: 1px solid var(--accent-30);
}

.label-accent2 {
    color: var(--accent-foreground);
    background-color: var(--white-20);
    border: 1px solid var(--white-30);
}




/* container spacing */
/*:root {*/
/*  --section-padding-inline: 1rem;*/
  
/*  --section-xs-padding-min: 1.5rem;*/
/*  --section-xs-padding-max: 3rem;*/
  
/*   --section-m-padding-min: 2.5rem;*/
/*   --section-m-padding-max: 5rem;*/
/*}*/

/* e-con */
/*.section-xs {*/
/*  padding-block: clamp(var(--section-xs-padding-min), 0.0687rem + 4.5802vw, var(--section-xs-padding-max)) !important;*/
/*  padding-inline: var(--section-padding-inline) !important;*/
/*}*/

/*.section-m {*/
/*  padding-block: clamp(var(--section-m-padding-min), 0.1145rem + 7.6336vw, var(--section-m-padding-max)) !important;*/
/*  padding-inline: var(--section-padding-inline) !important;*/
/*}*/

/* reset e-con-inner */
/*.section-xs > .e-con-inner,*/
/*.section-sm > .e-con-inner,*/
/*.section-m > .e-con-inner,*/
/*.section-lg > .e-con-inner,*/
/*.section-xl > .e-con-inner {*/
/*  padding-block: 0 !important;*/
/*}*/






/* card layouts */
:is(.card-s, .card-m, .card-l, .card-l-m, .card-xl) {
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border);
    transition:
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.card-s {
    padding: 1rem !important;
    border-radius: var(--rounded-md) !important;
}

.card-m {
    padding: 1.5rem !important;
    border-radius: var(--rounded-xl) !important;
}

.card-l {
    padding: 2rem !important;
    border-radius: var(--rounded-2xl) !important;
}

.card-l-m {
    padding: clamp(1.5rem, 1.0229rem + 1.5267vw, 2rem) !important;
    border-radius: var(--rounded-2xl) !important;
}

.card-xl {
    padding: 3rem !important;
    border-radius: var(--rounded-2xl) !important;
}

.card-primary {
    --card-bg: var(--primary);
}

.card-secondary {
    --card-bg: var(--secondary);
}

.card-accent {
    --card-bg: var(--white-10);
    --border: var(--white-20);
}

/*.border-hover:hover {*/
/*    border-color: var(--secondary-30) !important;*/
/*}*/







/* max width */
/*.max-w-xl {*/
/*    max-width: 36rem !important;*/
/*}*/

.max-w-2xl {
    max-width: 42rem !important;
}

.max-w-3xl {
    max-width: 48rem !important;
}

.max-w-4xl {
    max-width: 56rem !important;
}

.max-w-6xl {
    max-width: 72rem !important;
}





.max-width {
    width: max-content !important;
    flex-shrink: 0 !important;
}






/* buttons common */
:is(.btn-primary, .btn-primary-xl) .elementor-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
  font-weight: 500;
  border-radius: var(--rounded-md);
}

/* primary button */
.btn-primary .elementor-button {
  background: var(--secondary);
  color: var(--secondary-foreground);
  padding: 8px 16px;
  height: 40px;
}

.btn-primary-xl .elementor-button {
  background: var(--secondary);
  color: var(--secondary-foreground);
  padding: 24px 16px;
  height: 40px;
}

:is(.btn-primary, .btn-primary-xl) svg {
    width: 1rem;
    height: 1rem;
}

:is(.btn-primary, .btn-primary-xl) .elementor-button-content-wrapper {
  display: flex;
  gap: 1rem;
}

:is(.btn-primary, .btn-primary-xl) .elementor-button:is(:hover, :focus, :visited) {
  background: var(--secondary-90);
  color: var(--secondary-foreground);
}




/* btn simple */
.btn-simple .elementor-button {
    padding: 0;
    background: transparent;
    color: var(--primary);
}








/* shadows */
/*.shadow-sm {*/
/*    box-shadow: var(--shadow-sm);*/
/*}*/

/*.shadow-lg {*/
/*    box-shadow: var(--shadow-lg);*/
/*}*/

/*.shadow-xl {*/
/*    box-shadow: var(--shadow-xl);*/
/*}*/

/*.shadow-2xl {*/
/*    box-shadow: var(--shadow-2xl);*/
/*}*/

/*.btn-shadow .elementor-button {*/
/*    box-shadow: var(--btn-shadow);*/
/*}*/

/*.shadow-md-hover:hover {*/
/*    box-shadow: var(--shadow-md);*/
/*}*/

/*.shadow-lg-hover:hover {*/
/*    box-shadow: var(--shadow-lg);*/
/*}*/

/*.shadow-xl-hover:hover {*/
/*    box-shadow: var(--shadow-xl);*/
/*}*/








/* text colors */
/*.color-primary {*/
/*    color: var(--secondary);*/
/*}*/

/* text gradient */
/*.text-gradient {*/
/*  background: linear-gradient(135deg, rgb(249, 112, 21), rgb(250, 199, 46));*/
/*  -webkit-background-clip: text;*/
/*  -webkit-text-fill-color: transparent;*/
/*}*/






/*.icon-white svg {*/
/*    color: var(--primary-foreground);*/
/*}*/

/* blockquote */
/*.blockquote-simple {*/
/*    padding-left: 1rem;*/
/*    border-left: 2px solid var(--secondary);*/
/*}*/

/* background colors */
/*.bg-secondary-transparent-hover:hover {*/
/*    background-image: linear-gradient(*/
/*    to right bottom,*/
/*    rgba(249, 112, 21, 0.05),*/
/*    rgba(0, 0, 0, 0));*/
/*}*/







/* icon sizes */
:is(.icon-s, .icon-m, .icon-l, .icon-xl, .icon-2xl) {
    flex-shrink: 0;
}

:is(.icon-s, .icon-m, .icon-l, .icon-xl, .icon-2xl) .elementor-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    background: var(--icon-bg, #0a49761a) !important;
    color: var(--icon-color, #0a4976) !important;
    height: var(--size);
    width: var(--size);
    font-size: calc(var(--size) / 2) !important;
    border-radius: var(--radius) !important;
}

.icon-m { --size: 48px; --radius: 12px; }
.icon-l { --size: 56px; --radius: 12px; }
.icon-xl { --size: 64px; --radius: 16px; }
.icon-2xl { --size: 80px; --radius: 16px; }

.icon-primary {
    --icon-bg: var(--primary-10);
    --icon-color: var(--primary);
}

.icon-primary2 {
    --icon-bg: var(--secondary);
    --icon-color: var(--primary);
}

.icon-secondary {
    --icon-bg: var(--accent-10);
    --icon-color: var(--accent);
}

.icon-destructive {
    --icon-bg: var(--destructive-10);
    --icon-color: var(--destructive);
}

.icon-accent {
    --icon-bg: var(--accent-20);
    --icon-color: var(--accent);
}

.icon-hero {
    --icon-bg: var(--gradient-hero);
    --icon-color: var(--primary-foreground);
}








/* Reset list */
body:not(.elementor-editor-active) .check-icon ul,
body:not(.elementor-editor-active) .check-icon ol {
  list-style: none;
  padding: 0;
  margin: 0;
  
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* List item */
body:not(.elementor-editor-active) .check-icon li {
  display: flex;
  align-items: center;
  margin: 0;
}

/* Icon */
body:not(.elementor-editor-active) .check-icon li::before {
  content: '';
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-right: 12px;
  background-image: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23f97015" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\
<path d="M20 6 9 17l-5-5"/>\
</svg>');
  background-size: contain;
  background-repeat: no-repeat;
}





/* reset elementor */
/*.elementor-icon-wrapper {*/
/*  display: flex;*/
/*}*/
