@import url(https://cdnjs.cloudflare.com/ajax/libs/material-design-iconic-font/2.2.0/css/material-design-iconic-font.min.css);


#nav-account, #nav-reminders, #user-actions, #account-prompt
{
    display : none;
}


#ph-brand-106, #ph-brand-164, #ph-brand-165, #ph-brand-167
{
    display : none;
}


/* Global Resets */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, hr, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figure, figcaption, hgroup, menu, footer, header, nav, section, summary, time, mark, audio, video
{
    margin  : 0;
    padding : 0;
    border  : none;
}


html
{
    -webkit-text-size-adjust : none; /* Prevent font scaling in landscape */
}


html, body
{
    /*height : 100%; Causing mm-menu top-jump!! */
}


html.ie, html.ie body
{
    /*height : auto;*/
}


*
{
    box-sizing      : border-box;
    -moz-box-sizing : border-box;
}


/* HTML5 Element Styles for Older Browser Support with JS */
article, aside, canvas, figure, figure img, figcaption, hgroup, footer, header, nav, section, audio, video
{
    display : block;
}


/* Global Styles */
fieldset, img, a img
{
    border : 0;
}


a
{
    text-decoration : none;
}


main a
{
    color : #5DB2F2;
}


:target:before
{
    content : "";
    display : block;
    height  : 120px; /* fixed header height*/
    margin  : -120px 0 0; /* negative fixed header height */
}


ul, ol
{
    margin     : 0;
    padding    : 0;
    list-style : none;
}


:focus
{
    outline : 0;
}


input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
{
    -webkit-appearance : none;
    margin             : 0;
}


input[type='button'], input[type='submit']
{
    -webkit-appearance : none;
}


input[type=number]
{
    -moz-appearance : textfield;
}


input[type=checkbox], input[type=radio]
{
    margin-right : 12px;
}


input[type=checkbox]:before, input[type=radio]:before
{
    content             : "";
    display             : block;
    width               : 24px;
    height              : 24px;
    background-color    : #F2F2F2;
    background-size     : 100%;
    background-position : center center;
    box-shadow          : 0 0 0 2px rgba(0, 0, 0, 0.2) inset;
    cursor              : pointer;
    /*margin-left         : -4px;
    position            : absolute;
    left                : -4px;*/
    margin-top          : -2px;
}


html.ios input[type=checkbox]:before, input[type=radio]:before
{
    top : 0;
}


input[type=radio]:before
{
    border-radius : 50%;
}


input[type=checkbox]:hover:before, input[type=radio]:hover:before
{
    box-shadow : 0 0 0 2px #5DB2F2 inset;
}


input[type=checkbox]:focus:before, input[type=radio]:focus:before
{
    box-shadow : 0 0 0 2px #555555 inset;
}


input[type=checkbox]:checked:before, input[type=radio]:checked:before
{
    background-color : #5DB2F2;
    background-image : url(../images/check.png);
}


input[type=checkbox]:disabled:before, input[type=radio]:disabled:before
{
    box-shadow       : 0 0 0 2px #777777 inset;
    background-color : #AAAAAA;
    cursor           : default;
}


select::-ms-expand
{
    display : none;
}


input::-ms-clear
{
    display : none;
}


.dp + i
{
    position       : absolute;
    margin-left    : -18px;
    margin-top     : 5px;
    pointer-events : none;
}


.az-provider
{
    font-weight : bold;
}


html.chrome.touch select
{
    padding-left : 0 !important;
}


body
{
    overflow-x : hidden;
}


body, input, textarea, select, button
{
    font-family : sans-serif;
}


body, input, textarea, select, a
{
    color : #333333;
}


input, select, textarea
{
    -webkit-border-radius : 0;
    margin                : 0;
    border                : 0;
    padding               : 4px;
    font-size             : 13px;
    min-height            : 26px;
    vertical-align        : top;
    background            : #FFFFFF;
}


input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill
{
    box-shadow              : 0 0 0 1000px #FFFFFF inset !important;
    background-color        : #FFFFFF;
    background-image        : none;
    color                   : #333333;
    -webkit-text-fill-color : #333333;
}


table
{
    border-collapse : separate;
    border-spacing  : 0;
}


caption, th, td
{
    text-align  : left;
    font-weight : normal;
}


h1
{
    font-size   : 42px;
    line-height : 42px;
    margin      : 0;
    font-weight : 200;
}


h2, h3, h4, h5
{
    font-weight : 300;
    margin      : 0;
}


h2
{
    font-size : 30px;
}


h2 > a:only-child
{
    color           : inherit;
    text-decoration : none !important;
}


html[data-pha-g="23"] .ph-promise-container
{
    display : none;
}


#wrapper
{
    background : #FFFFFF;
    position   : relative;
}


.mm-ismenu
{
    margin : 0;
}


.mm-ismenu, .mm-ismenu a
{
    color : #FFFFFF;
}


.mm-menu .close
{
    position       : absolute;
    right          : 6px;
    top            : 0;
    bottom         : 0;
    display        : block;
    margin         : auto 0;
    width          : 48px;
    font-size      : 12px;
    text-align     : center;
    letter-spacing : normal;
    height         : 48px;
    color          : #FFFFFF;
    border-color   : #FFFFFF;
    line-height    : 48px !important;
}


.mm-menu .close:hover
{
    color      : #333333;
    background : #FFFFFF;
}


.mm-menu .close, .mm-menu .close:active
{
    padding : 0;
}


.mm-menu h2
{
    background  : #555555;
    height      : 52px;
    font-size   : 33px;
    line-height : 52px;
    padding     : 0 72px 0 12px;
    white-space : nowrap;
    width       : 100%;
    display     : table;
    position    : relative;
}


.mm-menu h2 span
{
    display        : table-cell;
    vertical-align : middle;
}


.mm-menu h2.twolines
{
    font-size   : 24px;
    line-height : 24px;
    white-space : normal;
}


.mm-menu .liner
{
    padding : 24px;
}


.mm-menu > .mm-list
{
    padding-top : 0 !important;
}


.mm-panel h2.pane-title, #pane-content
{
    margin  : 10px;
    padding : 0;
}


.mm-panel .content
{
    padding : 0;
}


.mm-panel .content h2
{
    color       : #FFFFFF;
    font-family : ArialRoundedRegular, Arial, sans-serif;
    margin      : 20px 0 10px;
}


.mm-panel .content .wholemeal_breadcrumbs
{
    display : none;
}


.mm-panel .content p
{
    margin : 10px 0;
}


.mm-list > li:not(.mm-subtitle):not(.mm-label):not(.mm-noresults):after
{
    border-bottom-style : none !important;
}


.mm-list .ph-feature-box
{
    line-height    : 22px;
    padding-bottom : 4px;
    color          : #333333;
    margin         : 10px 0 !important;
}


.mm-list .ph-feature-box a
{
    color           : #333333;
    text-decoration : underline;
}


.side-panel
{
    padding : 12px;
}


.side-panel h3, .side-panel p, .side-panel ul
{
    margin : 0 0 12px 0;
}


.side-panel ul
{
    list-style-type     : square;
    list-style-position : outside;
    padding-left        : 16px;
}


.side-panel .spread
{
    background : #999999;
    margin     : 12px -12px;
    padding    : 6px 12px;
    width      : auto;
    display    : block;
}


.side-panel * + h3, .side-panel h4
{
    margin : 12px 0 12px 0;
}


.section_bar
{
    padding-top : 2px;
    margin-top  : 2px;
    border-top  : 1px solid #999999;
    cursor      : pointer;
}


.section_bar:first-child
{
    border-top : 0;
}


.section_content
{
    display     : none;
    color       : #DDDDDD;
    padding-top : 4px;
}


section
{
    margin-bottom : 12px;
}


section:last-of-type
{
    margin-bottom : 0;
}


.clear
{
    clear : both;
}


.__
{
    *zoom : 1;
}


.__:before,
.__:after
{
    content : "";
    display : table;
}


.__:after
{
    clear : both;
}


.cntr-y:before
{
    content        : '';
    display        : inline-block;
    height         : 100%;
    vertical-align : middle;
    /*margin-right   : -0.25em;*/
}


/* The element to be centered, can also be of any width and height */
.cntr-y > *
{
    display        : inline-block;
    vertical-align : middle;
}


.cntr-x, .cntr-x *
{
    text-align : center;
}


.sep
{
    margin : 50px 0;
    height : 6px;
}


.sep-lite
{
    margin     : 24px 0;
    height     : 1px;
    background : rgba(0, 0, 0, 0.15);
}


.introPriceTable
{
    margin        : 20px 0 20px 20px;
    border-top    : 2px solid #888888;
    border-bottom : 2px solid #888888;
}


.introPriceTable td, .introPriceTable th
{
    padding     : 5px;
    text-align  : left;
    line-height : normal;
}


.introPriceTable td[colspan]
{
    font-weight : bold;
}


.introPriceTable th
{
    font-weight   : bold;
    border-bottom : 1px solid #CCCCCC;
    padding       : 10px 5px;
}


.introPriceSection td
{
    border-top : 1px solid #CCCCCC;
}


.tight
{
    margin      : 0 !important;
    line-height : normal !important;
}


.tight + *
{
    margin-top : 0 !important;
}


.hidden
{
    display : none !important;
}


.hide1, .show, .show0
{
    display : none !important;
}


.l-stack li
{
    float : left;
}


header, main, footer
{
    /*padding : 0 16px;*/
    display : block;
}


main
{
    padding-top : 52px;
}


header
{
    z-index : 2001;
    top     : 0;
}


#header
{
    background : #FFFFFF;
    height     : 52px;
    overflow   : hidden;
}


#header .inner, #header .inner .row, #header .inner .row > div, #header nav, #header ul, #header li, #header li a
{
    height : 100%;
}


#header a span
{
    top       : 50%;
    transform : translateY(-50%);
}


#header-shadow
{
    top         : 52px;
    margin-left : -60%;
}


#header-shadow + #header-shadow
{

    margin-left : 60%;
}


html.mm-opening #header-shadow, html.mm-opened #header-shadow
{
    display : none;
}


#header-shadow, .shadow
{
    background : url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPHJhZGlhbEdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgY3g9IjUwJSIgY3k9IjUwJSIgcj0iNzUlIj4KICAgIDxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4yNSIvPgogICAgPHN0b3Agb2Zmc2V0PSI4MCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAiLz4KICA8L3JhZGlhbEdyYWRpZW50PgogIDxyZWN0IHg9Ii01MCIgeT0iLTUwIiB3aWR0aD0iMTAxIiBoZWlnaHQ9IjEwMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background : -moz-radial-gradient(center, ellipse cover, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%); /* FF3.6+ */
    background : -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgba(0, 0, 0, 0.25)), color-stop(80%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0))); /* Chrome,Safari4+ */
    background : -webkit-radial-gradient(center, ellipse cover, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%); /* Chrome10+,Safari5.1+ */
    background : -o-radial-gradient(center, ellipse cover, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%); /* Opera 12+ */
    background : -ms-radial-gradient(center, ellipse cover, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%); /* IE10+ */
    background : radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%); /* W3C */
    filter     : progid:DXImageTransform.Microsoft.gradient(startColorstr='#40000000', endColorstr='#00000000', GradientType=1); /* IE6-8 fallback on horizontal gradient */
    height     : 12px;
    margin-top : -8px;
    z-index    : 1000;
}


header, #header-shadow, #header-sub
{
    position : fixed;
    width    : 100%;
}


/*
header.extended + #header-shadow
{
    top : 218px;
}
*/

html.m-opening .fixed, html.m-closing .fixed
{
    /*position : absolute;*/
}


html.m-opened .fixed
{
    /*width : auto;*/
    /*left  : 256px;
    right : 0;*/
}


body.dim #mm-blocker
{
    background : rgba(0, 0, 0, 0.15) !important;
}


body.dim #wrapper
{
    opacity : 0.2;
}


#modal-band
{
    position   : fixed;
    left       : 0;
    right      : 0;
    z-index    : 1000000;
    top        : 50%;
    transform  : translateY(-50%);
    max-height : 90vh;
}


#modal-band.squash #modal-band-message
{
    overflow-y    : scroll;
    border-bottom : 2px solid #5DB2F2;
}


#modal-band.squash #modal-band-message::-webkit-scrollbar
{
    -webkit-appearance : none;
    width              : 6px;
}


#modal-band.squash #modal-band-message::-webkit-scrollbar-thumb
{
    border-radius    : 3px;
    background-color : #5DB2F2;
}


#modal-band-message
{
    /*padding : 0 12px;*/
}


#modal-band-message p
{
    margin-bottom : 6px;
}


#modal-band-message label
{
    font-size : 13px;
}


#modal-band-buttons button
{
    margin : 12px 12px 0 0;
}


#modal-band-message .flag
{
    vertical-align : middle;
    margin-right   : 4px;
    zoom           : 50%;
}


.outer
{
    background : #FFFFFF;
    position   : relative;
    margin-top : -8px;
}


#toast
{
    position           : fixed;
    z-index            : 10000;
    height             : 46px;
    left               : 50%;
    margin-left        : -300px;
    width              : 600px;
    top                : -46px;
    color              : #FFFFFF;
    -webkit-transition : top 250ms ease-out;
    -moz-transition    : top 250ms ease-out;
    -o-transition      : top 250ms ease-out;
    transition         : top 250ms ease-out;
}


#toast.toast-visible
{
    top : 0;
}


.logo
{
    margin-left         : 52px;
    margin-top          : 5px;
    height              : calc(100% - 10px);
    background-repeat   : no-repeat;
    background-position : 0 50%;
    background-size     : contain;
    display             : block;
    max-width           : calc(100vw - 228px);
}


#strapline
{
    position : absolute;
}


#modal-band .logo
{
    display : none;
}


#hotline
{
    display  : none;
    position : absolute;
    top      : 16px;
    left     : 290px;
    color    : #777777;
}


#hotline a
{
    color : inherit;
}


#hotline .note
{
    font-size : 61%;
    opacity   : 0.66;
}


#footer-hotline h2
{
    line-height : 1;
}


.note
{
    font-size : 75%;
    opacity   : 0.4;
}


#hamburger
{
    position : absolute;
    z-index  : 101;
    height   : 100%;
}


#hamburger a
{
    width           : 52px;
    height          : 100%;
    line-height     : 50px;
    font-size       : 32px;
    /*display     : block;*/
    text-align      : center;
    display         : flex;
    flex-direction  : column;
    justify-content : center;
}


#hamburger a span
{
    position    : absolute;
    font-size   : 12px;
    bottom      : 3px;
    top         : auto;
    line-height : 1;
    transform   : translate(-50%, 0);
    left        : 50%;
    font-weight : bold;
    opacity     : 0.6;
}


#header nav
{
    position : absolute;
    top      : 0;
    right    : 8px;
}


#account-nav nav
{
    float : right;
}


.header-nav
{
    display : none;
}


nav li a
{
    text-decoration    : none;
    display            : block;
    -webkit-transition : all 0.15s ease-in-out;
    -moz-transition    : all 0.15s ease-in-out;
    -o-transition      : all 0.15s ease-in-out;
    -ms-transition     : all 0.15s ease-in-out;
    transition         : all 0.15s ease-in-out;
    position           : relative;
    padding            : 0 10px;
    /*border-left        : 1px solid rgba(0, 0, 0, 0.1);*/
}


nav li#nav-search a
{
    padding-right : 0;
}


nav li:last-child a
{
    /*border-right : 1px solid rgba(0, 0, 0, 0.1);*/
}


#header nav li, #header-sub nav li
{
    float : left;
}


#header nav li > *
{
    /*height     : 42px !important;
    margin     : 5px 0;*/
    transition : height 0.3s ease;
}


#header nav li a
{
    font-size   : 20px;
    text-align  : center;
    font-weight : 300;
    color       : #333333;
}


#header nav li a .caption
{
    position       : absolute;
    color          : #333333;
    font-size      : 9px;
    top            : 3px;
    left           : 0;
    right          : 0;
    line-height    : normal;
    letter-spacing : normal;
}


#header nav li a > span
{
    position  : relative;
    display   : block;
    max-width : 100%;
}


#header nav li a > em
{
    position      : absolute;
    left          : 0;
    top           : 50%;
    display       : block;
    border-radius : 50%;
    padding       : 2px;
    width         : 19px;
    height        : 19px;
    line-height   : 15px;
    color         : #FFFFFF;
    background    : #333333;
    font-size     : 13px;
    transform     : translate(-75%, -50%);
    font-style    : normal;
}


#nav-ProfessionalIndemnityInsurance > a
{
    font-weight : bold;
}


#nav-offers a, #header nav li#nav-header-offers a
{
    font-weight : bold;
}


#nav-calc
{
    display : none;
}


.mm-panel #nav-calc
{
    display : block;
}


.nav-link-back
{
    display : none;
}


#header-sub
{
    background : #888888;
    top        : 52px;
    z-index    : 1001;
}


#header-sub nav
{
    display : none;
}


#header-sub li a
{
    white-space : nowrap;
    height      : 30px;
    line-height : 30px;
    color       : #FFFFFF;
}


#header-sub nav li a:hover
{
    background : rgba(0, 0, 0, 0.2);
}


#header-sub nav > ul > li#nav-home
{
    max-width  : 34px;
    text-align : center;
}


#header-sub nav > ul > li#nav-home > a:after
{
    content : '' !important;
    display : none !important;
}


#header-sub nav > ul > li > div
{
    display       : none;
    position      : absolute;
    z-index       : 10001;
    left          : -7px;
    padding-right : 1px;
}


.nav-group
{
    /*columns    : 3;
    column-gap : 0;*/
    padding    : 0;
    font-size  : 90%;
    background : #888888;
}


li.nav-benefit
{
    width  : 33.33%;
    margin : 0 !important;
}


li.nav-benefit:nth-child(1):nth-last-child(2),
li.nav-benefit:nth-child(2):nth-last-child(1),
li.nav-benefit:nth-child(1):nth-last-child(3),
li.nav-benefit:nth-child(2):nth-last-child(2),
li.nav-benefit:nth-child(3):nth-last-child(1),
li.nav-benefit:only-child
{
    width : 100%;
}


#header-sub li:hover > div
{
    display : block;
}


.nav-subgroup .container
{
    display      : block;
    margin-left  : -15px;
    margin-right : -15px;
}


.nav-subgroup-label:empty
{
    display : none;
}


.nav-subgroup-label:not(:empty) + .container
{
    display       : none;
    left          : 0;
    padding-right : 0;
    position      : absolute;
    margin-left   : 0;
    margin-right  : 0;
}


.nav-subgroup:hover > .nav-subgroup-label:not(:empty) + .container
{
    display : block;
}


.nav-group-benefits
{
    padding-left  : 0;
    padding-right : 0;
}


label[for='search'], label[for='header-search']
{
    height      : 30px;
    line-height : 30px;

    position    : absolute;
    font-size   : 26px;
}


.ph-search
{
    height             : 30px;
    width              : 160px;
    padding-left       : 28px;
    -webkit-appearance : none;
    font-size          : inherit;
    font-family        : inherit;
    border-radius      : 20px;
    box-shadow         : 0 0 0 1px rgba(0, 0, 0, 0.15);
}


label[for='header-search']
{
    top   : 2px;
    left  : 6px;
    color : rgba(0, 0, 0, 0.5);
}


.ph-search::-webkit-input-placeholder
{

    color : rgba(0, 0, 0, 0.5);
}


.ph-search:-moz-placeholder
{
    color : rgba(0, 0, 0, 0.5);
}


.ph-search::-moz-placeholder
{
    color : rgba(0, 0, 0, 0.5);
}


.ph-search:-ms-input-placeholder
{
    color : rgba(0, 0, 0, 0.5);
}


#x
{
    overflow            : hidden;
    position            : relative;

    background-repeat   : no-repeat;
    background-size     : cover;
    background-position : center center;
}


#x-c
{
    height   : 125%;
    position : absolute;
}


#x-c > figure
{
    background : #FFFFFF;
}


#x-c > figure[data-href]
{

    box-shadow         : 0 0 0 0 rgba(255, 255, 255, 0.5);
    -webkit-transition : box-shadow 0.4s ease;
    -moz-transition    : box-shadow 0.4s ease;
    -o-transition      : box-shadow 0.4s ease;
    -ms-transition     : box-shadow 0.4s ease;
    transition         : box-shadow 0.4s ease;
    cursor             : pointer;
}


#x-c > figure[data-href]:hover
{
    box-shadow : 0 0 0 10px rgba(255, 255, 255, 0.5);
    opacity    : 1 !important;
}


#x-f
{
    position       : absolute;
    top            : 0;
    left           : 0;
    right          : 0;
    bottom         : 0;
    z-index        : 101;
    pointer-events : none;
}


#carrot
{
    display : none;
}


#user-actions
{
    position       : absolute;
    bottom         : 0;
    left           : 0;
    z-index        : 102;
    right          : 0;
    pointer-events : none;
}


#user-actions .panel
{
    pointer-events : auto;

}


#user-actions i
{
    font-size      : 150%;
    vertical-align : middle;
}


#user-actions a
{
    color    : #333333;
    position : relative;
}


.count
{
    display       : block;
    position      : absolute;
    right         : 2px;
    width         : 27px;
    height        : 27px;
    background    : #F06600;
    color         : #FFFFFF;
    line-height   : 27px;
    border-radius : 50%;
    top           : -2px;
    text-align    : center;
    font-weight   : bold;
}


.count:empty
{
    display : none;
}


.stripe-home #x
{
    height     : 600px;
    max-height : 90vh;
    background : #888888;

}


.stripe-account #x
{
    background-image : url(../images/stripe_account.compressed.jpg);
    height           : 300px;
}


.stripe-reminders #x
{
    background-image : url(../images/stripe_reminders.compressed.jpg);
    height           : 300px;
}


@media screen and (max-width : 800px) and (orientation : portrait)
{
    .stripe-home #x
    {
        max-height : 50vh;
    }
}


#x-c > figure, #x-c > img
{
    position  : absolute;
    transform : translate3d(-50%, -50%, 0);
    width     : 75px;
    height    : 75px;
}


#x-c > figure
{
    background : #FFFFFF;
}


#x-c > img
{
    opacity : 1 !important;
}


#x-c > figure img
{
    position   : absolute;
    margin     : auto;
    top        : 0;
    left       : 0;
    right      : 0;
    bottom     : 0;
    max-width  : 65%;
    max-height : 65%;
}


#ss
{
    position : relative;
}


#ss:after
{
    content     : ' ';
    padding-top : 20.82%;
    display     : block;
}


#slideshow
{
    /*height   : 280px;*/
    overflow : hidden;
    position : absolute;
    top      : 0;
    width    : 100%;
}


#slideshow > div
{
    background-repeat   : no-repeat;
    background-position : top center;
    background-size     : auto 240px;
    width               : 100%;
    position            : relative;
    overflow            : auto;
}


#slideshow > div:after
{
    content     : ' ';
    display     : block;
    padding-top : 20.83%;
}


#slideshow h3
{
    position       : absolute;
    bottom         : 12px;
    left           : 62px;
    color          : #FFFFFF;
    text-shadow    : 0 0 6px rgba(0, 0, 0, 0.75);
    font-size      : 52px;
    letter-spacing : -2px;
}


#slideshow .panel
{
    position   : absolute;
    bottom     : 0;
    width      : 100%;
    color      : #333333;
    text-align : center;
    padding    : 5px;
}


#slideshow .panel strong
{
    font-size   : 23px;
    font-weight : 700;
}


#slideshow .button
{
    position : absolute;
    top      : 0;
    left     : 0;
    right    : 0;
    bottom   : 0;
    opacity  : 0;
}


#slideshow .button i
{
    font-size      : 200%;
    vertical-align : -5px;
    margin-left    : 8px;
}


#slideshow-nav
{
    display       : block;
    height        : 24px;
    margin-bottom : -24px;
    text-align    : center;
}


#slideshow-nav span
{
    display     : inline-block;
    padding     : 0 5px;
    line-height : 21px;
    font-size   : 25px;
    cursor      : pointer;
    opacity     : 0.5;
}


#slideshow-nav span:hover
{
    text-shadow : 0 0 0 3px rgba(0, 0, 0, 0.5);
}


#slideshow-nav span.cycle-pager-active
{
    opacity : 1;
}


.ph-banner-scaled
{
    position : relative;
}


.ph-banner-scaled:after
{
    content     : " ";
    display     : block;
    padding-top : 20.79%;
}


.ph-banner-scaled a
{
    display            : -ms-flexbox;
    display            : flex;
    -ms-flex-direction : column;
    flex-direction     : column;
    -ms-flex-align     : center;
    align-items        : center;
    justify-content    : center;
    position           : absolute;
    top                : 0;
    right              : 0;
    bottom             : 0;
    left               : 0;
}


.ph-banner-scaled img
{
    max-width  : 100%;
    max-height : 100%;
}


.ss-nav
{
    position    : absolute;
    top         : 0;
    bottom      : 0;
    z-index     : 1001;
    width       : 25px;
    display     : block;
    font-size   : 40px;
    color       : #FFFFFF;
    text-shadow : 0 1px 1px rgba(0, 0, 0, 0.2);
}


.ss-nav:hover
{
    background : rgba(0, 0, 0, 0.44);
}


#ss-nav-left
{
    left : 0;
}


#ss-nav-right
{
    right : 0;
}


.ss-nav i
{
    position  : absolute;
    top       : 50%;
    left      : 50%;
    transform : translate(-50%, -50%);
}


.ph-feature-hwh
{
    margin-bottom : 40px;
}


.ph-feature-left
{
    display : none;
}


.ph-feature-middle
{
    text-align : center;
}


.ph-feature-right hr, .ph-feature-right .button
{
    display : none;
}


.wts-header em
{
    font-style     : normal;
    font-size      : 133%;
    font-weight    : 900;
    vertical-align : -10%;
}


.over .wts-header em
{
    text-shadow : 0 0 0.1em rgba(0, 0, 0, 0.75);
}


.wts .visit-mark
{
    display : none;

}


.wts.wts-visited .visit-mark
{
    display : block;
}


.ph-wts-benefit figure
{
    background-color    : #888888;
    background-size     : cover;
    background-position : center center;
    color               : #FFFFFF;
    text-shadow         : 0 0 10px rgba(0, 0, 0, 0.5);
    position            : relative;
    overflow            : hidden;
}


.ph-wts-benefit figure:after
{
    position   : absolute;
    top        : 0;
    right      : 0;
    bottom     : 0;
    left       : 0;
    content    : ' ';
    display    : block;
    background : rgba(93, 178, 242, 1);
    z-index    : 100;
    opacity    : 0.75;
}


.ph-wts-benefit.wts-visited figure:after
{
    opacity : 0.25;
}


.ph-wts-benefit figure:before
{
    padding-top : 100%;
    height      : auto;
}


.ph-wts-benefit figure > span
{
    transform   : scale(1.75);
    position    : relative;
    z-index     : 101;
    text-shadow : 0 0 5px rgba(0, 0, 0, 0.5);
}


.ph-wts-benefit > a > span
{
    margin-top : 10px;
    display    : block;
    text-align : center;
    height     : 2.5em;
    font-size  : 14px;
}


#ph-home-wts #visited-message
{
    text-align : center;
}


.ph-wts-benefit.wts-visited figure
{
    box-shadow : 0 0 0 2px #FFFFFF, 0 0 0 8px #F9D932;
}


#ph-home-wts .visit-mark
{
    position      : absolute;
    font-size     : 40px;
    z-index       : 103;
    background    : #F9D932;
    line-height   : 46px;
    height        : 42px;
    width         : 42px;
    border-radius : 50%;
    text-align    : center;
}


.affix
{
    z-index : 101;
    width   : 100%;
    top     : 112px;
}


.breadcrumbs li
{
    float        : left;
    margin-right : 15px;
}


.breadcrumbs li:after
{
    content      : '/';
    display      : inline-block;
    padding-left : 15px;
}


.breadcrumbs li:last-child:after
{
    content : '';
}


figure
{

    font-size     : 14px;
    box-sizing    : border-box;
    padding       : 20px;
    text-align    : center;
    border-radius : 50%;
}


figure em
{
    font-weight : bold;
    display     : block;
    font-size   : 26px;
    font-style  : normal;
    white-space : nowrap;
}


.mm-page #cookie_bar
{
    position   : fixed;
    bottom     : 0;
    color      : #FFFFFF;
    left       : 0;
    right      : 0;
    text-align : center;
    background : #333333;
    z-index    : 1001;
    padding    : 5px 0;
    box-shadow : 0 0 10px rgba(0, 0, 0, 0.5);
}


.mm-page #cookie_bar .button-lite
{
    color        : #FFFFFF;
    border-color : #FFFFFF;
}


footer
{
    background : #F2F2F2;
    color      : #333333;
}


footer .inner
{
    padding-bottom : 48px;
}


.logo-footer
{
    width         : 266px;
    max-width     : 100%;
    margin-bottom : 20px;
}


footer h3
{
    margin-bottom : 6px;
}


footer .button-lite
{
    width      : 100%;
    text-align : center;
    font-size  : 13px;
    margin-top : 30px;
}


#categories li
{
    overflow : hidden;
}


#categories a
{
    height              : 160px;
    position            : relative;
    padding             : 0;
    border              : 0;
    box-shadow          : 0 1px 1px rgba(0, 0, 0, 0.4);
    background-size     : cover;
    background-repeat   : no-repeat;
    background-position : center center;
    display             : block;
}


#categories a span
{
    color      : #FFFFFF;
    position   : absolute;
    top        : 0;
    right      : 0;
    padding    : 12px 12px 0 0;
    width      : 100px;
    text-align : right;
    font-size  : 15px;
}


#categories a:before
{
    content       : ' ';
    position      : absolute;
    top           : 0;
    right         : 0;
    border-top    : 80px solid rgba(0, 0, 0, 0.5);
    border-right  : 80px solid rgba(0, 0, 0, 0.5);
    border-bottom : 80px solid transparent;
    border-left   : 80px solid transparent;
}


.footnote, .footnote p
{
    font-size   : 11px;
    line-height : 1.45;
}


.footnote p
{
    margin-bottom : 5px;
}


.footnote a
{
    color           : inherit;
    text-decoration : underline;
}


.ph-skyscraper
{
    display  : none;
    position : absolute;
    top      : 24px;
    right    : -175px;
}


.ph-skyscraper img
{
    max-height : 770px;
    display    : block;
}


.ph-skyscraper + .ph-skyscraper
{
    top : 824px;
}


template, .template
{
    display : none;
}


.inner
{
    padding-top    : 24px;
    padding-bottom : 24px;
    margin         : 0 auto;
    position       : relative;
    padding-left   : 8px;
    padding-right  : 8px;
}


.inner-collapse
{
    padding-top    : 0;
    padding-bottom : 0;
}


.inner-spread
{
    padding : 0;
}


.inner-expand
{
    padding-top    : 24px;
    padding-bottom : 24px;
}


hr, .h-sep
{
    height : 24px;
    border : 0;
}


hr.half, .h-sep-half
{
    height : 12px;
}


.content h2
{
    margin : 16px 0;
}


.content p, .content li
{
    margin      : 16px 0;
    line-height : 2;
}


.content .tight p, .content .tight li
{
    margin      : 8px 0;
    line-height : normal;
}


.content p:first-child
{
    margin-top : 0;
}


.content ul, .content ol
{
    margin       : 16px 0;
    padding-left : 20px;
}


.content ol
{
    list-style-type : decimal;
}


.content ul
{
    list-style-type     : disc;
    list-style-position : outside;
}


.content li:last-child
{
    margin : 0 0 0;
}


.content .panel p, .content .panel li
{
    line-height : normal;
}


.content .panel:not(.panel-special-offer) p
{
    margin    : 0;
    font-size : 13px;
}


.grid > li
{
    padding : 0 0 24px 0;
}


.grid > li > section
{
    position : relative;
}


.grid.grid-on
{
    margin : 0 -24px -24px 0;
}


.grid.grid-on > li
{
    padding : 0 24px 24px 0;
}


.grid-6.grid-on > li
{
    float : left;
    width : 16.65%;
}


.grid-4.grid-on > li
{
    float : left;
    width : 25%;
}


.grid-3.grid-on > li
{
    float : left;
    width : 33.3%;
}


.grid-2.grid-on > li
{
    float : left;
    width : 50%;
}


.panel
{
    padding  : 12px;
    position : relative;
    overflow : hidden;
}


.panel-header, .ph__benefit h3.panel-header
{
    margin : -1px -1px 0;
}


.content .ph__benefit .panel p
{
    margin      : 16px 0;
    line-height : 2;
    font-size   : inherit;
}


.ph__benefit h3.panel-header
{
    font-weight : normal;
}


.panel-header
{
    padding    : 6px;
    background : #EEEEEE;
    position   : relative;

}


.stripe
{
    color               : #FFFFFF;
    background          : #888888;
    /*background : #666666 url(../images/stripe_03.jpg) no-repeat center center;*/
    /*overflow   : hidden;*/
    background-repeat   : no-repeat;
    background-size     : cover;
    background-position : center;
    position            : relative;
}


.stripe-invert h1, .stripe-invert h2, .stripe-invert h3, .stripe-invert p, .stripe-invert li
{
    color : #FFFFFF;
}


.stripe h2
{
    margin : 0;
}


.stripe .drop
{
    color       : #FFFFFF;
    font-size   : 40px;
    font-weight : 200;
}


.stripe p
{

}


.stripe-silver
{
    color      : #333333;
    background : #EAEAEA;
}


.stripe-orange
{
    color      : #FFFFFF;
    background : #888888;
}


.stripe-orange h2, .stripe-orange .row > div > h3, .stripe-orange p
{
    color : #FFFFFF;
}


.stripe-overlay
{
    padding    : 8px;
    width      : 100%;
    max-width  : 800px;
    background : rgba(255, 255, 255, 0.4);
    position   : relative;
    margin     : 0 auto;
}


.stripe-overlay .row
{
    margin-left  : -7.5px;
    margin-right : -7.5px;
}


.stripe-overlay [class^='col-']
{
    padding-left  : 7.5px;
    padding-right : 7.5px;
}


.over
{
    bottom     : 0;
    /*background : rgba(255, 255, 255, 0.8);*/
    /*background : rgba(0, 0, 0, 0.75);*/
    /*background : rgba(238, 238, 238, 0.66);*/
    background : rgba(0, 0, 0, 0.7);
    position   : absolute;
    width      : 100%;
    z-index    : 102;
}


.over, .over a:not(.button-lite)
{
    color : #FFFFFF;
}


.over a:not(.button-lite)
{
    text-decoration : underline;
}


.ph-page-benefit .over
{
    position : static;
}


.over-top
{
    top    : 0;
    bottom : auto;
}


#non-auth-cta [class^='col-']
{

    font-size : 14px;
    height    : 54px;
}


#non-auth-cta .button
{
    margin        : 0 auto;
    font-size     : 14px;
    width         : 100%;
    height        : 54px;
    text-align    : center;
    white-space   : nowrap;
    padding-left  : 0;
    padding-right : 0;
}


#non-auth-cta .button i
{
    font-size : 200%;
}


.account-form .input input, .account-form .input select, .account-form textarea
{
    line-height : normal;
    padding     : 6px 4px;
    height      : 32px;
}


#details-form h3, #signup h3, #signin h3
{
    font-size : 40px;
    color     : #5DB2F2;
}


.stripe-overlay .form_element > label
{
    font-size  : 12px;
    background : #E4E4E4;
    width      : 100%;
    display    : block;
    padding    : 4px;
    min-height : 0;
    color      : #555555;
}


.button-action
{
    margin      : 0 0 -1px auto;
    display     : inline-block;
    font-size   : 30px;
    text-align  : center;
    height      : 55px;
    font-weight : 300;
    line-height : 1.3;
}


.button-action.disabled
{
    pointer-events : none;
    filter         : grayscale(1);
}


.stripe-overlay .button-action, html[data-pha-t='X'] .button-action
{
    max-width : 208px;
    width     : 100%;
    display   : block;
}


html[data-pha-t='X'] .button-action
{
    margin : 0;
}


.ui-datepicker-title
{
    color : #FFFFFF;
}


.side-panel .form_element > label, #ph-benefit-container .form_element > label
{
    display    : block !important;
    font-size  : 12px;
    padding    : 4px;
    background : #999999;
    color      : #FFFFFF;
    width      : auto !important;
    height     : auto;
    float      : none;
}


#ph-form-proxy label
{
    width : 100%;
}


.input label aside
{
    float : right;
}


.button-lite
{
    display         : inline-block;
    border          : 1px solid #888888;
    color           : #888888;
    padding         : 3px;
    border-radius   : 3px;
    cursor          : pointer;
    text-decoration : none;
    line-height     : normal;
}


li > .button-lite, p > .button-lite
{
    padding : 0 3px 3px;
}


.button-lite:hover
{
    background : #888888;
    color      : #FFFFFF;
}


.AxL .form_element
{
    margin-bottom : 12px;
}


.input input, .input select, .input textarea
{
    display     : block;
    width       : 100%;
    font-size   : 18px;
    line-height : 18px;
}


.input input, .input select, .input textarea, .panel
{
    background : #FFFFFF;
    color      : #333333;
}


.nav-group, .panel
{
    box-shadow : 0 1px 1px rgba(0, 0, 0, 0.4);
}


.deal-group
{
    display : none;
}


#deal-group-motoring, #deal-group-shopping, #deal-group-wellbeing
{
    display : block;
}


#deals #ph-benefit-115 .ph-provider-logo, #deals #ph-benefit-169 .ph-provider-logo
{
    display : none;
}


.deals .panel
{
    color : #333333;
}


#deals .panel-inner
{
    margin : 0;
}


.deals .panel-inner-banner
{
    height              : 180px;
    box-shadow          : 0 0 50px rgba(0, 0, 0, 0.1) inset;
    background-repeat   : no-repeat;
    background-size     : cover;
    background-position : center center;
    margin              : 0;
}


.deals .panel-inner-banner .ph-provider-logo
{
    max-width  : 36%;
    max-height : 50%;
    position   : absolute;
    top        : 10px;
    left       : 10px;
    box-shadow : 0 0 10px rgba(0, 0, 0, 0.5);
}


/*XXXXX*/

.deals .panel-inner-logo
{
    height              : 60px;
    position            : static;
    align-items         : center;
    margin              : 0 116px 0 6px;
    background-size     : 100% auto;
    background-position : center;
    background-repeat   : no-repeat;
}


.deals .panel-inner-logo .panel-inner-logo-wrapper
{
    position : relative;
    width    : 100%;
    height   : 100%;
}


.deals .panel-inner-logo .ph-provider-logo
{
    max-height : 48px;
    border     : none;
    max-width  : 100%;
    margin     : 0 auto;
}


.deals .panel-inner-logo .panel-inner-logo-wrapper .ph-provider-logo
{
    top       : 50%;
    left      : 50%;
    position  : absolute;
    transform : translate(-50%, -50%);
}


.deals .panel-inner-banner .ph-provider-logo-multi
{
    background     : none;
    border         : none;
    box-shadow     : none;
    -webkit-filter : drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
    filter         : drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
}


figure .ph-callout-no-value
{
    font-size   : 15px;
    font-weight : bold;
}


.ph-callout-reduced
{
    font-size : 80%;
}


.deals .panel:hover figure
{
    box-shadow : 0 0 0 6px rgba(249, 217, 50, 0.5);
}


.deals .features
{
    text-align : left;
}


.landing-deals .features
{
    position        : absolute;
    background      : rgba(0, 0, 0, 0.5);
    backdrop-filter : blur(3px);
    color           : #FFFFFF;
    width           : 100%;
    transform       : translate(0, -100%);
}


#ph-benefit-list .landing-deals .features
{
    transform : translate(0, 0);
}


.deals .wrapper
{
    text-align    : center;
    margin-bottom : 21px;
}


.deals .panel
{
    padding  : 0;
    overflow : visible;
}


.deals h3
{
    height : 56px;
}


.deals h3 a
{
    color : inherit;
}


#slideshow figure, .deals figure, .free figure
{
    position               : absolute;
    padding                : 10px 0;
    -webkit-font-smoothing : antialiased;
    width                  : 100px;
    height                 : 100px;
    display                : block;
}


#slideshow figure
{
    left : 58px;
    top  : 10px;
}


.deals figure, .free figure
{
    right              : 6px;
    bottom             : -12px;
    margin             : 0 auto;
    box-shadow         : 0 0 0 0 rgba(255, 255, 255, 0.5);
    -webkit-transition : box-shadow 0.4s ease;
    -moz-transition    : box-shadow 0.4s ease;
    -o-transition      : box-shadow 0.4s ease;
    -ms-transition     : box-shadow 0.4s ease;
    transition         : box-shadow 0.4s ease;
}


#slideshow figure, .deals figure, figure.ph-benefit-feature.cntr-y, .free figure
{
    transform : rotate(-15deg);
    padding   : 10px 0;
}


.deals .features
{
    padding   : 6px;
    font-size : 13px;
}


.account-section figure
{
    width      : 120px;
    height     : 120px;
    margin     : 0 auto;
    font-size  : 65px;
    border     : 2px solid #5DB2F2;
    background : none !important;
    color      : #5DB2F2 !important;
}


#calc_region
{
    margin : 0 auto;
}


.row-eq-height
{
    display : -webkit-box;
    display : -webkit-flex;
    display : -ms-flexbox;
    display : flex;
}


.ph-provider-logo
{

    background : #FFFFFF;
    border     : 5px solid #FFFFFF;
    display    : block;
}


.input select
{
    padding : 3px 4px !important;
}


.pair
{
    padding-bottom : 8px;
}


.pair:last-child
{
    padding-bottom : 0;
}


.pair .pair-alpha
{
    padding-right : 168px;
    float         : left;
    width         : 100%;
}


.pair .pair-beta
{
    float       : right;
    width       : 160px;
    margin-left : -100%;
}


.input-date
{
    padding-right : 56px;
    float         : left;
    width         : 100%;
}


.input-time
{
    float       : right;
    width       : 56px;
    margin-left : -100%;
}


button, .button, .AxL input[type='submit'], #ph-cinema-submit
{
    outline                : none;
    padding                : 2px 15px 7px 15px;
    box-sizing             : border-box;
    height                 : auto;
    color                  : #FFFFFF;
    font-size              : 24px;
    font-style             : normal;
    font-smoothing         : antialiased;
    -webkit-font-smoothing : antialiased;
    -moz-font-smoothing    : antialiased;
    -o-font-smoothing      : antialiased;
    -ms-font-smoothing     : antialiased;
    border-radius          : 3px;
    -webkit-border-radius  : 3px;
    -moz-border-radius     : 3px;
    -o-border-radius       : 3px;
    -ms-border-radius      : 3px;
    border                 : 1px solid rgba(0, 0, 0, 0.33);
    border-top             : 1px solid rgba(0, 0, 0, 0.001);
    box-shadow             : 0 0 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.10);
    -webkit-box-shadow     : 0 0 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.10);
    -moz-box-shadow        : 0 0 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.10);
    -o-box-shadow          : 0 0 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.10);
    -ms-box-shadow         : 0 0 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.10);
    cursor                 : pointer;
    display                : inline-block;
    line-height            : 1;
    vertical-align         : top;
    position               : relative;
    text-decoration        : none !important;
}


button:hover, .button:hover
{
    box-shadow         : 0 0 0 3px rgba(0, 0, 0, 0.1), 0 0 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.25);
    -webkit-box-shadow : 0 0 0 3px rgba(0, 0, 0, 0.1), 0 0 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.25);
    -moz-box-shadow    : 0 0 0 3px rgba(0, 0, 0, 0.1), 0 0 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.25);
    -o-box-shadow      : 0 0 0 3px rgba(0, 0, 0, 0.1), 0 0 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.25);
    -ms-box-shadow     : 0 0 0 3px rgba(0, 0, 0, 0.1), 0 0 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.18), inset 0 -2px 0 rgba(0, 0, 0, 0.25), inset 0 14px 14px rgba(255, 255, 255, 0.25);
    -webkit-animation  : glow 1s infinite ease-in-out;
    cursor             : pointer;
    text-decoration    : none;
    /*color              : #FFFFFF;*/
}


button:active, .button:active
button:active, .button:active
{
    padding            : 5px 15px 4px 15px;
    border-top         : 1px solid rgba(0, 0, 0, 0.55);
    box-shadow         : 0 0 3px rgba(0, 0, 0, 0.2), 0 2px 1px rgba(255, 255, 255, 0.25), inset 0 1px 4px rgba(0, 0, 0, 0.35), inset 0 -14px 14px rgba(255, 255, 255, 0.10);
    -webkit-box-shadow : 0 0 3px rgba(0, 0, 0, 0.2), 0 2px 1px rgba(255, 255, 255, 0.25), inset 0 1px 4px rgba(0, 0, 0, 0.35), inset 0 -14px 14px rgba(255, 255, 255, 0.10);
    -moz-box-shadow    : 0 0 3px rgba(0, 0, 0, 0.2), 0 2px 1px rgba(255, 255, 255, 0.25), inset 0 1px 4px rgba(0, 0, 0, 0.35), inset 0 -14px 14px rgba(255, 255, 255, 0.10);
    -o-box-shadow      : 0 0 3px rgba(0, 0, 0, 0.2), 0 2px 1px rgba(255, 255, 255, 0.25), inset 0 1px 4px rgba(0, 0, 0, 0.35), inset 0 -14px 14px rgba(255, 255, 255, 0.10);
    -ms-box-shadow     : 0 0 3px rgba(0, 0, 0, 0.2), 0 2px 1px rgba(255, 255, 255, 0.25), inset 0 1px 4px rgba(0, 0, 0, 0.35), inset 0 -14px 14px rgba(255, 255, 255, 0.10);
    -webkit-animation  : none;
    cursor             : pointer !important;
    text-decoration    : none;
}


button, .button
{
    background : #666666;
}


button img, .button img
{
    position : absolute;
    right    : 6px;
    top      : -4px;
    bottom   : 0;
    margin   : auto 0;
}


.button-action, .AxL input[type='submit']
{
    background  : #5DB2F2;
    color       : #FFFFFF;
    text-shadow : none;
    text-align  : left;
}


.ph-benefit-brands
{
    margin-bottom : 20px;
}


.ph-benefit-brands img
{
    max-width      : 120px;
    max-height     : 60px;
    margin         : 0 10px 10px 0;
    vertical-align : middle;
}


.no-brand-image
{
    display : none !important;
}


#ph-benefit-list .panel-provider a
{
    color : #555555;
}


#ph-benefit-list .panel-provider .ph-provider
{
    text-align  : center;
    font-weight : bold;
}


#ph-benefit-list .ph-provider-usp
{
    font-size : 13px;
}


#ph-benefit-list .ph-provider-logo
{
    max-width  : 80%;
    margin     : 0 auto 10px;
    max-height : 120px;
}


#ph-benefit-list .row
{
    /* min-height : 110px;*/
}


#ph-interrelated-benefits .panel-inner-logo
{
    margin : 0 92px 0 6px;
}


#ph-interrelated-benefits figure
{
    width  : 80px;
    height : 80px;
    bottom : -10px;
}


#ph-interrelated-benefits figure:after
{
    content       : ' ';
    display       : block;
    position      : absolute;
    top           : 0;
    right         : 0;
    bottom        : 0;
    left          : 0;
    box-shadow    : inset 0 0 2px rgba(0, 0, 0, 0.25);
    border-radius : 50%;
}


#ph-interrelated-benefits figure *
{
    font-size : 13px;
}


#ph-interrelated-benefits figure .ph-callout-no-value
{
    font-weight : normal;
}


.carousel
{
    width      : 75%;
    max-height : 100px;
    overflow   : hidden;
}


.carousel ul
{

}


.carousel li
{
    height         : 40px;
    float          : left;
    margin-top     : 10px;
    vertical-align : middle;
    text-align     : center;
}


.carousel img
{
    max-width  : 100px;
    max-height : 100%;
    display    : block;
    margin     : 0 0 0 10px;
    position   : relative;
    top        : 50%;
    transform  : translate(0, -50%);
}


#ph-benefit-list .cta
{
    font-size      : 16px;
    padding-top    : 15px;
    padding-bottom : 17px;
    width          : 100%;
    text-align     : center;
}


#ph-benefit-list .sep-lite:last-child
{
    display : none;
}


figure, .cta
{
    background : #F9D932;
    color      : #333333;
}


figure.ph-benefit-feature
{
    width  : 100px;
    height : 100px;
    margin : 0 auto;
}


.ph__benefit figure.ph-benefit-feature
{
    width  : 70px;
    height : 70px;
    margin : 0;
}


.ph__benefit figure.ph-benefit-feature em
{
    line-height : 1.1;
}


figure.ph-promise
{

    padding    : 0;
    overflow   : auto !important;
    background : #FFFFFF !important;
    cursor     : pointer;
    transform  : none;
}


figure.ph-promise img
{
    width  : 90%;
    height : 90%;
    margin : 5%;
}


.ph-benefit-highlights
{
    list-style-type : none !important;
    padding         : 0 !important;
}


.ph-benefit-highlights li
{
    position    : relative;
    padding     : 0 0 10px 27px;
    margin      : 0;
    font-size   : 16px;
    font-weight : bold;
    line-height : normal;
}


.ph-benefit-highlights li:last-child
{
    padding : 0 0 0 27px;
}


.ph-benefit-highlights li i
{
    position   : absolute;
    left       : 0;
    font-size  : 175%;
    margin-top : -4px;
}


.content .ph-benefit-highlights
{
    margin : 0 0 40px 0 !important;
}


/*
#benefit_panel_341 .ph-benefit-highlights
{
    margin : 0 !important;
}

#benefit_panel_341 .ph-benefit-highlights li
{
    padding-left : 0;
    float        : left;
    margin-right : 15px;
}

#benefit_panel_341 .ph-benefit-highlights li:last-child
{
    padding-bottom : 0;
}

#benefit_panel_341 .ph-benefit-highlights li .zmdi
{
    display : none;
}

#benefit_panel_341 .ph-benefit-highlights li img
{
    border : 1px solid #CCCCCC;
}
*/
#ph-cinema-form
{
    margin-left : 0 !important;
}


#ph-cinema-submit
{
    background : #333333;
}


.ph-feature-box
{
    margin-top : 0 !important;
    box-shadow : 0 1px 1px rgba(0, 0, 0, 0.4);
    border     : 0;
}


.ph-feature-box > *:first-child
{
    margin-top : 0;
}


.ph-feature-box > *:last-child
{
    margin-bottom : 0;
}


.ph-benefit-logo
{
    max-width  : 100%;
    max-height : 50vw;
    margin     : 0 auto;
    display    : block;
}


.ph-benefit-cta a:not(.button-lite)
{
    font-size   : 28px;
    width       : 100%;
    padding-top : 6px;
    margin      : 10px 0 5px;
}


.ph-benefit-cta a i
{
    animation-duration        : 1000ms;
    animation-name            : BLINK;
    animation-iteration-count : infinite;
    animation-direction       : alternate;
}


@keyframes BLINK
{
    from
    {
        opacity : 1;
    }
    to
    {
        opacity : 0;
    }
}


.ph-benefit-rate
{
    /*display : none;*/
}


h3
{
    font-size : 26px;
}


.side-panel h3, .ph__benefit h3
{
    font-weight : 600;
}


.mm-ismenu nav li > a
{
    padding-top    : 6px;
    padding-bottom : 6px;
    border-bottom  : 1px solid rgba(0, 0, 0, 0.5);
}


.ph__benefit h3
{
    margin : 0 0 16px;
}


.ph__benefit *:not(style):not(script) + h3
{
    margin-top : 32px;
}


.ph__benefit p > .button-lite
{
    line-height : normal;
}


.ph-provider-usp
{
    padding-bottom : 15px;
}


/*.cta:hover
{
    color : #333333 !important;
}*/

.see-all
{
    background     : #FFFFFF !important;
    color          : #333333 !important;
    font-size      : 16px;
    padding-top    : 15px;
    padding-bottom : 17px;
    width          : 375px;
    max-width      : 100%;
}


.see-all:hover
{
    color : #333333 !important;
}


.see-all:active
{
    padding-top    : 17px;
    padding-bottom : 15px;
}


.see-all i
{
    position   : absolute;
    right      : 6px;
    font-size  : 40px;
    top        : 50%;
    transform  : translateY(-50%);
    opacity    : 0.2;
    margin-top : -1px;
}


.see-all:active i
{
    margin-top : 1px;
}


.fb-login
{
    background  : #3B5999 !important;
    color       : #FFFFFF;
    text-shadow : none;
}


.g-login
{
    background  : #DF4F3F !important;
    color       : #FFFFFF;
    text-shadow : none;
}


.li-login
{
    background  : #007BB5 !important;
    color       : #FFFFFF;
    text-shadow : none;
}


.button-large
{
    min-width   : 180px;
    height      : 70px;
    text-align  : center;
    line-height : 57px;
}


.button-large:active img
{
    top : 1px;
}


.AxL_message
{
    display    : block;
    padding    : 12px;
    background : #F84000;
    color      : #FFFFFF;
}


.AxL_message:last-of-type
{
    margin-bottom : 0;
}


.AxL_message ul
{
    padding-left    : 20px;
    list-style-type : square;
    margin-top      : 6px;
}


.AxL_message ul li
{
}


.AxL_message a
{
    color           : #FFFFFF;
    text-decoration : underline !important;
}


.AxL_facebook_button, .AxL input[type='submit']
{
    font-size : 18px;
}


.side-panel #AxL_btnSubmit
{
    width : 100%;
}


.AxL label a
{
    float           : right;
    color           : #333333;
    text-decoration : underline;
}


.AxL .wrapper.focussed > label a
{
    color           : #5DB2F2;
    text-decoration : none;
}


.wrapper
{
    position : relative;
}


.wrapper.focussed
{
    box-shadow : 0 0 0 4px rgba(60, 60, 60, 0.94) !important;
}


#toast, #header-extension, .wrapper.focussed > label, .wrapper.focussed .panel-header
{
    background : rgba(60, 60, 60, 0.94);
}


.ui-widget-content
{
    background : rgba(60, 60, 60, 0.94);
    box-shadow : none;
}


.wrapper.focussed > label, .wrapper.focussed .panel-header
{
    color : #FFFFFF;
}


.error
{
    /*box-shadow : 0 0 0 4px rgba(200, 20, 0, 0.66);*/
    box-shadow : none;
}


.error label, .warning, .warning-bar
{
    color      : #FFFFFF !important;
    background : #F84000 !important;
}


.confirm-bar
{
    color      : #FFFFFF !important;
    background : rgba(0, 0, 0, 0.5) !important;
}


.warning-bar, .confirm-bar
{
    padding : 4px;
}


.ui-widget-content li, .ui-widget-content a, .ui-datepicker td span, .ui-datepicker td a
{
    color : #FFFFFF;
}


.ui-menu .ui-state-focus,
.ui-menu .ui-state-active
{
    margin     : 0 !important;
    background : rgba(255, 255, 255, 0.25);
}


.ui-autocomplete
{
    height     : 200px;
    overflow-y : auto;
    z-index    : 10001 !important
}


.ap
{
    background : #888888;
    padding    : 0 4px;
    display    : inline-block;
}


.ui-datepicker
{
    padding : 0;
    margin  : 4px 0 0 -4px;
}


.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year
{
    padding : 1px 0 1px 4px !important;
}


.ui-datepicker-prev
{
    background      : url(../images/arrow_left.png) no-repeat center;
    background-size : 24px;
}


.ui-datepicker-next
{
    background      : url(../images/arrow_right.png) no-repeat center;
    background-size : 24px;
}


.ui-datepicker th
{
    color : #5DB2F2;
}


.ui-datepicker td span, .ui-datepicker td a
{
    padding            : 0.25em 0.4em !important;
    height             : 2em;
    width              : 2em;
    line-height        : 1.4em;
    border-radius      : 50%;
    margin             : 0 auto;
    -webkit-transition : all 0.15s ease-in-out;
    -moz-transition    : all 0.15s ease-in-out;
    -o-transition      : all 0.15s ease-in-out;
    -ms-transition     : all 0.15s ease-in-out;
    transition         : all 0.15s ease-in-out;
}


.ui-datepicker td a:hover
{
    background : rgba(255, 255, 255, 0.25);
    box-shadow : 0 0 0 3px rgba(255, 255, 255, 0.25);
}


.ui-datepicker td.ui-state-disabled span
{
    color : rgba(255, 255, 255, 0.25);
}


.ui-datepicker td.ui-datepicker-other-month a
{
    color : rgba(255, 255, 255, 0.5);
}


.ui-datepicker td.ui-datepicker-current-day a
{
    background : #5DB2F2;
    color      : #333333;
}


#warning
{
    background : #F84000;
    color      : #FFFFFF;
    display    : inline-block;
    padding    : 4px;
}


.wait-bar
{
    width    : 100%;
    height   : 3px;
    position : relative;
    overflow : hidden;
}


h2 .wait-bar
{
    position : absolute;
    bottom   : 0;
    left     : 0;
    right    : 0;
}


@-webkit-keyframes WAITING
{
    0%
    {
        left : -12%;
    }

    100%
    {
        left : 112%;
    }
}


@-moz-keyframes WAITING
{
    0%
    {
        left : -12%;
    }

    100%
    {
        left : 112%;
    }
}


@-ms-keyframes WAITING
{
    0%
    {
        left : -12%;
    }

    100%
    {
        left : 112%;
    }
}


.wait-bar span
{
    background                        : #FFFFFF;
    top                               : 0;
    bottom                            : 0;
    left                              : -12%;
    position                          : absolute;
    display                           : block;
    width                             : 24%;
    margin-left                       : -12%;
    -webkit-animation                 : WAITING 2s infinite;
    -webkit-animation-timing-function : ease-in-out;
    -moz-animation                    : WAITING 2s infinite;
    -moz-animation-timing-function    : ease-in-out;
    -ms-animation                     : WAITING 2s infinite;
    -ms-animation-timing-function     : ease-in-out;
}


.bulletted li
{
    padding-left    : 12px;
    background      : url(../images/bullet_small.png) no-repeat 0 6px;
    background-size : 8px;
    font-size       : 13px;
}


.panel
{
    padding : 0;
    display : block;
}


.panel-inner
{
    display  : block;
    position : relative;
    margin   : 6px;
}


.features
{
    background : #EEEEEE;
    padding    : 0 3px 6px;
}


.features li
{
    float               : left;
    width               : 50px;
    height              : 80px;
    background-repeat   : no-repeat;
    background-position : center 6px;
    background-size     : 40px;
    max-width           : 16.6%;
    padding             : 6px 3px 0;
    opacity             : 0.6;
}


.features li span
{
    display     : block;
    margin-top  : 50px;
    width       : 100%;
    text-align  : center;
    font-size   : 11px;
    line-height : 1;
}


#account-nav
{
    background : #5DB2F2;
}


#account-nav nav a
{
    color : #FFFFFF;
}


#account-extras h2
{
    position    : absolute;
    color       : #FFFFFF;
    top         : 6px;
    right       : 8px;
    margin      : 0;
    line-height : 1;
    z-index     : 101;
    font-weight : normal;
    width       : 70px;
    text-align  : right;
}


#account-extras li
{
    cursor : pointer;
}


#account-extras .panel
{
    padding-right : 80px;
}


p.payment-note
{
    font-size : 12px;
}


.item
{
    padding-right : 60px;
    position      : relative;
}


.item .price
{
    width      : 60px;
    position   : absolute;
    top        : 0;
    right      : 0;
    text-align : right;
}


.form_caption h3
{
    font-size     : 24px;
    margin-bottom : 6px;
}


.form_element
{
    background    : #FFFFFF;
    margin-bottom : 8px;
    box-shadow    : 0 1px 1px rgba(0, 0, 0, 0.4);
    font-size     : 13px;
}


.form_element_plain
{
    background : none;
    box-shadow : none;
    min-height : 0 !important;
}


.form_element_plain label
{
    background : none !important;
    height     : auto !important;
}


.form_element_plain input
{
    margin-top : 0 !important;
}


.form_element_plain span
{
    margin-top : 2px !important;
}


.form_element.wrapper:hover
{
    box-shadow : 0 1px 1px rgba(0, 0, 0, 0.4), 0 0 0 4px rgba(0, 0, 0, 0.1);
}


.form_element.wrapper.focussed.error
{
    box-shadow : 0 0 0 4px #F84000 !important;
}


.form_caption label, .form_element > label
{
    display : block;
    color   : #888888;
    padding : 4px;
}


.form_element > label
{
    background : #FAFAFA;
}


.form_element input:not([type="checkbox"]):not([type="radio"]), .form_element select, .form_element textarea
{
    width     : 100%;
    font-size : 16px;
}


.form_element textarea
{
    height : auto;
}


.form_element input[type='checkbox']
{
    width       : auto;
    margin-top  : 7px;
    margin-left : 8px;
}


.form_element input[type='checkbox'] + span
{

    font-size      : 16px;
    vertical-align : -10px;
}


.form_element > label, .form_element input, .form_element select
{
    line-height : 1;
}


.form_element input
{
    padding : 4px 8px;
}


.form_element input + input, .form_element select + select, .form_element select + input, .form_element input + select
{
    border-left : 1px solid #CCCCCC;
}


.form_element .tip
{
    display : none;
}


.form_element .warning
{
    display : none;
    color   : #F84000;
    padding : 4px 8px;
}


.form_caption
{
    font-size : 13px;
    margin    : 0 0 12px;
}


.form_element + .form_caption
{
    margin : 12px 0 8px;
}


.form_caption_bubble
{
    background : #FFFFFF;
}


.form_caption .t-r
{
    float  : right;
    margin : 0;
}


ul.stars
{
    list-style-type : none;
    padding         : 0;
    margin          : 10px 0 0 0;
}


ul.stars li
{
    float  : left;
    width  : 20%;
    margin : 0;
}


ul.stars li a
{
    cursor     : pointer;
    color      : #DDDDDD;
    font-size  : 30px;
    text-align : center;
    display    : block;
    width      : 100%;
}


ul.stars li.marked a
{
    color : #FFFF00;
}


ul.stars li.marked a
{
    color : rgba(255, 190, 18, 1);
}


ul.stars li.marked-hover a
{
    color : rgba(255, 190, 18, 0.5);
}


.ph-ctas .panel, .ph-ctas video
{
    margin-bottom : 20px;
}


.stripe-silver .ph-ctas .panel-inner
{
    color : #333333;
}


.panel-special-offer
{
    text-align : left;
    padding    : 15px 0 !important;
}


.panel-special-offer .panel-inner
{
    margin : 0;
}


.panel-special-offer .row
{
    margin : 0;
}


.panel-special-offer .col-sm-8
{
    padding-right : 130px;
}


.panel-special-offer h3, .panel-special-offer h4
{

    height        : auto;
    margin-bottom : 15px;
    color         : #333333 !important;
}


.panel-special-offer h3
{
    font-size : 34px;
}


.panel-special-offer h4
{
    font-size : 24px;
}


.panel-special-offer p
{
    color : #333333 !important;
}


.panel-special-offer .col-sm-4 img
{
    width     : 100%;
    display   : block;
    max-width : 360px;
    margin    : 0 auto;
}


.panel-special-offer p, .panel-special-offer .ph-benefit-highlights
{
    margin-bottom : 15px !important;
}


.panel-special-offer .button-lite
{
    line-height : 25px;
}


.panel-special-offer figure
{
    display : none;
}


.panel-special-offer .special-offer-detail
{
    padding : 15px 0 0;
}


.panel-special-offer .special-offer-detail .sep
{
    margin-left  : 15px;
    margin-right : 15px;
}


.panel-special-offer .special-offer-detail .col-sm-8
{
    padding-right : 15px;
    padding-top   : 15px;
}


.panel-special-offer .terms
{
    font-size   : 75%;
    line-height : normal;
}


@media all and (min-width : 768px)
{
    .panel-special-offer figure
    {
        display    : block;
        bottom     : auto;
        top        : 0;
        right      : 15px;
        box-shadow : none !important;
    }

    .panel-special-offer .special-offer-detail .col-sm-8
    {
        padding-top : 0;
    }
}


.panel-special-offer figure
{
    transform : rotate(0deg);
    position  : absolute;
    width     : 100px;
    height    : 100px;
    padding   : 5px;
}


main .panel.panel-special-offer:hover figure
{
    box-shadow : none !important;
}


.panel-special-offer figure.ph-countdown
{
    top        : 75px;
    transform  : scale(0.8);
    /*box-shadow       : 0 0 0 6px #FFFFFF !important;*/
    background : #333333 !important;
}


.panel-special-offer figure.ph-countdown .ph-callout
{
    margin-top : -8px;
    color      : #FFFFFF;
}


.panel-special-offer figure.ph-countdown .ph-callout em
{
    font-size   : 32px;
    line-height : 1;
}


.ph-countdown-spinner
{
    position          : absolute;
    top               : 3px;
    right             : 3px;
    bottom            : 3px;
    left              : 3px;
    display           : block;

    -webkit-animation : rotate 60s infinite steps(60);
    -moz-animation    : rotate 60s infinite steps(60);
    animation         : rotate 60s infinite steps(60);
}


.ph-countdown-spinner:before
{
    content       : ' ';
    display       : block;
    background    : #FFFFFF;
    border-radius : 3px;
    width         : 3px;
    height        : 12px;
    position      : absolute;
    left          : 50%;
    top           : 0;
}


.ph-countdown svg
{
    position : absolute;
    top      : -5%;
    right    : -5%;
    bottom   : -5%;
    left     : -5%;
    width    : 110%;
    height   : 110%;

}


#ph-benefit-list-expired p, #ph-benefit-list-expired a
{
    display : none;
}


#ph-benefit-list-expired .panel-special-offer
{
    opacity        : 0.5;
    pointer-events : none;
}


#ph-benefit-list-expired .panel-special-offer .col-sm-4 img
{
    width      : auto;
    max-height : 140px;
}


.ph__benefit > p:first-child
{
    margin-top : 0
}


.ph-redeem-button
{
    width          : 100%;
    max-width      : 266px;
    text-align     : center;
    padding-top    : 8px;
    padding-bottom : 12px;
    margin         : 0 auto;
    display        : inherit;
}


.ph-redeem-button:active
{
    padding-bottom : 8px;
    padding-top    : 12px;
}


.ph-redeem-caption
{
    font-weight : normal;
    font-size   : 13px;
    opacity     : 0.7;
    line-height : 1.2;
}


.ph-benefit-content-container .ph-redeem-button
{
    margin : 0;
}


/*
.stripe-banner
{
    color      : #FFFFFF;
    background : #333333;
    background : -moz-radial-gradient(bottom, ellipse cover, #555555 0%, #333333 100%);
    background : -webkit-radial-gradient(bottom, ellipse cover, #555555 0%, #333333 100%);
    background : radial-gradient(ellipse at bottom, #555555 0%, #333333 100%);
    filter     : progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555', endColorstr='#333333', GradientType=1);
}
*/


.ph-terms
{
    line-height : 2;
}


@-moz-keyframes rotate
{
    100%
    {
        -moz-transform : rotateZ(360deg);
    }
}


@-webkit-keyframes rotate
{
    100%
    {
        -webkit-transform : rotateZ(360deg);
    }
}


@keyframes rotate
{
    100%
    {
        -webkit-transform : rotateZ(360deg);
        transform         : rotateZ(360deg);
    }
}


@media all and (max-width : 480px)
{
    .introPriceTable, .introPriceTable thead, .introPriceTable tbody, .introPriceTable th, .introPriceTable td, .introPriceTable tr
    {
        display : block;
    }

    .introPriceTable thead tr
    {
        position : absolute;
        top      : -9999px;
        left     : -9999px;
    }

    .introPriceTable tr
    {
        border-bottom : 1px solid #CCCCCC;
    }

    .introPriceTable td
    {
        position       : relative;
        padding-bottom : 0;
        padding-left   : 50%;
        color          : inherit;
    }

    .introPriceTable td:before
    {
        position      : absolute;
        left          : 0;
        width         : 45%;
        padding-right : 10px;
        white-space   : nowrap;
        color         : #999999;
    }

}