
:root{
  --black:#04090f; --navy:#07131e; --blue:#0878ff; --blue2:#00b8ff;
  --white:#fff; --paper:#f5f7fa; --ink:#111821; --muted:#6e7a88; --line:#dfe5eb;
  --max:1180px; --radius:16px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--black);color:var(--white);line-height:1.45}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}.narrow{max-width:860px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(1,5,9,.97);border-bottom:1px solid #13202b}
.header-inner{max-width:1280px;margin:auto;height:82px;display:flex;align-items:center;gap:24px;padding:0 20px}
.brand{width:245px;flex:0 0 245px}.brand img{width:100%;height:62px;object-fit:contain}
.nav{display:flex;align-items:center;justify-content:center;gap:20px;flex:1;font-size:13px;text-transform:uppercase;font-weight:700}
.nav>a,.dropbtn{padding:29px 0 25px;border-bottom:3px solid transparent}
.nav>a:hover,.nav>a.active{color:var(--blue2);border-bottom-color:var(--blue)}
.dropdown{position:relative}.dropbtn{background:none;border-left:0;border-right:0;border-top:0;color:#fff;font:inherit;cursor:pointer}
.dropdown-menu{display:none;position:absolute;top:70px;left:-20px;background:#07131e;border:1px solid #183247;min-width:250px;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.dropdown.open .dropdown-menu,.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:10px 12px;border-radius:8px}.dropdown-menu a:hover{background:#102236;color:var(--blue2)}
.header-call{border:1px solid var(--blue);border-radius:8px;padding:8px 16px;text-align:center;line-height:1.1;white-space:nowrap}
.header-call span{display:block;color:var(--blue2);font-size:11px}.header-call strong{font-size:20px}
.menu-toggle{display:none;background:transparent;color:#fff;border:1px solid #23415a;border-radius:8px;padding:8px 10px;font-size:22px}
.home-hero{position:relative;background:url("assets/project-grey-garage.jpg") center/cover no-repeat;min-height:560px}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,8,13,.96) 0%,rgba(2,8,13,.78) 38%,rgba(2,8,13,.15) 70%,rgba(2,8,13,.28) 100%)}
.hero-content{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:40px;padding-top:56px;padding-bottom:48px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--blue2);font-size:12px;font-weight:800}
.hero h1,.subhero h1{font-size:56px;line-height:.98;margin:10px 0 18px;letter-spacing:-.03em}.hero h1 span,.subhero h1 span,h2 span{color:var(--blue)}
.lead{font-size:20px;max-width:680px}.check-list{padding:0;list-style:none;margin:22px 0}.check-list li{margin:10px 0;padding-left:25px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--blue2);font-weight:900}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:7px;font-weight:800;letter-spacing:.01em;border:1px solid transparent}
.btn-primary{background:linear-gradient(135deg,#086fee,#1288ff);color:#fff}.btn-outline{border-color:#168cff;background:rgba(0,0,0,.7);color:#fff}
.price-card{justify-self:end;background:rgba(2,9,15,.95);border:2px solid var(--blue);border-radius:14px;padding:24px;width:min(100%,360px);text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.35)}
.price-title{font-size:20px;color:var(--blue2);font-weight:900;margin:0 0 8px}.price-card h3{margin:6px 0}.price{font-size:54px;font-weight:900;background:linear-gradient(90deg,#056ce7,#1590ff);padding:5px 12px;border-radius:8px;margin:8px 0 14px}
.price-card ul{text-align:left;padding-left:20px;font-size:14px}.included-title{color:var(--blue2);font-weight:800}
.trust-strip{display:grid;grid-template-columns:repeat(5,1fr);background:#06111a;border-top:1px solid #16364d;border-bottom:1px solid #16364d}
.trust-strip>div{padding:22px 26px;border-right:1px solid #203441}.trust-strip b{display:block;color:#fff;margin-bottom:6px}.trust-strip span{display:block;color:#b7c2cc;font-size:13px}
.section{padding:58px 0}.section.light{background:#f7f8fa;color:#141a20}.section.light.alt{background:#eef2f6}.section.dark{background:#04101a;color:#fff}
.section-heading{text-align:center;margin-bottom:28px}.section-heading.left{text-align:left}.section-heading h2{font-size:32px;margin:0}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.solution-card{background:#fff;border:1px solid #e3e7eb;border-radius:14px;overflow:hidden;box-shadow:0 8px 30px rgba(16,35,52,.08)}
.solution-card img,.abstract{height:240px;object-fit:cover}.card-body{padding:20px}.card-body h3{margin:0 0 8px}.card-body a{color:#006ee8;font-weight:800}
.abstract{background:radial-gradient(circle at 25% 30%,#7d8792 0 5%,transparent 6%),linear-gradient(125deg,#101820,#4c5966 25%,#c8d0d8 40%,#404b55 60%,#111820);display:flex;align-items:end;padding:18px}
.visual-copy span{background:#07131e;color:#fff;padding:8px 11px;border-radius:7px;font-size:12px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{display:flex;gap:15px;background:#fff;border:1px solid #dfe5ea;border-radius:12px;padding:18px;color:#151b22;transition:.2s}
.service-card:hover{transform:translateY(-2px);border-color:#7ab8ff;box-shadow:0 8px 22px rgba(0,80,170,.08)}.service-icon{font-size:34px;color:#006fe8;width:46px}.service-card h3{font-size:15px;margin:0 0 5px}.service-card p{font-size:13px;margin:0;color:#4f5d69}
.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-grid.compact{grid-template-columns:repeat(4,1fr)}
.gallery-grid img{width:100%;height:290px;object-fit:cover;border-radius:12px}.gallery-grid.compact img{height:200px}.gallery-grid figure{margin:0}.gallery-grid figcaption{padding:9px 2px;color:#c7d1da}
.center{text-align:center;margin-top:22px}.process-layout{display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:stretch}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.process-grid>div{background:#fff;border:1px solid #dce4eb;border-radius:12px;padding:18px}.process-grid b{color:#006fe8}.process-grid p{font-size:13px;color:#4b5964}
.warranty-card{border:2px solid #237cf2;border-radius:14px;padding:26px;background:#fff}.warranty-card h3{color:#075fd3}
.cta-band{background:#06131d;padding:36px 0;border-top:1px solid #16364d}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-inner h2{margin:3px 0 0}
.site-footer{background:#02070c;border-top:1px solid #152635;padding-top:40px}.footer-grid{max-width:var(--max);margin:auto;padding:0 20px 35px;display:grid;grid-template-columns:1.4fr 1fr 1fr .8fr;gap:30px}.footer-logo{width:240px;margin-bottom:15px}.footer-grid p,.footer-grid a{color:#b6c1cc;font-size:14px}.footer-grid h3{color:#1c8dff}
.footer-bottom{border-top:1px solid #182733;padding:15px 20px;display:flex;justify-content:space-between;gap:20px;max-width:var(--max);margin:auto;color:#8895a1;font-size:12px}
.subhero{background:linear-gradient(135deg,#06111b,#0b1d2c);padding:82px 0 72px;border-bottom:1px solid #183247}.subhero h1{font-size:52px}.subhero.service-hero{padding-bottom:60px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.rounded-photo{width:100%;border-radius:16px;max-height:520px;object-fit:cover}
.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.mini-grid div{border:1px solid #dce4ea;padding:16px;border-radius:12px}.mini-grid b,.mini-grid span{display:block}.mini-grid span{font-size:13px;color:#61707d}
.service-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-page-card{background:#fff;border:1px solid #dde4ea;border-radius:14px;padding:24px;color:#141a20}.service-page-card span{color:#0878ff;font-weight:800}
.decorative-panel{min-height:360px;border-radius:18px;background:linear-gradient(135deg,#061421,#0b355a 45%,#0d7be9);display:flex;flex-direction:column;justify-content:flex-end;padding:35px;color:#fff}.decorative-panel span{color:#7bc7ff;letter-spacing:.15em}.decorative-panel strong{font-size:34px}
.dark-list{color:#101820}.muted{color:#687582}.tabs{display:flex;justify-content:center;gap:10px;margin-bottom:25px}.tab{background:#10202d;color:#fff;border:1px solid #264158;padding:11px 28px;border-radius:7px;font-weight:800}.tab.active{background:#0878ff;border-color:#0878ff}
.tab-panel{display:none}.tab-panel.active{display:block}.swatch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.flake-swatch,.metal-swatch,.solid-swatch{height:150px;border-radius:12px;display:flex;align-items:end;padding:12px;border:1px solid #25465e}.flake-swatch span,.metal-swatch span,.solid-swatch span{background:rgba(0,0,0,.72);padding:6px 9px;border-radius:6px;font-size:12px}
.f1{background:radial-gradient(#fff 10%,transparent 11%) 0 0/18px 18px,#aeb5bd}.f2{background:radial-gradient(#25292e 10%,transparent 11%) 0 0/15px 15px,#aeb5bd}.f3{background:radial-gradient(#111 12%,transparent 13%) 0 0/16px 16px,#5d646c}.f4{background:radial-gradient(#0d75e8 12%,transparent 13%) 0 0/16px 16px,#d4d9de}.f5{background:radial-gradient(#7f776f 12%,transparent 13%) 0 0/16px 16px,#c5c1bb}.f6{background:radial-gradient(#fff 10%,transparent 11%) 0 0/15px 15px,#777}
.m1{background:linear-gradient(120deg,#171d23,#d5d9dc,#5b6570)}.m2{background:linear-gradient(120deg,#0d1115,#5b6269,#141b21)}.m3{background:linear-gradient(120deg,#001c36,#0069c9,#00a0d7)}.m4{background:linear-gradient(120deg,#3f190a,#c46824,#ffb061)}.m5{background:linear-gradient(120deg,#123f45,#37aeba,#9de1e3)}.m6{background:linear-gradient(120deg,#38230f,#8a5d32,#d8b47e)}
.s1{background:#d2d5d6}.s2{background:#8e9499}.s3{background:#41464a}.s4{background:#f7f7f3}.s5{background:#c4b79c}.s6{background:#101214}.colour-note{text-align:center;color:#9eabb6;margin-top:22px}
.faq-list{display:grid;gap:10px}.faq-item{border:1px solid #dce4ea;border-radius:10px;background:#fff;overflow:hidden}.faq-item button{width:100%;padding:17px 20px;background:#fff;border:0;text-align:left;font-weight:800;display:flex;justify-content:space-between;font-size:15px}.faq-answer{display:none;padding:0 20px 16px;color:#50606d}.faq-item.open .faq-answer{display:block}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:40px}.quote-form{background:#fff;color:#101820;border-radius:14px;padding:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-form label{font-size:12px;font-weight:700;display:block;margin-bottom:12px}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:5px;border:1px solid #cfd7df;border-radius:7px;padding:12px;background:#f7f9fb;font:inherit}.full{width:100%;border:0}.form-note{font-size:11px;color:#697784}
.prose{color:#182029}.prose p{margin-bottom:18px}
@media(max-width:980px){
  .header-call{display:none}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;left:0;right:0;top:82px;background:#030a10;flex-direction:column;align-items:stretch;padding:15px 22px;border-top:1px solid #1e3344}
  .nav.open{display:flex}.nav>a,.dropbtn{padding:11px 4px;border-bottom:0;text-align:left;width:100%}.dropdown-menu{position:static;box-shadow:none;border:0;margin-top:4px;background:#0b1722}
  .hero-content{grid-template-columns:1fr}.price-card{justify-self:start}.trust-strip{grid-template-columns:repeat(2,1fr)}.solution-grid,.service-grid,.service-page-grid{grid-template-columns:1fr 1fr}
  .gallery-grid.compact{grid-template-columns:1fr 1fr}.process-layout,.two-col,.contact-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .container{width:min(100% - 28px,var(--max))}.header-inner{height:72px}.brand{width:205px;flex-basis:205px}.brand img{height:54px}.nav{top:72px}
  .hero h1,.subhero h1{font-size:39px}.lead{font-size:17px}.home-hero{min-height:auto}.hero-content{padding-top:40px}.price-card{width:100%}
  .trust-strip,.solution-grid,.service-grid,.service-page-grid,.process-grid,.swatch-grid,.gallery-grid,.gallery-grid.compact,.mini-grid,.form-row,.footer-grid{grid-template-columns:1fr}
  .trust-strip>div{border-right:0;border-bottom:1px solid #203441}.gallery-grid img,.gallery-grid.compact img{height:230px}.cta-inner,.footer-bottom{flex-direction:column;align-items:flex-start}
  .section{padding:42px 0}.section-heading h2{font-size:27px}.subhero{padding:58px 0 48px}.subhero h1{font-size:38px}
}

.hp-field{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.status-card{
  max-width:760px;
  margin:0 auto;
  background:#fff;
  color:#111821;
  padding:36px;
  border-radius:16px;
  border:1px solid #dfe5eb;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
  text-align:center;
}
.status-card h2{margin-top:0}
.status-card.success h2{color:#0878ff}
.status-card.error h2{color:#b12b2b}

/* APC colour page */
.colour-intro{max-width:780px;margin:10px auto 0;color:#5b6874}
.light-copy{color:#b6c3cf}
.apc-colour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.apc-colour-card{background:#fff;border:1px solid #dce4ea;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(10,35,55,.06)}
.apc-colour-card h3{margin:16px 16px 6px}
.apc-colour-card p{margin:0 16px 18px;color:#5c6975;font-size:13px}
.flake-preview{height:145px;border-bottom:1px solid #dfe5ea;background-color:#aaa}
.flake-preview.cookies{background:
 radial-gradient(circle at 18% 22%,#111 0 5px,transparent 6px),
 radial-gradient(circle at 58% 62%,#f5f5f2 0 7px,transparent 8px),
 radial-gradient(circle at 76% 26%,#6a6a68 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#d9d8d3 0 7px,transparent 8px),
 radial-gradient(circle at 88% 82%,#161616 0 5px,transparent 6px),
 #c8c8c2;background-size:70px 70px}
.flake-preview.graphite{background:
 radial-gradient(circle at 20% 25%,#111 0 6px,transparent 7px),
 radial-gradient(circle at 62% 55%,#5a5d60 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#aaa 0 5px,transparent 6px),
 radial-gradient(circle at 35% 78%,#27292b 0 7px,transparent 8px),
 #666b70;background-size:72px 72px}
.flake-preview.granite{background:
 radial-gradient(circle at 20% 25%,#232323 0 5px,transparent 6px),
 radial-gradient(circle at 62% 55%,#efefeb 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#9a9a97 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#565656 0 7px,transparent 8px),
 #bfc0bc;background-size:68px 68px}
.flake-preview.camo{background:
 radial-gradient(circle at 20% 25%,#3f463b 0 6px,transparent 7px),
 radial-gradient(circle at 62% 55%,#bbb6a2 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#56564c 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#ded7c4 0 7px,transparent 8px),
 #918f80;background-size:70px 70px}
.flake-preview.biscuit{background:
 radial-gradient(circle at 20% 25%,#7e6549 0 6px,transparent 7px),
 radial-gradient(circle at 62% 55%,#eee1c7 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#b9a27e 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#fff6e5 0 7px,transparent 8px),
 #d1bd9f;background-size:70px 70px}
.flake-preview.ash{background:
 radial-gradient(circle at 20% 25%,#6a6c6d 0 5px,transparent 6px),
 radial-gradient(circle at 62% 55%,#f3f3f1 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#bbbdbc 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#848788 0 7px,transparent 8px),
 #d4d5d3;background-size:70px 70px}
.flake-preview.mist{background:
 radial-gradient(circle at 20% 25%,#89929a 0 5px,transparent 6px),
 radial-gradient(circle at 62% 55%,#eef2f4 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#bfc8ce 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#6e7981 0 7px,transparent 8px),
 #cbd3d8;background-size:70px 70px}
.flake-preview.bluestorm{background:
 radial-gradient(circle at 20% 25%,#0b4f86 0 6px,transparent 7px),
 radial-gradient(circle at 62% 55%,#dfe8ee 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#758796 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#173b56 0 7px,transparent 8px),
 #9aaab4;background-size:70px 70px}
.flake-preview.suede{background:
 radial-gradient(circle at 20% 25%,#78634e 0 6px,transparent 7px),
 radial-gradient(circle at 62% 55%,#e8ddcf 0 7px,transparent 8px),
 radial-gradient(circle at 78% 20%,#a58f76 0 6px,transparent 7px),
 radial-gradient(circle at 35% 78%,#cabba8 0 7px,transparent 8px),
 #b7a58f;background-size:70px 70px}
.colour-cta-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.btn-dark{background:#07131e;color:#fff;border-color:#274056}
.solid-colour-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}
.solid-colour-card{background:#0b1722;border:1px solid #24445d;border-radius:12px;overflow:hidden}
.solid-preview{height:120px}
.solid-colour-card div:last-child{padding:13px 14px}
.solid-colour-card strong,.solid-colour-card span{display:block}
.solid-colour-card strong{color:#26a0ff;font-size:14px}
.solid-colour-card span{font-size:13px;color:#d7e0e7}
.solid-preview.n23{background:#8c9091}
.solid-preview.n43{background:#666c70}
.solid-preview.n64{background:#3f4447}
.solid-preview.y56{background:#c5b99f}
.solid-preview.b41{background:#6f889d}
.notice-card{margin-top:24px;border:1px solid #24445d;background:#08131d;border-radius:12px;padding:18px}
.notice-card strong{color:#2da1ff}.notice-card p{margin:6px 0 0;color:#b5c2cd}
@media(max-width:980px){
  .apc-colour-grid{grid-template-columns:repeat(2,1fr)}
  .solid-colour-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  .apc-colour-grid,.solid-colour-grid{grid-template-columns:1fr}
}


/* Official APC embedded colour charts */
.official-chart-card{
  width:100%;
  background:#fff;
  border:1px solid rgba(15,34,59,.14);
  border-radius:18px;
  box-shadow:0 16px 45px rgba(15,34,59,.10);
  overflow:hidden;
  margin:28px 0 18px;
}
.dark-chart-card{
  border-color:rgba(255,255,255,.14);
  box-shadow:0 16px 45px rgba(0,0,0,.22);
}
.official-colour-chart{
  display:block;
  width:100%;
  height:760px;
  border:0;
  background:#fff;
}
.official-colour-chart-tall{
  height:900px;
}
.colour-notice{
  margin-top:18px;
}
@media (max-width: 900px){
  .official-colour-chart{height:680px;}
  .official-colour-chart-tall{height:780px;}
}
@media (max-width: 600px){
  .official-chart-card{border-radius:12px;}
  .official-colour-chart{height:620px;}
  .official-colour-chart-tall{height:720px;}
}

.apc-chart-panel{padding:42px;border:1px solid rgba(15,34,59,.12);border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(15,34,59,.08);margin:26px 0 18px}
.apc-chart-panel-dark{background:#111a25;border-color:rgba(255,255,255,.12)}
.apc-chart-copy{max-width:780px}
.apc-chart-copy .eyebrow{font-weight:800;letter-spacing:.12em;color:#168cff;font-size:.82rem}
.apc-chart-copy h3{font-size:clamp(1.55rem,3vw,2.25rem);margin:.5rem 0 .75rem}
.apc-chart-panel-dark h3,.apc-chart-panel-dark p{color:#fff}
@media(max-width:600px){.apc-chart-panel{padding:24px}}

.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* V4 APC colour presentation */
.apc-colour-hero{padding-top:54px;padding-bottom:54px}
.apc-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:center}
.apc-brand-box{background:#fff;border-radius:16px;padding:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 15px 40px rgba(0,0,0,.12)}
.apc-brand-box img{width:min(100%,420px);height:auto;display:block}
.colour-tabs-static{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(15,34,59,.12);border-radius:12px;overflow:hidden;margin-bottom:38px;background:#fff}
.colour-tabs-static a,.colour-tabs-static span{padding:18px;text-align:center;text-decoration:none;color:#132033;font-weight:800}
.colour-tabs-static .active{color:#087df1;box-shadow:inset 0 -3px #087df1}
.left-heading{text-align:left;max-width:980px;margin-left:0}
.apc-swatch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}
.apc-swatch-card{background:#fff;border-radius:14px;overflow:hidden;border:1px solid rgba(15,34,59,.12);box-shadow:0 10px 28px rgba(15,34,59,.08)}
.apc-swatch-card img{width:100%;aspect-ratio:1.45/1;object-fit:cover;display:block}
.apc-swatch-card div{padding:15px 16px 17px}
.apc-swatch-card strong{display:block;font-size:1.08rem}
.apc-swatch-card span{display:block;color:#647084;font-size:.9rem;margin-top:4px}
.colour-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.apc-secondary-card{background:#fff;border-radius:16px;padding:32px;color:#111;box-shadow:0 15px 40px rgba(0,0,0,.18)}
.apc-secondary-card img{max-width:320px;width:100%;height:auto;margin-bottom:24px}
.apc-secondary-card strong{display:block;font-size:1.2rem;margin-bottom:8px}
@media(max-width:900px){
  .apc-hero-grid,.two-col{grid-template-columns:1fr}
  .apc-swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .colour-tabs-static{grid-template-columns:1fr}
  .apc-swatch-grid{grid-template-columns:1fr}
  .apc-colour-hero{padding-top:32px;padding-bottom:32px}
}


/* =========================================================
   V4.1 COLOURS PAGE COMPACT LAYOUT
   Keeps the original high-resolution APC image sources.
   Only the display dimensions/cropping are changed.
   ========================================================= */

.apc-colour-hero{
  padding-top:28px !important;
  padding-bottom:28px !important;
  min-height:0 !important;
}
.apc-hero-grid{
  grid-template-columns:1.55fr .45fr !important;
  gap:28px !important;
}
.apc-brand-box{
  padding:16px 20px !important;
  border-radius:12px !important;
}
.apc-brand-box img{
  width:min(100%,240px) !important;
  max-height:105px !important;
  object-fit:contain !important;
}

.colour-tabs-static{
  margin-bottom:24px !important;
}
.colour-tabs-static a,
.colour-tabs-static span{
  padding:13px 14px !important;
  font-size:.92rem !important;
}

.left-heading{
  margin-bottom:8px !important;
}
.left-heading h2{
  margin-bottom:8px !important;
}
.left-heading p{
  max-width:900px !important;
}

/* Four neat swatches per row on normal desktop screens */
.apc-swatch-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
  margin:22px 0 26px !important;
  align-items:stretch !important;
}

.apc-swatch-card{
  border-radius:11px !important;
  box-shadow:0 7px 20px rgba(15,34,59,.08) !important;
}

/*
 APC's source files remain untouched/high-resolution.
 The controlled viewport stops them becoming giant banners.
 object-position favours the flake texture and trims excess title area
 from the original manufacturer image where present.
*/
.apc-swatch-card img{
  width:100% !important;
  height:155px !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center 72% !important;
  display:block !important;
}

.apc-swatch-card div{
  padding:11px 13px 13px !important;
}
.apc-swatch-card strong{
  font-size:1rem !important;
  line-height:1.2 !important;
}
.apc-swatch-card span{
  font-size:.78rem !important;
  margin-top:3px !important;
  line-height:1.35 !important;
}

.colour-notice{
  margin-top:14px !important;
}
.colour-actions{
  margin-top:18px !important;
}

@media(max-width:1100px){
  .apc-swatch-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:800px){
  .apc-hero-grid{
    grid-template-columns:1fr !important;
  }
  .apc-brand-box{
    max-width:320px !important;
  }
  .apc-swatch-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .apc-swatch-card img{
    height:145px !important;
  }
}

@media(max-width:520px){
  .apc-colour-hero{
    padding-top:22px !important;
    padding-bottom:22px !important;
  }
  .apc-swatch-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .apc-swatch-card img{
    height:115px !important;
  }
  .apc-swatch-card div{
    padding:9px 10px 10px !important;
  }
  .apc-swatch-card strong{
    font-size:.9rem !important;
  }
  .apc-swatch-card span{
    font-size:.7rem !important;
  }
}
