/* input(125,41): run-time error CSS1019: Unexpected token, found ' '
input(125,41): run-time error CSS1019: Unexpected token, found ' '
input(125,41): run-time error CSS1042: Expected function, found ' '
input(125,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(126,41): run-time error CSS1019: Unexpected token, found ' '
input(126,41): run-time error CSS1019: Unexpected token, found ' '
input(126,41): run-time error CSS1042: Expected function, found ' '
input(126,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(127,40): run-time error CSS1019: Unexpected token, found ' '
input(127,40): run-time error CSS1019: Unexpected token, found ' '
input(127,40): run-time error CSS1042: Expected function, found ' '
input(127,40): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(1717,23): run-time error CSS1030: Expected identifier, found '#menu-links'
input(1717,39): run-time error CSS1025: Expected comma or open brace, found ')' */
/* === font.css ===
   Adobe Fonts (TypeKit kit rji5guq) @font-face declarations with font-display:swap.
   Mirrors rji5guq.css but overrides font-display from "auto" (3 s invisible-text block)
   to "swap" so fallback text is immediately visible during font load. */

@font-face {
  font-family: "abacaxi-latin-variable";
  src: url("https://use.typekit.net/af/b1a282/0000000000000000775d6224/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("woff2"),
       url("https://use.typekit.net/af/b1a282/0000000000000000775d6224/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("woff"),
       url("https://use.typekit.net/af/b1a282/0000000000000000775d6224/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 100 800;
  font-stretch: normal;
}

@font-face {
  font-family: "abacaxi-latin-variable";
  src: url("https://use.typekit.net/af/89c063/0000000000000000775d6223/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("woff2"),
       url("https://use.typekit.net/af/89c063/0000000000000000775d6223/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("woff"),
       url("https://use.typekit.net/af/89c063/0000000000000000775d6223/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 100 800;
  font-stretch: normal;
}

@font-face {
  font-family: "sarvatrik-latin-variable";
  src: url("https://use.typekit.net/af/d470af/0000000000000000775f70b3/31/l?subset_id=2&fvd=n1&v=3") format("woff2"),
       url("https://use.typekit.net/af/d470af/0000000000000000775f70b3/31/d?subset_id=2&fvd=n1&v=3") format("woff"),
       url("https://use.typekit.net/af/d470af/0000000000000000775f70b3/31/a?subset_id=2&fvd=n1&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 200 700;
  font-stretch: normal;
}

@font-face {
  font-family: "sarvatrik-latin-variable";
  src: url("https://use.typekit.net/af/a3eec8/0000000000000000775f70b7/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("woff2"),
       url("https://use.typekit.net/af/a3eec8/0000000000000000775f70b7/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("woff"),
       url("https://use.typekit.net/af/a3eec8/0000000000000000775f70b7/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 200 700;
  font-stretch: normal;
}

@font-face {
  font-family: "pacaembu";
  src: url("https://use.typekit.net/af/b00097/0000000000000000775f26fe/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff2"),
       url("https://use.typekit.net/af/b00097/0000000000000000775f26fe/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff"),
       url("https://use.typekit.net/af/b00097/0000000000000000775f26fe/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
}

@font-face {
  font-family: "pacaembu";
  src: url("https://use.typekit.net/af/e205f1/0000000000000000775f2700/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("woff2"),
       url("https://use.typekit.net/af/e205f1/0000000000000000775f2700/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("woff"),
       url("https://use.typekit.net/af/e205f1/0000000000000000775f2700/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 600;
  font-stretch: normal;
}

@font-face {
  font-family: "pacaembu";
  src: url("https://use.typekit.net/af/8865fc/0000000000000000775f2707/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),
       url("https://use.typekit.net/af/8865fc/0000000000000000775f2707/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),
       url("https://use.typekit.net/af/8865fc/0000000000000000775f2707/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  font-stretch: normal;
}

@font-face {
  font-family: "pacaembu";
  src: url("https://use.typekit.net/af/f24f94/0000000000000000775f2703/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),
       url("https://use.typekit.net/af/f24f94/0000000000000000775f2703/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),
       url("https://use.typekit.net/af/f24f94/0000000000000000775f2703/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
}

/* === variables.css === */
/* Design tokens extracted from Figma homepage design */

:root {
  /* -----------------------------------------------
     COLOURS
     ----------------------------------------------- */
  --color-primary:        #ca161e;
  --color-black:          #000000;
  --color-white:          #ffffff;
  --color-text:           #000000;
  --color-text-dark:      #202020;
  --color-gray-light:     #f7f7f7;
  --color-gray-mid:       #efefef;
  --color-navy:           #2d2c4b;
  --color-hero-text:      #373737;
  --color-hero-bg:        #e8e8e8;
  --color-gray:           #808080;
  --color-border-light:   #b8b8b8;

  /* -----------------------------------------------
     FONT FAMILIES
     ----------------------------------------------- */
  --font-heading:   "abacaxi-latin-variable", "Abacaxi Latin VF", serif;
  --font-nav:       "pacaembu", "Pacaembu", sans-serif;
  --font-body:      "abacaxi-latin-variable", "Abacaxi Latin VF", serif;
  --font-btn-alt:   "Sarvatrik Latin VF", sans-serif;

  /* -----------------------------------------------
     FONT SIZES
     ----------------------------------------------- */
  --text-hero:      clamp(2.75rem, 4vw + 1rem, 5rem);       /* ~80px */
  --text-display:   clamp(2.25rem, 3vw + 0.5rem, 3.875rem); /* ~62px */
  --text-h2:        clamp(2rem, 2.5vw + 0.5rem, 3.375rem);  /* ~54px */
  --text-card-title: 1.625rem;                               /* 26px */
  --text-quote:     1.5rem;                                  /* 24px */
  --text-body-lg:   1.125rem;                                /* 18px */
  --text-body:      1rem;                                    /* 16px */
  --text-nav:       1rem;                                    /* 16px */
  --text-btn:       1.125rem;                                /* 18px */

  /* -----------------------------------------------
     LINE HEIGHTS
     ----------------------------------------------- */
  --leading-hero:       1;
  --leading-display:    1.16;
  --leading-h2:         1.15;
  --leading-quote:      1.83;
  --leading-body-lg:    1.556;
  --leading-body:       1.625;
  --leading-footer:     1.78;

  /* -----------------------------------------------
     LETTER SPACING
     ----------------------------------------------- */
  --tracking-hero:      -0.06em;
  --tracking-display:   -0.03em;
  --tracking-h2:        -0.03em;
  --tracking-card-title: -0.03em;
  --tracking-body:      -0.03em;

  /* -----------------------------------------------
     SPACING
     ----------------------------------------------- */
  --spacing-xs:     0.5rem;    /*  8px */
  --spacing-sm:     0.875rem;  /* 14px */
  --spacing-md:     1rem;      /* 16px */
  --spacing-lg:     1.5rem;    /* 24px */
  --spacing-xl:     2.125rem;  /* 34px */
  --spacing-2xl:    2.375rem;  /* 38px */
  --spacing-3xl:    3.5rem;    /* 56px */
  --spacing-4xl:    3.75rem;   /* 60px */
  --spacing-5xl:    3.9375rem; /* 63px */

  /* -----------------------------------------------
     CONTAINER
     ----------------------------------------------- */
  --container-max:  75rem;     /* 1200px */
  --container-padding: 1.25rem;

  /* -----------------------------------------------
     BORDERS & RADII
     ----------------------------------------------- */
  --radius-sm:      0.5rem;    /*  8px */
  --radius-md:      0.75rem;   /* 12px */
  --radius-full:    9999px;
  --border-divider: 1px solid var(--color-black);
  --border-accent:  4px solid var(--color-black);

  /* -----------------------------------------------
     SHADOWS
     ----------------------------------------------- */
  --shadow-card:    0 2px 8px rgba(0, 0, 0, 0.08);

  /* -----------------------------------------------
     TRANSITIONS
     ----------------------------------------------- */
  --transition-fast:    150ms ease;
  --transition-base:    250ms ease;
  --transition-slow:    400ms ease;

  /* -----------------------------------------------
     GRADIENTS
     ----------------------------------------------- */
  --gradient-projects:  linear-gradient(182deg, rgba(239,239,239,1) 22%, rgba(255,255,255,1) 100%);
  --gradient-fade:      linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);

  /* -----------------------------------------------
     Z-INDEX SCALE
     ----------------------------------------------- */
  --z-dropdown:     100;
  --z-sticky:       200;
  --z-overlay:      300;
  --z-modal:        400;
}

/*Flex*/
.grow { flex-grow: 1; }
.flex-wrap {flex-wrap: wrap;}
.flex-nowrap {flex-wrap: wrap;}
.flex-row-reverse {flex-direction: row-reverse;}
.flex-col-reverse {flex-direction: column-reverse;}
.justify-center{justify-content: center;}
.justify-end{justify-content: end;}
.justify-between{justify-content: space-between;}
.justify-around{justify-content: space-around;}
.items-center{align-items: center;}
.items-end {align-items: end;}
.flex-col {flex-direction: column;}

/*Gap*/
.gap-2rem {gap: 2rem;}
.gap-5px{gap: 5px;}
.gap-10px{gap: 10px;}
.gap-15px{gap: 15px;}
.gap-20px{gap: 20px;}
.gap-30px{gap: 30px;}
.gap-60px{gap: 60px;}

/*Display*/
.inline{display:inline}.block{display:block}.inline-block{display:inline-block}.flow-root{display:flow-root}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.table{display:table}.inline-table{display:inline-table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.list-item{display:list-item}.hidden{display:none}

.center-block{margin: 0 auto;}

/*Text Align*/
.text-center {text-align: center;}
.text-left {text-align: left;}
.text-right {text-align: right;}

/*Tailwind Classes*/

/*Font Weight*/
.font-thin,.font-100{font-weight:100}.font-extralight,.font-200{font-weight:100}.font-light,.font-300{font-weight:100}.font-normal,.font-400{font-weight:100}.font-medium,.font-500{font-weight:100}.font-semibold,.font-600{font-weight:100}.font-bold,.font-700{font-weight:100}.font-extrabold,.font-800{font-weight:100}.font-black,.font-900{font-weight:100}

/*Line Height*/
.leading-09{line-height:.9}.leading-1{line-height:1}.leading-11{line-height:1.1}.leading-12{line-height:1.2}.leading-15{line-height:1.5}.leading-16{line-height:1.5}.leading-17{line-height:1.5}.leading-18{line-height:1.5}

/*Margin*/
.nomarg {margin: 0px;margin-bottom: 0px !important; margin-top: 0px !important;}
.mt-5px { margin-top: 5px }.mt-10px{margin-top:10px}.mt-15px{margin-top:15px}.mt-20px{margin-top:20px}.mt-30px{margin-top:30px}.mt-40px{margin-top:40px}.mt-45px{margin-top:45px}.mt-50px{margin-top:50px}.mt-60px{margin-top:60px}.mr-5px{margin-right:5px}.mr-10px{margin-right:10px}.mr-15px{margin-right:15px}.mr-20px{margin-right:20px}.mr-30px{margin-right:30px}.mr-40px{margin-right:40px}.mr-45px{margin-right:45px}.mr-50px{margin-right:50px}.mr-60px{margin-right:60px}.mb-5px{margin-bottom:5px}.mb-10px{margin-bottom:10px}.mb-15px{margin-bottom:15px}.mb-20px{margin-bottom:20px}.mb-30px{margin-bottom:30px}.mb-40px{margin-bottom:40px}.mb-45px{margin-bottom:45px}.mb-50px{margin-bottom:50px}.mb-60px{margin-bottom:60px}.ml-5px{margin-left:5px}.ml-10px{margin-left:10px}.ml-15px{margin-left:15px}.ml-20px{margin-left:20px}.ml-30px{margin-left:30px}.ml-40px{margin-left:40px}.ml-45px{margin-left:45px}.ml-50px{margin-left:50px}.ml-60px{margin-left:60px}.my-5px{margin-block:5px}.my-10px{margin-block:10px}.my-15px{margin-block:15px}.my-20px{margin-block:20px}.my-30px{margin-block:30px}.my-40px{margin-block:40px}.my-45px{margin-block:45px}.my-50px{margin-block:50px}.my-60px{margin-block:60px}.mx-5px{margin-inline:5px}.mx-10px{margin-inline:10px}.mx-15px{margin-inline:15px}.mx-20px{margin-inline:20px}.mx-30px{margin-inline:30px}.mx-40px{margin-inline:40px}.mx-45px{margin-inline:45px}.mx-50px{margin-inline:50px}.mx-60px{margin-inline:60px}.mx-auto{margin-inline:auto}.m-5px{margin:5px}.m-10px{margin:10px}.m-15px{margin:15px}.m-20px{margin:20px}.m-30px{margin:30px}.m-40px{margin:40px}.m-45px{margin:45px}.m-50px{margin:50px}.m-60px{margin:60px}

/*Padding*/
.pt-5px{padding-top:5px}.pt-10px{padding-top:10px}.pt-15px{padding-top:15px}.pt-20px{padding-top:20px}.pt-30px{padding-top:30px}.pt-40px{padding-top:40px}.pt-45px{padding-top:45px}.pt-50px{padding-top:50px}.pt-60px{padding-top:60px}.pr-5px{padding-right:5px}.pr-10px{padding-right:10px}.pr-15px{padding-right:15px}.pr-20px{padding-right:20px}.pr-30px{padding-right:30px}.pr-40px{padding-right:40px}.pr-45px{padding-right:45px}.pr-50px{padding-right:50px}.pr-60px{padding-right:60px}.pb-5px{padding-bottom:5px}.pb-10px{padding-bottom:10px}.pb-15px{padding-bottom:15px}.pb-20px{padding-bottom:20px}.pb-30px{padding-bottom:30px}.pb-40px{padding-bottom:40px}.pb-45px{padding-bottom:45px}.pb-50px{padding-bottom:50px}.pb-60px{padding-bottom:60px}.pl-5px{padding-left:5px}.pl-10px{padding-left:10px}.pl-15px{padding-left:15px}.pl-20px{padding-left:20px}.pl-30px{padding-left:30px}.pl-40px{padding-left:40px}.pl-45px{padding-left:45px}.pl-50px{padding-left:50px}.pl-60px{padding-left:60px}.py-5px{padding-block:5px}.py-10px{padding-block:10px}.py-15px{padding-block:15px}.py-20px{padding-block:20px}.py-30px{padding-block:30px}.py-40px{padding-block:40px}.py-45px{padding-block:45px}.py-50px{padding-block:50px}.py-60px{padding-block:60px}.px-5px{padding-inline:5px}.px-10px{padding-inline:10px}.px-15px{padding-inline:15px}.px-20px{padding-inline:20px}.px-30px{padding-inline:30px}.px-40px{padding-inline:40px}.px-45px{padding-inline:45px}.px-50px{padding-inline:50px}.px-60px{padding-inline:60px}.p-5px{padding:5px}.p-10px{padding:10px}.p-15px{padding:15px}.p-20px{padding:20px}.p-30px{padding:30px}.p-40px{padding:40px}.p-45px{padding:45px}.p-50px{padding:50px}.p-60px{padding:60px}

/*Text Size*/
.text-xs{font-size:var(--text-xs);line-height:var(--text-xs--line-height)}.text-sm{font-size:var(--text-sm);line-height:var(--text-sm--line-height)}.text-base{font-size:var(--text-base);line-height:var(--text-base--line-height)}.text-lg{font-size:var(--text-lg);line-height:var(--text-lg--line-height)}.text-xl{font-size:var(--text-xl);line-height:var(--text-xl--line-height)}.text-2xl{font-size:var(--text-2xl);line-height:var(--text-2xl--line-height)}.text-3xl{font-size:var(--text-3xl);line-height:var(--text-3xl--line-height)}.text-4xl{font-size:var(--text-4xl);line-height:var(--text-4xl--line-height)}.text-5xl{font-size:var(--text-5xl);line-height:var(--text-5xl--line-height)}.text-6xl{font-size:var(--text-6xl);line-height:var(--text-6xl--line-height)}.text-7xl{font-size:var(--text-7xl);line-height:var(--text-7xl--line-height)}.text-8xl{font-size:var(--text-8xl);line-height:var(--text-8xl--line-height)}.text-9xl{font-size:var(--text-9xl);line-height:var(--text-9xl--line-height)}

/*Height*/
.h-30px{height: 33px;}.h-33px{height: 33px;}

.w-max-cont {width: max-content;}

.max-w-fit {max-width: fit-content;}

/*Max Width*/
.max-w-10{max-width:10px}.max-w-20{max-width:20px}.max-w-30{max-width:30px}.max-w-40{max-width:40px}.max-w-50{max-width:50px}.max-w-60{max-width:60px}.max-w-70{max-width:70px}.max-w-80{max-width:80px}.max-w-90{max-width:90px}.max-w-100{max-width:100px}.max-w-110{max-width:110px}.max-w-120{max-width:120px}.max-w-130{max-width:130px}.max-w-140{max-width:140px}.max-w-150{max-width:150px}.max-w-160{max-width:160px}.max-w-170{max-width:170px}.max-w-180{max-width:180px}.max-w-190{max-width:190px}.max-w-200{max-width:200px}.max-w-210{max-width:210px}.max-w-220{max-width:220px}.max-w-230{max-width:230px}.max-w-240{max-width:240px}.max-w-250{max-width:250px}.max-w-260{max-width:260px}.max-w-270{max-width:270px}.max-w-280{max-width:280px}.max-w-290{max-width:290px}.max-w-300{max-width:300px}.max-w-310{max-width:310px}.max-w-320{max-width:320px}.max-w-330{max-width:330px}.max-w-340{max-width:340px}.max-w-350{max-width:350px}.max-w-360{max-width:360px}.max-w-370{max-width:370px}.max-w-380{max-width:380px}.max-w-390{max-width:390px}.max-w-400{max-width:400px}.max-w-410{max-width:410px}.max-w-420{max-width:420px}.max-w-430{max-width:430px}.max-w-440{max-width:440px}.max-w-450{max-width:450px}.max-w-460{max-width:460px}.max-w-470{max-width:470px}.max-w-480{max-width:480px}.max-w-490{max-width:490px}.max-w-500{max-width:500px}.max-w-510{max-width:510px}.max-w-520{max-width:520px}.max-w-530{max-width:530px}.max-w-540{max-width:540px}.max-w-550{max-width:550px}.max-w-560{max-width:560px}.max-w-570{max-width:570px}.max-w-580{max-width:580px}.max-w-590{max-width:590px}.max-w-600{max-width:600px}.max-w-610{max-width:610px}.max-w-620{max-width:620px}.max-w-630{max-width:630px}.max-w-640{max-width:640px}.max-w-650{max-width:650px}.max-w-660{max-width:660px}.max-w-670{max-width:670px}.max-w-680{max-width:680px}.max-w-690{max-width:690px}.max-w-700{max-width:700px}.max-w-710{max-width:710px}.max-w-720{max-width:720px}.max-w-730{max-width:730px}.max-w-740{max-width:740px}.max-w-750{max-width:750px}.max-w-760{max-width:760px}.max-w-770{max-width:770px}.max-w-780{max-width:780px}.max-w-790{max-width:790px}.max-w-800{max-width:800px}.max-w-810{max-width:810px}.max-w-820{max-width:820px}.max-w-830{max-width:830px}.max-w-840{max-width:840px}.max-w-850{max-width:850px}.max-w-860{max-width:860px}.max-w-870{max-width:870px}.max-w-880{max-width:880px}.max-w-890{max-width:890px}.max-w-900{max-width:900px}.max-w-910{max-width:910px}.max-w-920{max-width:920px}.max-w-930{max-width:930px}.max-w-940{max-width:940px}.max-w-950{max-width:950px}.max-w-960{max-width:960px}.max-w-970{max-width:970px}.max-w-980{max-width:980px}.max-w-990{max-width:990px}.max-w-1000{max-width:1000px}.max-w-1010{max-width:1010px}.max-w-1020{max-width:1020px}.max-w-1030{max-width:1030px}.max-w-1040{max-width:1040px}.max-w-1050{max-width:1050px}.max-w-1060{max-width:1060px}.max-w-1070{max-width:1070px}.max-w-1080{max-width:1080px}.max-w-1090{max-width:1090px}.max-w-1100{max-width:1100px}.max-w-1110{max-width:1110px}.max-w-1120{max-width:1120px}.max-w-1130{max-width:1130px}.max-w-1140{max-width:1140px}.max-w-1150{max-width:1150px}.max-w-1160{max-width:1160px}.max-w-1170{max-width:1170px}.max-w-1180{max-width:1180px}.max-w-1190{max-width:1190px}.max-w-1200{max-width:1200px}.max-w-1210{max-width:1210px}.max-w-1220{max-width:1220px}.max-w-1230{max-width:1230px}.max-w-1240{max-width:1240px}.max-w-1250{max-width:1250px}.max-w-1260{max-width:1260px}.max-w-1270{max-width:1270px}.max-w-1280{max-width:1280px}.max-w-1290{max-width:1290px}.max-w-1300{max-width:1300px}.max-w-1310{max-width:1310px}.max-w-1320{max-width:1320px}.max-w-1330{max-width:1330px}.max-w-1340{max-width:1340px}.max-w-1350{max-width:1350px}.max-w-1360{max-width:1360px}.max-w-1370{max-width:1370px}.max-w-1380{max-width:1380px}.max-w-1390{max-width:1390px}.max-w-1400{max-width:1400px}.max-w-1410{max-width:1410px}.max-w-1420{max-width:1420px}.max-w-1430{max-width:1430px}.max-w-1440{max-width:1440px}.max-w-1450{max-width:1450px}.max-w-1460{max-width:1460px}.max-w-1470{max-width:1470px}.max-w-1480{max-width:1480px}.max-w-1490{max-width:1490px}.max-w-1500{max-width:1500px}.max-w-1510{max-width:1510px}.max-w-1520{max-width:1520px}.max-w-1530{max-width:1530px}.max-w-1540{max-width:1540px}.max-w-1550{max-width:1550px}.max-w-1560{max-width:1560px}.max-w-1570{max-width:1570px}.max-w-1580{max-width:1580px}.max-w-1590{max-width:1590px}.max-w-1600{max-width:1600px}.max-w-1610{max-width:1610px}.max-w-1620{max-width:1620px}.max-w-1630{max-width:1630px}.max-w-1640{max-width:1640px}.max-w-1650{max-width:1650px}.max-w-1660{max-width:1660px}.max-w-1670{max-width:1670px}.max-w-1680{max-width:1680px}.max-w-1690{max-width:1690px}.max-w-1700{max-width:1700px}.max-w-1710{max-width:1710px}.max-w-1720{max-width:1720px}.max-w-1730{max-width:1730px}.max-w-1740{max-width:1740px}.max-w-1750{max-width:1750px}.max-w-1760{max-width:1760px}.max-w-1770{max-width:1770px}.max-w-1780{max-width:1780px}.max-w-1790{max-width:1790px}.max-w-1800{max-width:1800px}.max-w-1810{max-width:1810px}.max-w-1820{max-width:1820px}.max-w-1830{max-width:1830px}.max-w-1840{max-width:1840px}.max-w-1850{max-width:1850px}.max-w-1860{max-width:1860px}.max-w-1870{max-width:1870px}.max-w-1880{max-width:1880px}.max-w-1890{max-width:1890px}.max-w-1900{max-width:1900px}.max-w-1910{max-width:1910px}.max-w-1920{max-width:1920px}.max-w-1930{max-width:1930px}.max-w-1940{max-width:1940px}.max-w-1950{max-width:1950px}.max-w-1960{max-width:1960px}.max-w-1970{max-width:1970px}.max-w-1980{max-width:1980px}.max-w-1990{max-width:1990px}.max-w-2000{max-width:2000px}.max-w-2010{max-width:2010px}.max-w-2020{max-width:2020px}.max-w-2030{max-width:2030px}.max-w-2040{max-width:2040px}.max-w-2050{max-width:2050px}.max-w-2060{max-width:2060px}.max-w-2070{max-width:2070px}.max-w-2080{max-width:2080px}.max-w-2090{max-width:2090px}.max-w-2560{max-width:2560px}

/*Min Width*/
.min-w-100{min-width:100px}.min-w-110{min-width:110px}.min-w-120{min-width:120px}.min-w-130{min-width:130px}.min-w-140{min-width:140px}.min-w-150{min-width:150px}.min-w-160{min-width:160px}.min-w-170{min-width:170px}.min-w-180{min-width:180px}.min-w-190{min-width:190px}.min-w-200{min-width:200px}.min-w-210{min-width:210px}.min-w-220{min-width:220px}.min-w-230{min-width:230px}.min-w-240{min-width:240px}.min-w-250{min-width:250px}.min-w-260{min-width:260px}.min-w-270{min-width:270px}.min-w-280{min-width:280px}.min-w-290{min-width:290px}.min-w-300{min-width:300px}.min-w-310{min-width:310px}.min-w-320{min-width:320px}.min-w-330{min-width:330px}.min-w-340{min-width:340px}.min-w-350{min-width:350px}.min-w-360{min-width:360px}.min-w-370{min-width:370px}.min-w-380{min-width:380px}.min-w-390{min-width:390px}.min-w-400{min-width:400px}.min-w-410{min-width:410px}.min-w-420{min-width:420px}.min-w-430{min-width:430px}.min-w-440{min-width:440px}.min-w-450{min-width:450px}.min-w-460{min-width:460px}.min-w-470{min-width:470px}.min-w-480{min-width:480px}.min-w-490{min-width:490px}.min-w-500{min-width:500px}.min-w-510{min-width:510px}.min-w-520{min-width:520px}.min-w-530{min-width:530px}.min-w-540{min-width:540px}.min-w-550{min-width:550px}.min-w-560{min-width:560px}.min-w-570{min-width:570px}.min-w-580{min-width:580px}.min-w-590{min-width:590px}.min-w-600{min-width:600px}.min-w-610{min-width:610px}.min-w-620{min-width:620px}.min-w-630{min-width:630px}.min-w-640{min-width:640px}.min-w-650{min-width:650px}.min-w-660{min-width:660px}.min-w-670{min-width:670px}.min-w-680{min-width:680px}.min-w-690{min-width:690px}.min-w-700{min-width:700px}.min-w-710{min-width:710px}.min-w-720{min-width:720px}.min-w-730{min-width:730px}.min-w-740{min-width:740px}.min-w-750{min-width:750px}.min-w-760{min-width:760px}.min-w-770{min-width:770px}.min-w-780{min-width:780px}.min-w-790{min-width:790px}.min-w-800{min-width:800px}.min-w-810{min-width:810px}.min-w-820{min-width:820px}.min-w-830{min-width:830px}.min-w-840{min-width:840px}.min-w-850{min-width:850px}.min-w-860{min-width:860px}.min-w-870{min-width:870px}.min-w-880{min-width:880px}.min-w-890{min-width:890px}.min-w-900{min-width:900px}.min-w-910{min-width:910px}.min-w-920{min-width:920px}.min-w-930{min-width:930px}.min-w-940{min-width:940px}.min-w-950{min-width:950px}.min-w-960{min-width:960px}.min-w-970{min-width:970px}.min-w-980{min-width:980px}.min-w-990{min-width:990px}.min-w-1000{min-width:1000px}.min-w-1010{min-width:1010px}.min-w-1020{min-width:1020px}.min-w-1030{min-width:1030px}.min-w-1040{min-width:1040px}.min-w-1050{min-width:1050px}.min-w-1060{min-width:1060px}.min-w-1070{min-width:1070px}.min-w-1080{min-width:1080px}.min-w-1090{min-width:1090px}.min-w-1100{min-width:1100px}.min-w-1110{min-width:1110px}.min-w-1120{min-width:1120px}.min-w-1130{min-width:1130px}.min-w-1140{min-width:1140px}.min-w-1150{min-width:1150px}.min-w-1160{min-width:1160px}.min-w-1170{min-width:1170px}.min-w-1180{min-width:1180px}.min-w-1190{min-width:1190px}.min-w-1200{min-width:1200px}.min-w-1210{min-width:1210px}.min-w-1220{min-width:1220px}.min-w-1230{min-width:1230px}.min-w-1240{min-width:1240px}.min-w-1250{min-width:1250px}.min-w-1260{min-width:1260px}.min-w-1270{min-width:1270px}.min-w-1280{min-width:1280px}.min-w-1290{min-width:1290px}.min-w-1300{min-width:1300px}.min-w-1310{min-width:1310px}.min-w-1320{min-width:1320px}.min-w-1330{min-width:1330px}.min-w-1340{min-width:1340px}.min-w-1350{min-width:1350px}.min-w-1360{min-width:1360px}.min-w-1370{min-width:1370px}.min-w-1380{min-width:1380px}.min-w-1390{min-width:1390px}.min-w-1400{min-width:1400px}.min-w-1410{min-width:1410px}.min-w-1420{min-width:1420px}.min-w-1430{min-width:1430px}.min-w-1440{min-width:1440px}.min-w-1450{min-width:1450px}.min-w-1460{min-width:1460px}.min-w-1470{min-width:1470px}.min-w-1480{min-width:1480px}.min-w-1490{min-width:1490px}.min-w-1500{min-width:1500px}.min-w-1510{min-width:1510px}.min-w-1520{min-width:1520px}.min-w-1530{min-width:1530px}.min-w-1540{min-width:1540px}.min-w-1550{min-width:1550px}.min-w-1560{min-width:1560px}.min-w-1570{min-width:1570px}.min-w-1580{min-width:1580px}.min-w-1590{min-width:1590px}.min-w-1600{min-width:1600px}.min-w-1610{min-width:1610px}.min-w-1620{min-width:1620px}.min-w-1630{min-width:1630px}.min-w-1640{min-width:1640px}.min-w-1650{min-width:1650px}.min-w-1660{min-width:1660px}.min-w-1670{min-width:1670px}.min-w-1680{min-width:1680px}.min-w-1690{min-width:1690px}.min-w-1700{min-width:1700px}.min-w-1710{min-width:1710px}.min-w-1720{min-width:1720px}.min-w-1730{min-width:1730px}.min-w-1740{min-width:1740px}.min-w-1750{min-width:1750px}.min-w-1760{min-width:1760px}.min-w-1770{min-width:1770px}.min-w-1780{min-width:1780px}.min-w-1790{min-width:1790px}.min-w-1800{min-width:1800px}.min-w-1810{min-width:1810px}.min-w-1820{min-width:1820px}.min-w-1830{min-width:1830px}.min-w-1840{min-width:1840px}.min-w-1850{min-width:1850px}.min-w-1860{min-width:1860px}.min-w-1870{min-width:1870px}.min-w-1880{min-width:1880px}.min-w-1890{min-width:1890px}.min-w-1900{min-width:1900px}.min-w-1910{min-width:1910px}.min-w-1920{min-width:1920px}.min-w-1930{min-width:1930px}.min-w-1940{min-width:1940px}.min-w-1950{min-width:1950px}.min-w-1960{min-width:1960px}.min-w-1970{min-width:1970px}.min-w-1980{min-width:1980px}.min-w-1990{min-width:1990px}.min-w-2000{min-width:2000px}.min-w-2010{min-width:2010px}.min-w-2020{min-width:2020px}.min-w-2030{min-width:2030px}.min-w-2040{min-width:2040px}.min-w-2050{min-width:2050px}.min-w-2060{min-width:2060px}.min-w-2070{min-width:2070px}.min-w-2080{min-width:2080px}.min-w-2090{min-width:2090px}

/*Min Height*/
.min-h-10{min-height:10px}.min-h-15{min-height:15px}.min-h-20{min-height:20px}.min-h-25{min-height:25px}.min-h-30{min-height:30px}.min-h-35{min-height:35px}.min-h-40{min-height:40px}.min-h-45{min-height:45px}.min-h-50{min-height:50px}.min-h-55{min-height:55px}.min-h-60{min-height:60px}.min-h-65{min-height:65px}.min-h-70{min-height:70px}.min-h-75{min-height:75px}.min-h-80{min-height:80px}.min-h-85{min-height:85px}.min-h-110{min-height:110px}.min-h-115{min-height:115px}.min-h-130{min-height:130px}.min-h-150{min-height:150px}.min-h-220{min-height:220px}.min-h-260{min-height:260px}.min-h-300{min-height:300px}.min-h-340{min-height:340px}.min-h-410{min-height:410px}.min-h-440{min-height:440px}.min-h-500{min-height:500px}.min-h-180{min-height:180px}.min-h-360{min-height:360px}.min-h-590{min-height:590px}.min-h-610{min-height:610px}.min-h-770{min-height:770px}.min-h-20{min-height:20px}.min-h-500{min-height:500px}.min-h-560{min-height:560px}.min-h-700{min-height:700px}.min-h-730{min-height:730px}.min-h-850{min-height:850px}

/*Border Radius*/
.rounded-xs{border-radius:var(--radius-xs)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-4xl{border-radius:var(--radius-4xl)}.rounded-none{border-radius:0}.rounded-full{border-radius:100%}

/*Misc Rules*/

.new-lazy { position: relative; min-height: 80px; padding-bottom: 100%; background-color: transparent; font: normal normal normal 14px/1 FontAwesome; font-size: inherit; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.new-lazy:before { position: absolute; z-index: 9; top: 50%; left: 50%; -ms-transform: translate(-50%,-50%); -o-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); display: inline-block; color: #fff; font-size: 5px; margin: 0; width: 1em; height: 1em; border-radius: 50%; -webkit-animation: load4 1.3s infinite linear; animation: load4 1.3s infinite linear; content: ""; }
.background-lazy { position: relative; background-color: transparent; background-image: none !important; }
.background-lazy:before { position: absolute; top: 50%; left: 50%; -ms-transform: translate(-50%,-50%); -o-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); display: inline-block; color: #fff; font-size: 5px; margin: 0; width: 1em; height: 1em; border-radius: 50%; -o-animation: load4 1.3s infinite linear; -moz-animation: load4 1.3s infinite linear; -webkit-animation: load4 1.3s infinite linear; animation: load4 1.3s infinite linear; content: ""; }
.ajaxLoader { }
.ajaxLoader > i { display: inline-block; color: #2bbed8; font-size: 5px; margin: 0; width: 1em; height: 1em; border-radius: 50%; -o-animation: load4 1.3s infinite linear; -moz-animation: load4 1.3s infinite linear; -webkit-animation: load4 1.3s infinite linear; animation: load4 1.3s infinite linear; content: ""; }


.center-img img, .cent-img img{display: block; margin: 0 auto;}

.inner-rel { width: 100%; position: relative; }

.l-thru{text-decoration: line-through;}

.full-w{width: 100%;}
.full-h {height: 100%;}

.width-fit {width: fit-content;}

.cover-bg {background-size: cover !important; background-position: center !important;}

.full-w-img img {width: 100%; height: auto;}

.full-w {width: 100%;}

.z-stack {display: grid;}
.z-stack > * { grid-row-start: 1; grid-column-start: 1; }

.sticky {position: sticky; top: 0px;}
.sticky.top-30 {top: 30px;}

.no-overfl {overflow: hidden; }
.rel {position: relative;}

.no-p-marg p {margin: 0px !important;}
.no-padd {padding: 0px !important;}
.accordion {}
a {cursor: pointer;}

.cap-txt {text-transform: uppercase;}

.opac-0 {opacity: 0;}
.opac-08 {opacity: 0.8;}
.opac-05 {opacity: 0.5;}
.opac-04 {opacity: 0.4;}

.dark-bg-img{}

.underl {text-decoration: underline;}

.linethru, .line-thru{text-decoration: line-through;}

.youtube {width: 100%; aspect-ratio: 16 / 9;}
.youtube iframe{width: 100%; aspect-ratio: 16 / 9; display: block;}

.no-overflow{overflow: hidden;}

.rev-stars {display: grid;}
.rev-stars > *{grid-row-start: 1; grid-column-start: 1; display: flex;}
.rev-stars > *:last-child {color: #fff; overflow: hidden; }

.curs-point {cursor:pointer;}
.curs-point > * {cursor:pointer;}

*{background-position: center; background-size: cover;}

img {max-width: 100%; height: auto;}
img.blockimg {display: block;}

.bx-shad{    box-shadow: 0px 3px 6px #00000029;}
.bx-shad-inset{    box-shadow: 0px 3px 6px #00000029 inset;}


/*Responsive Rules*/
@media screen and (min-width: 1920px) {
    .pl-12percent { padding-left: 12%; }
}

@media  (max-width: 1229px) {
 .center-txt-md {text-align: center;}
 .center-block-md {margin: 0 auto;}
.fl-ju-cent-md {justify-content: center;}
}

@media screen and (min-width: 1480px) {
    .pl-12percent { padding-left: 12%; }
}




@media screen and (min-width: 1231px) {
    .pl-200 { padding-left: 200px; }
}



@media screen and (min-width:992px) {
.resp-padd-30 {padding: 30px;}
.resp-paddx-30 {padding-left: 30px; padding-right: 30px;}
.resp-mt-30 {margin-top: 30px;}
  
}


@media screen and (max-width:991px) {
   .faqs .faq .q {font-size: 2em;}
.resp-padd-30 {padding: 15px;}
.resp-paddx-30 {padding-left: 15px; padding-right: 15px;}
.resp-mt-30 {margin-top: 15px;}
}


@media screen and (max-width: 500px) {
.faqs .faq .q {font-size: 1.5em;}
.gap5px-xs {gap: 5px;}
.gap10px-xs {gap: 10px;}
.gap05rem-xs {gap: 0.5rem;}
.mt-1-xxs {margin-top: 1rem;}
.mt-05-xxs {margin-top: 0.5rem;}
.mt-0-xxs {margin-top: 0rem;}
.m0-xxs {margin: 0px !important;}
.p0-xxs {padding: 0px !important;}
.fl-r-rev-xxs {flex-direction: row-reverse;}
.fl-r-col-xxs {flex-direction: column-reverse;}

.p-15-xxs {padding: 15px;}

} 
/* === site.css === */

html,
body { margin: 0; overflow-x: clip; font-family: var(--font-body); font-weight: 400; display: flex; flex-direction: column; min-height: 100vh; }

body,
input,
textarea,
select { font-family: var(--font-body); }

#content { flex: 1; }

/* -----------------------------------------------
   THANK YOU PAGE
   ----------------------------------------------- */
.thankyou {
    display: flex;
    align-items: center;
    padding: var(--spacing-5xl) var(--container-padding);
    min-height: 50vh;
}

.thankyou__inner {
    max-width: 42rem;
}

.thankyou__rule {
    display: block;
    width: 2.5rem;
    height: 3px;
    background-color: var(--color-primary);
    margin-bottom: var(--spacing-lg);
}

.thankyou__label {
    font-family: var(--font-nav);
    font-size: var(--text-body);
    font-weight: 400;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 0 var(--spacing-sm);
}

.thankyou__title {
    font-family: var(--font-heading);
    font-size: var(--text-display);
    font-weight: 400;
    line-height: var(--leading-display);
    letter-spacing: var(--tracking-display);
    color: var(--color-black);
    margin: 0 0 var(--spacing-xl);
}

.thankyou__body {
    font-size: var(--text-body-lg);
    line-height: var(--leading-body-lg);
    letter-spacing: var(--tracking-body);
    color: var(--color-text);
    margin: 0 0 var(--spacing-3xl);
}

.thankyou__body a {
    color: var(--color-primary);
    font-weight: 600;
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.thankyou__body a:hover {
    text-decoration: none;
    opacity: 0.75;
}

.thankyou__btn {
    display: inline-flex;
    align-items: center;
    padding: 1rem 1.75rem;
    font-family: var(--font-nav);
    font-size: var(--text-btn);
    font-weight: 400;
    color: var(--color-white);
    background-color: var(--color-primary);
    border-radius: var(--radius-sm);
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.thankyou__btn:hover {
    opacity: 0.88;
}

/* -----------------------------------------------
   ERROR PAGES (404, 500)
   ----------------------------------------------- */
.error-page {
    display: flex;
    align-items: center;
    padding: var(--spacing-5xl) var(--container-padding);
    min-height: 50vh;
}

.error-page__inner {
    max-width: 42rem;
}

.error-page__code {
    font-family: var(--font-heading);
    font-size: clamp(5rem, 12vw, 10rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: -0.04em;
    color: var(--color-gray-mid);
    margin: 0 0 var(--spacing-lg);
}

.error-page__rule {
    display: block;
    width: 2.5rem;
    height: 3px;
    background-color: var(--color-primary);
    margin-bottom: var(--spacing-lg);
}

.error-page__label {
    font-family: var(--font-nav);
    font-size: var(--text-body);
    font-weight: 400;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 0 var(--spacing-sm);
}

.error-page__title {
    font-family: var(--font-heading);
    font-size: var(--text-display);
    font-weight: 400;
    line-height: var(--leading-display);
    letter-spacing: var(--tracking-display);
    color: var(--color-black);
    margin: 0 0 var(--spacing-xl);
}

.error-page__body {
    font-size: var(--text-body-lg);
    line-height: var(--leading-body-lg);
    letter-spacing: var(--tracking-body);
    color: var(--color-text);
    margin: 0 0 var(--spacing-3xl);
}

.error-page__body a {
    color: var(--color-primary);
    font-weight: 600;
    text-decoration: none;
}

.error-page__body a:hover {
    text-decoration: none;
}

.error-page__btn {
    display: inline-flex;
    align-items: center;
    padding: 1rem 1.75rem;
    font-family: var(--font-nav);
    font-size: var(--text-btn);
    font-weight: 400;
    color: var(--color-white);
    background-color: var(--color-primary);
    border-radius: var(--radius-sm);
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.error-page__btn:hover {
    opacity: 0.88;
}

h1,
h2,
h3,
h4,
h5,
h6 { font-family: var(--font-heading); }

button,
.btn,
a.btn,
input[type="button"],
input[type="submit"],
input[type="reset"] { font-family: var(--font-nav); }

.section-heading { display: flex; flex-direction: column; gap: 0.875rem; }

.section-heading__rule { display: block; width: 6.0625rem; height: 0.125rem; background-color: var(--color-black); }

.section-heading__title { margin: 0; font-family: var(--font-heading); font-size: 1.5625rem; font-weight: 500; line-height: 1.4; letter-spacing: -0.03em; color: var(--color-black); }

/* -----------------------------------------------
   Hero section
   ----------------------------------------------- */
.hero { position: relative; overflow: hidden; height: 762px; background: linear-gradient(180deg, #eef2f7 0%, #eef1f4 45%, #f4f3ee 100%); }

.hero__inner { position: relative; z-index: 2; display: flex; justify-content: center; width: 100%; padding-top: 86px; padding-left: 0; padding-right: 0; padding-bottom: 0; }

.hero__content { width: 100%; max-width: 1263px; text-align: center; }

.hero__title { margin: 0; font-family: var(--font-heading); font-size: clamp(2.875rem, 7vw, 5rem); font-weight: 500; line-height: 1; letter-spacing: -0.06em; color: var(--color-hero-text); text-wrap: balance; }

.hero__subtitle { max-width: 1256px; margin: 13px auto 0; font-family: var(--font-body); font-size: 22px; font-weight: 400; line-height: 28px; letter-spacing: -0.03em; color: var(--color-hero-text); text-wrap: balance; }

.hero__subtitle-break { display: none; }

.hero__media { position: absolute; inset: 0; z-index: 1; overflow: hidden; }

.hero__media-img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center -149px; }

.hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255, 255, 255, 0.52) 0%, rgba(255, 255, 255, 0.18) 18%, rgba(255, 255, 255, 0) 34%); pointer-events: none; }

/* -----------------------------------------------
   Hero — Tablet (768px+)
   ----------------------------------------------- */
@media (min-width: 768px) {
    .section-heading { gap: 2rem; }

    .hero { height: clamp(34rem, 56vw, 47.625rem); }

    .hero__inner { padding-top: clamp(3.5rem, 5.5vw, 5.375rem); }

    .hero__content { max-width: min(1263px, calc(100vw - 2rem)); }

    .hero__subtitle { max-width: min(1256px, calc(100vw - 2rem)); }

    .hero__media-img { object-position: center clamp(-9rem, -11vw, -5rem); }
}

/* -----------------------------------------------
   Hero — Desktop (992px+)
   ----------------------------------------------- */
@media (min-width: 1230px) {
    .hero__inner { padding-top: 86px; }

    .hero__title { font-size: 5rem; }

    .hero__subtitle { margin-top: 13px; font-size: 22px; line-height: 28px; }
}

@media (min-width: 768px) and (max-width: 1229px) {
    .hero__inner { padding-top: 3.5rem; }

    .hero__content { max-width: 44rem; }

    .hero__subtitle { max-width: 34rem; margin-top: 1rem; font-size: 1.375rem; line-height: 1.5; padding: 0.625rem 1rem; border-radius: 0.75rem; background-color: rgba(255, 255, 255, 0.78); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); text-wrap: pretty; }

    .hero__media::after { background: linear-gradient(180deg, rgba(255, 255, 255, 0.72) 0%, rgba(255, 255, 255, 0.44) 18%, rgba(255, 255, 255, 0.12) 36%, rgba(255, 255, 255, 0) 52%); }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .hero { height: clamp(36rem, 50vw, 42rem); }

    .hero__content { max-width: 52rem; }

    .hero__title { font-size: 4.25rem; }

    .hero__subtitle { max-width: 40rem; font-size: 1.25rem; line-height: 1.45; }

    .hero__media-img { object-position: center -3rem; }
}

/* -----------------------------------------------
   Hero — Wide desktop (1230px+)
   ----------------------------------------------- */
@media (min-width: 1230px) {
    .hero { height: 762px; }

    .hero__media-img { object-position: center 70%; }
}

@media (max-width: 767px) {
    .hero { display: flex; flex-direction: column-reverse; height: auto; background: none; overflow: visible; }

    .hero__inner { justify-content: flex-start; padding: 0.875rem 1rem 0; }

    .hero__content { width: 22.125rem; max-width: 100%; text-align: left; }

    .hero__title { max-width: 17.5625rem; font-size: 3rem; line-height: 1; letter-spacing: -0.06em; }

    .hero__subtitle { width: 22.125rem; max-width: 100%; margin-top: 0.6875rem; font-size: 1rem; line-height: 1.75; text-wrap: normal; }

    .hero__subtitle-break { display: block; }

    .hero__media { position: relative; inset: auto; height: 28.4375rem; background-color: #deedff; }

    .hero__media-img { object-position: center top; }

    .hero__media::after { display: none; }
}

/* -----------------------------------------------
   About section
   ----------------------------------------------- */
.about { padding: 1.125rem 0 1.5rem; }

.about__inner.container { padding-left: 0; padding-right: 0; }

.about__header { margin-bottom: 2rem; }

.about__accent { width: 10rem; }

.about__heading { font-size: var(--text-h2); line-height: 1.185; }

.about__body { display: flex; flex-direction: column; gap: 2rem; }

.about__media { position: relative; }

.about__media-frame { position: relative; }

.about__viewport { overflow: hidden; width: 100%; }

.about__track { display: flex; gap: 1rem; transition: transform 320ms ease; will-change: transform; }

.about__slide { flex: 0 0 100%; width: 100%; }

.about__slide-img { display: block; width: 100%; height: auto; aspect-ratio: 734 / 551; object-fit: cover; }

.about__fade { display: none; }

.about__nav { display: flex; gap: 0.3125rem; margin-top: 0.875rem; }

.about__nav-btn { display: flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem; padding: 0; border: none; border-radius: 50%; color: var(--color-white); cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; transition: opacity var(--transition-fast); }

.about__nav-btn:hover:not(:disabled) { opacity: 0.85; }

.about__nav-btn:not(:disabled) { background-color: var(--color-primary); }

.about__nav-btn:disabled { background-color: var(--color-gray); cursor: default; opacity: 1; }

.about__text { font-family: var(--font-body); font-size: var(--text-body-lg); font-weight: 400; line-height: var(--leading-body-lg); letter-spacing: var(--tracking-body); color: var(--color-black); }

.about__text p { margin: 0 0 1.5rem; }

.about__text p:last-child { margin-bottom: 0; }

/* -----------------------------------------------
   About — Mobile (767px and down)
   ----------------------------------------------- */
@media (max-width: 767px) {
    .about { padding: 0 0 1.5rem; }

    .about__inner.container { padding-left: 1rem; padding-right: 1rem; }

    .about__header { width: 100%; max-width: 22.375rem; margin-bottom: 1.5rem; }

    .about__accent { display: none; }

    .about__heading { width: 100%; max-width: 22.375rem; font-size: 2rem; line-height: 1.1875; letter-spacing: -0.03em; }

    .about__body { gap: 0; }

    .about__media { margin-right: -1rem; }

    .about__viewport { width: calc(100vw - 1rem); overflow-x: auto; overflow-y: hidden; scrollbar-width: none; -webkit-overflow-scrolling: touch; }

    .about__viewport::-webkit-scrollbar { display: none; }

    .about__track { display: inline-flex; gap: 0.6875rem; min-width: max-content; padding-right: 1rem; }

    .about__slide { flex: 0 0 14.8125rem; width: 14.8125rem; }

    .about__slide-img { width: 14.8125rem; height: 15.4375rem; aspect-ratio: auto; }

    .about__nav { gap: 0.233625rem; margin-top: 0.5rem; }

    .about__nav-btn { width: 2.383125rem; height: 2.383125rem; }

    .about__text { max-width: 22.375rem; margin-top: 1rem; padding-right: 0; font-size: 1rem; line-height: 1.75; }

    .about__text p { margin-bottom: 0.75rem; }
}

/* -----------------------------------------------
   About — Tablet (768px+)
   ----------------------------------------------- */
@media (min-width: 768px) {
    .section-heading__rule { width: 17.625rem; }

    .about { padding: 1.75rem 0 2.25rem; }

    .about__inner.container { padding-left: 1rem; padding-right: 1rem; }

    .about__header { margin-bottom: 2.5rem; }

    .about__accent { width: 17.625rem; }

    .about__heading { max-width: 42rem; }

    .about__nav-btn { width: 3.1875rem; height: 3.1875rem; }
}

/* -----------------------------------------------
   About — Desktop (992px+)
   ----------------------------------------------- */
@media (min-width: 992px) {
    .about { padding: 1.875rem 0 2.75rem; }

    .about__inner.container { padding-left: 0; padding-right: 0; }

    .about__header { width: min(70.625rem, 100%); margin-bottom: 4.125rem; }

    .about__heading { max-width: 70.625rem; font-size: 3.375rem; line-height: 1.13; }

    .about__body { position: relative; display: grid; grid-template-columns: minmax(0, 76.75rem) minmax(18rem, 33.5rem); align-items: start; justify-content: space-between; gap: 1.25rem; }

    .about__media { min-width: 0; padding-bottom: 5rem; }

    .about__media-frame { position: relative; }

    .about__viewport { width: min(100%, 76.75rem); }

    .about__track { gap: 2.1875rem; }

    .about__slide { flex: 0 0 45.875rem; width: 45.875rem; }

    .about__fade {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        left: auto;
        width: clamp(16rem, 24vw, 22rem);
        height: 100%;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.72) 58%, rgba(255, 255, 255, 0.94) 82%, rgba(255, 255, 255, 1) 100%);
        pointer-events: none;
        z-index: 2;
    }

    .about__text { position: relative; z-index: 3; min-width: 0; width: auto; max-width: 33.5rem; padding-top: 2rem; padding-left: 0; font-size: 1.125rem; line-height: 1.5556; }

    .about__nav { position: absolute; left: 0; bottom: 0; margin-top: 0; gap: 0.3125rem; }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .about { padding: 1.375rem 0 2.5rem; }

    .about__header { width: min(61rem, 100%); margin-bottom: 2.75rem; }

    .about__heading { max-width: 58rem; font-size: 3rem; line-height: 1.08; }

    .about__body { grid-template-columns: minmax(0, 1fr) minmax(20rem, 30.5rem); align-items: center; gap: 1.75rem; }

    .about__media { position: relative; min-width: 0; padding-bottom: 3.5rem; }

    .about__media-frame { width: fit-content; max-width: 100%; align-self: center; margin-top: 1.5rem; }

    .about__viewport { width: clamp(31rem, 46vw, 36rem); max-width: 100%; }

    .about__track { gap: 1.25rem; }

    .about__slide { flex-basis: clamp(31rem, 46vw, 36rem); width: clamp(31rem, 46vw, 36rem); }

    .about__fade { display: none; }

    .about__text { max-width: 30.5rem; padding-top: 0; font-size: 1rem; line-height: 1.625; }

    .about__nav { position: absolute; left: 0; bottom: 0; margin-top: 0; gap: 0.25rem; }

    .about__nav-btn { width: 2.875rem; height: 2.875rem; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .about__inner.container { padding-left: 2rem; padding-right: 2rem; }
}

@media (min-width: 1440px) {
    .about__inner.container { padding-left: 4rem; padding-right: 4rem; }

    .about__viewport { width: min(100%, 76.75rem); }

    .about__track { gap: 2.1875rem; }

    .about__slide { flex-basis: 45.875rem; width: 45.875rem; }

    .about__fade { display: block; }
}

@media (min-width: 2200px) {
    .hero__media-img { object-position: center 60%; }
}

/* === testimonials.css === */

/* -----------------------------------------------
   Testimonials Page
   ----------------------------------------------- */
.testimonials-page { color: var(--color-black); }

.testimonials-page__hero { padding-top: 0.25rem; }

.testimonials-page__hero-image { background-color: #191a15; }

.testimonials-page__hero-image img { width: 100%; height: 100%; min-height: 20rem; object-fit: cover; }

.testimonials-page__hero-body { gap: 1.3125rem; }

.testimonials-page__hero-heading { display: flex; flex-direction: column; gap: 1rem; }

.testimonials-page__hero-body .ip-hero__label { font-size: 0.875rem; line-height: 44px; letter-spacing: -0.54px; color: var(--color-primary); }

.testimonials-page__hero-body .ip-hero__title { font-size: clamp(2.25rem, 4vw, 3.875rem); font-weight: 500; line-height: 1.06; }

.testimonials-page__hero-body .ip-hero__intro { max-width: 42rem; }

.testimonials-page__hero-body .ip-hero__lead { letter-spacing: -0.03em; }

.testimonials-page__hero-body .ip-hero__cta { min-height: 3.75rem; padding: 1.125rem 2rem; border-width: 2px; border-radius: 0.375rem; font-size: 1.125rem; }

.testimonials-page__list { padding-top: 2.5rem; padding-bottom: 5rem; }

.testimonials-page__columns { display: grid; grid-template-columns: 1fr; gap: 2rem; }

.testimonials-page__column { display: flex; flex-direction: column; gap: 2.5rem; }

.testimonials-page__item { display: flex; flex-direction: column; gap: 1rem; }

.testimonials-page__item-rule { display: block; width: 10rem; height: 4px; background-color: var(--color-black); }

.testimonials-page__item-header { display: flex; flex-direction: column; gap: 0.5rem; }

.testimonials-page__item-name { margin: 0; font-family: var(--font-heading); font-size: clamp(1.75rem, 2.5vw, 2.75rem); font-weight: 500; line-height: 1.04; letter-spacing: -0.03em; color: var(--color-black); }

.testimonials-page__item-role { margin: 0; font-family: var(--font-heading); font-size: 1rem; font-weight: 600; line-height: 1.5; letter-spacing: -0.03em; color: var(--color-black); }

.testimonials-page__item-quote { margin: 0; font-family: var(--font-heading); font-size: 1rem; font-style: normal; font-weight: 400; line-height: 1.72; letter-spacing: -0.03em; color: var(--color-black); }

.testimonials-page__projects .image-strip-section { background-color: #f7f7f7; }

.testimonials-page__projects .image-strip-section__inner.container { padding-top: 3.875rem; padding-bottom: 3.8125rem; }

.testimonials-page__projects .image-strip-section__header { gap: 0.75rem; max-width: 47.6875rem; }

.testimonials-page__projects .image-strip-section__rule { width: 13.625rem; height: 4px; }

.testimonials-page__projects .image-strip-section__title { font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.23; letter-spacing: -0.03em; }

.testimonials-page__projects .image-strip-section__track { gap: 1rem; }

.testimonials-page__projects .image-strip-section__item { width: 20rem; }

.testimonials-page__projects .image-strip-section__image { height: 12.5rem; }

.testimonials-page__projects .image-strip-section__cta { margin-top: 1.75rem; display: flex; justify-content: center; }

.testimonials-page__projects .image-strip-section__button { min-height: 3.75rem; padding: 1.125rem 2rem; border-radius: 0.375rem; background-color: #ca161e; border-color: rgba(0, 0, 0, 0.22); color: var(--color-white); }

.testimonials-carousel { padding: 1.25rem 0 6rem; background-color: var(--color-white); }

.testimonials-carousel__inner.container { padding-left: 1rem; padding-right: 1rem; }

.testimonials-carousel__sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.testimonials-carousel__shell { position: relative; display: block; max-width: 22.6875rem; margin: 0 auto; }

.testimonials-carousel__viewport { position: relative; z-index: 1; overflow: hidden; transition: height 320ms ease; }

.testimonials-carousel__track { display: flex; align-items: flex-start; transition: transform 320ms ease; will-change: transform; }

.testimonials-carousel__slide { flex: 0 0 100%; width: 100%; display: flex; flex-direction: column; align-items: center; align-self: flex-start; gap: 1rem; padding-bottom: 0; text-align: center; }

.testimonials-carousel__brand { display: flex; justify-content: center; width: 126px; height: 47px; }

.testimonials-carousel__brand-logo { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }

.testimonials-carousel__brand-logo--redrow { width: 14.125rem; max-width: 14.125rem; height: 2.5rem; max-height: 2.5rem; display: block; margin: 0 auto; }

.testimonials-carousel__brand-logo--redrow img { width: 14.125rem; max-width: 14.125rem; height: 2.5rem; max-height: 2.5rem; object-fit: contain; display: block; }

.testimonials-carousel__brand-mark { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 7.875rem; min-height: 2.9375rem; padding: 0 0.875rem; font-family: var(--font-nav); font-size: 0.8125rem; line-height: 0.92; letter-spacing: 0; text-transform: uppercase; color: #6f6f6f; }

.testimonials-carousel__brand-mark::before,
.testimonials-carousel__brand-mark::after { content: ""; position: absolute; top: 0; bottom: 0; width: 0.5rem; border-top: 2px solid #d3a538; border-bottom: 2px solid #d3a538; }

.testimonials-carousel__brand-mark::before { left: 0; border-left: 2px solid #d3a538; }
.testimonials-carousel__brand-mark::after { right: 0; border-right: 2px solid #d3a538; }

.testimonials-carousel__brand-mark span { display: block; }

.testimonials-carousel__quote { margin: 0; width: 21.625rem; max-width: 100%; font-family: var(--font-body); font-size: 1rem; font-weight: 400; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); text-wrap: normal; }

.testimonials-carousel__quote::before,
.testimonials-carousel__quote::after { content: "\""; }

.testimonials-carousel__quote-break { display: block; }

.testimonials-carousel__attribution { display: flex; flex-direction: column; align-items: center; gap: 0; width: 12.75rem; margin: 0 auto; }

.testimonials-carousel__name,
.testimonials-carousel__role { margin: 0; width: 100%; max-width: 12.75rem; font-family: var(--font-body); font-size: 1.125rem; letter-spacing: -0.03em; color: var(--color-black); }

.testimonials-carousel__name { font-weight: 600; line-height: 1.2222; }

.testimonials-carousel__role { font-weight: 300; line-height: 1.2222; }

.testimonials-carousel__controls { display: grid; grid-template-columns: 2.25rem minmax(0, 1fr) 2.25rem; align-items: center; column-gap: 0.75rem; width: 100%; max-width: 21.625rem; margin: 0.75rem auto 0; }

.testimonials-carousel__current-attribution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; min-width: 0; min-height: 0; text-align: center; }

.testimonials-carousel__current-name,
.testimonials-carousel__current-role { margin: 0; width: 100%; font-family: var(--font-body); letter-spacing: -0.03em; color: var(--color-black); }

.testimonials-carousel__current-name { font-size: 1.125rem; font-weight: 600; line-height: 1.2222; }

.testimonials-carousel__current-role { font-size: 1.125rem; font-weight: 300; line-height: 1.2222; }

.testimonials-carousel__nav { z-index: 2; display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; padding: 0; border: none; -webkit-box-shadow: 0px 0px 0px 1px var(--color-navy); overflow: none;
box-shadow: 0px 0px 0px 1px var(--color-navy);  border-radius: 50%; background: #fff; color: var(--color-navy); cursor: pointer; touch-action: manipulation; transition: opacity var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast); }

.testimonials-carousel__nav--desktop { display: none; }

.testimonials-carousel__attribution { display: none; }

.testimonials-carousel__nav svg { display: block; width: 0.5rem; height: 1rem; }

.testimonials-carousel__nav:disabled { opacity: 0.35; cursor: default; }

.testimonials-carousel__cta { display: flex; justify-content: center; margin-top: 2rem; }

.testimonials-carousel__button { display: inline-flex; align-items: center; justify-content: center; width: 9.875rem; min-width: 9.875rem; height: 3rem; min-height: 3rem; padding: 0 1.5rem; border-radius: 0.375rem; background-color: var(--color-black); font-family: var(--font-nav); font-size: 1rem; line-height: 1.037; color: var(--color-white); text-decoration: none; white-space: nowrap; }

@media (min-width: 768px) {
    .testimonials-page__hero { gap: 2.75rem; padding-top: 2.25rem; padding-bottom: 3rem; }

    .testimonials-page__hero-image { flex: 0 0 52%; max-width: 52%; }

    .testimonials-page__hero-image img { min-height: 28rem; }

    .testimonials-page__list { padding-top: 3rem; padding-bottom: 5.5rem; }

    .testimonials-page__columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem; }

    .testimonials-page__column { gap: 3rem; }

    .testimonials-page__projects .image-strip-section__item { width: 26rem; }

    .testimonials-page__projects .image-strip-section__image { height: 15rem; }

    .testimonials-carousel { padding: 4rem 0 5rem; background-color: transparent; }

    .testimonials-carousel__inner.container { padding-left: 0; padding-right: 0; }

    .testimonials-carousel__shell { display: grid; grid-template-columns: 4.15625rem minmax(0, 1fr) 4.15625rem; align-items: center; gap: 2rem; max-width: none; }

    .testimonials-carousel__controls { display: none; }

    .testimonials-carousel__slide { gap: 1.5rem; padding-bottom: 0; }

    .testimonials-carousel__brand { width: unset; height: unset; }
    .testimonials-carousel__brand-mark { min-width: 10rem; min-height: 4.75rem; padding: 0 1.375rem; font-size: 1.125rem; }

    .testimonials-carousel__quote { max-width: 53.1875rem; font-size: 1.375rem; line-height: 1.8; }

    .testimonials-carousel__quote-break { display: none; }

    .testimonials-carousel__attribution { display: flex; gap: 0.375rem; width: auto; }

    .testimonials-carousel__name,
    .testimonials-carousel__role { max-width: 24.3125rem; font-size: 1.5rem; }

    .testimonials-carousel__name,
    .testimonials-carousel__role { line-height: 1.4167; }

    .testimonials-carousel__nav { position: static; width: 4.15625rem; height: 4.205rem; }

    .testimonials-carousel__nav--desktop { display: inline-flex; }

    .testimonials-carousel__nav svg { width: 0.8375rem; height: 1.6625rem; }

    .testimonials-carousel__cta { margin-top: 2rem; }

    .testimonials-carousel__button { min-width: 12.75rem; min-height: 3.75rem; padding: 1.1875rem 2rem; font-size: 1.125rem; line-height: 0.922; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .testimonials-carousel { padding: 0 0 3.5rem; }

    .testimonials-carousel__inner.container { padding-left: 1rem; padding-right: 1rem; }

    .testimonials-carousel__shell { display: block; width: 100%; max-width: 44.5rem; }

    .testimonials-carousel__viewport { transition: height 320ms ease; }

    .testimonials-carousel__controls { display: grid; grid-template-columns: 3rem minmax(0, 1fr) 3rem; align-items: center; justify-content: stretch; column-gap: 1rem; width: 100%; max-width: 34rem; margin: 1.25rem auto 0; }

    .testimonials-carousel__current-attribution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; min-width: 0; text-align: center; }

    .testimonials-carousel__slide { gap: 1.25rem; }

    .testimonials-carousel__brand-mark { min-width: 9rem; min-height: 4rem; padding: 0 1rem; font-size: 1rem; }

    .testimonials-carousel__quote { max-width: 34rem; font-size: 1.25rem; line-height: 1.6; }

    .testimonials-carousel__attribution { display: none; }

    .testimonials-carousel__current-name,
    .testimonials-carousel__current-role { max-width: 28rem; font-size: 1.25rem; line-height: 1.35; }

    .testimonials-carousel__current-name { font-weight: 600; }

    .testimonials-carousel__current-role { font-weight: 300; }

    .testimonials-carousel__nav--desktop { display: none; }

    .testimonials-carousel__nav--mobile { display: inline-flex; width: 3rem; height: 3rem; }

    .testimonials-carousel__nav--mobile svg { width: 0.75rem; height: 1.25rem; }

    .testimonials-carousel__cta { margin-top: 1.5rem; }
}

@media (min-width: 992px) {
    .testimonials-carousel { padding: 3rem 0 2.625rem; }

    .testimonials-carousel__shell { width: 68.875rem; margin: 0 auto; gap: 3.6875rem; }

    .testimonials-carousel__slide { gap: 2.125rem; }

    .testimonials-carousel__brand-mark { width: 12.75rem; min-width: 12.75rem; min-height: 4.75rem; padding: 0 1.5rem; font-size: 1rem; }

    .testimonials-carousel__quote { font-size: 1.5rem; line-height: 1.8333; }

    .testimonials-carousel__cta { margin-top: 2.625rem; }

    .testimonials-page__hero-body .ip-hero__label { font-size: 1.125rem; line-height: 44px; letter-spacing: -0.54px; color: var(--color-primary); }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .testimonials-carousel { padding: 0 0 2.625rem; }

    .testimonials-carousel__inner.container { padding-left: 1rem; padding-right: 1rem; }

    .testimonials-carousel__shell { display: block; width: 100%; max-width: 60rem; }

    .testimonials-carousel__viewport { max-width: 100%; }

    .testimonials-carousel__slide { gap: 1.5rem; }

    .testimonials-carousel__brand-mark { min-width: 10rem; width: auto; min-height: 4rem; padding: 0 1rem; font-size: 1rem; }

    .testimonials-carousel__quote { width: 100%; max-width: 37rem; font-size: 1.25rem; line-height: 1.7; }

    .testimonials-carousel__attribution { display: none; }

    .testimonials-carousel__controls { display: grid; grid-template-columns: 3rem minmax(0, 1fr) 3rem; align-items: center; column-gap: 1rem; width: 100%; max-width: 34rem; margin: 1.25rem auto 0; }

    .testimonials-carousel__current-attribution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.125rem; min-width: 0; text-align: center; }

    .testimonials-carousel__current-name,
    .testimonials-carousel__current-role { max-width: 28rem; font-size: 1.25rem; line-height: 1.35; }

    .testimonials-carousel__current-name { font-weight: 600; }

    .testimonials-carousel__current-role { font-weight: 300; }

    .testimonials-carousel__nav--desktop { display: none; }

    .testimonials-carousel__nav--mobile { display: inline-flex; width: 3rem; height: 3rem; }

    .testimonials-carousel__nav--mobile svg { width: 0.75rem; height: 1.25rem; }

    .testimonials-carousel__cta { margin-top: 2rem; }
    .testimonials-carousel__viewport { height: auto; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .testimonials-carousel { padding: 0.5rem 0 2.625rem; }

    .testimonials-carousel__inner.container { padding-left: 2rem; padding-right: 2rem; }

    .testimonials-carousel__shell { display: block; width: 100%; max-width: 72rem; }

    .testimonials-carousel__viewport { max-width: 100%; }

    .testimonials-carousel__slide { gap: 1.75rem; }

    .testimonials-carousel__brand-mark { min-width: 11rem; width: auto; min-height: 4.25rem; padding: 0 1.125rem; font-size: 1rem; }

    .testimonials-carousel__quote { width: 100%; max-width: 46rem; font-size: 1.375rem; line-height: 1.75; }

    .testimonials-carousel__attribution { display: none; }

    .testimonials-carousel__controls { display: grid; grid-template-columns: 4rem minmax(0, 1fr) 4rem; align-items: center; column-gap: 1.5rem; width: 100%; max-width: 44rem; margin: 1.5rem auto 0; }

    .testimonials-carousel__current-attribution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.125rem; min-width: 0; text-align: center; }

    .testimonials-carousel__current-name,
    .testimonials-carousel__current-role { max-width: 32rem; font-size: 1.375rem; line-height: 1.35; }

    .testimonials-carousel__current-name { font-weight: 600; }

    .testimonials-carousel__current-role { font-weight: 300; }

    .testimonials-carousel__nav--desktop { display: none; }

    .testimonials-carousel__nav--mobile { display: inline-flex; width: 4rem; height: 4rem; }

    .testimonials-carousel__nav--mobile svg { width: 0.875rem; height: 1.5rem; }

    .testimonials-carousel__cta { margin-top: 2.25rem; }
}

@media (min-width: 1440px) {
    .testimonials-page__hero { gap: 6.875rem; padding-top: 0; padding-bottom: 4.9375rem; }

    .testimonials-page__hero-image { flex: 0 0 49.44%; max-width: 49.44%; }

    .testimonials-page__hero-image img { min-height: 38.625rem; }

    .testimonials-page__hero-body { max-width: 44.125rem; }

    .testimonials-page__hero-body .ip-hero__title { font-size: 3rem; line-height: 1.065; }

    .testimonials-page__hero-body .ip-hero__lead { font-size: 1.25rem; line-height: 1.5; }

    .testimonials-page__list { padding-top: 1.875rem; padding-bottom: 6.0625rem; }

    .testimonials-page__columns { gap: 4.625rem; }

    .testimonials-page__column { gap: 4rem; }

    .testimonials-page__item-name { font-size: 2.75rem; line-height: 0.98; }

    .testimonials-page__item-role { font-size: 1.25rem; line-height: 1.45; }

    .testimonials-page__item-quote { font-size: 1.125rem; line-height: 1.72; }

    .testimonials-page__projects .image-strip-section__track { gap: 1.5rem; }

    .testimonials-page__projects .image-strip-section__item { width: 33.6875rem; }

    .testimonials-page__projects .image-strip-section__image { height: 19.5rem; }

    .testimonials-carousel { padding: 0.75rem 0 3rem; }

    .testimonials-carousel__inner.container { padding-left: 4rem; padding-right: 4rem; }

    .testimonials-carousel__shell { display: block; width: 100%; max-width: 78rem; }

    .testimonials-carousel__viewport { max-width: 100%; }

    .testimonials-carousel__slide { gap: 2rem; }

    .testimonials-carousel__brand-mark { width: auto; min-width: 12rem; min-height: 4.75rem; padding: 0 1.375rem; font-size: 1.125rem; }

    .testimonials-carousel__quote { width: 100%; max-width: 52rem; font-size: 1.5rem; line-height: 1.75; }

    .testimonials-carousel__attribution { display: none; }

    .testimonials-carousel__controls { display: grid; grid-template-columns: 4.15625rem minmax(0, 1fr) 4.15625rem; align-items: center; column-gap: 1.5rem; width: 100%; max-width: 50rem; margin: 1.75rem auto 0; }

    .testimonials-carousel__current-attribution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; min-width: 0; text-align: center; }

    .testimonials-carousel__current-name,
    .testimonials-carousel__current-role { max-width: 34rem; font-size: 1.5rem; line-height: 1.35; }

    .testimonials-carousel__current-name { font-weight: 600; }

    .testimonials-carousel__current-role { font-weight: 300; }

    .testimonials-carousel__nav--desktop { display: none; }

    .testimonials-carousel__nav--mobile { display: inline-flex; width: 4.15625rem; height: 4.205rem; }

    .testimonials-carousel__nav--mobile svg { width: 0.8375rem; height: 1.6625rem; }

    .testimonials-carousel__cta { margin-top: 2.5rem; }
}

/* === rss-feed.css === */

.rss-feed { padding: 3.9375rem 0 2rem; background: #efefef; overflow: hidden; }

.standard-page .rss-feed { border-top: 1px solid #000; }

.rss-feed__header { width: 22.375rem; margin-bottom: 1.125rem; gap: 0.875rem; }

.rss-feed__rule { width: 6.0625rem; }

.rss-feed__title { font-size: 1.5625rem; line-height: 2.48; letter-spacing: -0.03em; }

@media (max-width: 767px) {
    .rss-feed__title { line-height: 1.4; }
    .rss-feed .blogtitle { line-height: 24px; }
    .rss-feed .readmore { flex-shrink: 0; }
    .rss-feed article { height: unset !important; }
    .rss-feed article strong { padding-top: 0.75rem !important; }
}

.rss-feed .section { display: grid !important; grid-template-columns: 1fr; gap: 1rem; width: 100%; margin: 0 !important; row-gap: 1rem !important; }

.rss-feed article { width: auto !important; max-width: 100%; min-width: 0; float: none !important; margin: 0 !important; background: var(--color-white); overflow: hidden; height: 28.1875rem; }

.rss-feed .section > article { padding: 0 !important; }

.rss-feed article a { display: flex; flex-direction: column; min-height: 28.1875rem; height: 100%; padding-bottom: 1rem; color: var(--color-text-dark); text-decoration: none; }

.rss-feed article img { display: block; width: 100%; height: 10.375rem; object-fit: cover; object-position: center; }

.rss-feed .blogtitle,
.rss-feed article strong,
.rss-feed .blogcontent,
.rss-feed .readmore { display: block; }

.rss-feed .blogtitle { width: 17.25rem; max-width: calc(100% - 2rem); padding: 1rem 1rem 0; font-family: var(--font-heading); font-size: 1.25rem; font-weight: 500; line-height: 1.2; letter-spacing: -0.03em; color: var(--color-text-dark); }

.rss-feed article strong { padding: 1rem 1rem 0; font-family: var(--font-body); font-size: 0.875rem; font-weight: 700; line-height: 1.4286; letter-spacing: -0.03em; color: var(--color-text-dark); }

.rss-feed .blogcontent { display: -webkit-box; overflow: hidden; padding: 0.5rem 1rem 0; font-family: var(--font-body); font-size: 0.875rem; font-weight: 400; line-height: 1.7143; letter-spacing: -0.03em; color: var(--color-text-dark); -webkit-line-clamp: 4; -webkit-box-orient: vertical; }

.rss-feed .readmore { margin-top: 1.5rem; margin-right: auto; margin-bottom: 0; margin-left: 1rem; width: 9.25rem; min-width: 9.25rem; height: 3rem; padding: 0; border-radius: 0.375rem; background-color: #ca161e; font-family: var(--font-nav); font-size: 1rem; font-weight: 400; line-height: 1.0372; letter-spacing: 0; text-transform: none; color: var(--color-white); text-align: center; display: inline-flex; align-items: center; justify-content: center; }

.rss-feed .clear { display: none; }

@media (min-width: 768px) {
    .rss-feed { padding: 3rem 0 3rem; }

    .rss-feed__header { width: 100%; max-width: 46rem; margin-bottom: 1.25rem; }

    .rss-feed__rule { width: 8.5rem; }

    .rss-feed__title { font-size: 2.25rem; line-height: 1.15; }

    .rss-feed .section { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; row-gap: 1rem !important; }

    .rss-feed article { height: 32rem; }

    .rss-feed article a { min-height: 33rem; padding-bottom: 1.25rem; }

    .rss-feed article img { height: 11rem; }

    .rss-feed .blogtitle { width: auto; max-width: calc(100% - 2rem); padding: 1.125rem 1.125rem 0; font-size: 1.125rem; line-height: 1.2; }

    .rss-feed article strong { padding: 1rem 1.125rem 0; font-size: 0.9375rem; line-height: 1.5; }

    .rss-feed .blogcontent { padding: 0.75rem 1.125rem 0; font-size: 0.9375rem; line-height: 1.6; -webkit-line-clamp: 5; }

    .rss-feed .readmore { margin-top: 1.5rem; margin-right: auto; margin-bottom: 0; margin-left: auto; width: 9.25rem; min-width: 9.25rem; height: 3rem; min-height: 3rem; padding: 0; font-size: 1rem; line-height: 1.0372; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .rss-feed article { height: 33rem; }
    .rss-feed .blogtitle { max-width: unset; max-height: 62px; height: 100%; }
    .rss-feed .blogcontent { max-width: unset; max-height: 135px; height: 100%; }
    .rss-feed article strong { max-height: 62px; height: 100%; }
    .rss-feed .readmore { margin-right: 1.5rem; }
}

@media (min-width: 992px) {
    .rss-feed { padding: 3.875rem 0 3.8125rem; }

    .rss-feed__title { font-size: 2.75rem; }

    .rss-feed .section { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.3125rem; row-gap: 1.3125rem !important; }

    .rss-feed article a { min-height: 35.125rem; }

    .rss-feed article img { height: 14.0625rem; }

    .rss-feed .blogtitle { padding: 1.625rem 1.6875rem 0; font-size: 1.625rem; line-height: 1.2502; }

    .rss-feed article strong { padding: 1rem 1.6875rem 0; }

    .rss-feed .blogcontent { display: block; overflow: visible; padding: 0.875rem 1.6875rem 0; -webkit-line-clamp: unset; }

    .rss-feed .readmore { margin-right: 1.6875rem; margin-bottom: 1.625rem; margin-left: auto; padding: 1.34375rem 2rem 1.28125rem; }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .rss-feed { padding: 3rem 0 3rem; }

    .rss-feed__header { margin-bottom: 1.5rem; }

    .rss-feed .section { gap: 1rem; row-gap: 1rem !important; }

    .rss-feed article { height: 30rem; }

    .rss-feed article a { min-height: 31rem; padding-bottom: 1rem; }

    .rss-feed article img { height: 10.5rem; }

    .rss-feed .blogtitle { padding: 1rem 1rem 0; font-size: 1rem; line-height: 1.2; max-height: 55px; height: 100%; max-width: unset; }

    .rss-feed article strong { padding: 0.875rem 1rem 0; font-size: 0.875rem; line-height: 1.4; max-height: 55px; height: 100%; }

    .rss-feed .blogcontent { padding: 0.625rem 1rem 0; font-size: 0.875rem; line-height: 1.6; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 6; -webkit-box-orient: vertical; max-height: 122px; height: 100%; }

    .rss-feed .readmore { width: 7.875rem; min-width: 7.875rem; height: 2.75rem; min-height: 2.75rem; margin-top: 1.25rem; margin-right: 1.5rem; margin-bottom: 0; margin-left: auto; padding: 0; font-size: 0.9375rem; line-height: 1; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .rss-feed { padding: 3.25rem 0 3.25rem; }

    .rss-feed__header { margin-bottom: 1.625rem; }

    .rss-feed__title { font-size: 2.5rem; line-height: 1.15; }

    .rss-feed .section { gap: 1.125rem; row-gap: 1.125rem !important; }

    .rss-feed article { height: 30.5rem; }

    .rss-feed article a { min-height: 32.5rem; padding-bottom: 1.25rem; }

    .rss-feed article img { height: 11.5rem; }

    .rss-feed .blogtitle { padding: 1.25rem 1.25rem 0; font-size: 1.1875rem; line-height: 1.18; max-height: 65px; height: 100%; }

    .rss-feed article strong { padding: 0.875rem 1.25rem 0; font-size: 0.9375rem; line-height: 1.45; }

    .rss-feed .blogcontent { display: -webkit-box; overflow: hidden; padding: 0.75rem 1.25rem 0; font-size: 0.9375rem; line-height: 1.6; -webkit-line-clamp: 5; -webkit-box-orient: vertical; max-height: 110px; height: 100%; }

    .rss-feed .readmore { width: 9.25rem; min-width: 9.25rem; height: 3rem; min-height: 3rem; margin-top: 1.5rem; margin-right: 1.5rem; margin-bottom: 0; margin-left: auto; padding: 0; font-size: 1rem; line-height: 1.0372; }
}

@media (min-width: 1440px) {
    .rss-feed { padding: 3.5rem 0 3.5rem; }

    .rss-feed__header { margin-bottom: 1.75rem; }

    .rss-feed__title { font-size: 2.5rem; line-height: 1.15; }

    .rss-feed .section { gap: 1.25rem; row-gap: 1.25rem !important; }

    .rss-feed article { height: 31.75rem; }

    .rss-feed article a { min-height: 31.75rem; padding-bottom: 1.25rem; }

    .rss-feed article img { height: 12.75rem; }

    .rss-feed .blogtitle { padding: 1.25rem 1.5rem 0; font-size: 1.625rem; line-height: 1.18; max-height: 80px; height: 100%; max-width: unset; }

    .rss-feed article strong { padding: 0.875rem 1.5rem 0; font-size: 1rem; line-height: 1.45; }

    .rss-feed .blogcontent { display: -webkit-box; overflow: hidden; padding: 0.75rem 1.5rem 0; font-size: 1rem; line-height: 1.6; -webkit-line-clamp: 5; -webkit-box-orient: vertical; max-height: 90px; height: 100%; }

    .rss-feed .readmore { width: 9.25rem; min-width: 9.25rem; height: 3rem; min-height: 3rem; margin-top: 1.5rem; margin-right: 1.5rem; margin-bottom: 0; margin-left: auto; padding: 0; font-size: 1rem; line-height: 1.0372; white-space: nowrap; }
}

body {
}

@keyframes shimmer {
  0% { background-position: -300px 0px; }
  100% { background-position: 300px 0px; }
}

@keyframes bouncing-loader {
  to { opacity: 0.1; transform: translate3d(0, -16px, 0); }
}

@keyframes bounce-in {
  0% {
    opacity: 0;
    transform: scale(.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% { transform: scale(.9); }
  100% { transform: scale(1); }
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
} 

@keyframes animloader {
  0% {
    box-shadow: -38px -12px ,  -14px 0,  14px 0, 38px 0;
  }
  33% {
    box-shadow: -38px 0px, -14px -12px,  14px 0, 38px 0;
  }
  66% {
    box-shadow: -38px 0px , -14px 0, 14px -12px, 38px 0;
  }
  100% {
    box-shadow: -38px 0 , -14px 0, 14px 0 , 38px -12px;
  }
}
@keyframes flash {
  0% {
    background-color: #f29393;
    box-shadow: 32px 0 #f29393, -32px 0 #e10a0a;
  }
  50% {
    background-color: #e10a0a;
    box-shadow: 32px 0 #f29393, -32px 0 #f29393;
  }
  100% {
    background-color: #f29393;
    box-shadow: 32px 0 #e10a0a, -32px 0 #f29393;
  }
}

@keyframes shadowPulse {
  33% {
    background: #FFF;
    box-shadow: -24px 0 #FF3D00, 24px 0 #FFF;
  }
  66% {
    background: #FF3D00;
    box-shadow: -24px 0 #FFF, 24px 0 #FFF;
  }
  100% {
    background: #FFF;
    box-shadow: -24px 0 #FFF, 24px 0 #FF3D00;
  }
}



*, *:before { -webkit-transition: transform .1s ease-in-out; -ms-transition: transform .1s ease-in-out; transition: margin .2s ease-in-out, background-color .1s linear, color .1s, transform .1s ease-in-out, max-height 0.3s ease-in-out, max-width 0.3s ease-in-out, opacity .2s ease-in-out, background-image 0.2s ease-in-out, box-shadow 0.2s, width 0.2s, filter 0.2s linear, visibility 0.2s ease-in-out, background-position-x 0.2s ease-in-out, background 0.2s ease-in-out , border 0.2s ease-in-out;}
.no-transition { transition: none !important; }
.lazy { opacity: 0; }
.scrollhide { transition: background-color .3s linear, color .3s, transform .5s ease-in-out, opacity .5s linear; }
.scrollhide.hidden { opacity: 0; }
.scrollhide.from-right.hidden { transform: translateX(50%); }
.scrollhide.from-left.hidden { transform: translateX(-50%); }
.scrollhide.from-below.hidden { transform: translateY(50%); }
.scrollhide.rotate-in.hidden { transform: translateY(50%) rotate(-60deg); transform-origin: bottom right; }
.scrollhide.from-left.hidden.subtle { transform: translateX(20%); }
.scrollhide.from-left.subtle { transition: background-color .3s linear, color .3s, transform .5s ease-in-out, opacity .5s linear; }

.fader-item, .fader-sibling-item {transition: none;}

.faq, .faq li { list-style: none; }
.faq { padding: 0px; }
.faq li.q {gap: 15px;  cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding: 15px; }
.faq li.a { background: #fff; display: none; padding: 10px;}

.faqs .faq { list-style: none; padding: 0px; margin: 0px 0px 10px; }
.faqs .faq .q { cursor: pointer;  display: flex;  justify-content: space-between;  border-bottom: 1px solid #707070;  align-items: center; }
.faqs .faq .a > * { padding: 30px 0px}

.faq .q i  {color: #E10A0A;}

ul.faq {margin: .5rem  0px; background: #fff; font-size: 1.14rem;   max-width: 335px; }
ul.faq span {  }

.faqs.compact {}
.faqs.compact .faq{margin: 0px; border-bottom: 1px solid #5A6D8F;}
.faqs.compact .faq .q{border-bottom: none;}

.pagefaqs .faq {background-color: #e6f7ff; max-width: 100%; margin: .5rem 0px;}
.pagefaqs .faq .q i {color: #043776;}
.pagefaqs .faq .q {font-size: 1.25em; font-weight: 700; padding: 20px;}
.pagefaqs .faq .a {background-color: transparent; padding: 20px;}

form.loading .submit-load {position: relative;}
form.loading .submit-load .btn {color: transparent !important;}
form .submit-load i{display: none; animation: rotation 1s linear infinite; width: 30px; height: 30px; border: 3px solid #fff; border-top: 3px solid transparent; border-radius: 100%; position: absolute;left: calc(50% - 15px); top: calc(50% - 15px); }
form.loading .submit-load i {display: block;}

.skel-load-bg { background-color: #f7f7f7; background-image: linear-gradient( to right, #f7f7f7 0%, #cdcdcd 45%, #f7f7f7 70%, #f7f7f7 100% ); background-size: 300px 300px; background-repeat: no-repeat; animation: shimmer 1.4s linear infinite; }

.bouncing-loader { display: flex; justify-content: center; padding-bottom: 8px; }

.bouncing-loader > div { width: 12px; height: 12px; margin: 0rem 0.2rem; background: #000; border-radius: 50%; animation: bouncing-loader 0.6s infinite alternate; }

.bouncing-loader > div:nth-child(2) { animation-delay: 0.2s; }

.bouncing-loader > div:nth-child(3) { animation-delay: 0.4s; }


.worm-loader { width: 12px; height: 12px; border-radius: 50%; display: block; margin: 15px auto; position: relative; color: #e10a0a; box-sizing: border-box; animation: animloader 1s linear infinite alternate; }
.k-rider-loader { transition: none; width: 16px; height: 16px; border-radius: 50%; background-color: #e10a0a; box-shadow: 32px 0 #e10a0a, -32px 0 #e10a0a; position: relative; animation: flash 0.5s ease-out infinite alternate; }
.elip-loader { width: 16px; height: 16px; border-radius: 50%; display: block; margin: 15px auto; position: relative; background: #FFF; box-shadow: -24px 0 #FFF, 24px 0 #FFF; box-sizing: border-box; animation: shadowPulse 2s linear infinite; }
.spin-loader { width: 48px; height: 48px; border: 5px solid #e10a0a; border-bottom-color: transparent; border-radius: 50%; display: inline-block; box-sizing: border-box; animation: rotation 1s linear infinite; }

      

.cmspageloader {transition: none;}
.cmspageloader .container { position: relative; }
.cmspageloader .container > div { position: absolute; left: 15px; top: 0px; }

.cmsactionloader {transition: none !important; position: fixed; font-size: 2em; display: flex; justify-content: center; align-items: center; top: 0px; right: 0px; width: 100vw; height: 100vh; background-color: #ffffffe0; z-index: 10; }
.cmsactionloader .text {text-align: center; font-weight: 700;}

.flip {transform: rotate(180deg);}

.account-loadable {opacity: 1; }
.account-loadable.hidden {opacity: 0;}
/* === faq-section.css === */

.faq-section { padding-block: 2.5rem 1.5rem; }
.faq-section__header { width: min(100%, 22.375rem); margin-bottom: 1rem; gap: 0.875rem; }
.faq-section__header .faq-section__rule,
.faq-section__header .section-heading__rule { width: 6.0625rem; height: 2px; min-height: 2px; background-color: #000; }
.faq-section__title { max-width: 17.75rem; font-size: 1.5625rem; line-height: 1.28; }
.faq-section__title-line { display: block; }
.faq-section__intro { max-width: 22.375rem; margin: 0; font-family: var(--font-body); font-size: 1rem; font-weight: 500; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); }
.faq-section__list { margin: 2rem 0 0; max-width: 22.375rem; }
.faq-section__item { margin: 0 !important; position: relative; border-bottom: 0; }
.faq-section__item:last-child { border-bottom: 0; }
.faq-section__item::after { content: ""; display: block; width: 100%; height: 1px; background-color: #000; }
.faq-section__item:last-child::after { display: none; }
.faq-section__question { width: 100%; margin: 0; padding: 0 0 1.5rem; border: 0 !important; border-bottom: 0 !important; appearance: none; background: transparent; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; text-align: left; cursor: pointer; outline: none; box-shadow: none; }
.faq-section .faqs .faq .q { border-bottom: 0 !important; }
.faq-section__question-text { flex: 1 1 auto; max-width: 18.875rem; font-family: var(--font-body); font-size: 1.25rem; font-weight: 400; line-height: 1.4; letter-spacing: -0.03em; color: var(--color-black); }
.faq-section__icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 1.1875rem; height: 0.625rem; margin-top: 0.125rem; color: var(--color-black); transition: transform var(--transition-base); }
.faq-section__icon svg { display: block; width: 100%; height: 100%; }
.faq-section__question:focus { outline: none; }
.faq-section__question:focus-visible { outline: 2px solid rgba(0, 0, 0, 0.4); outline-offset: 0.5rem; }
.faq-section__item.open .faq-section__icon { transform: rotate(180deg); }
.faq-section__answer { display: none; padding: 0 0 1.5rem; }
.faq-section__answer p { max-width: 58rem; margin: 0; font-family: var(--font-body); font-size: 1rem; font-weight: 400; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); }
/*.faq-section__item + .faq-section__item { padding-top: 1.5rem; }*/
.faq-section__cta { margin-top: 0.5rem; }
.faq-section__button { display: inline-flex; align-items: center; justify-content: center; min-width: 9.25rem; height: 3rem; min-height: 3rem; padding: 0; border: 1px solid rgba(0, 0, 0, 0.22); border-radius: 0.375rem; background-color: var(--color-black); font-family: "sarvatrik-latin-variable", var(--font-nav); font-size: 1rem; font-weight: 400; line-height: 1.0372; letter-spacing: 0; text-transform: none; color: var(--color-white); text-decoration: none; -webkit-font-smoothing: antialiased; text-rendering: geometricPrecision; transition: background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast); }
.faq-section__button:hover,
.faq-section__button:focus-visible { background-color: transparent; color: var(--color-black); border-color: var(--color-black); }

@media (max-width: 767px) {
    .faq-section { padding-block: 2.5rem; border-bottom: 1px solid var(--color-black); }
    .faq-section__title { max-width: 100%; }
    .faq-section__title-line br { display: none; }
    .faq-section__header { margin-bottom: 0.75rem; width: unset; }
    .faq-section__intro { max-width: 100%; }
    .faq-section__list { max-width: 100%; }
    .faq-section__question-text { font-size: 1.125rem; max-width: 100%; }
}

@media (min-width: 768px) {
    .faq-section { padding-block: 3.5rem 4.5rem; }
    .faq-section__header { width: min(100%, 50.8125rem); }
    .faq-section__rule { width: 13.8125rem; }
    .faq-section__title { max-width: none; font-size: 2.25rem; line-height: 1.1136; }
    .faq-section__title-line { display: block; }
    .faq-section__intro { max-width: 54rem; font-size: 1.125rem; line-height: 1.4444; }
    .faq-section__list { max-width: 100%; }
    .faq-section__question { gap: 1.5rem; }
    .faq-section__question-text { max-width: none; font-size: 1.375rem; line-height: 1.6; }
    .faq-section__answer p { font-size: 1.0625rem; line-height: 1.5556; }
    .faq-section__cta { margin-top: 2.5rem; }
    .faq-section__button { min-width: 11.3125rem; min-height: 3.75rem; padding: 1.34375rem 2rem 1.28125rem; font-size: 1.125rem; line-height: 0.922; }
}

@media (max-width: 991px) {
    .faq-section__question { padding: 1.5rem 0; }
}

@media (min-width: 992px) {
    .faq-section { padding-block: 6rem 5.125rem; }
    .faq-section__title { font-size: 2.75rem; }
    .faq-section__intro { margin: 0 0 5rem; font-size: 1.375rem; line-height: 1.2727; }
    .faq-section__list { max-width: 93.0625rem; }
    .faq-section__question { padding-bottom: 1.75rem; }
    .faq-section__question-text { font-size: 1.5rem; line-height: 1.8333; }
    .faq-section__answer { padding-bottom: 1.75rem; }
    .faq-section__answer p { font-size: 1.125rem; }
    .faq-section__cta { margin-top: 3.9375rem; }
    .faq-section .faqs .faq .q { padding: 2.375rem 0; }
}

/* === nav.css === */
/* Site header navigation */

.site-header { z-index: var(--z-sticky); background-color: var(--color-white); border-bottom: none; }

body.standard-page #content { padding-top: 1rem; }

.site-header__wrap { width: 100%; padding: 1.375rem 1rem 1.40625rem; }

.site-header__inner { width: 100%; max-width: 111.4375rem; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }

.site-header__logo { display: flex; align-items: center; flex-shrink: 0; text-decoration: none; }

.site-header__logo-img { display: block; width: 17.1875rem; max-width: calc(100vw - 5.5rem); height: auto; }

.site-header__mobile-controls { display: flex; align-items: center; gap: 0; flex: 0 0 auto; }

.site-header__phone-icon { display: none; align-items: center; }

.site-header__phone-icon a { display: flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem; color: var(--color-black); text-decoration: none; font-size: 0; }

.site-header__phone-icon a::before { content: "\f095"; font-family: "FontAwesome", sans-serif; font-size: 1.125rem; color: var(--color-black); }

.site-header__burger { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 0.34375rem; width: 1.4375rem; height: 1.078125rem; padding: 0; background: none; border: none; cursor: pointer; flex: 0 0 auto; }

.site-header__burger-line { display: block; width: 1.4375rem; height: 0.09375rem; background-color: var(--color-black); border-radius: 1px; transition: transform var(--transition-base), opacity var(--transition-fast); }

.site-header__burger.on .site-header__burger-line:nth-child(1) { transform: translateY(0.4375rem) rotate(45deg); }

.site-header__burger.on .site-header__burger-line:nth-child(2) { opacity: 0; }

.site-header__burger.on .site-header__burger-line:nth-child(3) { transform: translateY(-0.4375rem) rotate(-45deg); }

.site-header__nav { position: fixed; inset: 0; width: 100%; height: 100dvh; padding: 0; background-color: var(--color-white); overflow-y: auto; overflow-x: hidden; transform: translateX(100%); transition: transform var(--transition-slow); z-index: var(--z-overlay); display: flex; flex-direction: column; }

#menu-links.open ~ .site-header__actions,
.site-header__nav:has(#menu-links.open) { transform: translateX(0); }

body.mob-nav-open { overflow: hidden; }

body.mob-nav-scroll-lock { position: fixed; left: 0; right: 0; width: 100%; overflow: hidden; }

body.mob-nav-open .site-header__nav { transform: translateX(0); }

.site-header__menu { display: flex; flex-direction: column; gap: 0; list-style: none; margin: 0; padding: 0 1.25rem; flex: 0 0 auto; }

.site-header__item { border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.site-header__link { display: flex; align-items: center; gap: 0.625rem; width: 100%; padding: 1rem 0; font-family: var(--font-nav); font-size: 1rem; font-weight: 400; line-height: 1.2; color: var(--color-black); text-decoration: none; background: none; border: none; cursor: pointer; text-align: left; transition: opacity var(--transition-fast), color var(--transition-fast); }

.site-header__link:hover,
.site-header__dropdown-link:hover { opacity: 0.7; }

.site-header__link--active { color: var(--color-black); }

.site-header__link--desktop-trigger { display: none; }

.site-header__link--mobile-trigger { display: flex; }

.site-header__chevron { display: inline-block; width: 0.5625rem; height: 0.3125rem; flex-shrink: 0; transition: transform var(--transition-base); }

.site-header__item--has-dropdown .site-header__link[aria-expanded="true"] .site-header__chevron { transform: rotate(180deg); }

.site-header__dropdown { display: none; padding-bottom: 0.5rem; }

.site-header__item--has-dropdown .site-header__link[aria-expanded="true"] + .site-header__dropdown { display: block; }

.site-header__dropdown-list { display: flex; flex-direction: column; gap: 0; list-style: none; margin: 0; padding: 0 0 0 1rem; }

.site-header__dropdown-link { display: block; padding: 0.5rem 0; font-family: var(--font-nav); font-size: 0.9375rem; font-weight: 400; line-height: 1.3; color: var(--color-text-dark); text-decoration: none; transition: opacity var(--transition-fast), color var(--transition-fast); }

.site-header__dropdown-item--condensed { display: none; }

.site-header__actions { display: flex; flex-direction: column; gap: 0.75rem; padding: 1.5rem 1.25rem; margin-top: auto; }

.site-header__overflow-actions { display: none; }

.site-header__cta { display: inline-flex; align-items: center; justify-content: center; min-height: 3.0625rem; padding: 0.5625rem 2rem; font-family: var(--font-nav); font-size: 1rem; font-weight: 400; line-height: 1; text-decoration: none; border-radius: 0.375rem; transition: background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), opacity var(--transition-fast); cursor: pointer; white-space: nowrap; }

.site-header__cta:hover { opacity: 0.86; }

.site-header__cta--outline { color: var(--color-black); background-color: transparent; border: 1px solid var(--color-black); }

.site-header__cta--filled { color: var(--color-white); background-color: var(--color-black); border: 1px solid var(--color-black); }

/* ----- Mega-dropdown: hidden by default (shown only at desktop) ----- */
.site-header__mega-dropdown { display: none; }

/* Hide desktop hover dropdowns while the page is actively scrolling. */
.site-header.site-header--scrolling .site-header__dropdown,
.site-header.site-header--scrolling .site-header__mega-dropdown {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

/* ----- Mobile nav panel header (logo + close button) ----- */
.site-header__nav-header { display: flex; align-items: center; justify-content: space-between; padding: 1.1875rem 1.25rem; background-color: var(--color-white); border-bottom: 1px solid rgba(0, 0, 0, 0.1); flex-shrink: 0; position: sticky; top: 0; z-index: 1; }

.site-header__nav-logo-link { display: flex; align-items: center; flex-shrink: 0; text-decoration: none; }

.site-header__nav-logo-img { display: block; width: 17.1875rem; max-width: calc(100vw - 5.5rem); height: auto; }

.site-header__nav-close { position: relative; display: flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; background: none; border: none; cursor: pointer; padding: 0; flex-shrink: 0; transition: opacity var(--transition-fast); }

.site-header__nav-close:hover { opacity: 0.65; }

.site-header__nav-close-icon { position: relative; display: block; width: 1.125rem; height: 1.125rem; }

.site-header__nav-close-icon::before,
.site-header__nav-close-icon::after { content: ''; position: absolute; top: 50%; left: 0; width: 100%; height: 1.5px; background: var(--color-black); border-radius: 1px; }

.site-header__nav-close-icon::before { transform: translateY(-50%) rotate(45deg); }

.site-header__nav-close-icon::after { transform: translateY(-50%) rotate(-45deg); }

/* ----- Mobile nav backdrop overlay ----- */
.site-header__overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.5); z-index: calc(var(--z-overlay) - 50); opacity: 0; visibility: hidden; transition: opacity var(--transition-slow), visibility var(--transition-slow); cursor: pointer; }

body.mob-nav-open .site-header__overlay { opacity: 1; visibility: visible; }

@media (max-width: 767px) {
    body.standard-page #content { padding-top: 0; }
}

@media (min-width: 768px) {
    body.standard-page #content { padding-top: 1.25rem; }

    .site-header__wrap { padding: 0.8125rem 2rem; }

    .site-header__logo-img { height: 2.625rem; }

    /* Partial-width drawer slides in from the right */
    .site-header__nav { width: 26rem; left: auto; box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12); }

    .site-header__nav-header { padding: 1.25rem 1.5rem; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .site-header__wrap { padding-top: 1rem; padding-bottom: 1rem; }

    .site-header__inner { min-height: 3.25rem; }

    .site-header__logo-img { height: 2.875rem; }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .site-header__wrap { padding: 1.25rem 1.5rem; }

    .site-header__inner { min-height: 3.5rem; gap: 1rem; }

    .site-header__logo-img { width: 20rem; height: auto; max-width: calc(100vw - 22rem); }

    /* Show overflow CTAs in the header bar (nav panel now holds the primary CTAs) */
    .site-header__overflow-actions { display: flex; order: 2; margin-left: auto; gap: 0.75rem; align-items: center; }

    .site-header__mobile-controls { display: flex; order: 3; margin-left: 0; }

    /* Nav is a fixed sliding drawer at this breakpoint — same architecture as mobile */
    .site-header__nav { display: flex; width: 28rem; left: auto; }

    /* Menu is a static column inside the nav drawer — no longer a fixed panel itself */
    .site-header__menu { position: static; inset: auto; width: auto; height: auto; padding: 0 1.5rem; background-color: transparent; overflow: visible; transform: none; transition: none; z-index: auto; margin: 0; flex-direction: column; align-items: stretch; gap: 0; flex: 1; }

    body.mob-nav-open .site-header__menu { transform: none; }

    .site-header__item { border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

    .site-header__link { width: 100%; padding: 1rem 0; white-space: normal; flex-wrap: nowrap; }

    .site-header__dropdown { display: none; position: static; transform: none; min-width: 0; padding: 0 0 0.5rem; border: 0; border-radius: 0; box-shadow: none; opacity: 1; visibility: visible; background-color: transparent; }

    .site-header__item--has-dropdown .site-header__link[aria-expanded="true"] + .site-header__dropdown { display: block; }

    .site-header__dropdown-list { padding: 0 0 0 1rem; }

    .site-header__dropdown-link { padding: 0.5rem 0; font-size: 0.9375rem; white-space: normal; }

    .site-header__actions { flex-direction: row; gap: 0.75rem; padding: 1.25rem 1.5rem 0; flex: 0 0 auto; align-items: center; }

    .site-header__cta { width: auto; min-width: 0; height: 2.875rem; min-height: 2.875rem; padding: 0.5rem 1.125rem; font-size: 0.9375rem; line-height: 1; }

    /* Mega-dropdown hidden at this breakpoint */
    .site-header__mega-dropdown { display: none; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    body.standard-page #content { padding-top: 1.5rem; }

    .site-header { min-height: 6.125rem; }

    .site-header__wrap { padding: 1.25rem 2rem; }

    .site-header__inner { min-height: 3.0625rem; gap: 1.25rem; }

    .site-header__logo-img { width: 20rem; height: auto; }

    .site-header__mobile-controls { display: none; }

    .site-header__nav-header { display: none; }

    .site-header__overlay { display: none; }

    .site-header__nav { position: static; inset: auto; flex: 1 1 auto; width: auto; height: auto; padding: 0; background-color: transparent; overflow: visible; transform: none; transition: none; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 1.5rem; min-width: 0; align-self: center; box-shadow: none; }

    .site-header__menu { flex-direction: row; align-items: center; justify-content: end; gap: 1.5rem; flex: 1 1 auto; min-width: 0; padding: 0; }

    .site-header__item { position: relative; border-bottom: none; flex: 0 0 auto; }

    .site-header__link { width: auto; padding: 0; min-height: 3rem; font-size: 0.9375rem; white-space: nowrap; flex-wrap: nowrap; }

    .site-header__link--desktop-trigger { display: flex; }

    .site-header__link--mobile-trigger { display: none; }

    /* Regular dropdown (for non-mega items like Other Services) */
    .site-header__dropdown { display: block; position: absolute; top: calc(100% + 1rem); left: 50%; transform: translateX(-50%); min-width: 14rem; padding: 0.75rem 0; background-color: var(--color-white); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 0.375rem; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08); opacity: 0; visibility: hidden; transition: opacity var(--transition-base), visibility var(--transition-base); z-index: var(--z-dropdown); }

    .site-header__item--has-dropdown:hover .site-header__dropdown,
    .site-header__item--has-dropdown:focus-within .site-header__dropdown { opacity: 1; visibility: visible; }

    .site-header__item--has-dropdown:hover .site-header__chevron { transform: rotate(180deg); }

    .site-header__item--has-dropdown:not(.site-header__item--has-mega) .site-header__link[aria-expanded="true"] + .site-header__dropdown { display: block; }

    .site-header__cta { width: auto; min-width: 9.5rem; height: 3rem; min-height: 3rem; padding: 0.625rem 1.375rem; font-size: 0.9375rem; }

    .site-header__actions { display: flex; flex-direction: row; gap: 0.75rem; padding: 0; margin-top: 0; flex: 0 0 auto; }

    .site-header__overflow-actions { display: none; }

    /* ----- Mega-dropdown: hide mobile list, show image cards ----- */
    .site-header__item--has-mega .site-header__dropdown--mobile-only { display: none; }

    .site-header__mega-dropdown { display: block; position: fixed; top: 6.125rem; left: 0; width: 100%; background-color: var(--color-white); opacity: 0; visibility: hidden; transition: opacity var(--transition-base), visibility var(--transition-base); z-index: var(--z-dropdown); padding: 1.375rem 2rem 1.75rem; }

    .site-header__item--has-mega:hover .site-header__mega-dropdown,
    .site-header__item--has-mega:focus-within .site-header__mega-dropdown { opacity: 1; visibility: visible; }

    .site-header__mega-inner { display: flex; gap: 1.0625rem; max-width: 111.4375rem; margin: 0 auto; }

    .site-header__mega-card { display: flex; flex-direction: column; gap: 0.75rem; flex: 1 1 0%; min-width: 0; text-decoration: none; color: var(--color-black); transition: opacity var(--transition-fast); }

    .site-header__mega-card:hover { opacity: 0.8; }

    .site-header__mega-card-img { display: block; width: 100%; aspect-ratio: 5 / 8; object-fit: cover; border-radius: 0; }

    .site-header__mega-card-label { display: flex; align-items: center; gap: 0.625rem; font-family: var(--font-nav); font-size: 1rem; font-weight: 400; line-height: 1; color: var(--color-black); white-space: nowrap; }

    .site-header__mega-card-arrow { display: inline-block; width: 0.625rem; height: 1rem; flex-shrink: 0; color: var(--color-black); }
}

@media (min-width: 1440px) {
    body.standard-page #content { padding-top: 1.5rem; }

    .site-header { min-height: 6.5rem; }

    .site-header__mobile-controls { display: none; }

    .site-header__nav-header { display: none; }

    .site-header__overlay { display: none; }

    .site-header__wrap { padding: 1.71875rem 4.28125rem; }

    .site-header__inner { max-width: 111.4375rem; min-height: 3.0625rem; gap: clamp(1.5rem, 3vw, 3rem); }

    .site-header__logo { flex: 0 0 auto; }

    .site-header__logo-img { width: 22rem; height: auto; }

    .site-header__nav { position: static; inset: auto; flex: 1 1 auto; width: auto; max-width: none; height: auto; padding: 0; background-color: transparent; overflow: visible; transform: none; transition: none; flex-direction: row; align-items: center; justify-content: space-between; gap: 1.5rem; min-width: 0; box-shadow: none; }

    .site-header__menu { flex-direction: row; align-items: center; justify-content: end; gap: 1.5rem; flex: 1 1 auto; min-width: 0; padding: 0; }

    .site-header__item { position: relative; border-bottom: none; flex: 0 0 auto; }

    .site-header__link { width: auto; padding: 0; min-height: 3rem; white-space: nowrap; flex-wrap: nowrap; }

    .site-header__link--desktop-trigger { display: flex; }

    .site-header__link--mobile-trigger { display: none; }

    /* Regular dropdown (for non-mega items like Other Services) */
    .site-header__dropdown { display: block; position: absolute; top: calc(100% + 1rem); left: 50%; transform: translateX(-50%); min-width: 14rem; padding: 0.75rem 0; background-color: var(--color-white); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 0.375rem; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08); opacity: 0; visibility: hidden; transition: opacity var(--transition-base), visibility var(--transition-base); z-index: var(--z-dropdown); }

    .site-header__item--has-dropdown:hover .site-header__dropdown,
    .site-header__item--has-dropdown:focus-within .site-header__dropdown { opacity: 1; visibility: visible; }

    .site-header__item--has-dropdown:hover .site-header__chevron { transform: rotate(180deg); }

    .site-header__item--has-dropdown:not(.site-header__item--has-mega) .site-header__link[aria-expanded="true"] + .site-header__dropdown { display: block; }

    .site-header__dropdown-list { padding: 0; }

    .site-header__dropdown-link { padding: 0.5rem 1.25rem; font-size: 1rem; white-space: nowrap; }

    .site-header__actions { display: flex; flex-direction: row; gap: 0.75rem; margin-top: 0; padding: 0; flex: 0 0 auto; }

    .site-header__overflow-actions { display: none; }

    .site-header__cta { width: 11.0625rem; min-width: 11.0625rem; height: 3.0625rem; padding: 0.5625rem 2rem; border-radius: 0.375rem; }

    /* ----- Mega-dropdown: hide mobile list, show image cards ----- */
    .site-header__item--has-mega .site-header__dropdown--mobile-only { display: none; }

    .site-header__mega-dropdown { display: block; position: fixed; top: 6.5rem; left: 0; width: 100%; background-color: var(--color-white); opacity: 0; visibility: hidden; transition: opacity var(--transition-base), visibility var(--transition-base); z-index: var(--z-dropdown); padding: 1.375rem 4.28125rem 1.75rem; }

    .site-header__item--has-mega:hover .site-header__mega-dropdown,
    .site-header__item--has-mega:focus-within .site-header__mega-dropdown { opacity: 1; visibility: visible; }

    .site-header__mega-inner { display: flex; gap: 1.0625rem; max-width: 111.4375rem; margin: 0 auto; }

    .site-header__mega-card { display: flex; flex-direction: column; gap: 0.75rem; flex: 1 1 0%; min-width: 0; text-decoration: none; color: var(--color-black); transition: opacity var(--transition-fast); }

    .site-header__mega-card:hover { opacity: 0.8; }

    .site-header__mega-card-img { display: block; width: 100%; aspect-ratio: 5 / 8; object-fit: cover; border-radius: 0; }

    .site-header__mega-card-label { display: flex; align-items: center; gap: 0.625rem; font-family: var(--font-nav); font-size: var(--text-body-lg); font-weight: 400; line-height: 1; color: var(--color-black); white-space: nowrap; }

    .site-header__mega-card-arrow { display: inline-block; width: 0.625rem; height: 1rem; flex-shrink: 0; color: var(--color-black); }
}

@media (min-width: 1440px) and (max-width: 1919px) {
    .site-header__actions { display: flex; }

    .site-header__item--condensed-desktop { display: none; }

    .site-header__dropdown-item--condensed { display: list-item; }
}

@media (min-width: 992px) and (max-width: 1439px) {
    .site-header__item--condensed-desktop { display: none; }

    .site-header__dropdown-item--condensed { display: list-item; }
}

@media (min-width: 1920px) {
    .site-header__actions { display: flex; }
}


/* === footer.css === */

.site-footer { background-color: var(--color-white); color: var(--color-black); }
.site-footer > .container { margin-bottom: 120px; margin-top: 75px; }
.site-footer__wrap { width: 100%; max-width: 119.5rem; margin: 0 auto; padding: 1.5rem 1rem 2.5rem; }

.site-footer__main { display: grid; gap: 1.5rem; }

.site-footer__address-block,
.site-footer__contact { min-width: 0; }

.site-footer__company { display: block; font-family: var(--font-body); font-size: 1rem; font-weight: 600; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); }

.site-footer__location { display: block; margin-top: 0; font-family: var(--font-body); font-size: 1rem; font-weight: 400; font-style: normal; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); }

.site-footer__contact { display: flex; flex-direction: column; gap: 0.25rem; }

.site-footer__contact-row { display: flex; align-items: flex-start; gap: 0.125rem; flex-wrap: wrap; }

.site-footer__label { font-family: var(--font-body); font-size: 1rem; font-weight: 700; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); white-space: nowrap; }

.site-footer__link { font-family: var(--font-body); font-size: 1rem; font-weight: 400; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.12em; transition: color var(--transition-fast); }

.site-footer__link:hover { color: var(--color-primary); }

.site-footer__nav { min-width: 0; }

.site-footer__nav-list { display: grid; grid-template-columns: auto auto; justify-content: start; column-gap: 2rem; row-gap: 0.5rem; list-style: none; margin: 0; padding: 0; }

.site-footer__nav-col { display: contents; }

.site-footer__nav-link { font-family: var(--font-body); font-size: 1rem; font-weight: 600; line-height: 2; letter-spacing: -0.03em; color: var(--color-black); text-decoration: none; white-space: nowrap; transition: color var(--transition-fast); }

.site-footer__nav-link:hover { color: var(--color-primary); }

.site-footer__bottom { display: flex; flex-direction: column; gap: 0.75rem; padding-top: 2rem; }

.site-footer__copyright,
.site-footer__credit { font-family: var(--font-body); font-size: 0.875rem; font-weight: 600; line-height: 1.625; letter-spacing: -0.03em; color: var(--color-black); }

.site-footer__credit-link { color: var(--color-black); text-decoration: none; transition: color var(--transition-fast); }

.site-footer__credit-link:hover { color: var(--color-primary); }

.site-footer__bottom { display: none; }

@media (min-width: 640px) {
    .site-footer__wrap { padding: 3.5rem 2.5rem 2.75rem; }

    .site-footer__main { grid-template-columns: minmax(0, 15rem) minmax(0, 19rem); align-items: start; column-gap: 3rem; row-gap: 2.5rem; }

    .site-footer__company { font-size: 1.125rem; line-height: 1.7778; }

    .site-footer__location,
    .site-footer__label,
    .site-footer__link,
    .site-footer__nav-link { font-size: 1.125rem; line-height: 1.7778; }

    .site-footer__nav-list { grid-template-columns: repeat(5, auto); justify-content: start; gap: 1rem 2.5rem; }

    .site-footer__nav-col { display: flex; flex-direction: column; gap: 1rem; }

    .site-footer__bottom { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-start; gap: 2rem; }

    .site-footer__copyright,
    .site-footer__credit { font-size: 1.125rem; line-height: 1.7778; }

    .site-footer__credit { text-align: right; }
}

@media (min-width: 640px) and (max-width: 991px) {
    .site-footer__wrap { padding: 2.25rem 1.5rem 2.25rem; }

    .site-footer__main { grid-template-columns: 14rem 16rem; justify-content: center; align-items: center; column-gap: 2.25rem; row-gap: 1.5rem; }

    .site-footer__address-block,
    .site-footer__contact { width: 100%; }

    .site-footer__contact { align-self: center; }

    .site-footer__contact-row { flex-wrap: nowrap; }

    .site-footer__link { white-space: nowrap; }

    .site-footer__nav { grid-column: 1 / -1; }

    .site-footer__nav-list { grid-template-columns: repeat(5, auto); justify-content: center; column-gap: 2.5rem; row-gap: 0.75rem; }

    .site-footer__nav-link { text-align: center; }

    .site-footer__bottom { flex-direction: column; align-items: center; gap: 0.25rem; padding-top: 1.5rem; }

    .site-footer__copyright,
    .site-footer__credit { max-width: none; text-align: center; }

    .site-footer__credit { text-align: center; }
}

@media (min-width: 992px) {
    .site-footer__wrap { padding: 4.6875rem 7.625rem 2.8125rem; }

    .site-footer__main { grid-template-columns: 11.875rem 17.8125rem 1fr; column-gap: 5.75rem; row-gap: 0; align-items: start; }

    .site-footer__nav { justify-self: end; width: 100%; max-width: 33.5625rem; }

    .site-footer__nav-list { grid-template-columns: repeat(5, auto); justify-content: end; gap: 1rem 3.25rem; }

    .site-footer__bottom { justify-content: space-between; align-items: center; padding-top: 6.875rem; }

    .site-footer__copyright { max-width: 27.25rem; }

    .site-footer__credit { max-width: 27.25rem; text-align: right; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .site-footer__wrap { max-width: 100%; padding: 2.5rem 1rem 2.5rem; }

    .site-footer__main { grid-template-columns: 13rem 17rem minmax(0, 1fr); column-gap: 2.5rem; row-gap: 0; }

    .site-footer__nav { justify-self: stretch; max-width: none; }

    .site-footer__nav-list { justify-content: start; gap: 0.75rem 2rem; }

    .site-footer__bottom { flex-direction: column; align-items: center; gap: 0.25rem; padding-top: 1.5rem; }

    .site-footer__copyright,
    .site-footer__credit { max-width: none; text-align: center; }

    .site-footer__credit { text-align: center; }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .site-footer__wrap { max-width: 1032px; padding: 2.5rem 1.5rem 2.5rem; }

    .site-footer__main { grid-template-columns: 18rem 20rem; justify-content: center; align-items: start; column-gap: 4rem; row-gap: 2rem; }

    .site-footer__address-block,
    .site-footer__contact { width: 100%; }

    .site-footer__contact { align-self: center; }

    .site-footer__contact-row { flex-wrap: nowrap; }

    .site-footer__link { white-space: nowrap; }

    .site-footer__nav { grid-column: 1 / -1; justify-self: stretch; width: 100%; max-width: none; }

    .site-footer__nav-list { grid-template-columns: repeat(5, auto); justify-content: center; gap: 0.75rem 3rem; }

    .site-footer__nav-link { text-align: center; }

    .site-footer__bottom { flex-direction: column; align-items: center; gap: 0.25rem; padding-top: 1.5rem; }

    .site-footer__copyright,
    .site-footer__credit { max-width: none; text-align: center; }

    .site-footer__credit { text-align: center; }
}

@media (max-width: 767px) {
    .site-footer__nav-link { line-height: 1.5; }
}

@media (max-width: 991px) {
    .site-footer > .container { margin-bottom: 48px; margin-top: 35px; }
}


.editor-label { padding: 10px 0px; display: flex; font-weight: 400; font-size: 1.3em;  color: #fff;}
.editor-field input { min-height: 50px; width: 100%; border: 1px solid #1d185d; border-radius: 6px; padding: 0px 15px; font-size: 1.1em; background-color: #fff;  }
.editor-field input.input-validation-error { border: 2px solid #e10a0a; }
.editor-field select { min-height: 50px; width: 100%;     background-color: var(--white);
    color: #000; border-radius: 6px; padding: 0px 15px; font-size: 1.1em; background-color: #fff;}

.editor-field input[type="file"] { border: none; padding: 0px; min-height: auto; }
.editor-field input[type="checkbox"] {width: auto;}
.editor-field textarea { text-wrap: auto; min-height: 165px; width: 100%; border: 1px solid #1d185d;  border-radius: 6px; padding: 15px; font-size: 1.1em; background-color: #fff;  }
.cke_source{border-radius: 0px !important; padding: 0px !important; border: none !important;}


.editor-field input.btn { font-size: 1.3em; }



.editor-field.sml select { min-height: 40px; }

.editor-field.sml input { min-height: 40px; }

.editor-field { position: relative; }
.editor-field .forgot { cursor: pointer; color: #000000; position: absolute; top: 0px; right: 0px; width: 50px; height: 50px; display: flex; justify-content: center; align-items: center; }
.editor-field .forgot:hover { color: #e10a0a; }
.editor-field .field-validation-error { font-weight: 500; padding: 0px; background-color: transparent; display: block; color: #e10a0a; border: none; box-shadow: none; padding-top: 5px; margin: 0px; }

.editor-field .date { position: relative; max-width: 490px; display: block; }
.editor-field .date i { border-right: 1px solid #061931; padding: 4px 15px; font-size: 1.4rem; color: #e10a0a; position: absolute; font-weight: 500; left: 0px; top: 50%; transform: translateY(-50%); }
.editor-field .date input { padding-left: 60px; font-size: 1.3rem; height: 55px; cursor: pointer; }
.editor-field .date input::placeholder { color: #061931; }

.editor-field .date:hover i { color: #000000; }

.cms .editor-field input:not([type=submit]) { background-color: var(--white); color: #000; }

.img-controls { background-color: #f5f5f5; }
.img-controls .preview-img { border: 1px solid #dbdbdb; padding: 15px; border-radius: 3px; }
.img-controls .preview-img img { margin: 0 auto; }
.img-upload input { display: block; left: 0px; top: 0px; width: 100%; height: 100%; opacity: 0; z-index: 100000; position: absolute; }

.img-upload { height: 150px; border: 2px dashed #dbdbdb; position: relative; border-radius: 3px; margin-bottom: 15px; cursor: pointer; display: block; }
.img-upload:hover { background-color: #f1f1f1; }
.img-upload span { text-align: center; font-size: 1.1em; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: block; color: #999; }
.img-upload span i { display: block; color: #999 !important; }
.img-upload.sml { height: auto; padding: 15px; }
.img-upload.sml .drop-txt { width: 100%; align-items: center; align-content: center; }
.img-upload.sml span { position: static; transform: none; }
.img-upload.sml .drop-txt > span { margin-top: 15px; }

.editor-field.submit { display: flex; justify-content: space-between; gap: 30px; margin-top: 2rem; }
.editor-field.submit input { font-size: 1.1em; cursor: pointer; display: flex; justify-content: center; align-items: center; font-weight: 600; min-height: 49px; padding: .5rem 1.5rem; border-radius: 50px; text-decoration: none; border: 0; width: 100%; gap: 10px; position: relative; background-color: #07B85A; }
.editor-field.submit input.green { background-color: #79b473; }
.editor-field.submit .btn, .editor-field.submit input { max-width: 200px; min-width: 200px; }
.editor-field.submit .toright.btn { background-color: #000000; color: var(--white); }
.editor-field.submit .clear { display: none; }

.validation-summary-valid ul { margin: 0px; padding-left: 15px; }

.validation-summary-errors { background-color: #fce9e9; border-bottom: 2px solid #e10a0a; box-shadow: 0 3px 6px #00000029; width: fit-content; padding: 15px 15px; font-weight: 700; font-size: 1.2em; margin-bottom: 15px; }
.validation-summary-errors ul { padding: 0px; margin: 0px; list-style: none; color: #e10a0a; }

.field-validation-error, .KO, .ko { display: block; background-color: #fce9e9; border-bottom: 2px solid #e10a0a; box-shadow: 0 3px 6px #00000029; width: fit-content; padding: 15px 15px; font-weight: 700; font-size: 1.2em; margin-bottom: 15px; }
.OK, .ok { display: block; color: var(--white); background-color: #28b714; width: fit-content; padding: 15px 15px; font-weight: 700; font-size: 1.3em; margin-bottom: 15px; }
.toast { transition: none; }
.toast .ok, .toast .OK, toast .ko, .toast .KO { border-radius: 10px; gap: 15px; align-items: center; border: 1px solid #000000; color: #061931; background-color: var(--white); position: fixed; bottom: 2rem; right: 2rem; display: flex; z-index: 99; }
.toast i { max-width: 30px; }
.toast .ok .ico, .toast .OK .ico { background-color: #28b714; width: 30px; height: 30px; position: relative; display: flex; justify-content: center; align-items: center; aspect-ratio: 1; padding: 10px; border-radius: 100%; }
.toast .ok .ico i, .toast .OK .ico i { display: block; }
.toast .ko .ico, .toast .KO .ico { background-color: #e10a0a; width: 30px; height: 30px; position: relative; display: flex; justify-content: center; align-items: center; aspect-ratio: 1; padding: 10px; border-radius: 100%; }
.toast .ko .ico i, .toast .KO .ico i { display: block; width: 100%; aspect-ratio: 1; }
.toast .ko .ico.info, .toast .KO .ico.info { background-color: #000000; }

.field-validation-error ul { padding-left: 5px; }


#applicationform input:not([type=submit]),
#applicationform select { background-color: var(--white); border: 1px solid var(--white); height: 66px; color: var(--black); }

#applicationform input[type=date] { font-family: Arial; }
#applicationform input[type=radio],
#applicationform input[type=checkbox] { width: 45px; height: 45px; border-radius: 7px; min-height: unset; }

#applicationform input[type=checkbox] { flex-shrink: 0; }
#applicationform input[type=checkbox] + label { font-size: var(--font-22); }

#applicationform input[type=radio] + span { font-size: var(--font-24); }

.contact-form {background-color: #1d185d; border-radius: 10px; max-width: 1320px; margin: 0 auto; border: 1px solid #1d185d; overflow: hidden; }

.contact-form .top{padding: 100px 130px;}
.contact-form .btm{padding: 30px 130px 60px; background-color: #fff;}

.radio-opt {font-size: 1.3rem; color: #1d185d; margin-bottom: 15px; display: flex; align-items: center; gap: 10px; cursor: pointer;}
.radio-opt input {margin: 0px;}
.check-opt {font-size: 1.3rem; color: #1d185d; margin-bottom: 15px; display: flex; align-items: center; gap: 10px; cursor: pointer;}
.check-opt input {margin: 0px;}

.bookcallform { background: #FFF; background: linear-gradient(90deg, rgba(255, 255, 255, 1) 50%, rgba(29, 24, 93, 1) 50%); position: fixed; bottom: 0px; left: 0px; z-index: 99; width: 100%;}
.bookcallform .slide-inner {height: 100vh; overflow: auto; }
.bookcallform .left {padding-right: 30px; display: flex; align-items: center; padding-top: 30px; padding-bottom: 30px; min-height: 100vh;}
.bookcallform .left > div {width: 100%;}
.bookcallform .right {padding-left: 80px; padding-bottom: 30px; display: flex; align-items: center; padding-top: 30px; padding-bottom: 30px; min-height: 100vh; position: relative;}
.bookcallform .right .call-close {position: absolute; right: 0px; top: 80px; color: #fff; font-size: 1.6rem; text-decoration: underline; display: flex; align-items:center; gap: 15px; cursor: pointer;}
.bookcallform .right .call-close .close-x {position: relative; width: 25px; height: 25px; transform: rotate(45deg);}
.bookcallform .right .call-close .close-x:before {content: ""; width: 3px; height: 100%; background-color: #fff; display: flex; border-radius: 3px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.bookcallform .right .call-close .close-x:after {content: ""; width: 100%; height: 3px; background-color: #fff; display: flex; border-radius: 3px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.bookcallform .right .call-close:hover {text-decoration: none;}
.datepicker .table-condensed{width: 100%;}
.datepicker {border-bottom: 1px solid #1d185d; padding-bottom: 10px;}
.datepicker .day {}
.datepicker .day.disabled, .datepicker .day.new {opacity: 0.6; background-color: transparent !important; }
.datepicker table {display: flex; flex-direction: column; gap: 10px;}
.datepicker table tbody, .datepicker table thead{display: flex; width:100%; flex-direction:column; gap: 10px;}
.datepicker table thead tr {padding-top: 10px;}
.datepicker table tr {display: flex; gap: 10px;}
.datepicker table tr td {flex: 1;  text-align: center; color: #100C3E; font-weight: 700; aspect-ratio: 1; display: flex; align-items: center; justify-content: center;}
.datepicker .day {border-radius: 15px; font-size: 1.3rem; cursor: pointer;}
.datepicker .day.active {color: #fff; background-color: #1d185d !important;}
.datepicker .dow {font-size: 1.3rem;}
.datepicker .day:hover {background-color: #e3e3eb;}
.datepicker table tr:last-child th {flex: 1; text-align: center; font-weight: 400; color: #100C3E; position:relative;  aspect-ratio: 1; display: flex; align-items: center; justify-content: center;}
.datepicker table tr th.prev {width: 25px; height: 25px; position: relative; color: transparent; transform: scaleY(.8);}
.datepicker table tr th.prev:before {content: ""; width: 50%; height: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-45deg); border-left: 2px solid #1d185d; border-top: 2px solid #1d185d;}
.datepicker table tr th.next {width: 25px; height: 25px; position: relative; color: transparent; transform: scaleY(.8);}
.datepicker table tr th.next:before {content: ""; width: 50%; height: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-45deg); border-right: 2px solid #1d185d; border-bottom: 2px solid #1d185d;}
.datepicker .datepicker-switch {display: flex; align-items: center; color: #100c3e; font-size: 1.3rem; margin: 0px 15px;}

.selected-date {color: #fff; display: flex; gap: 11px;}
.selected-date > div {border-bottom: 2px solid #fff; min-height: 35px;  font-size: 1.3rem; font-weight: 600; line-height: 1; display: flex; align-items: center;}
.selected-date .day {padding: 0px 8px;}
.selected-date .month {padding: 0px 8px;}
.selected-date .year {padding: 0px 8px;}

/* -----------------------------------------------
   Contact Enquiry Form
   ----------------------------------------------- */
.enquiry-form__heading {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2.375rem;
}

.enquiry-form__rule {
    display: block;
    width: 10rem;
    height: 0.25rem;
    background-color: var(--color-black);
}

.enquiry-form__title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(2rem, 3vw, 2.75rem);
    font-weight: 500;
    line-height: 1.4091;
    letter-spacing: -0.03em;
    color: var(--color-black);
}

.enquiry-form__row {
    margin-bottom: 0;
}

.enquiry-form__field {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.enquiry-form__field--full {
    flex-basis: 100%;
}

.enquiry-form__field-rule {
    display: block;
    width: 2.75rem;
    height: 0.125rem;
    background-color: var(--color-black);
}

.enquiry-form__label {
    display: block;
    font-family: var(--font-heading);
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.125;
    letter-spacing: -0.03em;
    color: var(--color-black);
    padding: 0;
}

.enquiry-form__input,
.enquiry-form__textarea {
    width: 100%;
    min-height: 3.75rem;
    padding: 0.875rem 1rem;
    font-family: var(--font-body);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--color-black);
    background-color: var(--color-white);
    border: 1px solid var(--color-border-light);
    border-radius: 0;
    outline: none;
    transition: border-color var(--transition-fast);
}

.enquiry-form__input:focus,
.enquiry-form__textarea:focus {
    border-color: var(--color-black);
}

.enquiry-form__input.input-validation-error,
.enquiry-form__textarea.input-validation-error {
    border-color: var(--color-primary);
}

.enquiry-form__textarea {
    min-height: 7.5rem;
    resize: vertical;
}

.enquiry-form__submit {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 3.75rem;
    padding: 1.3125rem 2rem;
    font-family: var(--font-nav);
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 0.922;
    color: var(--color-white);
    background-color: var(--color-primary);
    border: 1px solid rgba(0, 0, 0, 0.22);
    border-radius: 0.375rem;
    cursor: pointer;
    transition: background-color var(--transition-fast), opacity var(--transition-fast);
}

.enquiry-form__submit:hover {
    opacity: 0.88;
}

.enquiry-form__submit-loader {
    width: 1.5rem;
    height: 1.5rem;
    border: 3px solid #fff;
    border-bottom-color: transparent;
    border-radius: 50%;
    display: none;
    position: absolute;
    inset: 0;
    margin: auto;
    box-sizing: border-box;
    animation: enquiry-submit-spin 1s linear infinite;
}

.enquiry-form__submit.is-loading {
    pointer-events: none;
}

.enquiry-form__submit.is-loading .enquiry-form__submit-text {
    opacity: 0;
}

.enquiry-form__submit.is-loading .enquiry-form__submit-loader {
    display: inline-block;
}

@keyframes enquiry-submit-spin {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Contact form validation overrides */
.enquiry-form .field-validation-error {
    display: block;
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
    margin-bottom: 0;
    margin-top: 0.25rem;
}

.enquiry-form .field-validation-error:empty,
.enquiry-form .field-validation-valid:empty,
.enquiry-form .validation-summary:empty,
.enquiry-form .validation-summary-valid:empty {
    display: none;
    padding: 0;
    margin: 0;
}

.enquiry-form .validation-summary {
    margin-bottom: 1.5rem;
}

.enquiry-form__honeypot {
    display: none;
}

.enquiry-form__actions {
    margin-top: 0.125rem;
}


@media screen and (max-width: 1229px) {
    .editor-field.submit .btn { max-width: 200px; min-width: auto; }
}

@media screen and (max-width: 991px) and (min-width: 768px) {
.bookcallform .left {padding-right: 0px; padding-top: 10vh;}
.bookcallform .right {padding-left: 30px; min-height: calc(100vh - 70px); padding-top: 10vh;}

}
@media screen and (max-width: 767px) {
.bookcallform {background-color: #1d185d; background:#1d185d; height: calc(100vh - 70px); overflow: auto;}
.bookcallform .left {padding-top: 15px; min-height: 10px; background-color: #1d185d; padding-right: 0px;}
.bookcallform .left h2 {color: #fff;}
.bookcallform .datepicker { background-color: #fff; padding: 15px; border-radius: 10px;}
.bookcallform .datepicker table thead tr:first-child{display: none;}

.bookcallform .right {padding: 0px; min-height: 10px; padding-bottom: 30px;}
.bookcallform .white-bg {background-color: #1d185d;}
.bookcallform .radio-opt{color: #fff;}

.bookcallform .selections {display: none;}
.bookcallform .mt-60 {margin-top: 0px;}
.bookcallform .submit-load {padding-top: 30px; display: flex; justify-content: end;}

.bookcallform .right .call-close {display: none;}

.contact-form .top{padding: 30px ;}
.contact-form .btm{padding: 30px ; background-color: #fff;}
.contact-form .maw-230 {max-width: 100% !important;}
.contact-form .btm .section {gap: 0px;}

    .enquiry-form__row {
        margin-bottom: 0;
    }

    .enquiry-form__heading {
        margin-bottom: 1.5rem;
    }

    .enquiry-form__rule {
        width: 6rem;
    }

    .enquiry-form__label {
        font-size: 1.125rem;
    }

    .enquiry-form__submit {
        margin-top: 0.5rem;
    }
}

.popup { transition: none !important; z-index: 999; position: relative; }
.popup .overlay { position: fixed; z-index: 990; width: 100%; height: 100vh; top: 0px; left: 0px; background-color: #000000; opacity: 0.6; }
.popup .pop-container { box-shadow: 0px 3px 6px #00000029; position: fixed; z-index: 991; left: 50%; top: 50%; transform: translate(-50%, -50%); width: calc(100% - 30px); background-color: #fff; }
.popup .pop-container .btn.close {display: flex; justify-content: center; align-items: center; font-size: 2em; padding: 0px !important; width: 40px; min-height: 40px; height: 40px; aspect-ratio: 1; position: absolute; top: 10px; right: 10px; z-index: 100; border-radius: 100%; color: #c52433; }
.popup .pop-container .btn.close:hover { background-color: #f5f5f5; }
.popup .pop-container .btn.close > div { width: 40px; height: 40px; position: relative; transform: rotate(45deg); }
.popup .pop-container .btn.close > div:before { display: block; content: ""; width: 1px; height: 20px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); background-color: #fff; }
.popup .pop-container .btn.close > div:after { display: block; content: ""; width: 20px; height: 1px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); background-color: #fff; }

.overlay-stndalone{position: fixed; background-color: #000; width: 100%; height:100vh; z-index: 9999; top: 0px; left: 0px;opacity: 0.5; transition: none !important;}

.popbody {border-radius: 5px; z-index: 99;position: fixed;top: 50%; left: 50%;  background-color: #fff;z-index: 9999;transform: translate(-50%, -50%);opacity: 0;transition: 0.3s ease-in-out;width: calc(100% - 60px);max-width: 680px;overflow: hidden; height: calc(100vh - 60px); max-height: 600px;}
.popbody.active { opacity: 1;}
.popbody.basketwidg {}
.popbody .close { font-size: 1.8em; cursor: pointer; display: block; font-weight: 600; }
.popbody .close:hover {color: #C52432;}
.popbody .inner{height: calc(100vh - 100px); display: flex; flex-direction: column; justify-content: space-between;}
.popbody .basket-actions{position: absolute; left: 0px; bottom: 0px; background-color: #ecece6; width: 100%; padding: 30px; display: flex; flex-flow: column; gap: 10px;}
.popbody .basket-actions .btn {max-width: 560px; margin: 0 auto;height: 70px; font-weight: 700; font-size: 1.1em; border: 2px solid #232323;}

.popbody .inner .OK, .popbody .inner .ok { font-weight: 500;}
.popbody .pop-title strong {display: block !important;}

.popbody.full-scn {display: none; transition: none; max-width: 1200px; border-bottom: 9px solid #e10a0a;}
.popbody.full-scn { top: 50%; right: 50%; transform: translate(50%, -50%); height: fit-content;}
.popbody.full-scn .inner {height: auto;}
.popbody.full-scn .top {text-align: center; position: relative;}
.popbody.full-scn .top .close {position: absolute; top: 30px; right: 30px; }
.popbody.full-scn strong {color: #063B68; border-bottom: 5px solid #e10a0a ; font-weight: 900;   }

.popbody .pop-title {display: flex; align-items: center;}
.popbody .pop-title > * {width: 100%;}

.pop-wrapper {max-height: calc(80vh); overflow: auto;}

 @media screen and (max-width: 767px) {
.popbody .inner {padding: 0px;}
.popbody.accred img {max-height: 150px; width: auto;}
    }
@media screen and (max-width:500px) {
  .pop-container .rel.padd-30 { padding: 15px; }
  .popup .pop-container .btn.close { right: 10px; top:10px; margin-top: 0px;}
  .pop-title{height: 70px; display: flex; align-items: center; max-height: 70px !important; min-height: 70px !important;}
  .pop-title > .p-30{padding: 0px 30px; width: 100%;}
  .popbody .inner {height: calc(100vh - 70px);}
  .popbody .inner > .p-30 {padding: 15px;}
  .popbody.accred img {max-height: 110px; width: auto;}
  .popbody {    width: 100%;}
  .basketform .row {}
}

*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.container { width: 100%; margin: 0 auto; padding: 0 1rem; }
.container:after, .section:after { clear: both; }
.clear { display: block; clear: both; }
@-ms-viewport { width: device-width; }
.section.center { align-items: center; }

.section.no-row-g { row-gap: 0px !important; }
.section.sml-row-g { row-gap: 1rem !important; }

.row-gap-2em { row-gap: 2em !important; }

.full-h { height: 100%; }

.grid { display: grid; margin: 0 auto; justify-items: stretch; align-items: stretch; grid-template-columns: repeat(12, 1fr); }
.grid > div { padding: 0px; }

.section { margin: 0 -1rem; display: flex; flex-wrap: wrap; row-gap: 2rem; }
.section > div { position: relative; min-height: 1px; padding: 0 1rem; }
.section.center { align-items: center; }
.section .clear { display: none; }

.section.stockpanel { row-gap: 0px; margin: 0px -0.25rem; }
.section.stockpanel > * { padding: 0.25rem; }

.section.nogap { margin: 0px; row-gap: 0rem; }
.section.nogap > div { padding: 0rem; }

.section.gap025 { margin: 0 -0.25rem; row-gap: 0.5rem; }
.section.gap025 > div { padding: 0 0.25rem; }

.section.gap05 { margin: 0 -0.5rem; row-gap: 1rem; }
.section.gap05 > div { padding: 0 0.5rem; }

.section.gap075 { margin: 0 -0.75rem; row-gap: 1.5rem; }
.section.gap075 > div { padding: 0 0.75rem; }

.flx-bx { display: flex; }
.fl-al-cent { align-items: center; }
.fl-al-start { align-items: flex-start; }
.fl-al-end { align-items: flex-end; }

.dw-xxs-10percent { width: 10%; }
.dw-xxs-20percent { width: 20%; }
.dw-xxs-30percent { width: 30%; }
.dw-xxs-40percent { width: 40%; }
.dw-xxs-45percent { width: 45%; }
.dw-xxs-50percent { width: 50%; }
.dw-xxs-55percent { width: 55%; }
.dw-xxs-60percent { width: 60%; }
.dw-xxs-70percent { width: 70%; }
.dw-xxs-80percent { width: 80%; }
.dw-xxs-90percent { width: 90%; }

.dw-xxs-10th { width: calc(100% / 10); }
.dw-xxs-9th { width: calc(100% / 9); }
.dw-xxs-8th { width: calc(100% / 8); }
.dw-xxs-7th { width: calc(100% / 7); }
.dw-xxs-5th { width: calc(100% / 5); }

.dw-xxs-12 { width: 100%; }
.dw-xxs-11 { width: 91.66666666666666%; }
.dw-xxs-10 { width: 83.33333333333334%; }
.dw-xxs-9 { width: 75%; }
.dw-xxs-8 { width: 66.66666666666666%; }
.dw-xxs-7 { width: 58.333333333333336%; }
.dw-xxs-6 { width: 50%; }
.dw-xxs-5 { width: 41.66666666666667%; }
.dw-xxs-4 { width: 33.33333333333333%; }
.dw-xxs-3 { width: 25%; }
.dw-xxs-2 { width: 16.666666666666664%; }
.dw-xxs-1 { width: 8.333333333333332%; }

@media (min-width:500px) {
    .dw-xs-10percent { width: 10%; }
    .dw-xs-20percent { width: 20%; }
    .dw-xs-30percent { width: 30%; }
    .dw-xs-40percent { width: 40%; }
    .dw-xs-50percent { width: 50%; }
    .dw-xs-60percent { width: 60%; }
    .dw-xs-70percent { width: 70%; }
    .dw-xs-80percent { width: 80%; }
    .dw-xs-90percent { width: 90%; }

    .dw-xs-10th { width: calc(100% / 10); }
    .dw-xs-9th { width: calc(100% / 9); }
    .dw-xs-8th { width: calc(100% / 8); }
    .dw-xs-7th { width: calc(100% / 7); }
    .dw-xs-5th { width: calc(100% / 5); }

    .dw-xs-12 { width: 100%; }
    .dw-xs-11 { width: 91.66666666666666%; }
    .dw-xs-10 { width: 83.33333333333334%; }
    .dw-xs-9 { width: 75%; }
    .dw-xs-8 { width: 66.66666666666666%; }
    .dw-xs-7 { width: 58.333333333333336%; }
    .dw-xs-6 { width: 50%; }
    .dw-xs-5 { width: 41.66666666666667%; }
    .dw-xs-4 { width: 33.33333333333333%; }
    .dw-xs-3 { width: 25%; }
    .dw-xs-2 { width: 16.666666666666664%; }
    .dw-xs-1 { width: 8.333333333333332%; }
}

@media (max-width: 767px) {
    .container { padding: 0px 1rem; }
    .section { margin: 0 -1rem; }
    .section > div { padding: 0 1rem; }
    .marg-btm-15-xs { margin-bottom: 15px; }
}




@media (min-width:768px) {
    .dw-sm-10percent { width: 10%; }
    .dw-sm-20percent { width: 20%; }
    .dw-sm-30percent { width: 30%; }
    .dw-sm-40percent { width: 40%; }
    .dw-sm-50percent { width: 50%; }
    .dw-sm-60percent { width: 60%; }
    .dw-sm-70percent { width: 70%; }
    .dw-sm-80percent { width: 80%; }
    .dw-sm-90percent { width: 90%; }

    .dw-sm-10th { width: calc(100% / 10); }
    .dw-sm-9th { width: calc(100% / 9); }
    .dw-sm-8th { width: calc(100% / 8); }
    .dw-sm-7th { width: calc(100% / 7); }
    .dw-sm-5th { width: calc(100% / 5); }

    .dw-sm-12 { width: 100%; }
    .dw-sm-11 { width: 91.66666666666666%; }
    .dw-sm-10 { width: 83.33333333333334%; }
    .dw-sm-9 { width: 75%; }
    .dw-sm-8 { width: 66.66666666666666%; }
    .dw-sm-7 { width: 58.333333333333336%; }
    .dw-sm-6 { width: 50%; }
    .dw-sm-5 { width: 41.66666666666667%; }
    .dw-sm-4 { width: 33.33333333333333%; }
    .dw-sm-3 { width: 25%; }
    .dw-sm-2 { width: 16.666666666666664%; }
    .dw-sm-1 { width: 8.333333333333332%; }

    .visible-xs { display: none !important; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .container { max-width: 750px; }
}

@media(max-width: 991px) {
    .container.full-tabdown { max-width: 100% !important; }
}



@media (min-width:992px) {
    .dw-md-10percent { width: 10%; }
    .dw-md-20percent { width: 20%; }
    .dw-md-30percent { width: 30%; }
    .dw-md-40percent { width: 40%; }
    .dw-md-50percent { width: 50%; }
    .dw-md-60percent { width: 60%; }
    .dw-md-70percent { width: 70%; }
    .dw-md-80percent { width: 80%; }
    .dw-md-90percent { width: 90%; }

    .dw-md-10th { width: calc(100% / 10); }
    .dw-md-9th { width: calc(100% / 9); }
    .dw-md-8th { width: calc(100% / 8); }
    .dw-md-7th { width: calc(100% / 7); }
    .dw-md-5th { width: calc(100% / 5); }

    .dw-md-12 { width: 100%; }
    .dw-md-11 { width: 91.66666666666666%; }
    .dw-md-10 { width: 83.33333333333334%; }
    .dw-md-9 { width: 75%; }
    .dw-md-8 { width: 66.66666666666666%; }
    .dw-md-7 { width: 58.333333333333336%; }
    .dw-md-6 { width: 50%; grid-column: span 6; }
    .dw-md-5 { width: 41.66666666666667%; }
    .dw-md-4 { width: 33.33333333333333%; }
    .dw-md-3 { width: 25%; }
    .dw-md-2 { width: 16.666666666666664%; }
    .dw-md-1 { width: 8.333333333333332%; }
    .dw-md-auto { width: auto; }
    .visible-tab-down { display: none !important; }
}

@media (min-width: 992px) and (max-width: 1229px) {
    .container { max-width: 970px; }
}

@media(max-width: 1229px) {
    .visible-desk-up { display: none; }
}

@media (min-width: 1230px) {
    .container.console { width: auto !important; }

    .dw-lg-10percent { width: 10%; }
    .dw-lg-20percent { width: 20%; }
    .dw-lg-30percent { width: 30%; }
    .dw-lg-40percent { width: 40%; }
    .dw-lg-45percent { width: 45%; }
    .dw-lg-50percent { width: 50%; }
    .dw-lg-55percent { width: 55%; }
    .dw-lg-60percent { width: 60%; }
    .dw-lg-70percent { width: 70%; }
    .dw-lg-80percent { width: 80%; }
    .dw-lg-90percent { width: 90%; }

    .dw-lg-10th { width: calc(100% / 10); }
    .dw-lg-9th { width: calc(100% / 9); }
    .dw-lg-8th { width: calc(100% / 8); }
    .dw-lg-7th { width: calc(100% / 7); }
    .dw-lg-5th { width: calc(100% / 5); }

    .dw-lg-12 { width: 100%; }
    .dw-lg-11 { width: 91.66666666666666%; }
    .dw-lg-10 { width: 83.33333333333334%; }
    .dw-lg-9 { width: 75%; }
    .dw-lg-8 { width: 66.66666666666666%; }
    .dw-lg-7 { width: 58.333333333333336%; }
    .dw-lg-6 { width: 50%; }
    .dw-lg-5 { width: 41.66666666666667%; }
    .dw-lg-4 { width: 33.33333333333333%; }
    .dw-lg-3 { width: 25%; }
    .dw-lg-2 { width: 16.666666666666664%; }
    .dw-lg-1 { width: 8.333333333333332%; }

    .visible-desk-up { display: block; }
}

@media (min-width:1230px) and (max-width:1474px) {
    .container { max-width: 1792px; }
    .container.sml { max-width: 830px; }
}

@media (min-width: 1671px) {
    .dw-xl-10percent { width: 10%; }
    .dw-xl-20percent { width: 20%; }
    .dw-xl-30percent { width: 30%; }
    .dw-xl-40percent { width: 40%; }
    .dw-xl-50percent { width: 50%; }
    .dw-xl-60percent { width: 60%; }
    .dw-xl-70percent { width: 70%; }
    .dw-xl-80percent { width: 80%; }
    .dw-xl-90percent { width: 90%; }

    .dw-xl-10th { width: calc(100% / 10); }
    .dw-xl-9th { width: calc(100% / 9); }
    .dw-xl-8th { width: calc(100% / 8); }
    .dw-xl-7th { width: calc(100% / 7); }
    .dw-xl-5th { width: calc(100% / 5); }

    .dw-xl-12 { width: 100%; }
    .dw-xl-11 { width: 91.66666666666666%; }
    .dw-xl-10 { width: 83.33333333333334%; }
    .dw-xl-9 { width: 75%; }
    .dw-xl-8 { width: 66.66666666666666%; }
    .dw-xl-7 { width: 58.333333333333336%; }
    .dw-xl-6 { width: 50%; }
    .dw-xl-5 { width: 41.66666666666667%; }
    .dw-xl-4 { width: 33.33333333333333%; }
    .dw-xl-3 { width: 25%; }
    .dw-xl-2 { width: 16.666666666666664%; }
    .dw-xl-1 { width: 8.333333333333332%; }
}

@media (min-width:1230px) and (max-width:1670px) {
    .container, .course .masthead .container, .info-page .masthead .container { max-width: 1792px; }
}

@media (min-width:1671px) {
    .container, .course .masthead .container, .info-page .masthead .container { max-width: 1792px; }
    .container.sml { max-width: 830px; }
    .dw-xxl-10percent { width: 10%; }
    .dw-xxl-20percent { width: 20%; }
    .dw-xxl-30percent { width: 30%; }
    .dw-xxl-40percent { width: 40%; }
    .dw-xxl-50percent { width: 50%; }
    .dw-xxl-60percent { width: 60%; }
    .dw-xxl-70percent { width: 70%; }
    .dw-xxl-80percent { width: 80%; }
    .dw-xxl-90percent { width: 90%; }

    .dw-xxl-10th { width: calc(100% / 10); }
    .dw-xxl-9th { width: calc(100% / 9); }
    .dw-xxl-8th { width: calc(100% / 8); }
    .dw-xxl-7th { width: calc(100% / 7); }
    .dw-xxl-5th { width: calc(100% / 5); }

    .dw-xxl-12 { width: 100%; }
    .dw-xxl-11 { width: 91.66666666666666%; }
    .dw-xxl-10 { width: 83.33333333333334%; }
    .dw-xxl-9 { width: 75%; }
    .dw-xxl-8 { width: 66.66666666666666%; }
    .dw-xxl-7 { width: 58.333333333333336%; }
    .dw-xxl-6 { width: 50%; }
    .dw-xxl-5 { width: 41.66666666666667%; }
    .dw-xxl-4 { width: 33.33333333333333%; }
    .dw-xxl-3 { width: 25%; }
    .dw-xxl-2 { width: 16.666666666666664%; }
    .dw-xxl-1 { width: 8.333333333333332%; }

    .container.console { max-width: 1645px !important; }
}

@media screen and (min-width: 1231px) {
    .fl-left-lg { float: left; }
    .fl-right-lg { float: right; }
}

@media screen and (min-width: 992px) and (max-width: 1230px) {
    .fl-left-md { float: left; }
    .fl-right-md { float: right; }
    .full-w-md { max-width: 100%; }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .fl-left-sm { float: left; }
    .fl-right-sm { float: right; }
    .hidden-sm { display: none !important; }
    .full-w-sm { max-width: 100%; }
}

@media screen and (max-width: 767px) {
    .fl-left-xs { float: left; }
    .fl-right-xs { float: right; }
    .hidden-xs { display: none !important; }

    .sm-center-txt { text-align: center !important; }
}

