*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:'Inter',system-ui,-apple-system,sans-serif;color:#0f172a;background:#fff;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:100%;max-width:1280px !important;margin:0 auto;padding:0 24px}
:root{--brand:#0b2a4a;--brand-deep:#071a33;--brand-light:#1f4373;--energy:#2a8cd8;--energy-glow:#5cb3f0;--orange:#3b82f6;--muted:#f5f7fa;--border:#e5e7eb;--text:#0f172a;--text-muted:#64748b}
/* TOP BAR */
.topbar{background:var(--brand-deep);color:#fff;font-size:12px}
.topbar .container{display:flex;align-items:center;justify-content:space-between;height:44px}
.topbar .search{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);padding:6px 12px;border-radius:4px;width:280px}
.topbar .search input{background:transparent;border:0;outline:0;color:#fff;font-size:12px;width:100%}
.topbar .links{display:flex;gap:24px;margin-left:auto}
.topbar a:hover{color:var(--energy-glow)}
/* HEADER */
.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border)}
.nav{display:flex;align-items:center;justify-content:space-between;height:7rem}
.nav .logo{height:5rem;max-height:5rem;width:100%}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
.nav .navlink{padding:10px 14px;font-size:14px;font-weight:600;color:var(--brand-deep);display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.nav .navlink:hover{color:var(--energy)}
.nav .navlink::after{content:"▾";font-size:10px;opacity:.6;margin-left:2px}
/* MEGA MENU */
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--border);box-shadow:0 20px 40px -15px rgba(0,0,0,.15);display:none;z-index:60}
.mega-inner{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;padding:40px 0}
.mega-feat{grid-column:span 4;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.mega-feat img{aspect-ratio:16/10;object-fit:cover;width:100%}
.mega-feat .body{padding:18px}
.mega-feat h4{margin:0;font-size:14px;color:var(--brand);font-weight:700}
.mega-feat p{margin:8px 0 0;font-size:12px;color:var(--text-muted)}
.mega-cols{grid-column:span 8;display:grid;grid-template-columns:1fr 1fr;gap:32px}
.mega-cols.full{grid-column:span 12}
.mega-cols h5{margin:0 0 14px;font-size:11px;letter-spacing:.15em;font-weight:700;text-transform:uppercase;color:var(--energy)}
.mega-cols ul{display:block}
.mega-cols li{margin-bottom:14px}
.mega-cols a{display:block}
.mega-cols .lbl{font-size:14px;font-weight:600;color:var(--brand)}
.mega-cols a:hover .lbl{color:var(--energy)}
.mega-cols .desc{font-size:12px;color:var(--text-muted);margin-top:2px}
li:hover .mega{display:block}
/* HERO */
.hero{background:linear-gradient(135deg,#071a33 0%,#0b2a4a 50%,#1f4373 100%);color:#fff;padding:80px 0 100px}
.hero .eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--energy-glow)}
.hero h1{font-size:52px;font-weight:700;line-height:1.05;margin:16px 0 0;max-width:800px}
.hero p{margin-top:24px;font-size:18px;color:rgba(255,255,255,.75);max-width:640px}
.hero .actions{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:0}
.btn-primary{background:linear-gradient(135deg,#2a8cd8,#5cb3f0);color:#fff;box-shadow:0 0 30px rgba(42,140,216,.4)}
.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}
/* SECTION */
.section{padding:80px 0}
.section.muted{background:var(--muted)}
.section h2{font-size:36px;font-weight:700;color:var(--brand);margin:0 0 16px;line-height:1.15}
.section .lead{font-size:18px;color:var(--text-muted);max-width:700px;margin-bottom:48px}
/* GRID CARDS */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:box-shadow .3s, transform .3s}
.card:hover{box-shadow:0 20px 40px -15px rgba(0,0,0,.15)}
.card .img{aspect-ratio:16/10;overflow:hidden}
.card .img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .img img{transform:scale(1.05)}
.card .body{padding:24px}
.card h3{margin:0;font-size:18px;color:var(--brand);font-weight:600}
.card p{margin:12px 0 0;font-size:14px;color:var(--text-muted);line-height:1.6}
.card .cta{margin-top:16px;display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--energy)}
/* DETAIL */
.detail-hero{background:linear-gradient(135deg,#071a33 0%,#0b2a4a 50%,#1f4373 100%);color:#fff;padding:80px 0}
.back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--energy-glow);margin-bottom:24px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.detail-img{aspect-ratio:4/3;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px -20px rgba(11,42,74,.35)}
.detail-img img{width:100%;height:100%;object-fit:cover}
.meta-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding:14px 0;font-size:14px}
.meta-row .k{font-weight:600;color:var(--brand)}
.meta-row .v{color:var(--text-muted)}
.section-block{margin-top:48px}
.section-block h2{font-size:28px;color:var(--brand);font-weight:700;margin:0 0 16px}
.section-block p{color:var(--text-muted);margin:0 0 16px;line-height:1.7}
.bullets{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.bullets li{list-style:none;display:flex;gap:8px;font-size:14px;color:var(--text-muted)}
.bullets li::before{content:"✓";color:var(--energy);font-weight:700;flex-shrink:0}
.feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.feat-card{padding:24px;border:1px solid var(--border);border-radius:12px;background:#fff}
.feat-card h3{margin:0;font-size:16px;color:var(--brand);font-weight:600}
.feat-card p{margin:8px 0 0;font-size:14px;color:var(--text-muted)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tag{padding:8px 16px;border:1px solid var(--border);background:var(--muted);border-radius:999px;font-size:13px;color:var(--brand)}
.specs{margin-top:16px;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.spec-row{display:grid;grid-template-columns:1fr 1fr;padding:14px 24px;font-size:14px}
.spec-row:nth-child(odd){background:#f9fafb}
.spec-row .k{font-weight:600;color:var(--brand)}
.spec-row .v{color:var(--text-muted)}
.cta-banner{margin-top:48px;background:linear-gradient(135deg,#071a33 0%,#0b2a4a 50%,#1f4373 100%);color:#fff;border-radius:16px;padding:48px}
.cta-banner h2{color:#fff;margin:0 0 12px;font-size:28px}
.cta-banner p{color:rgba(255,255,255,.75);max-width:600px;margin:0 0 24px}
/* FOOTER */
footer{background:var(--brand-deep);color:#fff;padding:64px 0 24px}
.foot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.foot-grid h4{font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 16px}
.foot-grid ul{list-style:none;padding:0;margin:0}
.foot-grid li{margin:8px 0;font-size:14px;color:rgba(255,255,255,.7)}
.foot-grid a:hover{color:var(--energy-glow)}
.foot-logo{/*background:rgba(255,255,255,.95);*/padding:6px 8px;border-radius:4px;display:inline-block}
.foot-logo img{height:10rem}
.foot-bottom{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;font-size:12px;color:rgba(255,255,255,.5);flex-wrap:wrap;gap:12px}
.foot-bottom a{margin-left:24px}
@media(max-width:900px){
  .grid-2,.grid-3,.grid-4,.detail-grid,.foot-grid,.bullets,.feat-grid{grid-template-columns:1fr}
  .hero h1{font-size:36px}
  .nav ul{display:none}
  .topbar .search{display:none}
}

/* Keep header spacing identical across home + inner pages */
body .topbar{min-height:44px !important}
body .topbar .container{
  height:44px !important;
  min-height:44px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
body .header{
  min-height:135px !important;
}
body .header .nav{
  height:135px !important;
  min-height:135px !important;
  align-items:center !important;
}
body .header .nav .logo{
  height:135px !important;
  width:auto !important;
  max-height:none !important;
}
body .header .nav .custom-logo-link .custom-logo{
  height:135px !important;
  width:auto !important;
  max-height:none !important;
}
body .header .nav > a{
  display:flex !important;
  align-items:center !important;
  height:100% !important;
}

/* Max Mega Menu skin override to match original HTML header/mega style */
#mega-menu-wrap-primary {
  background: transparent;
}
#mega-menu-wrap-primary .mega-menu-toggle {
  display: none;
}
#mega-menu-wrap-primary #mega-menu-primary {
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
  height: 44px !important;
  line-height: 24px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
  color: #071a33;
  text-transform: none;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transition: color .2s ease !important;
  text-rendering: geometricPrecision;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link {
  color: #2a8cd8 !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
  transform: none !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
  margin: 0 !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-menu-megamenu > ul.mega-sub-menu {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  transform: none !important;
  margin: 0 !important;
  top: 156px !important;
  padding: 6px 0 !important;
  border-top: 1px solid #e5e7eb;
  box-shadow: 0 20px 40px -15px rgba(0,0,0,.15);
  background: #fff !important;
  z-index: 9999 !important;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu .mega-menu-row {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 6px !important;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu .mega-menu-column {
  padding: 0 3px !important;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item .mega-block-title,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item .mega-menu-link {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu .mega-block-title {
  margin: 0 0 6px;
  font-size: 11px;
  letter-spacing: .15em;
  font-weight: 700;
  text-transform: uppercase;
  color: #2a8cd8;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu a.mega-menu-link {
  padding: 3px 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: #0b2a4a;
  background: transparent !important;
  border: 0 !important;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu a.mega-menu-link:hover {
  color: #2a8cd8 !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu .mega-sub-menu .widget_media_image img {
  border-radius: 12px;
  border: 1px solid #e5e7eb;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu {
  min-width: 280px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 20px 40px -15px rgba(0,0,0,.15);
  background: #fff;
  padding: 10px 14px;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
  padding: 8px 6px !important;
  font-size: 14px;
  color: #0b2a4a;
  background: transparent !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
  background: #f5f7fa !important;
  color: #2a8cd8 !important;
}
#mega-menu-wrap-primary .mega-indicator::after {
  background: transparent !important;
}
#mega-menu-wrap-primary .mega-menu-item::before,
#mega-menu-wrap-primary .mega-menu-item::after {
  display: none !important;
}
.contact_page_form {box-shadow: 0 20px 60px -20px rgba(20, 30, 50, 0.35);}
.contact_page_form form.wpcf7-form > p {
    /*display: flex;
    flex-direction: column;
    gap: 12px;*/
    padding-top: 10px;
}
.contact_page_form form.wpcf7-form .wpcf7-form-control{
    padding: 12px;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    width: 100%;
}

.contact_page_form form.wpcf7-form .wpcf7-response-output {
    margin: 1em 0.5em 1em;
    padding: 0.2em 1em;
}
.wpcf7-spinner {
    position: absolute;
    top: 50%;
    left: 50%; 
    transform: translate(-50%, -50%)
}
.cf7-submit { position: relative}
.page-template-page-contact .section .contact_page_form .grid, .single-solution .section .contact_page_form .grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

@media (max-width: 768px) {
  .page-template-page-contact .section .contact_page_form .grid,.single-solution .section .contact_page_form .grid {
    grid-template-columns: 1fr;
  }
}

.page-template-page-contact .section .grid,.single-solution .section .grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 40px;
}

@media (max-width: 768px) {
  .page-template-page-contact .section .grid, .single-solution .section .grid {
    grid-template-columns: 1fr;
  }
}

.single-solution .section .heading {
  font-size: 32px;
  font-weight: bold;
}
.single-solution .section .sub_heading {
  margin:0 0 5px;color:#5b6577;font-size: 18px;
}
/* LEFT SIDE */
.page-template-page-contact .section.contact_page_ds .heading {
  font-size: 42px;
  font-weight: bold;
  margin-bottom: 40px;
}

.page-template-page-contact .section.contact_page_ds .contact-item {
  display: flex;
  gap: 15px;
  margin-bottom: 25px;
}

.page-template-page-contact .section.contact_page_ds .icon {
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #2a8cd8, #5cb3f0);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  font-size: 18px;
}

.page-template-page-contact .section.contact_page_ds .label {
  font-size: 11px;
  text-transform: uppercase;
  color: #6b7280;
  letter-spacing: 1px;
}

.page-template-page-contact .section.contact_page_ds .value {
  font-size: 14px;
  font-weight: 600;
}

/* FORM */
.page-template-page-contact .section.contact_page_ds .form-box {
  border: 1px solid #e5e7eb;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.05);
}

.page-template-page-contact .section.contact_page_ds .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

@media (max-width: 768px) {
  .page-template-page-contact .section.contact_page_ds .form-grid {
    grid-template-columns: 1fr;
  }
}

.page-template-page-contact .section.contact_page_ds .contact_page_form label {
  font-size: 12px;
  text-transform: uppercase;
  margin-bottom: 8px;
  color: #6b7280;
  letter-spacing: 1px;
  display: flex;
}
.page-template-page-contact .section.contact_page_ds .contact_page_form .cf7-submit{padding: 15px}
.page-template-page-contact .section.contact_page_ds .contact_page_form .cf7-submit .wpcf7-submit{width: 150px;padding: 15px;}
footer .footer-contact-widget .wp-block-list li {display: flex;flex-direction: row;align-items: center;gap: 10px;}
footer .footer-contact-widget .wp-block-list li img {width: 20px;height: 20px;}
.foot-bottom #menu-footer-legal li {display: inline-block;}


/* ARCHIVE PAGINATION */
.navigation.pagination {
  margin-top: 28px;
}
.navigation.pagination .nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.navigation.pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: var(--brand-deep);
  font-size: 14px;
  font-weight: 600;
  transition: all .2s ease;
}
.navigation.pagination .page-numbers:hover {
  border-color: var(--energy);
  color: var(--energy);
  box-shadow: 0 10px 24px -16px rgba(42, 140, 216, .6);
}
.navigation.pagination .page-numbers.current {
  background: linear-gradient(135deg, var(--brand-deep), var(--brand));
  border-color: var(--brand-deep);
  color: #fff;
}
.navigation.pagination .page-numbers.prev,
.navigation.pagination .page-numbers.next {
  min-width: auto;
  padding: 0 16px;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 12px;
}

/* Search results pagination alignment */
body.search .navigation.pagination,
body.search .posts-navigation,
body.search .post-navigation {
  width: 100%;
}
body.search .navigation.pagination .nav-links,
body.search .posts-navigation .nav-links,
body.search .post-navigation .nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

/* PRODUCT ARCHIVE PAGE (scoped) */
.pp-products-page { font-family: 'Inter', system-ui, -apple-system, sans-serif; background:#fff; color:#0b2a4a; }
.pp-products-page .pp-products-wrap { max-width:1280px; margin:0 auto; padding:0 40px; }
.pp-products-page .pp-products-top { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:30px; padding-top:60px; }
.pp-products-page .pp-products-top small { color:#1ba3c6; font-weight:700; font-size:11px; text-transform:uppercase; display:block; margin-bottom:8px; }
.pp-products-page .pp-products-top h2 { font-size:28px; margin:0; font-weight:700; color:#071a33; }
.pp-products-page .pp-product-filters { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.pp-products-page .pp-product-filter-btn { padding:8px 16px; border:1px solid #e2e8f0; background:#fff; font-size:11px; font-weight:700; color:#64748b; text-transform:uppercase; border-radius:2px; }
.pp-products-page .pp-product-filter-btn.active { background:#071a33; color:#fff; border-color:#071a33; }
.pp-products-page .pp-product-filter-btn.is-loading { opacity:.7; pointer-events:none; }
.pp-products-page .pp-products-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; margin-bottom:70px; }
.pp-products-page .pp-product-card { background:#fff; border:1px solid #e2e8f0; display:flex; flex-direction:column; border-radius:2px; overflow:hidden; transition:all .3s ease; }
.pp-products-page .pp-product-card:hover { transform:translateY(-4px); box-shadow:0 20px 25px -5px rgba(0,0,0,.1); }
.pp-products-page .pp-product-img { position:relative; }
.pp-products-page .pp-product-img img { width:100%; height:210px; object-fit:cover; display:block; }
.pp-products-page .pp-product-tags { position:absolute; top:12px; left:12px; right:12px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
.pp-products-page .pp-product-tag { background:#00add7; color:#fff; font-size:10px; padding:5px 10px; font-weight:800; text-transform:uppercase; border-radius:2px; }
.pp-products-page .pp-product-tag-power { background:#071a33; color:#fff; }
.pp-products-page .pp-product-tag-status-occupied { background:#f59e0b; color:#111827; }
.pp-products-page .pp-product-tag-status-sold { background:#ef4444; color:#fff; }
.pp-products-page .pp-product-body { padding:25px; flex-grow:1; display:flex; flex-direction:column; }
.pp-products-page .pp-product-cat { font-size:11px; color:#00add7; font-weight:700; text-transform:uppercase; margin-bottom:10px; }
.pp-products-page .pp-product-title { font-size:18px; margin:0 0 15px; color:#071a33; font-weight:700; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.pp-products-page .pp-product-desc { font-size:14px; color:#64748b; line-height:1.6; margin-bottom:20px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.pp-products-page .pp-product-meta { margin:-4px 0 18px; border-top:1px solid #e2e8f0; border-bottom:1px solid #e2e8f0; padding:12px 0; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.pp-products-page .pp-product-meta-item { display:flex; flex-direction:column; gap:4px; min-width:0; }
.pp-products-page .pp-product-meta-label { font-size:12px; color:#64748b; font-weight:500; letter-spacing:1.2px; text-transform:uppercase; line-height:1.2; }
.pp-products-page .pp-product-meta-value { font-size:12px; color:#071a33; font-weight:500; line-height:1.25; }
.pp-products-page .pp-product-buttons { display:flex; gap:12px; margin-top:auto; }
.pp-products-page .pp-product-btn { flex:1; padding:12px; font-size:11px; font-weight:800; text-transform:uppercase; border-radius:4px; text-align:center; }
.pp-products-page .pp-product-btn-outline { background:#fff; border:1.5px solid #071a33; color:#071a33; }
.pp-products-page .pp-product-btn-outline:hover { background:#001425; border-color:#001425; color:#fff; }
.pp-products-page .pp-product-btn-primary { background:#00add7; border:1.5px solid #00add7; color:#fff; }
.pp-products-page .pp-products-cta { background:linear-gradient(115deg, #001a2c 0%, #001a2c 45%, #ffffff 150%); padding:100px 0; color:#fff; }
.pp-products-page .pp-products-cta-flex { display:flex; justify-content:space-between; align-items:center; width:100%; }
.pp-products-page .pp-products-cta small { color:#00add7; font-weight:800; text-transform:uppercase; letter-spacing:1.5px; font-size:12px; margin-bottom:20px; display:block; }
.pp-products-page .pp-products-cta h2 { font-size:42px; margin:0 0 20px; font-weight:800; line-height:1.2; }
.pp-products-page .pp-products-cta .pp-products-cta-flex > div h2 { max-width: 24ch; }
.pp-products-page .pp-products-cta p { color:#e2e8f0; margin:0; font-size:18px; max-width:600px; line-height:1.5; }
.pp-products-page .pp-products-cta-btn { background:#00add7; color:#fff; padding:16px 35px; border:none; font-weight:800; font-size:13px; text-transform:uppercase; border-radius:4px; display:inline-flex; align-items:center; gap:10px; white-space:nowrap; flex-shrink:0; }
.pp-products-page .pp-products-pagination { margin:0 0 80px; }
.pp-products-page .pp-products-results.is-loading { opacity:.55; pointer-events:none; transition:opacity .2s ease; }
@media(max-width:900px){
  .pp-products-page .pp-products-grid{grid-template-columns:1fr 1fr;}
  .pp-products-page .pp-products-wrap{padding:0 24px;}
  .pp-products-page .pp-products-top{align-items:flex-start;gap:18px;flex-direction:column;}
  .pp-products-page .pp-product-filters{justify-content:flex-start;}
}
@media(max-width:600px){
  .pp-products-page .pp-products-grid{grid-template-columns:1fr;}
  .pp-products-page .pp-products-cta-flex{flex-direction:column; text-align:center; gap:30px;}
}

/* PRODUCT DETAIL PAGE (scoped) */
.pp-product-detail .detail-hero { padding-bottom: 70px; }
.pp-product-detail .pp-product-detail-tags { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
.pp-product-detail .pp-product-detail-status { background:#fbbf24; color:#1a2942; border:1px solid #fbbf24; font-weight:700; font-size:11px; text-transform:uppercase; letter-spacing:.1em; padding:7px 12px; border-radius:999px; }
.pp-product-detail .pp-product-detail-category { font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--energy-glow); align-self:center; }
.pp-product-detail .pp-product-detail-title { font-size:44px; margin:0; max-width:900px; line-height:1.1; color:#fff; }
.pp-product-detail .pp-product-detail-subtitle { margin-top:16px; color:rgba(255,255,255,.78); font-size:18px; max-width:700px; }
.pp-product-detail .pp-product-detail-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:32px; max-width:760px; }
.pp-product-detail .pp-product-detail-stats > div { border-left:2px solid var(--energy); padding-left:12px; }
.pp-product-detail .pp-product-detail-stats > div > div { font-size:11px; text-transform:uppercase; letter-spacing:.15em; color:rgba(255,255,255,.55); }
.pp-product-detail .pp-product-detail-stats > div > strong { margin-top:4px; font-size:14px; font-weight:600; display:block; color:#fff; }
.pp-product-detail .pp-product-detail-actions { margin-top:32px; display:flex; gap:12px; flex-wrap:wrap; }
.pp-product-detail .pp-product-detail-grid { display:grid; grid-template-columns:2fr 1fr; gap:48px; align-items:start; }
.pp-product-detail .pp-product-detail-image { aspect-ratio:16/10; }
.pp-product-detail .pp-product-gallery-main { position:relative; overflow:hidden; }
.pp-product-detail .pp-product-gallery-track { display:flex; width:100%; height:100%; transition:transform .45s ease; will-change:transform; }
.pp-product-detail .pp-product-gallery-slide { flex:0 0 100%; width:100%; height:100%; object-fit:cover; }
.pp-product-detail .pp-product-gallery-nav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:999px; border:1px solid #dbe3ea; background:rgba(255,255,255,.95); color:#0b2a4a; font-size:18px; font-weight:700; display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:2; }
.pp-product-detail .pp-product-gallery-nav.prev { left:14px; }
.pp-product-detail .pp-product-gallery-nav.next { right:14px; }
.pp-product-detail .pp-product-gallery-nav:hover { background:#00add7; border-color:#00add7; color:#fff; }
.pp-product-detail .pp-product-gallery-thumbs { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-top:14px; }
.pp-product-detail .pp-product-gallery-thumb { border:2px solid #dbe3ea; border-radius:4px; padding:0; background:#fff; overflow:hidden; cursor:pointer; opacity:.9; }
.pp-product-detail .pp-product-gallery-thumb img { width:100%; height:78px; object-fit:cover; display:block; }
.pp-product-detail .pp-product-gallery-thumb.is-active { border-color:#00add7; opacity:1; }
.pp-product-detail .pp-product-detail-block { margin-top:48px; }
.pp-product-detail .pp-product-detail-block .eyebrow { color:var(--energy); font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
.pp-product-detail .pp-product-detail-content p { margin-top:14px; color:var(--text-muted); line-height:1.7; }
.pp-product-detail .pp-product-assurance-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.pp-product-detail .pp-product-assurance-card { border:1px solid #d7e0e8; border-radius:4px; background:#fff; padding:18px 20px; display:flex; gap:14px; align-items:flex-start; }
.pp-product-detail .pp-product-assurance-icon { width:42px; height:42px; border-radius:6px; background:#e7f5fb; color:#00add7; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.pp-product-detail .pp-product-assurance-icon i { line-height:1; }
.pp-product-detail .pp-product-assurance-card h3 { margin:0; color:#071a33; font-size:13px; line-height:1.25; font-weight:800; text-transform:uppercase; letter-spacing:.02em; }
.pp-product-detail .pp-product-assurance-card p { margin:8px 0 0; color:#475569; font-size:13px; line-height:1.55; }
.pp-product-detail .pp-product-detail-highlights { list-style:none; padding:0; margin:20px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pp-product-detail .pp-product-detail-highlights li { display:flex; gap:10px; border:1px solid var(--border); background:#fff; padding:14px; border-radius:8px; color:var(--brand); font-size:14px; }
.pp-product-detail .pp-product-detail-highlights li::before { content:"\2713"; color:var(--energy); font-weight:700; }
.pp-product-detail .pp-product-applications-grid { margin-top:20px; display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; }
.pp-product-detail .pp-product-application-item { display:flex; align-items:center; gap:12px; min-height:52px; border-radius:4px; background:#eaf0f5; border:1px solid #e2e8ef; padding:12px 16px; color:#071a33; font-size:16px; line-height:1.35; }
.pp-product-detail .pp-product-application-arrow { color:#00add7; font-size:20px; line-height:1; font-weight:700; flex-shrink:0; margin-top:-1px; }
.pp-product-detail .pp-product-detail-specs { margin-top:20px; border:1px solid var(--border); border-radius:8px; overflow:hidden; }
.pp-product-detail .pp-product-detail-specs table { width:100%; border-collapse:collapse; font-size:14px; }
.pp-product-detail .pp-product-detail-specs th { text-align:left; padding:14px 20px; font-weight:600; color:var(--brand); width:50%; }
.pp-product-detail .pp-product-detail-specs td { padding:14px 20px; color:var(--text-muted); }
.pp-product-detail .pp-product-detail-specs tr:nth-child(even) { background:var(--muted); }
.pp-product-detail .pp-product-detail-aside { display:flex; flex-direction:column; gap:24px; }
.pp-product-detail .pp-product-detail-card { border:1px solid var(--border); background:#fff; padding:24px; border-radius:12px; position:static; }
.pp-product-detail .pp-product-detail-card.is-fixed { position:fixed; top:96px; z-index:20; }
.pp-product-detail .pp-product-detail-card-spacer { display:none; }
.pp-product-detail .pp-product-detail-card h3 { margin:0; font-size:18px; color:var(--brand); }
.pp-product-detail .pp-product-detail-card p { margin-top:8px; font-size:14px; color:var(--text-muted); }
.pp-product-detail .pp-product-detail-card-actions { margin-top:18px; display:flex; flex-direction:column; gap:10px; }
.pp-product-detail .pp-product-detail-card-actions .btn { justify-content:center; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.pp-product-detail .pp-product-detail-card-actions .btn-outline { color:var(--brand); border-color:var(--brand); }
.pp-product-detail .pp-product-detail-facts { background:var(--muted); padding:24px; border-radius:12px; }
.pp-product-detail .pp-product-detail-facts h3 { margin:0; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:1px; color:var(--energy); }
.pp-product-detail .pp-product-detail-facts dl { margin:16px 0 0; font-size:14px; }
.pp-product-detail .pp-product-detail-facts dl > div { display:flex; justify-content:space-between; padding:8px 0; gap:8px; }
.pp-product-detail .pp-product-detail-facts dt { color:var(--text-muted); }
.pp-product-detail .pp-product-detail-facts dd { margin:0; font-weight:600; color:var(--brand); text-align:right; }
.pp-product-detail .pp-product-phone-email-enquiry { margin-top:24px;display:flex;flex-direction:column;gap:8px;font-size:14px; }
.pp-product-detail .pp-product-phone-email-enquiry .phone { color:var(--brand);display:flex;gap:8px;align-items:center; }
.pp-product-detail .pp-product-phone-email-enquiry .email { color:var(--brand);display:flex;gap:8px;align-items:center; }
@media(max-width:900px){
  .pp-product-detail .pp-product-detail-grid { grid-template-columns:1fr; }
  .pp-product-detail .pp-product-detail-stats { grid-template-columns:repeat(2,1fr); max-width:none; }
  .pp-product-detail .pp-product-detail-title { font-size:36px; }
  .pp-product-detail .pp-product-detail-card { position:static !important; }
  .pp-product-detail .pp-product-assurance-grid { grid-template-columns:1fr; }
  .pp-product-detail .pp-product-detail-highlights { grid-template-columns:1fr; }
  .pp-product-detail .pp-product-applications-grid { grid-template-columns:1fr; }
}
@media(max-width:600px){
  .pp-product-detail .pp-product-detail-stats { grid-template-columns:1fr; }
  .pp-product-detail .pp-product-gallery-thumbs { grid-template-columns:repeat(3,1fr); }
}

/* Product enquiry modal */
body.pp-modal-open { overflow: hidden; }
.pp-product-modal { position:fixed; inset:0; z-index:99999; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(7,26,51,.65); }
.pp-product-modal.is-open { display:flex; }
.pp-product-modal-card { width:100%; max-width:650px; max-height:88vh; overflow:auto; background:#fff; border-radius:12px; padding:22px 22px 20px; position:relative; border:1px solid #e2e8f0; }
.pp-product-modal-close { position:absolute; right:12px; top:10px; border:0; background:transparent; font-size:24px; line-height:1; color:#64748b; cursor:pointer; }
.pp-product-modal-card h3 { margin:0; font-size:36px; color:#071a33; font-weight:700; line-height:1.2; }
.pp-product-modal-card > p { margin:8px 0 14px; color:#5b6577; font-size:14px; max-width:680px; }
.pp-product-interest { margin: 8px 0 14px; }
.pp-product-interest-label { display:block; margin-bottom:8px; color:#071a33; font-weight:700; font-size:14px; }
.pp-product-interest-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px 12px; background:#f4f7fb; border:1px solid #d5dee8; border-radius:8px; padding:12px; }
.pp-product-interest-item { display:flex; align-items:flex-start; gap:8px; background:#fff; border:1px solid #dce5ef; border-radius:6px; padding:9px 10px; font-size:13px; color:#0f172a; }
.pp-product-interest-item input[type="radio"] { margin-top:0; accent-color:#00add7; }
.pp-product-interest-item:has(input[type="radio"]:checked) { border-color:#00add7; box-shadow:0 0 0 1px #00add7 inset; }
.pp-product-modal-form .grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.pp-product-modal-form label { display:flex; flex-direction:column; gap:6px; color:#071a33; font-weight:600; font-size:14px; }
.pp-product-modal-form .wpcf7-form-control { width:100%; border:1px solid #d5dee8; border-radius:8px; padding:11px 11px; font-size:14px; color:#0f172a; }
.pp-product-modal-form textarea.wpcf7-form-control { min-height:120px; resize:vertical; }
.pp-product-modal-form input.wpcf7-submit { margin-top:12px; margin-left:auto; display:inline-flex; background:#00add7; color:#fff; border:1px solid #00add7; border-radius:8px; padding:12px 22px; font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.03em; cursor:pointer; }
.pp-product-modal-form input.wpcf7-submit:hover { background:#0090b3; border-color:#0090b3; }
.pp-product-modal-form .wpcf7-spinner { display:block; margin:8px 0 0 auto; }
@media (max-width: 900px){
  .pp-product-modal-card { max-width:650px; }
  .pp-product-interest-grid { grid-template-columns:1fr; }
  .pp-product-modal-form .grid { grid-template-columns:1fr; }
}
.pp-products-page .pp-product-btn-primary svg.lucide.lucide-arrow-right.h-3.w-3 {
    width: calc(0.20rem * 8);
    height: calc(0.20rem * 4);
    vertical-align: middle;
    align-items: center;
}


.pp-product-modal-form .grid > div p {
    margin: 0;
}
.pp-product-interest-item:has(input[type="radio"]) {
    align-items: center;
    flex-direction: row;
    vertical-align: middle;
}
.mega-menu-item-type-custom.hidden {
    display: none !important;
}
