/* https://www.hearnlawfirm.net/wp-content/themes/pql32/style.css */
/*! 
Theme Name: 1p21 Theme Build
Author: iLawyer

--------------

for future friendly editing and to avoid possibility of change overrides, DO:
- For smaller and or quick fixes, put css changes in post-live.css 
OR
- For complex and or elaborate rebuilds/ Site build, modify sass files locally with a compiler and output as the style.css
*/
 *:where(:not(html,iframe,canvas,img,svg,video,audio,input,textarea,select,button,table,caption,tbody,tfoot,thead,tr,th,td):not(svg *,symbol *)){all:unset;display:revert}:where(input,textarea,select,option,button,optgroup){all:revert;margin:unset;appearance:auto}:where(table,caption,tbody,tfoot,thead,tr,th,td){margin:unset;padding:unset;border:unset;background:unset;border-collapse:collapse;border-spacing:0}a,button{cursor:revert}ol,ul,menu{list-style:none}img{max-inline-size:100%;max-block-size:100%}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert}::placeholder{color:unset}::marker{content:initial}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true]){-webkit-user-drag:element}:where(dialog:modal){all:revert}*,*::before,*::after{box-sizing:border-box}:root{--br-xxs:359px;--br-xs:767px;--br-sm:1199px;--br-md:1399px;--br-lg:1899px;--br-xl:2879px;--br-xxl:3839px;--comp:360px;--font-primary:Lato, sans-serif;--font-secondary:Prata, serif;--font-accent:Inter, Lato, sans-serif;--font-monospace:monospace;--color-dark:#040F36;--color-dark-alt:#000029;--color-light:#FFFFFF;--color-light-alt:#F7F3ED;--color-primary:#EAC77D;--color-primary-alt:#B47B44;--color-primary-gradient-start:var(--color-primary);--color-primary-gradient-end:var(--color-primary-alt);--color-secondary:#000D3B;--color-secondary-alt:#071B31;--color-secondary-gradient-start:var(--color-secondary);--color-secondary-gradient-end:var(--color-secondary-alt);--color-accent:var(--color-secondary);--color-accent-alt:var(--color-accent);--color-accent-gradient-start:#000F45;--color-accent-gradient-end:var(--color-dark-alt);--color-neutral:#D8D8D8;--color-neutral-light:var(--color-neutral);--color-neutral-lighter:#F2F2F2;--color-neutral-lightest:var(--color-neutral-lighter);--color-neutral-dark:#000D3B;--color-neutral-darker:var(--color-neutral-dark);--color-neutral-darkest:var(--color-neutral-darker);--color-success:#0C0;--color-caution:#C60;--color-error:var(--color-primary)}@media only screen and (min-width:768px){:root{--comp:768px}}@media only screen and (min-width:1200px){:root{--comp:1200px}}@media only screen and (min-width:1400px){:root{--comp:1400px}}@media only screen and (min-width:1900px){:root{--comp:1920px}}html,body{min-width:320px;font-family:var(--font-primary);font-weight:400;color:var(--scheme-fg,var(--color-dark));background:var(--color-light);background-attachment:fixed;word-wrap:break-word;scroll-behavior:smooth;min-height:100vh;min-height:-webkit-fill-available;accent-color:var(--color-primary)}html{overflow-x:hidden;overflow-y:scroll}body{overflow-x:clip}@media (pointer:coarse){html,body{scrollbar-width:none}::-webkit-scrollbar{display:none}}*:focus{outline:none}html{-webkit-text-size-adjust:100%}*,*::before,*::after{-webkit-backspace-visibility:hidden;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input:not([type=checkbox]):not([type=radio]),textarea,select,button{-webkit-appearance:none;-webkit-border-radius:0;border-radius:0;border:none;resize:none;display:block;font:inherit;color:inherit;margin:0}input:is([type=checkbox],[type=radio]){-webkit-appearance:auto;appearance:auto}input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:inherit;opacity:.5;-webkit-transition:all 0.25s ease-in-out;-moz-transition:all 0.25s ease-in-out;-ms-transition:all 0.25s ease-in-out;-o-transition:all 0.25s ease-in-out;transition:all 0.25s ease-in-out}input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:inherit;opacity:.5;-webkit-transition:all 0.25s ease-in-out;-moz-transition:all 0.25s ease-in-out;-ms-transition:all 0.25s ease-in-out;-o-transition:all 0.25s ease-in-out;transition:all 0.25s ease-in-out}input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:inherit;opacity:.5;-webkit-transition:all 0.25s ease-in-out;-moz-transition:all 0.25s ease-in-out;-ms-transition:all 0.25s ease-in-out;-o-transition:all 0.25s ease-in-out;transition:all 0.25s ease-in-out}input:focus::-webkit-input-placeholder,select:focus::-webkit-input-placeholder,textarea:focus::-webkit-input-placeholder{opacity:.2}input:focus::-moz-placeholder,select:focus::-moz-placeholder,textarea:focus::-moz-placeholder{opacity:.2}input:focus::-ms-input-placeholder,select:focus::-ms-input-placeholder,textarea:focus::-ms-input-placeholder{opacity:.2}button{border:none;cursor:pointer}a{text-decoration:none;color:inherit}pre,code,kbd,tt{font-family:var(--font-monospace);background:rgba(0,0,0,.05)}code,kbd,tt{padding:.125em}pre{padding:1em;max-width:100%;line-height:1;overflow:auto}pre *{border:0;margin:0;padding:0}strong,b{font-family:inherit;font-weight:bolder}em,cite,i,var{font-family:inherit;font-style:italic}var{font-family:var(--font-secondary)}sup,sub,small{font-size:.75em}sup{vertical-align:top}sub{vertical-align:bottom}:where(hr){outline:0;border:0;display:block;margin:0}:where(img,svg){max-width:100%}:where(img){height:auto}video,audio,iframe,object,embed{max-width:100%!important}:where(main,.main,aside,.aside){padding-top:3.125rem;padding-bottom:3.125rem}@media only screen and (min-width:768px){:where(main,.main,aside,.aside){padding-top:3.75rem;padding-bottom:3.75rem}}@media only screen and (min-width:1200px){:where(main,.main,aside,.aside){padding-top:5.5625rem;padding-bottom:7rem}}@media only screen and (min-width:1400px){:where(main,.main,aside,.aside){padding-top:5.625rem;padding-bottom:7.5rem}}@media only screen and (min-width:1900px){:where(main,.main,aside,.aside){padding-top:7.5rem;padding-bottom:150px}}.banner-no-background-image :where(main,.main){padding-top:0}.template-wrapper{position:relative;overflow-x:hidden}@media only screen and (max-width:1199px){.animate__animated{-o-transition-property:none!important;-moz-transition-property:none!important;-ms-transition-property:none!important;-webkit-transition-property:none!important;transition-property:none!important;-o-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-webkit-transform:none!important;transform:none!important;-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;-ms-animation:none!important;animation:none!important}}@media only screen and (min-width:1200px){.animate__animated-custom-entranceReady{opacity:0;transition:none}.visible .animate__animated-custom-entranceReady{opacity:1}}:is(input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]),:is(.gform_wrapper,.gfield_required) .gfield_required,.gform_wrapper.gravity-theme .gfield_required .gfield_required_custom,.gform_wrapper.gravity-theme .gfield_label,.gform_wrapper.gravity-theme :is(.description,.gfield_description,.gsection_description,.instruction),.gform_wrapper.gravity-theme .field_description_above :is(.description,.gfield_description,.gsection_description,.instruction),.gform_wrapper.gravity-theme :is(.gfield_validation_message,.validation_message){font:inherit;color:inherit;margin:0;padding:0}.gform_wrapper.gravity-theme .gform_header,.gform_wrapper.gravity-theme .gform_footer{padding:0;margin:0}.gfield:is(.gfield-custom-box-label-inset,.gfield-custom-box-label-adjacent) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]){line-height:var(--field-line-height,inherit);border-radius:var(--field-border-radius,0);color:var(--color-dark);padding-left:calc(var(--field-padding-x, 1em) - var(--field-border-width, 1px));padding-right:calc(var(--field-padding-x, 1em) - var(--field-border-width, 1px));padding-top:calc((var(--field-height, 3em) - var(--field-border-width, 1px) * 2 - 1em * var(--field-line-height, 1.25)) * var(--field-baseline-offset, 0.5));padding-bottom:calc((var(--field-height, 3em) - var(--field-border-width, 1px) * 2 - 1em * var(--field-line-height, 1.25)) * (1 - var(--field-baseline-offset, 0.5)));background-size:calc(100% + var(--field-border-width, 1px) * 2) calc(100% + var(--field-border-width, 1px) * 2);background-position:calc(var(--field-border-width, 1px) * -1) calc(var(--field-border-width, 1px) * -1);max-width:100%}.gfield:is(.gfield-custom-box-label-adjacent) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]){border-width:var(--field-border-width,1px);border-style:solid;min-height:0}.gfield:is(.gfield-custom-box-label-adjacent):is(.focus) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]):focus{border-width:var(--field-border-width,2px)}.gfield:is(.gfield-custom-box-label-inset) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]){background-color:var(--color-light);color:var(--color-dark)}.gform_wrapper.gravity-theme :is(.gfield_validation_message,.validation_message){background:none;border:0}.gform_wrapper.gravity-theme :is(.description,.gfield_description,.gsection_description,.instruction,.gfield_validation_message,.validation_message){margin-top:.5em}.gform_wrapper.gravity-theme .field_description_above :is(.description,.gfield_description,.gsection_description,.instruction){margin-top:0;margin-bottom:.5em}.gform_wrapper.gravity-theme .ginput_container_time{min-width:calc(var(--field-padding-x) * 2 + 5ch);max-width:calc(var(--field-padding-x) * 2 + 5ch)}.gform_wrapper.gravity-theme .ginput_complex{align-items:center}.gform_wrapper.gravity-theme .ginput_container_date input{width:100%}.gfield.gfield_error :is(label,legend),.gfield_validation_message,.gfield .validation_message,.gfield [aria-invalid=true]+label,.gfield .gform_wrapper label+[aria-invalid=true]{color:var(--field-error-color)!important}.gfield:is(.gfield-custom-box-label-adjacent):is(.gfield_error) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea):is([aria-invalid=true]){border-color:var(--field-error-color)!important}.gfield .gchoice{margin:0 0 .5em}:is(form,.gform_wrapper,.gfield){--field-height:3.5rem;--field-border-width:1px;--field-border-radius:4px;--field-padding-x:1.5em;--field-required-color:var(--color-primary);--field-error-color:var(--color-error);--field-baseline-offset:0.5;--field-line-height:1.125;font-size:1rem;line-height:var(--field-line-height,1.125)}:is(form,.gform_wrapper,.gfield):is(.gfield-custom-box-label-adjacent) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea){border-color:var(--color-neutral)}:is(form,.gform_wrapper,.gfield):is(.focus,.gfield_error),:is(form,.gform_wrapper,.gfield):is(.gfield-custom-box-label-adjacent):is(.gfield_error) .gfield_label,:is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea):is([aria-invalid=true],:focus){--field-border-width:2px}:is(form,.gform_wrapper,.gfield):is(.focus):is(.gfield-custom-box-label-adjacent):is(.focus) .gfield_label,:is(form,.gform_wrapper,.gfield):is(.focus) :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]):is(:focus){border-color:var(--color-primary)}.gform_wrapper.gravity-theme .gfield:is(.gfield_type_textarea,.gfield_type_multiselect) :is(textarea,select).large{height:9.125rem}.gform_wrapper.gravity-theme .gfield:is(.gfield_type_textarea,.gfield_type_multiselect) :is(textarea,select).medium{height:7.125rem}.gform_wrapper.gravity-theme .gfield:is(.gfield_type_textarea,.gfield_type_multiselect) :is(textarea,select).small{height:5.125rem}.gform_wrapper.gravity-theme .gfield_label{font-size:1.125rem;line-height:var(--field-line-height,inherit);font-weight:400;margin-bottom:.5em;display:flex}.gform_wrapper.gravity-theme .gform_fields{column-gap:1rem;row-gap:1.375rem}@media only screen and (min-width:768px){.gform_wrapper.gravity-theme .gform_fields{row-gap:1.25rem}}@media only screen and (min-width:1200px){.gform_wrapper.gravity-theme .gform_fields{row-gap:1.25rem}}@media only screen and (min-width:1400px){.gform_wrapper.gravity-theme .gform_fields{row-gap:1.75rem}}.required-glyph,.gfield-custom-label-indicator.ginput_container::after,.gform_wrapper.gravity-theme .gfield_required{font-size:1em;line-height:var(--field-line-height,inherit);color:var(--field-required-color);font-style:normal;font-weight:700;margin-left:.125em;order:99}.required-message{font-size:.875rem;color:var(--color-light);letter-spacing:0em;text-transform:lowercase;font-weight:500}@media only screen and (min-width:768px){.required-message{margin-top:-.5rem;text-align:center}}@media only screen and (min-width:1200px){.required-message{text-align:right}}.disclaimer-message{font-size:1rem}.gfield-custom-label-indicator:is(.ginput_container::before,.ginput_container::after,.gfield_label::after,.gfield_label>.gfield_required){display:block;pointer-events:none}.ginput_container{position:relative}.ginput_container::before,.ginput_container::after{position:absolute;top:var(--field-border-width);right:var(--field-padding-x);top:calc((var(--field-height) - 1em * var(--field-line-height)) * 0.5);z-index:3}.gfield_label>.gfield_required,.gfield_label::after{margin-left:.25em}.gfield_contains_required .gfield-custom-label-indicator[data-required-glyph]::before{right:calc(var(--field-padding-x) + 3em)}.gfield-custom-label-indicator.ginput_container::before{color:var(--color-dark-alt)}.gfield-custom-label-indicator.ginput_container::after,.gfield-custom-label-indicator.gfield_label>.gfield_required{color:var(--field-required-color)}.gfield-custom-no-label-indicator.gfield_label>.gfield_required{padding-left:0}.gfield_type_select .ginput_container::before{content:"\25BC\FE0E";font-size:.75em;align-self:center}.gfield_type_phone.gfield-custom-box-label-inset .gfield_label::after{content:"(___) ___-____";position:static}.gform_wrapper.gravity-theme .gfield.gfield-custom-box{position:relative}.gform_wrapper.gravity-theme .gfield.gfield-custom-box .gfield_label{align-self:start}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-inset .gfield_label{position:absolute;top:var(--field-border-width);left:var(--field-border-width);right:var(--field-border-width);z-index:1;margin-bottom:0;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - var(--field-border-width) * 2);padding-right:calc(var(--field-padding-x) * 2 - var(--field-border-width))}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-inset:is(.active,.focus,:focus-within) .gfield_label{opacity:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-inset :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]):not(:focus)::-webkit-input-placeholder{color:transparent}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-inset :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]):not(:focus)::-moz-placeholder{color:transparent}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-inset :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]):not(:focus)::-ms-input-placeholder{color:transparent}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent{display:grid;grid-template-columns:auto 1fr;grid-template-rows:max-content}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent .gfield_label,.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent .ginput_container{min-width:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent .gfield_label{margin-bottom:0;background-color:var(--color-light-alt)}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent *:not(.gfield_label):not(.ginput_container){grid-column:1/-1}@media only screen and (min-width:768px){.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:is(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) :is(.gfield_label,.ginput_container){grid-column:1/-1}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:is(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) .gfield_label{border-bottom-left-radius:0;border-bottom-right-radius:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:is(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) .ginput_container{grid-column:2}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:is(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea){border-top-left-radius:0;border-top-right-radius:0;border-top:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:not(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) :is(.gfield_label,.ginput_container){grid-row:1}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:not(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) .gfield_label{grid-column:1;max-width:max-content;border-top-right-radius:0;border-bottom-right-radius:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:not(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) .ginput_container{grid-column:2}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent:not(.gfield_type_textarea,.gfield_type_multiselect,.gfield_type_post_title,.gfield_type_post_content,.gfield_type_post_excerpt) :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea){border-top-left-radius:0;border-bottom-left-radius:0;border-left:0}}@media only screen and (max-width:767px){.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent :is(.gfield_label,.ginput_container){grid-column:1/-1}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent .gfield_label{border-bottom-left-radius:0;border-bottom-right-radius:0}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent .ginput_container{grid-column:2}.gform_wrapper.gravity-theme .gfield.gfield-custom-box.gfield-custom-box-label-adjacent :is(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),select,textarea,[aria-invalid=true]){border-top-left-radius:0;border-top-right-radius:0;border-top:0;border-top:0}}.field-form :where(.faux-gform_wrapper) .gform_heading{text-align:center;max-width:max-content;margin-bottom:2rem}.field-form :where(.faux-gform_wrapper) :where(.gform_heading,.gform_title,.gform_description){margin-left:auto;margin-right:auto}.field-form :where(.faux-gform_wrapper) :is(.gform_title,.gform_description):last-child{margin-bottom:0}.field-form :is(.gform_wrapper) .gform_body .gfield--type-select{position:relative}.field-form :is(.gform_wrapper) .gform_body .gfield--type-select .ginput_container::before{content:"в–јпёЋ";font-size:.65em;color:var(--color-dark);align-self:center;position:absolute;top:0;right:1.5em;bottom:0;margin:auto;pointer-events:none}.field-form :is(.gform_wrapper) .gform_footer{margin:0;margin-top:2.688rem}.field-form :is(.gform_wrapper) .gform_footer :is(.gform_button){font-size:.875rem;--button-height:3.875rem;margin-bottom:0}@media only screen and (min-width:768px){.field-form :is(.gform_wrapper) .gform_footer :is(.gform_button){--button-padding-x:2rem}}@media only screen and (min-width:1900px){.field-form :is(.gform_wrapper) .gform_footer :is(.gform_button){font-size:.9375rem}}.field-form-body :is(.gform_wrapper) .gform_heading{display:none}.gform_hidden,.validation_message.instruction,.gform_validation_container,.gform_validation_errors,.gform_required_legend{display:none!important}:root{--swiper-theme-color:var(--color-primary);--swiper-navigation-sides-offset:0rem;--swiper-pagination-color:var(--swiper-theme-color);--swiper-pagination-bottom:1.5rem;--swiper-pagination-top:auto;--swiper-pagination-right:1rem;--swiper-pagination-left:auto;--swiper-pagination-bullet-size:.375rem;--swiper-pagination-bullet-width:var(--swiper-pagination-bullet-size);--swiper-pagination-bullet-height:var(--swiper-pagination-bullet-size);--swiper-pagination-bullet-horizontal-gap:calc(var(--swiper-pagination-bullet-size) * 3);--swiper-pagination-bullet-vertical-gap:var(--swiper-pagination-bullet-size);--swiper-pagination-bullet-opacity:1;--swiper-pagination-bullet-inactive-opacity:1;--swiper-pagination-bullet-inactive-color:#ffffff5c;--swiper-pagination-progressbar-size:var(--swiper-pagination-bullet-size);--swiper-pagination-progressbar-bg-color:#ffffff5c;--swiper-scrollbar-border-radius:calc(var(--swiper-pagination-bullet-size) * .5);--swiper-scrollbar-bg-color:var(--swiper-pagination-progressbar-bg-color);--swiper-scrollbar-drag-bg-color:var(--color-neutral);--swiper-scrollbar-sides-offset:1rem;--swiper-scrollbar-bottom:1.5rem;--swiper-scrollbar-top:auto}.swiper{transition:opacity 0.25s ease-in-out;opacity:0}.swiper.swiper-initialized{opacity:1}:is(:where(.swiper-horizontal)>.swiper-pagination-bullets,.swiper-pagination-bullets:where(.swiper-pagination-horizontal),.swiper-pagination-custom,.swiper-pagination-fraction):not(.swiper-pagination-lock){bottom:var(--swiper-pagination-bottom);display:flex;flex-wrap:wrap;justify-content:center;gap:var(--swiper-pagination-bullet-horizontal-gap)}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal .swiper-pagination-bullets .swiper-pagination-bullet{margin:0}.swiper-button-next,.swiper-button-prev{--button-baseline-offset:.5 !important;--swiper-navigation-size:var(--button-height);z-index:1;width:auto}.swiper-button-next::before,.swiper-button-next::after,.swiper-button-prev::before,.swiper-button-prev::after{content:none}.swiper-button-prev .content-icon{transform:scaleX(-1)}.swiper-custom-pagination-static .swiper-pagination{position:static;margin-top:var(--swiper-pagination-bottom)}@media only screen and (max-width:1199px){.swiper-custom-pagination-static-sm .swiper-pagination{position:static;margin-top:var(--swiper-pagination-bottom)}}@media only screen and (max-width:1199px){.swiper-custom-pagination-static-xs .swiper-pagination{position:static;margin-top:var(--swiper-pagination-bottom)}}.swiper-custom-hide-slides .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active){opacity:0!important;pointer-events:none!important;transition:opacity 0.25s ease-in-out}@media only screen and (max-width:1199px){.swiper-custom-hide-slides-sm .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active){opacity:0!important;pointer-events:none!important;transition:opacity 0.25s ease-in-out}}@media only screen and (max-width:1199px){.swiper-custom-hide-slides-xs .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active){opacity:0!important;pointer-events:none!important;transition:opacity 0.25s ease-in-out}}.swiper-custom-equal-heights .swiper-slide{height:auto;align-self:stretch}@media only screen and (max-width:1199px){.swiper-custom-equal-heights-sm .swiper-slide{height:auto;align-self:stretch}}@media only screen and (max-width:1199px){.swiper-custom-equal-heights-xs .swiper-slide-slide{height:auto;align-self:stretch}}.swiper-custom-buttons-static .swiper-wrapper{height:auto}.swiper-custom-buttons-static .swiper-button-next,.swiper-custom-buttons-static .swiper-button-prev{position:static;transform:none;margin:0;margin-top:.75rem}.swiper-custom-buttons-static .swiper-button-next~.swiper-pagination,.swiper-custom-buttons-static .swiper-button-prev~.swiper-pagination{display:inline-flex;width:auto}@media only screen and (max-width:1199px){.swiper-custom-buttons-static-sm .swiper-wrapper{height:auto}.swiper-custom-buttons-static-sm .swiper-button-next,.swiper-custom-buttons-static-sm .swiper-button-prev{position:static;transform:none;margin:0;margin-top:1.5rem}.swiper-custom-buttons-static-sm .swiper-button-next~.swiper-pagination,.swiper-custom-buttons-static-sm .swiper-button-prev~.swiper-pagination{display:inline-flex;width:auto}}@media only screen and (max-width:767px){.swiper-custom-buttons-static-xs .swiper-wrapper{height:auto}.swiper-custom-buttons-static-xs .swiper-button-next,.swiper-custom-buttons-static-xs .swiper-button-prev{position:static;transform:none;margin:0;margin-top:.75rem}.swiper-custom-buttons-static-xs .swiper-button-next~.swiper-pagination,.swiper-custom-buttons-static-xs .swiper-button-prev~.swiper-pagination{display:inline-flex;width:auto}.swiper-custom-buttons-static-xs .swiper-button-prev{margin-right:.06125rem}.swiper-custom-buttons-static-xs .swiper-button-next{margin-left:.06125rem}}:is(:where(*.h1,*.h2,*.h3,*.h4,*.h5,*.h6),.content :where(h1,h2,h3,h4,h5,h6)) a{font:inherit!important}:is(:where(*.h1,*.h2,*.h3,*.h4,*.h5,*.h6),.content :where(h1,h2,h3,h4,h5,h6)) a:not(:hover,:focus){color:inherit;text-decoration:none}:is(:where(*.h1),.content :where(h1)){font-size:1.875rem;line-height:calc(1em + 16px);font-family:var(--font-secondary);color:var(--color-dark);letter-spacing:0em;text-transform:none;font-style:normal;font-weight:400;margin-bottom:.75rem}:is(.content-palette-dark) :is(:where(*.h1),.content :where(h1)){color:var(--scheme-fg,inherit)}@media only screen and (min-width:768px){:is(:where(*.h1),.content :where(h1)){font-size:2.5rem;line-height:1.45}}@media only screen and (min-width:1200px){:is(:where(*.h1),.content :where(h1)){font-size:2.8125rem;line-height:1.3777777778}}@media only screen and (min-width:1400px){:is(:where(*.h1),.content :where(h1)){font-size:3rem;line-height:1.4583333333}}@media only screen and (min-width:1900px){:is(:where(*.h1),.content :where(h1)){font-size:3.125rem;line-height:1.44}}:is(:where(*.h2),.content :where(h2)){font-size:1.3125rem;line-height:calc(1em + 9px);font-family:var(--font-primary);color:var(--color-primary-alt);letter-spacing:0em;text-transform:none;font-style:normal;font-weight:700;margin-bottom:1em}:is(.content-palette-dark) :is(:where(*.h2),.content :where(h2)){color:var(--scheme-sp,var(--color-primary))}@media only screen and (min-width:1200px){:is(:where(*.h2),.content :where(h2)){font-size:1.375rem;line-height:1.3636363636}}@media only screen and (min-width:1400px){:is(:where(*.h2),.content :where(h2)){font-size:1.4375rem}}@media only screen and (min-width:1900px){:is(:where(*.h2),.content :where(h2)){font-size:1.5rem}}:is(:where(*.h3),.content :where(h3)){font-size:1.125rem;line-height:1.6666666667;font-family:var(--font-primary);color:var(--color-dark);letter-spacing:0em;text-transform:none;font-style:normal;font-weight:700;margin-bottom:1.5rem}:is(.content-palette-dark) :is(:where(*.h3),.content :where(h3)){color:var(--color-secondary)}@media only screen and (min-width:1200px){:is(:where(*.h3),.content :where(h3)){font-size:1.1875rem;line-height:1.4736842105}}@media only screen and (min-width:1400px){:is(:where(*.h3),.content :where(h3)){font-size:1.1875rem;line-height:1.5789473684}}:is(:where(*.h4),.content :where(h4)){font-size:1.0625rem;line-height:calc(1em + 12px);font-family:var(--font-primary);color:var(--color-primary-alt);letter-spacing:0em;text-transform:none;font-style:normal;font-weight:900;margin-bottom:1.3rem}:is(.content-palette-dark) :is(:where(*.h4),.content :where(h4)){color:var(--scheme-fg,var(--color-primary))}@media only screen and (min-width:1200px){:is(:where(*.h4),.content :where(h4)){font-size:1.125rem;line-height:1.4444444444}}@media only screen and (min-width:1400px){:is(:where(*.h4),.content :where(h4)){font-size:1.125rem;line-height:1.6666666667}}:is(:where(*.h5),.content :where(h5)){font-size:.875rem;line-height:calc(1em + 5px);font-family:var(--font-accent);color:inherit;letter-spacing:0em;text-transform:uppercase;font-style:normal;font-weight:700;margin-bottom:.5rem}:is(:where(*.h6),.content :where(h6)){font-size:.9375rem;line-height:calc(1em + 5px);font-family:var(--font-accent);color:inherit;letter-spacing:.1em;text-transform:uppercase;font-style:normal;font-weight:700;margin-bottom:.5rem}:is(:where(*.blockquote),.content :where(blockquote)){font-size:1.5rem;line-height:1.5;font-family:var(--font-secondary);color:var(--color-dark);text-transform:none;font-style:normal;font-weight:400;text-align:center;margin-left:auto;margin-right:auto;width:100%;margin-block:1.55em;--fancy-hr-margin-block:1.5rem 0}:is(.content-palette-dark) :is(:where(*.blockquote),.content :where(blockquote)){color:var(--scheme-fg-contrast,inherit)}:is(:where(*.blockquote),.content :where(blockquote))>*{font:inherit;color:inherit;margin-top:0;padding:0}:is(:where(*.blockquote),.content :where(blockquote))>*:last-child{margin-bottom:0}@media only screen and (min-width:768px){:is(:where(*.blockquote),.content :where(blockquote)){font-size:1.625rem;line-height:1.5384615385;max-width:616px;margin-block:3.75rem 2.5rem}}@media only screen and (min-width:1200px){:is(:where(*.blockquote),.content :where(blockquote)){font-size:1.75rem;line-height:1.5714285714;max-width:576px}}@media only screen and (min-width:1400px){:is(:where(*.blockquote),.content :where(blockquote)){font-size:1.875rem;line-height:1.6;max-width:706px}}@media only screen and (min-width:1900px){:is(:where(*.blockquote),.content :where(blockquote)){font-size:2rem;line-height:1.625;max-width:850px;margin-block:5.625remv}}:is(:where(*.cite),.content :where(cite)){font-size:.875rem;line-height:calc(1em + 5px);font-family:var(--font-accent);color:inherit;letter-spacing:.1em;text-transform:uppercase;font-style:normal;font-weight:700;margin-bottom:.5rem}:is(.content-palette-dark) :is(:where(*.cite),.content :where(cite)){color:var(--scheme-sp,inherit)}*.lead{font-size:1.25rem;line-height:1.6;font-weight:700;margin-bottom:3rem}:is(.content-palette-dark) *.lead{color:var(--scheme-sp,var(--color-accent))}@media only screen and (min-width:768px){*.lead{font-size:1.3125rem;line-height:1.5238095238}}@media only screen and (min-width:1400px){*.lead{font-size:1.375rem;line-height:1.5454545455}}@media only screen and (min-width:1900px){*.lead{font-size:1.3125rem}}.content{font-size:1.125rem;line-height:1.6666666667;font-family:var(--font-primary);color:inherit}.content :where(p,ul,ol,dl,form,pre,.table-wrapper,table,.wistia_responsive_padding)+:where(*.h1,*.h2,*.h3,*.h4,*.h5,*.h6,h1,h2,h3,h4,h5,h6){margin-top:3.125rem}@media only screen and (min-width:768px){.content :where(p,ul,ol,dl,form,pre,.table-wrapper,table,.wistia_responsive_padding)+:where(*.h1,*.h2,*.h3,*.h4,*.h5,*.h6,h1,h2,h3,h4,h5,h6){margin-top:3rem}}.content :where(p,ul,ol,dl,input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea,form,pre,hr:not([class*=fancy-border]),.table-wrapper,table,.wistia_responsive_padding){margin-bottom:1.375rem}.content :where(hr:not([class*=fancy-border])){margin-top:1.875em;background-color:var(--color-neutral)}.content :where(a){color:var(--color-primary-alt);text-decoration:none;transition:color 0.25s ease-in-out}.content :where(a):where(:hover,:focus){color:var(--color-dark);text-decoration:underline;text-underline-offset:3px}.content :where(ol,ul,dd){list-style-type:none;padding-left:1.875rem}.content :where(ol,ul,dd) :where(ol,ul,dd){margin-bottom:0}.content :where(ol,ul,dd).list-inline{list-style:none;padding-left:0}.content :where(ol,ul,dd).list-inline li{display:inline}.content :where(li,dd,dt){list-style:inherit;position:relative;margin-bottom:.375rem}.content :where(li,dd,dt) :where(ul,ol,dd),.content :where(li,dd,dt):nth-child(n+2){margin-top:0}.content :where(li,dd,dt):last-child>*:last-child{margin-bottom:0}.content li::marker,.content li::before{color:var(--color-primary-alt);font-weight:700;font-size:1rem;display:inline-block}:is(.content-palette-dark) .content li::marker,:is(.content-palette-dark) .content li::before{color:var(--color-primary)}.content li::before{position:absolute;right:100%;top:0;padding-right:1.125em}.content :where(ul)>li::before{top:.1em;content:"\25CF\FE0E"}.content :where(ul)>li>ul>li::before{content:"\2014"}.content :where(ol){counter-reset:listItem}.content :where(ol)>li::before{content:counter(listItem) ". ";counter-increment:listItem}.content :where(table){border-collapse:collapse;table-layout:fixed;hyphens:auto;font:inherit;border-color:var(--table-border-color);border-width:var(--table-border-width-y) var(--table-border-width-x)}.content :where(table,th,td){border-style:solid}.content :where(tr):first-child>:where(th,td){border-top-color:var(--table-border-color)}.content :where(th,td){border-width:var(--table-border-width-y) var(--table-border-width-x) 0;border-color:var(--table-cell-border-color-y) var(--table-border-color);background-color:var(--table-cell-background)}.content :where(th,td):nth-last-child(n+2){border-right-color:var(--table-cell-border-color-x)}.content :where(th,td)>*:last-child{margin-bottom:0}.content .table-wrapper{overflow-x:auto;max-width:100%}.content .table-wrapper table{margin-bottom:0}.content table{--table-border-width-x:1px;--table-border-width-y:1px;--table-border-color:var(--color-neutral-lighter);--table-cell-background:var(--scheme-bg,transparent);--table-cell-border-color-x:var(--scheme-bg-contrast,rgba(127, 127, 127, 0.3));--table-cell-border-color-y:transparent;font-size:.9em}.content :is(th,td){padding-block:.5em;padding-inline:1em}.content th{--table-cell-background:var(--table-border-color);--table-cell-border-color-y:var(--table-border-color);--table-cell-border-color-x:var(--table-border-color);font-size:.75em;font-family:var(--font-primary);color:var(--color-dark-alt);letter-spacing:.05em;text-transform:uppercase;font-style:normal;font-weight:700;text-align:inherit}.content tr:nth-child(odd) td{--table-cell-background:var(--scheme-bg-contrast,rgba(127, 127, 127, 0.3));--table-cell-border-color-y:var(--scheme-bg-contrast,transparent);--table-cell-border-color-x:var(--scheme-bg,rgba(127, 127, 127, 0.3));color:var(--scheme-fg,inherit)}.content table caption{padding:.5em}:is(.content-palette-dark){color:var(--scheme-fg,inherit)}:is(.content-palette-dark) :where(ol,ul,table){color:var(--scheme-fg,inherit)}:is(.content-palette-dark) table{--table-border-color:var(--color-neutral-darkest)}.content.content-style-thick{font-weight:800}.content.content-style-compact{line-height:1.15}.content.content-style-compact li,.content.content-style-compact li :where(ul,ol){margin-top:0}.content.content-style-no-last-margin>*:last-child{margin-bottom:0}.content.content-style-drop-caps>p:first-of-type::first-letter{font-size:2.75rem;font-family:var(--font-accent);color:var(--color-primary);float:left;margin:0 .1em -.25em 0}.content.content-style-drop-caps>p:first-of-type+*{clear:left}*.alignleft,*.alignright,*.aligncenter,*.alignnone{margin-bottom:.5em;max-width:100%;height:auto}@media only screen and (max-width:1199px){*.alignleft,*.alignright,*.aligncenter,*.alignnone{display:block}}@media only screen and (min-width:1200px){*.alignleft{display:inline;float:left;clear:right;margin-right:.5em;margin-top:.5em}*.alignright{display:inline;float:right;clear:right;margin-left:.5em;margin-top:.5em}*.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto}}.wp-caption{background:var(--color-light);border:1px solid var(--color-light-alt);max-width:100%;padding:.5em;text-align:center}.wp-caption img{border:0 none;height:auto;margin:0;padding:0;width:auto}.wp-caption p.wp-caption-text{font-size:.75em;line-height:1.25;margin:0}.screen-reader-text:focus,*:focus-within>.screen-reader-text{background-color:var(--color-light-alt);clip:auto!important;clip-path:none;color:var(--color-neutral);position:fixed;display:block;font-size:1em;height:auto;left:.25rem;line-height:normal;padding:1rem 1.5rem;text-decoration:none;top:.25rem;width:auto;z-index:9999999}.container::after,.clearfix::after{content:"";font-size:0;visibility:hidden;height:0;clear:both;display:table;width:100%;flex:0 0 auto}.sr-only,.screen-reader-text{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.no-webp *.instance-webp,.webp *.instance-not-webp{display:none!important}.cover{position:relative;overflow:hidden}.cover.cover-constricted{--cover-aspect-w:3;--cover-aspect-l:4}.cover.cover-constricted::before{content:"";display:block;padding-bottom:calc(100% * var(--cover-aspect-l) / var(--cover-aspect-w))}.cover.cover-constricted>*{position:absolute}.cover-child{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.content-icon{height:1em;display:inline-flex;flex-direction:column;justify-content:flex-end;flex:0 0 auto;width:max-content;max-width:100%;text-overflow:ellipsis}.content-icon :where(img,picture,svg,object){max-height:100%;width:auto;height:100%;flex:1 1}.logo{display:inline-flex;flex-wrap:wrap;align-items:center;align-self:stretch;justify-content:center;max-width:max-content}.logo-wrapper{position:relative;overflow:hidden;height:100%;width:auto}.logo-wrapper :where(img,picture,svg,object){max-width:100%;max-height:100%;width:auto;height:100%}.logo-wrapper :where(svg,object):not(:only-child){pointer-events:none;position:absolute;margin:auto;top:0;right:0;bottom:0;left:0;margin:auto;width:100%}.logo-wrapper :is(svg,object)~:where(img,picture:not(.inline-svg)){opacity:0}.xl-only,.lg-only,.md-only,.sm-only,.xs-only,.home-only,.internal-only,.print-only{display:none!important}.ilaw-template-home .home-only{display:block!important}.ilaw-template-home .home-hide{display:none!important}body:not(.ilaw-template-home) .internal-only{display:block!important}body:not(.ilaw-template-home) .internal-hide{display:none!important}@media only print{.print-only{display:block!important}.print-hide{display:none!important}}@media only screen and (min-width:1900px){.xl-only{display:block!important}.xl-hide{display:none!important}}@media only screen and (min-width:1400px) and (max-width:1899px){.lg-only{display:block!important}.lg-hide{display:none!important}}@media only screen and (min-width:1200px) and (max-width:1399px){.md-only{display:block!important}.md-hide{display:none!important}}@media only screen and (min-width:768px) and (max-width:1199px){.sm-only{display:block!important}.sm-hide{display:none!important}}@media only screen and (max-width:767px){.xs-only{display:block!important}.xs-hide{display:none!important}}.button{border:var(--button-border-width) solid;padding-left:calc(var(--button-padding-x) - var(--button-border-width));padding-right:calc(var(--button-padding-x) - var(--button-border-width));padding-top:calc((var(--button-height) - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height)) * var(--button-baseline-offset));padding-bottom:calc((var(--button-height) - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height)) * (1 - var(--button-baseline-offset)));-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100%;background:none;text-align:center;transition:all 0.125s ease-in-out;display:inline-block;background-size:calc(100% + var(--button-border-width) * 2) calc(100% + var(--button-border-width) * 2);background-position:calc(var(--button-border-width) * -1) calc(var(--button-border-width) * -1);background-clip:border-box;background-origin:border-box;line-height:var(--button-line-height)}.button,.button:is(:hover,:focus){text-decoration:none}.button{--button-height:3.5rem;--button-border-width:1.5px;--button-border-radius:999em;--button-padding-x:2.125em;--button-lines:1;--button-baseline-offset:.52;--button-line-height:1.125;font-size:.8125rem;font-family:var(--font-primary);color:var(--color-primary);letter-spacing:.09em;text-transform:uppercase;font-style:normal;font-weight:900;text-decoration:none;border-radius:var(--button-border-radius)}@media only screen and (min-width:768px){.button{--button-padding-x:2em}}@media only screen and (min-width:1200px){.button{--button-height:3.875rem;--button-padding-x:1.75em;font-size:.9375rem}}@media only screen and (min-width:1400px){.button{--button-padding-x:2em}}.button.button-size-small{font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;--button-height:2.5rem}.button.button-size-large{--button-height:5em}.button.button-size-equal{--button-padding-x:0;width:var(--button-height);text-overflow:ellipsis;overflow:hidden}.button.button-palette-default,.button.button-palette-reverse:is(:hover,:focus){background-image:linear-gradient(180deg,var(--color-primary-gradient-start) 0%,var(--color-primary-gradient-end) 80%);background-color:var(--color-primary);color:var(--color-light);border-color:transparent}.button.button-palette-default:is(:hover,:focus),.button.button-palette-outline:is(:hover,:focus),.button.button-palette-primary:is(:hover,:focus),.button.button-palette-reverse{background-image:linear-gradient(0deg,var(--color-primary-gradient-start) -20%,var(--color-primary-gradient-end) 80%);background-color:var(--color-primary-alt);color:var(--color-light);border-color:transparent}.button.button-palette-minimal{background-color:transparent;background-image:none;color:inherit;border-color:transparent}.button.button-palette-minimal:is(:hover,:focus){background-color:transparent;background-image:none;color:var(--scheme-sp,var(--color-primary));border-color:transparent}.button.button-palette-outline{background-color:transparent;background-image:none;color:inherit;border-color:var(--color-primary-alt)}.button.button-palette-outline:is(:hover,:focus){background-image:none;background-color:var(--color-primary-alt)}.button.button-palette-primary{background-color:transparent;background-image:none;color:var(--color-primary);border-color:currentColor}.button.button-style-special{position:relative;z-index:1;--button-style-special-offset:.5em;transform-style:preserve-3d}.button.button-style-special::before,.button.button-style-special::after{content:"";transition:box-shadow 0.125s ease-in-out}.button.button-style-special::before{display:inline-block;align-self:center;margin-right:1.5em;margin-left:.375em;margin-bottom:.375em;width:1.5rem;height:var(--button-border-width);background:currentColor;box-shadow:0em -.375em 0 0,-.375em 0 0 0,.375em 0 0 0,0em .375em 0 0}.button.button-style-special::after{display:block;position:absolute;top:calc(var(--button-style-special-offset) * -1 - var(--button-border-width) * 2);bottom:calc(var(--button-style-special-offset) * -1 - var(--button-border-width) * 2);left:calc(var(--button-style-special-offset) * -1 - var(--button-border-width) * 2);right:calc(var(--button-style-special-offset) * -1 - var(--button-border-width) * 2);border-radius:calc(var(--button-border-radius) * 2);transform:translateZ(-1px);mix-blend-mode:screen;background:rgba(255,255,255,.2);border:var(--button-border-width) solid var(--color-accent)}.button.button-style-special:is(:hover,:focus)::before{box-shadow:.375em -.375em 0 0,-.75em 0 0 0,-.75em 0 0 0,.375em .375em 0 0}.button.button-style-special:is(:hover,:focus)::after{border-color:var(--color-primary)}.button.button-style-link{--button-border-width:2px;border-radius:0;padding:0 0 .5em;border-width:0 0 var(--button-border-width);border-color:var(--color-primary);background:none;color:inherit}.button.button-style-link:is(:hover,:focus){background:none;color:var(--color-light);border-color:currentColor}.button.button-style-flat,.button.button-style-flat:is(:hover,:focus){background-image:none}.button.button-style-no-radius{--button-border-radius:0}.button.button-style-round{--button-border-radius:999em}.button.button-style-thick-border{--button-border-width:4px}.button.button-style-thin-border{--button-border-width:1px}.button.button-style-no-border{--button-border-width:0px}@supports (clip-path:polygon(0 0,0 0,0 0,0 0)){.button.button-style-diamond{overflow:hidden;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}}.button.button-style-slider{--button-height:3.375rem;--button-border-width:1px;color:var(--color-light);--button-padding-x:1.375em;font-size:1.375rem}.button-slider-glyph:empty::after{display:inline-block;order:9;align-self:center;transform-origin:center center;content:"";width:1.674506em;height:1em;flex:0 0 auto;background-color:currentColor;mask-image:url(/wp-content/themes/pql32/images/icon-arrow.svg);mask-size:contain;mask-repeat:no-repeat;mask-position:center center}:is(.prev,.slick-prev,.swpier-button-prev) .button-slider-glyph{transform:scaleX(-1)}.container{max-width:100%;width:calc(100% - (var(--container-gutter) - var(--container-fallback)) * 2);padding-left:var(--container-fallback);padding-right:var(--container-fallback);margin-left:auto;margin-right:auto;min-width:0;flex:0 0 auto}.container{--container-fallback:25px;--container-gutter:var(--container-fallback)}@media only screen and (min-width:768px){.container{--container-fallback:50px}}@media only screen and (min-width:1200px){.container{--container-fallback:54px}}@media only screen and (min-width:1200px){.container.container-size-default{--container-gutter:90px}}@media only screen and (min-width:1400px){.container.container-size-default{--container-gutter:100px}}@media only screen and (min-width:1900px){.container.container-size-default{--container-gutter:277px}}@media only screen and (min-width:768px){.container.container-size-wide{--container-gutter:15px}}@media only screen and (min-width:1200px){.container.container-size-wide{--container-gutter:30px}}@media only screen and (max-width:767px){.container.container-size-wide-xs{--container-fallback:15px;--container-gutter:var(--container-fallback)}}@media only screen and (min-width:768px) and (max-width:1199px){.container.container-size-wide-sm{--container-fallback:30px;--container-gutter:var(--container-fallback)}}.container.container-style-no-padding{--container-fallback:0px}@media only screen and (min-width:768px){.container.container-style-maxed{max-width:calc(var(--comp) - (var(--container-gutter) - var(--container-fallback)) * 2)}}@media only screen and (max-width:767px){.container.container-style-maxed-xs{max-width:480px}}@media only screen and (max-width:1199px){.container.container-style-maxed-touch{max-width:calc(var(--comp) - (var(--container-gutter) - var(--container-fallback)) * 2)}}@media only screen and (min-width:768px) and (max-width:1199px){.container.container-style-maxed-nontouch{max-width:calc(var(--comp) - (var(--container-gutter) - var(--container-fallback)) * 2)}}.columns{--columns-gap-x:0px;--columns-gap-y:0rem;--columns-number:1;max-width:none;width:auto;min-width:0}.columns,.columns>*{min-width:0}.columns.columns-flex{display:flex;flex-wrap:wrap;row-gap:var(--columns-gap-y);column-gap:var(--columns-gap-x)}.columns.columns-flex>*{flex-grow:0;flex-shrink:0;flex-basis:calc(100% / var(--columns-number) - var(--columns-gap-x) * (var(--columns-number) - 1) / var(--columns-number))}.columns.columns-grid{display:grid;row-gap:var(--columns-gap-y);column-gap:var(--columns-gap-x);grid-template-columns:repeat(var(--columns-number),1fr)}.columns.columns-grid>*{width:100%;margin:0 auto}.columns.columns-masonry{column-count:var(--columns-number);-webkit-column-count:var(--columns-number);column-gap:var(--columns-gap-x);-webkit-column-gap:var(--columns-gap-x)}.columns.columns-masonry>*{-webkit-column-break-inside:avoid;page-break-inside:avoid;break-inside:avoid}.columns.columns-masonry>*:nth-child(n+2){margin-top:var(--columns-gap-y)}:where(hr),.fancy-border{clear:both;outline:none;border:none;break-inside:avoid}.fancy-border{--fancy-border-margin-y:1.5rem;--fancy-border-margin-bottom:1.75rem;--fancy-border-margin-r:auto;--fancy-border-margin-l:auto;--fancy-border-height:2px;--fancy-border-width:auto;--fancy-border-background:currentColor}:where(hr),.fancy-border.fancy-border-before::before,.fancy-border.fancy-border-after::after{height:var(--fancy-border-height,2px);background:var(--fancy-border-background,var(--color-neutral));width:var(--fancy-border-width,100%);margin-left:var(--fancy-border-margin-l);margin-right:var(--fancy-border-margin-r)}.fancy-border.fancy-border-before:not(hr)::before,.fancy-border.fancy-border-after:not(hr)::after{content:""}:where(hr),.fancy-border-after::after,.fancy-border-before::before{display:block;transition:all 0.375s ease-in-out}.fancy-border.fancy-border-after::after{order:99}.fancy-border.fancy-border-before::before{order:-99}hr.fancy-border-after,.fancy-border.fancy-border-after::after{margin-top:var(--fancy-border-margin-y,1.875rem)}hr.fancy-border-before,.fancy-border.fancy-border-before::before{margin-bottom:var(--fancy-border-margin-bottom)}.fancy-border-palette-primary{--fancy-border-background:var(--color-primary) linear-gradient(90deg, var(--color-primary-gradient-start) 0%, var(--color-primary-gradient-end) 100%)}.fancy-border-palette-primary-alt{--fancy-border-background:var(--color-primary-alt)}.fancy-border-palette-secondary{--fancy-border-background:var(--color-secondary) linear-gradient(90deg, var(--color-secondary-gradient-start) 0%, var(--color-secondary-gradient-end) 100%)}.fancy-border-palette-accent{--fancy-border-background:var(--color-accent) linear-gradient(90deg, var(--color-accent-gradient-start) 0%, var(--color-accent-gradient-end) 100%)}.fancy-border-palette-neutral{--fancy-border-background:var(--color-neutral)}.fancy-border-style-thin{--fancy-border-height:2px}hr.fancy-border-style-flat,.fancy-border-style-flat.fancy-border-before::before,.fancy-border-style-flat.fancy-border-after::after{background-image:none!important}.fancy-border-style-inline{--fancy-border-margin-l:.5em;display:flex;flex-wrap:nowrap;row-gap:var(--fancy-border-margin-y);column-gap:var(--fancy-border-margin-l)}.fancy-border-style-inline:before,.fancy-border-style-inline:after{flex:1 1;margin-block:0!important;align-self:center}@media only screen and (min-width:1200px){hr.fancy-border-animated,.fancy-border-animated.fancy-border-before::before,.fancy-border-animated.fancy-border-after::after{transition:width 1.5s ease-in-out}.fancy-border-animated:not(.visible){--fancy-border-width:0%}}.fancy-icon-menu{position:relative;--fancy-icon-menu-width:2rem;--fancy-icon-menu-height:1rem;--fancy-icon-menu-bar-height:2px;--fancy-icon-menu-bar-top-width:100%;--fancy-icon-menu-bar-top-margin-l:auto;--fancy-icon-menu-bar-top-margin-r:auto;--fancy-icon-menu-bar-center-width:100%;--fancy-icon-menu-bar-center-margin-l:auto;--fancy-icon-menu-bar-center-margin-r:auto;--fancy-icon-menu-bar-bottom-width:100%;--fancy-icon-menu-bar-bottom-margin-l:auto;--fancy-icon-menu-bar-bottom-margin-r:auto;width:var(--fancy-icon-menu-width);height:var(--fancy-icon-menu-height)}.fancy-icon-menu span{position:absolute;transform-origin:center center;background:currentColor;top:0;bottom:0;left:0;right:0;height:var(--fancy-icon-menu-bar-height);width:100%;transition:all 0.375s ease-in-out}.fancy-icon-menu span:where(:first-child){bottom:auto;width:var(--fancy-icon-menu-bar-top-width);margin:auto var(--fancy-icon-menu-bar-top-margin-r) auto var(--fancy-icon-menu-bar-top-margin-l)}.fancy-icon-menu span:where(:last-child){top:auto;width:var(--fancy-icon-menu-bar-bottom-width);margin:auto var(--fancy-icon-menu-bar-bottom-margin-r) auto var(--fancy-icon-menu-bar-bottom-margin-l)}.fancy-icon-menu span:where(:nth-child(2),:nth-child(3)){width:var(--fancy-icon-menu-bar-center-width);margin:auto var(--fancy-icon-menu-bar-center-margin-r) auto var(--fancy-icon-menu-bar-center-margin-l)}.open .fancy-icon-menu span{margin:auto}.open .fancy-icon-menu span:nth-child(2){transform:rotateZ(45deg)}.open .fancy-icon-menu span:nth-child(3){transform:rotateZ(-45deg)}.open .fancy-icon-menu span:is(:nth-child(2),:nth-child(3)){width:100%}.open .fancy-icon-menu span:is(:first-child,:last-child){width:0}@media only screen and (min-width:1200px){.fancy-letters{--fancy-letters-factor:0;--fancy-letters-factor-word:0;--fancy-letters-factor-char:0;--fancy-letters-delay:.02s;--fancy-letters-duration:1.5s}.fancy-letters.content{--fancy-letters-delay:.5s;--fancy-letters-factor:1;transform:skewY(0deg) skewX(-4deg) rotate(-2deg) translateY(6rem)}.fancy-letters,.fancy-letters-word,.fancy-letters-char{transition-timing-function:.5,0,0,1;overflow:hidden;display:inline-block;vertical-align:bottom;padding-bottom:.5em;margin-bottom:-.5em;opacity:0;transition-property:opacity;transition-delay:0s;transition-duration:0.25s}.fancy-letters{transform:skewY(0deg) skewX(-4deg) rotate(-2deg) translateY(50%)}.fancy-letters-word{transform:skewY(-10deg) skewX(0deg) rotate(0deg) translateY(100%);min-width:max-content}.fancy-letters-char{transform:skewY(10deg) skewX(0deg) rotate(10deg) translateY(100%)}.fancy-letters.visible,.fancy-letters.visible .fancy-letters-word,.fancy-letters.visible .fancy-letters-char,.visible .fancy-letters,.visible .fancy-letters .fancy-letters-word,.visible .fancy-letters .fancy-letters-char{transition-property:transform,opacity;transition-duration:var(--fancy-letters-duration);transform:skewY(0deg) skewX(0deg) rotate(0deg) translateY(0%);opacity:1}.fancy-letters.visible,.visible .fancy-letters{transition-delay:calc(var(--fancy-letters-delay) * var(--fancy-letters-factor));transform-origin:top left}.fancy-letters.visible .fancy-letters-word,.visible .fancy-letters .fancy-letters-word{transition-delay:calc(var(--fancy-letters-delay) * 1.5 * var(--fancy-letters-factor-word));transform-origin:bottom right}.fancy-letters.visible .fancy-letters-char,.visible .fancy-letters .fancy-letters-char{transition-delay:calc(var(--fancy-letters-delay) * 2.5 * var(--fancy-letters-factor-char));transform-origin:center center}}.fancy-hr,:where(*.blockquote,.content blockquote){--fancy-hr-width:117px;--fancy-hr-height:20px;--fancy-hr-gap:calc(var(--fancy-hr-height) * .25);--fancy-hr-glyph-width:calc(var(--fancy-hr-height) * 1.5);--fancy-hr-stroke-width:calc(var(--fancy-hr-height) * 0.1);--fancy-hr-margin-block:.5em;--fancy-hr-color:var(--color-primary-alt);border:none;position:relative;height:auto;background:none}.fancy-hr:is(hr),:is(hr):where(*.blockquote,.content blockquote),.fancy-hr:after,:where(*.blockquote,.content blockquote):after{order:99;height:var(--fancy-hr-height);display:block;flex:0 0 auto;content:"";margin-block:var(--fancy-hr-margin-block);margin-inline:auto;max-width:100%;width:var(--fancy-hr-width);background-color:var(--fancy-hr-color);mask-size:100% var(--fancy-hr-stroke-width),var(--fancy-hr-glyph-width) 100%;mask-position:center center;mask-repeat:repeat-x,no-repeat;mask-image:linear-gradient(to left,currentColor 0%,currentColor calc(50% - var(--fancy-hr-gap) - var(--fancy-hr-glyph-width) * 0.5),transparent calc(50% - var(--fancy-hr-gap) - var(--fancy-hr-glyph-width) * 0.5),transparent calc(50% + var(--fancy-hr-gap) + var(--fancy-hr-glyph-width) * 0.5),currentColor calc(50% + var(--fancy-hr-gap) + var(--fancy-hr-glyph-width) * 0.5),currentColor 100%),url('data:image/svg+xml,<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 29.4 19.6" style="enable-background:new 0 0 29.4 19.6;" xml:space="preserve"><path d="M19.6-0.1l-4.9,4.9L9.8-0.1L0,9.8l9.8,9.8l4.9-4.9l4.9,4.9l9.8-9.8L19.6-0.1z M9.8,16.7L2.8,9.8l6.9-6.9l3.5,3.5L9.8,9.8l3.5,3.5L9.8,16.7z M12.6,9.8l2.1-2.1l2.1,2.1l-2.1,2.1L12.6,9.8z M16.1,13.2l3.5-3.5l-3.5-3.5l3.5-3.5l6.9,6.9l-6.9,6.9L16.1,13.2z" fill="currentColor"/></svg>');
}

/* Widgets https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/widget.md
--------------------------------------------------------------- */
/* Widgets Skeleton. Do not Edit 
--------------------------------------------------------------- */
.widget {
  padding-top: var(--widget-padding-top);
  padding-bottom: var(--widget-padding-bottom);
  padding-inline: var(--widget-padding-x);
  position: relative;
  max-width: none;
  width: auto;
}
.widget,
.widget > :where(ul, .widget-content, .menu, div):not(.content),
.widget > :where(ul, .widget-content, .menu, div):not(.content) li {
  padding-left: var(--widget-padding-x);
  padding-right: var(--widget-padding-x);
}
.widget > :where(ul, .widget-content, .menu, div) {
  padding-top: var(--widget-content-padding-top);
  padding-bottom: var(--widget-content-padding-bottom);
  margin-top: var(--widget-content-margin-top);
  margin-bottom: var(--widget-content-margin-bottom);
}
.widget > :where(ul, .widget-content, .menu, div):not(.content):last-child, .widget > :where(ul, .widget-content, .menu, div):not(.content) > li,
.widget > :where(ul, .widget-content, .menu, div):not(.content) :where(ul, .sub-menu) {
  margin-inline: calc(var(--widget-padding-x) * -1);
}
:is(.widget-title, .widget-title, .widgettitle) {
  padding-inline: var(--widget-title-padding-x);
  margin-bottom: 0;
  margin-top: 0;
}

.widget > :where(ul, .widget-content, .menu, div):not(.content) li > a,
.widget > :where(ul, .widget-content, .menu, div).content {
  padding-inline: var(--widget-item-padding-x);
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) ul li {
  padding-left: calc(var(--widget-padding-x) + var(--widget-dropdown-offset));
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) ul li > a {
  padding-left: var(--widget-dropdown-item-offset);
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) li {
  list-style: none;
  clear: both;
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) li a {
  padding-top: calc((var(--widget-item-height) - var(--widget-item-border-width) - 1em * var(--widget-item-lines) * var(--widget-item-line-height)) * var(--widget-item-baseline-offset));
  padding-bottom: calc((var(--widget-item-height) - var(--widget-item-border-width) - 1em * var(--widget-item-lines) * var(--widget-item-line-height)) * (1 - var(--widget-item-baseline-offset)));
  color: inherit;
  text-decoration: none;
  display: flex;
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) li ul {
  border-top: var(--widget-item-border-width) solid transparent;
  border-bottom: var(--widget-item-border-width) solid transparent;
  padding-top: var(--widget-dropdown-padding-top);
  margin-top: var(--widget-dropdown-margin-top);
  padding-bottom: var(--widget-dropdown-padding-bottom);
  margin-bottom: var(--widget-dropdown-margin-bottom);
  flex: 0 0 auto;
  min-width: calc(100% + var(--widget-padding-x) * 2);
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) li:last-child > ul {
  border-bottom: 0;
  margin-bottom: calc(var(--widget-dropdown-padding-bottom) * -1);
}
.widget > :where(ul, .widget-content, .menu, div):not(.content) > li:last-child > ul {
  /* fix top level item dropdown bottom gaps */
  margin-bottom: calc((var(--widget-padding-bottom) + var(--widget-content-padding-bottom)) * -1);
}
.widget:not(.widget-style-no-toggle):not(.open) > :is(.widget-title, .widget-title, .widgettitle) + *:where(ul, .widget-content, .menu, div),
.widget:not(.widget-style-no-toggle) li:not(.open) > ul:not(:only-child) {
  /* close it all, javascript will take care of opening what needs to be opened */
  display: none;
}
:is(.widget-title, .widget-title, .widgettitle) + *:not(:where(ul, .widget-content, .menu, div)) {
  margin-top: var(--widget-content-margin-top);
}

.widget :where(input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), select, textarea, table) {
  width: 100%;
}

/* Widget Customizations https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/widget.md#css-vars
--------------------------------------------------------------- */
.widget {
  --widget-line-height: 1.25;
  --widget-padding-x: 42px;
  --widget-padding-top: 2.875rem;
  --widget-padding-bottom: var(--widget-padding-top);
  --widget-dropdown-padding-top: 1rem;
  --widget-dropdown-padding-bottom: var(--widget-dropdown-padding-top);
  --widget-dropdown-margin-top: 0.5rem;
  --widget-dropdown-margin-bottom: var(--widget-dropdown-margin-top);
  --widget-item-height: 3.75rem;
  --widget-item-border-width: 1px;
  --widget-item-lines: 1;
  --widget-item-padding-x: 0;
  --widget-dropdown-offset: 0em;
  --widget-dropdown-item-offset: 1.5em;
  --widget-title-padding-x: var(--widget-item-padding-x);
  /* Note: this value has to be unitless for calc values to work.
  * modify this value if the font seems a little too high or low in vertical alignment. 1 moves the text to the very top. 0 moves the text to the very bottom. 0.5 will center it based on the fonts' basline alignment */
  --widget-content-margin-top: .375rem;
  --widget-content-margin-bottom: 0rem;
  --widget-content-padding-top: 0rem;
  --widget-content-padding-bottom: var(--widget-content-padding-top);
  --widget-item-baseline-offset: 0.5;
  /* Note: this value has to be unitless for calc values to work. Usually there's no need to modify this unless a multiline widget list item is present in the design.
  * Formula is line-height-px / font-size-px */
  --widget-item-line-height: 1.5;
  font-size: 0.875rem;
  font-family: var(--font-primary);
  color: var(--scheme-fg, var(--color-dark));
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 700;
  text-align: left;
  text-decoration: none;
  background-color: var(--color-neutral-lighter);
  width: 100%;
}
.widget:where(:nth-last-child(n+2)) {
  margin-bottom: 1.875rem;
}
.widget > :where(ul, .widget-content):not(.content) li a {
  border-bottom: var(--widget-item-border-width) solid var(--color-neutral);
}
.widget > :where(ul, .widget-content):not(.content) li:is(.open, :hover, :focus-within) > a {
  color: var(--color-primary-alt);
}
.widget > :where(ul, .widget-content):not(.content) li ul {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  border-color: transparent;
  text-align: left;
}
.widget > :where(ul, .widget-content):not(.content) li ul ul {
  background-color: rgba(0, 0, 0, 0.01);
}
.widget > :where(ul, .widget-content):not(.content) li ul li:first-child a {
  border-top: var(--widget-item-border-width) solid rgba(127, 127, 127, 0.3);
}
.widget > :where(ul, .widget-content):not(.content) li.open {
  border-bottom: 0;
}
.widget > :where(ul, .widget-content):not(.content) li.open > a {
  border-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .widget {
    --widget-padding-x: 2.25rem;
    --widget-padding-top: 2.875rem;
  }
}
@media only screen and (min-width: 1200px) {
  .widget {
    --widget-content-margin-top: .75rem;
  }
}
/* Widget Title
--------------------------------------------------------------- */
:is(.widget-title, .widget-title, .widgettitle) {
  font-size: 1.875rem;
  line-height: 1.4333333333;
  font-family: var(--font-secondary);
  color: var(--color-dark);
  letter-spacing: 0em;
  font-weight: 300;
}
:is(.widget-title, .widget-title, .widgettitle).fancy-border {
  --fancy-border-width: 4rem;
  --fancy-border-margin-y: .15em;
  --fancy-border-margin-l: 0;
  --fancy-border-margin-l: 0;
}
:is(.widget-title, .widget-title, .widgettitle).fancy-border:before, :is(.widget-title, .widget-title, .widgettitle).fancy-border:after {
  grid-column: 1/-1;
}
.widget:not(.widget-style-no-toggle):not(.open) > :is(.widget-title, .widget-title, .widgettitle) {
  padding-bottom: 0;
  border-bottom: 0;
  margin-bottom: 0;
}
.widget:not(.widget-style-no-toggle):not(.open) > :is(.widget-title, .widget-title, .widgettitle).fancy-border {
  --fancy-border-margin-y: 0rem;
  --fancy-border-height: 0rem;
}
/* Widget Toggle
--------------------------------------------------------------- */
.widget-toggle {
  align-items: center;
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 0.5em;
  cursor: pointer;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-left: 0;
  position: relative;
}
.widget-toggle::before {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  display: inline-block;
  order: 9;
  align-self: center;
  flex: 0 0 auto;
  content: "";
  font-size: 0.75rem;
  transform-origin: 67% 67%;
  width: 1em;
  height: 1em;
  border: 2px solid currentColor;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
}
.open > .widget-toggle::before {
  transform: rotate(-135deg);
}
.widget-toggle > * {
  min-width: 0;
}
/*
@TODO improve docs
Popup modal. for initially hidden content. Uncomment in style.scss if needed
Markup should follow the folloowing

	.popup-trigger
	.popup
		html content to place inside the popup Note: all contents will be moved out of its containing block and into a popup markup before the bnody tag

--------------------------------------------------------------- */
.doc-popup-active {
  overflow-y: hidden;
}

.popup-content {
  display: none !important;
}

.popup {
  padding: 11vw 0;
  display: none;
  overflow-y: scroll;
  position: fixed;
  z-index: 9999;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: 0;
  min-height: 100vh;
  width: 100%;
  min-width: 320px;
  background: none !important;
}
.popup::-webkit-scrollbar {
  display: none;
}
.popup-overlay {
  background: var(--color-dark);
  opacity: 0.8;
  min-height: 100vh;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
}
.popup-wrapper {
  background: var(--color-light);
  position: relative;
  padding: 4.875rem;
}
.popup-close-button {
  position: absolute;
  top: 0;
  right: 1em;
  margin-top: 1em;
  background: none;
  border: 0;
  font-size: 2.5rem;
  display: block;
  width: 1em;
  height: 1em;
  line-height: 1;
  padding: 0;
  overflow: hidden;
  text-indent: -9999em;
}
.popup-close-button::before, .popup-close-button::after {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: currentColor;
}
.popup-close-button::before {
  transform: rotate(45deg);
}
.popup-close-button::after {
  transform: rotate(-45deg);
}
.popup .result-value:after {
  margin-left: 0;
}
@media only screen and (min-width: 1400px) {
  .popup-container {
    --container-gutter: 200px;
  }
}
@media only screen and (min-width: 1900px) {
  .popup-container {
    --container-gutter: 360px;
  }
}
@media only screen and (max-width: 767px) {
  .popup-wrapper {
    padding: 4rem 2rem 2rem;
  }
  .popup-close-button {
    font-size: 2rem;
    margin-top: 1.25rem;
    right: 1.25rem;
  }
}

/* ================================================================================
* Header
================================================================================ */
/* Layout Header
Note: The styles will be setup mobile first starting with the smallest device comp where the header menu toggle is no longer visible  (usually initially at md/laptop)
And then Desktop first starting with the largest device comp where the the header toggle is visible (Usually sm/tablet)
Tip: setting up mobile navigation desktop-first starting at sm-max for touch screen styles, and then mobile-first starting at md for desktop styles helps simplify the styles and lessen the need for overrides.
Also Tip: Default styles are set based on its sticky state, and then overriding these styles when no scroll has happened yet (.doc-header-not-sticky). This is to keep styles less repetitive and as simple as possible
--------------------------------------------------------------- */
/* Layout Header Variables
--------------------------------------------------------------- */
/* Tip: placing the css var on :root can allow elements outside of the layout header utilize the variable if needed ie sticky stuff, offsets, jump link scroll etc. */
:root {
  --layout-header-height: 120px;
  /* height of the whole header at a given state or layout */
  --layout-header-logo-height: var(--layout-header-height);
  /* height of logo including its padding at a given state or layout. */
}
@media only screen and (min-width: 1200px) {
  :root {
    /* Non-touch Devices Header Styles Start */
    --layout-header-height: 110px;
  }
}
@media only screen and (min-width: 1400px) {
  :root {
    --layout-header-height: 120px;
  }
}
@media only screen and (max-width: 1199px) {
  :root {
    /* Touch Devices Header Styles Start */
    --layout-header-height: 95px;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --layout-header-height: 117px;
    --layout-header-logo-height: 85px;
  }
}

.doc-header-not-sticky .header-overlay-on-banner {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
@media only screen and (min-width: 1200px) {
  .doc-header-not-sticky .header-overlay-on-banner {
    /* override logo height apart form the header height on this state only. Adjust as needed */
  }
}
@media only screen and (min-width: 1900px) {
  .doc-header-not-sticky .header-overlay-on-banner {
    --layout-header-logo-height: 130px;
  }
}

.doc-header-menu-open {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
@media only screen and (max-width: 1199px) {
  .doc-header-menu-open {
    overflow-y: hidden;
  }
}
/* Offset the scroll by the header height so the element a jump link scrolls to us not underneath the header but instead compensates to the header height and scrolls just next to it
--------------------------------------------------------------- */
html, body {
  scroll-padding: var(--layout-header-height) !important;
}

/* Layout Header Itself
--------------------------------------------------------------- */
.layout-header {
  /* Note: position must be set initially, NOT based on whether or not a scroll has occured (sticky vs not-sticky class). This is to prevent layout jumps on scroll */
  position: sticky;
  top: 0;
  left: 0;
  z-index: 999;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  background-color: var(--scheme-bg-contrast, var(--color-dark-alt));
  color: var(--scheme-fg, var(--color-light));
  transition: 0.25s top ease-in-out;
  box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.8);
}
@media only screen and (min-width: 1200px) {
  .layout-header {
    /* Non-touch Devices Header Styles Start */
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.8);
  }
}
@media only screen and (max-width: 1199px) {
  .layout-header {
    /* Touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 767px) {
  .layout-header {
    /* header: one top value might work for the design. NOTE: adjust ilawyer alertbar settings accordingly if enabled (dynamic margin, offset to bottom on touch devices, position, etc.) */
  }
}
.doc-header-not-sticky .header-overlay-on-banner .layout-header {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
@media only screen and (min-width: 1200px) {
  .doc-header-not-sticky .header-overlay-on-banner .layout-header {
    /* remove background */
    background: transparent;
  }
}
@media only screen and (min-width: 1900px) {
  .doc-header-not-sticky .header-overlay-on-banner .layout-header {
    top: 7px;
  }
}
.doc-header-not-sticky .layout-header {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
  box-shadow: none;
  /* remove dropdown shadow on all devices when not scrolling yet */
}
@media only screen and (max-width: 767px) {
  .doc-header-not-sticky .layout-header {
    /* reset offset when no scrolling yet */
    top: 0;
  }
}
.doc-header-menu-open .layout-header {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
.header-overlay-on-banner .layout-header {
  /* Overlay header on header-overlay-on-banner. best for setting position on large devices AND NOTHING ELSE */
}
@media only screen and (min-width: 1200px) {
  .header-overlay-on-banner .layout-header {
    position: fixed;
  }
}

/* Header Blocks
--------------------------------------------------------------- */
.header-blocks {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  /* set as min instead in case alertbar needs to be added within header */
  min-height: var(--layout-header-height);
}
@media only screen and (min-width: 1200px) {
  .header-blocks {
    /* Non-touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 1199px) {
  .header-blocks {
    /* Touch Devices Header Styles Start */
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-blocks {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
.doc-header-not-sticky .header-blocks {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.header-blocks .doc-header-menu-open {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header Logo
--------------------------------------------------------------- */
.header-logo {
  padding: 1.425rem 2.5rem;
  height: var(--layout-header-logo-height);
  flex: 0 0 auto;
  order: 1;
  /* support logo offseting on overlay banner + not sticky state. comment if not needed */
  position: relative;
}
.header-logo .logo-wrapper-touch, .header-logo .logo-wrapper-before-sticky {
  /* hide possible variations of logo */
  display: none;
}
@media only screen and (min-width: 1200px) {
  .header-logo {
    /* Non-touch Devices Header Styles Start */
  }
}
@media only screen and (min-width: 1400px) {
  .header-logo {
    padding: 1.55rem 2.45rem;
  }
}
@media only screen and (min-width: 1900px) {
  .header-logo {
    padding: 1.45rem 3.125rem;
  }
}
@media only screen and (max-width: 1199px) {
  .header-logo {
    /* Touch Devices Header Styles Start */
    padding: 1.125rem 1.5rem 1.125rem 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .header-logo {
    padding: 0.85rem 1.3825rem;
    width: calc(100% - 85px);
    max-width: 100%;
  }
  .header-logo .logo-wrapper-touch {
    /* show  */
    display: block;
  }
  .header-logo .logo-wrapper-touch ~ .logo-wrapper-nontouch {
    display: none;
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-logo {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
@media only screen and (min-width: 1200px) {
  .doc-header-not-sticky .header-overlay-on-banner .header-logo {
    /* Any other styles for emphasis on logo on this state. Adjust as needed. Adjust as needed */
  }
  .doc-header-not-sticky .header-overlay-on-banner .header-logo .logo-wrapper-sticky {
    /* hide default logo on before sticky */
    display: none;
  }
  .doc-header-not-sticky .header-overlay-on-banner .header-logo .logo-wrapper-before-sticky {
    /* show  */
    display: block;
  }
}
@media only screen and (min-width: 1900px) {
  .doc-header-not-sticky .header-overlay-on-banner .header-logo {
    padding: 1.75rem 3rem;
  }
}
.doc-header-not-sticky .header-logo {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-logo {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header Toggle/s
--------------------------------------------------------------- */
.header-toggle {
  width: 85px;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex: 0 0 auto;
}
.header-toggle-menu {
  background: var(--color-secondary) linear-gradient(to bottom, var(--color-primary-gradient-start), var(--color-primary-gradient-end));
  color: var(--color-light);
  position: relative;
  z-index: 99999;
  top: 0;
  transition: 0.375s all ease-in-out;
  order: 2;
}
.header-toggle-menu-icon {
  --fancy-icon-menu-width: 42px;
  --fancy-icon-menu-height: 21px;
  --fancy-icon-menu-bar-height: 3px;
}
.header-toggle-menu.open .header-toggle-menu-icon {
  color: inherit;
}
.header-toggle-menu-label {
  font-size: 0.75rem;
  font-family: var(--font-primary);
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-style: normal;
  font-weight: 700;
  text-align: center;
  margin-top: 0.5em;
  transition: 0.375s all ease-in-out;
}
.header-toggle-menu.open .header-toggle-menu-label {
  margin-top: -1em;
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .header-toggle {
    width: 95px;
  }
  .header-toggle-menu {
    order: 3;
  }
  .header-toggle-menu-label {
    font-size: 14px;
  }
  .header-toggle-menu-icon {
    --fancy-icon-menu-width: 48px;
  }
}
@media only screen and (min-width: 1200px) {
  .header-toggle {
    /* Non-touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 1199px) {
  .header-toggle {
    /* Touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 767px) {
  .header-toggle-menu.open {
    top: 0;
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-toggle {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
.doc-header-not-sticky .header-toggle {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-toggle {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
.doc-header-menu-open.doc-header-not-sticky .header-toggle {
  /* Styles/Selectors for when header menu accordion for touch devices is open and header is not sticky yet */
}
/* Header Main
--------------------------------------------------------------- */
.header-main {
  display: flex;
  justify-content: flex-end;
  min-height: var(--layout-header-height);
  flex: 1 1;
  order: 2;
}
@media only screen and (min-width: 1200px) {
  .header-main {
    /* Non-touch Devices Header Styles Start */
    flex-direction: row;
    justify-content: flex-end;
    gap: 3.5rem;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .header-main {
    padding-right: 1.25rem;
    padding-left: 0rem;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    align-self: center;
    gap: 0;
  }
}
@media only screen and (min-width: 1400px) {
  .header-main {
    padding-right: 2rem;
  }
}
@media only screen and (min-width: 1900px) {
  .header-main {
    gap: 1.5625rem;
  }
}
@media only screen and (max-width: 1199px) {
  .header-main {
    /* Touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 767px) {
  .header-main {
    min-height: 32px;
    width: 100%;
    order: 3;
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-main {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
@media only screen and (min-width: 1200px) {
  .doc-header-not-sticky .header-overlay-on-banner .header-main {
    align-self: self-start;
  }
}
.doc-header-not-sticky .header-main {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-main {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header CTA
--------------------------------------------------------------- */
.header-cta {
  display: flex;
  justify-content: center;
  gap: 0.875rem;
  flex-direction: row;
  align-items: flex-end;
  text-align: right;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media only screen and (min-width: 768px) {
  .header-cta {
    flex-direction: column;
    gap: 0.375rem;
    padding-right: 1.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .header-cta {
    /* Non-touch Devices Header Styles Start */
    flex-direction: column;
    align-items: flex-end;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .header-cta {
    flex-direction: row;
    align-items: center;
    order: -1;
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 0;
    gap: 1rem;
  }
}
@media only screen and (min-width: 1400px) {
  .header-cta {
    padding-right: 0;
    padding-left: 0;
    gap: 10px;
  }
}
@media only screen and (max-width: 1199px) {
  .header-cta {
    /* Touch Devices Header Styles Start */
  }
}
@media only screen and (max-width: 767px) {
  .header-cta {
    text-align: center;
    align-items: center;
    flex: 1 1;
    font-size: 0.75rem;
    padding: 0.25rem;
    background: var(--color-light);
    min-height: calc(var(--layout-header-height) - var(--layout-header-logo-height));
    box-shadow: inset 0 5px 10px rgba(4, 15, 54, 0.3254901961);
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-cta {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
.doc-header-not-sticky .header-cta {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-cta {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header CTA - Text
--------------------------------------------------------------- */
.header-cta-text {
  font-size: 0.8125rem;
  font-family: var(--font-accent);
  color: var(--color-primary);
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 700;
}
.header-cta-text > span:nth-child(n+2)::before {
  content: "\25CF\FE0E";
  color: var(--color-primary);
  margin: 0 0.5em;
}
@media only screen and (min-width: 768px) {
  .header-cta-text {
    /* Non-touch Devices Header Styles Start */
  }
}
@media only screen and (min-width: 1200px) {
  .header-cta-text {
    margin-left: 5px;
  }
}
@media only screen and (min-width: 1400px) {
  .header-cta-text {
    font-size: 0.8125rem;
  }
}
@media only screen and (max-width: 1199px) {
  .header-cta-text {
    /* Touch Devices Header Styles Start */
    font-size: 0.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .header-cta-text {
    font-size: 0.75rem;
    color: var(--color-primary-alt);
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-cta-text {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
.doc-header-not-sticky .header-cta-text {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-cta-text {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header Number/s
--------------------------------------------------------------- */
.header-numbers {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.header-numbers .header-number {
  display: flex;
  align-items: center;
}
.header-numbers .header-number .header-cta-text {
  margin-right: 5px;
}
.header-numbers .number-block-toll:before {
  content: "в—ЏпёЋ";
  color: var(--color-accent-alt);
  margin: 0 0.5rem 0 0;
}
.header-numbers .number-link {
  font-size: 1.875rem;
  line-height: 1;
  font-family: var(--font-accent);
  color: var(--color-light);
  font-weight: 700;
}
@media only screen and (min-width: 1200px) {
  .header-numbers {
    /* Non-touch Devices Header Styles Start */
    gap: 1rem;
  }
}
@media only screen and (min-width: 1400px) {
  .header-numbers .number-link {
    font-size: 2.0625rem;
  }
}
@media only screen and (min-width: 1900px) {
  .header-numbers .number-link {
    font-size: 2.1875rem;
  }
}
@media only screen and (max-width: 1199px) {
  .header-numbers {
    /* Touch Devices Header Styles Start */
    flex-direction: column;
    align-items: flex-end;
  }
  .header-numbers .number-link {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .header-numbers .number-link {
    font-size: 1.125rem;
    color: var(--color-secondary-alt);
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-numbers {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
.doc-header-not-sticky .header-numbers {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-numbers {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
/* Header Navigation
--------------------------------------------------------------- */
@media only screen and (min-width: 1200px) {
  .header-nav {
    /* Non-touch Devices Header Styles Start */
    display: flex;
    justify-content: center;
    align-self: stretch;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .header-nav {
    justify-content: flex-end;
    flex: 0 0 auto;
  }
}
@media only screen and (max-width: 1199px) {
  .header-nav {
    /* Touch Devices Header Styles Start */
    transition: top 0.25s ease-in-out, left 0.5s ease-in-out, opacity 0.5s ease-in-out;
    width: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    flex-wrap: wrap;
    opacity: 0;
    z-index: 9999;
    scrollbar-width: none;
    position: fixed;
    bottom: 0;
    left: 100%;
    box-shadow: inset 0 5px 10px -5px rgba(0, 0, 0, 0.3333333333);
    top: var(--layout-header-height);
  }
  .header-nav::-webkit-scrollbar {
    display: none;
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-nav {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes */
}
@media only screen and (min-width: 1200px) {
  .doc-header-not-sticky .header-overlay-on-banner .header-nav {
    color: inherit;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .doc-header-not-sticky .header-overlay-on-banner .header-nav {
    align-self: stretch;
  }
}
.doc-header-not-sticky .header-nav {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-nav {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
@media only screen and (max-width: 1199px) {
  .doc-header-menu-open .header-nav {
    left: 0%;
    opacity: 1;
  }
}
.doc-header-menu-open.doc-header-not-sticky .header-nav {
  /* Styles/Selectors for when header menu accordion for touch devices is open and header is not sticky yet */
}
/* Header Navigation Menu
--------------------------------------------------------------- */
.header-nav .menu {
  --layout-header-menu-touch-menu-padding-x: 0rem;
  /* horizontal padding for menu items and accordion/dropdowns */
  --layout-header-menu-nontouch-dropdown-padding-x: 1.875rem;
  /* horizontal padding for menu items and accordion/dropdowns */
  --layout-header-menu-nontouch-current-height: 3px;
  /* current item border indicator height */
  font-size: 0.875rem;
  line-height: 1.33;
  font-family: var(--font-accent);
  color: inherit;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 700;
}
.header-nav .menu li {
  display: flex;
  flex-wrap: wrap;
}
.header-nav .menu li,
.header-nav .menu li > a {
  position: relative;
}
.header-nav .menu li > a {
  padding: 1em 0;
  display: inline-flex;
  align-items: center;
  transition: 0.125s ease-in-out all;
  flex: 1 0;
  /* comment out if borders are not desired */
  justify-content: flex-start;
}
.header-nav .menu li:last-child, .header-nav .menu li:last-child > a {
  /* disable border for last items */
  border: none;
}
.header-nav .menu li.menu-item-has-children > a::after {
  display: inline-block;
  color: var(--scheme-sp, var(--color-primary));
  order: 9;
  align-self: center;
  transform-origin: center center;
  flex: 0 0 auto;
  margin-left: 0.2rem;
  font-size: 0.65rem;
  content: "\25BC\FE0E";
  transform-origin: center center;
}
.header-nav .menu ul {
  background-color: var(--color-neutral-dark);
  color: var(--color-light);
}
.header-nav .menu > li > a {
  border-color: var(--color-neutral);
}
@media only screen and (min-width: 1200px) {
  .header-nav .menu {
    font-size: 0.8125rem;
    gap: 2rem;
    display: flex;
    justify-content: space-between;
    position: relative;
  }
  .header-nav .menu li:not(:hover, :focus-within) > ul {
    display: none;
  }
  .header-nav .menu li {
    position: relative;
    padding-left: var(--layout-header-menu-nontouch-dropdown-padding-x);
    padding-right: var(--layout-header-menu-nontouch-dropdown-padding-x);
  }
  .header-nav .menu li > a {
    flex: 1 1;
    /* flush dropdown indicator and text to the left */
    justify-content: flex-start;
  }
  .header-nav .menu li:is(:hover, :focus-within) > a {
    /* activated styles upon interaction for nontouch */
    color: var(--color-primary);
  }
  .header-nav .menu li.menu-item-special > ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5em;
    width: 600px;
    padding: 2rem var(--layout-header-menu-nontouch-dropdown-padding-x);
  }
  .header-nav .menu li.menu-item-special > ul li {
    padding-left: 0;
    padding-right: 0;
  }
  .header-nav .menu li.menu-item-special > ul li.view-all {
    grid-column: span 3;
  }
  .header-nav .menu li.menu-item-special > ul ul {
    display: block !important;
    position: static;
    background: none;
    padding: 0;
    width: auto;
  }
  .header-nav .menu ul {
    width: 245px;
    top: 0;
    left: 100%;
    /* Take dropdowns out of doc flow + setup for hover/focus effects */
    position: absolute;
    box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.8);
    z-index: 1;
    /* additional border styles + align to current item indicator. comment out if not needed */
    margin-top: calc(var(--layout-header-menu-nontouch-current-height) * -1);
  }
  .header-nav .menu ul li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .header-nav .menu > li {
    flex-direction: row;
    padding-left: 0;
    padding-right: 0;
  }
  .header-nav .menu > li, .header-nav .menu > li > a {
    /* undo fanciness from non-media query scaffolding for top level menu item and its child a tag */
    border: none;
    background: none;
    margin: 0;
  }
  .header-nav .menu > li > a {
    padding-block: 1em 2em;
  }
  .header-nav .menu > li::before {
    /* current menu item indicator */
  }
  .header-nav .menu > li:is(:hover, :focus-within) > a {
    background: transparent;
  }
  .header-nav .menu > li:is(.current-menu-item, .current-menu-ancestor, :hover, :focus-within)::before {
    /* current menu item indicator if active */
    width: 100%;
  }
  .header-nav .menu > li > ul {
    top: 100%;
    left: 0;
  }
  .header-nav .menu > li > ul ul {
    color: var(--color-light);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .header-nav .menu > li:nth-last-child(-n+2) > ul {
    /* top level level dropdown edge case dropdown fix */
    left: auto;
    transform: none;
    right: 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .header-nav .menu > li:nth-last-child(-n+2) > ul ul,
  .header-nav .menu ul ul ul {
    /* deep deep deep inner level dropdown edge case dropdown fix */
    left: 25%;
  }
}
@media only screen and (min-width: 1400px) {
  .header-nav .menu {
    font-size: 0.875rem;
    gap: 2rem;
  }
  .header-nav .menu > li > a {
    padding-block: 1.25em;
  }
}
@media only screen and (min-width: 1900px) {
  .header-nav .menu {
    gap: 2.25em;
  }
}
@media only screen and (max-width: 1199px) {
  .header-nav .menu {
    background: var(--color-dark-alt);
    color: var(--color-light);
    font-size: 0.875rem;
    padding-top: 2rem;
    padding-bottom: 6rem;
    width: 100%;
    box-shadow: inherit;
    /* shift menu to the right edge and limit width. comment if not needed*/
    margin-left: auto;
  }
  .header-nav .menu li:not(.open) > ul {
    display: none;
  }
  .header-nav .menu li {
    padding-left: var(--layout-header-menu-touch-menu-padding-x);
    padding-right: var(--layout-header-menu-touch-menu-padding-x);
  }
  .header-nav .menu li > a {
    flex: 1 0 100%;
    /* distance both dropdown indicator and menu text to the edge */
    justify-content: center;
  }
  .header-nav .menu li:is(:hover, :focus-within, .open) > a {
    /* activated styles upon interaction for touch */
    color: var(--color-primary);
  }
  .header-nav .menu li:is(.open) {
    border-bottom: 0;
  }
  .header-nav .menu li:is(.open) > a {
    border-bottom: 0;
  }
  .header-nav .menu ul {
    margin-top: 0;
  }
  .header-nav .menu li:nth-last-child(n+2) > ul {
    margin-bottom: 0.5rem;
  }
  .header-nav .menu ul {
    background-color: var(--color-neutral-dark);
    border-block: 1px solid rgba(224, 224, 224, 0.1);
    color: inherit;
    align-self: stretch;
    order: 99;
    flex: 1 0 100%;
    /* basic borders to contrast multiple dropdown levels */
    margin-left: calc(var(--layout-header-menu-touch-menu-padding-x) * -1);
    margin-right: calc(var(--layout-header-menu-touch-menu-padding-x) * -1);
  }
  .header-nav .menu ul li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .header-nav .menu ul li > a {
    padding: 1.5em 0;
  }
  .header-nav .menu > li > a {
    padding: 1rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .header-nav .menu {
    max-width: 100%;
  }
  .header-nav .menu li > a {
    text-align: center;
    justify-content: center;
  }
  .header-nav .menu li.menu-item-has-children > a::after {
    margin-right: -0.5em;
  }
}
.doc-header-not-sticky .header-overlay-on-banner .header-nav .menu {
  /* Styles/Selectors for when header overlays the banner or adjacent element before scroll on non-touch devices. NOTE: You can modify where overlay styles can appear by modifying the functions body header classes  */
}
.doc-header-not-sticky .header-nav .menu {
  /* Styles/Selectors for when header is not sticky yet. best for smaller devices styles and minor/global changes for larger devices */
}
.doc-header-menu-open .header-nav .menu {
  /* Styles/Selectors for when header menu accordion for touch devices is open */
}
.doc-header-menu-open.doc-header-not-sticky .header-nav .menu {
  /* Styles/Selectors for when header menu accordion for touch devices is open and header is not sticky yet */
}
@media only screen and (max-width: 767px) {
  .doc-header-menu-open.doc-header-not-sticky .header-nav .menu {
    padding-top: 1rem;
  }
}

/* Header Form
--------------------------------------------------------------- */
#header-form .gform_wrapper {
  position: relative;
}
#header-form .gform_title:last-child {
  margin-bottom: 0;
}
#header-form .gform_description {
  max-width: 80ch;
}
#header-form .gform_body {
  margin-left: auto;
  margin-right: auto;
}
#header-form .gform_footer {
  justify-content: center;
  text-align: center;
}
#header-form .gfield.gfield_type_submit {
  /* dont stretch flex button */
  align-self: flex-start;
}
@media only screen and (max-width: 1199px) {
  #header-form .gform_fields .gfield:not(.gfield-width-full) {
    /* fix gravity forms from deciding to undo the grid columns on mobile instead of tablet now */
    grid-column: 1/-1;
  }
}
/* ================================================================================
* Banner
================================================================================ */
/* Layout Banner
--------------------------------------------------------------- */
.layout-banner .banner-background .responsive-background-bg {
  background-position: center top;
}
.banner-has-background-image .layout-banner {
  /* Styles specific for when banner has background image */
  background-color: var(--scheme-bg-contrast, var(--color-dark-alt));
  color: var(--scheme-fg, var(--color-light));
}
.banner-no-background-image .layout-banner {
  /* Styles specific for when banner doesnt support background image */
}
/* Banner Main
--------------------------------------------------------------- */
.banner-main {
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}
.banner-main-blocks {
  display: grid;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .banner-main {
    padding-top: 4.25rem;
    padding-bottom: 4.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .banner-main {
    padding-top: 7.25rem;
    padding-bottom: 5rem;
  }
  .banner-main-blocks {
    justify-content: space-between;
  }
  .banner-main-block, .banner-main-blocks {
    min-width: 0;
  }
  .banner-main-block:only-child {
    flex: 1 1;
    grid-column: span 2;
    justify-self: center;
  }
}
@media only screen and (min-width: 1900px) {
  .banner-main {
    padding-top: 9.25rem;
    padding-bottom: 7rem;
  }
}
.banner-has-background-image .banner-main {
  /* Styles specific for when banner has background image */
  background-color: var(--color-dark);
  background-size: cover;
  color: var(--color-light);
  min-height: 130px;
}
.doc-images-loaded .banner-has-background-image .banner-main {
  background-image: url(/wp-content/themes/pql32/images/hero-bg.jpg);
}
@media only screen and (min-width: 768px) {
  .banner-has-background-image .banner-main {
    padding-top: 3.5rem;
    padding-bottom: 2.8rem;
    min-height: 250px;
  }
}
@media only screen and (min-width: 1200px) {
  .banner-has-background-image .banner-main {
    padding-top: 5.4375rem;
    padding-bottom: 5rem;
    min-height: 316px;
  }
}
@media only screen and (min-width: 1400px) {
  .banner-has-background-image .banner-main {
    padding-top: 4.5rem;
    padding-bottom: 4rem;
    min-height: 316px;
  }
}
@media only screen and (min-width: 1900px) {
  .banner-has-background-image .banner-main {
    min-height: 315px;
  }
}
.banner-has-background-image.header-overlay-on-banner .banner-main {
  /* Styles specific for when banner has the header overlay before scroll + Styles specific for when banner has background image */
}
@media only screen and (min-width: 1200px) {
  .banner-has-background-image.header-overlay-on-banner .banner-main {
    align-items: flex-end;
    padding-top: 13rem;
  }
  .banner-has-background-image.header-overlay-on-banner .banner-main::before {
    content: "";
    display: block;
    height: var(--layout-header-height);
    flex: 0 0 auto;
    width: 100%;
  }
}
.banner-no-background-image .banner-main {
  /* Styles specific for when banner doesnt support background image OR global fallback heading*/
  padding-top: 3rem;
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .banner-no-background-image .banner-main {
    padding-top: 4.25rem;
    padding-bottom: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .banner-no-background-image .banner-main {
    padding-top: 5rem;
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1400px) {
  .banner-no-background-image .banner-main {
    padding-top: 6rem;
    padding-bottom: 7rem;
  }
}
@media only screen and (min-width: 1900px) {
  .banner-no-background-image .banner-main {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
/* Banner Body
--------------------------------------------------------------- */
.banner-body {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
}
.banner-has-background-image .banner-body {
  /* Styles specific for when banner has background image */
}
.banner-no-background-image .banner-body {
  /* Styles specific for when banner doesnt support background image */
}
/* Global Secondary Heading
--------------------------------------------------------------- */
.secondary-heading {
  font-size: 0.875rem;
  line-height: calc(1em + 7px);
  font-family: var(--font-accent);
  color: var(--color-primary);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-style: normal;
  font-weight: 800;
  text-align: inherit;
  margin-bottom: 1.75rem;
  --fancy-border-width: 2rem;
  --fancy-border-background: var(--color-light);
}
.secondary-heading em {
  /* emphasized words */
  color: var(--color-accent);
  font-style: normal;
}
.secondary-heading > span {
  /* split words */
}
.secondary-heading > span::before {
  content: " | ";
  color: var(--color-light);
  margin: 0 0.25em 0 0.5em;
}
@media only screen and (min-width: 768px) {
  .secondary-heading {
    margin-bottom: 2rem;
  }
  .secondary-heading > span:first-child::before {
    content: none;
  }
}
@media only screen and (min-width: 1400px) {
  .secondary-heading {
    font-size: 0.9375rem;
  }
}
@media only screen and (min-width: 1900px) {
  .secondary-heading {
    margin-bottom: 2.25rem;
  }
}
@media only screen and (max-width: 1199px) {
  .secondary-heading > span {
    display: inline-block;
  }
}
@media only screen and (max-width: 767px) {
  .secondary-heading > span:first-child::before {
    content: none;
  }
  .secondary-heading > span:nth-last-child(n+2) {
    margin-bottom: 0.5rem;
  }
  .secondary-heading > span::before, .secondary-heading > span {
    display: block;
  }
  .secondary-heading > span::before {
    display: none;
  }
}
.has-banner .secondary-heading {
  margin-left: auto;
  margin-right: auto;
}
.banner-has-background-image .secondary-heading {
  /* Styles specific for when banner has background image */
}
.banner-no-background-image .secondary-heading {
  /* Styles specific for when banner doesnt support background image */
}
/* Global Primary Heading
--------------------------------------------------------------- */
/* Note: default styles are set to custom internal templates w/ no banner background images  (Case Results, Testimonials, etc.) to reduce repetitive styles and or lengthy selectors */
.primary-heading {
  /* Global Styles / custom page template heading styles (Testimonials Grid, Attorney Grid, etc.) */
  font-size: 2.5rem;
  line-height: calc(1em + 5px);
  color: var(--color-dark-alt);
  margin-bottom: 0;
  --fancy-hr-height: 24px;
  --fancy-hr-width: 148px;
  --fancy-hr-margin-block: .5em 0;
}
.primary-heading em {
  /* emphasized words */
  color: var(--color-accent);
  font-style: normal;
}
@media only screen and (min-width: 768px) {
  .primary-heading {
    font-size: 3.125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .primary-heading {
    font-size: 3.75rem;
  }
}
@media only screen and (min-width: 1900px) {
  .primary-heading {
    font-size: 4.0625rem;
  }
}
.primary-heading.primary-heading-default {
  /* Styles specific for default template primary heading (Single Post, Single Page, Possibly Blog/ Archive etc.) */
  color: inherit;
  font-size: 1.75rem;
  line-height: 1.3571428571;
}
@media only screen and (min-width: 768px) {
  .primary-heading.primary-heading-default {
    font-size: 2rem;
    margin-inline: -1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .primary-heading.primary-heading-default {
    font-size: 2.625rem;
    margin-inline: 0;
  }
}
@media only screen and (min-width: 1400px) {
  .primary-heading.primary-heading-default {
    font-size: 2.8125rem;
  }
}
@media only screen and (min-width: 1900px) {
  .primary-heading.primary-heading-default {
    font-size: 3rem;
  }
}
.ilaw-default .primary-heading.primary-heading-default-h1 {
  /* Styles specific for default template primary heading set as an h1 (Single Post, Single Page) */
}
@media only screen and (max-width: 767px) {
  .ilaw-default .primary-heading.primary-heading-default-h1 {
    font-size: 1.5rem;
  }
}
.primary-heading.primary-heading-blog {
  /* Styles specific for blog post/ blog archive custom primary heading (Blog/ Archive) */
}
.primary-heading.primary-heading-blog-title {
  /* Styles specific for blog post/ blog archive custom primary heading set as blog page's title eg 'Our Blog', 'Firm Blog', etc... Note: This will be an H1 on Blog/Archive but not in Single Posts for SEO (Single Posts, Blog/ Archive) */
}
.layout-banner .primary-heading {
  /* Styles specific for when it's inside a banner */
}
.primary-heading.h1-fallback-heading {
  /* Styles specific for when banner does not exist/ rendered as a helper class for the fallback h1 */
  display: inline-block;
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 1900px) {
  .primary-heading.h1-fallback-heading {
    margin-bottom: 0.25em;
  }
}
.banner-has-background-image .primary-heading {
  /* Styles specific for when banner has background image */
  color: inherit;
}
.layout-banner .banner-has-background-image .primary-heading {
  text-shadow: 0 2px 0.125em var(--scheme-bg, var(--color-dark));
}
.banner-no-background-image .primary-heading {
  /* Styles specific for when banner doesnt support background image */
  font-size: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .banner-no-background-image .primary-heading {
    font-size: 2.8125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .banner-no-background-image .primary-heading {
    font-size: 3.125rem;
  }
}
@media only screen and (min-width: 1400px) {
  .banner-no-background-image .primary-heading {
    font-size: 3.4375rem;
  }
}
@media only screen and (min-width: 1900px) {
  .banner-no-background-image .primary-heading {
    font-size: 4.0625rem;
  }
}
/* Banner video (Optional depending on comps)
--------------------------------------------------------------- */
.banner-video .video-thumbnail {
  width: 300px;
}
.banner-video-cta.video-button {
  display: block;
}
@media only screen and (min-width: 1200px) {
  .banner-video {
    order: 99;
  }
}
.banner-has-background-image .banner-video {
  /* Styles specific for when banner has background image */
}
.banner-no-background-image .banner-video {
  /* Styles specific for when banner doesnt support background image */
}
/* Banner Content (Optional depending on comps)
--------------------------------------------------------------- */
.banner-content {
  width: 90%;
}
.banner-has-background-image .banner-content {
  /* Styles specific for when banner has background image */
  color: var(--color-accent);
}
.banner-no-background-image .banner-content {
  /* Styles specific for when banner doesnt support background image */
}
/* Banner Buttons
--------------------------------------------------------------- */
.banner-buttons {
  margin-top: 2rem;
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}
.banner-buttons-touch {
  text-align: inherit;
  margin-top: 1rem;
  margin-bottom: 2.5rem;
}
.banner-buttons-touch:first-child {
  margin-top: -1rem;
}
@media only screen and (min-width: 768px) {
  .banner-buttons {
    margin-top: 1.25rem;
  }
  .banner-button-shift .banner-buttons-touch, .banner-has-h1.banner-button-shift .banner-buttons-touch + hr {
    /* hide buttons outside of banner */
    display: none;
  }
}
@media only screen and (min-width: 1200px) {
  .banner-buttons {
    margin-top: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .banner-buttons {
    align-items: stretch;
    flex-direction: column;
  }
  .banner-buttons .button:nth-child(n+2) {
    margin-top: 1rem;
  }
  .banner-buttons-touch {
    width: 100%;
  }
  .banner-button-shift .layout-banner .banner-buttons {
    /* hide buttons inside of banner */
    display: none;
  }
}

/* Banner Form
--------------------------------------------------------------- */
#banner-form .field-form {
  margin-left: auto;
  margin-right: auto;
}
#banner-form .gform_title:last-child {
  margin-bottom: 0;
}
#banner-form .gform_description {
  max-width: 80ch;
}
#banner-form .gform_body {
  margin-left: auto;
  margin-right: auto;
}
#banner-form .gform_footer {
  justify-content: center;
  text-align: center;
}
#banner-form .gfield.gfield_type_submit {
  /* dont stretch flex button */
  align-self: flex-start;
}
#banner-form .field-form-body {
  position: relative;
  padding-bottom: 2rem;
}
#banner-form.required-message {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  top: 100%;
}
@media only screen and (max-width: 1199px) {
  #banner-form .gform_fields .gfield:not(.gfield-width-full) {
    /* fix gravity forms from deciding to undo the grid columns on mobile instead of tablet now */
    grid-column: 1/-1;
  }
}
@media only screen and (max-width: 767px) {
  #banner-form .field-form-body {
    position: relative;
    padding-bottom: 2rem;
  }
  #banner-form .gfield.required-message {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 100%;
  }
}

/* ================================================================================
* Sidebar
================================================================================ */
/* Layout Sidebar
--------------------------------------------------------------- */
/* Sidebar Form
--------------------------------------------------------------- */
#sidebar-form {
  background-color: var(--color-dark);
  background-size: cover;
  background-image: url(/wp-content/themes/pql32/images/hero-bg.jpg);
  color: var(--color-light);
  --widget-padding-x: 24px;
  --widget-padding-top: 3.8125rem;
  --widget-padding-bottom: 3.125rem;
}
#sidebar-form .field-form {
  padding: 0;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
}
#sidebar-form .gform_heading {
  margin-bottom: 1.25rem;
}
#sidebar-form .gform_title {
  font-size: 0.9375rem;
  line-height: 2.3333333333;
  font-family: var(--font-primary);
  color: var(--color-primary);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 0.625rem;
}
#sidebar-form .gform_title:last-child {
  margin-bottom: 0;
}
#sidebar-form .gform_description {
  font-size: 2.125rem;
  line-height: 1.3823529412;
  font-family: var(--font-secondary);
  color: inherit;
  text-transform: none;
  font-weight: 300;
  max-width: 80ch;
}
#sidebar-form .gform_description p {
  margin-bottom: 0;
}
#sidebar-form .gform_description:before {
  display: none;
}
#sidebar-form .gform_body {
  margin-left: auto;
  margin-right: auto;
}
#sidebar-form .gform_fields {
  row-gap: 1.25em;
}
#sidebar-form .gform_footer {
  justify-content: center;
  text-align: center;
  margin-top: 2.6875rem;
}
#sidebar-form .gfield_label {
  text-transform: none;
  font-size: 1.125rem;
  letter-spacing: 0;
}
#sidebar-form .gfield input,
#sidebar-form .gfield textarea {
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--color-dark);
}
#sidebar-form .gfield textarea {
  height: 9rem;
}
#sidebar-form .gfield.gfield_type_submit {
  /* dont stretch flex button */
  align-self: flex-start;
}
#sidebar-form .field-form-body {
  position: relative;
  padding: 0 10px 2rem;
}
#sidebar-form .required-message {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  top: 100%;
}
/* ================================================================================
Contact Template
================================================================================ */
/* Contact  Related Classes

Note: 
This file is for styles applied globally for the contact information (both footer and contact page)
For Contact Page only overrides for the contact informatio, apply styles to templates/template-contact.scss -> #contact-page
For Footer section only overrides for the contact informatio, apply styles to layout/layout-footer.scss -> .footer-contact styles section
-------------------------------------------------------------------------------- */
/* Global Stylees - Numbers (eg. header phone number, footer phone number, etc.)
-------------------------------------------------------------------------------- */
.number-link {
  font-size: 1.25rem;
  line-height: calc(1em + 10px);
  font-family: var(--font-secondary);
  color: inherit;
  display: inline-block;
}
/* Global Stylees - Social Links (ie. firm social media, blog share icons, etc)
-------------------------------------------------------------------------------- */
.social {
  font-size: 1.5rem;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
  color: var(--scheme-fg, var(--color-dark-alt));
}
.social li {
  list-style: none;
}
.social li a {
  font-size: 20px;
  color: inherit;
}
.social li a svg * {
  fill: currentColor;
}
.social li:is(:hover, :focus) {
  color: var(--scheme-sp, var(--color-primary-alt));
}
@media only screen and (min-width: 768px) {
  .social {
    justify-self: flex-end;
    gap: 1rem;
  }
  .social:after {
    display: inline;
    content: "|";
    font-size: 1rem;
  }
  .social li {
    margin-left: 0.5rem;
  }
}
/* Global Stylees - Locations
-------------------------------------------------------------------------------- */
/* Confact Info Block - Titles
-------------------------------------------------------------------------------- */
.contact-block-title {
  font-size: 1.375rem;
  font-family: var(--font-primary);
  color: var(--color-dark);
  font-weight: 700;
  margin-bottom: 0;
  max-width: max-content;
  --fancy-hr-margin-block: 1.125rem;
  --fancy-hr-height: 15px;
  --fancy-hr-width: 87px;
}
@media only screen and (min-width: 768px) {
  .contact-block-title {
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  .contact-block-title {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 1400px) {
  .contact-block-title {
    font-size: 1.625rem;
  }
}
@media only screen and (min-width: 1900px) {
  .contact-block-title {
    font-size: 1.75rem;
  }
}

/* Confact Info Block - Basic Text Content
-------------------------------------------------------------------------------- */
.contact-block-content {
  font-size: 1.125rem;
  line-height: 1.5555555556;
  font-weight: 500;
  flex: 1 1;
}
.contact-block-content a:not(.button) {
  color: inherit;
  text-decoration: none;
  font-size: 1rem;
}
.contact-block-content a:not(.button):is(:hover, :focus) {
  text-decoration: underline;
}
.contact-block-content :where(p, address:where(:nth-last-child(n+3))) {
  margin-bottom: 1.5rem;
}
/* Confact Info Block - Grid setup
-------------------------------------------------------------------------------- */
.contact-blocks {
  display: grid;
  grid-template-columns: 100%;
  justify-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  column-gap: 0.25rem;
  row-gap: 2rem;
  align-items: stretch;
}
.contact-block, .contact-blocks {
  min-width: 0;
}
.contact-block {
  width: 100%;
}
.contact-block, .contact-block-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.contact-block .location-directions, .contact-block-content .location-directions {
  margin-bottom: 2.5rem;
}
.contact-block .location-number, .contact-block-content .location-number {
  margin-bottom: 0.25rem;
}
.contact-block .location-number-label, .contact-block-content .location-number-label {
  font-size: 1rem;
  line-height: 1.8125;
  color: var(--color-primary-alt);
  font-weight: 700;
}
.contact-block .location-note, .contact-block-content .location-note {
  font-size: 16px;
  text-transform: uppercase;
}
.contact-block.contact-special {
  grid-column: 1/-1;
  text-align: center;
  align-content: center;
  align-items: center;
  max-width: 100%;
}
.contact-block.contact-special .logo {
  margin-inline: auto;
  margin-bottom: 1.5rem;
  height: 4rem;
}
.contact-block.contact-special .social {
  margin-top: 1.25rem;
}
.contact-block.contact-special .footer-blurb {
  width: 91.5%;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 700;
}
.contact-block.contact-special .footer-blurb > :where(*:nth-last-child(n+2)) {
  margin-bottom: 2.375em;
}
.contact-block.contact-special .footer-blurb :where(a) {
  color: var(--color-secondary);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: underline;
}
.contact-block.contact-number {
  /* Phone number - Contact Block Grid */
  /*
  @Variation A: Separate blocks
  Requires PHP: templates/template-contact.php - @Variation A: Separate blocks
  Requires SCSS: scss/layotemplatesuts/_contact.scss - @numberColumn / @Variation A: Separate blocks
  */
}
.contact-block.contact-number .number-title {
  display: block;
}
.contact-block.contact-numbers {
  /*
  @Variation B: One block
  Requires PHP: templates/template-contact.php - @Variation B: One block
  Requires SCSS: scss/layotemplatesuts/_contact.scss - @numbersColumn / @Variation B: One block
  */
}
.contact-block.contact-numbers .contact-numbers-content {
  display: grid;
  flex: 0 0;
  row-gap: 1rem;
}
.contact-block.contact-numbers .number-title {
  display: block;
  margin-bottom: 0;
}
.contact-block.contact-location {
  /* Location - Contact Block Grid */
  /*
  @Variation A: Separate blocks
  Requires PHP: layouts/layout-contact.php - @Variation A: Separate blocks
  Requires SCSS: scss/layouts/_contact.scss - @Variation A: Separate blocks
  */
}
.contact-block.contact-locations {
  /* Locations - Contact Block Grid */
  /*
  @Variation B: One block
  Requires PHP: layouts/layout-contact.php - @Variation B: One block
  Requires SCSS: scss/layouts/_contact.scss - @Variation B: One block
  */
}
.contact-block.contact-locations .contact-locations-content {
  display: grid;
  row-gap: 4rem;
}
.contact-block.contact-list {
  max-width: max-content;
}
.contact-block.contact-list .list-block-items {
  display: flex;
  flex-direction: column;
}
.contact-block.contact-list-email {
  /* This is an example and can be omitted if not needed. each column added here will be separated by a class named after the block's title, unless the corresponding layout-contact.php markup has been modified.  */
  font-size: 1.5em;
  font-family: var(--font-secondary);
}
@media only screen and (min-width: 768px) {
  .contact-blocks {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 6.875rem;
    row-gap: 3.75rem;
  }
  .contact-block.contact-special .logo {
    height: 54px;
    margin-bottom: 2.5rem;
  }
  .contact-block.contact-special .footer-blurb {
    max-width: 43ch;
  }
}
@media only screen and (min-width: 1200px) {
  .contact-blocks {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 6.875rem;
    column-gap: 4rem;
  }
  .contact-block.contact-special .footer-blurb {
    max-width: 55ch;
  }
}
@media only screen and (min-width: 1400px) {
  .contact-block.contact-special .footer-blurb {
    font-size: 1.0625rem;
  }
}
@media only screen and (min-width: 1900px) {
  .contact-block.contact-special .logo {
    height: 72px;
  }
  .contact-block.contact-special .footer-blurb {
    font-size: 1.1875rem;
  }
}
@media only screen and (max-width: 1199px) {
  .contact-blocks {
    width: max-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .contact-special ~ .contact-block:nth-child(even):last-child {
    grid-column: 1/-1;
  }
  .contact-block:last-child {
    grid-column: span 2;
  }
}
@media only screen and (max-width: 767px) {
  .contact-block:last-child {
    grid-column: span 1;
  }
}

/* ================================================================================
* Footer
================================================================================ */
/* Branding logo sizes
--------------------------------------------------------------- */
.ilawyer-legacy,
.ilawyer,
.onep21 {
  color: inherit;
}

.ilawyer-legacy,
.ilawyer {
  font-size: 1.125rem;
}
@media only screen and (min-width: 768px) {
  .ilawyer-legacy,
  .ilawyer {
    justify-self: flex-start;
  }
}

.onep21 {
  font-size: 3.125rem;
}

/* Layout Footer
--------------------------------------------------------------- */
.layout-footer {
  --footer-image-offset: 0;
}
.layout-footer.layout-footer-has-image-xs {
  --footer-image-offset: 69px;
}
.layout-footer .footer-bottom::before {
  content: "";
  display: block;
  flex: 0 0 auto;
  grid-column: 1/-1;
  height: var(--footer-image-offset);
}
@media only screen and (min-width: 768px) {
  .layout-footer.layout-footer-has-image-sm {
    --footer-image-offset: 69px;
  }
}
@media only screen and (min-width: 1200px) {
  .layout-footer {
    --footer-image-offset: 75px;
  }
  .layout-footer.layout-footer-has-image-md {
    --footer-image-offset: 75px;
  }
}
@media only screen and (min-width: 1400px) {
  .layout-footer.layout-footer-has-image-lg {
    --footer-image-offset: 75px;
  }
}
@media only screen and (min-width: 1900px) {
  .layout-footer.layout-footer-has-image-xl {
    --footer-image-offset: 75px;
  }
}
/* Footer Split - Top
--------------------------------------------------------------- */
.footer-top {
  background-color: var(--scheme-bg, var(--color-dark-alt));
  background-image: url(/wp-content/themes/pql32/images/hero-bg.jpg);
  background-size: cover;
  color: var(--color-light);
}
.footer-top .footer-image {
  align-self: self-end;
  margin-bottom: calc(var(--footer-image-offset) * -1);
  width: 697px;
}
.footer-top .footer-image img {
  display: block;
  border-radius: 5px;
  width: 100%;
}
@media only screen and (min-width: 1200px) {
  .footer-top-blocks {
    display: grid;
    grid-template-columns: 1fr min-content;
    position: relative;
    column-gap: 5rem;
  }
  .footer-top-blocks, .footer-top-block {
    min-width: 0;
  }
  .footer-top-block:only-child {
    grid-column: 1/-1;
  }
  .footer-top .footer-image {
    padding-top: 9.375rem;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  .footer-top .footer-image {
    margin-right: calc(var(--container-gutter) * -3.45);
  }
  .footer-top .footer-image img {
    border-radius: 5px 0 0 5px;
  }
}
@media only screen and (min-width: 1400px) {
  .footer-top .footer-image {
    width: 697px;
    margin-right: calc(var(--container-gutter) * -1.75);
  }
}
@media only screen and (min-width: 1900px) {
  .footer-top .container, .footer-top-container {
    --container-gutter: 173px;
  }
  .footer-top-blocks {
    gap: 10rem;
  }
  .footer-top .footer-image {
    width: 748px;
    margin-right: auto;
  }
}
@media only screen and (max-width: 1199px) {
  .footer-top .footer-image {
    max-width: 100%;
  }
}
/* Footer Form
--------------------------------------------------------------- */
#footer-form {
  padding-block: 3.75rem 3rem;
}
#footer-form .field-form {
  width: 528px;
  margin-inline: auto;
  max-width: 100%;
}
#footer-form .gform_title {
  font-size: 0.9375rem;
  line-height: 2.3333333333;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 0.625rem;
}
#footer-form .gform_title:last-child {
  margin-bottom: 0;
}
#footer-form .gform_description {
  font-size: 2.125rem;
  line-height: 1.3823529412;
  max-width: 80ch;
}
#footer-form .gform_body {
  margin-left: auto;
  margin-right: auto;
}
#footer-form .gform_footer {
  justify-content: center;
  text-align: center;
}
#footer-form .gfield.gfield_type_submit {
  /* dont stretch flex button */
  align-self: flex-start;
}
@media only screen and (min-width: 768px) {
  #footer-form {
    padding-top: 5.625rem;
    padding-bottom: 5.5rem;
  }
  #footer-form .gform_heading {
    text-align: initial;
    margin-left: auto;
  }
  #footer-form .gform_title {
    text-align: center;
    font-size: 1rem;
    line-height: 2.1875;
    margin-bottom: 0.5rem;
  }
  #footer-form .gform_description {
    text-align: center;
    font-size: 3.125rem;
    line-height: 1.3;
    margin-bottom: 2.5rem;
  }
  #footer-form .gform_footer {
    margin-top: 1.25rem;
  }
  #footer-form .gfield.required-message {
    text-align: right;
  }
}
@media only screen and (min-width: 1200px) {
  #footer-form {
    padding-top: 6.25rem;
    padding-bottom: 6.5rem;
  }
  #footer-form .gform_title {
    text-align: left;
  }
  #footer-form .gform_description {
    text-align: left;
    font-size: 3.4375rem;
    line-height: 1.2727272727;
    margin-bottom: 1.25rem;
  }
  #footer-form .gform_footer {
    padding-left: 0;
    justify-content: flex-start;
    margin-top: 0rem;
  }
}
@media only screen and (min-width: 1400px) {
  #footer-form {
    padding-top: 8rem;
    padding-bottom: 127px;
  }
  #footer-form .field-form {
    width: 568px;
    margin-left: 0;
  }
  #footer-form .gform_title {
    font-size: 1.0625rem;
  }
  #footer-form .gform_description {
    font-size: 3.75rem;
    line-height: 1.25;
  }
  #footer-form .gform_footer {
    margin-top: 0.5rem;
  }
}
@media only screen and (min-width: 1900px) {
  #footer-form {
    padding-bottom: 131px;
  }
  #footer-form .field-form {
    width: 672px;
  }
  #footer-form .gform_title {
    font-size: 1.25rem;
  }
  #footer-form .gform_description {
    font-size: 4.375rem;
  }
}
@media only screen and (max-width: 1199px) {
  #footer-form .gform_fields .gfield:not(.gfield-width-full) {
    /* fix gravity forms from deciding to undo the grid columns on mobile instead of tablet now */
  }
}
@media only screen and (max-width: 767px) {
  #footer-form .field-form-body {
    position: relative;
    padding-bottom: 2rem;
  }
  #footer-form .gfield.required-message {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 99%;
  }
}

/* Footer Contact

Note: 
This file is for Contact Page only overrides for the contact information
For styles applied globally for the contact information, apply styles to layouts/layout-contact.scss
For Footer section only overrides for the contact information, apply styles to layout/layout-footer.scss -> .footer-contact styles section
--------------------------------------------------------------- */
.footer-contact {
  padding-top: 3.75rem;
  padding-bottom: 0rem;
}
@media only screen and (min-width: 768px) {
  .footer-contact {
    padding-top: 5.5rem;
    padding-bottom: 1.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .footer-contact {
    padding-top: 6.25rem;
    padding-bottom: 4.25rem;
  }
  .footer-contact .contact-blocks {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: auto;
    column-gap: 0;
    row-gap: 5rem;
  }
  .footer-contact .contact-block {
    flex: 0 1 33.33%;
  }
  .footer-contact .contact-block.contact-special {
    text-align: left;
    align-items: flex-start;
    align-content: flex-start;
    grid-column: auto;
    grid-row: span 2;
  }
  .footer-contact .contact-block.contact-special .logo {
    margin-left: 0;
  }
  .footer-contact .contact-block.contact-special .footer-blurb {
    max-width: 47.5ch;
  }
}
@media only screen and (min-width: 1400px) {
  .footer-contact {
    padding-top: 7.5rem;
  }
  .footer-contact-container.container-size-default {
    --container-gutter: 200px;
  }
  .footer-contact .contact-block .contact-social {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .footer-contact {
    padding-top: 143px;
    padding-bottom: 6.25rem;
  }
  .footer-contact-container.container-size-default {
    --container-gutter: 187px;
  }
  .footer-contact .contact-block {
    flex: 0 1 20%;
  }
  .footer-contact .contact-blocks {
    gap: 0;
  }
}
/* Footer Split - Bottom
--------------------------------------------------------------- */
.footer-bottom {
  /* border separation all the way to the edge */
}
/* Footer utility
--------------------------------------------------------------- */
.footer-utility {
  padding-block: 2.5rem;
  font-size: 0.875rem;
  line-height: 28px;
  font-weight: 500;
}
.footer-utility-blocks {
  display: grid;
  row-gap: 1.5rem;
  column-gap: 2rem;
  align-items: center;
}
.footer-utility-blocks .footer-copyright .divider {
  margin: 0 0.5em 0 0.25em;
}
.footer-utility-content :is(p:not(.footer-disclaimer),
ul,
li) {
  display: inline;
  margin: 0;
}
.footer-utility-content :is(p:not(.footer-disclaimer),
ul,
li):nth-child(n+2)::before {
  content: " | ";
  display: inline-block;
  margin: 0 0.5em;
}
@media only screen and (min-width: 768px) {
  .footer-utility {
    font-size: 0.9375rem;
  }
  .footer-utility-blocks {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1rem;
    row-gap: 1rem;
  }
  .footer-utility-content {
    grid-column: span 2;
  }
  .footer-utility-content :is(p:not(.footer-disclaimer),
  ul) {
    display: inline;
    margin: 0;
  }
  .footer-utility-content :is(p:not(.footer-disclaimer),
  ul):nth-child(n+2)::before {
    content: " | ";
    display: inline-block;
    margin: 0 0.5em 0 0.25em;
  }
}
@media only screen and (min-width: 1200px) {
  .footer-utility {
    font-size: 0.9375rem;
    padding-block: 1.75rem;
  }
  .footer-utility-blocks {
    column-gap: 0.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
  .footer-utility-content {
    margin-right: auto;
    order: -1;
  }
  .footer-utility-content:first-child {
    grid-column: span 2;
    margin-right: 0;
    justify-self: flex-end;
  }
  .footer-utility .social {
    text-align: center;
    justify-self: flex-start;
  }
  .footer-utility .social li {
    margin-left: 1rem;
  }
  .footer-utility .social li:first-child {
    margin-left: 0.25rem;
  }
  .footer-utility .social::before {
    content: " | ";
    font-size: 1rem;
    display: inline-block;
    margin: 0;
  }
  .footer-utility .social:after {
    content: none;
  }
  .footer-utility :is(.ilawyer-legacy, .ilawyer, .onep21) {
    order: 99;
    justify-self: center;
    grid-column: span 3;
    align-self: center;
  }
}
@media only screen and (min-width: 1400px) {
  .footer-utility-content:first-child {
    grid-column: span 1;
    justify-self: flex-start;
  }
  .footer-utility-blocks {
    grid-template-columns: auto 1fr auto;
  }
  .footer-utility :is(.ilawyer-legacy, .ilawyer, .onep21) {
    grid-column: span 1;
  }
}
@media only screen and (max-width: 1199px) {
  .footer-utility {
    text-align: center;
  }
  .footer-utility-blocks {
    justify-content: center;
    justify-items: center;
  }
}
/* Footer disclaimer
--------------------------------------------------------------- */
.footer-disclaimer {
  margin-top: 1em;
}
/* ================================================================================
* Internals/ Default
================================================================================ */
/*!
* Default Sections: Main + Aside: Can also be reused on other templates with similar wireframes (eg. Profile Page, etc.)
-------------------------------------------------------------------------------- */
/* Default Sections: Main + Aside: Skeletons - no need to edit
--------------------------------------------------------------- */
.default-sections {
  --default-sidebar-width: 100%;
  --default-gap-x: 60px;
  --default-gap-y: 0px;
  gap: var(--default-gap-y) var(--default-gap-x);
}
.default-sections, .default-section, .default-section-main, .default-section-sidebar {
  min-width: 0; /* grid/flex fixes*/
  max-width: 100%;
}
.default-sections.default-sections-float :where(.default-section, .default-section-main, .default-section-sidebar) {
  margin-left: auto;
  margin-right: auto;
}
.default-sections.default-sections-float :where(.default-section, .default-section-main, .default-section-sidebar):where(:nth-last-child(n+2)) {
  margin-bottom: var(--default-gap-y);
}
.default-sections:is(.default-sections-split, .default-sections-full) {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.default-sections.default-sections-grid {
  display: grid;
  grid-template-columns: 100%;
  justify-content: center;
}
@media only screen and (min-width: 1200px) {
  .default-section {
    /* 2 column styles. move to media queries by design as needed */
  }
  .default-section-main {
    max-width: calc(var(--comp) - var(--default-sidebar-width) - var(--container-gutter, 0px) * 2 - var(--default-gap-x));
  }
  .default-section-sidebar {
    order: 9;
    width: var(--default-sidebar-width);
  }
  .default-sections:is(.default-sections-split, .default-sections-full) {
    flex-direction: row;
    align-items: normal;
    justify-content: center;
  }
  .default-sections.default-sections-reverse .default-section-sidebar {
    order: -1;
  }
  .default-sections.default-sections-reverse .default-section-main {
    order: 9;
  }
  .default-sections.default-sections-float::after {
    content: "";
    font-size: 0;
    visibility: hidden;
    height: 0;
    clear: both;
    display: table;
    width: 100%;
    flex: 0 0 auto;
  }
  .default-sections.default-sections-float .default-section-sidebar {
    float: right;
    clear: right;
  }
  .default-sections.default-sections-float .default-section-main {
    float: left;
    clear: left;
    width: calc(100% - (var(--default-sidebar-width)) - var(--default-gap-x));
  }
  .default-sections.default-sections-float .default-section-main:only-child {
    /* no sidebar adjust */
    float: none;
  }
  .default-sections.default-sections-float.default-sections-reverse .default-section-sidebar {
    float: left;
    clear: left;
  }
  .default-sections.default-sections-float.default-sections-reverse .default-section-main {
    float: right;
    clear: right;
  }
  .default-sections:is(.default-sections-split, .default-sections-full) .default-section-sidebar {
    flex: 0 0 auto;
  }
  .default-sections:is(.default-sections-split, .default-sections-full) .default-section-main {
    flex: 1 1;
  }
  .default-sections.default-sections-full {
    --default-gap-x: 0rem;
  }
  .default-sections.default-sections-full .default-section-main {
    margin-left: auto;
    margin-right: auto;
  }
  .default-sections.default-sections-grid {
    grid-template-columns: 1fr var(--default-sidebar-width);
    grid-column-gap: var(--default-gap-x);
  }
  .default-sections.default-sections-grid .default-section-main {
    justify-self: center;
    grid-column: 1;
  }
  .default-sections.default-sections-grid .default-section-main:only-child {
    /* no sidebar adjust */
    grid-column: span 2 !important;
  }
  .default-sections.default-sections-grid .default-section-sidebar {
    grid-column: 2;
  }
  .default-sections.default-sections-grid .default-section-main, .default-sections.default-sections-grid .default-section-sidebar {
    width: 100%;
    min-width: 0;
    min-height: 0;
  }
  .default-sections.default-sections-grid.default-sections-reverse {
    grid-template-columns: var(--default-sidebar-width) 1fr;
  }
  .default-sections.default-sections-grid.default-sections-reverse .default-section-main {
    grid-column: 2;
  }
  .default-sections.default-sections-grid.default-sections-reverse .default-section-sidebar {
    grid-column: 1;
  }
}
@media only screen and (max-width: 1199px) {
  .default-sections:not(.default-sections-full) > .default-section:is(aside, .aside):not(:only-child) {
    padding-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .default-sections:not(.default-sections-full) > .default-section:is(aside, .aside):not(:only-child) {
    padding-top: 0;
  }
}

/* Default Sections Customizations
--------------------------------------------------------------- */
@media only screen and (min-width: 1200px) {
  .default-sections {
    --default-sidebar-width: 378px;
    --default-gap-y: 53px;
  }
}
@media only screen and (min-width: 1400px) {
  .default-sections {
    --default-gap-x: 80px;
  }
}
@media only screen and (min-width: 1900px) {
  .default-sections {
    --default-gap-x: 90px;
  }
}
@media only screen and (min-width: 1200px) {
  .default-sections.default-sections-split .default-section-sidebar-container {
    --container-gutter: 1rem;
  }
}
.default-sections.default-sections-full .default-section-sidebar {
  background: var(--scheme-bg-contrast, var(--color-light-alt));
}
@media only screen and (min-width: 1200px) {
  .default-sections.default-sections-full .default-section-main-container {
    --container-gutter: 120px;
  }
}
@media only screen and (min-width: 1900px) {
  .default-sections.default-sections-full .default-section-main-container {
    --container-gutter: 250px;
  }
}
/* Default Entries
-------------------------------------------------------------------------------- */
.entry-thumbnail {
  --entry-thumbnail-aspect-w: 648;
  --entry-thumbnail-aspect-l: 260;
  display: block;
  margin-bottom: 2rem;
}
.entry-thumbnail:nth-child(n+2) {
  margin-top: 2rem;
}
.entry-thumbnail:is(a) {
  color: inherit;
}
.entry-thumbnail-img {
  position: relative;
  overflow: hidden;
  background: var(--scheme-bg-contrast, var(--color-light-alt));
}
.entry-thumbnail-img::before {
  content: "";
  display: block;
  padding-top: calc(100% * var(--entry-thumbnail-aspect-l) / var(--entry-thumbnail-aspect-w));
}
.entry-thumbnail-img::after {
  content: "No Image Available";
  opacity: 0.2;
  font-size: 1.5rem;
  line-height: 1.125;
  font-family: var(--font-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 2em 2em;
}
.entry-thumbnail-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 30%;
  z-index: 1;
}
.entry-meta {
  font-size: 0.875rem;
  font-family: var(--font-primary);
  color: var(--color-primary-alt);
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-weight: 900;
}
.entry-meta-category a:is(:hover, :focus) {
  color: inherit;
}
.entry-title {
  font-size: 1.875rem;
  line-height: 1.1666666667;
  font-family: var(--font-secondary);
  color: var(--color-dark);
  font-weight: normal;
  margin-bottom: 1.125rem;
}
.entry-button {
  --button-height: 40px;
  font-size: 0.8125rem;
  color: var(--color-dark);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
  border-color: var(--color-accent-alt);
}
.entry-buttons .button:nth-child(n+2) {
  margin-left: 1em;
}
.entry-button:hover {
  background: var(--color-accent-alt);
  color: var(--color-light);
}
.entries .entry {
  display: grid;
  justify-content: space-between;
  column-gap: 3rem;
}
.entries .entry:nth-child(n+2) {
  padding-top: 3.1875rem;
  margin-top: 3.1875rem;
  border-top: 1px solid var(--color-neutral-lighter);
}
.entries .entry-thumbnail, .entries .entry-body {
  /* grid fix */
  min-width: 0;
}
@media only screen and (min-width: 1400px) {
  .entries .entry {
    grid-template-columns: 250px 1fr;
  }
  .entries .entry-thumbnail {
    margin-bottom: 0;
    --entry-thumbnail-aspect-w: 250;
    --entry-thumbnail-aspect-l: 200;
  }
  .entries .entry-body {
    align-self: center;
  }
  .entries .entry-body:only-child {
    grid-column: 1/-1;
  }
}
@media only screen and (max-width: 1199px) {
  .entry-thumbnail {
    --entry-thumbnail-aspect-w: 648;
    --entry-thumbnail-aspect-l: 260;
  }
}
@media only screen and (max-width: 767px) {
  .blog .layout-default .h1 {
    text-align: center;
  }
}

/*!
* Default Layout/Template
-------------------------------------------------------------------------------- */
@media only screen and (min-width: 1200px) {
  .has-banner .layout-default {
    --layout-default-aside-offset: 50px;
  }
}
@media only screen and (max-width: 1199px) {
  .layout-default-sections-simple .layout-default-aside {
    max-width: var(--default-sidebar-width);
  }
}
@media only screen and (max-width: 767px) {
  .layout-default-sections-simple {
    --default-sidebar-width: auto;
  }
  .layout-default-sections-simple .layout-default-aside {
    margin-inline: calc(var(--container-gutter) * -1);
    padding-bottom: 0;
    max-width: none;
  }
  .layout-default-sections-simple .layout-default-aside .widget {
    margin-bottom: 0;
    border-inline: 0;
    border-bottom: 0;
  }
}

/*!
* Default Header
-------------------------------------------------------------------------------- */
.default-header {
  text-align: left;
}
.default-header :is(*.h1, :where(h1)) {
  margin-bottom: 0;
}
@media only screen and (min-width: 1900px) {
  .default-header {
    font-size: 3.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .default-header {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .banner-has-h1.banner-button-shift .default-header {
    margin-bottom: 0;
  }
}
/*!
* Default Heading
-------------------------------------------------------------------------------- */
.default-heading {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 767px) {
  .default-heading {
    text-align: left;
  }
}

/*!
* Default Divider - Optional
-------------------------------------------------------------------------------- */
.default-divider {
  --fancy-border-margin-y: 2.375rem;
  --fancy-border-margin-l: 0px;
  --fancy-border-width: 4rem;
}
@media only screen and (min-width: 768px) {
  .default-divider {
    --fancy-border-margin-y: 1.875rem;
    --fancy-border-margin-bottom: 2.625rem;
  }
}
@media only screen and (min-width: 1400px) {
  .default-divider {
    --fancy-border-margin-y: 1rem;
  }
}
/*!
* Search Form
* Although optional, some builds may include this OR request this in the long run. Since it's built in to wordpress, we might as well at least give it some basic styles. Overhaul as needed
-------------------------------------------------------------------------------- */
.searchform {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: stretch;
}
.searchform:nth-last-child(n+2) {
  margin-bottom: 2rem;
}
.searchform .button {
  order: 99;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.searchform input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=image]):not([type=file]) {
  --field-border-radius: .5rem;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/* ================================================================================
* Includes 
================================================================================ */
/* Awards slider
--------------------------------------------------------------- */
.carousel {
  /* height of award. best to set to the tallest award logo provided  */
  --carousel-height: 184px;
  --carousel-arrow-offset-x: 4rem;
  /* distance of arrows from the slider  */
  --carousel-arrow-offset-x-negate: var(--carousel-arrow-offset-x);
  /* distance to compensate the arrow distance against the width of the .carousels and the width of the component's container
  Tip: setting equal to --carousel-arrow-offset-x will align the slides to the container. so pretty. */
  /* distance of dots to the awards. not supported on slick */
  --swiper-pagination-bottom: 2rem;
}
.carousel .swiper {
  padding-left: var(--carousel-arrow-offset-x);
  margin-left: calc(var(--carousel-arrow-offset-x-negate) * -1);
  padding-right: var(--carousel-arrow-offset-x);
  margin-right: calc(var(--carousel-arrow-offset-x-negate) * -1);
}
.carousel-slide {
  text-align: center;
}
.carousel-slide-image {
  height: var(--carousel-height);
}
.carousel-slide-image > :where(*) {
  pointer-events: none;
}
.carousel-slide-image, .carousel-slide-image picture {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.carousel-slide-image :where(svg, object, img) {
  height: auto !important;
}
.carousel-slide-image :where(img, svg, object, picture) {
  width: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  align-self: center;
  flex: 0 0 auto;
}
@media only screen and (max-width: 1199px) {
  .carousel {
    --carousel-arrow-offset-x: 0;
  }
}
/* Carousel Variations
--------------------------------------------------------------- */
/* remove jpg white backgrounds. This fix will only work if the awards are on light backgrounds */
.carousel.carousel-style-remove-background .carousel-slider {
  mix-blend-mode: multiply;
}

/* Background Block: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/partials/responsive-background
--------------------------------------------------------------- */
.responsive-background {
  pointer-events: none;
  overflow: hidden;
  transform-style: preserve-3d;
  z-index: -1;
}
.responsive-background-wrapper {
  position: relative;
  z-index: 0;
}
.responsive-background, .responsive-background-bg {
  position: absolute !important;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.responsive-background-bg {
  /* Note: when styling instances of this block, make sure properties are NOT set as shorthand to avoid override issues */
  background-size: cover;
  background-position: center center;
  /* Note: Best practice to add fallback background-colors to your background images */
  background-color: var(--color-base-alt);
}
@media only screen and (min-width: 1200px) {
  :is(.responsive-background-animated-on-loaded, .responsive-background-animated-on-visible.visible) .responsive-background-bg {
    /* make background block animate for document ready or when visible*/
    transition: opacity ease-in-out 1.5s, transform ease-in-out 1.5s;
    opacity: 1;
    transform: scale(1);
    transform-style: preserve-3d;
  }
  :is(html:not(.doc-images-loaded) .responsive-background-animated-on-loaded,
  .responsive-background-animated-on-visible:not(.visible)) .responsive-background-bg {
    /* hide if not ready to let the world to know got to let it show */
    opacity: 0;
    transform: scale(1.125);
  }
}

/*
* Case Result Icon
-------------------------------------------------------------------------------- */
.result-icon {
  font-size: 3.125rem;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .result-icon {
    font-size: 3.625rem;
  }
}
/*
* Case Result Value
-------------------------------------------------------------------------------- */
.result-value {
  font-size: 4.0625rem;
  font-family: var(--font-primary);
  color: var(--color-dark-alt);
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 1.25rem;
  --fancy-border-width: 2.5rem;
  --fancy-border-margin-l: auto;
  --fancy-border-margin-r: auto;
  --fancy-border-background: var(--color-primary-alt);
  --fancy-border-margin-y: .5rem;
}
.result-value-confidential {
  font-size: 1.5rem;
}
/*
* Case Result Type
-------------------------------------------------------------------------------- */
/*
* Case Result Title - Optional
-------------------------------------------------------------------------------- */
.result-title {
  font-size: 1.3125rem;
  color: var(--color-dark);
  font-weight: 700;
  position: relative;
  margin-bottom: 0.75rem;
}
/*
* Case Result Description
-------------------------------------------------------------------------------- */
.result-description {
  font-size: 1rem;
  line-height: 1.6875;
}
/*
* Case Result Learn More - Optional
-------------------------------------------------------------------------------- */
.result-learn-more {
  margin-top: 2rem;
}
/*
* Case Result Description + Details Split. Useful for popups/ hovers
-------------------------------------------------------------------------------- */
.result-summary {
  margin-bottom: auto;
}
.result-details-default {
  margin-top: 1.5em;
  border-top: 1px solid var(--color-neutral);
  padding-top: 1.5rem;
  max-width: 50ch;
}
.result:not(:hover, :focus-within) .result-details-hover {
  pointer-events: none;
  opacity: 0;
}
/*
* includes/repeater-result
-------------------------------------------------------------------------------- */
.result {
  text-align: center;
  position: relative;
}
.result, .result-container {
  display: flex;
  min-width: 0;
  flex: 1 1;
  flex-direction: column;
}
.result-container {
  width: 100%;
}
.result-container .button {
  font-size: 0.8125rem;
  --button-padding-x: 1.5rem;
  max-width: 8.25rem;
  margin-inline: auto;
}
.result :where(.result-description, .result-content) {
  margin-left: auto;
  margin-right: auto;
}
.result-details-default {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1 1;
}
.result-details-default .result-description {
  flex: 1 1;
}
.result-details-default .result-learn-more:first-child {
  margin-top: auto;
}
.result-details-hover {
  max-width: none;
  position: absolute;
  background-color: var(--color-dark-alt);
  color: var(--color-light);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  scrollbar-width: none;
  overflow-y: scroll;
  transition: 0.25s all ease-in-out;
  padding: 2rem;
  opacity: 1;
}
.result-details-hover::-webkit-scrollbar {
  display: none;
}
.result:not(:hover, :focus-within) .result-details-hover {
  pointer-events: none;
  opacity: 0;
}
/*
* Practice Area Skeleton. Do not Edit
-------------------------------------------------------------------------------- */
.practice-area-title {
  padding-left: var(--pa-title-padding-x);
  padding-right: var(--pa-title-padding-x);
}
.practice-area-title.fancy-border-after {
  --fancy-border-margin-l:auto;
  --fancy-border-margin-r:auto;
  --fancy-border-margin-y: 1rem;
}
.practice-area-title.fancy-border-after:after {
  color: var(--color-primary-alt);
}
.practice-area-title.fancy-border-after:before {
  display: none;
}
.practice-area-menu li,
.practice-area-menu li a {
  display: flex;
  flex-direction: column;
}
.practice-area-menu li:nth-child(-n+1) {
  border-top: 0;
}
.practice-area-menu li a {
  justify-content: center;
  flex: 1 1;
  padding-top: calc((var(--pa-item-height) - 1em * var(--pa-item-lines) * var(--pa-item-line-height)) * var(--pa-item-baseline-offset));
  padding-bottom: calc((var(--pa-item-height) - 1em * var(--pa-item-lines) * var(--pa-item-line-height)) * (1 - var(--pa-item-baseline-offset)));
  padding-left: var(--pa-item-padding-x);
  padding-right: var(--pa-item-padding-x);
  min-height: var(--pa-item-height);
}
@media only screen and (max-width: 767px) {
  .practice-area-menu li a {
    min-height: 0;
  }
}

/*
* Practice Area Vars/ Scaffolding
-------------------------------------------------------------------------------- */
.practice-area {
  /* horizontal padding for the practice area item */
  --pa-item-padding-x: 0.5rem;
  /* horizontal padding for the practice area title */
  --pa-title-padding-x: var(--pa-item-padding-x);
  /* height of practice area item. designers will prefer to design buttons based on their height. this is to better support the wonders they create while being able to use padding to support multi-line/ edge case buttons */
  --pa-item-height: 3.875rem;
  /* Note: this value has to be unitless for calc values to work.
  	* Number of lines to compensate for the item height */
  --pa-item-lines: 2;
  /* Note: this value has to be unitless for calc values to work.
  	* 1 moves the text to the very bottom. 0 moves the text to the very top */
  --pa-item-baseline-offset: 0.5;
  /* Note: this value has to be unitless for calc values to work.
  	* Formula is line-height-px / font-size-px */
  --pa-item-line-height: 1.5;
  line-height: var(--pa-item-line-height);
}
@media only screen and (min-width: 768px) {
  .practice-area {
    min-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .practice-area {
    /* reset heights to normal flow */
    --pa-item-lines: 1;
  }
}

/*
* Practice Area Category Title
-------------------------------------------------------------------------------- */
.practice-area-title {
  font-size: 2.1875rem;
  color: var(--color-dark-alt);
  text-align: center;
  position: relative;
  margin-bottom: 2rem;
  --fancy-border-width: 50px;
  --fancy-border-margin-y: .6em;
}
@media only screen and (min-width: 768px) {
  .practice-area-title {
    margin-bottom: 3rem;
  }
}
/*
* Practice Area Menu
-------------------------------------------------------------------------------- */
.practice-area-menu {
  font-size: 0.875rem;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  font-weight: 900;
}
.practice-area-menu li {
  border-bottom: 1px solid rgba(127, 127, 127, 0.3);
}
.practice-area-menu li:is(:hover, :focus-within) a {
  color: var(--color-primary-alt);
}
/*
* includes/repeater-practice-area
-------------------------------------------------------------------------------- */
.practice-area {
  width: 100%;
}
.practice-area, .practice-area-container {
  display: flex;
  min-width: 0;
}
.practice-area-container {
  flex: 1 1;
  flex-direction: column;
}
/* Pagination
-------------------------------------------------------------------------------- */
/* pagination skeletion. no need to edit */
.pagination {
  display: grid;
  grid-template-columns: 1fr max-content 1fr;
  align-items: center;
  text-align: center;
  clear: both;
  margin-left: auto;
  margin-right: auto;
  font-size: 0.875rem;
}
.pagination-block {
  grid-row: 1;
}
.pagination-block-left {
  grid-column: 1;
  text-align: left;
}
.pagination-block-left:before {
  display: inline-block;
  color: var(--color-primary-alt);
  align-self: center;
  transform-origin: center center;
  font-size: 0.7rem;
  content: "\25BC\FE0E";
  transform-origin: center center;
  rotate: 90deg;
}
.pagination-block-center {
  grid-column: 2;
}
.pagination-block-right {
  grid-column: 3;
  text-align: right;
}
.pagination-block-right:after {
  display: inline-block;
  color: var(--color-primary-alt);
  align-self: center;
  transform-origin: center center;
  font-size: 0.7rem;
  content: "\25BC\FE0E";
  transform-origin: center center;
  rotate: 25deg;
}
.pagination-num-list.pagination-block-left span:first-child,
.pagination-num-list.pagination-block-left a:first-child {
  margin-left: 0;
}
.pagination-num-list.pagination-block-right span:last-child,
.pagination-num-list.pagination-block-right a:last-child {
  margin-left: 0;
}
@media only screen and (max-width: 1199px) {
  .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-child(2), .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-last-child(2) {
    grid-column: 1/-1;
    display: flex;
    justify-content: space-between;
  }
  .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-child(2) span:nth-last-child(n+2),
  .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-child(2) a:nth-last-child(n+2), .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-last-child(2) span:nth-last-child(n+2),
  .pagination-nav-link:is(.pagination-block-left, .pagination-block-right):nth-last-child(2) a:nth-last-child(n+2) {
    margin-right: 0.5em;
  }
}
/* pagination styles. customize as needed */
.pagination {
  font-size: 0.875rem;
  color: var(--color-dark);
  text-transform: uppercase;
  font-weight: 700;
  border-top: 1px solid var(--color-neutral-lighter);
  padding-top: 2rem;
  margin-top: 3rem;
  max-width: 1400px;
}
.pagination .current,
.pagination a:is(:hover, :focus) {
  color: var(--color-primary-alt);
}
.pagination-num-list a,
.pagination-num-list span {
  margin: 0 0.5em;
}
/*
* Profile Image
-------------------------------------------------------------------------------- */
.profile-image {
  --profile-image-aspect-w: 490;
  --profile-image-aspect-l: 550;
  --profile-image-position: 50% 15%;
  --profile-image-overlay-background: #020F1D;
  --profile-image-overlay-opacity: .8;
  max-width: 100%;
  width: 100%;
  display: block;
  position: relative;
}
.profile-image::before {
  /* aspect ratio keeper + hover overlay */
  content: "";
  display: block;
  position: relative;
  padding-top: calc(100% * var(--profile-image-aspect-l) / var(--profile-image-aspect-w));
}
.profile-image-img, .profile-image-placeholder, .profile-image-placeholder-img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.profile-image-img, .profile-image-placeholder-img {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
  object-position: var(--profile-image-position);
}
.profile-image-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border: 1px solid var(--color-neutral-lighter);
  background-color: var(--color-dark);
  background-image: linear-gradient(to bottom right, var(--color-dark), var(--color-dark-alt));
  font-size: 1.5rem;
  font-family: var(--font-secondary);
  color: var(--color-light);
  text-align: center;
}
.profile-image-placeholder-icon {
  font-size: 8rem;
  margin-bottom: 1rem;
}
.profile-image-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*
* Profile Image Pseudos: wheh linking to a bio page only
-------------------------------------------------------------------------------- */
.profile-image[href] {
  color: var(--color-light);
}
.profile-image[href]:is(:hover, :focus-within)::before, .profile-pointer-reference:is(:hover, :focus-within) .profile-image[href]::before {
  opacity: var(--profile-image-overlay-opacity);
  pointer-events: auto;
}
.profile-image[href]:is(:hover, :focus-within) .profile-view, .profile-pointer-reference:is(:hover, :focus-within) .profile-image[href] .profile-view {
  opacity: 1;
  pointer-events: auto;
}
.profile-image[href]:is(:hover, :focus-within) .placeholder-image-text, .profile-pointer-reference:is(:hover, :focus-within) .profile-image[href] .placeholder-image-text {
  display: none;
}
.profile-image[href]::before,
.profile-image[href] .profile-view {
  opacity: 0;
  pointer-events: none;
}
.profile-image[href]::before {
  /* Overlay effect */
  z-index: 1;
  background: var(--profile-image-overlay-background);
  mix-blend-mode: inherit;
  backdrop-filter: blur(1px);
  border-radius: 6px;
}
.profile-image[href] .profile-view {
  /*  */
  z-index: 2;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: max-content;
  height: min-content;
  font-size: 0.875rem;
  letter-spacing: 0.09em;
}

/*
* Profile View text
-------------------------------------------------------------------------------- */
/*
* Profile Thumbnail, contains profile image, special blurb, whatever can be included in a thumbnail
-------------------------------------------------------------------------------- */
.profile-thumbnail {
  flex: 0 0 auto;
  align-self: stretch;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/*
* Profile Additional Details
-------------------------------------------------------------------------------- */
.profile-details {
  /* view profile hit space/ additional details container */
  padding: 2rem 1rem;
  transition: 0.5s ease-in-out all;
  color: var(--color-light);
  opacity: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-direction: column;
  text-align: center;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  background: var(--color-dark-alt);
}
.profile-details::before {
  content: "";
  color: var(--color-light);
  opacity: 0.8;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
}
.profile-details:is(:hover, :focus-within), .profile-pointer-reference:is(:hover, :focus-within) .profile-details {
  opacity: 1;
  pointer-events: auto;
}
.profile-details-body {
  flex: 1 1;
  overflow-y: scroll;
  scrollbar-width: none;
}
.profile-details-body::-webkit-scrollbar {
  display: none;
}
.profile-details-body + .profile-details-footer {
  padding-top: 2rem;
  align-self: stretch;
}

/*
* Profile Name
-------------------------------------------------------------------------------- */
.profile-name {
  font-size: 1.875rem;
  font-family: var(--font-secondary);
  color: var(--color-dark-alt);
  font-weight: normal;
  align-content: center;
  margin-bottom: 0;
}
@media only screen and (min-width: 1400px) {
  .profile-name {
    font-size: 1.875rem;
    margin-bottom: 0;
  }
}
/*
* Profile Name
-------------------------------------------------------------------------------- */
.profile-position {
  font-size: 0.875rem;
  color: var(--color-primary-alt);
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: auto;
  margin-bottom: 0;
}
/*
* includes/repeater-profile
-------------------------------------------------------------------------------- */
.profile {
  background: var(--color-light);
  align-self: stretch;
}
.profile:is(:hover, :focus-within) {
  /* styles when the profile has a link */
}
.profile, .profile-container {
  display: flex;
  min-width: 0;
  flex: 1 1;
  flex-direction: column;
}
.profile-container {
  width: 100%;
  gap: 1.5rem;
}
.profile-info {
  flex: 1 1;
}
.profile-info {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/*
* Testimonial Stars
-------------------------------------------------------------------------------- */
.testimonial-stars {
  font-size: 1.3125rem;
  margin-bottom: 0.9375rem;
}
@media only screen and (min-width: 768px) {
  .testimonial-stars {
    margin-bottom: 1rem;
  }
}
@media only screen and (min-width: 1900px) {
  .testimonial-stars {
    margin-bottom: 1.25rem;
  }
}
/*
* Testimonial Highlight / Main quote
-------------------------------------------------------------------------------- */
.testimonial-highlight {
  color: inherit;
  text-align: inherit;
  margin-top: 0;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .testimonial-highlight {
    font-size: 2.1875rem;
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1900px) {
  .testimonial-highlight {
    margin-bottom: 1.25rem;
  }
}
/*
* Testimonial Quote Body / other parts of the quote
-------------------------------------------------------------------------------- */
.testimonial-quote {
  font-size: 1.125rem;
  line-height: 1.5555555556;
  margin-top: 0;
  max-width: 300px;
}
@media only screen and (min-width: 768px) {
  .testimonial-quote {
    max-width: 653px;
  }
}
@media only screen and (min-width: 1400px) {
  .testimonial-quote {
    max-width: 435px;
  }
}
@media only screen and (min-width: 1900px) {
  .testimonial-quote {
    max-width: 763px;
  }
}
/*
* Testimonial Divider - Optional
-------------------------------------------------------------------------------- */
.testimonial-divider {
  --fancy-border-margin-l: 0;
  --fancy-border-width: 2rem;
}
/*
* Testimonial Source
-------------------------------------------------------------------------------- */
.testimonial-source {
  margin-bottom: 0;
  position: relative;
}
.testimonial-source > span {
  display: block;
}
:where(.cite) .testimonial-source-location {
  font-size: 0.8125rem;
  letter-spacing: 0.06em;
  text-transform: uupercase;
  font-weight: normal;
  margin-top: 0.5rem;
}
@media only screen and (min-width: 768px) {
  .testimonial-source.cite {
    font-size: 0.875rem;
  }
  :where(.cite) .testimonial-source-location {
    font-size: 0.8125rem;
    margin-top: 0.25rem;
  }
}
@media only screen and (min-width: 1900px) {
  .testimonial-source.cite {
    font-size: 1rem;
  }
  :where(.cite) .testimonial-source-location {
    font-size: 0.875rem;
  }
}
/*
* includes/repeater-testimonial
-------------------------------------------------------------------------------- */
.testimonial, .testimonial-container {
  display: flex;
  min-width: 0;
  flex: 1 1;
  flex-direction: column;
}
.testimonial-container {
  width: 100%;
}
.testimonial :where(.testimonial-stars, .testimonial-highlight, .testimonial-quote, .testimonial-divider),
.testimonial :not(.testimonial-divider) + .testimonial-source {
  margin-top: auto;
}
/* Video Button - Default (One that doesnt have custom markup in it, just the usual one with a play symbol)
--------------------------------------------------------------- */
.video-button-default {
  --video-button-size: 135px;
  /* size of video button by height and or width */
  --video-button-text-svg-radius-ratio: 1.25;
  /*  ratio of svg path for rounded text. */
  --video-button-glyph-height: 0.18em;
  /* height for video play triangle glyph*/
  /* Tip: set as ems so the play symbol scales along with the actual button */
  --video-button-glyph-width: 0.16em;
  /* width for video play triangle glyph*/
  /* Tip: set as ems so the play symbol scales along with the actual button */
  --video-button-glyph-color: currentColor;
  /* color of the video button glyph. Used as a background-color so it can take gradients too */
  display: inline-flex;
  width: 1em;
  height: 1em;
  position: relative;
  font-size: var(--video-button-size);
  z-index: 0;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  color: var(--color-light);
}
.video-button-default:is(.video-button-no-api) {
  pointer-events: none;
}
.video-thumbnail .video-button-default {
  /* customize instances of video button within thumbnail*/
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media only screen and (min-width: 1200px) {
  .video-button-default {
    --video-button-size: 155px;
  }
}
.video-button-default, .video-button-default-image, .video-button-default-text, .video-button-default::before, .video-button-default::after, .video-button-default-thumbnail-markup::after {
  transition: 0.25s ease-in-out all;
}
.video-button-default-image, .video-button-default-text, .video-button-default-text-svg, .video-button-default-text span, .video-button-default::before, .video-button-default::after {
  position: absolute;
  margin: auto;
  pointer-events: none;
}
.video-button-default-text, .video-button-default-image {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.video-button-default.video-button-default-no-icon::before, .video-button-default.video-button-default-no-icon::after {
  content: "";
  display: block;
}
.video-button-default > .wistia_click_to_play {
  position: static !important;
  width: auto !important;
  height: auto !important;
}
.video-button-default-glyph {
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
  display: flex;
  align-items: center;
}
.video-button-default-glyph::before {
  content: "";
  display: block;
  width: var(--video-button-glyph-width);
  height: var(--video-button-glyph-height);
  background: var(--video-button-glyph-color, currentColor);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.video-button-default-glyph:not(.video-button-default-glyph-has-text) {
  padding-left: calc(var(--video-button-glyph-width) * 0.25);
}
.video-button-default-glyph-has-text::before {
  content: none;
}
.video-button-default-glyph-text {
  font-size: var(--video-button-glyph-height);
}
.video-button-default-text {
  font-size: 0.75rem;
  line-height: 1;
  color: var(--color-neutral);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
}
.video-button-default-text-svg {
  transform-style: preserve-3d;
  max-width: none;
  top: -100%;
  left: -100%;
  right: -100%;
  bottom: -100%;
  margin: auto;
  font-size: calc(1em * 1 / var(--video-button-text-svg-radius-ratio));
  width: calc(200% * var(--video-button-text-svg-radius-ratio));
  height: calc(200% * var(--video-button-text-svg-radius-ratio));
}
.video-button-default-text-svg path {
  transform-origin: center center;
}
.video-button-default-text-html span {
  top: 0;
  bottom: 0;
  width: max-content;
  height: max-content;
}
.video-button-default-text-html span:nth-child(odd) {
  right: 100%;
  margin-right: 1em;
}
.video-button-default-text-html span:nth-child(even) {
  left: 100%;
  margin-left: 1em;
}
.video-button-default-image {
  transition: all 0.25s ease-in-out;
}
.video-button-default-image-init, .video-button-default:is(:hover, :focus) .video-button-default-image-hover, .video-pointer-reference:is(:hover, :focus-within) .video-button-default-image-hover {
  opacity: 1;
}

.video-button-default-image-hover, .video-button-default:is(:hover, :focus) .video-button-default-image-init, .video-pointer-reference:is(:hover, :focus-within) .video-button-default-image-init {
  opacity: 0;
}

.video-button-default.video-button-default-no-icon {
  /* tru element/background */
  /* these are basic styles. overhaul as needed */
}
.video-button-default.video-button-default-no-icon, .video-button-default.video-button-default-no-icon::before, .video-button-default.video-button-default-no-icon::after {
  /* these are basic styles. overhaul as needed */
  border-radius: 999em;
}
.video-button-default.video-button-default-no-icon::before {
  /* fake extra background */
  /* these are basic styles. overhaul as needed */
  background: linear-gradient(to bottom, var(--color-primary-gradient-start), var(--color-primary-gradient-end));
  z-index: -1;
  top: 0.08em;
  bottom: 0.08em;
  left: 0.08em;
  right: 0.08em;
}
.video-button-default.video-button-default-no-icon::after {
  /* other element for fx */
  /* these are basic styles. overhaul as needed */
  border: 0.0125em solid var(--color-light);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.video-button-default.video-button-default-no-icon:is(:hover, :focus), .video-pointer-reference:is(:hover, :focus-within) .video-button-default.video-button-default-no-icon {
  /* on hover on itself/ containing repeater/ .video-pointer-reference */
  --video-button-glyph-color: linear-gradient(to bottom, var(--color-light-alt), var(--color-light));
  /* these are basic styles. overhaul as needed */
}
.video-button-default.video-button-default-no-icon:is(:hover, :focus)::before, .video-pointer-reference:is(:hover, :focus-within) .video-button-default.video-button-default-no-icon::before {
  /* these are basic styles. overhaul as needed */
  background: linear-gradient(to top, var(--color-primary-gradient-start), var(--color-primary-gradient-end));
}
.video-button-default.video-button-default-no-icon:is(:hover, :focus)::after, .video-pointer-reference:is(:hover, :focus-within) .video-button-default.video-button-default-no-icon::after {
  /* these are basic styles. overhaul as needed */
}

/* Video Pointer Reference
--------------------------------------------------------------- */
.video-pointer-reference {
  cursor: pointer;
}

/* Video Thumbnail
--------------------------------------------------------------- */
.video-thumbnail {
  --video-thumbnail-aspect-w: 400;
  --video-thumbnail-aspect-l: 300;
  --video-thumbnail-overlay-background: var(--color-neutral) ;
  --video-thumbnail-overlay-opacity: .9;
  position: relative;
  display: block;
  max-width: 100%;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-light-alt);
}
.video-thumbnail::before {
  /* aspect ratio keeper  */
  content: "";
  display: block;
  padding-top: calc(100% * var(--video-thumbnail-aspect-l) / var(--video-thumbnail-aspect-w));
}
.video-thumbnail-markup {
  overflow: hidden;
}
.video-thumbnail-markup[href]::after, .video-thumbnail-markup.wistia_embed::after {
  /* overlay */
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
  background-color: var(--color-primary);
  background: var(--video-thumbnail-overlay-background);
  opacity: 0;
  mix-blend-mode: multiply;
  transition: 0.25s ease-in-out all;
}
.video-thumbnail-markup-img img {
  max-width: none;
}
.video-thumbnail:is(:hover, :focus) .video-thumbnail-markup::after, .video-pointer-reference:is(:hover, :focus-within) .video-thumbnail .video-thumbnail-markup::after {
  border-radius: 5px;
  opacity: var(--video-thumbnail-overlay-opacity);
}
/* force object fit cover where we need to, im looking at you wistia
--------------------------------------------------------------- */
:is(.video-thumbnail-markup, .video-button-image),
.video-thumbnail-markup > *,
.video-thumbnail-markup img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  object-fit: cover !important;
  margin: 0 !important;
}

/* includes/repeater-video
--------------------------------------------------------------- */
.video, .video-container {
  display: flex;
  min-width: 0;
  flex: 1 1;
  flex-direction: column;
}
.video-container {
  width: 100%;
}
.video-title {
  flex: 1 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.125rem;
  text-align: center;
  margin-bottom: 0;
  padding: 1.5rem 0;
}

/* ================================================================================
* Parts 
================================================================================ */
/* Review Us Page
--------------------------------------------------------------- */
.review-us {
  text-align: center;
}
.review-us-columns {
  --columns-gap-x: 4em;
  --columns-gap-y: 2em;
  align-items: flex-end;
  justify-content: center;
}
.review-us-columns .button {
  margin-top: 1em;
}
.review-us, .review-us-video {
  margin-top: 3em;
}
@media only screen and (min-width: 768px) {
  .review-us-columns {
    --columns-number: 2;
  }
  .review-us-columns .button {
    width: 100%;
  }
}
/* Awards
--------------------------------------------------------------- */
.awards {
  text-align: center;
}
.awards-title {
  font-size: 1rem;
  color: inherit;
  letter-spacing: 0.12em;
  margin-bottom: 3rem;
}
.awards-title span {
  color: var(--color-primary-alt);
}
.awards .carousel {
  --carousel-height: 110px;
}
.awards .carousel .swiper-pagination {
  --swiper-pagination-bullet-horizontal-gap: .5rem;
  --swiper-pagination-bottom: 3rem;
}
.awards .carousel .swiper-pagination-bullet {
  background: rgba(7, 27, 49, 0.2);
}
.awards .carousel .swiper-pagination-bullet-active {
  background: #071b31;
}
@media only screen and (min-width: 768px) {
  .awards-title {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .awards-title {
    margin-bottom: 3.75rem;
  }
}
@media only screen and (min-width: 1900px) {
  .awards-title {
    font-size: 1.125rem;
    margin-bottom: 5rem;
  }
  .awards .carousel {
    --carousel-height: 130px;
  }
}
/* ================================================================================
* Home Template
================================================================================ */
/*
* Home Related Classes
-------------------------------------------------------------------------------- */
:where(.home-section) {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
:where(.home-section) .section-header, :where(.home-section) .section-footer {
  /* set centering as a scaffolding setting for all sections */
  text-align: center;
  max-width: max-content;
  margin-left: auto;
  margin-right: auto;
}
:where(.home-section) .section-header:where(:nth-last-child(n+2)) {
  margin-bottom: 2rem;
}
:where(.home-section) .section-lead {
  max-width: 67ch;
  width: 100%;
  margin-inline: auto;
}
:where(.home-section) .section-footer:where(:nth-child(n+2)) {
  margin-top: 2rem;
}
:where(.home-section) .section-heading {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  :where(.home-section) .section-lead {
    max-width: 66ch;
  }
}
@media only screen and (min-width: 1200px) {
  :where(.home-section) .section-lead {
    max-width: 63ch;
  }
}
@media only screen and (max-width: 767px) {
  :where(.home-section) .section-header, :where(.home-section) .section-footer {
    /* set centering as a scaffolding setting for all sections */
    text-align: center;
    max-width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}

:where(.home-title) {
  font-size: 0.9375rem;
  font-family: var(--font-primary);
  color: var(--color-primary-alt);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  :where(.home-title) {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 1400px) {
  :where(.home-title) {
    font-size: 1.125rem;
  }
}
/*
* Home Template
-------------------------------------------------------------------------------- */
body.ilaw-template-home {
  /* body selector for home template */
}

#home-template {
  --banner-offset: 100px;
}
#home-banner + main {
  position: relative;
}
#home-banner .banner-main {
  padding-block: 0;
  min-height: 0;
  position: relative;
}
#home-banner .banner-main-blocks {
  gap: 0;
}
#home-banner .banner-body {
  padding-block: 3.125rem 2.8125rem;
}
#home-banner .banner-body .swiper {
  --swiper-pagination-bottom: 3rem;
}
#home-banner .banner-body-subheading {
  --fancy-border-background: #eac87d7f;
  --fancy-border-height: 1px;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 2.1875rem;
}
#home-banner .banner-body-items {
  max-width: 300px;
  margin-inline: auto;
  margin-top: 3.75rem;
  text-align: center;
}
#home-banner .banner-body-item-icon {
  font-size: 3.125rem;
  margin-bottom: 0.875rem;
}
#home-banner .banner-body-item-title {
  font-size: 3.4375rem;
  line-height: 1.1090909091;
  text-transform: capitalize;
  font-weight: 900;
  --fancy-hr-height: 15px;
  --fancy-hr-width: 92px;
  --fancy-hr-margin-block: .75rem;
  --fancy-hr-color: var(--color-primary);
}
#home-banner .banner-body-item-description {
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 700;
  max-width: 25ch;
  margin-inline: auto;
}
#home-banner .banner-image {
  padding-top: 4.375rem;
  padding-bottom: 4.0625rem;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
#home-banner .banner-image,
#home-banner .banner-image > * {
  min-width: 0;
}
#home-banner .banner-image .swiper-custom-buttons-static .slider-custom-buttons {
  display: flex;
  justify-content: center;
}
#home-banner .banner-image .swiper-custom-buttons-static .button {
  margin-top: 3.125rem;
}
#home-banner .banner-image .swiper-custom-buttons-static .button.prev, #home-banner .banner-image .swiper-custom-buttons-static .button.next {
  position: relative;
}
#home-banner .banner-image .swiper-custom-buttons-static .button.prev {
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-right: calc(var(--button-padding-x) * 0.4);
}
#home-banner .banner-image .swiper-custom-buttons-static .button.next {
  border-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  padding-left: calc(var(--button-padding-x) * 0.4);
}
#home-banner .secondary-heading {
  font-size: 0.8125rem;
  line-height: 1.2307692308;
  margin-bottom: 0.5rem;
}
#home-banner .primary-heading {
  font-size: 2.5rem;
  line-height: 1.35;
}
#home-banner .banner-buttons {
  margin-top: 1.25rem;
}
#home-banner .banner-buttons .button {
  font-size: 0.875rem;
  --button-padding-x: 1.25rem;
  --button-height: 3.875rem;
}
@media only screen and (min-width: 768px) {
  #home-banner .testimonial-quote {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #home-banner .testimonial-quote {
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 768px) {
  #home-banner .testimonial-divider {
    display: none;
  }
  #home-banner .banner-body {
    padding-top: 4.5rem;
    padding-bottom: 4.375rem;
  }
  #home-banner .banner-body .swiper {
    --swiper-pagination-bottom: 3.5rem;
  }
  #home-banner .banner-body-subheading {
    margin-bottom: 2.8125rem;
  }
  #home-banner .banner-body-items {
    margin-top: 5.3125rem;
    max-width: 577px;
  }
  #home-banner .banner-body-item-icon {
    font-size: 3.625rem;
  }
  #home-banner .banner-body-item-title {
    font-size: 3.4375rem;
  }
  #home-banner .banner-image {
    padding-top: 343px;
    padding-bottom: 4.4375rem;
  }
  #home-banner .banner-image .swiper-custom-buttons-static .button {
    margin-top: 0;
  }
  #home-banner .banner-image .slider-custom-buttons {
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #home-banner .secondary-heading {
    font-size: 0.75rem;
    margin-bottom: 0.9375rem;
  }
  #home-banner .secondary-heading::after {
    content: none;
  }
  #home-banner .primary-heading {
    font-size: 3.375rem;
    line-height: 1.4074074074;
    max-width: 17ch;
    margin-inline: auto;
  }
  #home-banner .banner-buttons {
    margin-top: 1.825rem;
  }
  #home-banner .banner-buttons .button {
    font-size: 0.9375rem;
    --button-padding-x: 1.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  #home-banner .testimonial-divider {
    --fancy-border-margin-y: .6rem;
    --fancy-border-height: 0;
  }
  #home-banner .testimonial-quote {
    font-size: 0.9375rem;
    line-height: 1.6;
    margin-bottom: 1.9375rem;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  #home-banner .testimonial-source {
    font-size: 0.8125rem;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1899px) {
  #home-banner .testimonial-source-location {
    font-size: 0.8125rem;
  }
}
@media only screen and (min-width: 1200px) {
  #home-banner .banner-main {
    min-height: 900px;
    padding-top: 2.25rem;
    padding-bottom: 4.6875rem;
  }
  #home-banner .banner-main-block, #home-banner .banner-main-blocks {
    min-width: 0;
  }
  #home-banner .banner-main-block .responsive-background-bg, #home-banner .banner-main-blocks .responsive-background-bg {
    background-position: left;
  }
  #home-banner .banner-main-blocks {
    display: grid;
    justify-content: center;
    grid-template-columns: 1fr auto;
    flex: 1 1;
  }
  #home-banner .banner-main-block:only-child {
    justify-self: self-start;
  }
  #home-banner .banner-main .banner-case-results {
    margin-right: 3rem;
  }
  #home-banner .banner-main .banner-case-results .cr-container {
    padding-inline: 2rem;
  }
  #home-banner .banner-main .banner-case-results .cr-container .swiper-pagination {
    margin-top: 0px;
  }
  #home-banner .banner-main .banner-case-results .cr-item-title {
    --fancy-hr-height: 15px;
    --fancy-hr-width: 92px;
  }
  #home-banner .banner-main .banner-case-results .section-item {
    text-align: center;
  }
  #home-banner .banner-body {
    padding-block: 1.5625rem 0;
    align-self: center;
    /* align left on a breakpoint */
    text-align: left;
  }
  #home-banner .banner-body-container {
    --container-gutter: 90px;
    padding-right: 0;
  }
  #home-banner .banner-body-items {
    margin-top: 5.875rem;
  }
  #home-banner .banner-body-item-icon {
    font-size: 3.3125rem;
  }
  #home-banner .banner-body .swiper {
    margin-inline: 5.3125rem;
  }
  #home-banner .banner-image {
    width: 495px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    padding-top: 375px;
    padding-bottom: 4.25rem;
    align-self: stretch;
  }
  #home-banner .banner-image-container {
    --container-gutter: 55px;
  }
  #home-banner .banner-image .swiper-custom-buttons-static .button {
    --button-height: 2.75rem;
    --button-padding-x: 1em;
  }
  #home-banner .secondary-heading {
    font-size: 0.6875rem;
  }
  #home-banner .primary-heading {
    font-size: 3.375rem;
    line-height: 1.4074074074;
    margin-left: 0;
  }
}
@media only screen and (min-width: 1400px) {
  #home-banner .testimonial-stars {
    margin-bottom: 1rem;
  }
  #home-banner .testimonial-quote {
    font-size: 1.125rem;
    margin-bottom: 2.1875rem;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1399px) {
  #home-banner .testimonial-source {
    font-size: 0.9375rem;
  }
}
@media only screen and (min-width: 1400px) {
  #home-banner .banner-main {
    min-height: 1015px;
    padding-top: 2.125rem;
    padding-bottom: 5.25rem;
  }
  #home-banner .banner-body .swiper {
    margin-inline: 0;
  }
  #home-banner .banner-body-subheading {
    font-size: 0.875rem;
  }
  #home-banner .banner-body-container {
    --container-gutter: 94px;
  }
  #home-banner .banner-body-items {
    margin-top: 6.5625rem;
    max-width: 635px;
    margin-left: 0;
  }
  #home-banner .banner-body-item-icon {
    font-size: 4.0625rem;
  }
  #home-banner .banner-body-item-title {
    font-size: 3.4375rem;
  }
  #home-banner .banner-image {
    width: 600px;
    padding-top: 26rem;
    padding-bottom: 3.9375rem;
  }
  #home-banner .secondary-heading {
    font-size: 0.8125rem;
  }
  #home-banner .primary-heading {
    font-size: 3.875rem;
    line-height: 1.3548387097;
  }
}
@media only screen and (min-width: 1900px) {
  #home-banner .testimonial-quote {
    font-size: 1.25rem;
    line-height: 1.5;
  }
  #home-banner .banner-main {
    min-height: 1080px;
    padding-top: 0.5rem;
    padding-bottom: 6.25rem;
  }
  #home-banner .banner-body {
    padding-top: 0;
  }
  #home-banner .banner-body-container {
    --container-gutter: 160px;
  }
  #home-banner .banner-body-items {
    margin-top: 6.5625rem;
  }
  #home-banner .banner-body-item-icon {
    font-size: 4.25rem;
  }
  #home-banner .banner-body-item-description {
    font-size: 1.125rem;
  }
  #home-banner .banner-image {
    width: 918px;
    height: 868px;
    padding-top: 586px;
    padding-bottom: 4.315rem;
  }
  #home-banner .banner-image-container {
    --container-gutter: 80px;
  }
  #home-banner .banner-image .swiper-custom-buttons-static .button {
    --button-height: 3.375rem;
    --button-padding-x: 2rem;
  }
  #home-banner .secondary-heading {
    font-size: 0.875rem;
  }
  #home-banner .primary-heading {
    font-size: 4.25rem;
    line-height: 1.2058823529;
  }
  #home-banner .banner-container-right {
    margin-top: -7rem;
    width: 904px;
    min-height: 868px;
    padding-top: 34rem;
  }
}
@media only screen and (max-width: 767px) {
  #home-banner .testimonial {
    text-align: center;
  }
  #home-banner .testimonial-container {
    align-items: center;
  }
  #home-banner .testimonial-divider {
    --fancy-border-margin-l: auto;
    --fancy-border-margin-y: 1rem;
    --fancy-border-margin-bottom: 1rem;
  }
}

#home-page {
  padding-top: 0;
  padding-bottom: 0;
}
/*
* Home Section 1
-------------------------------------------------------------------------------- */
#home-section-1 {
  padding-top: 3.75rem;
  padding-bottom: 3rem;
  background-color: var(--color-light);
}
#home-section-1 .section-header {
  margin-bottom: 3.125rem;
}
#home-section-1 .section-block .video-container {
  position: relative;
}
#home-section-1 .section-block .video-container .video-thumbnail {
  --video-thumbnail-aspect-w: 310;
  --video-thumbnail-aspect-l: 262;
  border-radius: 5px;
}
#home-section-1 .section-block .video-container img {
  border-radius: 5px;
}
#home-section-1 .section-block .section-video {
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  --video-button-size: 107px;
}
#home-section-1 .section-heading {
  font-size: 2.8125rem;
  line-height: 1.3777777778;
  color: var(--color-dark-alt);
  --fancy-hr-height: 25px;
  --fancy-hr-width: 146px;
  --fancy-hr-margin-block: 1.0675rem;
}
#home-section-1 .section-heading:before {
  margin-block: auto;
}
#home-section-1 .section-subheading {
  margin-bottom: 0;
}
#home-section-1 .section-middle {
  text-align: center;
  margin-block: 4.0625rem;
}
#home-section-1 .section-blockquote {
  font-size: 2rem;
  line-height: 1.4375;
  margin-top: 1.875rem;
  margin-bottom: 0;
  max-width: 33ch;
  width: 100%;
  margin-inline: auto;
  --fancy-hr-height: 24px;
  --fancy-hr-width: 146px;
  --fancy-hr-margin-block: 1rem 0;
}
#home-section-1 .section-footer {
  margin-top: 0;
}
#home-section-1 .section-footer .section-block {
  text-align: left;
}
@media only screen and (min-width: 768px) {
  #home-section-1 {
    padding-top: 5rem;
    padding-bottom: 3.9375rem;
  }
  #home-section-1 .section-container {
    --container-gutter: 50px;
  }
  #home-section-1 .section-header {
    margin-bottom: 4.375rem;
  }
  #home-section-1 .section-heading {
    font-size: 3.75rem;
    line-height: 1.2833333333;
    --fancy-hr-height: 25px;
    --fancy-hr-width: 146px;
  }
  #home-section-1 .section-heading:after {
    margin-bottom: 2rem;
  }
  #home-section-1 .section-block .section-video {
    --video-button-size: 144px;
  }
  #home-section-1 .section-block .video-container .video-thumbnail {
    margin-inline: auto;
    width: 466px;
    min-height: 394px;
  }
  #home-section-1 .section-middle {
    margin-block: 5.625rem;
    text-align: center;
  }
  #home-section-1 .section-blockquote {
    font-size: 2.25rem;
    line-height: 1.5;
  }
}
@media only screen and (min-width: 1200px) {
  #home-section-1 {
    padding-top: 6.5625rem;
    padding-bottom: 7.3125rem;
  }
  #home-section-1 .section-container {
    --container-gutter: 75px;
  }
  #home-section-1 .section-header {
    margin-bottom: 7.5rem;
  }
  #home-section-1 .section-heading {
    font-size: 4.0625rem;
    line-height: 1.2615384615;
  }
  #home-section-1 .section-heading:after {
    margin-bottom: 2.5rem;
  }
  #home-section-1 .section-content {
    display: flex;
    gap: 4.75rem;
  }
  #home-section-1 .section-middle {
    margin-block: 6.5rem;
  }
  #home-section-1 .section-blockquote {
    font-size: 2.5rem;
    line-height: 1.5;
    max-width: 34ch;
    --fancy-hr-width: 146px;
  }
  #home-section-1 .section-footer .section-block {
    max-width: 900px;
    margin-inline: auto;
  }
}
@media only screen and (min-width: 1400px) {
  #home-section-1 {
    padding-top: 160px;
    padding-bottom: 155px;
  }
  #home-section-1 .section-container {
    --container-gutter: 98px;
  }
  #home-section-1 .section-header {
    margin-bottom: 128px;
  }
  #home-section-1 .section-heading {
    font-size: 4.375rem;
    line-height: 1.2571428571;
  }
  #home-section-1 .section-block .video-container .video-thumbnail {
    width: 540px;
    min-height: 456px;
  }
  #home-section-1 .section-middle {
    margin-block: 130px;
  }
  #home-section-1 .section-content {
    gap: 4rem;
  }
  #home-section-1 .section-blockquote {
    font-size: 2.8125rem;
    line-height: 1.4444444444;
    max-width: 1056px;
  }
  #home-section-1 .section-footer .section-block {
    max-width: 900px;
  }
}
@media only screen and (min-width: 1900px) {
  #home-section-1 {
    padding-top: 160px;
    padding-bottom: 155px;
  }
  #home-section-1 .section-container {
    --container-gutter: 277px;
  }
  #home-section-1 .section-header {
    margin-bottom: 7.5rem;
  }
  #home-section-1 .section-heading {
    font-size: 4.6875rem;
    line-height: 1.2266666667;
  }
  #home-section-1 .section-middle {
    margin-top: 150px;
    margin-bottom: 120px;
  }
  #home-section-1 .section-block .video-container .video-thumbnail {
    width: 608px;
    min-height: 514px;
  }
  #home-section-1 .section-content {
    gap: 146px;
  }
  #home-section-1 .section-blockquote {
    font-size: 3rem;
    line-height: 1.4166666667;
    --fancy-hr-margin-block: 1.1em 0;
    max-width: 1120px;
  }
}
@media only screen and (max-width: 1199px) {
  #home-section-1 .section-block-right {
    margin-top: 4.375rem;
  }
}
@media only screen and (max-width: 767px) {
  #home-section-1 .section-container {
    --container-fallback: 24px;
  }
  #home-section-1 .section-block-right {
    margin-top: 3.125rem;
  }
}

/*
* Home Section 2
-------------------------------------------------------------------------------- */
#home-section-2 {
  --section-offset: 227px;
  margin-top: var(--section-offset);
  padding-top: 1px;
  padding-bottom: 2rem;
  background-color: var(--color-dark-alt);
  background-image: url(/wp-content/themes/pql32/images/hero-bg.jpg);
  background-size: cover;
  position: relative;
}
#home-section-2 .section-container {
  --container-gutter: 25px;
  --container-fallback: 25px;
}
#home-section-2 .section-header {
  position: relative;
  margin-bottom: 3.75rem;
}
#home-section-2 .section-images {
  margin-top: calc(var(--section-offset) * -1);
  display: grid;
  gap: 15px;
  grid-template-columns: 258px;
  justify-content: center;
}
#home-section-2 .section-images, #home-section-2 .section-image {
  min-width: 0;
}
#home-section-2 .section-image {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
}
#home-section-2 .section-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#home-section-2 .section-body {
  color: var(--color-light);
}
@media only screen and (min-width: 768px) {
  #home-section-2 {
    --section-offset: 245px;
    padding-bottom: 4.5rem;
  }
  #home-section-2 .section-container {
    --container-gutter: 50px;
  }
  #home-section-2 .section-header {
    margin-bottom: 5rem;
  }
  #home-section-2 .section-images {
    grid-template-columns: 260px 122px 1fr;
    grid-template-rows: repeat(auto-fit, 1fr);
    grid-template-areas: "left top top" "left center right"}#home-section-2 .section-image-left{grid-area:left}#home-section-2 .section-image-top{grid-area:top}#home-section-2 .section-image-center{grid-area:center}#home-section-2 .section-image-right{grid-area:right}}@media only screen and (min-width:1200px){#home-section-2{--section-offset:385px;padding-bottom:6.9375rem}#home-section-2 .section-container{--container-gutter:75px}#home-section-2 .section-images{grid-template-columns:407px 193px 1fr;gap:20px}#home-section-2 .section-header{margin-bottom:7.125rem}#home-section-2 .section-body{display:flex;gap:5.625rem}#home-section-2 .section-body .section-block{width:491px}}@media only screen and (min-width:1400px){#home-section-2{--section-offset:430px;padding-bottom:145px}#home-section-2 .section-container{--container-gutter:98px}#home-section-2 .section-images{grid-template-columns:465px 221px 1fr;gap:25px}#home-section-2 .section-header{margin-bottom:135px}#home-section-2 .section-body{gap:100px}#home-section-2 .section-body .section-block{width:550px}}@media only screen and (min-width:1900px){#home-section-2{--section-offset:520px;padding-bottom:184px}#home-section-2 .section-container{--container-gutter:277px}#home-section-2 .section-images{grid-template-columns:530px 250px 1fr;gap:30px}#home-section-2 .section-header{margin-bottom:195px}#home-section-2 .section-body{gap:162px}#home-section-2 .section-body .section-block{width:600px}}#home-section-3{padding-top:3.75rem;padding-bottom:3.75rem;background-color:var(--color-light)}#home-section-3 .section-container{--container-fallback:15px}#home-section-3 .section-header{margin-bottom:3.75rem}#home-section-3 .section-heading{font-size:1rem;margin-bottom:.9375rem}#home-section-3 .section-subheading{font-size:2.625rem;line-height:1.2857142857;color:var(--color-dark-alt);margin-bottom:1.125rem;max-width:10ch}#home-section-3 .section-button .button{font-size:.875rem;--button-height:62px;--button-padding-x:2.5rem}#home-section-3 .section-content{padding-inline:15px}#home-section-3 .section-item{background:var(--color-neutral-lighter);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2.5rem 2rem 6.9375rem;border-radius:5px;text-align:center}#home-section-3 .section-item-title{font-size:1.4375rem;line-height:1.4782608696;font-family:var(--font-primary);color:var(--color-dark);font-weight:900;--fancy-hr-height:13px;--fancy-hr-width:80px}#home-section-3 .section-item-description{font-size:1rem;font-family:inherit;color:inherit;margin-bottom:1.0625rem;max-width:25ch}#home-section-3 .section-item-button{font-size:.75rem}#home-section-3 .section-icon{font-size:3rem}#home-section-3 .swiper-pagination{--swiper-pagination-bullet-horizontal-gap:.625rem;--swiper-pagination-bottom:4rem}#home-section-3 .swiper{--swiper-pagination-bullet-inactive-color:var(--color-dark-alt);--swiper-pagination-bullet-inactive-opacity:.3;--swiper-pagination-color:var(--color-primary-alt)}@media only screen and (min-width:768px){#home-section-3{padding-top:5rem;padding-bottom:5rem}#home-section-3 .section-container{--container-gutter:50px;--container-fallback:0px}#home-section-3 .section-header{margin-bottom:4.875rem}#home-section-3 .section-heading{margin-bottom:.8125rem}#home-section-3 .section-subheading{font-size:2.8125rem;line-height:1.3333333333;max-width:30ch}#home-section-3 .section-content{padding-inline:0;max-width:none}#home-section-3 .section-item{padding:3rem 1.5rem 2.5rem;min-height:350px}#home-section-3 .section-item-title{--fancy-hr-width:92px}#home-section-3 .section-icon{margin-bottom:.75rem}}@media only screen and (min-width:1200px){#home-section-3{padding-top:155px;padding-bottom:7rem}#home-section-3 .section-container{--container-gutter:74px}#home-section-3 .section-header{margin-bottom:5rem}#home-section-3 .section-heading{font-size:1.125rem}#home-section-3 .section-subheading{font-size:3.125rem;line-height:1.3;margin-inline:auto;margin-bottom:2rem}#home-section-3 .section-item{padding-bottom:3rem}#home-section-3 .section-icon{font-size:3.1875rem}#home-section-3 .section-button .button{font-size:.9375rem}}@media only screen and (min-width:1400px){#home-section-3{padding-top:145px;padding-bottom:140px}#home-section-3 .section-container{--container-gutter:100px}#home-section-3 .section-header{margin-bottom:5.9375rem}#home-section-3 .section-subheading{font-size:3.4375rem;line-height:1.2727272727;margin-bottom:2.3125rem}#home-section-3 .section-item-title{font-size:1.5625rem;--fancy-hr-width:86px;--fancy-hr-margin-block:.65em}#home-section-3 .section-item-description{max-width:32ch;margin-bottom:2rem}#home-section-3 .section-item-button{font-size:.8125rem}#home-section-3 .section-content{padding:0}}@media only screen and (min-width:1900px){#home-section-3{padding-top:170px;padding-bottom:160px}#home-section-3 .section-container{--container-gutter:277px}#home-section-3 .section-header{margin-bottom:6.5625rem}#home-section-3 .section-subheading{font-size:3.75rem;margin-bottom:3.25rem}#home-section-3 .section-item{padding:4rem 3rem 3rem;min-height:400px}#home-section-3 .section-icon{font-size:3.25rem}#home-section-3 .section-item-title{font-size:1.6875rem}#home-section-3 .section-item-description{max-width:36ch;margin-bottom:1.5rem}}#home-section-4{padding-top:3.75rem;background:var(--color-neutral-lighter);color:var(--color-dark)}#home-section-4 .section-container{--container-fallback:25px}#home-section-4 .section-blocks{display:grid;gap:4rem}#home-section-4 .section-block,#home-section-4 .section-blocks{min-width:0}#home-section-4 .section-block-right{text-align:center}#home-section-4 .section-block-right-button{margin-top:1.5rem}#home-section-4 .section-block-right-button .button{font-size:.9375rem;--button-height:62px}#home-section-4 .section-block-bottom{grid-column:1/-1}#home-section-4 .section-blockquote{text-align:center;font-size:1.625rem;line-height:1.4615384615;max-width:20.081ch;margin-inline:auto;margin-block:0}#home-section-4 .section-blockquote:after{display:none}#home-section-4 .section-divider{--fancy-hr-height:21px;--fancy-hr-gap:7px;--fancy-hr-width:310px}#home-section-4 .section-divider:before{margin-block:auto}#home-section-4 .section-divider-top{--fancy-hr-margin-block:0 1.875rem}#home-section-4 .section-divider-bottom{--fancy-hr-margin-block:2rem 0}#home-section-4 .section-footer{margin-top:0}@media only screen and (min-width:768px){#home-section-4{padding-top:5rem;padding-bottom:6.25rem}#home-section-4 .section-container{--container-gutter:50px}#home-section-4 .section-blockquote{font-size:1.75rem;line-height:1.5;max-width:23.5ch}#home-section-4 .section-blocks{gap:5.625rem}#home-section-4 .section-block-divider-top{--fancy-hr-margin-block:0 2.75rem}#home-section-4 .section-block-divider-bottom{--fancy-hr-margin-block:2.75rem 0}#home-section-4 .section-divider-top,#home-section-4 .section-divider-bottom{--fancy-hr-width:399px}#home-section-4 .section-divider-top:before,#home-section-4 .section-divider-bottom:before{margin-block:auto}#home-section-4 .section-divider-top{--fancy-hr-margin-block:0 2.75rem}#home-section-4 .section-divider-bottom{--fancy-hr-margin-block:2.75rem 0}}@media only screen and (min-width:1200px){#home-section-4{padding-top:123px;padding-bottom:8rem}#home-section-4 .section-container{--container-gutter:90px}#home-section-4 .section-blocks{grid-template-columns:1fr auto;column-gap:3.75rem;row-gap:7rem}#home-section-4 .section-block-right{margin-top:1.875rem}#home-section-4 .section-block-left:after,#home-section-4 .section-block-left:before{display:none}#home-section-4 .section-blockquote{font-size:1.75rem;line-height:1.5}#home-section-4 .section-footer{margin-top:0rem}}@media only screen and (min-width:1400px){#home-section-4{padding-top:133px;padding-bottom:7.25rem}#home-section-4 .section-container{--container-gutter:98px}#home-section-4 .section-blocks{column-gap:7.125rem;row-gap:7.75rem}#home-section-4 .section-blockquote{font-size:2.0625rem;line-height:1.3939393939}}@media only screen and (min-width:1900px){#home-section-4{padding-top:174px;padding-bottom:161px}#home-section-4 .section-container{--container-gutter:277px}#home-section-4 .section-blocks{column-gap:6.25rem;row-gap:10.25rem}#home-section-4 .section-divider-top{--fancy-hr-margin-block:0 3.5rem}#home-section-4 .section-divider-bottom{--fancy-hr-margin-block:3.5rem 0}#home-section-4 .section-block-right{margin-right:-3rem}}#home-section-7{background-color:var(--scheme-bg-contrast,var(--color-light-alt))}#error404-page{text-align:center}@media only screen and (min-width:1200px){#results-banner .banner-main{padding-bottom:4.6875rem}}#results-page .results:is(.columns){--columns-gap-x:3rem;--columns-gap-y:45px;justify-content:center}#results-page .result{background:var(--color-neutral-lighter);padding:4.375rem 3rem}#results-page .section-container{--container-gutter:37px;text-align:center}@media only screen and (min-width:768px){#results-page .section-container{--container-gutter:50px}}@media only screen and (min-width:1200px){#results-page .results:is(.columns){--columns-number:2}#results-page .section-container{--container-gutter:75px}}@media only screen and (min-width:1400px){#results-page .results:is(.columns){--columns-number:3}#results-page .result{padding:4.0625rem 3.5rem 4.1875rem}#results-page .section-container{--container-gutter:100px}}@media only screen and (min-width:1900px){#results-page .results:is(.columns){--columns-gap-x:45px;--columns-gap-y:45px}#results-page .section-container{--container-gutter:277px}}@media only screen and (max-width:1199px){#results-page .result{max-width:600px}}@media only screen and (min-width:1900px){#practice-areas-banner .banner-main{padding-bottom:5.25rem}}#practice-areas-page .practice-area-menu:is(.columns){--columns-gap-x:3rem;text-align:center}#practice-areas-page .practice-area{margin-bottom:34px;padding:3rem 3rem;background-color:var(--color-neutral-lighter)}#practice-areas-page .practice-area:last-child{margin-bottom:0}#practice-areas-page .section-header{text-align:center}@media only screen and (min-width:768px){#practice-areas-page .practice-area-menu:is(.columns){--columns-number:2;text-align:center}}@media only screen and (min-width:1200px){#practice-areas-page .practice-area-menu:is(.columns){--columns-number:3}#practice-areas-page .section-container{--container-gutter:75px}}@media only screen and (min-width:1400px){#practice-areas-page .practice-area{margin-bottom:45px;padding:4rem 5rem}#practice-areas-page .section-container{--container-gutter:100px}}@media only screen and (min-width:1900px){#practice-areas-page{padding-bottom:195px}#practice-areas-page .practice-area-menu:is(.columns){--columns-number:3;--columns-gap-x:8rem}#practice-areas-page .practice-area{padding:5rem}#practice-areas-page .practice-area-menu li:nth-child(-n+4){border-top:0}#practice-areas-page .section-container{--container-gutter:280px}}@media only screen and (max-width:767px){#practice-areas-page .practice-area{margin-left:calc(var(--container-gutter) * -1);margin-right:calc(var(--container-gutter) * -1);padding-left:var(--container-gutter);padding-right:var(--container-gutter);width:auto}}#testimonials-page .testimonials:is(.columns){--columns-gap-x:3rem;--columns-gap-y:3.25rem}#testimonials-page .testimonials-featured{text-align:center}#testimonials-page .testimonial{padding-bottom:calc(var(--columns-gap-y) + 0.25rem);border-bottom:1px solid var(--color-neutral-lighter)}#testimonials-page .section-header{text-align:center}@media only screen and (min-width:768px){#testimonials-page .section-container{--container-gutter:50px}}@media only screen and (min-width:1200px){#testimonials-page .testimonials:is(.columns){--columns-number:2;--columns-gap-x:6rem}#testimonials-page .section-container{--container-gutter:75px}}@media only screen and (min-width:1400px){#testimonials-page .testimonials:is(.columns){--columns-gap-x:8rem}#testimonials-page .section-container{--container-gutter:100px}}@media only screen and (min-width:1900px){#testimonials-page{padding-bottom:10rem}#testimonials-page .testimonials:is(.columns){--columns-gap-x:11rem}#testimonials-page .section-container{--container-gutter:357px}}.team-group:nth-child(n+2){margin-top:4rem}.team-title{margin-bottom:2rem}.team .profile{max-width:440px}#team-page .profiles:is(.columns){--columns-gap-x:5rem;--columns-gap-y:5rem;justify-content:center}#team-page .section-container{--container-gutter:37px}#team-page .section-header{text-align:center}@media only screen and (min-width:768px){#team-page .profiles:is(.columns){--columns-number:2}#team-page .section-container{--container-gutter:50px}}@media only screen and (min-width:1200px){#team-page .profiles:is(.columns){--columns-number:3}#team-page .section-container{--container-gutter:75px}}@media only screen and (min-width:1400px){#team-page .profiles:is(.columns){--columns-gap-x:6.25rem;--columns-gap-y:6.25rem}#team-page .section-container{--container-gutter:100px}}@media only screen and (min-width:1900px){#team-page .profiles:is(.columns){--columns-number:3}#team-page .section-container{--container-gutter:328px}}@media only screen and (max-width:767px){#team-page .profile{max-width:400px}}.profile-contact a:not(:hover,:focus){color:inherit;text-decoration:none}.profile-contact-label{margin-right:.5em}#profile-page{padding-bottom:.9375rem}#profile-page .section-container{--container-gutter:37px}#profile-page .section-header{margin-bottom:0rem}#profile-page .section-heading{font-size:2.1875rem;line-height:1.25;max-width:none;margin-bottom:0}#profile-page .section-subheader{margin-bottom:0rem}#profile-page .section-divider{background:#C7C7C7;--fancy-border-margin-y:10px;--fancy-border-margin-bottom:39px;--fancy-border-width:4rem}#profile-page .list-block-title{font-size:.9375rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:15px}#profile-page .list-block-title:after{display:none}#profile-page .list-block-items ul{margin-bottom:45px}#profile-page .list-block-items ul li{font-weight:400;text-transform:none;letter-spacing:0}#profile-page .accordion-wrapper{margin-top:45px}@media only screen and (min-width:768px){#profile-page{padding-top:4.625rem;padding-bottom:3rem}#profile-page .section-container{--container-gutter:50px}v #profile-page .section-heading{font-size:2.8125rem;margin-bottom:.5rem}#profile-page .section-divider{--fancy-border-margin-y:2rem;--fancy-border-margin-bottom:1.75rem}#profile-page .accordion-wrapper{margin-top:55px}}@media only screen and (min-width:1200px){#profile-page{padding-bottom:1rem}#profile-page .default-section-sidebar{--default-sidebar-width:354px;margin-bottom:45px}#profile-page .default-section-sidebar .list-block{background:var(--color-light);padding:0}#profile-page .default-section-sidebar .list-block:nth-last-child(n+2){margin-bottom:0}#profile-page .default-section-sidebar .list-block-items ul{margin-bottom:30px}#profile-page .section-container{--container-gutter:75px}#profile-page .section-divider{--fancy-border-margin-y:1.25rem;--fancy-border-margin-bottom:3rem}#profile-page .accordion-wrapper{margin-top:0}}@media only screen and (min-width:1400px){#profile-page{padding-top:6.25rem;padding-bottom:2rem}#profile-page .default-sections{--default-gap-x:45px}#profile-page .default-section-sidebar{width:354px}#profile-page .section-container{--container-gutter:100px}#profile-page .section-heading{font-size:3rem}}@media only screen and (min-width:1900px){#profile-page{padding-top:7.5rem;padding-bottom:4rem}#profile-page .default-sections{--default-sidebar-width:354px;--default-gap-x:110px}#profile-page .section-container{--container-gutter:277px}#profile-page .section-heading{font-size:3.125rem;margin-bottom:.5rem}}@media only screen and (max-width:1199px){#profile-page .section-image{max-width:360px;margin-left:auto;margin-right:auto;margin-bottom:70px}#profile-page .section-awards,#profile-page .section-header{text-align:center}#profile-page .section-divider{--fancy-border-margin-r:auto;--fancy-border-margin-l:auto}}@media only screen and (max-width:767px){#profile-page .section-image{margin-bottom:52px}}#profile-page.profile-page-simple-header{margin-bottom:2rem}#profile-page.profile-page-simple-subheader{margin-bottom:2rem}#profile-page.profile-page-sections{padding:0;--profile-image-offset:-80px}#profile-page.profile-page-sections .section-block.default-section-sidebar{position:relative;z-index:1}#profile-page.profile-page-sections #profile-section-1{padding-bottom:1px}#profile-page.profile-page-sections #profile-section-2{padding-top:1px}@media only screen and (min-width:1200px){#profile-page.profile-page-sections{--profile-image-offset:80px}#profile-page.profile-page-sections .default-section-sidebar{padding-top:var(--default-gap-y)}#profile-page.profile-page-sections #profile-section-1 .section-block.default-section-sidebar{margin-bottom:var(--profile-image-offset)}#profile-page.profile-page-sections #profile-section-2 .section-block.default-section-sidebar{margin-top:calc((var(--profile-image-offset)) * -1)}}@media only screen and (min-width:1400px){#profile-page.profile-page-sections{--profile-image-offset:-110px}}@media only screen and (max-width:1199px){#profile-page.profile-page-sections #profile-section-1{padding-bottom:1px}#profile-page.profile-page-sections #profile-section-1 .section-container{margin-bottom:var(--profile-image-offset)}#profile-page.profile-page-sections #profile-section-2{padding-top:1px}#profile-page.profile-page-sections #profile-section-2 .section-container{margin-top:calc((var(--profile-image-offset)) * -1)}}#profile-section-1{padding-top:3rem;position:relative;z-index:1;color:var(--scheme-fg,var(--color-light));background:var(--scheme-bg,var(--color-dark-alt))}#profile-section-1 .section-blocks{--default-gap-y:0px}@media only screen and (min-width:1200px){#profile-section-1{padding-top:6rem}#profile-section-1 .default-section-sidebar{align-self:end}#profile-section-1 .default-section-main{align-self:center}}@media only screen and (max-width:1199px){#profile-section-1{text-align:center}}#profile-page.profile-page-full{padding:0}#profile-page.profile-page-full .section-block:where(:nth-last-child(n+2)){margin-bottom:var(--default-gap-y)}#profile-page.profile-page-full .section-header{margin-bottom:2rem}#profile-page.profile-page-full .section-subheader{margin-bottom:2rem}#videos-banner .primary-heading:after{display:block;margin:.75rem 0}@media only screen and (min-width:768px){#videos-banner .primary-heading:after{margin:1rem auto;line-height:1rem}}#videos-page .videos:is(.columns){--columns-gap-x:3rem;--columns-gap-y:3rem;justify-content:center}#videos-page .video-button-default{--video-button-size:115px}#videos-page .section-container{text-align:center}@media only screen and (min-width:768px){#videos-page .videos:is(.columns){--columns-number:2}#videos-page .section-container{--container-gutter:50px}}@media only screen and (min-width:1200px){#videos-page .videos:is(.columns){--columns-number:3}#videos-page .section-container{--container-gutter:75px}}@media only screen and (min-width:1400px){#videos-page .section-container{--container-gutter:100px}}@media only screen and (min-width:1900px){#videos-page .section-container{--container-gutter:277px}}@media only screen and (max-width:767px){#videos-page .video{max-width:400px}}.about-section .section-header,.about-section .section-footer{text-align:center}.about-section .section-container{--container-gutter:37px}.about-section .section-footer{max-width:100%}.about-section .section-heading:last-child:not(.primary-heading){margin-bottom:0}.about-section .section-lead{margin-bottom:38px}.about-section .section-block-right{margin-bottom:2rem}.about-section .section-block-right .video-container{position:relative}.about-section .section-block-right .video-container img{border-radius:5px}.about-section .section-block-right .section-video{top:0;right:0;left:0;bottom:0;margin:auto;position:absolute}@media only screen and (min-width:768px){.about-section .section-lead{margin-bottom:5rem}.about-section .section-block-right{margin:0 auto 4rem;max-width:466px}.about-section .section-block-right .section-video{--video-button-size:144px}}@media only screen and (min-width:1200px){.about-section .section-container{--container-gutter:75px}.about-section .section-lead{margin-bottom:5rem}.about-section .section-blocks{display:flex;flex-direction:row-reverse;margin-bottom:2rem}.about-section .section-block-left{width:47%}.about-section .section-block-right{width:53%;margin-right:0}}@media only screen and (min-width:1400px){.about-section .section-container{--container-gutter:97px}.about-section .section-block-right{max-width:540px}.about-section .section-block-right .video-thumbnail{--video-thumbnail-aspect-w:540;--video-thumbnail-aspect-l:456}}@media only screen and (min-width:1900px){.about-section .section-heading:after{margin:1rem auto}.about-section .section-container{--container-gutter:265px}.about-section .section-lead{margin-bottom:172px}.about-section .section-block-right{margin-top:1.1875rem;max-width:608px}.about-section .section-block-right .video-thumbnail{--video-thumbnail-aspect-w:608;--video-thumbnail-aspect-l:514}.about-section .section-block-right .section-video{--video-button-size:156px}}#about-banner .banner-main{padding-bottom:1.5rem}@media only screen and (min-width:768px){#about-banner .banner-main{padding-bottom:2rem}}@media only screen and (min-width:1400px){#about-banner .banner-main{padding-bottom:2rem}}#about-page{padding-top:0;padding-bottom:0}#about-page .video-button{--video-button-size:120px}#about-page .section-header{text-align:center}#about-page .section-footer{padding-top:4rem;padding-bottom:4rem;background:var(--color-neutral-lighter)}@media only screen and (min-width:768px){#about-page .video-button{--video-button-size:150px}#about-page .section-footer{padding-bottom:5rem}}@media only screen and (min-width:1200px){#about-page .section-footer{padding-top:5rem;padding-bottom:6rem}}@media only screen and (min-width:1400px){#about-page .section-footer{padding-top:6rem;padding-bottom:8rem}}@media only screen and (min-width:1900px){#about-page .section-footer{margin-top:6rem;padding-top:7.5rem}}#contact-banner .banner-main{padding-bottom:1.5rem}@media only screen and (min-width:1200px){#contact-banner .banner-main{padding-bottom:2.75rem}}#contact-page .section-container{text-align:center}#contact-page .section-header{text-align:center}#contact-page .section-heading{text-align:center}#contact-page .section-content{text-align:center;font-weight:900;margin-bottom:4rem}@media only screen and (min-width:768px){#contact-page .contact-block.contact-special .footer-blurb{max-width:62.5ch}}@media only screen and (min-width:1200px){#contact-page .section-container{--container-gutter:75px}#contact-page .section-content{max-width:949px;margin:0 auto 4rem}#contact-page .contact-block.contact-special .footer-blurb{font-size:1.125rem}}@media only screen and (min-width:1400px){#contact-page .section-content{font-size:1.375rem;line-height:1.5454545455;margin-bottom:6.375rem}}@media only screen and (min-width:1900px){#contact-page .contact-blocks{grid-template-columns:repeat(5,auto);column-gap:6rem}#contact-page .contact-block.contact-special .footer-blurb{font-size:1.3125rem}}