/* Premier Carbonic — shared styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: Helvetica, Arial, sans-serif; background: #ffffff; color: #1a2535; overflow-x: hidden; line-height: 1.5; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }

:root {
  --blue: #0070c0;
  --blue-dark: #005499;
  --blue-light: #e6f2fc;
  --green: #00b050;
  --green-dark: #009040;
  --green-light: #e6f5ec;
  --navy: #002D6B;
  --white: #ffffff;
  --off: #f7fafc;
  --gray: #6b7c8d;
  --gray-light: #e8eef4;
  --text: #1a2535;
  --text-mid: #3d5068;
}

/* TOP BAR */
.pc-topbar {
  background: var(--navy); padding: 6px 5%;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 12px; color: rgba(255,255,255,0.75);
}
.pc-topbar .right { display: flex; gap: 20px; }
.pc-topbar .right span { font-size: 11px; }

/* NAV */
.pc-nav {
  position: sticky; top: 0; z-index: 100;
  background: var(--white); border-bottom: 1px solid var(--gray-light);
  padding: 0 5%; display: flex; align-items: center; justify-content: space-between;
  height: 100px;
  box-shadow: 0 2px 12px rgba(0,85,165,0.06);
}
.pc-nav .logo img { height: 84px; }
.pc-nav-items { display: flex; align-items: center; gap: 2px; }
.pc-nav-items .item { position: relative; }
.pc-nav-items .item > a {
  padding: 10px 16px; display: flex; align-items: center; gap: 4px;
  color: var(--text-mid); font-size: 17px; font-weight: 500; border-radius: 6px;
  transition: all 0.2s;
}
.pc-nav-items .item:hover > a { background: var(--blue-light); color: var(--blue); }
.pc-nav-items .item.active > a { color: var(--blue); font-weight: 600; }
.pc-nav-items .arrow { font-size: 9px; opacity: 0.6; margin-top: 1px; }
.pc-nav-items .dropdown {
  position: absolute; top: 100%; left: 0; min-width: 230px;
  background: var(--white); border: 1px solid var(--gray-light);
  border-radius: 8px; padding: 6px 0; box-shadow: 0 12px 40px rgba(0,0,0,0.12);
  visibility: hidden; opacity: 0; transform: translateY(-5px);
  transition: all 0.15s; z-index: 10;
}
.pc-nav-items .item:hover .dropdown { visibility: visible; opacity: 1; transform: translateY(0); }
.pc-nav-items .dropdown a {
  display: flex; align-items: center; gap: 8px; padding: 10px 18px;
  font-size: 13.5px; color: var(--text-mid); transition: all 0.15s;
}
.pc-nav-items .dropdown a::before { content: '›'; color: var(--green); font-size: 16px; }
.pc-nav-items .dropdown a:hover { background: var(--blue-light); color: var(--blue); }

.pc-cta {
  background: var(--green); color: var(--white) !important;
  padding: 10px 22px; border-radius: 6px; font-size: 13px; font-weight: 700;
  letter-spacing: 0.04em; box-shadow: 0 4px 16px rgba(0,176,80,0.25);
  transition: all 0.2s;
}
.pc-cta:hover { background: var(--green-dark); }

/* Mobile menu toggle */
.pc-burger { display: none; background: none; border: none; padding: 8px; cursor: pointer; }
.pc-burger span { display: block; width: 24px; height: 2px; background: var(--text); margin: 5px 0; }

/* HEROES */
.pc-hero {
  position: relative; overflow: hidden; padding: 100px 5% 80px;
  background: linear-gradient(135deg, var(--navy) 0%, var(--blue-dark) 100%);
  color: white;
}
.pc-hero.dark-hero { background: linear-gradient(160deg, var(--navy) 0%, var(--blue-dark) 55%, #005c35 100%); min-height: 82vh; display: flex; align-items: center; }
.pc-hero .breadcrumb { font-size: 12px; color: rgba(255,255,255,0.55); margin-bottom: 16px; letter-spacing: 0.05em; }
.pc-hero h1 { font-size: clamp(40px, 6vw, 72px); font-weight: 900; line-height: 1; margin-bottom: 16px; letter-spacing: -0.01em; }
.pc-hero .sub { font-size: 17px; color: rgba(255,255,255,0.7); max-width: 580px; line-height: 1.7; }
.pc-hero .container { position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; width: 100%; }
.pc-hero .grid-bg {
  position: absolute; inset: 0; opacity: 0.05; pointer-events: none;
  background-image:
    linear-gradient(to right, white 1px, transparent 1px),
    linear-gradient(to bottom, white 1px, transparent 1px);
  background-size: 80px 80px;
}

/* HOME HERO */
.pc-home-hero h1 { font-size: clamp(48px, 7vw, 96px); line-height: 1; }
.pc-home-hero h1 span { display: block; margin-bottom: 0.35em; }
.pc-home-hero h1 .accent { color: #00e676; }
.pc-home-hero .badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(0,176,80,0.18); border: 1px solid rgba(0,176,80,0.45);
  border-radius: 100px; padding: 6px 16px; margin-bottom: 30px;
}
.pc-home-hero .badge .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 8px var(--green); }
.pc-home-hero .badge span { font-size: 11.5px; color: #7fffd4; letter-spacing: 0.1em; font-weight: 600; }
.pc-home-hero .sub { max-width: 540px; margin-bottom: 36px; }
.pc-home-hero .ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.pc-btn-primary {
  background: var(--green); color: white; padding: 14px 32px;
  border-radius: 6px; font-weight: 700; font-size: 14px; letter-spacing: 0.05em;
  box-shadow: 0 6px 24px rgba(0,176,80,0.35); transition: all 0.2s;
  display: inline-block; border: none;
}
.pc-btn-primary:hover { background: var(--green-dark); }
.pc-btn-outline {
  border: 1.5px solid rgba(255,255,255,0.4); color: white;
  padding: 14px 32px; border-radius: 6px; font-weight: 600;
  font-size: 14px; letter-spacing: 0.05em; transition: all 0.2s;
  display: inline-block;
}
.pc-btn-outline:hover { background: rgba(255,255,255,0.1); }
.pc-btn-blue {
  background: var(--blue); color: white; padding: 13px 28px;
  border-radius: 6px; font-weight: 700; font-size: 14px;
  letter-spacing: 0.04em; transition: all 0.2s; display: inline-block; border: none;
}
.pc-btn-blue:hover { background: var(--blue-dark); }
.pc-btn-green {
  background: var(--green); color: white; padding: 13px 28px;
  border-radius: 6px; font-weight: 700; font-size: 14px;
  letter-spacing: 0.04em; transition: all 0.2s; display: inline-block; border: none;
}
.pc-btn-green:hover { background: var(--green-dark); }

.pc-home-hero .stats { display: flex; gap: 48px; margin-top: 50px; padding-top: 38px; border-top: 1px solid rgba(255,255,255,0.12); flex-wrap: wrap; }
.pc-home-hero .stats .item .val { font-size: 42px; font-weight: 900; color: white; line-height: 1; }
.pc-home-hero .stats .item .lbl { font-size: 12px; color: white; margin-top: 5px; letter-spacing: 0.03em; }

/* SECTIONS */
.pc-section { padding: 80px 5%; }
.pc-section.off { background: var(--off); }
.pc-section .container { max-width: 1200px; margin: 0 auto; }
.pc-section h2 { font-size: clamp(28px, 3.5vw, 44px); font-weight: 800; color: var(--text); line-height: 1.1; margin-bottom: 16px; }
.pc-section .lead { font-size: 16px; color: var(--text-mid); line-height: 1.8; max-width: 720px; }

.pc-label {
  display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px;
  font-size: 11px; letter-spacing: 0.14em; font-weight: 700; text-transform: uppercase;
  color: var(--green);
}
.pc-label::before { content: ''; width: 28px; height: 3px; background: currentColor; border-radius: 2px; }
.pc-label.blue { color: var(--blue); }

/* TRUST BAND */
.pc-trust { background: var(--blue-light); padding: 18px 5%; border-bottom: 1px solid var(--gray-light); }
.pc-trust .row { display: flex; align-items: center; gap: 40px; justify-content: center; flex-wrap: wrap; }
.pc-trust .label { font-size: 11px; letter-spacing: 0.12em; color: var(--gray); text-transform: uppercase; font-weight: 600; }
.pc-trust .cert { font-size: 15px; font-weight: 700; color: var(--blue); letter-spacing: 0.04em; }

/* PRODUCT GRID */
.pc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; }
.pc-card {
  background: white; border: 1.5px solid var(--gray-light); border-radius: 10px;
  padding: 32px 28px; transition: all 0.3s; box-shadow: 0 2px 12px rgba(0,0,0,0.04);
  display: block; color: inherit;
}
.pc-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,85,165,0.12); border-color: var(--blue); }
.pc-card.green:hover { border-color: var(--green); box-shadow: 0 12px 32px rgba(0,176,80,0.12); }
.pc-card .icon { margin-bottom: 16px; }
.pc-card h3 { font-size: 20px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.pc-card p { font-size: 14px; color: var(--gray); line-height: 1.7; }
.pc-card .more { display: inline-block; margin-top: 20px; font-size: 13px; font-weight: 600; color: var(--blue); }
.pc-card.green .more { color: var(--green); }

/* STATS BAND */
.pc-stats-band { background: linear-gradient(135deg, var(--blue) 0%, var(--green) 100%); padding: 72px 5%; color: white; }
.pc-stats-band .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; max-width: 1100px; margin: 0 auto; }
.pc-stats-band .item { text-align: center; }
.pc-stats-band .item .val { font-size: clamp(44px, 5vw, 62px); font-weight: 900; line-height: 1; }
.pc-stats-band .item .lbl { font-size: 14px; font-weight: 600; margin-top: 8px; letter-spacing: 0.03em; }
.pc-stats-band .item .sub { font-size: 12px; opacity: 0.7; margin-top: 4px; }

/* STRENGTH CARDS */
.pc-strengths { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 24px; }
.pc-strengths .item { background: white; border: 1px solid var(--gray-light); border-radius: 10px; padding: 28px 24px; }
.pc-strengths .item.blue { border-top: 3px solid var(--blue); }
.pc-strengths .item.green { border-top: 3px solid var(--green); }
.pc-strengths .item .icon { margin-bottom: 14px; }
.pc-strengths .item h3 { font-size: 19px; font-weight: 700; margin-bottom: 8px; }
.pc-strengths .item p { font-size: 14px; color: var(--gray); line-height: 1.7; }

/* INDUSTRIES */
.pc-pills { display: flex; flex-wrap: wrap; gap: 12px; }
.pc-pill { padding: 10px 20px; border-radius: 100px; background: var(--blue-light); color: var(--blue); font-size: 13px; font-weight: 600; border: 1px solid rgba(0,112,192,0.15); }

/* TABS */
.pc-tabs { border-bottom: 2px solid var(--gray-light); margin-bottom: 28px; display: flex; gap: 4px; flex-wrap: wrap; }
.pc-tab-btn {
  padding: 11px 24px; border: none; background: transparent; font-family: inherit;
  font-size: 14px; font-weight: 500; color: var(--gray);
  border-bottom: 2px solid transparent; margin-bottom: -2px; transition: all 0.2s;
}
.pc-tab-btn.active { color: var(--blue); border-color: var(--blue); font-weight: 700; }
.pc-tab-btn.active.green { color: var(--green); border-color: var(--green); }
.pc-tab-content { display: none; }
.pc-tab-content.active { display: block; }

/* INFO CARD */
.pc-info-card { background: white; border: 1px solid var(--gray-light); border-radius: 10px; padding: 28px 24px; }
.pc-info-card h3 { font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 14px; padding-bottom: 10px; border-bottom: 2px solid var(--green); }
.pc-info-card.blue h3 { border-bottom-color: var(--blue); }
.pc-info-card .item { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; }
.pc-info-card .check { color: var(--green); font-weight: 700; font-size: 15px; margin-top: 1px; flex-shrink: 0; }
.pc-info-card.blue .check { color: var(--blue); }
.pc-info-card .item span:last-child { font-size: 14px; color: var(--text-mid); line-height: 1.6; }

/* SPEC TABLE */
.pc-spec-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.pc-spec-table thead { background: var(--blue-light); }
.pc-spec-table th {
  padding: 10px 16px; text-align: left; color: var(--blue);
  font-weight: 700; font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase;
  border: 1px solid var(--gray-light);
}
.pc-spec-table td { padding: 9px 16px; border: 1px solid var(--gray-light); }
.pc-spec-table tr:nth-child(odd) td { background: var(--off); }
.pc-spec-table .k { color: var(--text); font-weight: 500; }
.pc-spec-table .v { color: var(--text-mid); }

/* CTA BAND */
.pc-cta-band { background: linear-gradient(135deg, var(--blue) 0%, var(--green) 100%); padding: 52px 5%; text-align: center; color: white; }
.pc-cta-band h2 { font-size: clamp(28px, 4vw, 44px); font-weight: 800; margin-bottom: 14px; color: white; }
.pc-cta-band p { font-size: 15px; opacity: 0.9; margin-bottom: 28px; }
.pc-cta-band .ctas { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.pc-cta-band .btn-white { background: white; color: var(--blue); padding: 13px 30px; border-radius: 6px; font-weight: 700; font-size: 14px; letter-spacing: 0.04em; }
.pc-cta-band .btn-tr { background: rgba(255,255,255,0.15); color: white; border: 1.5px solid rgba(255,255,255,0.5); padding: 13px 30px; border-radius: 6px; font-weight: 600; font-size: 14px; letter-spacing: 0.04em; }

/* FOOTER */
.pc-footer { background: var(--navy); color: white; padding: 64px 5% 32px; }
.pc-footer .container { max-width: 1200px; margin: 0 auto; }
.pc-footer .grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: 48px; margin-bottom: 48px; }
.pc-footer h4 { font-size: 11px; letter-spacing: 0.12em; color: var(--green); font-weight: 700; margin-bottom: 18px; text-transform: uppercase; }
.pc-footer .brand .logo { font-size: 22px; font-weight: 800; margin-bottom: 14px; letter-spacing: 0.02em; }
.pc-footer .brand p { font-size: 13.5px; color: rgba(255,255,255,0.6); line-height: 1.8; max-width: 300px; }
.pc-footer .brand .certs { margin-top: 20px; display: flex; gap: 10px; flex-wrap: wrap; }
.pc-footer .brand .certs span { font-size: 10px; padding: 4px 10px; border-radius: 100px; border: 1px solid rgba(255,255,255,0.2); color: rgba(255,255,255,0.6); letter-spacing: 0.06em; }
.pc-footer .links a { display: block; font-size: 13.5px; color: rgba(255,255,255,0.6); margin-bottom: 10px; transition: color 0.2s; }
.pc-footer .links a:hover { color: white; }
.pc-footer .contact .item { display: flex; gap: 10px; margin-bottom: 12px; align-items: flex-start; }
.pc-footer .contact .item .ico { font-size: 14px; margin-top: 2px; }
.pc-footer .contact .item span { font-size: 12.5px; color: rgba(255,255,255,0.6); line-height: 1.6; }
.pc-footer .bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 24px; display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: rgba(255,255,255,0.4); }

/* FORM */
.pc-form { display: flex; flex-direction: column; gap: 16px; }
.pc-form .row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pc-form label { font-size: 11px; letter-spacing: 0.08em; color: var(--gray); text-transform: uppercase; display: block; margin-bottom: 6px; font-weight: 600; }
.pc-form input, .pc-form select, .pc-form textarea {
  width: 100%; padding: 12px 16px; border-radius: 6px;
  border: 1.5px solid var(--gray-light); background: white;
  color: var(--text); font-size: 14px; font-family: inherit; outline: none;
  transition: border-color 0.2s;
}
.pc-form input:focus, .pc-form select:focus, .pc-form textarea:focus { border-color: var(--blue); }
.pc-form textarea { min-height: 130px; resize: vertical; }
.pc-form button { background: var(--blue); color: white; border: none; padding: 14px 32px; border-radius: 6px; font-size: 14px; font-weight: 700; cursor: pointer; letter-spacing: 0.05em; transition: all 0.3s; box-shadow: 0 6px 20px rgba(0,112,192,0.25); }
.pc-form button:hover { background: var(--blue-dark); }
.pc-form button.sent { background: var(--green); }

/* CONTACT BLOCK */
.pc-contact-block { padding: 20px 24px; background: var(--off); border-radius: 10px; border-left: 4px solid var(--green); margin-bottom: 20px; }
.pc-contact-block .hd { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 17px; font-weight: 700; color: var(--text); }
.pc-contact-block .ln { font-size: 13.5px; color: var(--text-mid); line-height: 1.9; }

/* TIMELINE */
.pc-timeline { display: flex; flex-direction: column; gap: 0; }
.pc-timeline .decade { display: grid; grid-template-columns: 220px 1fr; gap: 40px; padding: 40px 0; border-bottom: 1px dashed var(--gray-light); }
.pc-timeline .decade:last-child { border-bottom: none; }
.pc-timeline .decade-head { position: sticky; top: 90px; align-self: start; }
.pc-timeline .decade-head .label { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.pc-timeline .decade-head .dot { width: 8px; height: 8px; border-radius: 50%; }
.pc-timeline .decade-head .title { font-size: 28px; font-weight: 900; color: var(--text); line-height: 1.05; margin-bottom: 8px; }
.pc-timeline .decade-head .bar { width: 48px; height: 3px; }
.pc-timeline .events { display: flex; flex-direction: column; gap: 14px; }
.pc-timeline .event { background: white; border: 1px solid var(--gray-light); border-radius: 8px; padding: 18px 22px; display: grid; grid-template-columns: 70px 1fr 40px; gap: 16px; align-items: center; }
.pc-timeline .event.blue { border-left: 4px solid var(--blue); }
.pc-timeline .event.green { border-left: 4px solid var(--green); }
.pc-timeline .event .year { font-size: 22px; font-weight: 900; line-height: 1; }
.pc-timeline .event.blue .year { color: var(--blue); }
.pc-timeline .event.green .year { color: var(--green); }
.pc-timeline .event .text { font-size: 14px; color: var(--text-mid); line-height: 1.55; }

/* MISC */
.pc-divider { width: 60px; height: 3px; background: var(--green); border-radius: 2px; margin-bottom: 24px; }

@media (max-width: 1024px) {
  .pc-nav-items { display: none; }
  .pc-burger { display: block; }
  .pc-nav-items.open {
    display: flex; flex-direction: column; position: absolute; top: 100%;
    left: 0; right: 0; background: white; border-bottom: 1px solid var(--gray-light);
    padding: 8px 5%; gap: 0; box-shadow: 0 12px 32px rgba(0,0,0,0.08);
  }
  .pc-nav-items.open .item { width: 100%; }
  .pc-nav-items.open .item > a { padding: 12px 14px; width: 100%; }
  .pc-nav-items.open .dropdown { position: static; visibility: visible; opacity: 1; transform: none; box-shadow: none; border: none; padding: 0 0 0 16px; }
  .pc-footer .grid { grid-template-columns: 1fr 1fr; }
  .pc-timeline .decade { grid-template-columns: 1fr; gap: 20px; }
  .pc-timeline .decade-head { position: static; }
}
@media (max-width: 700px) {
  .pc-topbar .right { display: none; }
  .pc-form .row { grid-template-columns: 1fr; }
  .pc-footer .grid { grid-template-columns: 1fr; }
  .pc-footer .bottom { flex-direction: column; gap: 10px; text-align: center; }
  .pc-timeline .event { grid-template-columns: 70px 1fr; }
  .pc-timeline .event .icon { display: none; }
}

/* LOCATIONS MAP */
.pc-map-sec{background:var(--navy);color:#fff}
.pc-map-head{text-align:center;max-width:760px;margin:0 auto 28px}
.pc-map-head h2{color:#fff;font-size:clamp(28px,3.6vw,44px);font-weight:800;letter-spacing:-.01em;margin-bottom:12px}
.pc-map-head p{font-size:16px;color:rgba(255,255,255,.8);line-height:1.6}
.pc-map-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.pc-map-tabs button{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;padding:9px 18px;border-radius:999px;font-size:13px;font-weight:600;transition:all .2s}
.pc-map-tabs button:hover{border-color:#fff}
.pc-map-tabs button.on{background:#fff;color:var(--navy);border-color:#fff}
.pc-map-tabs i,.pc-state i{display:inline-block;width:10px;height:10px;flex:none}
i.pl{border-radius:50%;background:#2f9bff;border:2px solid #fff}
i.pg{border-radius:50%;background:var(--green);border:2px solid #fff}
.pc-map-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:center}
.pc-map-wrap{position:relative}
#pc-map{display:block;width:100%;height:auto;overflow:visible}
#pc-map .dots .in{fill:rgba(255,255,255,.26)}
#pc-map .dots .out{fill:rgba(255,255,255,.09)}
#pc-map .pt{cursor:pointer;transition:opacity .25s;outline:none}
#pc-map .pt .core{fill:#2f9bff;stroke:#fff;stroke-width:1.6}
#pc-map .pt .ring{fill:none;stroke:#2f9bff;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:pc-pulse 2.8s ease-out infinite}
#pc-map .pt.pgf .core{fill:var(--green)}#pc-map .pt.pgf .ring{stroke:var(--green)}
#pc-map .pt:hover .core,#pc-map .pt:focus .core,#pc-map .pt:hover rect{stroke-width:3}
@keyframes pc-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.4);opacity:0}}
#pc-map .labs text{fill:#fff;font-size:13px;font-weight:600;paint-order:stroke;stroke:var(--navy);stroke-width:4px;pointer-events:none;opacity:0;transition:opacity .25s}
#pc-map[data-f="plant"] .pt.pgf,#pc-map[data-f="pgf"] .pt.plant{opacity:.1;pointer-events:none}
#pc-map[data-st="TN"] .pt:not(.s-TN){opacity:.15}#pc-map[data-st="TN"] .labs .s-TN{opacity:1}#pc-map[data-st="KA"] .pt:not(.s-KA){opacity:.15}#pc-map[data-st="KA"] .labs .s-KA{opacity:1}#pc-map[data-st="AP"] .pt:not(.s-AP){opacity:.15}#pc-map[data-st="AP"] .labs .s-AP{opacity:1}#pc-map[data-st="OD"] .pt:not(.s-OD){opacity:.15}#pc-map[data-st="OD"] .labs .s-OD{opacity:1}#pc-map[data-st="KL"] .pt:not(.s-KL){opacity:.15}#pc-map[data-st="KL"] .labs .s-KL{opacity:1}
.pc-map-tip{position:absolute;transform:translate(-50%,calc(-100% - 16px));background:#fff;color:var(--text);padding:9px 13px;border-radius:8px;font-size:12.5px;line-height:1.45;white-space:nowrap;box-shadow:0 8px 24px rgba(0,0,0,.3);pointer-events:none;opacity:0;transition:opacity .15s;z-index:2}
.pc-map-tip.on{opacity:1}
.pc-map-tip strong{display:block;color:var(--blue);font-size:14px}
.pc-states{display:grid;gap:10px}
.pc-state{display:block;width:100%;text-align:left;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:16px 18px;color:#fff;font:inherit;transition:background .2s,border-color .2s}
.pc-state:hover,.pc-state.on{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4)}
.pc-state.pin{border-color:var(--green)}
.pc-state .hd{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.pc-state h4{font-size:16px;font-weight:700}
.pc-state .tpd{font-size:22px;font-weight:800;color:var(--green);white-space:nowrap}
.pc-state .tpd small{font-size:11px;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.7)}
.pc-state .ct{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:rgba(255,255,255,.85)}
.pc-state .ct span{display:flex;align-items:center;gap:7px}
.pc-state .sites{font-size:12.5px;color:rgba(255,255,255,.65);line-height:1.5;max-height:0;overflow:hidden;transition:max-height .3s,margin .3s}
.pc-state:hover .sites,.pc-state.on .sites{max-height:60px;margin-top:8px}
@media(max-width:960px){.pc-map-grid{grid-template-columns:1fr;gap:28px}.pc-map-wrap{max-width:560px;margin:0 auto;width:100%}.pc-state .sites{max-height:none;margin-top:8px}}
/* CLIENTS */
.pc-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.pc-marquee-track{list-style:none;display:flex;gap:20px;width:max-content;animation:pc-marquee 60s linear infinite}
.pc-marquee:hover .pc-marquee-track{animation-play-state:paused}
.pc-marquee-track li{flex:none;width:200px;height:110px;background:#fff;border:1px solid var(--gray-light);border-radius:10px;display:flex;align-items:center;justify-content:center;padding:16px 22px}
.pc-marquee-track img{max-width:100%;max-height:60px;width:auto;height:auto;object-fit:contain}
@keyframes pc-marquee{to{transform:translateX(calc(-50% - 10px))}}
@media(prefers-reduced-motion:reduce){.pc-marquee-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.pc-marquee-track li[aria-hidden],.pc-marquee-track li:has(img[aria-hidden]){display:none}}

/* PHOTO GALLERY */
.pc-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;gap:12px}
.pc-gallery figure,.pc-photo-pair figure{margin:0;overflow:hidden;border-radius:10px;background:var(--gray-light)}
.pc-gallery img,.pc-photo-pair img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pc-gallery figure:hover img,.pc-photo-pair figure:hover img{transform:scale(1.04)}
.pc-gallery .a{grid-column:span 2;grid-row:span 2}
.pc-gallery .b{grid-column:span 2}
.pc-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:56px}
.pc-photo-pair figure{aspect-ratio:4/3}
@media(max-width:760px){.pc-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:160px}.pc-photo-pair{grid-template-columns:1fr}}

/* PHOTO BANNERS */
.pc-hero.has-photo{padding:150px 5% 130px;text-align:center;background:#0d2a52}
.pc-hero .hero-photo{position:absolute;inset:0;background-size:cover;background-position:center 45%;filter:saturate(.7)}
.pc-hero .hero-photo::after{content:"";position:absolute;inset:0;background:rgba(17,50,100,.62)}
.pc-hero.has-photo .grid-bg{display:none}
.pc-hero.has-photo::before{content:"";position:absolute;left:5%;right:5%;bottom:44px;height:1px;background:rgba(110,160,225,.45);z-index:1}
.pc-hero.has-photo .breadcrumb{font-size:13px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:#fff;margin-bottom:22px}
.pc-hero.has-photo h1{text-shadow:0 2px 18px rgba(0,20,50,.45);font-weight:800;letter-spacing:.01em;margin-bottom:0}
.pc-hero.has-photo h1::after{content:"";display:block;width:110px;height:2px;background:var(--green);margin:26px auto 24px}
.pc-hero.has-photo .sub{text-shadow:0 1px 10px rgba(0,20,50,.5);margin:0 auto;max-width:640px;font-size:17px;font-weight:300;letter-spacing:.04em;color:rgba(255,255,255,.92)}
@media(max-width:760px){.pc-hero.has-photo{padding:100px 6% 90px}.pc-hero.has-photo::before{bottom:28px}.pc-hero.has-photo .breadcrumb{letter-spacing:.2em;font-size:11px}}

/* INDUSTRY CARDS */
.pc-ind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}@media(max-width:900px){.pc-ind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.pc-ind-grid{grid-template-columns:1fr}}
.pc-ind{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--navy)}
.pc-ind img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.6);transition:transform .6s,filter .6s}
.pc-ind::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,42,82,.96) 0%,rgba(17,50,100,.55) 45%,rgba(17,50,100,.35) 100%)}
.pc-ind:hover img{transform:scale(1.05);filter:saturate(.9)}
.pc-ind .cap{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:24px 22px;color:#fff}
.pc-ind h3{font-size:19px;font-weight:800;line-height:1.25;margin-bottom:8px}
.pc-ind h3::after{content:"";display:block;width:40px;height:2px;background:var(--green);margin-top:12px}
.pc-ind p{font-size:13.5px;color:rgba(255,255,255,.88);line-height:1.5}
.pc-ind-more{align-items:center}
.pc-ind-more .lead{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gray);margin-right:4px}




/* v2 — STATEMENT */
.pc-statement{padding:96px 5% 80px;background:#fff}
.pc-statement .container{max-width:1000px;margin:0 auto}
.pc-statement p{font-size:clamp(24px,2.7vw,36px);line-height:1.45;font-weight:500;color:var(--navy);letter-spacing:-.005em;text-wrap:pretty;margin-top:14px}
.pc-statement em{font-style:normal;color:var(--blue);font-weight:700}
/* v2 — TICKER */
.pc-ticker{display:flex;overflow:hidden;background:var(--green-light);border-top:1px solid #cfead9;border-bottom:1px solid #cfead9;padding:18px 0}
.pc-ticker ul{list-style:none;display:flex;flex:none;gap:0;animation:pc-tick 40s linear infinite}
.pc-ticker li{display:flex;align-items:baseline;gap:8px;padding:0 28px;font-size:15px;color:var(--text-mid);white-space:nowrap}
.pc-ticker li::after{content:"•";color:var(--green);margin-left:28px}
.pc-ticker b{font-size:20px;font-weight:800;color:var(--navy)}
.pc-ticker:hover ul{animation-play-state:paused}
@keyframes pc-tick{to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.pc-ticker ul{animation:none}.pc-ticker ul[aria-hidden]{display:none}.pc-ticker{flex-wrap:wrap;justify-content:center}}
/* v2 — DARK PRODUCT CARDS */
.pc-dark-prods{background:var(--navy)}
.pc-dark-prods h2{color:#fff}
.pc-dark-prods .lead{color:rgba(255,255,255,.78)}
.pc-dark-prods .pc-label{color:#7cc4ff}
.pc-dark-prods .pc-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);box-shadow:none;position:relative;transition:background .25s,border-color .25s,transform .25s}
.pc-dark-prods .pc-card:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.4);transform:translateY(-3px)}
.pc-dark-prods .pc-card .icon{color:#5ab4ff}
.pc-dark-prods .pc-card.green .icon{color:#3ddc84}
.pc-dark-prods .pc-card h3{color:#fff}
.pc-dark-prods .pc-card p{color:rgba(255,255,255,.75)}
.pc-dark-prods .pc-card .more{color:#3ddc84}

/* v2 — INNER PAGES (rollback: restore backup/pre-v2-inner/) */
.pc-hero.v2{min-height:60vh;display:flex;align-items:center}
.pc-hero.v2 h1{font-size:clamp(44px,6.5vw,84px)}
.pc-hero.v2 .sub{font-size:clamp(16px,1.4vw,19px);max-width:640px}
.pc-statement.v2-inner{padding:88px 5% 72px}
.pc-dark-apps{background:var(--navy)}
.pc-dark-apps h2{color:#fff}
.pc-dark-apps .pc-label{color:#7cc4ff}
.pc-dark-apps .pc-grid>div{background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.14)!important;transition:background .25s,border-color .25s,transform .25s}
.pc-dark-apps .pc-grid>div:hover{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.4)!important;transform:translateY(-3px)}
.pc-dark-apps .pc-grid>div[style*="border-top"]{border-top-color:#3ddc84!important}
.pc-dark-apps .pc-grid>div[style*="border-left"]{border-left-color:#3ddc84!important}
.pc-dark-apps .pc-grid h4{color:#fff!important}
.pc-dark-apps .pc-grid p{color:rgba(255,255,255,.78)!important}

/* v2 — FOOTER (rollback: restore backup/pre-footer-v2/) */
.pc-footer.v2{padding:68px 5% 28px;background:#001F4D}
.pc-footer.v2 .grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:48px;margin-bottom:48px}
.pc-footer.v2 h4{color:#3ddc84;margin-bottom:16px}
.pc-footer.v2 .ft-logo{height:100px;width:auto;display:block;margin-bottom:0;filter:brightness(0) invert(1)}
.pc-footer.v2 .ft-net{color:#c3d2e0;font-size:14px;line-height:1.6;letter-spacing:.02em}
.pc-footer.v2 .ft-links{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}
.pc-footer.v2 .links a{white-space:nowrap;color:#c3d2e0;font-size:15px;margin:0;padding:5px 0}
.pc-footer.v2 .links a:hover{color:#fff}
.pc-footer.v2 address{font-style:normal;font-size:15px;line-height:1.7;color:#c3d2e0;margin-bottom:14px}
.pc-footer.v2 .ft-mail{overflow-wrap:anywhere;font-size:15px;color:#fff;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:1px}
.pc-footer.v2 dl{display:grid;grid-template-columns:1fr;gap:0}.pc-footer.v2 dt{margin-top:8px}.pc-footer.v2 dt:first-child{margin-top:0}.pc-footer.v2 dd a{white-space:nowrap}
.pc-footer.v2 dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8fa6bd;font-weight:700}
.pc-footer.v2 dd{margin:0;font-size:15px;color:#8fa6bd}
.pc-footer.v2 dd a{color:#fff}
.pc-footer.v2 .ft-big{font-weight:800;font-size:17px}
.pc-footer.v2 a:hover{color:#3ddc84;border-color:#3ddc84}
.pc-footer.v2 .bottom{color:#a9bccf;font-size:13px;gap:16px;flex-wrap:wrap;padding-top:22px}
.pc-footer.v2 .bottom .certs{display:flex;gap:8px}
.pc-footer.v2 .bottom .certs span{white-space:nowrap;font-size:11px;padding:3px 10px;border-radius:100px;border:1px solid rgba(255,255,255,.3);color:#dbe6f0;letter-spacing:.06em}
.pc-footer.v2 .bottom a{color:#dbe6f0}
@media(max-width:1100px){.pc-footer.v2 .grid{grid-template-columns:1fr 1fr;gap:32px 48px}}
@media(max-width:560px){.pc-footer.v2{padding-top:44px}.pc-footer.v2 .grid{grid-template-columns:1fr;gap:28px}.pc-footer.v2 .links a{padding:10px 0}.pc-footer.v2 dd a{display:inline-block;padding:8px 0}.pc-footer.v2 .bottom{flex-direction:column;align-items:flex-start}}
.pc-footer.v2.deep{background:#001F4D}
.pc-footer.v2.light{background:#fff;color:var(--navy);border-top:1px solid var(--gray-light)}
.pc-footer.v2.light .ft-logo{filter:none}
.pc-footer.v2.light h4{color:var(--green-dark)}
.pc-footer.v2.light .links a,.pc-footer.v2.light address{color:#3d4f63}
.pc-footer.v2.light .links a:hover,.pc-footer.v2.light a:hover{color:var(--blue);border-color:var(--blue)}
.pc-footer.v2.light .ft-mail{color:var(--navy);border-color:rgba(0,45,107,.3)}
.pc-footer.v2.light dt{color:#5b6b7c}
.pc-footer.v2.light dd,.pc-footer.v2.light dd a{color:var(--navy)}
.pc-footer.v2.light .bottom{color:#5b6b7c;border-color:var(--gray-light)}
.pc-footer.v2.light .bottom a{color:var(--navy)}

/* v2 — TRANSPARENT NAV OVER HERO (rollback: restore backup/pre-nav-overlay/) */
.pc-nav{transition:background .3s,height .3s,box-shadow .3s,border-color .3s}
.pc-nav .logo img{transition:height .3s,filter .3s}
body.nav-over .pc-nav{position:fixed;left:0;right:0;background:transparent;border-bottom-color:transparent;box-shadow:none}
body.nav-over .pc-nav+.pc-hero{padding-top:200px}
body.nav-over .pc-nav:not(.solid) .logo img{filter:brightness(0) invert(1)}
body.nav-over .pc-nav:not(.solid) .pc-nav-items .item>a{color:#fff}
body.nav-over .pc-nav:not(.solid) .pc-nav-items .item:hover>a,body.nav-over .pc-nav:not(.solid) .pc-nav-items .item.active>a{background:rgba(255,255,255,.12);color:#fff}
body.nav-over .pc-nav:not(.solid) .pc-burger span{background:#fff}
body.nav-over .pc-nav.solid{background:#fff;border-bottom-color:var(--gray-light);box-shadow:0 2px 12px rgba(0,85,165,.08)}
@media(max-width:1024px){body.nav-over .pc-nav+.pc-hero{padding-top:160px}}
body.nav-over .pc-topbar{position:absolute;top:0;left:0;right:0;z-index:101;background:transparent;border-bottom:1px solid rgba(255,255,255,.12);height:30px;padding-top:0;padding-bottom:0}
body.nav-over .pc-nav+.pc-hero{padding-top:200px}
.pc-topbar span{white-space:nowrap}
.pc-cta{white-space:nowrap}
@media(max-width:1024px){body.nav-over .pc-nav+.pc-hero{padding-top:160px}}
@media(max-width:900px){.pc-topbar>span:first-child{display:none}.pc-topbar{justify-content:flex-end}}
@media(max-width:560px){.pc-topbar .right span:last-child{display:none}}

/* v2 — CTA BAND: plant photo + navy overlay (rollback: restore backup/pre-cta-v2/) */
.pc-cta-band{position:relative;padding:110px 5%;background:linear-gradient(180deg,rgba(0,31,77,.78),rgba(0,31,77,.92)),url('../images/plants/infra-tanks.jpg') center/cover;color:#fff;text-align:center}
.pc-cta-band h2{font-size:clamp(34px,5vw,60px);font-weight:900;line-height:1.05;margin-bottom:18px;color:#fff}
.pc-cta-band p{font-size:17px;color:#dbe6f0;opacity:1;margin-bottom:32px}
.pc-cta-band .ctas{gap:14px}
.pc-cta-band .btn-white,.pc-cta-band .btn-tr{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;padding:15px 32px;border-radius:6px;font-size:15px;line-height:1.2}
.pc-cta-band .btn-white{background:var(--green);color:#fff;font-weight:700}
.pc-cta-band .btn-white:hover{background:var(--green-dark)}
.pc-cta-band .btn-tr{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6);font-weight:600}
.pc-cta-band .btn-tr:hover{border-color:#fff;background:rgba(255,255,255,.08)}
@media(max-width:560px){.pc-cta-band{padding:80px 5%}}

/* Mobile fix (added at upload): stack side-by-side page sections on phones */
@media (max-width: 760px) {
  [style*="grid-template-columns:3fr 2fr"],
  [style*="grid-template-columns:5fr 4fr"],
  [style*="grid-template-columns:1fr 1fr; gap:32px"],
  [style*="grid-template-columns:1fr 1fr; gap:48px"],
  [style*="grid-template-columns:1fr 1fr; gap:64px"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  [style*="grid-template-columns:repeat(5,1fr)"],
  [style*="grid-template-columns:repeat(6,1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
