/* input(32,41): run-time error CSS1019: Unexpected token, found ' '
input(32,41): run-time error CSS1019: Unexpected token, found ' '
input(32,41): run-time error CSS1042: Expected function, found ' '
input(32,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(33,41): run-time error CSS1019: Unexpected token, found ' '
input(33,41): run-time error CSS1019: Unexpected token, found ' '
input(33,41): run-time error CSS1042: Expected function, found ' '
input(33,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(34,40): run-time error CSS1019: Unexpected token, found ' '
input(34,40): run-time error CSS1019: Unexpected token, found ' '
input(34,40): run-time error CSS1042: Expected function, found ' '
input(34,40): run-time error CSS1062: Expected semicolon or closing curly-brace, found ' '
input(2220,23): run-time error CSS1030: Expected identifier, found '#menu-links'
input(2220,39): run-time error CSS1025: Expected comma or open brace, found ')' */
/* === 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; }

body,
input,
textarea,
select { font-family: var(--font-body); }

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; background-image: url("/images/hero-school-model.jpg?v=d6ikROqP9DjDx2WAszNv2BU16_I"); background-repeat: no-repeat; background-position: center -149px; background-size: cover; }

.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 { background-position: center clamp(-9rem, -11vw, -5rem); background-size: cover; }
}

/* -----------------------------------------------
   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 { background-position: center -3rem; }
}

/* -----------------------------------------------
   Hero — Wide desktop (1230px+)
   ----------------------------------------------- */
@media (min-width: 1230px) {
    .hero { height: 762px; }

    .hero__media { background-position: center 70%; background-size: cover; }
}

@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; background-position: center 0.25rem; background-size: 55.75rem 28.1875rem; }

    .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; 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 - 2rem); 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; }

    .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: -3.5625rem; left: 51.6875rem; width: 54.875rem; max-width: calc(100vw - 7rem); height: 40.0625rem; background: linear-gradient(90.2987deg, rgba(255, 255, 255, 0) 2.1587%, rgba(255, 255, 255, 1) 38.752%); 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%, 45.875rem); }

    .about__track { gap: 0; }

    .about__slide { flex-basis: 45.875rem; width: 45.875rem; }

    .about__fade { display: none; }
}

/* === clients.css === */

/* -----------------------------------------------
   Clients section
   ----------------------------------------------- */
.clients {
    padding-top: 1.5rem;
    padding-bottom: 0;
}

.clients__inner.container {
    overflow: hidden;
}

.clients__heading {
    margin: 0 0 0.875rem;
    font-family: var(--font-heading);
    font-size: 1.5625rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: -0.03em;
    color: var(--color-black);
}

.clients__scroller {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: grab;
    padding-bottom: 0;
}

.clients__scroller:active {
    cursor: grabbing;
}

.clients__scroller::-webkit-scrollbar {
    display: none;
}

.clients__track {
    display: inline-flex;
    align-items: center;
    gap: 1.8125rem;
    flex-wrap: nowrap;
    min-width: max-content;
}

.clients__logos-img {
    display: block;
    flex: 0 0 auto;
    width: 19.1278rem;
    height: auto;
    min-width: 19.1278rem;
}

.clients__rule {
    display: block;
    width: 9.5625rem;
    height: 0.135625rem;
    margin-top: 0.875rem;
    margin-bottom: 1.125rem;
    background-color: var(--color-black);
}

@media (min-width: 768px) {
    .clients {
        padding-top: 3.75rem;
        padding-bottom: 1rem;
    }

    .clients__heading {
        margin-bottom: 2rem;
        font-size: 2.25rem;
        line-height: 1.1136;
    }

    .clients__track {
        gap: 1.25rem;
    }

    .clients__logos-img {
        width: 32rem;
        min-width: 32rem;
    }

    .clients__rule {
        display: none;
    }
}

@media (min-width: 992px) {
    .clients {
        padding-top: 4.25rem;
        padding-bottom: 1.125rem;
    }

    .clients__heading {
        margin-bottom: 1.75rem;
        font-size: 2.75rem;
        line-height: 1.1136;
    }

    .clients__track {
        gap: 1.4375rem;
    }

    .clients__logos-img {
        width: 36.9375rem;
        min-width: 36.9375rem;
    }
}

/* === architectural-models.css === */

.architectural-models {
    padding-top: 0.25rem;
    padding-bottom: 3rem;
    overflow-x: clip;
    overflow-y: visible;
}

.architectural-models__inner.container {
    padding-left: 1rem;
    padding-right: 1rem;
    overflow: visible;
}

.architectural-models__header {
    width: 22.375rem;
    margin-bottom: 1.5rem;
}

.architectural-models__rule {
    width: 9.5625rem;
}

.architectural-models__title {
    font-size: 1.5625rem;
    line-height: 1.4;
}

.architectural-models__scroller {
    width: 100%;
    max-width: 100%;
    overflow: visible;
    cursor: default;
    padding-bottom: 0;
    box-sizing: border-box;
}

.architectural-models__scroller::-webkit-scrollbar {
    display: none;
}

.architectural-models__scroller.is-dragging {
    cursor: grabbing;
    user-select: none;
}

.architectural-models__track {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.8125rem;
    min-width: 0;
    padding-right: 0;
}

.architectural-models__card {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    height: 10.9375rem;
    overflow: hidden;
    border-radius: 0;
    text-decoration: none;
    color: var(--color-black);
    background-color: #ececec;
    scroll-snap-align: start;
}

.architectural-models__picture {
    display: block;
    width: 100%;
    height: 100%;
}

.architectural-models__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.architectural-models__badge {
    position: absolute;
    left: 0.5625rem;
    right: auto;
    bottom: 0.5625rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: 11.0625rem;
    min-height: 3rem;
    padding: 0.96875rem 1rem;
    background-color: var(--color-white);
    border-radius: 0.75rem;
}

.architectural-models__badge-text,
.architectural-models__badge-arrow {
    font-family: var(--font-nav);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.037;
    color: var(--color-black);
}

.architectural-models__badge-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 0.875rem;
    height: 1rem;
    color: var(--color-black);
}

.architectural-models__badge-arrow svg {
    display: block;
    width: 100%;
    height: 100%;
}

@media (min-width: 768px) {
    .architectural-models {
        padding-top: 2.125rem;
        padding-bottom: 4.25rem;
    }

    .architectural-models__header {
        width: auto;
    }

    .architectural-models__title {
        font-size: 2.25rem;
        line-height: 1.1136;
    }

    .architectural-models__scroller {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: grab;
        padding-bottom: 0.5rem;
        scroll-snap-type: x proximity;
        overscroll-behavior-x: contain;
    }

    .architectural-models__track {
        display: inline-flex;
        flex-direction: row;
        gap: 1.25rem;
        min-width: max-content;
        padding-right: 2rem;
    }

    .architectural-models__card {
        width: 22rem;
        min-width: 22rem;
        height: 28.75rem;
    }

    .architectural-models__card:nth-child(1) .architectural-models__image {
        object-position: 24% 46%;
    }

    .architectural-models__card:nth-child(2) .architectural-models__image {
        object-position: 56% 42%;
    }

    .architectural-models__card:nth-child(3) .architectural-models__image {
        object-position: 50% 34%;
    }

    .architectural-models__card:nth-child(4) .architectural-models__image {
        object-position: 52% 42%;
    }

    .architectural-models__card:nth-child(5) .architectural-models__image {
        object-position: 52% 42%;
    }

    .architectural-models__badge {
        left: auto;
        right: 0.9375rem;
        bottom: 1.625rem;
        width: min(14.4375rem, calc(100% - 1.875rem));
        min-height: 3.6875rem;
        padding: 1.3125rem 1.5rem;
    }

    .architectural-models__badge-text,
    .architectural-models__badge-arrow {
        font-size: 1.125rem;
        line-height: 0.922;
    }
}

@media (min-width: 992px) {
    .architectural-models {
        padding-top: 2.5rem;
        padding-bottom: 5.5rem;
    }

    .architectural-models__inner.container {
        padding-left: 0;
        padding-right: 0;
    }

    .architectural-models__header {
        width: 45.875rem;
        margin-bottom: 2.0625rem;
    }

    .architectural-models__title {
        font-size: 2.75rem;
        line-height: 1.1136;
    }

    .architectural-models__track {
        gap: 1.375rem;
        padding-right: 4rem;
    }

    .architectural-models__scroller {
        width: calc(100vw - 4rem);
        max-width: none;
        margin-right: calc((100vw - 100%) / -2);
        padding-right: 0;
        box-sizing: border-box;
    }

    .architectural-models__card {
        width: 26.25rem;
        min-width: 26.25rem;
        height: 34.375rem;
    }

    .architectural-models__badge {
        right: 0.9375rem;
        bottom: 1.625rem;
        width: 14.4375rem;
        min-height: 3.6875rem;
    }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .architectural-models__inner.container {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .architectural-models__scroller {
        width: calc(100vw - 2rem);
        margin-right: calc((100vw - 100%) / -2);
    }
}

@media (min-width: 1440px) {
    .architectural-models__inner.container {
        padding-left: 4rem;
        padding-right: 4rem;
    }

    .architectural-models__scroller {
        width: calc(100vw - 4rem);
        margin-right: calc((100vw - 100%) / -2);
    }
}

/* === testimonials.css === */

.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-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: 1px solid var(--color-navy); border-radius: 50%; background: transparent; 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-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; }
}

@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-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; }

.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 .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: 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: 31rem; }

    .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; }

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

    .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; }

    .rss-feed .readmore { width: 7.875rem; min-width: 7.875rem; height: 2.75rem; min-height: 2.75rem; margin-top: 1.25rem; margin-right: auto; 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: 32.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; }

    .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; }

    .rss-feed .readmore { width: 9.25rem; min-width: 9.25rem; height: 3rem; min-height: 3rem; margin-top: 1.5rem; margin-right: auto; 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.125rem; line-height: 1.18; }

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

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

    .rss-feed .readmore { width: 9.25rem; min-width: 9.25rem; height: 3rem; min-height: 3rem; margin-top: 1.5rem; margin-right: auto; 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: 2.5rem 0 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;
    width: 9.25rem;
    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: "pacaembu", var(--font-nav);
    font-size: 1rem;
    font-weight: 200;
    line-height: 1.0372;
    letter-spacing: 0;
    text-transform: none;
    color: var(--color-white);
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricPrecision;
}

@media (min-width: 768px) {
    .faq-section {
        padding: 3.5rem 0 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 (min-width: 992px) {
    .faq-section {
        padding: 6rem 0 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__item + .faq-section__item {
        padding-top: 2.375rem;
    }

    .faq-section__cta {
        margin-top: 3.9375rem;
    }
}

/* === image-strip-section.css === */

.image-strip-section {
    padding: 3.9375rem 0 2.5625rem;
    background-color: #efefef;
    overflow: hidden;
}

.image-strip-section__header {
    width: min(100%, 22.375rem);
    margin-bottom: 1.125rem;
}

.image-strip-section__rule {
    width: 6.0625rem;
    height: 0.125rem;
}

.image-strip-section__title {
    font-size: 1.5625rem;
    line-height: 1.4;
    letter-spacing: -0.03em;
}

.image-strip-section__scroller {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: grab;
}

.image-strip-section__scroller::-webkit-scrollbar {
    display: none;
}

.image-strip-section__scroller.is-dragging {
    cursor: grabbing;
    user-select: none;
}

.image-strip-section__track {
    display: inline-flex;
    align-items: stretch;
    gap: 0.75rem;
    min-width: max-content;
    padding-right: 1rem;
}

.image-strip-section__item {
    flex: 0 0 auto;
    width: 19.8125rem;
    height: 14.0625rem;
    overflow: hidden;
    background-color: #272727;
}

.image-strip-section__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-strip-section__cta {
    display: flex;
    justify-content: flex-start;
    margin-top: 1.4375rem;
}

.image-strip-section__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 9.25rem;
    min-width: 9.25rem;
    height: 3rem;
    min-height: 3rem;
    padding: 0;
    border-radius: 0.375rem;
    background-color: #ca161e;
    font-family: "pacaembu", 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;
}

@media (max-width: 767px) {
    .image-strip-section__inner.container {
        padding-left: 1rem;
        padding-right: 0;
    }

    .image-strip-section__inner.container {
        padding-right: 0;
    }

    .image-strip-section__header {
        width: 22.375rem;
        margin-bottom: 1.125rem;
    }

    .image-strip-section__title {
        width: 22.375rem;
        max-width: 22.375rem;
        min-height: 6.3125rem;
        line-height: 1.4;
    }

    .image-strip-section__scroller {
        width: calc(100vw - 1rem);
        max-width: none;
    }

    .image-strip-section__track {
        gap: 0.75rem;
        padding-right: 1rem;
    }

    .image-strip-section__item {
        width: 19.8125rem;
        height: 14.0625rem;
    }

    .image-strip-section__cta {
        justify-content: flex-start;
        margin-top: 0.875rem;
    }

    .image-strip-section__image {
        object-fit: cover;
    }

    .image-strip-section__item:nth-child(1) .image-strip-section__image {
        object-position: center center;
    }

    .image-strip-section__item:nth-child(2) .image-strip-section__image {
        object-position: 45% 28%;
    }

    .image-strip-section__item:nth-child(3) .image-strip-section__image {
        object-position: center top;
    }

    .image-strip-section__item:nth-child(4) .image-strip-section__image {
        object-position: 42% top;
    }
}

@media (min-width: 768px) {
    .image-strip-section {
        padding: 4.25rem 0 4rem;
    }

    .image-strip-section__header {
        width: min(100%, 47.6875rem);
        margin-bottom: 1.5rem;
    }

    .image-strip-section__rule {
        width: 13.625rem;
    }

    .image-strip-section__title {
        font-size: 2.25rem;
        line-height: 1.1136;
    }

    .image-strip-section__track {
        gap: 1.25rem;
        padding-right: 2rem;
    }

    .image-strip-section__item {
        width: 28rem;
        height: 16.1875rem;
    }

    .image-strip-section__cta {
        justify-content: center;
        margin-top: 2.25rem;
    }

    .image-strip-section__button {
        min-width: 10.0625rem;
        min-height: 3.75rem;
        padding: 1.34375rem 2rem 1.28125rem;
        font-size: 1.125rem;
        line-height: 0.922;
    }
}

@media (min-width: 992px) {
    .image-strip-section {
        padding: 3.875rem 0 3.8125rem;
    }

    .image-strip-section__header {
        margin-bottom: 1.875rem;
    }

    .image-strip-section__track {
        gap: 1.5rem;
        padding-right: 4rem;
    }

    .image-strip-section__scroller {
        width: calc(100vw - 4rem);
        max-width: none;
        margin-right: calc((100vw - 100%) / -2);
    }

    .image-strip-section__item {
        width: 33.6875rem;
        height: 19.5rem;
    }

    .image-strip-section__cta {
        margin-top: 3.3125rem;
    }
}

@media (min-width: 1440px) {
    .image-strip-section__inner.container {
        padding-left: 4rem;
        padding-right: 4rem;
    }

    .image-strip-section__scroller {
        width: calc(100vw - 4rem);
        margin-right: calc((100vw - 100%) / -2);
    }
}

i.css-check.red {border-left: 2px solid #e10a0a; border-bottom: 2px solid #e10a0a; width: 100%; aspect-ratio: 1.55; transform: rotate(-45deg) translate(15%, -15%)}
i.css-check.white {border-left: 2px solid #fff; border-bottom: 2px solid #fff; width: 100%; aspect-ratio: 1.55; transform: rotate(-45deg) translate(15%, -15%)}

i.css-user.black { color: #000; display: inline-block; position: relative; width: 30px; aspect-ratio: 1; overflow: hidden; }
i.css-user.black:before { content: ''; position: absolute; left: 50%; top: 0px; aspect-ratio: 1; width: 54%; border-radius: 50%; transform: translateX(-50%); border: solid 1px currentColor; background-color: currentColor; }
i.css-user.black::after { content: ''; position: absolute; left: 0px; left: 50%; top: 60%; transform: translateX(-50%); aspect-ratio: 1; width: 88%; border-radius: 50%; background-color: currentColor; border: solid 1px currentColor }

i.css-x.white {aspect-ratio: 1; position: relative; transform: rotate(45deg);}
i.css-x.white:before {content: ""; display: block; height: 100%; width: 2px; background-color: #fff; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
i.css-x.white:after {content: ""; display: block; height: 2px; width: 100%; background-color: #fff; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}

i.css-exclamation.white {color: #fff; text-align: center;}
i.css-exclamation.white:before {content: "!"; font-style:normal;}

i.css-chev-up{display: flex; aspect-ratio: 1; min-width: 30px; transform: rotate(180deg); justify-content: center; align-items: center;     padding-bottom: 15%;}
i.css-chev-up:before { content: ""; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; width: 50%; aspect-ratio: 1; transform: rotate(-45deg) ; }
i.css-chev-down{display: flex; aspect-ratio: 1; min-width: 30px; justify-content: center; align-items: center;     padding-bottom: 15%;}
i.css-chev-down:before { content: ""; border-left: 1px solid currentColor; border-bottom: 1px solid currentColor; width: 50%; aspect-ratio: 1; transform: rotate(-45deg) ; }
i.css-chev-down.purple:before {border-color: #1d185d;}
/* === nav.css === */
/* Site header navigation */

.site-header { z-index: var(--z-sticky); background-color: var(--color-white); border-bottom: none; }

.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: 5.5rem 1rem 2rem; 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 .site-header__nav { transform: translateX(0); }

.site-header__menu { display: flex; flex-direction: column; gap: 0; list-style: none; margin: 0; padding: 0; }

.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__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__actions { display: flex; flex-direction: column; gap: 0.75rem; margin-top: auto; padding-top: 1.5rem; }

.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); }

@media (min-width: 768px) {
    .site-header__wrap { padding: 0.8125rem 2rem; }

    .site-header__logo-img { height: 2.625rem; }
}

@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); }

    .site-header__mobile-controls { display: flex; order: 3; margin-left: 0.5rem; }

    .site-header__nav { display: contents; }

    .site-header__menu { position: fixed; inset: 0; width: 100%; height: 100dvh; padding: 6rem 1.5rem 2rem; background-color: var(--color-white); overflow-y: auto; overflow-x: hidden; transform: translateX(100%); transition: transform var(--transition-slow); z-index: var(--z-overlay); margin: 0; flex-direction: column; align-items: stretch; gap: 0; width: auto; }

    body.mob-nav-open .site-header__menu { transform: translateX(0); }

    .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; margin-top: 0; margin-left: auto; padding-top: 0; flex: 0 0 auto; order: 2; 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; }
}

@media (min-width: 1230px) and (max-width: 1439px) {
    .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 { 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; align-items: center; justify-content: space-between; gap: 1.5rem; min-width: 0; align-self: center; }

    .site-header__menu { flex-direction: row; align-items: center; gap: 1rem; flex: 1 1 auto; min-width: 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__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 .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: none; }

    .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__overflow-actions { display: none; }
}

@media (min-width: 1440px) {
    .site-header { min-height: 6.5rem; }

    .site-header__mobile-controls { 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; }

    .site-header__menu { flex-direction: row; align-items: center; gap: 1rem; flex: 1 1 auto; min-width: 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__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 .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-top: 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; }
}

@media (min-width: 1440px) and (max-width: 1919px) {
    .site-header__actions { display: none; }
}

@media (min-width: 1920px) {
    .site-header__actions { display: flex; }
}

/* === footer.css === */

.site-footer { background-color: var(--color-white); color: var(--color-black); }

.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: opacity var(--transition-fast); }

.site-footer__link:hover { opacity: 0.72; }

.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: opacity var(--transition-fast); }

.site-footer__nav-link:hover { opacity: 0.72; }

.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: opacity var(--transition-fast); }

.site-footer__credit-link:hover { opacity: 0.72; }

.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(4, 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(4, 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(4, 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(4, 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; }
}


.dw-carousel { display: none; width: 100%; -webkit-tap-highlight-color: transparent; position: relative; z-index: 1; }
.dw-carousel .dw-stage {position: relative;display: flex;-ms-touch-action: pan-Y;touch-action: manipulation;height: 100%;-moz-backface-visibility: hidden;}
.dw-carousel.flex-carousel .dw-stage{display: flex;}
.dw-carousel .dw-stage:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.dw-carousel .dw-stage-outer { position: relative; overflow: hidden; -webkit-transform: translate3d(0px, 0px, 0px); }
.dw-carousel .dw-wrapper,
.dw-carousel .dw-item { -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; -ms-backface-visibility: hidden; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); }
.dw-carousel .dw-item {position: relative;min-height: 100%;-webkit-backface-visibility: hidden;-webkit-tap-highlight-color: transparent;-webkit-touch-callout: none;}
.dw-carousel .dw-item img {display: block;}
.dw-carousel .dw-nav.disabled,
.dw-carousel .dw-dots.disabled { display: none; }
.dw-carousel .dw-nav .dw-prev,
.dw-carousel .dw-nav .dw-next,
.dw-carousel .dw-dot { cursor: pointer; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.dw-carousel .dw-nav button.dw-prev,
.dw-carousel .dw-nav button.dw-next,
.dw-carousel button.dw-dot {border: none;padding: 0 !important;}

.dw-carousel .dw-prev {}
.dw-carousel .dw-next {}

.dw-carousel  .dw-prev, .dw-carousel  .dw-next{width: 60px;height: 60px;color: #fff;border-radius: 100%;}

.dw-carousel.dw-loaded {display: flex;flex-wrap: wrap;}
.dw-carousel.dw-loading { opacity: 0; display: block; }
.dw-carousel.dw-hidden { opacity: 0; }
.dw-carousel.dw-refresh .dw-item { visibility: hidden; opacity: 0; }
.dw-carousel.dw-refresh .dw-item.active {opacity: 1; }
.dw-carousel.dw-drag .dw-item {/*opacity: 0;*/ -ms-touch-action: pan-y;touch-action: pan-y;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;height: 100%;}
.dw-carousel.dw-drag .dw-item.active {opacity: 1; }
.dw-carousel.dw-grab { cursor: move; cursor: grab; }
.dw-carousel.dw-rtl { direction: rtl; }
.dw-carousel.dw-rtl .dw-item { float: right; }
.no-js .dw-carousel { display: block; }
.dw-carousel .animated { animation-duration: 1000ms; animation-fill-mode: both; }
.dw-carousel .dw-animated-in { z-index: 0; }
.dw-carousel .dw-animated-out { z-index: 1; }
.dw-carousel .fadeOut { animation-name: fadeOut; }
@keyframes fadeOut {
    0% { opacity: 1; }
    100% { opacity: 0; }
}
.dw-height { transition: height 500ms ease-in-out; }
.dw-carousel .dw-item { }
.dw-carousel .dw-item .dw-lazy { opacity: 0; transition: opacity 400ms ease; }
.dw-carousel .dw-item .dw-lazy[src^=""], .dw-carousel .dw-item .dw-lazy:not([src]) { max-height: 0; }
.dw-carousel .dw-item img.dw-lazy { transform-style: preserve-3d; }
.dw-carousel .dw-video-wrapper { position: relative; height: 100%; background: #000; }
.dw-carousel .dw-video-play-icon { position: absolute; height: 80px; width: 80px; left: 50%; top: 50%; margin-left: -40px; margin-top: -40px; background: url("../dw.video.play.png") no-repeat; cursor: pointer; z-index: 1; -webkit-backface-visibility: hidden; transition: transform 100ms ease; }
.dw-carousel .dw-video-play-icon:hover { -ms-transform: scale(1.3, 1.3); transform: scale(1.3, 1.3); }
.dw-carousel .dw-video-playing .dw-video-tn,
.dw-carousel .dw-video-playing .dw-video-play-icon { display: none; }
.dw-carousel .dw-video-tn { opacity: 0; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; transition: opacity 400ms ease; }
.dw-carousel .dw-video-frame { position: relative; z-index: 1; height: 100%; width: 100%; }
.dw-theme .dw-nav {max-width: 1920px;text-align: center;-webkit-tap-highlight-color: transparent;left: 50%;width: calc(100% + 80px);top: 50%;display: flex;justify-content: space-between;align-items: center;height: 1px;position: absolute;transform: translate(-50%, -50%);}
.dw-theme .dw-nav [class*='dw-'] {font-size: 1.2rem;color: #043776;padding: 4px 7px;display: inline-block;background-color: transparent;cursor: pointer;width: 40px;height: 40px;border-radius: 100%;}
.dw-theme .dw-nav [class*='dw-']:hover {color: #cb0e40;}
.dw-theme .dw-nav .disabled { opacity: 0.5; cursor: default; }
.dw-theme .dw-nav.disabled + .dw-dots {}
.dw-theme .dw-dots {margin: 15px auto 0px;display: flex;flex-wrap: wrap;height: 30px;background-color: transparent;}

#deliveryinfoslider .dw-dots {margin: 0px auto 0px;}

.dw-theme .dw-dots .dw-dot {display: inline-block;zoom: 1; display: inline;background-color: transparent;}
.dw-theme .dw-dots .dw-dot span {width: 15px;height: 15px;margin: 5px 7px;background: #ecece6;display: block;-webkit-backface-visibility: visible;transition: opacity 200ms ease;border-radius: 30px;border: 1px solid #fff;}
.dw-theme .dw-dots .dw-dot.active span, .dw-theme .dw-dots .dw-dot:hover span {background: #c52432;}

#relatedprod-carousel.dw-theme .dw-dots .dw-dot span {display: none;}
#relatedprod-carousel.dw-theme .dw-dots .dw-dot {width: 15px;height: 15px;margin: 5px 7px;background: #ecece6;display: block;-webkit-backface-visibility: visible;transition: opacity 200ms ease;border-radius: 30px;border: 1px solid #fff;}
#relatedprod-carousel.dw-theme .dw-dots .dw-dot.active  {background: #c52432;}
#relatedprod-carousel.dw-carousel .dw-stage-outer {overflow: hidden;}
.category-theme {margin-top: -40px;flex-direction: row-reverse ; flex-wrap: wrap-reverse !important; align-items: center; gap: 1rem;}
.category-theme .dw-nav {width:max-content; display: flex; gap: 0.3rem;}
.category-theme .dw-nav button{width:max-content; width: 30px; height: 30px; background-color: #314377;}
.category-theme .dw-nav button:hover{background-color: #cb0e40;}
.category-theme .dw-dots{width:max-content;} 

.category-theme .dw-dots .dw-dot {background-color: transparent !important; border: none;  font-size:1.2em; color:#061931; width: auto; height: auto; display: flex; gap: 0.125rem;}
.category-theme .dw-dots .dw-dot.active:before {color: #314377; font-weight: 700;}
.category-theme .dw-dots .dw-dot:after {content: "/";}
.category-theme .dw-dots .dw-dot:last-child:after {display: none;}
.category-theme .dw-dots .dw-dot:nth-child(1):before {content: "1";}
.category-theme .dw-dots .dw-dot:nth-child(2):before {content: "2";}
.category-theme .dw-dots .dw-dot:nth-child(3):before {content: "3";}
.category-theme .dw-dots .dw-dot:nth-child(4):before {content: "4";}
.category-theme .dw-dots .dw-dot:nth-child(5):before {content: "5";}
.category-theme .dw-dots .dw-dot:nth-child(6):before {content: "6";}
.category-theme .dw-dots .dw-dot:nth-child(7):before {content: "7";}
.category-theme .dw-dots .dw-dot:nth-child(8):before {content: "8";}
.category-theme .dw-dots .dw-dot:nth-child(9):before {content: "9";}
.category-theme .dw-dots .dw-dot:nth-child(10):before {content: "10";}


.dw-carousel img {width: 100%; height: auto;}
.dw-carousel .dw-stage img {height: auto; width: auto; aspect-ratio: auto !important;}

 .vp-banner.index .dw-theme .dw-nav{padding: 0px 30px;max-width: 100%; position: absolute; top: 50%; left: 0px;}
 .vp-banner.index .dw-theme .dw-nav i {font-size: 3em;}

@media screen and (max-width: 767px) {
 .vp-banner.index .dw-theme .dw-nav {display: none;}
    .dw-theme .dw-nav [class*='dw-'] {font-size: 1.1em;}
    .dw-carousel .dw-prev, .dw-carousel .dw-next {width: 30px; height: 30px;}

}

@media screen and (max-width: 500px) {
.category-theme {margin-top: -50px;}
.category-theme .dw-dots {display: none;}

}

.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 {
    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;
}

/* 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; }
}

.dtp { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.4); z-index: 2000; font-size: 15px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.dtp > .dtp-content {background: #fff;max-width: 450px; width: calc(100vw - 30px); box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);position: relative;left: 50%;border-radius: 3px;overflow: hidden;}
.dtp > .dtp-content > .dtp-date-view > header.dtp-header {min-height: 30px; height: auto !important; background: #04032d; color: #fff; text-align: center; padding: 0.3em; font-size: 1.5em; }

.dtp div.dtp-date, .dtp div.dtp-time { background: #345995; text-align: center; color: #fff; padding: 10px; }
.dtp div.dtp-date > div { padding: 0; margin: 0; }
.dtp div.dtp-actual-month { font-size: 1.5em; }
.dtp div.dtp-actual-num { font-size: 3em; line-height: 0.9; }
.dtp div.dtp-actual-maxtime { font-size: 3em; line-height: 0.9; }
.dtp div.dtp-actual-year { font-size: 1.5em; color: #fff; }
.dtp div.dtp-picker { padding: 1em; text-align: center; }

.dtp div.dtp-picker-month, .dtp div.dtp-actual-time { font-weight: 500; text-align: center; }
.dtp div.dtp-picker-month { padding-bottom: 20px !important; text-transform: uppercase !important;  }

.dtp div.dtp-picker-year .year-picker-item { color: var(--black); }

.dtp .dtp-close { position: absolute; top: 4px; right: 1em; }
.dtp .dtp-close > a { color: #fff; }
.dtp .dtp-close > a > i { font-size: 1em; }

.dtp table.dtp-picker-days { margin: 0; min-height: 251px; width: 100%; }
.dtp table.dtp-picker-days, .dtp table.dtp-picker-days tr, .dtp table.dtp-picker-days tr > td { border: none; }
.dtp table.dtp-picker-days tr > td { font-weight: 500; font-size: 0.9em; text-align: center;  }
.dtp table.dtp-picker-days tr > td > span.dtp-select-day { color: #BDBDBD !important; }
.dtp table.dtp-picker-days tr > td > a, .dtp .dtp-picker-time > a {margin: 0 auto; color: #212121; text-decoration: none; width: 30px; height: 30px; display: flex; justify-content: center; align-items: center;  border-radius: 3px !important; }
.dtp table.dtp-picker-days tr > td > a.selected { background: #04032d; color: #fff; }
.dtp table.dtp-picker-days tr > td > a:hover {background-color: #04032d55;}
.dtp table.dtp-picker-days tr > th { color: #fff; text-align: center; font-weight: 700; padding: 0.4em 0.3em; }

.dtp .p10 > a { color: #fff; text-decoration: none; font-size: 1.4em; }
.dtp .p10 { width: 10%; display: inline-block; }
.dtp .p20 { width: 20%; display: inline-block; }
.dtp .p60 { width: 60%; display: inline-block; }
.dtp .p80 { width: 80%; display: inline-block; }

.dtp a.dtp-meridien-am, .dtp a.dtp-meridien-pm { position: relative; top: 10px; color: #212121; font-weight: 500; padding: 0.7em 0.5em; border-radius: 50% !important; text-decoration: none; background: #eee; font-size: 1em; }
.dtp .dtp-actual-meridien a.selected { background: #689F38; color: #fff; }

.dtp .dtp-picker-time > .dtp-select-hour { cursor: pointer; }
.dtp .dtp-picker-time > .dtp-select-minute { cursor: pointer; }

.dtp .dtp-buttons { padding: 0 1em 1em 1em; text-align: right; }

.dtp.hidden, .dtp .hidden { display: none; }
.dtp .invisible { visibility: hidden; }

.dtp .left { float: left; }
.dtp .right { float: right; }
.dtp .clearfix { clear: both; }

.dtp .center { text-align: center; }
.dtp-btn-cancel {min-height: 40px; background-color: #345995; color: #fff; font-size: 1.1em; font-weight: 500; text-align: center; line-height: 38px; height: 40px; border: 1px solid #ddd; width: 100px; float: left; cursor: pointer; }
.dtp-btn-cancel:hover { background-color: #e10a0a; }
.dtp-btn-ok {min-height: 40px; background-color: #345995; color: #fff; font-size: 1.1em; font-weight: 500; text-align: center; line-height: 38px; height: 40px; border: 1px solid #ddd; width: 100px; float: right; cursor: pointer; }
.dtp-btn-ok:hover { background-color: #e10a0a; }

@media screen and (min-width: 1230px) {
    .dtp div.dtp-picker-month {font-size: 1.1em; font-weight: 600;}
    .dtp table.dtp-picker-days tr>th {font-size: 1.1em;}
    .dtp table.dtp-picker-days tr>td>span.dtp-select-day {height: 40px; display: flex; justify-content:center; align-items: center; }
    .dtp table.dtp-picker-days tr>td {min-height: 50px; font-size: 1.1em;}
    .dtp table.dtp-picker-days tr > td > a, .dtp .dtp-picker-time > a {width: 40px; height: 40px;}
}
