/* Minification failed. Returning unminified contents.
(171,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(172,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(173,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(174,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(175,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(176,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(177,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(185,41): run-time error CSS1039: Token not allowed after unary operator: '-bodyCopy'
(185,65): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(187,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(188,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(189,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(190,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(191,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(192,24): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(207,72): run-time error CSS1039: Token not allowed after unary operator: '-red'
(213,65): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(214,92): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(222,101): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(223,74): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(224,46): run-time error CSS1039: Token not allowed after unary operator: '-red'
(232,154): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(238,81): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(240,73): run-time error CSS1039: Token not allowed after unary operator: '-red'
(241,61): run-time error CSS1039: Token not allowed after unary operator: '-red'
(268,40): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(269,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(271,116): run-time error CSS1039: Token not allowed after unary operator: '-red'
(283,121): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(285,34): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(285,112): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(286,153): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(289,61): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(292,81): run-time error CSS1039: Token not allowed after unary operator: '-red'
(293,81): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(293,217): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(296,81): run-time error CSS1039: Token not allowed after unary operator: '-red'
(297,68): run-time error CSS1039: Token not allowed after unary operator: '-red'
(297,92): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(298,68): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(299,81): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(309,227): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(317,78): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(344,78): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(344,189): run-time error CSS1039: Token not allowed after unary operator: '-red'
(347,37): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(363,67): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(388,74): run-time error CSS1039: Token not allowed after unary operator: '-red'
(392,76): run-time error CSS1039: Token not allowed after unary operator: '-red'
(393,49): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(394,96): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(408,103): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(412,126): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(428,89): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(432,72): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(433,61): run-time error CSS1039: Token not allowed after unary operator: '-red'
(438,77): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(438,214): run-time error CSS1039: Token not allowed after unary operator: '-red'
(443,114): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(485,45): run-time error CSS1039: Token not allowed after unary operator: '-lightGrey'
(493,89): run-time error CSS1039: Token not allowed after unary operator: '-red'
(493,181): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(494,133): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(494,174): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(494,250): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(497,61): run-time error CSS1039: Token not allowed after unary operator: '-red'
(508,53): run-time error CSS1039: Token not allowed after unary operator: '-red'
(516,158): run-time error CSS1039: Token not allowed after unary operator: '-bodyCopy'
(533,149): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(533,174): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(534,55): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(535,61): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(536,49): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(541,78): run-time error CSS1039: Token not allowed after unary operator: '-red'
(547,49): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(547,119): run-time error CSS1039: Token not allowed after unary operator: '-red'
(548,47): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(550,230): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(551,67): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(556,61): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(561,41): run-time error CSS1039: Token not allowed after unary operator: '-red'
(561,222): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(562,41): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(562,63): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(604,119): run-time error CSS1039: Token not allowed after unary operator: '-red'
(608,53): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(608,163): run-time error CSS1039: Token not allowed after unary operator: '-red'
(611,57): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(618,132): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(618,154): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(618,211): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(638,109): run-time error CSS1039: Token not allowed after unary operator: '-red'
(644,65): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(653,137): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(653,162): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(654,49): run-time error CSS1039: Token not allowed after unary operator: '-red'
(656,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(656,115): run-time error CSS1039: Token not allowed after unary operator: '-red'
(664,42): run-time error CSS1039: Token not allowed after unary operator: '-red'
(665,71): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(666,112): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(666,193): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(670,53): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(671,42): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(673,43): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(674,43): run-time error CSS1039: Token not allowed after unary operator: '-red'
(689,61): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(693,65): run-time error CSS1039: Token not allowed after unary operator: '-red'
(699,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(699,71): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(700,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(700,82): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(701,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(701,71): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(702,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(702,82): run-time error CSS1039: Token not allowed after unary operator: '-compressedFont'
(794,61): run-time error CSS1039: Token not allowed after unary operator: '-red'
(801,57): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(802,45): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(833,66): run-time error CSS1039: Token not allowed after unary operator: '-navy'
(836,71): run-time error CSS1039: Token not allowed after unary operator: '-red'
(849,122): run-time error CSS1039: Token not allowed after unary operator: '-yellow'
(851,61): run-time error CSS1039: Token not allowed after unary operator: '-smooth'
(855,108): run-time error CSS1039: Token not allowed after unary operator: '-red'
 */
ins,mark{color:#000}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section{display:block}dfn,mark{font-style:italic}button,hr,input{overflow:visible}a,progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0}body{line-height:1;margin:0}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;background:0 0;-webkit-text-decoration-skip:objects}ins{background-color:#ff9;text-decoration:none}mark{font-weight:700;background-color:#ff0}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;box-sizing:content-box;height:0}input,select{vertical-align:middle}.clearfix:after,.clearfix:before{display:table;line-height:0;content:""}audio,canvas,progress,video{display:inline-block}.clearfix:after{clear:both}input,select,textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}input[type=submit]{-webkit-appearance:none}ol li,ul li{font-size:inherit;color:inherit;line-height:inherit}/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}figure{margin:1em 40px}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-size:100%;line-height:1.15;margin:0;font-family:inherit}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}button,input[type=submit]{cursor:pointer;}
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* CUSTOM CHECKBOX */
.container {display: block; position: relative; padding-left: 35px; margin-bottom: 12px; cursor: pointer; font-size: 22px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
.container input {position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0;}
.checkmark {position: absolute; top: 0; left: 0; height: 25px; width: 25px; background-color: #eee;}
.container:hover input ~ .checkmark {background-color: #ccc;}
.container input:checked ~ .checkmark {background-color: #2196F3;}
.checkmark:after {content: ""; position: absolute; display: none;}
.container input:checked ~ .checkmark:after {display: block;}
.container .checkmark:after {left: 9px; top: 5px; width: 5px; height: 10px; border: solid white; border-width: 0 3px 3px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);}

/* RADIO RADIO */
.container.radio-container	.checkmark 			{border-radius: 25px;}
.container.radio-container .checkmark:after		{border:none; width: 11px; height: 11px; left: 50%; margin-left: -5.5px; top:50%; margin-top: -5.5px; border-radius: 5px; background-color: #ffffff}

/* FRONT END 

Checkbox

<label class="container">One
  <input type="checkbox" checked="checked">
  <span class="checkmark"></span>
</label>

Radio
<label class="container radio-container">One
  <input type="radio" checked="checked" id="radioOne" name="radioGroup">
  <span class="checkmark"></span>
</label>
<label class="container radio-container">Two
  <input type="radio" id="radioTwo" name="radioGroup">
  <span class="checkmark"></span>
</label>

*/

/* CUSTOM SELECT */
.select-css 			{display: block; font-size: 14px; line-height: 1.3; padding: .6em 1.4em .5em .8em; width: 100%;  max-width: 100%; box-sizing: border-box; margin: 0; border-radius: 5px; -moz-appearance: none; -webkit-appearance: none;   appearance: none;
						background-color: #eee; background-image: url(/_assets/select-arrow.png); background-repeat: no-repeat, repeat; background-position: right 1em top 50%, 0 0; background-size: 22px auto;}

.select-css::-ms-expand {display: none;}
.select-css:focus 		{border-color: #aaa;}
.select-css option 		{font-weight:normal;}




:root {
    
    --navy: #203967;
    --red:  #E2373F;
    --yellow:  #FFEB00;
    --lightGrey:  #F4F4F4;
    --bodyCopy: "trade-gothic-next", sans-serif;
    --compressedFont: "trade-gothic-next-compressed", sans-serif;
    --smooth: 0.5s cubic-bezier(0.5, 0, 0, 1);
}

* {margin:0; padding:0; outline:none; border:none; box-sizing:border-box; -moz-box-sizing:border-box; letter-spacing: -0.1px;}

/* GLOBAL */

html 	{scroll-behavior: smooth}
body 	{line-height:1; font-family: var(--bodyCopy); color: var(--navy);}

h1		{font-family: var(--compressedFont); font-weight: 800; font-size: 55px; letter-spacing: 0.3px;}
h2		{font-family: var(--compressedFont); font-size: 45px; letter-spacing: 0.3px;}
h3		{font-family: var(--compressedFont); font-size: 35px; letter-spacing: 0.3px;}
h4		{font-family: var(--compressedFont); font-size: 25px; letter-spacing: 0.3px;}
h5		{font-family: var(--compressedFont); font-size: 20px; letter-spacing: 0.3px;}
h6		{font-family: var(--compressedFont); font-size: 18px; letter-spacing: 0.3px;}

p		{line-height: 1.4em; font-size: 18px; margin-bottom: 1em;}

ul,
ol		{}

.cols   {display: flex; width: 100%;}

img     {max-width:100%; height:auto;}
a       {color:inherit;}
a.cover {position:absolute; left:0; top:0; width:100%; height:100%; background-color:rgba(0,0,0,0); display:block;}
.inner  {max-width:1350px; width:100%; margin:0 auto; padding: 0 25px}

/* HEADER */
header 			                {z-index: 20; border-bottom: 10px solid var(--red); background-color: #ffffff;position: sticky; top: 0}
header ul                       {list-style: none}
header .inner 	                {max-width: 100%; padding: 0; display: flex; justify-content: space-between; gap:20px;}
header .logo                    {width:200px; max-width: 100%; margin:15px 0 15px 25px; font-size: 0}

header .header-right                    {display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between;}
header .header-actions                  {background-color: var(--navy); padding:8px 25px; position: relative}
header .header-actions:before           {width: 50px; height: 100%; background-color: var(--navy); transform: skewX(20deg); content: ''; position: absolute; left: -20px; top: 0; z-index: 0}
header .header-actions ul               {display: flex; font-size: 18px; color: #ffffff; gap: 25px; position: relative; z-index: 5}
header .header-actions ul li            {display: flex; align-items: center; gap: 10px}
header .header-actions ul li a          {font-weight: 700; text-decoration: none}
header .header-actions ul li a:hover    {text-decoration: underline;}

nav                             {margin-right: 25px; position: relative; z-index: 10}
nav ul                          {display: flex;}
nav ul li                       {position: relative; font-size: 20px; font-weight: 700; color: var(--navy);}
nav ul li a                     {text-decoration: none; transition: var(--smooth);  padding: 25px 40px;}
nav ul li:hover > a             {color: var(--red);}
nav ul li a:before              {position: absolute; right: 0; height:25px; content: ''; display: block; width: 1px; background-color: #CCCCCC; top: 50%; margin-top: -8px; display: none}
nav ul li ul                    {position: absolute; left: -999999px; display: flex; flex-direction: column; width: 360px; opacity: 0; transition: opacity 0.3s ease-in-out;}

nav ul > li:last-child  ul      {}
nav ul > li:last-child:hover ul {left: auto; right: 0}

nav ul li a               {display: inline-flex; align-items: center}
nav ul li.dd:after        {display: block; width: 11px; height: 8px; background-image: url(/_uploads/_assets/icon-dd.svg); content: ''; transition: var(--smooth); position: absolute; right: 15px; top: 34px}
nav ul li:hover.dd:after  {transform: translateY(2px);}

nav ul li:hover ul   {left: 20px; opacity: 1;}

nav ul li ul li                     {font-size: 18px;}
nav ul li ul li a                   {padding: 12px 20px; background-color: var(--navy); color: #ffffff; display: flex; justify-content: space-between; border-bottom: 1px solid #ffffff;}
nav ul li ul li a:before,        
nav ul li ul li:last-child a:before {width: 8px; background-color: var(--red); height: calc(100% - 2px); top: 0px; margin-top: 0; display: block}
nav ul li ul li a:hover             {background-color: var(--red); color: #ffffff;}
nav ul li ul li a span              {width: 36px; display: flex; justify-content: center}
nav ul li ul li:last-child a        {border-bottom: none}

nav .close  {display: none}

nav ul li:last-child a:before   {}

/* HERO VIDEO */
.hero-video-container           {height: calc(100vh - 150px); position: relative; display: flex; flex-direction: column;}
.hero-video-container video     {position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: center} 
.hero-video-container h1        {font-size: 100px; margin-bottom: 0.35em; color: #ffffff}
.hero-video-container p         {font-size: 26px; margin-bottom: 0.25em; color: #ffffff; font-weight: 700;}
.hero-video-container .btn      {margin-top: 1.5em}

/*
.hero-video-container .btn  {position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%);}
.hero-video-container:after     {position: absolute; width: 60%; height: 100%; left: 0; top: 0; background: #203967; background: linear-gradient(90deg,rgba(32, 57, 103, 1) 0%, rgba(255, 255, 255, 1) 100%); content: ''; display: block; mix-blend-mode: multiply}
*/

.hero-video-container           {height: auto;}
.hero-video-container video     {position: relative; height: auto; width: 100%;}

.hero-video-container .inner    {position: relative; z-index: 5; height: 100%; display: flex; align-items: center}

/* HEADING */
.heading h1,
.heading h2         {font-family: var(--compressedFont); font-size: 45px; color: #ffffff; font-weight: 800; text-align: center}
.heading            {background-color: var(--navy); display: flex; justify-content: center; position: relative; padding: 10px 0 15px}
.heading hr,
.heading hr             {height: 10px; width: 40%; position: absolute; left: 0; top: -10px; background-color: var(--red); display: block; border: none; margin: 0}
.heading hr:last-child  {left: auto; right: 0; top: auto; bottom: -10px;}

.heading-container  {overflow: hidden; padding-bottom: 10px; padding-top: 10px;}

/* INSURANCE OPTIONS */
.insurance-listing          {padding:0 0 30px 0}
.insurance-listing .cols    {gap: 40px; margin: 60px 0 20px; flex-wrap: wrap;}
.insurance-listing .col     {flex: 0 0 calc((100% - (2 * 40px)) / 3);}

.insurance-card     {display: flex; flex-direction: column; text-align: center; text-decoration: none; position: relative; height: 100%;}
.ic-image-container {position: relative; overflow: hidden; padding-top: 64%; width: calc(100% - 30px); left: 15px;}
.ic-image           {position: absolute; inset:0; background-size: cover; background-position: center; transition: var(--smooth);}
.ic-text            {padding: 20px; display: flex; justify-content: center; position: relative; z-index: 5; flex: 1; align-items: center}
.ic-text p          {color: var(--navy); font-size: 20px; font-weight: 700; margin-bottom: 0; transition: var(--smooth);}
.insurance-card:before  {position: absolute; top:30px; bottom: 0; background-color: #efefef; width: 100%; content: ''; display: block; transition: var(--smooth);}

.insurance-card:hover .ic-image     {transform: scale(1.1);}
.insurance-card:hover:before        {background-color: var(--navy);}
.insurance-card:hover .ic-text p    {color: #ffffff;}

.insurance-card.enquiry-card:before                     {background-color: var(--red);}
.insurance-card.enquiry-card .ic-image-container        {background-color: var(--navy); padding: 0; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; transition: var(--smooth);}
.insurance-card.enquiry-card .ic-image-container p      {color: #ffffff; font-size: 28px; font-weight: 700; margin-top: 10px;}
.insurance-card.enquiry-card .ic-image-container svg    {transform: translateX(10px);}
.insurance-card.enquiry-card:hover .ic-image-container  {background-color: var(--red);}
.insurance-card.enquiry-card #pencil                    {fill:var(--red); transition: var(--smooth)}
.insurance-card.enquiry-card:hover #pencil              {fill:var(--navy);}
.insurance-card.enquiry-card:hover:before               {background-color: var(--navy);}

.insurance-listing-v2 .cols {justify-content: center}

/* JOURNEY */
.journey            {padding: 50px 0}
.journey .inner     {display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 80px auto 20px; max-width: 1700px;}
.logo-lockup        {width: 533px; max-width: 100%;}

/* ARROWS */
.slick-arrow {font-size: 0; width: 26px; height: 46px; background-image: url(/_uploads/_assets/slick-next.png); background-color: transparent; background-size: cover; position: absolute; top:50%; z-index: 10; transition: var(--smooth);}
.slick-next  {left: auto; right: 30px;}
.slick-prev  {left: 30px;  background-image: url(/_uploads/_assets/slick-prev.png);}

.slick-next:hover   {transform: translateX(5px)}
.slick-prev:hover   {transform: translateX(-5px)}

/* TESTIMONIALS */
.testimonials-container             {padding: 70px 0; background-color: var(--navy); margin-top: 10px; position: relative;}
.testimonials-container .cols       {gap: 40px; align-items: center; flex-direction: column}
.testimonials-container .col        {width: 100%;}
.testimonial-intro                  {width: 640px; max-width: 100%; text-align: center; margin: auto;}
.testimonial-intro p                {color: #ffffff; font-size: 24px; font-weight: 700}
.testimonials-carousel-container    {position: relative;}
.testimonials-carousel .slide       {width: 100%; padding: 50px; background-color: #ffffff; min-height: unset; height: auto}
.testimonials-carousel .slide p     {font-size: 20px;}
.testimonials-carousel .slide p:last-child  {margin-bottom: 0}

.testimonials-carousel-container .slick-next {right: 0}
.testimonials-carousel-container .slick-prev {left: 0}

.testimonials-carousel              {width: calc(100% - 100px); margin: auto}
.testimonials-carousel .slick-track {display: flex; gap: 20px;}

.five-stars                         {width: 204px; margin-bottom: 20px;}

/* CLAIMS */
.claims-listing         {padding: 50px 0}
.claims-listing .cols   {justify-content: center; gap: 40px; margin-top: 50px; width: 960px; max-width: 100%; margin-left: auto; margin-right: auto;}
.claims-listing .col    {flex: 0 0 calc((100% - (1 * 40px)) / 2);}

/* CONTENT HEADER */
.content-header     {height: 480px; position: relative; overflow: hidden; display: flex; align-items: center;}
.ch-image-container {position: absolute; inset:0;}
.ch-image           {position: absolute; inset:0; background-size: cover; background-position: center;}
.ch-text            {position: relative; z-index: 10; background-color: var(--navy); padding:10px 80px 15px; min-width: 540px; max-width: calc(100% - 25px); border-bottom: 10px solid var(--red);}
.ch-text h1         {color: #ffffff; font-size: 55px; text-transform: uppercase}

.byline     {background-color: var(--navy); text-align: center; padding: 10px 20px 15px;}
.byline h2  {color: #ffffff; text-transform: uppercase; letter-spacing: 1px; font-size: 45px;}

/* CONTENT DETAIL */
.insurance-detail                   {padding: 70px 0}
.insurance-detail .cols             {gap: 100px;}
.insurance-detail .col.col-right    {flex-shrink: 0; width: 440px;}
.insurance-detail .col.col-left     {flex: 1;}

.text ol,
.text ul,
.col-left ul,
.text p,
.col-left p                         {font-size: 18px; line-height: 1.6em}

.text .intro-copy p,
.col-left .intro-copy p             {font-size: 24px; color: var(--navy); font-weight: 700; line-height: 1.5em}

.text h1,
.col-left h1                        {font-size: 50px; margin:1em 0 0.5em}
.text h2,
.col-left h2                        {font-size: 45px; margin:1em 0 0.5em}
.text h3,
.col-left h3                        {font-size: 40px; margin:1em 0 0.5em}
.text h4,
.col-left h4                        {font-size: 35px; margin:1em 0 0.5em}
.text h5,
.col-left h5                        {font-size: 30px; margin:1em 0 0.5em}
.text h6,
.col-left h6                        {font-size: 25px; margin:1em 0 0.5em}

.text ol,
.col-left ol            {margin:2em 1em}

.text ul,
.col-left ul            {margin:2em 1em; list-style: none}

.text  ul li,
.col-left ul li         {position: relative; padding-left: 10px; margin-bottom: 0.5em}

.text ul li:before,
.col-left ul li:before  {width: 9px; height: 9px; background-color: var(--red); content: ''; position: absolute; left: -15px; top: 10px;}

/* ENQUIRY PANEL */
.enquiry-panel          {padding: 0 17px 17px 17px; position: relative;}
.enquiry-panel:after    {height: calc(100% - 50px); background-color: var(--red); content: ''; position: absolute; left: 0; bottom: 0; width: 100%;}
.enquiry-panel-inner    {background-color: var(--navy); position: relative; z-index: 5; padding: 30px;}
.enquiry-panel h3       {display: block; text-align: center; color: #ffffff; font-family: var(--compressedFont); text-transform: uppercase; letter-spacing: 1px; font-size: 45px; margin-bottom: 0.65em}
 .form-field-error,
.enquiry-panel .form-field-error    {color: #ffffff; background-color: red; padding: 3px 3px 5px;}
.enquiry-panel p        {color: white;}

/* OTHER PRODUCTS */
.other-product-grid         {margin-top: 70px;}
.other-product-grid .cols   {display: flex; gap: 0 !important; flex-wrap: wrap}
.other-product-grid .col    {width: 50%;}

.op-card                {display: flex; align-items: flex-end; position: relative; text-decoration: none}
.op-card.half-height    {height: 250px;}
.op-card.full-height    {height: 500px;}
.op-card:after          {background: #203967; background: linear-gradient(0deg,rgba(32, 57, 103, 1) 0%, rgba(255, 255, 255, 1) 100%); width: 100%; height: 100px; position: absolute; bottom: 0;mix-blend-mode: multiply; z-index: 4; display: block; content: ''; opacity: 0.8}
.op-text                {width: 100%; position: relative; z-index: 5; padding: 15px; transition: var(--smooth);}
.op-text p              {color: #ffffff; font-weight: 700; margin: 0; text-decoration: none}

.card-image-container   {position: absolute; inset: 0; overflow: hidden;}
.card-image             {position: absolute; inset: 0; background-size: cover; background-position: center; transition: var(--smooth);}

.op-card:hover .card-image  {transform: scale(1.1)}
.op-card:hover .op-text     {transform: translateY(-7px);}

/* MORE PRODUCTS */
.more-products                          {background-color: #f1f1f1;}
.more-products-carousel-container       {width:calc(100% - 60px); padding: 80px 0 60px; margin: auto}
.more-products-carousel .slick-track    {display: flex;}
.more-products-carousel .slick-slide    {height: auto}
.more-products-carousel .col            {margin: 0 20px;}
.more-products-carousel .slick-arrow    {}
.more-products-carousel .slick-next     {right: -30px; background-image: url(/_uploads/_assets/slick-next-navy.png)}
.more-products-carousel .slick-prev     {left: -30px; background-image: url(/_uploads/_assets/slick-prev-navy.png)}

.more-products-carousel-container .insurance-card:before        {background-color: #ffffff;}
.more-products-carousel-container .insurance-card:hover:before  {background-color: var(--navy);}

.carousel-nav       {display: flex; justify-content: center; margin-top: 40px;}
.carousel-nav ul    {list-style: none; font-size: 0; display: flex; gap: 8px;}
.carousel-nav ul li {width: 12px; height: 12px; background-color: var(--navy);}
.carousel-nav ul li.slick-active    {background-color: var(--red);}

/* LIABILITY PLUS */
.copy-container                         {width: 800px; max-width: 100%; margin: auto; text-align: center}
.two-col-split                          {overflow: hidden; margin-bottom: 60px;}
.two-col-split h2                       {font-size: 40px; font-family: var(--compressedFont); font-weight: 800; text-transform: uppercase; letter-spacing: 1px; display: inline-block; border-bottom: 1px solid var(--red); padding-bottom: 10px; margin-bottom: 1em}
.two-col-split .cols                    {gap: 80px; justify-content: space-between}
.two-col-split .col                     {width: calc(50% - 40px); position: relative; padding: 50px 0; display: flex; flex-direction: column;}
.two-col-split .col:first-child h2      {color: #ffffff;}
.two-col-split .col:first-child p       {color: #ffffff;}
.two-col-split .col:first-child:before  {position: absolute; width: 9999px; height: 100%; background-color: var(--navy); content: ''; display: block; right: -30px; top: 0; transform: skewX(-5deg);}
.two-col-split .col:last-child .btn     {margin:0.5em 0 1em 0}

.tcs-col-inner  {position: relative; z-index: 5; display: flex; flex-direction: column; padding: 0 30px; text-align: center; align-items: center; height: 100%;}
.tcs-col-text   {display: flex; align-items: flex-start; flex: 1; /*height: 100%;*/}

.two-col-split .key-contact {margin: 40px auto;}
.key-contact    {display: flex; gap: 20px; text-align: left}
.kc-image       {width: 140px; position: relative;}
.kc-image img   {position: absolute; width: 100%; height: 100%; object-fit: cover; object-position:top center;}

.two-col-split .col:first-child .tcs-col-text-inner {display: flex; flex-direction: column; justify-content: center; align-items: center;}

.key-contact .tiny-btn  {display: none}

/* LIABILITY PLUS LISTING */
.liability-plus-listing         {padding: 50px 0}
.liability-plus-listing .cols   {display: block; margin: 60px 0 20px; font-size: 0; width: calc(100% + 40px); margin-left: -20px;}
.liability-plus-listing .col    {width: 25%; display: inline-block; padding: 20px;}
.liability-plus-listing .insurance-card p                   {font-size: 20px;}
.liability-plus-listing .insurance-card span.btn            {font-size: 16px; width: calc(100% - 60px); display: block; margin:0 auto -25px auto}
.liability-plus-listing .insurance-card:hover span:after    {transform: translateX(0)}

.liability-plus-listing .insurance-card {min-height: 250px;}

.floater-expanded       {float: left; padding: 30px 20px; font-size: 18px; width: 100%; display: none}
.floater-expanded-inner {background-color: #ffffff;box-shadow: 0 0 20px rgba(0,0,0,0.2); padding: 40px 60px;}
.floater-expanded h2    {margin-bottom: 0.5em}
.floater-expanded ul,
.floater-expanded ol    {margin: 1em; line-height: 1.4em; font-size: 18px;}
.floater-expanded ul li,
.floater-expanded ol li {margin-bottom: 0.5em} 

.floater-expanded.open  {display: block}

.liability-plus-listing .col.active     {opacity: 1;}
.liability-plus-listing .col.inactive   {opacity: 0.5}

/* ABOUT PAGE */
.one-col-standard                           {padding: 70px 0 40px}
.one-col-standard .copy-container    {text-align: left;}

.grey-pullout       {background-color: var(--lightGrey); padding:40px 30px; margin: 40px 0}
.grey-pullout h3    {text-transform: uppercase; letter-spacing: 1px; margin-top: 0; margin-bottom: 0.5em}

/* BASIC CARD */
.basic-cards .cols  {gap: 25px; margin-top: 35px;}
.basic-cards .col   {flex: 0 0 calc((100% - (3 * 25px)) / 4);}

.basic-card         {position: relative; text-decoration: none; text-align: center;}
.basic-card:after   {position: absolute; right: -7px; top: -7px; background-color: var(--red); content: ''; display: block; width: 100%; height: 100%; z-index: 0; transition: var(--smooth)}
.basic-card-inner   {height: 100%; padding:30px 10px; position: relative; z-index: 5; text-decoration: none; background-color: var(--navy); color: #ffffff; transition: var(--smooth); text-transform: uppercase; letter-spacing: 1px; font-family: var(--compressedFont); font-weight: 800; width: 100%; display: flex; justify-content: center; align-items: center; font-size: 20px;}

.basic-card:hover:after   {transform: translate(-7px, 7px);}
.basic-card:hover .basic-card-inner {background-color: var(--red);}

/* CONTACT US PULLOUT */
.contact-pullout        {padding: 40px 0}
.contact-pullout .col:last-child    {display: flex;}
.contact-pullout .cols  {align-items: center; gap: 40px; justify-content: space-between;}
.contact-pullout h4     {font-size: 36px; margin-bottom: 1em}
.contact-pullout p      {font-size: 22px;}
.badge                  {width: 205px; height: auto; flex-shrink: 0}

/* CONTACT PAGE */
.two-col-split.version-2    {background-color: var(--red); color: #ffffff;}

.contact-basic-cards        {padding: 60px 0 80px}
.contact-basic-cards .cols  {justify-content: center}

.two-col-split.version-2 .tcs-col-text, 
.two-col-split.version-2 .tcs-col-text-inner  {width: 100%;}

.two-col-split.version-2 .col:first-child h3                    {font-size: 22px; font-weight: 700; color: #ffffff; margin-bottom: 0.25em; font-family: var(--bodyCopy);}
.two-col-split.version-2 .col:first-child p                     {font-size: 20px; color: #ffffff;}
.two-col-split.version-2 .col:first-child .tcs-col-inner,
.two-col-split.version-2 .col:last-child .tcs-col-inner         {text-align: left; align-items: flex-start}
.two-col-split.version-2 .col:first-child .tcs-col-text-inner   {align-items: flex-start}

.icon-text              {display: flex; justify-content: flex-start; margin-bottom: 20px; gap: 10px}
.icon-text p            {margin-bottom: 0;color: #ffffff; font-size: 20px;}
.icon-text p strong     {}
.icon-text .icon        {width: 25px; height: auto; display: flex; justify-content: center; align-items: center;}

.contact-map            {margin-bottom: 25px}
.contact-map iframe     {width: 100%; height: 300px;}

.connect-list   {display: flex; align-items: center;}

ul.connect-list                     {list-style: none; display: flex; align-items: center; font-size: 20px; gap: 15px;}
ul.connect-list li a                {width: 58px; height: 58px; display: flex; align-items: center; justify-content: center; background-color: var(--navy); transition: var(--smooth);}
ul.connect-list li a svg            {transition: var(--smooth);}
ul.connect-list li a:hover          {background-color: var(--yellow);}
ul.connect-list li a:hover svg path {fill: var(--navy) !important;}

/* THE TEAM */
.the-team       {text-align: center;}
.the-team h2    {text-transform: uppercase; letter-spacing: 1px; margin-bottom: 1em}
.the-team h3    {text-transform: uppercase; letter-spacing: 1px; color: var(--red); margin-top: 2rem;}
.the-team .col  {flex: 0 0 calc((100% - (2 * 25px)) / 3);}
.the-team .cols {margin-top: 40px; margin-bottom: 60px; flex-wrap: wrap; gap: 25px; justify-content: center;}
    
.the-team .cols:last-child  {margin-bottom: 0}

.the-team .key-contact  {background-color: var(--navy); padding: 20px; color: #ffffff; border-bottom: 10px solid var(--red); position: relative; height: 100%;}
.the-team .key-contact p a:hover  {color:var(--yellow);;}

.key-contact-overlay                {position: absolute; left: 0; top: 0; width: 100%; background-color: #ffffff; box-shadow: 0 0 15px rgba(0,0,0,0.2); z-index: 10; padding: 30px; opacity: 0; visibility: hidden; transition: var(--smooth); transform: translateY(-20px)}
.key-contact-overlay p              {font-size: 16px; color: var(--navy);}
.key-contact-overlay p:last-child   {margin-bottom: 0}
.key-contact-overlay.active         {visibility: visible; opacity: 1; transform: translateY(0)}

.key-contact-overlay .close         {width: 30px; height: 30px; background-size: 15px; cursor: pointer}
.key-contact-overlay .close:hover   {background-color: var(--navy);}

.kc-text p    {font-size: 16px;}
.kc-text p a    {word-break: break-all}

.tiny-btn       {background-color: var(--red); font-size: 12px; font-weight: bold; color: #ffffff; padding: 5px 8px; text-decoration: none; border-radius: 2px; display: inline-block; margin-bottom: 15px; transition: var(--smooth);}
.tiny-btn:hover {background-color: var(--yellow); color: var(--navy);}

/* BLOG CARD */
.blog-listing                       {padding: 80px 0}
.blog-listing .cols                 {gap: 40px; flex-wrap: wrap}
.blog-listing .col                  {flex: 0 0 calc((100% - (2 * 40px)) / 3); margin-bottom: 15px;}
.blog-card                          {position: relative; display: flex; flex-direction: column; justify-content: space-between; height: 100%;}
.blog-card .card-image-container    {position: relative; padding: 0; height: 250px; margin-bottom: 20px;}
.blog-card                          {text-decoration: none}
.blog-card p.date                   {font-size: 14px;}
.blog-card h3                       {font-size: 30px; margin-bottom: 0.5em}

.blog-card:hover .btn:after     {transform: translateX(0)} 
.blog-card:hover .card-image    {transform: scale(1.1)}

.blog-card .btn {width: 100%; font-size: 18px;}

.latest-blog-listing .cols  {margin-top: 50px;}

/* DOWNLOAD LIST */
.download-list span.dl-icon     {width: 36px; height: 36px; background-image: url(/_uploads/_assets/icon-download.png); background-size: cover; display: block; flex-shrink: 0}
.download-list                  {margin: 40px 0 !important}
.download-list li               {font-size: 20px; font-weight: 700; line-height: 1.2em;  gap: 10px; margin-bottom: 0 !important; padding-left: 0 !important}
.download-list li:before        {display: none}
.download-list li div           {display: flex; align-items: center; gap: 10px;}
.dl-list-item                   {display: flex; align-items: center; border-bottom: 1px solid #dddddd; padding: 20px 0; justify-content: space-between;}
.dl-list-item .btn              {width: auto; padding: 10px 20px; font-size: 16px; flex-shrink: 0}

/* TEXT PAGE */
.text-page          {padding: 70px 0}
.text-page h1       {margin-bottom: 0.75em}
.text-page h2       {margin-bottom: 1em}
.text-page h3       {margin: 1em 0 0.5em}
.text-page .inner   {width: 960px;}

/* TEXT COMPLAINTS AGE */
.text-page li       {margin-bottom: 10px;}
.text-page td       {border: 1px solid black; padding: 10px;}
.text-page ul       {margin-left: 20px; line-height: 1.4rem; font-size: 18px;}


/* CONTACT COL CARD */
.col-contact-card                           {background-color: #f1f1f1; padding: 20px; border-bottom: 10px solid var(--red);}
.col-contact-card .key-contact-container    {margin-top: 30px;}

/* FORM PAGE */
.content-header.basic       {background-color: var(--navy); height: auto; display: flex; justify-content: center; padding: 70px 0; border-bottom: 10px solid var(--red);}
.content-header.basic h1    {color: #ffffff; text-transform: uppercase}

.form-section                   {background-color: var(--navy); padding: 60px 0}
.form-section .inner            {width: 870px; max-width: 100%; text-align: center;}
.form-section p                 {color: #ffffff;}
.form-section .form-container   {margin: 40px auto}
.form-section .form-row-submit  {margin-top: 30px;}

.form-cell-payment                      {position: relative;}
.form-cell-payment:before               {position: absolute; width: 50px; height: 100%; text-align: center; background-color: var(--yellow); color: var(--navy); font-size: 38px; content: '£'; font-family: var(--compressedFont); font-weight: 800; display: flex; justify-content: center; align-items: center}
.form-cell-payment input[type='text']   {padding-left: 60px;}
.form-cell-payment input[type='number']   {padding-left: 60px;}

.form-row h3               {color: white;}
.payment-code           {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px;}
.payment-code p         {text-align: center; margin: 0;}
.payment-code input     {width: 60%!important; text-align: center;}

/* POPUP */
.popup-background 	    {position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 99; display: none;}
.popup-content		    {position: absolute; background-color: #ffffff; box-shadow: 0 0 30px rgba(0,0,0,0.2); width: 1120px; padding:0px; max-width: 100%; left: 50%; transform: translate(-50%, -100px); top: 80px; height:calc(100vh - 150px); max-height: 768px; font-size: 0; z-index: 100;}
.popup-content			{transition:0.5s ease-out; text-align: center; color: #ffffff;}	
.popup-content h2       {font-size: 45px; margin-bottom: 0.35em}
.popup-content.animated	{transform: translate(-50%, 0);}	

.popup-background:after {position: fixed; left: 0; top: 0; width: 100%; height: 100%; content: ''; background-color: rgba(255,255,255,0.85);}

.popup-inner    {padding: 40px;}

.close		{position:absolute; right:0; top:0; z-index: 110; width: 45px; height: 45px; background-color: var(--red); background-image: url(/_uploads/_assets/icon-close.svg); background-position: center; background-repeat: no-repeat;}	
.click-out	{position:fixed; width: 100%; height: 100%; top:0; left:0;}	

.popup-inner .form-row-submit   {margin-top: 35px;}

/* POPUP ENQUIRY */
.popup-enquiry .popup-content           {background-color: var(--navy); width: 750px; height: auto; max-width: calc(100% - 40px);}
.popup-enquiry .enquiry-panel-inner     {padding-bottom: 0}
.popup-enquiry .form-field-error        {     color: #ffffff; background-color: red; padding: 3px 3px 5px;font-size: 16px; }
.popup-enquiry .error-panel             {font-size: 16px;}

/* FOOTER */
footer	         {padding: 50px 0 0;}

.footer ul              {display: flex; gap: 20px; justify-content: center; list-style: none}
.footer ul li a         {width: 58px; height: 58px; display: flex; justify-content: center; align-items: center; background-color: var(--navy); transition: var(--smooth);}
.footer ul li a:hover   {background-color: var(--red);}

.footer-sign-off    {background-color: var(--navy); padding: 50px 0; margin-top: 50px; border-top:10px solid var(--red);}
.footer-sign-off p  {color: #ffffff; font-size: 13px; line-height: 1.5em}

.footer-sign-off ul             {display: flex; font-size: 13px; gap: 10px; list-style: none; margin-top: 30px;}
.footer-sign-off ul li a        {color: #ffffff; text-decoration: underline}
.footer-sign-off ul li a:hover  {text-decoration: none}

/* BUTTONS */
.btn	            {background-color: var(--red); cursor: pointer; color: #ffffff; position: relative; border-radius: 3px; font-size: 22px; text-transform: uppercase; letter-spacing: 1px; display: inline-block; padding: 20px; text-align: center; width: 350px; max-width: 100%; font-weight: 700; text-decoration: none; overflow: hidden;}
.btn span           {position: relative; z-index: 5; transition: var(--smooth); display: block}
.btn:after          {position: absolute; left: 0; top: 0; transform: translateX(-100%); background-color: var(--navy); width: 100%; height: 100%; content: ''; display: block; transition: var(--smooth);}
.btn:hover:after    {transform: translateX(0)}
.btn:hover span     {transform: translateX(5px);}

.btn.alt-hover:after        {background-color: var(--yellow);}
.btn.alt-hover:hover span   {color: var(--navy);}

.btn.blue         {background-color: var(--navy);}
.btn.blue:after   {background-color: var(--red);}

/* FORM STYLES */
.form-container			{width: 100%;}
.form-row				{width: 100%; margin-bottom: 10px; text-align: left;}
.form-cell				{width: 100%;}

.form-row-submit        {display: flex; justify-content: center}

.form-row.split             {display: flex; gap: 10px; justify-content: space-between;}
.form-row.split .form-cell  {width: calc(50% - 5px);}

textarea,
input[type="text"],
input[type="number"],
input[type="file"]      {font-size: 22px; font-family: var(--compressedFont); font-weight: 800; width: 100%; padding: 12px; line-height: 1em}
input[type="password"]	{}
input[type="submit"]	{}
input[type="file"]      {background-color: white; margin-top: 10px; }
input[type=file]::file-selector-button  {background-color: var(--red); cursor: pointer; color: white; text-transform: uppercase; letter-spacing: 1px; border-radius: 3px; font-size: 12px; font-weight: 700; border: none; padding: 0 12px;}
label                   {color: white; font-size: 22px;}
textarea				{height: 140px;}


/* PLACEHOLDER */
::-webkit-input-placeholder     {color:var(--navy); font-family: var(--compressedFont); font-weight: 800; text-transform: uppercase; letter-spacing: 1px;}
::-moz-placeholder              {color:var(--navy); opacity:1; font-family: var(--compressedFont); font-weight: 800; text-transform: uppercase; letter-spacing: 1px;}
:-ms-input-placeholder          {color:var(--navy); font-family: var(--compressedFont); font-weight: 800; text-transform: uppercase; letter-spacing: 1px;}
:-moz-placeholder               {color:var(--navy); opacity:1; font-family: var(--compressedFont); font-weight: 800; text-transform: uppercase; letter-spacing: 1px;}


/* SELECT CSS */
.select-css				{}

/* LEGACY COOKIE BAR */
.cookieBar              {width: 100%; background-color:rgba(0,0,0,0.5); position: fixed; bottom: 0px; left: 0px; text-align: center; padding: 10px 10px; z-index: 99999999;}
.cookieBar p			{color:#ffffff; font-size:14px; font-family:inherit; line-height:1.5em; text-align:center; display:inline-block;}
.cookieBar .acceptBtn   {background:#000; border:1px solid #DEDEDE; font-weight:bold; display:inline-block; margin-top:6px; margin-left:5px; font-family:inherit; font-size:12px; padding:5px 10px; text-decoration:none; color:#FFF; text-transform:uppercase; }






.header-actions .mb {display: none}


/* IE10+ SPECIFIC STYLES GO HERE. IE10+ NO LONGER SUPPORT CONDITIONAL STATEMENTS IN THE HEAD OF A FILE */ 
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  

}


@media (max-width: 1180px) 
{
    /* NAV */
    header .logo    {width: 180px;}
    
    nav ul li   {font-size: 20px;}
    nav ul li a {padding: 25px 30px;}
    nav ul li.dd:after  {top: 34px;}
    
    header .header-actions ul   {font-size: 16px;}
    
    /* INSURANCE DETAIL PAGE */
    .insurance-detail .cols             {gap:50px;}
    .insurance-detail .col.col-right    {width: 393px;}
    
    /* THE TEAM */
    .the-team .col {flex: 0 0 calc((100% - (1 * 25px)) / 2);}
    
}

@media (max-width: 1000px) 
{
    /* NAV */
    header .logo    {width: 180px;}
    
    nav ul li,
    nav ul li ul li     {font-size: 16px;}
    nav ul li a         {padding: 20px;}
    
    header .header-actions ul   {font-size: 14px;}
    
    nav ul li.dd a      {padding-right: 32px;}
    nav ul li.dd:after  {top: 27px;}

    /* INSURANCE OPTIONS CARD */
    .heading h1, .heading h2    {font-size: 40px;}
    .ic-text p  {font-size: 18px;}
    .insurance-card.enquiry-card .ic-image-container p  {font-size: 20px;}
    
    /* TESTIMONIALS */
    .testimonial-intro p,
    .testimonials-carousel .slide p {font-size: 18px;}
    .slick-arrow                    {width: 20px; height: 35px;}
    .testimonials-carousel .slide   {}
    .slick-prev                     {left: 0px;}
    .slick-next                     {right: 0px;}
    
    /* LIABILITY PLUS */
    .liability-plus-listing .col                {width: 33.333%;}
    .liability-plus-listing .insurance-card p   {font-size: 18px;}

    /* TEXT PAGE */
    .text-page .inner   {width: 100%;}
}

@media (max-width: 900px) 
{
    /* HEADER */
    header .logo            {margin-top: 15px; margin-bottom: 15px; width: 140px}
    header .header-actions  {width: 100%;}
    header .header-actions:before   {left: -10px}
    
    .header-actions .dk     {display: none}
    
    nav ul li.dd:after {top: 22px;}
    nav ul li a {padding-top: 15px; padding-bottom: 15px}
    
    .header-actions .mb-nav-icon    {background-color: var(--red);}
    .header-actions .mb {align-items: center}
    .mb-nav-icon    {width: 35px; height: 35px;}
    li.mb-nav-icon    {overflow: hidden;  border-radius: 35px;}
    .mb-nav-icon a  {display: flex; align-items: center; justify-content: center; height: 100%; width: 100%;}
    .mb-nav-icon a svg  {width: 20px; height: auto; fill: #ffffff;}
    
    .mb-nav-icon a:hover        {background-color: var(--yellow)}
    .mb-nav-icon a:hover svg    {fill: var(--navy) !important}
    
    header .header-actions      {width: auto; padding: 8px 25px 8px 15px;}
    header .header-actions ul   {gap: 15px;}
    
    .header-actions .mb {display: flex}
    
    .testimonials-carousel .slick-track {gap:0}
    
    /* INSURANCE DETAIL PAGE */
    .insurance-detail                   {padding: 50px 0}
    .insurance-detail .cols             {gap:40px; flex-direction: column}
    .insurance-detail .col.col-right    {width: 100%;}

    .one-col-standard   {padding: 50px 0}
    
    .other-product-grid .cols   {flex-direction: row}
    
    /* BLOG POST */
    .blog-listing        {padding: 50px 0}
    .blog-listing .col  {flex: 0 0 calc((100% - (1 * 40px)) / 2);}
    
}

@media (max-width: 800px) 
{
    .inner  {padding-left: 20px; padding-right: 20px;}
    
    /* HEADER */
    header .header-actions  {padding: 5px 10px;}
    
    nav                 {position: fixed; background-color: var(--navy); width: 100%; height: 100vh; left: 0; top: 0; z-index: 999; padding-top: 50px; transform: translateX(-100%); overflow-y: auto}
    nav > ul            {width: 100%; flex-direction: column; border-top: 0.5px solid #ffffff}
    nav ul li           { font-size: 20px; border-bottom: 0.5px solid #ffffff;}
    nav ul li a         {color: #ffffff; border-right: 8px solid var(--red); width: 100%;}
    nav ul li a:before  {display: none}
	
    nav ul li ul                {left: auto !important; position: relative; width: 100%; display: none; border-top:0.5px solid #ffffff; opacity: 1;}
    nav ul li ul li             {padding-left: 0; border-bottom: none}
    nav ul li ul li a           {border-bottom: none;  background-color: rgba(0,0,0,0.25);}
    nav ul li ul li:last-child  {border-bottom: none}
    
    nav ul li.dd        {cursor: pointer}
    nav ul li.dd > a      {pointer-events: none; padding-right: 20px;}
    
    nav ul li.dd ul.active  {display: block}
    
    nav .close  {display: block; width: 40px; height: 40px; position: absolute; right: 0; top: 0; background-color: var(--yellow); background-image: url(/_uploads/_assets/icon-close-navy.svg); cursor: pointer;}
    
    nav.open    {transform: translateX(0); transition: var(--smooth);}
    
	/* MOBILE NAV */
	.hamburger 						{width: 30px; height: 22px; flex-shrink: 0; z-index: 50; margin: 0; cursor: pointer; position: relative; display: block; top: auto; right: auto;}
	.hamburger span 				{width: 100%; display: block; height: 4px; border-radius: 1px; background-color: var(--red); position: absolute; top: 0; left: 0; transition: 0.2s ease-out; }
	.hamburger span:nth-child(1) 	{}
	.hamburger span:nth-child(2) 	{top: 9px;}
	.hamburger span:nth-child(3) 	{top:auto; bottom: 0;}

	.hamburger.open 	 				{}
	.hamburger.open span:nth-child(1) 	{top: 7px; transform: rotate(45deg) scaleX(-1);}
	.hamburger.open span:nth-child(2) 	{opacity: 0; transform: scale(0)}
	.hamburger.open span:nth-child(3) 	{top: 7px; transform: rotate(-45deg) scaleX(-1);}
    
    header .header-right            {align-items: center; padding-right: 15px;}
    
    header .header-actions          {background-color: transparent; margin-right: 5px;}
    header .header-actions:before   {display: none}
    
    /* HEADER */
    header                  {}
    header .logo            {margin-left: 15px; width: 160px; margin-top: 15px;}
    header .header-actions  {text-align: right;}
    .header-actions .mb     {justify-content: center}
    
    header .header-actions ul   {gap: 10px;}
    
    header .header-right    {flex-direction: row}
    
    /* TESTIMONIALS */
    .testimonials-container .cols   {flex-direction: column}
    .testimonials-container .col    {width: 550px; max-width: 100%; margin-left: auto; margin-right: auto;}
    
    /* BTN */
    .btn    {font-size: 18px;}
    
    /* INSURANCE OPTIONS */
    .insurance-listing          {padding-bottom: 0}
    
    .claims-listing .cols,
    .insurance-listing .cols    {gap: 25px;}
    
    .insurance-listing .col     {flex: 0 0 calc((100% - (2 * 25px)) / 3);}
    .insurance-listing .col:last-child  {flex: 1;}

    .insurance-card.enquiry-card .ic-image-container    {padding: 30px 0}
    .insurance-card.enquiry-card .ic-image-container p  {margin-bottom: 0}
    
    .claims-listing .col {flex: 0 0 calc((100% - (1 * 25px)) / 2);}
    
    /* LIABILITY PLUS */
    .two-col-split          {margin-bottom: 0}
    .two-col-split .cols    {flex-direction: column; gap: 0}
    .two-col-split .col     {width: 100%;}
    .two-col-split .col:first-child:before  {transform: none;}

    /* LIABILITY PLUS */
    .liability-plus-listing .cols   {width: calc(100% + 20px); margin-left: -10px;}
    .liability-plus-listing .col    {padding: 10px; margin-bottom: 10px;}
    
    /* THE TEAM */
    .the-team   {padding-top: 50px;}
    
}

@media (max-width: 768px)
{
    .text-page table {min-width: 768px;}
    .text-page table.terms-table {min-width: 320px;}
    .scroll-table   { width: 100%; overflow-x: scroll; box-shadow: inset -10px 0 10px -7px #666;}
}


@media (max-width: 700px) 
{
    /* INSURANCE OPTIONS */
    .insurance-listing .cols    {gap: 25px;}
    .insurance-listing .col     {flex: 0 0 calc((100% - (1 * 25px)) / 2);}
    
    /* LIABILITY PLUS */
    .liability-plus-listing .cols   {width: calc(100% + 20px); margin-left: -10px;}
    .liability-plus-listing .col    {width: 50%}
    .liability-plus-listing         {padding-bottom: 0}
    
    /* INSURANCE DETAIL PAGE */
    .ch-text    {min-width: unset; padding: 15px 25px;}
    .ch-text h1 {font-size: 45px;}
}

@media (max-width: 640px) 
{
    .btn        {max-width: 100%; width: auto}
    
    .popup-content  {top: 30px}
    
    /* ABOUT */
    .basic-cards .cols  {flex-wrap: wrap}
    .basic-cards .col   {flex: 0 0 calc((100% - (1 * 25px)) / 2);}
    .contact-pullout        {padding-bottom: 0}
    .contact-pullout .cols  {flex-direction: column; text-align: center; gap: 30px;}
    .basic-cards h3         {text-align: center}
    .grey-pullout           {width: calc(100% + 40px); margin-left: -20px;}
    
    /* POPUP */
    .enquiry-panel-inner    {padding-left: 0; padding-right: 0;}
    
    /* THE TEAM */
    .the-team .col {flex: 0 0 100%;}
    
    /* FOOTER */
    .footer-sign-off ul {flex-direction: column}
    
}

@media (max-width: 500px) 
{
    .heading h1, .heading h2    {font-size: 30px;}
    
    /* INSURANCE OPTIONS */
    .ic-text    {padding-left: 10px; padding-right: 10px;}
    .ic-text p  {font-size: 14px;}
    .ic-image-container {width: calc(100% - 14px); left: 7px;}
    
    .insurance-listing .cols    {margin-top: 30px;}
    
    /* LIABILITY PLUS */
    .liability-plus-listing .insurance-card p {font-size: 14px;}
    .liability-plus-listing .insurance-card span.btn    {font-size: 14px; padding: 15px 20px}
    .liability-plus-listing .insurance-card     {min-height: 210px;}
    .floater-expanded-inner     {padding: 30px;}
    .floater-expanded h2        {font-size: 35px;}
    
    /* TESTIMONIALS */
    .testimonials-carousel .slide p {font-size: 16px;}
    
    /* INSURANCE DETAIL PAGE */
    .text .intro-copy p,
    .col-left .intro-copy p     {font-size: 20px;}
    .insurance-detail           {padding: 30px 0}
    .content-header             {height: 100vw}
    .ch-text h1                 {font-size: 40px;}
    .byline h2                  {font-size: 30px;}
    
    .more-products-carousel-container   {padding-top: 50px; padding-bottom: 40px;}
    .more-products-carousel .col        {margin: 0 10px;}
    
    .other-product-grid .cols   {flex-direction: column}
    .other-product-grid .col    {width: 100%;}
    .op-card.full-height        {height: 250px;}
    .other-product-grid         {margin-top: 40px;}
    
    /* AHOUT */
    .one-col-standard   {padding: 30px 0}
    .basic-card-inner   {font-size: 18px;}
    
    /* POPUP */
    .form-row.split .form-cell          {width: 100%;}
    .form-row.split,
    .popup-content .form-row.split      {flex-direction: column}
    .popup-enquiry .enquiry-panel-inner {padding-top: 0}
    .popup-inner {padding: 45px 30px;}
    
    /* FOOTER */
    .footer-sign-off p  {font-size: 14px;}
    
    /* THE TEAM */
    .kc-image               {width: 110px;}    
    .the-team .key-contact  {padding: 15px;}
    .the-team h2            {margin-bottom: 0.5em}
    
    /* BLOG */
    .blog-card .card-image-container    {height: 150px;}
    .blog-card p                        {font-size: 14px;}
    .blog-card .btn                     {font-size: 12px; padding: 15px;}
    
    /* CLAIMS */
    .claims-listing         {padding: 30px 0}
    .claims-listing .cols   {margin-top: 30px;}
    
    /* DOWNLOADS */
    .download-list li   {font-size: 16px;}
    .dl-list-item .btn  {font-size: 14px;}
    .download-list span.dl-icon {width: 30px; height: 30px;}
}

@media (max-width: 414px) 
{
    .ch-text h1     {font-size: 30px;}   
    .byline h2      {font-size: 25px;}
    
    /* LIABILITY PLUS */
    .liability-plus-listing .insurance-card             {height: 190px;}
    .liability-plus-listing .insurance-card p           {font-size: 14px;}
    .liability-plus-listing .insurance-card span.btn    {font-size: 12px; padding: 15px}
    
    /* BLOG */
    .blog-listing                       {padding: 30px 0;}
    .blog-card h3                       {font-size: 22px;}
    .blog-listing .cols                 {gap: 20px;}
    .blog-listing .col                  {flex: 0 0 calc((100% - (1 * 20px)) / 2);}
    .blog-card p.date                   {font-size: 10px;}
    .blog-card .card-image-container    {height: 110px; margin-bottom: 10px;}
}

@media (max-width: 360px) 
{
    /* SAMSUNG GALAXY S5 */
}

@media (max-width: 320px) 
{
    /* IPHONE 5 */
}
