/* Scoped to importer-owned pages and the EPJICO block wrapper in the editor. */
.epjico-page, .epjico-content {
  --navy:#062d69; --cyan:#00b3cb; --theme-text-color:#062d69;
  --theme-heading-color:#062d69; --theme-font-family:Arial,Helvetica,sans-serif;
  --theme-link-initial-color:#062d69; --theme-link-hover-color:#008ca2;
  color:var(--navy); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.6;
}
.epjico-page { background:#fff; --theme-content-spacing:0; }
.epjico-page #main > article { padding:0; margin:0; }
.epjico-page #main > [class*="ct-container"] { width:100%; max-width:none; padding:0; }
.epjico-page .entry-content { margin:0; }
.epjico-page .entry-content > .epjico-content { width:100%; max-width:none; margin:0; }
.epjico-content *, .epjico-content *::before, .epjico-content *::after { box-sizing:border-box; }
.epjico-content :where(p,h1,h2,h3,figure,.wp-block-group,.wp-block-buttons) { margin:0; }
.epjico-content :where(a) { color:inherit; text-decoration:none; }
.epjico-content a:focus-visible { outline:3px solid #00a6be; outline-offset:5px; }
.epjico-content :where(.wp-block-group,.wp-block-buttons) { gap:0; }
.epjico-content .wrap { width:min(1280px,calc(100% - 100px)); margin-inline:auto; }
.epjico-content .hero { display:grid; grid-template-columns:1fr 1fr; gap:45px; align-items:center; padding-top:20px; padding-bottom:57px; }
.epjico-content .hero-copy { padding:18px 0; }
.epjico-content .eyebrow { font-size:12px; letter-spacing:1.7px; font-weight:700; display:flex; align-items:center; gap:10px; }
.epjico-content .eyebrow.dot::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--cyan); }
.epjico-content h1 { font-family:inherit; font-size:clamp(48px,4.55vw,66px); line-height:1.16; letter-spacing:-2.5px; font-weight:600; margin:25px 0; }
.epjico-content h1 em { font-style:normal; color:#009db5; }
.epjico-content h1+p { font-size:16px; line-height:1.85; color:#617084; margin-bottom:29px; }
.epjico-content .hero-actions { display:flex; align-items:center; gap:23px; flex-wrap:nowrap; }
.epjico-content .wp-block-button { margin:0; padding:0; border:0; background:none; }
.epjico-content .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:19px; padding:16px 20px; min-height:0; border:0; border-radius:5px; font-family:inherit; font-size:14px; line-height:1.6; font-weight:600; color:#fff; background:var(--navy); box-shadow:none; text-decoration:none; transition:transform .2s,background .2s; }
.epjico-content .wp-block-button__link::after { content:""; width:20px; height:20px; background:currentColor; mask:url('../icons/arrow-up-right.svg') center/contain no-repeat; }
.epjico-content .wp-block-button__link:hover { transform:translateY(-3px); background:#06408b; }
.epjico-content .text-link .wp-block-button__link { padding:0; gap:9px; background:none; color:var(--navy); }
.epjico-content .text-link .wp-block-button__link::after { mask-image:url('../icons/arrow-right.svg'); width:18px; height:18px; }
.epjico-content .light .wp-block-button__link { background:#fff; color:var(--navy); }
.epjico-content [class*="icon-"]::before { content:""; flex-shrink:0; background:currentColor; mask:var(--icon) center/contain no-repeat; }
.epjico-content .icon-shield-check { --icon:url('../icons/shield-check.svg'); }
.epjico-content .icon-heart-pulse { --icon:url('../icons/heart-pulse.svg'); }
.epjico-content .icon-car-front { --icon:url('../icons/car-front.svg'); }
.epjico-content .icon-building-2 { --icon:url('../icons/building-2.svg'); }
.epjico-content .icon-hard-hat { --icon:url('../icons/hard-hat.svg'); }
.epjico-content .icon-plane { --icon:url('../icons/plane.svg'); }
.epjico-content .icon-ship { --icon:url('../icons/ship.svg'); }
.epjico-content .icon-check { --icon:url('../icons/check.svg'); }
.epjico-content .hero-note { display:flex; align-items:center; gap:11px; margin-top:36px; font-size:13px; color:#65758a; }
.epjico-content .hero-note::before { width:23px; height:23px; color:#00a2b9; }
.epjico-content .hero-visual { height:560px; position:relative; border-radius:120px 9px 80px 9px; background:#c4e6e1; margin-left:14px; overflow:hidden; }
.epjico-content .hero-photo { height:100%; width:100%; border-radius:inherit; margin:0; }
.epjico-content .hero-photo img { display:block; height:100%; width:100%; max-width:100%; object-fit:cover; object-position:center 49%; border-radius:inherit; }
.epjico-content .hero-visual::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(180deg,#001f4130,transparent 40%,#031d43a0); }
.epjico-content .photo-top { position:absolute; z-index:1; top:32px; right:28px; color:white; font-size:10px; font-weight:600; letter-spacing:1.5px; display:flex; gap:8px; align-items:center; }
.epjico-content .photo-top::before { content:""; width:6px; height:6px; background:#51e1d9; border-radius:50%; }
.epjico-content .photo-bottom { position:absolute; z-index:1; bottom:31px; left:32px; right:32px; color:#fff; font-size:18px; line-height:1.6; padding-right:44px; }
.epjico-content .photo-bottom strong { font-weight:500; }
.epjico-content .photo-bottom::after { content:"↗"; position:absolute; right:0; top:6px; border:1px solid #ffffff70; width:44px; height:44px; border-radius:50%; display:grid; place-items:center; font-size:24px; }
.epjico-content .floating-badge { position:absolute; z-index:2; left:-48px; bottom:130px; display:flex; flex-direction:column; align-items:flex-start; padding:15px 21px 15px 80px; background:#ffffffed; backdrop-filter:blur(12px); border:1px solid white; box-shadow:0 12px 35px #05234e13; border-radius:10px; }
.epjico-content .floating-badge::before { position:absolute; left:21px; top:22px; width:27px; height:27px; color:#039ba9; }
.epjico-content .floating-badge::after { content:""; position:absolute; left:12px; top:12px; width:46px; height:46px; border-radius:50%; background:#00b3cb16; pointer-events:none; }
.epjico-content .floating-badge p { margin:0; }
.epjico-content .floating-badge strong { font-size:14px; font-weight:600; display:block; }
.epjico-content .floating-badge .badge-small { font-size:12px; color:#6d7c8c; }
.epjico-content .quick-strip { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:27px 0; border-top:1px solid #e2e8ee; border-bottom:1px solid #e2e8ee; }
.epjico-content .strip-count { display:flex; align-items:center; gap:13px; }
.epjico-content .quick-strip p { margin:0; font-size:14px; color:#566b82; line-height:1.65; }
.epjico-content .quick-strip strong { font-weight:500; color:var(--navy); }
.epjico-content .quick-strip .strip-number { font-size:43px; line-height:1; color:#009eb5; font-weight:500; letter-spacing:-2px; }
.epjico-content .strip-feature { display:flex; align-items:center; gap:13px; }
.epjico-content .strip-feature::before { width:26px; height:26px; color:#00a1b8; }
.epjico-content .quick-strip .strip-link { font-size:13px; font-weight:600; color:var(--navy); }
.epjico-content .products { padding-top:86px; padding-bottom:77px; }
.epjico-content .section-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:37px; }
.epjico-content .section-heading .eyebrow { color:#008ca5; }
.epjico-content h2 { font-family:inherit; font-size:42px; line-height:1.22; letter-spacing:-1.3px; font-weight:500; margin:18px 0 0; }
.epjico-content .section-heading h2 span { color:#6e839b; }
.epjico-content .section-heading>p { font-size:15px; line-height:1.8; color:#65758a; margin:0 32px 4px 0; }
.epjico-content .product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.epjico-content .product-card { position:relative; border:1px solid #dae5eb; border-radius:9px; padding:27px 27px 19px; background:#fff; transition:background .2s,transform .2s,border-color .2s; }
.epjico-content .product-card:hover, .epjico-content .product-card:focus-within { background:#effbfd; transform:translateY(-5px); border-color:#20bdcf; }
.epjico-content .card-0 { background:#f1f8fb; }.epjico-content .card-1 { background:#eefaf9; }
.epjico-content .card-top { position:relative; display:flex; align-items:center; justify-content:space-between; height:52px; margin-bottom:26px; color:#8395aa; font-size:12px; }
.epjico-content .card-top::before { width:29px; height:29px; margin:11px; color:#058da7; }
.epjico-content .card-top::after { content:""; position:absolute; left:0; top:0; width:52px; height:52px; border:1px solid #c8e3e9; border-radius:13px; pointer-events:none; }
.epjico-content .card-tag { font-size:10px; letter-spacing:1.45px; color:#6b7f92; font-weight:600; }
.epjico-content .card-tag { min-height:25.6px; }
.epjico-content .product-card h3 { font-family:inherit; font-size:27px; line-height:1.32; font-weight:500; letter-spacing:-.55px; margin:11px 0 14px; }
.epjico-content .product-card h3 a::after { content:""; position:absolute; inset:0; border-radius:9px; }
.epjico-content .product-card .card-description { font-size:14px; line-height:1.75; color:#63758a; max-width:290px; min-height:50px; margin:0 0 22px; }
.epjico-content .card-bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; border-top:1px solid #dce7ec; padding-top:16px; font-size:11px; color:#63758a; }
.epjico-content .card-bottom::after { content:"↗"; width:32px; height:32px; flex-shrink:0; display:grid; place-items:center; border-radius:50%; background:#fff; border:1px solid #dbe6ed; color:var(--navy); font-size:21px; }
.epjico-content .product-footnote { font-size:12px; color:#738297; margin-top:21px; margin-bottom:12px; }
.epjico-content .promise { background:var(--navy); color:#fff; padding:65px 0; }
.epjico-content .promise-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:70px; }
.epjico-content .promise .eyebrow { color:#56d4e0; }.epjico-content .promise h2 { font-size:38px; color:#fff; }
.epjico-content .promise p { color:#bbccdf; font-size:14px; line-height:1.85; }
.epjico-content .promise .eyebrow { font-size:12px; line-height:1.6; }
.epjico-content .promise-copy>p:not(.eyebrow) { margin:20px 0 28px; }
.epjico-content .promise-list { padding-top:7px; }
.epjico-content .promise-item { position:relative; padding:21px 0 21px 50px; border-bottom:1px solid #ffffff25; }
.epjico-content .promise-item:last-child { border:0; }
.epjico-content .promise-item::before { position:absolute; top:27px; left:6px; width:20px; height:20px; color:#59d9e3; }
.epjico-content .promise-item::after { content:""; position:absolute; left:0; top:21px; width:33px; height:33px; border:1px solid #5bc1d766; border-radius:50%; }
.epjico-content .promise-list h3 { color:#fff; font-family:inherit; font-size:17px; line-height:1.6; font-weight:500; margin:0; }
.epjico-content .promise-list p { margin:7px 0 0; font-size:13px; }
/* Blocksy's native header/footer, not duplicate page markup. */
.epjico-page #header [data-row] > div, .epjico-page #footer [data-row] > div { width:min(1280px,calc(100% - 100px)); max-width:none; }
.epjico-page #header [data-row="middle"] { background:#fff; box-shadow:none; border:0; }
.epjico-page #header [data-row="middle"] > div { min-height:101px; }
.epjico-page #header .site-logo-container img { width:166px; height:auto; max-height:none; }
.epjico-page #header [data-id="menu"] > ul { gap:33px; }
.epjico-page #header .menu>li>a { font-family:Arial,Helvetica,sans-serif; font-size:14px; font-weight:600; padding:10px 0; color:var(--navy); min-height:0; }
.epjico-page #header .menu>li>a { text-transform:none; letter-spacing:normal; }
.epjico-page #header a.epjico-current { text-decoration:underline; text-decoration-color:var(--cyan); text-underline-offset:12px; }
.epjico-page #header .epjico-call { border:1px solid #d7e2ed; border-radius:5px; padding:12px 16px; font-size:14px; font-weight:700; color:var(--navy); background:#fff; line-height:1.6; min-height:0; }
.epjico-page #header .epjico-call { display:inline-flex; align-items:center; gap:10px; }
.epjico-page #header .epjico-call::before, .epjico-page #header .epjico-call::after { content:""; width:17px; height:17px; background:currentColor; mask:url('../icons/arrow-up-right.svg') center/contain no-repeat; }
.epjico-page #header .epjico-call::before { mask-image:url('../icons/phone.svg'); }
.epjico-page #footer { background:#fff; color:var(--navy); }
.epjico-page #footer [data-row="middle"] > div { grid-template-columns:1fr 1fr; padding:49px 0 35px; align-items:center; gap:30px; }
.epjico-page #footer [data-row="middle"] [data-column]:last-child { justify-content:end; text-align:left; }
.epjico-page #footer [data-row="middle"] [data-column]:last-child>div { margin-left:auto; width:max-content; }
.epjico-page #footer .widget { margin:0; }
.epjico-page .epjico-footer-brand .footer-logo { margin:0; width:166px; }
.epjico-page .epjico-footer-brand p { margin:17px 0 0; font-size:13px; color:#6c7e93; }
.epjico-page .footer-label { font-size:10px; letter-spacing:1.5px; color:#6c7e93; margin:0; }
.epjico-page .footer-phone { margin:5px 0 0; font-size:27px; color:var(--navy); }
.epjico-page #footer [data-row="bottom"] > div { border-top:1px solid #e1e8ee; grid-template-columns:1fr auto; padding:21px 0; min-height:0; gap:20px; }
.epjico-page #footer :where(.ct-footer-copyright, .footer-menu-inline a) { font-family:Arial,Helvetica,sans-serif; font-size:11px; color:#6a7c92; }
.epjico-page #footer .footer-menu-inline ul { gap:45px; }.epjico-page #footer .ct-footer-copyright p { margin:0; }
@media(min-width:1500px) { .epjico-content .hero { gap:80px; } }
@media(max-width:1100px) {
 .epjico-content .wrap, .epjico-page #header [data-row]>div, .epjico-page #footer [data-row]>div { width:calc(100% - 60px); }
 .epjico-content .hero { gap:20px; }.epjico-content .hero-visual { height:510px; }.epjico-content .hero-actions { flex-wrap:wrap; gap:16px; }
 .epjico-content h1 { font-size:51px; }.epjico-content .quick-strip>.strip-feature:nth-child(3) { display:none; }
 .epjico-content .product-card { padding:22px; }.epjico-content .floating-badge { left:-25px; }.epjico-content .promise-grid { gap:40px; }
}
@media(max-width:760px) {
 .epjico-content .wrap, .epjico-page #header [data-row]>div, .epjico-page #footer [data-row]>div { width:calc(100% - 40px); }
 .epjico-page #header [data-row="middle"]>div { min-height:81px; }.epjico-page #header .site-logo-container img { width:135px; }
 .epjico-page #header .epjico-call { font-size:12px; padding:8px; }.epjico-page #header [data-items] { gap:10px; }
 .epjico-content .hero { grid-template-columns:1fr; gap:31px; padding-top:66px; padding-bottom:30px; }.epjico-content .hero-copy { padding:0; }
 .epjico-content .eyebrow { font-size:10px; letter-spacing:1.3px; }.epjico-content h1 { font-size:49px; letter-spacing:-2px; margin:21px 0; }
 .epjico-content .promise .eyebrow { font-size:10px; }
 .epjico-content h1+p { font-size:15px; }.epjico-content .desktop { display:none; }.epjico-content .hero-actions { gap:20px; }
 .epjico-content .wp-block-button__link { font-size:13px; padding:14px 16px; }.epjico-content .text-link .wp-block-button__link { padding:0; }.epjico-content .hero-note { margin-top:24px; }
 .epjico-content .hero-visual { height:440px; margin:0 0 0 13px; border-radius:80px 8px 60px 8px; }.epjico-content .hero-photo img { object-position:center 44%; }
 .epjico-content .floating-badge { left:-13px; bottom:110px; padding:11px 14px 11px 65px; }.epjico-content .floating-badge::before { left:18px; top:18px; }
 .epjico-content .photo-bottom { left:24px; right:25px; font-size:16px; }.epjico-content .photo-top { font-size:8px; }
 .epjico-content .quick-strip { flex-wrap:wrap; gap:20px; padding:22px 0; }.epjico-content .quick-strip>.strip-feature:nth-child(2) { display:none; }
 .epjico-content .strip-count { gap:10px; }.epjico-content .quick-strip p { font-size:11px; }.epjico-content .quick-strip .strip-number { font-size:35px; }.epjico-content .quick-strip .strip-link { font-size:11px; }
 .epjico-content .products { padding:55px 0 40px; }.epjico-content .section-heading { display:block; margin-bottom:25px; }.epjico-content h2 { font-size:33px; }
 .epjico-content .section-heading>p { font-size:14px; margin-top:20px; }.epjico-content .section-heading>p br { display:none; }
 .epjico-content .product-grid { grid-template-columns:1fr; gap:14px; }.epjico-content .product-card { padding:24px; }.epjico-content .card-top { margin-bottom:17px; }
 .epjico-content .product-card h3 { font-size:28px; }.epjico-content .product-card .card-description { min-height:0; max-width:none; margin-bottom:20px; font-size:15px; }
 .epjico-content .card-bottom { font-size:12px; }.epjico-content .card-tag { font-size:11px; }
 .epjico-content .promise { padding:43px 0; }.epjico-content .promise-grid { grid-template-columns:1fr; gap:23px; }.epjico-content .promise h2 { font-size:32px; }
 .epjico-content .promise-list h3 { font-size:16px; }.epjico-content .promise-list p { font-size:14px; }
 .epjico-page #footer [data-row="middle"]>div { grid-template-columns:1fr; padding:35px 0 24px; gap:20px; }.epjico-page #footer [data-row="middle"] [data-column]:last-child { justify-content:start; }
 .epjico-page #footer [data-row="middle"] [data-column]:last-child>div { margin-left:0; }
 .epjico-page #header .epjico-call::after { display:none; }
 .epjico-page .epjico-footer-brand p { font-size:12px; }.epjico-page .footer-phone { font-size:26px; }
 .epjico-page #footer [data-row="bottom"]>div { grid-template-columns:1fr; gap:14px; }.epjico-page #footer .footer-menu-inline ul { gap:20px; }
}
@media(prefers-reduced-motion:no-preference) { html:has(body.epjico-page) { scroll-behavior:smooth; scroll-padding-top:30px; } }
@media(prefers-reduced-motion:reduce) { .epjico-content * { transition:none!important; } }
