/*
Theme Name: ComSpec
Author: Reuben Rink
Author URI: https://www.reubenrink.com/
Version: 1.0
*/

*,*::before,*::after{box-sizing:border-box;}html{overflow-y:scroll;font-size:100%;}body{margin:0;padding:0;line-height:1.5;}abbr,address,article,aside,audio,b,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,figure,footer,form,h1,h2,h3,h4,h5,h6,header,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,ol,p,pre,q,samp,section,small,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}article,aside,figure,footer,header,main,nav,section{display:block;}ul{list-style:none;}ol{margin-left:1.5em;}blockquote,q{quotes:none;}blockquote::before,blockquote::after,q::before,q::after{content:none;}a{font-size:100%;background:transparent;margin:0;padding:0;vertical-align:baseline;}a:hover,a:active{outline:0;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}img,video,svg{max-width:100%;height:auto;display:block;}td,td img{vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}th{vertical-align:bottom;font-weight:700;}td{font-weight:400;}hr{height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}pre{white-space:pre-wrap;word-wrap:break-word;}code,kbd,pre,samp{font-family:monospace,sans-serif;}small{font-size:85%;}strong{font-weight:700;}sub,sup{font-size:75%;line-height:0;position:relative;}sup{top:-0.5em;}sub{bottom:-0.25em;}input,button,select,textarea{margin:0;font:inherit;-webkit-appearance:none;appearance:none;}input,select{vertical-align:middle;}button,input[type="button"],input[type="submit"]{cursor:pointer;width:auto;overflow:visible;}label{cursor:pointer;}textarea{overflow:auto;vertical-align:top;}.alignleft,img.alignleft{float:left;margin:15px 15px 15px 0;}.alignright,img.alignright{float:right;margin:15px 0 15px 15px;}.aligncenter,img.aligncenter{display:block;margin:15px auto;}

:root{
	--navy: #112b3c;
	--cyan: #1c8fce;
	--gray: #c0c1c3;
	--light-gray: #e4e7eb;
	--off-white: #f5f7f9;
	--red: #d02226;
}

body{ font-family: 'Inter', sans-serif; color: #112b3c; background: linear-gradient(to bottom, #0f2c41 var(--header-height), #fff var(--header-height));}
body, select, input, textarea{ font-family: 'Inter', sans-serif;}
.page-wrap{}

a{ color: #1c8fce; text-decoration: underline;}
a:hover, a:focus{ color: #0e76ac;}
.button{ display: inline-flex; align-items: center; gap: 10px; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 14px; line-height: 14px; font-weight: 600; letter-spacing: .025em; padding: 15px 40px; border-radius: 100px; color: #fff; background-color: #1c8fce; border: 1px solid #1c8fce; text-decoration: none;}
.button::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f178'; font-size: 12px; font-style: normal; -webkit-font-smoothing: antialiased; transition: transform .2s ease;}
.button:hover::after, .button:focus::after{ transform: translateX(4px);}
.button:hover, .button:focus{ background-color: #0e76ac; border-color: #0e76ac; color: #fff; text-decoration: none;}
.button-alt{ background: none; color: #fff; border: 1px solid #1c8fce;}
.button-alt:hover, .button-alt:focus{ background-color: #0e76ac; border-color: #0e76ac; color: #fff !important;}
.resources-section .button-alt{ color: #112b3c;}
button{ display: inline-block; cursor: pointer;}
.screen-reader{ position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden;}
:focus{ outline: 2px solid #1c8fce; outline-offset: 2px;}
:focus:not(:focus-visible){ outline: none;}
:focus-visible{ outline: 2px solid #1c8fce; outline-offset: 2px;}
a, img, .button{ transition: all .3s ease 0s;}

h1, h2, h3, h4, h5, h6{ line-height: 1.2; font-family: 'Inter Tight', 'Inter', sans-serif;}
h1{}
h2{ font-size: 48px; line-height: 52px; font-weight: 600;}
h3{}
h4{}
h5{}
h6{}

.eyebrow{ font-family: 'IBM Plex Mono', monospace; font-size: 16px; line-height: 1; color: #1c8fce; text-transform: uppercase; letter-spacing: .05em;}

.hero-section h1{ font-size: 72px; line-height: 72px; font-weight: 400; color: var(--navy);}
.hero-section h1 span{ font-weight: 700; color: var(--cyan);}
.inside-hero h1{ font-size: 42px; line-height: 46px; font-weight: 500; color: #fff;}
.content.flex h2{ font-size: 42px; line-height: 46px; font-weight: 600;}
p{ margin-top: 1em;}
p:first-child{ margin-top: 0;}

.wrapper, .container{ width: 95%; max-width: 1400px; margin: 0 auto;}
.container{ display: flex;}
.wrapper:after{ content: ""; display: table; clear: both;}

:root{ --header-height: 110px;}
.page-wrap{ padding-top: var(--header-height);}
.header{ position: fixed; top: 0; left: 0; right: 0; z-index: 500; background: linear-gradient(to right, #0f2c41, #0d2d47); border-bottom: 1px solid #274257; padding: 35px 0 30px;}
body.admin-bar .header{ top: 32px;}
.header .container{ align-items: center; justify-content: space-between;}
.header .logo{ max-width: 250px;}

.nav{}
nav ul{ list-style: none; position: relative; float: left; margin: 0; padding: 0;}
nav ul a{ display: block; text-decoration: none;}
nav ul li{ position: relative; float: left; margin: 0; padding: 0;}
.header .nav ul a{ color: #fff; font-size: 16px; line-height: 16px; font-weight: 500;}
.header .nav ul li.current-menu-item > a,
.header .nav ul li:hover > a{ color: #1c8fce;}
.header .nav > ul{ display: flex; align-items: center; gap: 40px; float: none;}
.header .nav > ul > li{ float: none;}
.header .nav ul li.menu-item-has-children > a::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f107'; color: #1c8fce; font-size: 11px; margin-left: 5px; -webkit-font-smoothing: antialiased;}
nav ul ul{ display: none; position: absolute; top: calc(100% + 20px); left: -20px; padding: 8px 0; background: #fff; min-width: 200px; box-shadow: 0 8px 24px rgba(0,0,0,.15);}
nav ul ul::before{ content: ''; position: absolute; top: -20px; left: 0; right: 0; height: 20px;}
nav ul ul li{ float: none; width: 200px;}
nav ul ul a{ padding: 10px 20px; color: #112b3c; font-size: 14px; font-weight: 400;}
.header .nav ul ul a{ color: #112b3c; font-size: 14px; line-height: 20px; font-weight: 400;}
nav ul ul a:hover, nav ul ul a:focus{ color: #1c8fce;}
nav ul ul ul{ top: 0; left: 100%;}
nav ul li:hover > ul{ display: block; animation: dropdownIn .25s ease forwards;}
@keyframes dropdownIn{ from{ opacity: 0; transform: translateY(-8px);} to{ opacity: 1; transform: translateY(0);}}

.nav-toggle{ display: none; flex-direction: column; justify-content: space-between; width: 28px; height: 20px; background: none; border: none; padding: 0; cursor: pointer;}
.nav-toggle span{ display: block; width: 100%; height: 2px; background: currentColor; transition: transform .3s ease, opacity .3s ease;}
.nav-toggle.is-open span:nth-child(1){ transform: translateY(9px) rotate(45deg);}
.nav-toggle.is-open span:nth-child(2){ opacity: 0;}
.nav-toggle.is-open span:nth-child(3){ transform: translateY(-9px) rotate(-45deg);}

.mobile-overlay{ display: none; position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 998; opacity: 0; pointer-events: none; transition: opacity .3s ease;}
.mobile-overlay.is-visible{ opacity: 1; pointer-events: auto;}
.mobile-nav{ position: fixed; top: 0; right: -320px; width: 300px; max-width: 85vw; height: 100%; background: #0f2c41; z-index: 999; padding: 24px; overflow-y: auto; transition: right .3s ease; box-shadow: -2px 0 20px rgba(0,0,0,.4);}
.mobile-nav.is-open{ right: 0;}
.mobile-nav-header{ display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; margin-bottom: 8px; border-bottom: 1px solid #274257;}
.mobile-nav-header .logo{ max-width: 140px; height: auto;}
.mobile-nav nav ul{ float: none;}
.mobile-nav nav ul li{ float: none;}
.mobile-nav nav ul ul{ position: static; display: block; width: auto; background: none; box-shadow: none; border: none; border-radius: 0; padding: 0; min-width: 0; margin-top: 0;}
.mobile-nav nav ul ul::before{ display: none;}
.mobile-nav nav ul a{ padding: 13px 0; border-bottom: 1px solid #274257; color: #fff; font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 500; display: block; text-decoration: none;}
.mobile-nav nav ul ul a{ padding-left: 16px; font-size: 14px; font-weight: 400; color: #c0c1c3;}
.mobile-nav nav ul li.current-menu-item > a,
.mobile-nav nav ul a:hover,
.mobile-nav nav ul a:focus{ color: #1c8fce;}
.mobile-nav nav ul li.menu-item-has-children > a::after{ color: #1c8fce;}
.nav-close{ background: none; border: none; font-size: 1.75rem; line-height: 1; padding: 0; cursor: pointer; color: #fff;}
.nav-toggle{ color: #fff;}
.nav-toggle:hover, .nav-toggle:focus{ background: none;}
.nav-close:hover, .nav-close:focus{ background: none; color: #1c8fce;}
body.nav-open{ overflow: hidden;}

.page-section{ padding: 80px 0;}
.content{}
.content p:first-child{ margin-top: 0;}
.content ul{ list-style: disc; margin: 15px 0 0 30px;}
.content ol{ margin: 15px 0 0 30px;}
.content img{ max-width: 100%; height: auto;}

.hero-section{ padding: 120px 0; color: var(--navy); position: relative; overflow: hidden;}
.hero-image-wrap{ position: absolute; top: 50%; right: -16%; transform: translateY(-50%); width: 69%; max-width: 1050px; pointer-events: none;}
.hero-image{ display: block; width: 100%; height: auto;}
@media (min-width: 1475px) {
	.hero-image-wrap{ right: auto; left: calc(50% - 44px); width: 1017px; max-width: none;}
}
.hero-section .eyebrow{ color: #d02226;}
.hero-section .button-alt{ color: #112b3c;}

.hero-inner{ max-width: 50%;}
.hero-inner h1{ margin-top: 50px; margin-bottom: 20px;}
.hero-inner .hero-content{ font-size: 21px; line-height: 34px;}
.hero-inner .hero-buttons{ display: flex; gap: 30px; flex-wrap: wrap; margin-top: 50px;}
.intro-section{ padding: 90px 0 100px; color: var(--navy); background: var(--off-white);}
.intro-section .button-alt{ color: var(--navy);}
.intro-section .wrapper{ display: flex; gap: 80px; align-items: flex-start;}
.intro-left{ flex: 1;}
.intro-right{ flex: 1;}
.intro-stat{ font-family: 'Inter Tight', sans-serif; font-size: 200px; line-height: 1; font-weight: 800; margin-top: 20px;}
.intro-stat span{ font-size: 100px; font-weight: 100; color: #1c8fce;}
.intro-content{ font-size: 16px; line-height: 30px; margin-bottom: 50px;}
.intro-items{ padding: 40px; background: var(--red); color: #fff;}
.intro-item{ padding: 40px 0; border-bottom: 2px solid #fff;}
.intro-item:first-child{ padding-top: 0;}
.intro-item:last-child{ border-bottom: none; padding-bottom: 0;}
.intro-item h3{ font-family: 'Inter', sans-serif; font-size: 21px; line-height: 21px; font-weight: 500; margin-bottom: 10px;}
.intro-item-content{ font-size: 14px; line-height: 24px; color: #fff;}

.is-homepage .header{ background: linear-gradient(to right, #0f2c41, #0d2d47);}
.is-homepage .hero-section{ background: var(--off-white); border-bottom: 1px solid var(--light-gray);}
.is-homepage .hero-section::before{ content: ''; position: absolute; inset: 0; background: url('images/hero.png') repeat; background-size: 50% auto; background-attachment: fixed; opacity: .05; pointer-events: none; z-index: 0;}
.hero-section .wrapper{ position: relative; z-index: 1;}

.inside-hero{ background: url('images/hero.png') repeat, linear-gradient(to right, #0f2c41, #0d2d47); background-size: 50% auto, auto; background-attachment: fixed, scroll; border-bottom: 1px solid #274257; padding: 80px 0 100px; color: #fff;}
.inside-hero-inner{ max-width: 75%;}
.inside-hero .eyebrow{ margin-bottom: 20px;}
.inside-hero h1{ margin-top: 16px;}
.single .inside-hero{ text-align: center;}
.single .inside-hero-inner{ max-width: 100%;}

.page-thank-you .page-wrap{ display: flex; flex-direction: column; min-height: 100vh; min-height: 100svh;}
.page-thank-you main{ flex: 1 0 auto;}

.stats-container{ background: var(--navy); padding: 80px 0 100px; text-align: center; color: #fff;}
.stats-container h2{ color: #fff; margin-top: 16px;}
.stats-grid{ display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 60px;}
.stat-item{ padding: 40px;}
.stat-item:nth-child(2){ border-left: 1px solid #274257; border-right: 1px solid #274257;}
.stat-number{ display: block; font-family: 'Inter Tight', sans-serif; font-size: 80px; line-height: 1; font-weight: 800; color: #fff;}
.stat-label{ display: block; font-size: 21px; line-height: 26px; font-weight: 500; color: #fff; margin-top: 12px;}
.stat-description{ display: block; font-size: 14px; line-height: 24px; color: var(--gray); margin-top: 4px;}

.features-container{ background: var(--off-white);}
.features-header{ max-width: 50%; margin-bottom: 60px;}
.features-header h2{ margin-top: 16px;}
.features-intro{ margin-top: 16px; font-size: 16px; line-height: 28px;}
.features-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.feature-item{ background: #fff; border-radius: 20px; overflow: hidden;}
.feature-image{ padding-bottom: 56.25%; background-size: cover; background-position: center; background-repeat: no-repeat;}
.feature-text{ padding: 30px;}
.feature-text h3{ font-size: 21px; line-height: 26px; font-weight: 500;}
.feature-text p{ font-size: 14px; line-height: 24px; margin-top: 10px;}
.feature-text .button{ margin-top: 24px;}

.accordion-container .wrapper{ max-width: 860px; text-align: center;}
.accordion-container h2{ margin-top: 16px;}
.accordion-container .content{ text-align: center; margin-top: 16px; font-size: 16px; line-height: 28px;}
.accordion{ border-top: 1px solid var(--light-gray); margin-top: 50px; text-align: left;}
.accordion-item{ border-bottom: 1px solid var(--light-gray);}
.accordion-trigger{ display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; background: none; border: none; padding: 22px 0; text-align: left; font-family: 'Inter', sans-serif; font-size: 21px; line-height: 26px; font-weight: 500; color: var(--navy); cursor: pointer;}
.accordion-trigger:hover{ background: none; color: var(--cyan);}
.accordion-trigger::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f067'; font-size: 14px; color: var(--cyan); flex-shrink: 0; transition: transform .3s ease; -webkit-font-smoothing: antialiased;}
.accordion-item.is-open > .accordion-trigger{ color: var(--cyan);}
.accordion-item.is-open > .accordion-trigger::after{ transform: rotate(45deg);}
.accordion-content{ display: none; padding: 4px 0 28px; font-size: 15px; line-height: 26px; color: var(--navy);}
.accordion-container > .wrapper > .button{ margin-top: 50px;}

.overlay-container{ position: relative; overflow: hidden; text-align: center; color: #fff; padding: 120px 0;}
.overlay-bg{ position: absolute; top: -60px; bottom: -60px; left: 0; right: 0; background-size: cover; background-position: center; background-repeat: no-repeat; filter: grayscale(1);}
.overlay-tint{ position: absolute; inset: 0; background: rgba(28,143,206,.85); z-index: 1;}
.overlay-container .wrapper{ position: relative; z-index: 2; max-width: 860px;}
.overlay-container .eyebrow{ color: var(--navy);}
.overlay-container h2{ color: #fff; margin-top: 20px;}
.overlay-container .content{ margin-top: 20px; font-size: 17px; line-height: 30px;}
.overlay-container .button{ margin-top: 30px; background-color: var(--navy); border-color: var(--navy);}
.overlay-container .button:hover, .overlay-container .button:focus{ background-color: #0d2035; border-color: #0d2035;}

.testimonials-container{ background: var(--off-white); text-align: center;}
.testimonials-container .wrapper::before{ display: block; font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f10d'; font-style: normal; font-size: 36px; line-height: 1; color: var(--cyan); opacity: .4; margin-bottom: 24px; -webkit-font-smoothing: antialiased;}
.testimonials-container .eyebrow{ margin-bottom: 0;}
.testimonials-container h2{ font-size: 30px; line-height: 36px; margin-top: 5px; margin-bottom: 60px;}
.testimonials-grid{ max-width: 860px; margin: 0 auto;}
.testimonials-grid .slick-list{ overflow: hidden;}
.testimonial-item{ padding: 0 20px; text-align: center; outline: none;}
.testimonial-item blockquote{ font-size: 26px; line-height: 42px; font-weight: 300; font-style: italic; color: var(--navy);}
.testimonial-author{ margin-top: 40px; text-align: center;}
.testimonial-author img{ width: 56px; height: 56px; border-radius: 50%; object-fit: cover; display: block; margin: 0 auto 14px;}
.testimonial-meta{ text-align: center;}
.testimonial-name{ display: block; font-size: 21px; line-height: 26px; font-weight: 500; color: var(--navy);}
.testimonial-title{ display: block; font-size: 14px; line-height: 1.4; color: #888; margin-top: 4px;}
.testimonial-company{ display: block; font-size: 14px; line-height: 1.4; color: #888; margin-top: 2px;}
.testimonials-container .slick-dots{ list-style: none; display: flex; justify-content: center; gap: 8px; margin-top: 50px; padding: 0;}
.testimonials-container .slick-dots li{ line-height: 0;}
.testimonials-container .slick-dots li button{ font-size: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--gray); border: none; padding: 0; cursor: pointer; display: block;}
.testimonials-container .slick-dots li.slick-active button{ background: var(--red);}
.testimonials-container .slick-dots li button:focus-visible{ outline: 2px solid var(--cyan); outline-offset: 2px;}

.logos-container{ text-align: center; overflow: hidden; padding: 100px 0;}
.logos-container h2{ margin-top: 16px;}
.logos-grid{ margin-top: 50px;}
.logo-item{ display: flex !important; align-items: center; justify-content: center; height: 80px; padding: 0 40px;}
.logo-item img{ max-height: 60px; max-width: 160px; width: auto; height: auto; object-fit: contain;}

.page-section.form-embed-section{ background: linear-gradient(to right, #0f2c41, #0d2d47); color: #fff;}
.page-section.form-embed-section .wrapper{ max-width: 860px; text-align: center;}
.page-section.form-embed-section h2{ color: #fff; margin-bottom: 16px;}
.page-section.form-embed-section .form-embed-intro{ font-size: 16px; line-height: 28px; opacity: .8;}
.page-section.form-embed-section .gform_wrapper{ background: rgba(255,255,255,.05); border-radius: 20px; padding: 50px; margin-top: 50px; text-align: left;}
.cta-section .cta-right .gform_wrapper .gform_required_legend,
.page-section.form-embed-section .gform_wrapper .gform_required_legend{ display: none;}
.cta-section .cta-right .gform_wrapper .gform_fields,
.page-section.form-embed-section .gform_wrapper .gform_fields{ --gf-form-gap-y: 32px; row-gap: 32px;}
.cta-section .cta-right .gform_wrapper .gfield_required,
.page-section.form-embed-section .gform_wrapper .gfield_required{ color: #ff6b6e; margin-left: 3px;}

/* Text inputs */
.cta-section .cta-right .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]),
.page-section.form-embed-section .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]),
.cta-section .cta-right .gform_wrapper textarea,
.page-section.form-embed-section .gform_wrapper textarea,
.cta-section .cta-right .gform_wrapper select,
.page-section.form-embed-section .gform_wrapper select{ background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.25); border-radius: 12px; padding: 12px 18px; font-size: 16px; line-height: 26px; color: #fff; width: 100%; transition: border-color .2s ease;}
.cta-section .cta-right .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]):focus,
.page-section.form-embed-section .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]):focus,
.cta-section .cta-right .gform_wrapper select:focus,
.page-section.form-embed-section .gform_wrapper select:focus{ outline: none; border-color: var(--cyan);}
.cta-section .cta-right .gform_wrapper input::placeholder,
.page-section.form-embed-section .gform_wrapper input::placeholder,
.cta-section .cta-right .gform_wrapper textarea::placeholder,
.page-section.form-embed-section .gform_wrapper textarea::placeholder{ color: transparent;}
.cta-section .cta-right .gform_wrapper textarea,
.page-section.form-embed-section .gform_wrapper textarea{ padding: 16px 18px; min-height: 150px;}
.cta-section .cta-right .gform_wrapper textarea:focus,
.page-section.form-embed-section .gform_wrapper textarea:focus{ outline: none; border-color: var(--cyan);}
.cta-section .cta-right .gform_wrapper select,
.page-section.form-embed-section .gform_wrapper select{ background-image: linear-gradient(45deg, transparent 50%, rgba(255,255,255,.6) 50%), linear-gradient(135deg, rgba(255,255,255,.6) 50%, transparent 50%); background-position: calc(100% - 23px) center, calc(100% - 18px) center; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; padding-right: 44px; cursor: pointer;}
.cta-section .cta-right .gform_wrapper select option,
.page-section.form-embed-section .gform_wrapper select option{ color: var(--navy); background: #fff;}

/* Labels */
.cta-section .cta-right .gform_wrapper .hidden_label > .gfield_label,
.page-section.form-embed-section .gform_wrapper .hidden_label > .gfield_label{ position: static; width: auto; height: auto; border: 0; padding: 0; margin: 0 0 8px; clip: auto; clip-path: none; overflow: visible;}
.cta-section .cta-right .gform_wrapper .hidden_label > .gfield_label_before_complex,
.page-section.form-embed-section .gform_wrapper .hidden_label > .gfield_label_before_complex{ margin-bottom: 18px;}
.cta-section .cta-right .gform_wrapper .hidden_sub_label,
.page-section.form-embed-section .gform_wrapper .hidden_sub_label{ position: static; width: auto; height: auto; border: 0; padding: 0; margin: 0; clip: auto; clip-path: none; overflow: visible;}
.cta-section .cta-right .gform_wrapper .gfield_label,
.page-section.form-embed-section .gform_wrapper .gfield_label{ display: block; color: #fff; font-family: 'Inter', sans-serif; font-size: 18px; line-height: 26px; font-weight: 600; text-transform: none; letter-spacing: 0; margin-bottom: 8px;}
.cta-section .cta-right .gform_wrapper .gform-field-label--type-sub,
.page-section.form-embed-section .gform_wrapper .gform-field-label--type-sub{ display: block; color: rgba(255,255,255,.55); font-family: 'Inter', sans-serif; font-size: 14px; line-height: 20px; font-weight: 400; text-transform: none; letter-spacing: 0; margin: 0;}
.cta-section .cta-right .gform_wrapper .gfield_label_before_complex,
.page-section.form-embed-section .gform_wrapper .gfield_label_before_complex{ margin-bottom: 18px;}
.cta-section .cta-right .gform_wrapper .ginput_complex,
.page-section.form-embed-section .gform_wrapper .ginput_complex{ row-gap: 16px;}
.cta-section .cta-right .gform_wrapper .ginput_complex > span,
.page-section.form-embed-section .gform_wrapper .ginput_complex > span{ display: flex; flex-direction: column;}
.cta-section .cta-right .gform_wrapper .ginput_complex .gform-field-label--type-sub,
.page-section.form-embed-section .gform_wrapper .ginput_complex .gform-field-label--type-sub{ order: -1;}
.cta-section .cta-right .gform_wrapper .gfield_description,
.page-section.form-embed-section .gform_wrapper .gfield_description,
.cta-section .cta-right .gform_wrapper .gform_fileupload_rules,
.page-section.form-embed-section .gform_wrapper .gform_fileupload_rules{ font-size: 14px; line-height: 22px; color: rgba(255,255,255,.65); padding: 0; margin-top: 10px;}
.cta-section .cta-right .gform_wrapper .gfield_description:not(:last-child),
.page-section.form-embed-section .gform_wrapper .gfield_description:not(:last-child){ margin: 0 0 14px;}

/* Section dividers */
.cta-section .cta-right .gform_wrapper .gsection,
.page-section.form-embed-section .gform_wrapper .gsection{ border: none; padding: 20px 0 0; margin: 0;}
.cta-section .cta-right .gform_wrapper .gform_fields > .gsection:first-child,
.page-section.form-embed-section .gform_wrapper .gform_fields > .gsection:first-child{ padding-top: 0;}
.cta-section .cta-right .gform_wrapper .gsection_title,
.page-section.form-embed-section .gform_wrapper .gsection_title{ font-family: 'Inter', sans-serif; font-size: 24px; line-height: 32px; font-weight: 600; color: #fff; text-transform: none; letter-spacing: 0; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.15);}

/* Checkboxes & radios */
.cta-section .cta-right .gform_wrapper .gfield_checkbox,
.page-section.form-embed-section .gform_wrapper .gfield_checkbox,
.cta-section .cta-right .gform_wrapper .gfield_radio,
.page-section.form-embed-section .gform_wrapper .gfield_radio{ display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px;}
.cta-section .cta-right .gform_wrapper .gchoice,
.page-section.form-embed-section .gform_wrapper .gchoice{ display: flex; align-items: center; gap: 12px; margin: 0; padding: 13px 16px; border: 1px solid rgba(255,255,255,.14); border-radius: 10px; background: rgba(255,255,255,.03); transition: border-color .2s ease, background-color .2s ease;}
.cta-section .cta-right .gform_wrapper .gchoice:hover,
.page-section.form-embed-section .gform_wrapper .gchoice:hover{ border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.07);}
.cta-section .cta-right .gform_wrapper .gchoice:has(input:checked),
.page-section.form-embed-section .gform_wrapper .gchoice:has(input:checked){ border-color: var(--cyan); background: rgba(28,143,206,.15);}
.cta-section .cta-right .gform_wrapper .gchoice input[type="checkbox"],
.page-section.form-embed-section .gform_wrapper .gchoice input[type="checkbox"],
.cta-section .cta-right .gform_wrapper .gchoice input[type="radio"],
.page-section.form-embed-section .gform_wrapper .gchoice input[type="radio"]{ flex: 0 0 20px; width: 20px; height: 20px; margin: 0; padding: 0; border: 1px solid rgba(255,255,255,.45); border-radius: 5px; background: rgba(255,255,255,.06); cursor: pointer; position: relative; transition: border-color .2s ease, background-color .2s ease;}
.cta-section .cta-right .gform_wrapper .gchoice input[type="radio"],
.page-section.form-embed-section .gform_wrapper .gchoice input[type="radio"]{ border-radius: 50%;}
.cta-section .cta-right .gform_wrapper .gchoice input:checked,
.page-section.form-embed-section .gform_wrapper .gchoice input:checked{ background: var(--cyan); border-color: var(--cyan);}
.cta-section .cta-right .gform_wrapper .gchoice input[type="checkbox"]:checked::after,
.page-section.form-embed-section .gform_wrapper .gchoice input[type="checkbox"]:checked::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f00c'; font-size: 11px; color: #fff; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; -webkit-font-smoothing: antialiased;}
.cta-section .cta-right .gform_wrapper .gchoice input[type="radio"]:checked::after,
.page-section.form-embed-section .gform_wrapper .gchoice input[type="radio"]:checked::after{ content: ''; position: absolute; top: 50%; left: 50%; width: 8px; height: 8px; margin: -4px 0 0 -4px; border-radius: 50%; background: #fff;}
.cta-section .cta-right .gform_wrapper .gchoice input:focus-visible,
.page-section.form-embed-section .gform_wrapper .gchoice input:focus-visible{ outline: 2px solid var(--cyan); outline-offset: 2px;}
.cta-section .cta-right .gform_wrapper .gchoice label,
.page-section.form-embed-section .gform_wrapper .gchoice label{ flex: 1; margin: 0; font-size: 15px; line-height: 22px; font-weight: 400; color: rgba(255,255,255,.92); cursor: pointer;}
.cta-section .cta-right .gform_wrapper .gfield--type-multi_choice .gfield_label,
.page-section.form-embed-section .gform_wrapper .gfield--type-multi_choice .gfield_label,
.cta-section .cta-right .gform_wrapper .gfield--type-checkbox .gfield_label,
.page-section.form-embed-section .gform_wrapper .gfield--type-checkbox .gfield_label,
.cta-section .cta-right .gform_wrapper .gfield--type-radio .gfield_label,
.page-section.form-embed-section .gform_wrapper .gfield--type-radio .gfield_label{ margin-bottom: 16px;}

/* File upload */
.cta-section .cta-right .gform_wrapper .gform_drop_area,
.page-section.form-embed-section .gform_wrapper .gform_drop_area{ border: 1px dashed rgba(255,255,255,.28); border-radius: 12px; background: rgba(255,255,255,.03); padding: 28px 20px;}
.cta-section .cta-right .gform_wrapper .gform_drop_instructions,
.page-section.form-embed-section .gform_wrapper .gform_drop_instructions{ color: rgba(255,255,255,.65); font-size: 14px; display: block; margin-bottom: 12px;}
.cta-section .cta-right .gform_wrapper input[type="file"],
.page-section.form-embed-section .gform_wrapper input[type="file"]{ display: block; width: 100%; padding: 22px 20px; border: 1px dashed rgba(255,255,255,.28); border-radius: 12px; background: rgba(255,255,255,.03); color: rgba(255,255,255,.65); font-family: 'Inter', sans-serif; font-size: 14px; line-height: 22px; cursor: pointer;}
.cta-section .cta-right .gform_wrapper input[type="file"]:focus-visible,
.page-section.form-embed-section .gform_wrapper input[type="file"]:focus-visible{ outline: 2px solid var(--cyan); outline-offset: 2px;}
.cta-section .cta-right .gform_wrapper input[type="file"]::file-selector-button,
.page-section.form-embed-section .gform_wrapper input[type="file"]::file-selector-button{ -webkit-appearance: none; appearance: none; margin: 0 14px 0 0; padding: 11px 26px; border: 1px solid var(--cyan); border-radius: 100px; background: var(--cyan); color: #fff; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 600; letter-spacing: .025em; cursor: pointer; transition: background-color .2s ease, border-color .2s ease;}
.cta-section .cta-right .gform_wrapper input[type="file"]::file-selector-button:hover,
.page-section.form-embed-section .gform_wrapper input[type="file"]::file-selector-button:hover{ background: #0e76ac; border-color: #0e76ac;}
.cta-section .cta-right .gform_wrapper input[type="file"]::-webkit-file-upload-button,
.page-section.form-embed-section .gform_wrapper input[type="file"]::-webkit-file-upload-button{ -webkit-appearance: none; appearance: none; margin: 0 14px 0 0; padding: 11px 26px; border: 1px solid var(--cyan); border-radius: 100px; background: var(--cyan); color: #fff; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 600; letter-spacing: .025em; cursor: pointer;}

/* Validation */
.cta-section .cta-right .gform_wrapper .gform_validation_errors,
.page-section.form-embed-section .gform_wrapper .gform_validation_errors{ background: rgba(208,34,38,.15); border: 1px solid rgba(208,34,38,.55); border-radius: 12px; box-shadow: none; padding: 18px 22px; margin: 0 0 30px;}
.cta-section .cta-right .gform_wrapper .gform_submission_error,
.page-section.form-embed-section .gform_wrapper .gform_submission_error{ color: #fff; font-size: 18px; line-height: 26px;}
.cta-section .cta-right .gform_wrapper .gfield_validation_message,
.page-section.form-embed-section .gform_wrapper .gfield_validation_message,
.cta-section .cta-right .gform_wrapper .validation_message,
.page-section.form-embed-section .gform_wrapper .validation_message{ background: rgba(208,34,38,.15); border: none; border-left: 3px solid #ff6b6e; border-radius: 6px; color: #ffd9da; font-size: 14px; padding: 10px 14px; margin-bottom: 12px;}
.cta-section .cta-right .gform_wrapper .gfield_error input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]),
.page-section.form-embed-section .gform_wrapper .gfield_error input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]):not([type="file"]),
.cta-section .cta-right .gform_wrapper .gfield_error textarea,
.page-section.form-embed-section .gform_wrapper .gfield_error textarea,
.cta-section .cta-right .gform_wrapper .gfield_error select,
.page-section.form-embed-section .gform_wrapper .gfield_error select{ border-color: #ff6b6e;}

/* Footer */
.cta-section .cta-right .gform_wrapper .gform_footer,
.page-section.form-embed-section .gform_wrapper .gform_footer,
.cta-section .cta-right .gform_wrapper .gform_page_footer,
.page-section.form-embed-section .gform_wrapper .gform_page_footer{ display: flex; justify-content: flex-end; padding: 30px 0 0; margin-top: 10px; border-top: 1px solid rgba(255,255,255,.12);}
.cta-section .cta-right .gform_wrapper .gform_button,
.page-section.form-embed-section .gform_wrapper .gform_button{ background: none !important; color: #fff !important; border: 1px solid #1c8fce !important; border-radius: 100px; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 600; letter-spacing: .025em; padding: 15px 40px; cursor: pointer; width: auto;}
.cta-section .cta-right .gform_wrapper .gform_button:hover,
.page-section.form-embed-section .gform_wrapper .gform_button:hover,
.cta-section .cta-right .gform_wrapper .gform_button:focus,
.page-section.form-embed-section .gform_wrapper .gform_button:focus{ background-color: #0e76ac !important; border-color: #0e76ac !important;}

.callouts{ overflow-x: hidden;}
.single-callout + .single-callout{ margin-top: 80px;}
.single-callout .wrapper{ display: flex; gap: 60px; align-items: stretch;}
.single-callout:nth-child(even) .wrapper{ flex-direction: row-reverse;}

.cs-columns-section{ background: #f5f7f9; padding: 100px 0;}
.cs-columns-section h2{ font-size: 42px; line-height: 46px;}
.cs-columns-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; margin-top: 60px;}
.cs-column{ background: #fff; border: 1px solid #e4e7eb; border-radius: 20px; padding: 40px 30px;}
.cs-column .eyebrow{ margin-bottom: 40px;}
.cs-column-items{ display: flex; flex-direction: column;}
.cs-column-item{ padding-bottom: 40px; margin-bottom: 40px; border-bottom: 1px solid var(--red);}
.cs-column-item:last-child{ border-bottom: none; padding-bottom: 0; margin-bottom: 0;}
.cs-column-item h3{ font-size: 21px; line-height: 26px; font-weight: 500; margin-bottom: 5px;}
.cs-column-item-content{ font-size: 14px; line-height: 24px;}
.cs-column-item{}

.cs-basic-content-section .wrapper{}
.cs-basic-content{}
.basic-container .wrapper{ max-width: 860px;}
.basic-container h2{ margin-bottom: 20px;}
.basic-container .content h2,
.post-content h2{ margin-top: 40px; font-size: 36px; line-height: 42px;}
.basic-container .content h3,
.post-content h3{ font-size: 30px; line-height: 36px;}
.basic-container .content h4,
.post-content h4{ font-size: 24px; line-height: 30px;}
.basic-container .content h5,
.post-content h5{ font-size: 21px; line-height: 28px;}
.basic-container .content h6,
.post-content h6{ font-size: 18px; line-height: 26px;}
.basic-container .button{ margin-top: 30px;}

.post-content-section .post-content-wrap{ max-width: 860px;}
.post-content-section .post-content{ font-size: 16px; line-height: 30px;}
.post-content-section .button{ margin-top: 40px;}

.cs-image-section{ padding: 0;}
.cs-full-image{ margin: 0;}
.cs-full-image img{ width: 100%; max-width: 100%;}
.cs-full-image figcaption{ text-align: center; padding: 12px; font-size: .875rem;}

.cs-video-section{}

.resources-section{ background: #f5f7f9; padding: 100px 0;}
.resources-header{ display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 60px;}
.resources-header-left{ max-width: 50%;}
.resources-header-left h2{ margin-top: 30px;}
.resources-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.resource-item{ background: #fff; border: 1px solid var(--light-gray); border-radius: 20px; padding: 40px; display: flex; flex-direction: column;}
.resource-header{ display: flex; align-items: center; gap: 16px; margin-bottom: 16px;}
.resource-number{ font-family: 'Inter Tight', sans-serif; font-size: 64px; line-height: 1; font-weight: 800; color: #e4e7eb; flex-shrink: 0;}
.resource-headline{ font-size: 21px; line-height: 28px; font-weight: 500; margin-top: 0;}
.resource-headline a{ color: var(--navy); text-decoration: none;}
.resource-headline a:hover, .resource-headline a:focus{ color: var(--cyan);}
.resource-excerpt{ font-size: 14px; line-height: 24px; color: #666; margin-top: 12px; flex: 1;}
.resource-excerpt p{ margin-top: 0;}
.resource-read-more{ font-size: 13px; font-weight: 600; color: var(--cyan); text-decoration: none; margin-top: 24px; display: inline-flex; align-items: center; gap: 6px;}
.resource-read-more::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f178'; font-size: 11px; -webkit-font-smoothing: antialiased; transition: transform .2s ease;}
.resource-read-more:hover, .resource-read-more:focus{ color: #0e76ac;}
.resource-read-more:hover::after, .resource-read-more:focus::after{ transform: translateX(4px);}
.resources-section .navigation{ margin-top: 60px;}

.callout-section{ padding: 80px 0;}
.callout-section .wrapper{ display: flex; gap: 60px; align-items: stretch;}
.callout-content{ flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 50px 0 60px;}
.callout-content .eyebrow{ margin-bottom: 30px;}
.callout-text{ margin-top: 20px; margin-bottom: 50px;}
.callout-text a{ text-decoration: none; font-weight: 600;}
.callout-text ul{ list-style: none; margin: 15px 0 0; padding: 0;}
.callout-text ul li{ padding-left: 28px; position: relative; margin-bottom: 10px;}
.callout-text ul li::before{ font-family: 'Font Awesome 7 Free'; font-weight: 400; content: '\f058'; color: var(--red); position: absolute; left: 0; top: 3px; font-size: 14px; -webkit-font-smoothing: antialiased;}
.callout-image{ flex: 1; background-size: cover; background-position: center; min-height: 400px; border-radius: 20px;}

.solutions-section{ background: #f5f7f9; padding: 100px 0;}
.solutions-section h2{ font-size: 36px; line-height: 42px;}
.solutions-header{ display: flex; gap: 20px; align-items: flex-start; margin-top: 30px;}
.solutions-header h2{ flex: 1;}
.solutions-intro{ flex: 1; font-size: 16px; line-height: 30px;}
/* Solutions carousel — left edge aligns to .wrapper, bleeds off the right */
.solutions-carousel{ margin-top: 24px; margin-left: max(2.5%, calc((100% - 1400px) / 2));}
.solutions-carousel .slick-list{ overflow: hidden;}
.solutions-carousel .slick-track{ display: flex; align-items: stretch;}
.solutions-carousel .slick-slide{ height: auto; padding-right: 20px;}
.solution-item{ height: 100%; background: #fff; border: 1px solid var(--light-gray); border-radius: 20px; padding: 40px 40px 120px; position: relative; overflow: hidden;}
.solution-item .eyebrow{ font-size: 13px; line-height: 1;}
.solution-item h3{ font-size: 24px; line-height: 30px; font-weight: 500; margin-top: 20px; margin-bottom: 5px;}
.solution-item-content{ font-size: 14px; line-height: 24px;}
.solution-item::after{ font-family: 'Font Awesome 7 Free'; font-weight: 900; content: '\f178'; font-size: 18px; color: #112b3c; position: absolute; bottom: 40px; right: 40px; width: 60px; height: 60px; line-height: 60px; text-align: center; border-radius: 50%; background: #e9e9ea; pointer-events: none; z-index: 2; -webkit-font-smoothing: antialiased; transition: transform .5s ease;}
.solution-item:hover::after{ transform: translateX(12px);}
.solution-item-link{ position: absolute; inset: 0; border-radius: 20px; z-index: 1;}
.solutions-dots .slick-dots{ list-style: none; display: flex; gap: 10px; margin: 40px 0 0; padding: 0; justify-content: flex-end;}
.solutions-dots .slick-dots li{ line-height: 0;}
.solutions-dots .slick-dots li button{ font-size: 0; width: 11px; height: 11px; border-radius: 50%; background: var(--gray); border: none; padding: 0; cursor: pointer; display: block;}
.solutions-dots .slick-dots li.slick-active button{ background: var(--red);}
.solutions-dots .slick-dots li button:focus-visible{ outline: 2px solid var(--cyan); outline-offset: 2px;}

.navigation{ padding: 0; text-align: center;}
.navigation ul{ list-style: none; margin: 0; padding: 0;}
.navigation li{ display: inline-block;}
.navigation li a, .navigation li span{ display: inline-block; padding: 6px 12px; text-decoration: none; color: #fff; background-color: #666; cursor: pointer;}
.navigation li a:hover, .navigation li span.current{ background-color: #333;}
.navigation li span.dots{ background: none; color: #666;}

.cta-section{ background: linear-gradient(to right, #0f2c41, #0d2d47); color: #fff; padding: 100px 0;}
.cta-section .wrapper{ display: flex; gap: 80px; align-items: flex-start;}
.cta-section .wrapper::after{ content: none;}
.cta-left{ flex: 1; padding-top: 40px;}
.cta-right{ flex: 1; background: rgba(255,255,255,.05); border-radius: 20px; padding: 40px;}
.cta-section h2{ font-size: 60px; line-height: 60px; margin-top: 30px;}
.cta-section h2 span{ font-weight: 700; color: #c0c1c3;}
.cta-intro{ font-size: 16px; line-height: 30px; margin-top: 10px;}


.load-more-wrap{ text-align: center; margin-top: 30px;}
.load-more-btn{ padding: 12px 30px; cursor: pointer;}
.load-more-btn:disabled{ opacity: 0.6; cursor: default;}

.search-results .wrapper, .error404 .wrapper{ padding: 60px 0;}
.search-results .page-title, .error404 .page-title{ margin-bottom: 30px;}
.search-results article{ margin-top: 30px; padding-top: 30px; border-top: 1px solid #eee;}
.search-results article:first-child{ border-top: 0; padding-top: 0; margin-top: 0;}
.search-results .entry{ margin-top: 10px;}
.search-form{ display: flex; gap: 8px; margin-top: 20px;}
.search-input{ flex: 1; padding: 10px 14px; border: 1px solid #ccc; border-radius: 3px; font-size: 1rem;}
.search-submit{ padding: 10px 20px; cursor: pointer;}

.footer{ background: linear-gradient(to right, #0f2c41, #0d2d47); color: #fff;}
.footer a{ color: #fff;}
.footer a:hover, .footer a:focus{ color: #1c8fce;}
.footer-main{}
.footer-main .container{ align-items: flex-start; border-top: 1px solid #274257; padding-top: 40px; padding-bottom: 40px;}
.footer{ font-size: 14px;}
.footer-main p{ margin-top: 0;}
.footer-left{ display: flex; flex-direction: column; gap: 0;}
.footer-left .logo{ max-width: 200px; margin-bottom: 30px;}
.footer-addresses{ display: flex; gap: 40px;}
.footer-address-headline{ font-family: 'IBM Plex Mono', monospace; font-size: 12px; color: #1c8fce; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px;}
.footer-address{ line-height: 1.6;}
.footer-left .footer-phone{ margin-top: 10px;}
.footer-phone a{ text-decoration: none;}
.footer-right{ display: flex; gap: 60px; flex: 0 0 50%; margin-left: auto;}
.footer-nav-heading{ font-family: 'IBM Plex Mono', monospace; font-size: 13px; font-weight: 400; color: #1c8fce; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 16px;}
.footer-solutions ul{ columns: 2; column-gap: 40px;}
.footer-solutions ul li{ break-inside: avoid; margin-bottom: 8px;}
.footer-quick-links ul li{ margin-bottom: 8px;}
.footer-nav a{ text-decoration: none;}
.sub-footer{}
.sub-footer .container{ align-items: center; justify-content: space-between; border-top: 1px solid #274257; padding-top: 20px; padding-bottom: 60px;}
.sub-footer{ font-size: 12px; color: #a1a7ab;}
.sub-footer ul{ display: flex; gap: 0; list-style: none;}
.sub-footer ul li{ float: none;}
.sub-footer ul li::before{ content: '|'; color: #a1a7ab; padding: 0 10px;}
.sub-footer ul li:first-child::before{ display: none;}
.sub-footer a{ text-decoration: none; color: #a1a7ab;}
.sub-footer a:hover, .sub-footer a:focus{ color: #1c8fce;}
.copyright{ color: #a1a7ab;}

.intro-item{ transition: opacity 1.4s ease, transform 1.4s ease;}
body.animate-ready .intro-item{ opacity: 0; transform: translateX(40px);}
body.animate-ready .callout-content{ opacity: 0; transform: translateX(-50px);}
body.animate-ready .callout-image{ opacity: 0; transform: translateX(50px);}
body.animate-ready .single-callout:nth-child(even) .callout-content{ transform: translateX(50px);}
body.animate-ready .single-callout:nth-child(even) .callout-image{ transform: translateX(-50px);}
.intro-item.is-visible{ opacity: 1 !important; transform: translateX(0) !important;}
.callout-content.is-visible,
.callout-image.is-visible{ opacity: 1 !important; transform: translateX(0) !important; transition: opacity 1.4s ease, transform 1.4s ease;}

.video-wrapper{ position: relative; padding-bottom: 56.25%; height: 0; border-radius: 20px; overflow: hidden;}
.video-wrapper iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

.error404 .content{ padding: 60px 0 100px; text-align: center;}


@media (max-width: 900px) {

	/* — Header — */
	.nav{ display: none;}
	.nav-toggle{ display: flex;}
	.mobile-overlay{ display: block;}
	.header{ padding: 18px 0;}
	.header-btn{ display: none;}

	/* — Global type — */
	h2{ font-size: 34px; line-height: 40px;}
	p{ margin-top: .75em;}

	/* — Page section base — */
	.page-section{ padding: 60px 0;}

	/* — Inside hero — */
	.inside-hero{ padding: 50px 0 60px;}
	.inside-hero-inner{ max-width: 100%;}

	/* — Hero — */
	.hero-section{ padding: 50px 0 60px;}
	.hero-inner{ max-width: 100%;}
	.hero-section h1{ font-size: 42px; line-height: 46px;}
	.hero-inner h1{ margin-top: 30px;}
	.hero-inner .hero-content{ font-size: 16px; line-height: 26px;}
	.hero-inner .hero-buttons{ flex-direction: column; align-items: flex-start; gap: 14px; margin-top: 30px;}
	.hero-image-wrap{ display: none;}

	/* — Intro — */
	.intro-section{ padding: 45px 0 50px;}
	.intro-section .wrapper{ flex-direction: column; gap: 10px;}
	.intro-stat{ font-size: 110px; margin-top: 10px;}
	.intro-stat span{ font-size: 55px;}
	.intro-content{ margin-bottom: 30px;}
	.intro-items{ padding: 24px;}

	/* — Basic content — */
	.basic-container .wrapper{ max-width: 100%;}

	/* — Overlay — */
	.overlay-container{ padding: 60px 0;}
	.overlay-bg{ transform: none !important;}

	/* — Stats — */
	.stats-container{ padding: 60px 0 80px;}
	.stats-grid{ grid-template-columns: 1fr;}
	.stat-item:nth-child(2){ border-left: none; border-right: none; border-top: 1px solid #274257; border-bottom: 1px solid #274257;}
	.stat-number{ font-size: 56px;}

	/* — Testimonials — */
	.testimonials-container .wrapper::before{ font-size: 28px;}
	.testimonials-container h2{ margin-bottom: 40px;}
	.testimonial-item blockquote{ font-size: 17px; line-height: 28px;}
	.testimonial-author{ margin-top: 24px;}

	/* — Logos — */
	.logos-container{ padding: 60px 0;}
	.logos-grid{ margin-top: 30px;}

	/* — Features — */
	.features-header{ max-width: 100%;}
	.features-grid{ grid-template-columns: 1fr; gap: 20px;}

	/* — Accordion — */
	.accordion{ margin-top: 30px;}
	.accordion-trigger{ font-size: 17px; line-height: 24px; padding: 18px 0;}

	/* — CS Columns — */
	.cs-columns-section{ padding: 60px 0;}
	.cs-columns-grid{ grid-template-columns: 1fr; margin-top: 30px;}

	/* — Form embed — */
	.page-section.form-embed-section .gform_wrapper{ padding: 24px; border-radius: 12px;}
	.cta-section .cta-right .gform_wrapper .gform_fields,
	.page-section.form-embed-section .gform_wrapper .gform_fields{ --gf-form-gap-y: 26px; row-gap: 26px;}
	.cta-section .cta-right .gform_wrapper .gfield_checkbox,
	.page-section.form-embed-section .gform_wrapper .gfield_checkbox,
	.cta-section .cta-right .gform_wrapper .gfield_radio,
	.page-section.form-embed-section .gform_wrapper .gfield_radio{ grid-template-columns: 1fr; gap: 10px;}
	.cta-section .cta-right .gform_wrapper .gfield_label,
	.page-section.form-embed-section .gform_wrapper .gfield_label{ font-size: 16px; line-height: 24px;}
	.cta-section .cta-right .gform_wrapper .gsection_title,
	.page-section.form-embed-section .gform_wrapper .gsection_title{ font-size: 20px; line-height: 28px;}
	.cta-section .cta-right .gform_wrapper .gform_footer,
	.page-section.form-embed-section .gform_wrapper .gform_footer,
	.cta-section .cta-right .gform_wrapper .gform_page_footer,
	.page-section.form-embed-section .gform_wrapper .gform_page_footer{ justify-content: stretch; padding-top: 24px;}
	.cta-section .cta-right .gform_wrapper .gform_button,
	.page-section.form-embed-section .gform_wrapper .gform_button{ width: 100%; justify-content: center;}

	/* — Callout — */
	.callout-section{ padding: 60px 0;}
	.callout-section .wrapper{ flex-direction: column; gap: 0;}
	.callout-content{ padding: 0 0 40px; justify-content: flex-start;}
	.callout-image{ flex: none; min-height: 260px; border-radius: 12px;}
	.single-callout + .single-callout{ margin-top: 50px;}

	/* — Solutions — */
	.solutions-section{ padding: 60px 0;}
	.solutions-header{ flex-direction: column;}
	.solutions-carousel{ margin-top: 20px; margin-left: 2.5%; margin-right: 2.5%;}
	.solutions-carousel .slick-slide{ padding-right: 0;}
	.solution-item{ padding: 30px 30px 100px;}
	.solution-item::after{ bottom: 30px; right: 30px;}
	.solutions-dots .slick-dots{ margin-top: 30px;}

	/* — Resources — */
	.resources-section{ padding: 60px 0;}
	.resources-header{ flex-direction: column; align-items: flex-start; gap: 20px; margin-bottom: 40px;}
	.resources-header-left{ max-width: 100%;}
	.resources-grid{ grid-template-columns: 1fr; gap: 24px;}

	/* — CTA — */
	.cta-section{ padding: 60px 0;}
	.cta-section .wrapper{ flex-direction: column;}
	.cta-left{ flex: none; width: 100%; padding-top: 0;}
	.cta-right{ flex: none; width: 100%;}
	.cta-section h2{ font-size: 40px; line-height: 44px;}

	/* — Footer — */
	.footer-main .container{ flex-direction: column; gap: 40px;}
	.footer-right{ flex: none; width: 100%; margin-left: 0; flex-direction: column; gap: 32px;}
	.footer-addresses{ flex-direction: column; gap: 20px;}
	.footer-solutions ul{ columns: 1;}
	.sub-footer .container{ flex-direction: column; align-items: flex-start; gap: 14px; padding-bottom: 40px;}

	/* — Disable scroll animations on mobile — */
	body.animate-ready .intro-item,
	body.animate-ready .callout-content,
	body.animate-ready .callout-image{ opacity: 1; transform: none;}

}

@media (max-width: 600px) {

	/* — Global type — */
	h2{ font-size: 28px; line-height: 34px;}

	/* — Inside hero — */
	.inside-hero h1{ font-size: 30px; line-height: 36px;}

	/* — Stats — */
	.stat-number{ font-size: 48px;}
	.stat-item{ padding: 30px 20px;}

	/* — Features — */
	.feature-text{ padding: 20px;}

	/* — Accordion — */
	.accordion-trigger{ font-size: 15px;}

	/* — Testimonials — */
	.testimonials-container h2{ font-size: 24px; line-height: 30px;}
	.testimonial-name{ font-size: 17px;}

}

@media print {
	.header, .footer, .nav, .search-form{ display: none;}
	body{ font-size: 12pt; color: #000;}
	a{ color: #000; text-decoration: underline;}
	a[href]::after{ content: " (" attr(href) ")";}
}