/*
Theme Name:iceair 2026
Theme URI:http://interlinegroup.com/
Author:Vlatko Zdrale
Author URI:http://interlinegroup.com/
Description:Ice Air 2026 Theme – Bootstrap 5.3
Version:2.5.0
Requires at least:6.3
Requires PHP:7.4
Text Domain:iceair
*/

/* ==========================================================================
   1. Settings
   Bootstrap 5.3 defaults are used for the page width, gutters, font size and
   headings. Only the brand values below are changed.
   ========================================================================== */
/* Roboto, served from the theme (fonts/, SIL Open Font License) */
@font-face {font-family:'Roboto'; font-style:normal; font-weight:300; font-display:swap; src:url('fonts/roboto-latin-300-normal.woff2') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:'Roboto'; font-style:italic; font-weight:300; font-display:swap; src:url('fonts/roboto-latin-300-italic.woff2') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:'Roboto'; font-style:normal; font-weight:500; font-display:swap; src:url('fonts/roboto-latin-500-normal.woff2') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:'Roboto'; font-style:italic; font-weight:500; font-display:swap; src:url('fonts/roboto-latin-500-italic.woff2') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:'icons'; src:url('fonts/icons.woff2') format('woff2'); font-display:block} /* PDF icon in document lists */

:root {
	--bs-body-font-family:Roboto, system-ui, sans-serif;
	--bs-body-font-weight:300;
	--bs-link-color:royalblue;          --bs-link-color-rgb:65,105,225;
	--bs-link-hover-color:midnightblue; --bs-link-hover-color-rgb:25,25,112;
	--ia-blue:#388adc;      /* buttons, highlights */
	--ia-cyan:#00bbe3;      /* hover states */
	--ia-orange:#e7751d;    /* "Ice Air" in headings */
	--ia-light:whitesmoke;  /* side boxes */
}

/* Product colours: one line per product family.
   Used by .bg-xxx (backgrounds), .text-xxx (text), home page boxes and spec table headers. */
.bg-icoolxc, .text-icoolxc, .icoolxc                     {--c:#418FDE}
.bg-spac, .bg-sphp, .bg-spxc, .text-spxc, .spac, .bg-cac {--c:#C75C64}
.bg-hybrid, .bg-hwcac, .hybrid                           {--c:#709F87}
.bg-fcu, .fcu                                            {--c:#EE7524}
.bg-wshp, .text-wshp, .wshp                              {--c:#5d88b3}
.bg-ptac, .ptac                                          {--c:#7da7ac}
.bg-pthp, .text-pthp, .pthp                              {--c:#e00000}
.bg-hpwh, .text-hpwh, .hpwh                              {--c:#b99f8d}
.bg-vsxc, .vsxc                                          {--c:#D4A017}
.bg-elec                                                 {--c:#7943ff}
.bg-icoolxc, .bg-spac, .bg-sphp, .bg-spxc, .bg-cac, .bg-hybrid, .bg-hwcac, .bg-fcu,
.bg-wshp, .bg-ptac, .bg-pthp, .bg-hpwh, .bg-vsxc, .bg-elec {background-color:var(--c)}
.text-icoolxc, .text-spxc, .text-wshp, .text-pthp, .text-hpwh {color:var(--c)}

/* ==========================================================================
   2. Base elements
   ========================================================================== */
a {text-decoration:none}
a:visited {color:#03a}
b, strong {font-weight:500}
small {font-weight:300}
hr {border-top:1px solid #ccc; opacity:1; clear:both}
h1, h2, h3, h4, h5, h6 {clear:both}
h1 {font-weight:300; margin:1.5rem 0 1rem}
h1 span {color:var(--ia-orange)}
h2, h3 {font-weight:400}
p {margin-bottom:1.5em}
ul, ol {margin:0 0 1.5em 1.5em}
li > ul, li > ol {margin-bottom:0}
img {height:auto; max-width:100%}
embed, iframe, object {max-width:100%}
abbr[title] {text-decoration:none; cursor:inherit}
.lead {font-weight:300}
.bi {display:inline-block; vertical-align:-.125em}   /* inline SVG icons */
.no-margin {margin:0 !important}
.clear::after {content:""; display:table; clear:both}
.skip-link:focus {position:absolute; z-index:2000; left:5px; top:5px; padding:10px 20px; background:#f1f1f1}
.screen-reader-text {position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px)}

/* WordPress alignment and captions */
.alignleft {float:left; margin-right:1.5em}
.alignright {float:right; margin-left:1.5em}
.aligncenter {clear:both; display:block; margin-left:auto; margin-right:auto; width:100%}
.wp-caption {margin-bottom:1.5em; max-width:100%}
.wp-caption img[class*="wp-image-"] {display:block; margin:0 auto}
.wp-caption-text {font-style:italic; margin:.8em 0}
.entry-content {margin-top:1.5em}
.entry-content::after {content:""; display:table; clear:both}
.entry-meta {display:none}

/* ==========================================================================
   3. Header & navigation
   ========================================================================== */
.site-header {background:#fff; z-index:1030}
.admin-bar .site-header.sticky-top {top:32px}
@media (max-width:782px) { .admin-bar .site-header.sticky-top {top:46px} }
@media (max-width:600px) { .admin-bar .site-header.sticky-top {top:0} }
.site-header .navbar {padding:1rem 0}
.navbar-brand {padding:0; margin-right:1rem}
.navbar-brand img {height:110px; width:auto}
.navbar-toggler {background:lightgrey; border:none; box-shadow:none}
.navbar-nav {margin:0; padding:0}
.navbar-nav .nav-link {color:#000; font-weight:500}
.navbar-nav .nav-link:hover, .navbar-nav .nav-link:focus {color:#02417a}
.navbar-nav .nav-link.active, .navbar-nav .active > .nav-link {color:var(--ia-blue)}
.navbar-nav .dropdown-menu {margin-top:0; background:var(--ia-light); border-radius:0; --bs-dropdown-font-size:.9375rem; --bs-dropdown-link-hover-bg:#ebebeb; --bs-dropdown-link-hover-color:#02417a; --bs-dropdown-link-active-bg:transparent; --bs-dropdown-link-active-color:var(--ia-blue)}

/* Sub menu and search (top right) */
#menu-sub-menu {display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; margin:0; padding:0; list-style:none}
#menu-sub-menu a {display:block; padding:.375rem .875rem; font-size:.9375rem; font-weight:500}
#menu-sub-menu a:hover {color:#333}
#menu-sub-menu li:last-child {background:#076997}
#menu-sub-menu li:last-child:hover {background:#10acf4}
#menu-sub-menu li:last-child a {color:#fff}
.header-search {width:240px}
.header-search .form-control, .header-search .btn, .site-footer .form-control, .site-footer .btn {border-color:#ccc; border-radius:0}

@media (min-width:992px) {
	.menu-primary {flex-direction:column; align-items:flex-end; align-self:stretch; justify-content:space-between}
	.header-tools {display:flex; align-items:center; gap:.75rem}
	.navbar-expand-lg .navbar-nav .nav-link {padding:0 1rem; line-height:1}
	.navbar-nav > li:last-child {display:none}  /* last menu item is for mobile only */
	.navbar-nav .dropdown-menu {top:100%; left:-5px}
}
@media (min-width:992px) and (max-width:1199.98px) {
	.navbar-expand-lg .navbar-nav .nav-link {padding:0 .6rem}
}
@media (min-width:992px) and (hover:hover) {
	/* desktop: open sub-menus on hover / keyboard focus */
	.navbar .dropdown:hover > .dropdown-menu, .navbar .dropdown:focus-within > .dropdown-menu {display:block}
}
@media (max-width:991.98px) {
	.navbar-brand img {height:60px}
	.menu-primary.show, .menu-primary.collapsing {display:flex; flex-direction:column}
	.menu-primary .navbar-nav {margin-top:1.25rem; text-align:center}
	.navbar-nav li {margin-bottom:.5rem}
	.navbar-nav .dropdown-menu {text-align:center; border:0}
	.header-tools {display:flex; flex-direction:column; align-items:center; gap:1rem; padding:.75rem 0 1.25rem; order:2}
	#menu-sub-menu {justify-content:center}
	.header-search {width:100%; max-width:400px}
}

/* ==========================================================================
   4. Buttons & links
   ========================================================================== */
.btn-default {border:1px solid #ccc; border-radius:0; color:#00bde2; letter-spacing:.5px}
.btn-default:hover {color:#fff; background:#00bde2}
.btn-more {border:1px solid #fff; border-radius:0; color:#fff !important; font-weight:300}
.btn-more:hover {background:var(--ia-cyan)}
a.see-all, a.read-more, .nav-links a {display:inline-block; padding:.3rem .75rem; border:1px solid; line-height:1.4; transition:background .2s, color .2s}
a.see-all {color:var(--ia-blue); font-size:.9375rem; font-weight:500}
a.read-more, .nav-links a {color:#999; font-size:.875rem; margin-top:.5rem}
a.see-all:hover, a.read-more:hover, .nav-links a:hover,
a.see-all:focus, a.read-more:focus, .nav-links a:focus {color:#fff; background:var(--ia-blue); border-color:var(--ia-blue)}
a.see-all {float:right}
.page-template a.see-all, .single-product a.see-all {float:none}

/* Previous / next links */
.posts-navigation, .post-navigation {margin:0 0 1.5em; padding:1rem 0}
.nav-links {display:flex; justify-content:space-between; gap:1rem}
.nav-previous a::before {content:"\00AB"; margin-right:.35rem}
.nav-next a::after {content:"\00BB"; margin-left:.35rem}

/* ==========================================================================
   5. Home page
   ========================================================================== */
.hero-section {background:radial-gradient(circle, #f5c6a3, #fdf1e8, #b3f2ff, #e5fbff); background-size:400% 400%; animation:gradient 25s ease infinite}
@keyframes gradient { 0%, 100% {background-position:0% 50%} 50% {background-position:100% 50%} }
.hero-section img {width:100%}   /* page header images fill the wider container */

/* Slider */
#myCarousel .carousel-item {aspect-ratio:16 / 7; background:center / contain no-repeat}
#myCarousel .carousel-item p {margin:0}
#myCarousel .carousel-item a.btn {position:absolute; top:80%; left:7%; border:1px solid var(--ia-blue); border-radius:0; color:#fff; background:#388adc99}
#myCarousel .carousel-control-prev, #myCarousel .carousel-control-next {width:7%}
#myCarousel .carousel-indicators [data-bs-target] {width:10px; height:10px; margin:0 3px; border:1px solid #fff; border-radius:50%; background:transparent; opacity:1}
#myCarousel .carousel-indicators .active {background:#f68028; border-color:#f68028}
@media (max-width:767.98px) {
	#myCarousel {margin-inline:calc(var(--bs-gutter-x) * -.5)}   /* full width on phones */
	#myCarousel .carousel-control-prev, #myCarousel .carousel-control-next {width:15%}
}

/* Product boxes */
.boxes {padding-bottom:2rem}
.boxes .box {position:relative; aspect-ratio:1; margin-top:1.5rem; overflow:hidden; border-radius:20px; transform:scale(1.03); transition:.33s;
	background:radial-gradient(circle, color-mix(in srgb, var(--c) 7%, transparent) 0%, var(--c) 100%)}
.boxes .box:hover {transform:scale(1.1); z-index:1; box-shadow:0 25px 25px rgba(0,0,0,.5); border-radius:30px}
.boxes .imgBx, .boxes .imgBx img, .boxes .imgBx::before, .boxes .content {position:absolute; inset:0; width:100%; height:100%}
.boxes .imgBx img {object-fit:cover}
.boxes .imgBx::before {content:""; z-index:1; opacity:0; transition:.5s; mix-blend-mode:multiply; background:linear-gradient(180deg, #fff 0%, #fff 25%, var(--c) 50%, #000 100%)}
.boxes .box:hover .imgBx::before {opacity:1}
.boxes .content {z-index:1; display:flex; align-items:flex-end; padding:1.25rem}
.boxes .content h2 {color:#000; font-size:1.5rem; font-weight:300; letter-spacing:-.5px}
.boxes .box:hover .content h2 {color:#fff}
.boxes .content p {color:#fff; font-size:.9375rem; transform:translateY(200px); transition:.5s .4s}
.boxes .box:hover .content p {transform:none}

/* Link tiles, partners, testimonials, icon links */
#additional-section {margin-top:1.5rem; padding-bottom:1rem; background:radial-gradient(circle, #fff 0%, #fff 50%, #f8f8f8 80%, #e4dbcc 100%) no-repeat; box-shadow:0 -4px 8px rgba(50,50,50,.25)}
#additional-section a {display:block; margin:1rem 0}
#additional-section a img {transition:.3s}
#additional-section a:hover img {scale:1.05; box-shadow:0 0 5px}
.quick-links img {width:100%}
.partners-title {font-size:1.25rem; font-weight:300; margin:1rem auto 0}
.logo-container {display:flex; flex-wrap:wrap; align-items:center}
.logo-container a {flex:1}
.logo-container img {height:80px; object-fit:contain; margin:0 1.5rem; padding:5px 10px}
#testimonial-carousel {padding:1.5rem 0; margin:1rem 0; border-block:1px solid #ccc}
#testimonial-carousel .carousel-item {min-height:185px}
.testimonial_fa {font-size:3.75rem; color:var(--ia-cyan); margin-right:1rem}
.testimonial-item p {margin:0}
.nine-cols {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:0 1rem; text-align:center}
@media (min-width:768px) { .nine-cols {grid-template-columns:repeat(9, minmax(0, 1fr)); gap:0 1.5rem} }
.nine-cols img {display:block; width:100%; max-width:110px; margin:0 auto .35rem; aspect-ratio:1; background:#fff}
.nine-cols strong {display:block; font-size:1rem; letter-spacing:-.5px; color:#555; line-height:1.2}

/* ==========================================================================
   6. Footer
   ========================================================================== */
.site-footer {padding:1rem 0; background:radial-gradient(circle, #fff 0%, #d2f1f8 20%, #d2f1f8 80%, #fff 100%) no-repeat; box-shadow:0 -4px 8px rgba(50,50,50,.25)}
.site-footer a {display:inline-block; margin-left:1rem; font-size:1.25rem; color:#03a}
.site-info {padding:.4rem; background:#000; color:#fff; font-size:.9375rem}

/* ==========================================================================
   7. Archives, sidebars, side boxes
   ========================================================================== */
.archive .page-header {margin-bottom:2.5rem; padding-bottom:1.25rem; border-bottom:1px solid #eee}
.archive article {margin-bottom:2rem}
.archive h2.entry-title {margin:.75rem 0 .35rem; font-size:1.25rem; line-height:1.3}
.archive h2.entry-title a {font-weight:500; color:#000}
.archive h2.entry-title a:hover {color:var(--ia-blue)}
.archive h4 {font-size:1rem; font-weight:300; font-style:italic; margin-top:0; color:#333}
.archive img.size-post-thumbnail {width:100%}
h2.subtitle {margin-top:0; font-size:1.5rem; font-style:italic; font-weight:300; color:#333}

/* Image with hover overlay ("View post »") */
a.thumbnail-link {display:block; position:relative; overflow:hidden; aspect-ratio:16 / 9}
.post-type-archive-casestudies a.thumbnail-link {aspect-ratio:3}
.post-type-archive-nycentral a.thumbnail-link {aspect-ratio:2.56}
.post-type-archive-nycentral .hero-section {background:radial-gradient(circle, rgba(255,255,255,.1) 10%, rgba(17,178,224,.1) 80%, rgba(17,178,224,.2) 90%, rgba(17,178,224,.35) 100%)}
.header-video {display:block; width:100%; aspect-ratio:3; object-fit:cover}
.archive-intro {padding:.625rem 0}
.excerpt-lead {font-size:1.25rem}
.excerpt-thumb {display:block; padding:5px; background:#e3f8fd}
.post-type-archive-cares .new_archive article {margin:9.375rem 0}
.post-type-archive-cares .new_archive h2, .case-feature h2 {margin-top:0}
.cares-logo {width:33%; margin:0 0 10px 1rem}
.nyc-ai-bot {padding:.5rem; margin:-7rem 1rem 0 0; background:#daf3fa}
.nyc-ai-bot img {display:block; margin-bottom:10px}
a.thumbnail-link img {width:100%; transition:transform .3s}
a.thumbnail-link:hover img {transform:scale(1.1)}
.hover-overlay {position:absolute; inset:0; background:rgba(0,186,226,.8); opacity:0; transition:opacity .3s}
.hover-overlay:hover {opacity:1}
span.learn-more {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); padding:.3rem .75rem; border:1px solid #fff; color:#fff; white-space:nowrap}

/* Grey side boxes and their headings */
#secondary, .side-info article, .page-template-product-page #main article {background:var(--ia-light); padding:1rem}
#secondary {margin-top:2rem}
.side-info article {margin-bottom:2rem}
#secondary h3, .side-info article h3, .documents h3, .features h3, .page-template-product-page .entry-content h3 {
	margin:0 0 1.25rem; padding-bottom:1rem; border-bottom:1px solid lightgrey; font-size:1.125rem; font-weight:300; font-style:italic; text-transform:uppercase; color:#333}
.page-template-2col-page .entry-content, .page-template-product-page .entry-content {margin-top:0}
.page-template-2col-page #main h3, .page-template-full-width-page #main h3, .single-product h3 {margin:0 0 1.25rem; font-weight:300; color:#333}

/* Lists with an arrow bullet */
#secondary ul, .overview ul, article.page ul, .page-template-product-page article ul {margin:1.25rem 0 0; padding:0; list-style:none}
#secondary li, .overview li, article.page li, .page-template-product-page article li {position:relative; padding-left:1.1rem; margin-bottom:.6rem}
#secondary li::before, .overview li::before, article.page li::before, .page-template-product-page article li::before {content:"\276F"; position:absolute; left:0; font-size:.875rem; color:var(--ia-blue)}
.page-template-product-page li a {color:#333}
.page-template-product-page li a:hover {color:var(--ia-blue)}

/* Lists of documents with a PDF icon */
.documents ul, .downloads ul, .single-product .entry-content ul {margin:1.25rem 0; padding:0; list-style:none}
.documents li, .downloads li, .single-product .entry-content li {position:relative; padding-left:1.4rem; margin-bottom:.6rem}
.documents li::before, .downloads li::before, .single-product .entry-content li::before {content:"\f1c1"; font-family:icons; position:absolute; left:0; top:-2px; color:var(--ia-blue)}
.documents li a, .downloads li a, .single-product .entry-content li a {color:#333}
.documents li a:hover, .downloads li a:hover, .single-product .entry-content li a:hover {color:var(--ia-blue)}
.documents {margin-bottom:2rem}

/* Tabs and pills in page content (no arrow bullets) */
.page .nav li {margin:0 !important; padding:0 !important}
.page .nav li::before, .page .nav li a::after {content:none !important}
.page .nav-tabs .nav-link {padding-inline:0; margin-right:1.25rem}
.tab-pane p {font-weight:300}

/* ==========================================================================
   8. Products & markets
   ========================================================================== */
.product-info {margin-top:1.25rem}
.specifications {margin-top:2rem}
.specifications .table {border-left-width:0; border-right-width:0}
.specifications .table thead {background:var(--c, #EE7524); font-weight:bold}
.specifications .table thead > tr > * {--bs-table-bg:transparent; --bs-table-color:#fff}
.specifications .table thead td {text-align:center; border:none}
.specifications .table thead td:first-child, .specifications .table tbody th {text-align:left}
.specifications .table tbody td {text-align:center}
.specifications .table tbody td:last-child {border-right-width:0}
.specifications .table tbody th {border-left-width:0; font-weight:normal; vertical-align:middle}
.specifications .table tfoot td, .specifications .table tfoot td p {text-align:left; border:none; font-size:.875rem; color:#333}

.product-list article {position:relative; margin-bottom:2rem; border:1px solid lightgray}
.product-list article a {display:block; position:relative; padding:1rem; min-height:270px; max-height:270px; transition:padding .3s}
.product-list article a:hover {padding:2.5rem}
.product-list article a h2 {position:absolute; inset:auto 0 0; margin:0 0 .6rem; font-size:1.25rem; font-weight:300; text-align:center; color:#000}

.other-products small {display:block; margin-top:1em; line-height:1; text-align:center; color:#fff}
.other-products a:hover small {color:#aaa}
.other-products a img {transition:transform .2s; transform-origin:50% 100%}
.other-products a:hover img {transform:scale(1.5)}

.market-list.entry-content {margin-top:0 !important}
.market-list.entry-content p:first-child {background:rgba(220,220,220,.9); padding:1em; margin-bottom:2.4rem}
.market-list article a {display:block; position:relative; min-height:370px; max-height:370px; transition:padding .3s}
.market-list article a:hover {padding:2.5rem}
.market-list article a h2 {position:absolute; inset:auto 0 0; z-index:200; margin:0 !important; padding:1em; font-size:1.25rem; font-weight:bold; color:#fff; background:rgba(80,80,80,.8)}
.market-list .hover-overlay {z-index:100}
.markets_other p {line-height:1}
.markets_other a {display:block; opacity:.85; filter:grayscale(.35); transition:all .25s}
.markets_other a img {transition:all .25s}
.markets_other:hover a img {filter:blur(2px) grayscale(1)}
.markets_other a:hover {opacity:1; filter:none; text-decoration:none}
.markets_other a:hover img {filter:none; transform:scale(1.07); transform-origin:bottom center}

.img-link {width:100%; margin-bottom:1em; transition:.5s}

/* BIM / Revit file lists */
.revit_files ul {margin:0 0 1.25rem !important; padding:0}
.revit_files ul li {display:inline-block; margin:0; padding:0 !important}
.revit_files ul li::before {display:none}
.revit_files ul li a, .revit_files a.legend {display:inline-block; min-width:68px; margin-bottom:3px; padding:0 2px; text-align:center; color:#fff; background:#337ab7; border:1px solid #337ab7}
.revit_files ul li a:hover {color:#337ab7; background:#fff}
.revit_files a.legend:hover {cursor:help}
.revit_files h4 {margin:1.25rem 0 .3rem; color:#555}
.revit_files h4 a {color:#555 !important; font-weight:500}
.revit_files h2 {margin:2.5rem 0 0; padding-bottom:8px; border-bottom:1px solid #ccc; font-weight:300}
.single-product .revit_files ul li a {min-width:51px; padding:0 1px; font-size:.8125rem; font-weight:bold !important; color:#00b2e3 !important; background:#fff; border-color:#00b2e3}
.single-product .revit_files ul li a:hover {background:#337ab7; color:#fff !important}

/* Video thumbnail with a play button */
.video_tn {position:relative; display:inline-block; cursor:pointer}
.video_tn::after {content:"\25B6"; position:absolute; top:40%; left:50%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:50px; height:50px; padding-left:4px; font-size:30px; color:#fff; border:3px solid #fff; border-radius:50%; background:rgba(0,0,0,.3); pointer-events:none; transition:transform .25s, background .25s}
.video_tn:hover::after {transform:translate(-50%,-50%) scale(1.15); background:rgba(0,0,0,.5)}
.video_tn:hover img {filter:brightness(.8)}

/* ==========================================================================
   9. Literature & gallery
   ========================================================================== */
.lit {min-height:250px}
.lit strong {display:block}
.lit span {color:#fff; padding:.15rem .3rem; margin-top:-6px}
.lit .lightbox span {font-size:.9375rem; margin-bottom:.6rem}
.literature a {display:block; color:#777 !important; line-height:1.1}
.literature a img {display:block; margin-bottom:5px; transition:transform .2s}
.literature a:hover img {transform:scale(1.1); transform-origin:bottom right; box-shadow:-2px -2px 4px #eee}
.lit_filter_cat a {display:inline-block; min-width:71px; padding:.25em .5em; text-align:center; color:#eee; transition:.1s}
.lit_filter_cat a.all, .lit_filter_cat a.active, .lit_filter_cat a:hover, .lit_filter_cat a:focus {color:#fff; padding:.5em .5em .25em}
.lit_filter_cat a.all {background:#eee; color:#999}
.lit_filter_type a {display:block; padding:.5em 0; line-height:1; color:#999}
.lit_filter_type a:hover {color:#000}
.lit_filter_type hr {margin:.25em 0}

.gallery {margin:0 calc(var(--bs-gutter-x, 1.5rem) * -.5) 1rem}
.gallery figure {padding:.75rem}
.gallery strong {display:block}
.gallery-item {display:inline-block; width:100%; text-align:center; vertical-align:top}
.gallery-columns-2 .gallery-item {max-width:50%}
.gallery-columns-3 .gallery-item {max-width:33.33%}
.gallery-caption {display:block; margin-top:5px}
.gallery > div {margin-bottom:2rem}
.gallery > div > a {position:relative; display:block; aspect-ratio:1; overflow:hidden}
.gallery > div > a > img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1s cubic-bezier(.22,.61,.36,1)}
.gallery > div > a:hover > img {transform:scale(1.1)}
.gallery > div > a > span {position:absolute; right:0; bottom:0; z-index:2; padding:6px 10px; font-size:.875rem; line-height:1; pointer-events:none}

/* ==========================================================================
   10. Individual pages
   ========================================================================== */
/* Leadership */
#post-876 h3, #post-876 h4 {margin:.6rem 0 0 !important; font-weight:300; letter-spacing:-.25px}
#post-876 small {display:block; min-height:2.2rem; line-height:1.2}

/* Find a sales rep (locator) */
input#search-json-submit, #search {padding:7px 10px; font-size:.9375rem; color:var(--ia-blue); background:none; border:1px solid var(--ia-blue)}
input#search-json-submit:hover, input#search-json-submit:focus, #search:hover, #search:focus {color:#fff; background:var(--ia-blue); outline:none}
input#search-json-input, select {width:100%; padding:6px 12px; color:#555; border:1px solid #aaa; border-radius:0; box-shadow:0 1px 2px rgba(0,0,0,.1) inset}
input#search-json-input:focus, select:focus {outline:none; border-color:var(--ia-blue)}
div#loading {position:absolute; top:85px; right:30px; color:var(--ia-blue)}
#search-output {margin-top:1.25rem}
.case-list h3 {margin:0 !important}
.case-list img {width:100%}

/* FAQ accordions (content uses the Bootstrap 3 "panel" markup) */
.panel-body ul li::before, .accordion-body ul li::before {content:"\2022" !important}
.accordion {margin-bottom:1.5rem}
.accordion-button {font-weight:400}
.well {padding:1rem 0; margin-bottom:1.25rem; background:#f5f5f5}

/* Electrify page: section header, timeline, tree, coloured labels */
header.section-header {position:relative; min-height:400px; margin-bottom:2.5rem; padding:1.25rem; overflow:hidden; background:linear-gradient(to bottom, rgba(17,178,224,.1) 10%, rgba(17,178,224,.2) 60%, rgba(17,178,224,.9) 80%, rgba(17,178,224,.95) 100%)}
header.section-header h2 {position:absolute; bottom:1.25rem; left:1.25rem; font-size:4em; font-weight:300; color:#fff}
.header-bg {position:absolute; inset:0; width:100%; height:100%; z-index:-1; object-fit:cover}
.main-timeline::after {content:""; display:block; clear:both}
.main-timeline .timeline {float:left; width:calc(50% + 100px); margin:0 5px 0 0; box-shadow:0 0 10px rgba(0,0,0,.1)}
.main-timeline .timeline:nth-child(even) {float:right; margin:0 0 0 5px}
.main-timeline .timeline-content {position:relative; display:block; min-height:100px; padding:30px 150px 30px 30px; color:#555; background:#fdece3}
.main-timeline .timeline:nth-child(even) .timeline-content {padding:30px 30px 30px 150px}
.main-timeline .timeline-content::before {content:""; position:absolute; top:0; right:0; width:100px; height:100%; background:linear-gradient(to right, rgba(17,178,224,.52), rgba(17,178,224,1))}
.main-timeline .timeline:nth-child(even) .timeline-content::before {right:auto; left:0}
.main-timeline .timeline-icon {position:absolute; top:50%; right:0; transform:translateY(-50%); color:#fff; font-size:40px; line-height:40px}
.main-timeline .timeline:nth-child(even) .timeline-icon {right:auto; left:0}
.main-timeline .timeline-icon img {width:100px}
.main-timeline .description {margin:0; font-size:.9375rem}
@media (max-width:767.98px) {
	.main-timeline .timeline, .main-timeline .timeline:nth-child(even) {width:100%; margin:0 0 2rem}
}
@media (max-width:600px) {
	.main-timeline .timeline .timeline-content, .main-timeline .timeline:nth-child(even) .timeline-content {padding:130px 25px 25px; text-align:center}
	.main-timeline .timeline .timeline-content::before, .main-timeline .timeline:nth-child(even) .timeline-content::before {width:100%; height:70px}
	.main-timeline .timeline-icon, .main-timeline .timeline:nth-child(even) .timeline-icon {top:16px; left:50%; right:auto; transform:translateX(-50%)}
}
.tree, .tree ul, .tree li {position:relative; margin:0; padding:0; list-style:none}
.tree {margin-bottom:1em; text-align:center}
.tree, .tree ul {display:table}
.tree ul {width:100%}
.tree li {display:table-cell; padding:.5em 0 !important; vertical-align:top}
.tree li::before {content:"" !important; position:absolute; top:0; left:0; right:0; outline:1px solid #666}
.tree li:first-child::before {left:50%}
.tree li:last-child::before {right:50%}
.tree span {position:relative; display:inline-block; margin:0 .2em .5em; padding:.2em .5em}
.tree span.empty {width:0; padding:.2em 0; outline:1px solid #666}
.tree ul::before, .tree span::before {content:""; position:absolute; top:-.55em; left:50%; height:.5em; outline:1px solid #666}
.tree > li::before, .tree > li > span::before {outline:none}
.tree span.l1, .bg-l1 {background:#11b2e022}
.tree span.l2, .bg-l2 {background:#11b2e066}
.tree span.l3, .bg-l3 {background:#11b2e0aa}
span.bg-l1, span.bg-l2, span.bg-l3, span.bg-l4 {display:inline-block; padding:0 1rem}
span.bg-l4, .bordered {border:1px solid #777}

/* ==========================================================================
   11. Animations
   ========================================================================== */
/* Scroll-in effects added by js/custom-js.js */
.animated {animation-duration:1s; animation-fill-mode:both}
.fadeIn {animation-name:fadeIn}
.fadeInUp {animation-name:fadeInUp}
.fadeInDown {animation-name:fadeInDown}
.fadeInLeft {animation-name:fadeInLeft}
.fadeInRight {animation-name:fadeInRight}
@keyframes fadeIn {from {opacity:0} to {opacity:1}}
@keyframes fadeInUp {from {opacity:0; transform:translate3d(0,100%,0)} to {opacity:1; transform:none}}
@keyframes fadeInDown {from {opacity:0; transform:translate3d(0,-100%,0)} to {opacity:1; transform:none}}
@keyframes fadeInLeft {from {opacity:0; transform:translate3d(-100%,0,0)} to {opacity:1; transform:none}}
@keyframes fadeInRight {from {opacity:0; transform:translate3d(100%,0,0)} to {opacity:1; transform:none}}

/* .reveal elements (Electrify, Cares pages) */
.reveal {position:relative; opacity:0}
.reveal.active {opacity:1}
.active.fade-bottom {--from:translateY(50px)}
.active.fade-left {--from:translateX(-100px)}
.active.fade-right {--from:translateX(100px)}
.active.fade-bottom, .active.fade-left, .active.fade-right {animation:slideIn .4s ease-in}
@keyframes slideIn {from {opacity:0; transform:var(--from)} to {opacity:1; transform:none}}

/* Sales rep locator results */
.fade-in {animation:fadeIn .6s ease both}

@media (prefers-reduced-motion:reduce) {
	.animated, .fade-in, .reveal, .hero-section {animation:none !important}
	.reveal {opacity:1}
}

/* ==========================================================================
   12. Small screens
   ========================================================================== */
@media (max-width:767.98px) {
	#additional-section .quick-links a {margin:.75rem 0}
}
@media (max-width:575.98px) {
	.lead {font-size:1.125rem}
	a.see-all {float:none}
	.product-list img {display:block; max-width:300px; margin:0 auto}
	.tab-content h3 {font-size:1.25rem; margin-top:0}
}
