/*===== Start root =====*/
:root{
  font-size: 16px;
  --bs-font-sans-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --bs-font-heading: 'Cinzel', Georgia, 'Times New Roman', serif;

  --bs-primary: #7a4a9c;
  --bs-primary-rgb: 122, 74, 156;
  --bs-primary-dark: #5f3880;
  --bs-primary-dark-rgb: 95, 56, 128;
  --bs-navy: #13295b;
  --bs-navy-rgb: 19, 41, 91;
  --bs-gold: #c8952c;
  --bs-gold-rgb: 200, 149, 44;
  --bs-gold-dark: #a97b1f;
  --bs-gold-dark-rgb: 169, 123, 31;
  --bs-cream: #faf7f2;
  --bs-cream-rgb: 250, 247, 242;
  --bs-green: #2e7d4f;
  --bs-green-rgb: 46, 125, 79;
  --bs-red: #b3261e;
  --bs-red-rgb: 179, 38, 30;

  --bs-body-color: #1f2433;
  --bs-body-color-rgb: 31, 36, 51;
  --bs-secondary-color: #5c6070;
  --bs-border-color: #e8e2d8;
  --bs-link-color: var(--bs-primary);
  --bs-link-color-rgb: var(--bs-primary-rgb);
  --bs-link-hover-color: var(--bs-primary-dark);
  --bs-link-hover-color-rgb: var(--bs-primary-dark-rgb);
  --bs-body-font-size: var(--bs-font-18);
  --bs-body-font-weight: 500;
  --bs-body-line-height: 1.7;

  --bs-space: clamp(3.125rem, calc(2.241rem + 3.774vw), 6.250rem); /* Min: 50px | Max: 100px */
  --bs-space-mini: clamp(2.500rem, calc(2.146rem + 1.509vw), 3.750rem);  /* Min: 40px | Max: 60px */
  --bs-space-small: clamp(1.500rem, calc(1.217rem + 1.208vw), 2.500rem); /* Min: 24px | Max: 40px */

  --bs-font-60: clamp(2.188rem, calc(1.745rem + 1.887vw), 3.750rem); /* 35px to 60px;*/
  --bs-font-44: clamp(1.750rem, calc(1.467rem + 1.208vw), 2.750rem); /* 28px to 44px;*/
  --bs-font-36: clamp(1.625rem, calc(1.448rem + 0.755vw), 2.250rem); /* 26px to 36px;*/
  --bs-font-32: clamp(1.625rem, calc(1.519rem + 0.453vw), 2.000rem); /* 26px to 32px;*/
  --bs-font-28: clamp(1.375rem, calc(1.269rem + 0.453vw), 1.750rem); /* 22px to 28px;*/
  --bs-font-26: clamp(1.312rem, calc(1.224rem + 0.377vw), 1.625rem); /* 21px to 26px;*/
  --bs-font-24: clamp(1.250rem, calc(1.179rem + 0.302vw), 1.500rem); /* 20px to 24px;*/
  --bs-font-22: clamp(1.188rem, calc(1.134rem + 0.226vw), 1.375rem); /* 19px to 22px;*/
  --bs-font-20: clamp(1.125rem, calc(1.090rem + 0.151vw), 1.250rem); /* 18px to 20px;*/
  --bs-font-18: clamp(1.062rem, calc(1.045rem + 0.075vw), 1.125rem); /* 17px to 18px;*/
  --bs-font-17: clamp(1.000rem, calc(0.982rem + 0.075vw), 1.062rem); /* 16px to 17px;*/
  --bs-font-16: clamp(0.938rem, calc(0.920rem + 0.075vw), 1.000rem); /* 15px to 16px;*/
  --bs-font-15: clamp(0.875rem, calc(0.857rem + 0.075vw), 0.938rem); /* 14px to 15px;*/
  --bs-font-14: clamp(0.812rem, calc(0.795rem + 0.075vw), 0.875rem); /* 13px to 14px;*/
  --bs-font-13: clamp(0.750rem, calc(0.732rem + 0.075vw), 0.812rem); /* 12px to 13px;*/
  --bs-font-12: clamp(0.688rem, calc(0.670rem + 0.075vw), 0.750rem); /* 11px to 12px;*/

  --bs-ls-eyebrow: 0.18em;
  --bs-ls-wide: 0.06em;
}

@media screen and (min-width:1200px) {
  :root{
    font-size: min(1.1111vw, 16px);
    --bs-space: 6.25rem;
    --bs-space-mini: 3.75rem;
    --bs-space-small: 2.5rem;
    --bs-font-60: 3.75rem;
    --bs-font-44: 2.75rem;
    --bs-font-36: 2.25rem;
    --bs-font-32: 2rem;
    --bs-font-28: 1.75rem;
    --bs-font-26: 1.625rem;
    --bs-font-24: 1.5rem;
    --bs-font-22: 1.375rem;
    --bs-font-20: 1.25rem;
    --bs-font-18: 1.125rem;
    --bs-font-17: 1.0625rem;
    --bs-font-16: 1rem;
    --bs-font-15: 0.9375rem;
    --bs-font-14: 0.875rem;
    --bs-font-13: 0.8125rem;
    --bs-font-12: 0.75rem;
  }
}
/*===== End root =====*/

body {
    text-underline-offset: 0.15em;
    -webkit-font-smoothing: antialiased;
}
a {
    transition: all 0.3s;
}
img {
    max-width: 100%;
    height: auto;
}
svg {
    vertical-align: -0.125em;
    flex-shrink: 0;
}
figure {
    margin: 0;
}
figure img {
    display: block;
    width: 100%;
}
p:empty,ul:empty,ol:empty{
    display: none;
}
p, ul, ol, address {
  margin-bottom: var(--bs-p-space, 0.9em);
}
p:last-child, ul:last-child, ol:last-child, address:last-child {
    margin-bottom: 0;
}
b, strong {
    font-weight: 700;
}

/*===== Start fonts size css =====*/
.ff-heading {
  font-family: var(--bs-font-heading);
}
.fs-60 { font-size: var(--bs-font-60) !important; line-height: 1.3; }
.fs-44 { font-size: var(--bs-font-44) !important; line-height: 1.3; }
.fs-36 { font-size: var(--bs-font-36) !important; line-height: 1.3; }
.fs-32 { font-size: var(--bs-font-32) !important; line-height: 1.3; }
.fs-28 { font-size: var(--bs-font-28) !important; line-height: 1.3; }
.fs-26 { font-size: var(--bs-font-26) !important; line-height: 1.3; }
.fs-24 { font-size: var(--bs-font-24) !important; line-height: 1.3; }
.fs-20 { font-size: var(--bs-font-20) !important; }
.fs-16 { font-size: var(--bs-font-16) !important; }
.fs-15 { font-size: var(--bs-font-15) !important; }
.fs-14 { font-size: var(--bs-font-14) !important; }
.fs-13 { font-size: var(--bs-font-13) !important; }

.ls-eyebrow { letter-spacing: var(--bs-ls-eyebrow) !important; }
.ls-wide { letter-spacing: var(--bs-ls-wide) !important; }

.text-navy { color: var(--bs-navy) !important; }
.text-gold { color: var(--bs-gold) !important; }
.bg-navy { background-color: var(--bs-navy) !important; }
.bg-cream { background-color: var(--bs-cream) !important; }
/*===== End fonts size css =====*/


/*===== Start space =====*/
.mt-space { margin-top: var(--bs-space); }
.mt-space-mini { margin-top: var(--bs-space-mini); }
.mt-space-small { margin-top: var(--bs-space-small); }
.mb-space { margin-bottom: var(--bs-space); }
.mb-space-mini { margin-bottom: var(--bs-space-mini); }
.mb-space-small { margin-bottom: var(--bs-space-small); }
.py-space { padding-block: var(--bs-space); }
.py-space-mini { padding-block: var(--bs-space-mini); }
.py-space-small { padding-block: var(--bs-space-small); }
.pt-space { padding-top: var(--bs-space); }
.pt-space-mini { padding-top: var(--bs-space-mini); }
.pt-space-small { padding-top: var(--bs-space-small); }
.pb-space { padding-bottom: var(--bs-space); }
.pb-space-mini { padding-bottom: var(--bs-space-mini); }
.pb-space-small { padding-bottom: var(--bs-space-small); }

.py-72 { padding-block: calc(var(--bs-space) * 0.72); }
.py-48 { padding-block: calc(var(--bs-space-mini) * 0.8); }

.g-8 { --bs-gutter-x: calc(var(--bs-space-small) * 0.2); --bs-gutter-y: calc(var(--bs-space-small) * 0.2); }
.g-16 { --bs-gutter-x: calc(var(--bs-space-small) * 0.4); --bs-gutter-y: calc(var(--bs-space-small) * 0.4); }
.g-24 { --bs-gutter-x: calc(var(--bs-space-small) * 0.6); --bs-gutter-y: calc(var(--bs-space-small) * 0.6); }
.g-48 { --bs-gutter-x: calc(var(--bs-space-mini) * 0.8); --bs-gutter-y: calc(var(--bs-space-mini) * 0.8); }
@media screen and (max-width:991px) {
  .g-48 { --bs-gutter-x: 2rem; }
}
@media screen and (min-width:992px) {
  .g-lg-48 { --bs-gutter-x: calc(var(--bs-space-mini) * 0.8); --bs-gutter-y: calc(var(--bs-space-mini) * 0.8); }
}
/*===== End space =====*/

/*===== Start container =====*/
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    --bs-gutter-x: 2rem;
}
@media screen and (min-width:1200px) {
  .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
      max-width: 83rem;
  }
}
/*===== End container =====*/

/*===== Start button =====*/
.btn {
    --bs-btn-font-family: var(--bs-font-heading);
    --bs-btn-font-size: var(--bs-font-14);
    --bs-btn-font-weight: 600;
    --bs-btn-line-height: 1.5;
    --bs-btn-padding-x: 1.714em;
    --bs-btn-padding-y: 0.8em;
    --bs-btn-border-radius: 0.25rem;
    --bs-btn-focus-box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
    letter-spacing: 0.04em;
}
.btn-sm {
    --bs-btn-font-size: var(--bs-font-12);
    --bs-btn-padding-x: 1.333em;
    --bs-btn-padding-y: 0.6em;
    --bs-btn-border-radius: 0.25rem;
}
.btn-primary {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-primary-dark);
    --bs-btn-hover-border-color: var(--bs-primary-dark);
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: var(--bs-primary-dark);
    --bs-btn-active-border-color: var(--bs-primary-dark);
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}
.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: var(--bs-primary-dark);
    --bs-btn-active-border-color: var(--bs-primary-dark);
    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}
.btn-gold {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: var(--bs-gold);
    --bs-btn-border-color: var(--bs-gold);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-gold-dark);
    --bs-btn-hover-border-color: var(--bs-gold-dark);
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: var(--bs-gold-dark);
    --bs-btn-active-border-color: var(--bs-gold-dark);
}
.btn-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--bs-space-small) * 0.4);
}
/*===== End button =====*/

/*===== Start form =====*/
.form-label {
    font-family: var(--bs-font-heading);
    font-size: var(--bs-font-13);
    font-weight: 600;
    color: var(--bs-navy);
    margin-bottom: calc(var(--bs-space-small) * 0.2);
}
.form-control {
    font-size: var(--bs-font-17);
    padding: 0.62em 0.86em;
}
.form-control:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.2);
}
.form-select {
    font-size: var(--bs-font-17);
    padding: 0.62em 2.25rem 0.62em 0.86em;
}
.form-select:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.2);
}
.form-check-input:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.2);
}
.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
/*===== End form =====*/

/*===== Start accordion =====*/
.accordion {
    --bs-accordion-color: var(--bs-body-color);
    --bs-accordion-border-color: var(--bs-border-color);
    --bs-accordion-btn-color: var(--bs-navy);
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.2);
    --bs-accordion-active-color: var(--bs-navy);
    --bs-accordion-active-bg: var(--bs-cream);
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2313295b' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
}
.accordion-button {
    font-family: var(--bs-font-heading);
    font-weight: 600;
}
/*===== End accordion =====*/

/*===== Start Utility Classes =====*/
.bg-wrap {
    position: relative;
    isolation: isolate;
}
.bg-img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bg-overlay {
    position: relative;
    isolation: isolate;
}
.bg-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(var(--overlay-rgb, var(--bs-navy-rgb)), var(--overlay-from, 0.35)), rgba(var(--overlay-rgb, var(--bs-navy-rgb)), var(--overlay-to, 0.75)));
}

.icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2.667em;
    height: 2.667em;
    border-radius: 50%;
    background-color: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary);
    font-size: var(--bs-font-18);
}
.icon-circle svg {
    width: 1.2em;
    height: 1.2em;
}

.price {
    font-family: var(--bs-font-heading);
    color: var(--bs-navy);
}
.price .amount {
    font-size: var(--bs-font-22);
    font-weight: 700;
    color: var(--bs-primary);
}

.check-list,
.cross-list {
    list-style: none;
    padding-left: 0;
}
.check-list li,
.cross-list li {
    position: relative;
    padding-left: 1.556em;
    margin-bottom: calc(var(--bs-space-small) * 0.2);
}
.check-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.35em;
    width: 1em;
    height: 1em;
    -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3e%3cpath d='m10.97 4.97-.02.022-3.473 4.425-2.093-2.094a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05'/%3e%3c/svg%3e") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3e%3cpath d='m10.97 4.97-.02.022-3.473 4.425-2.093-2.094a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05'/%3e%3c/svg%3e") no-repeat center / contain;
    background-color: var(--bs-green);
}
.cross-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.35em;
    width: 1em;
    height: 1em;
    -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e") no-repeat center / contain;
    background-color: var(--bs-red);
}
/*===== End Utility Classes =====*/
