/*
Theme Name: Compwrx Standard Site
Theme URI: https://compwrx.com
Author: ChatGPT
Description: Standard WordPress theme for Compwrx.net with real page support and working links after WXR import.
Version: 1.9
*/

:root{
 --bg:#020815;
 --panel:#061326;
 --text:#f7fbff;
 --muted:#b9c9dd;
 --blue:#0d8fe8;
 --green:#49b047;
 --orange:#f28c28;
 --line:rgba(255,255,255,.12);
 --shadow:0 18px 55px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 20% 0%,rgba(28,126,214,.22),transparent 35%),radial-gradient(circle at 80% 8%,rgba(73,176,71,.18),transparent 30%),var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.6}
a{color:inherit}
.container{width:min(1160px,92vw);margin:0 auto}
.topbar{background:#05090d;color:var(--muted);font-size:14px;border-bottom:1px solid var(--line)}
.topbar .container{display:flex;gap:22px;justify-content:flex-end;align-items:center;padding:8px 0;flex-wrap:wrap}
.site-header{position:sticky;top:0;z-index:99;background:rgba(7,16,22,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:24px}
.logo img{height:58px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--muted);font-weight:700;font-size:15px}
.nav a:hover{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid transparent}
.btn-primary{background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;box-shadow:0 12px 30px rgba(28,126,214,.25)}
.btn-secondary{border-color:var(--line);color:#fff;background:rgba(255,255,255,.05)}
.btn-orange{background:var(--orange);color:#101010}
.hero{padding:86px 0 58px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center}
.kicker{display:inline-flex;color:#d9eefc;background:rgba(28,126,214,.16);border:1px solid rgba(28,126,214,.4);border-radius:999px;padding:8px 13px;font-size:14px;font-weight:800}
h1{font-size:clamp(40px,6vw,72px);line-height:1.02;margin:20px 0 18px;letter-spacing:-.04em}
h2{font-size:clamp(30px,4vw,46px);line-height:1.1}
.hero p{font-size:20px;color:var(--muted);max-width:710px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-card,.panel,.card{background:linear-gradient(180deg,rgba(18,39,53,.88),rgba(14,27,36,.92));border:1px solid var(--line);box-shadow:var(--shadow)}
.hero-card{border-radius:28px;padding:28px}
.hero-card img{max-width:100%;height:auto;margin:0 auto 22px;display:block}
.info-row{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}
.info-row strong{color:#fff}
.section{padding:72px 0}
.section-title{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:28px}
.section-title h2{margin:0}
.section-title p{color:var(--muted);max-width:590px;margin:0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{border-radius:22px;padding:24px;text-decoration:none;color:var(--text);display:block}
.card:hover{transform:translateY(-2px)}
.icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(28,126,214,.16);border:1px solid rgba(28,126,214,.35);font-size:24px;margin-bottom:14px;font-weight:900}
.card h3{margin:0 0 8px;font-size:22px}
.card p{margin:0;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.panel{border-radius:26px;padding:30px}
.checks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.checks li{color:var(--muted)}
.checks li:before{content:"✓";color:var(--green);font-weight:900;margin-right:10px}
.cta{background:linear-gradient(135deg,rgba(28,126,214,.25),rgba(73,176,71,.22));border:1px solid var(--line);border-radius:30px;padding:38px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:var(--shadow)}
.footer{background:#05090d;border-top:1px solid var(--line);padding:44px 0;color:var(--muted)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}
.footer h3,.footer h4{color:#fff;margin-top:0}
.page-main{padding:64px 0}
.wp-content{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:26px;padding:32px}
.service-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}
.feature-list{display:grid;gap:12px;margin-top:20px}
.feature{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:16px;padding:16px}
.feature strong{color:#fff;display:block;margin-bottom:4px}
.feature span{color:var(--muted)}
input,textarea{width:100%;background:#09131a;color:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;margin:8px 0 14px}
@media(max-width:850px){
 .hero-grid,.split,.footer-grid,.service-grid{grid-template-columns:1fr}
 .cards{grid-template-columns:1fr}
 .cta{display:block}
 .topbar .container{justify-content:flex-start}
 .logo img{height:46px}
}


/* Rich service page additions */
.service-page{padding:64px 0}
.service-hero-panel{background:linear-gradient(135deg,rgba(28,126,214,.22),rgba(73,176,71,.14));border:1px solid var(--line);border-radius:30px;padding:42px;box-shadow:var(--shadow)}
.service-hero-panel h1{margin-top:14px}
.service-hero-panel p{font-size:20px;color:var(--muted);max-width:880px}
.service-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;margin-top:24px}
.service-section{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:26px;padding:30px}
.service-section h2{margin-top:0}
.service-list{display:grid;gap:14px;margin-top:20px}
.service-item{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:18px;padding:18px}
.service-item strong{display:block;color:#fff;font-size:18px;margin-bottom:4px}
.service-item span{color:var(--muted)}
.badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.badge{border:1px solid var(--line);background:rgba(28,126,214,.12);border-radius:999px;padding:8px 12px;color:#dbeeff;font-weight:700;font-size:14px}
.steps{counter-reset:step;display:grid;gap:12px;padding-left:0;margin:18px 0 0}
.steps li{list-style:none;color:var(--muted);background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:16px;padding:16px}
.steps li:before{counter-increment:step;content:counter(step);display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#111;font-weight:900;margin-right:10px}
.notice-box{border-left:4px solid var(--orange);background:rgba(242,140,40,.1);padding:18px;border-radius:14px;color:var(--muted)}
@media(max-width:850px){.service-layout{grid-template-columns:1fr}.service-hero-panel{padding:28px}}


/* Real photo visual upgrade */
.photo-frame{position:relative;border-radius:28px;overflow:hidden;border:1px solid var(--line);background:#071016;box-shadow:var(--shadow)}
.photo-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.08) brightness(.82)}
.photo-frame:after,.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,16,22,.05),rgba(7,16,22,.55));pointer-events:none}
.hero-photo{height:380px}
.service-card-photo{position:relative;height:175px;margin:-24px -24px 18px;overflow:hidden;border-radius:22px 22px 0 0;background:#071016;border-bottom:1px solid var(--line)}
.service-card-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.08) brightness(.75)}
.service-card-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,16,22,.05),rgba(7,16,22,.68))}
.service-hero-visual{display:grid;grid-template-columns:1fr .82fr;gap:28px;align-items:center}
.service-photo{position:relative;height:360px;border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.service-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.08) brightness(.8)}
.photo-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:28px}
.photo-strip .photo-frame{height:235px}
.brands-band{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:24px}
.brand-pill{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:16px;padding:18px;text-align:center;color:var(--muted);font-weight:800}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.trust-card{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:22px;padding:24px;color:var(--muted)}
.trust-card strong{color:#fff;display:block;margin-bottom:8px}
@media(max-width:850px){.service-hero-visual,.photo-strip,.trust-grid{grid-template-columns:1fr}.brands-band{grid-template-columns:1fr 1fr}.hero-photo,.service-photo{height:260px}}


/* Fixed service card layout: 4 across desktop, 2 tablet, 1 mobile */
#services .cards{
 grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
#services .card{
 min-width:0;
}
#services .card h3{
 font-size:20px;
}
#services .card p{
 font-size:15px;
}
@media(max-width:1150px){
 #services .cards{
 grid-template-columns:repeat(2,minmax(0,1fr)) !important;
 }
}
@media(max-width:700px){
 #services .cards{
 grid-template-columns:1fr !important;
 }
}


/* Homepage concept image section */
.home-concept{
 background:#f5f7fb;
 color:#08213a;
 padding:0;
}
.home-concept .concept-wrap{
 width:100%;
 margin:0 auto;
}
.home-concept img{
 display:block;
 width:100%;
 height:auto;
}
.home-followup{
 background:#ffffff;
 color:#08213a;
 padding:60px 0;
}
.home-followup .section-title h2{
 color:#08213a;
}
.home-followup .section-title p{
 color:#526273;
}
.home-followup .card{
 background:#ffffff;
 color:#08213a;
 box-shadow:0 10px 30px rgba(8,33,58,.12);
 border:1px solid rgba(8,33,58,.12);
}
.home-followup .card p{
 color:#526273;
}
.home-followup .btn-secondary{
 color:#e63131;
 border-color:#e63131;
 background:#ffffff;
}
.home-map{
 display:grid;
 grid-template-columns:.9fr 1.3fr;
 background:#f5f7fb;
 color:#08213a;
}
.home-map-info{
 background:#08213a;
 color:#fff;
 padding:48px max(28px,6vw);
}
.home-map-info p{
 color:#d6e2ee;
}
.map-placeholder{
 min-height:390px;
 background:
 linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,.55)),
 repeating-linear-gradient(0deg,#d7dde4 0 2px,transparent 2px 58px),
 repeating-linear-gradient(90deg,#d7dde4 0 2px,transparent 2px 72px);
 position:relative;
 overflow:hidden;
}
.map-pin{
 position:absolute;
 left:52%;
 top:48%;
 transform:translate(-50%,-50%);
 background:#e63131;
 color:#fff;
 padding:14px 18px;
 border-radius:12px;
 font-weight:800;
 box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.map-pin:before{
 content:"";
 position:absolute;
 left:18px;
 bottom:-12px;
 border-left:10px solid transparent;
 border-right:10px solid transparent;
 border-top:14px solid #e63131;
}
#services .cards{
 grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
@media(max-width:1100px){
 #services .cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
 .home-map{grid-template-columns:1fr;}
}
@media(max-width:700px){
 #services .cards{grid-template-columns:1fr !important;}
}


/* Yakima corrected homepage */
.yakima-hero{
 background:linear-gradient(135deg,#08213a 0%,#0f3e66 55%,#071016 100%);
}
.home-map{
 display:grid;
 grid-template-columns:.9fr 1.3fr;
 background:#f5f7fb;
 color:#08213a;
}
.home-map-info{
 background:#08213a;
 color:#fff;
 padding:48px max(28px,6vw);
}
.home-map-info p{color:#d6e2ee}
.yakima-map{
 min-height:430px;
 position:relative;
 overflow:hidden;
 background:
 radial-gradient(circle at 54% 48%,rgba(230,49,49,.18),transparent 0 95px,transparent 96px),
 linear-gradient(135deg,#dfe8d9 0%,#eef2e8 45%,#d5e3c8 100%);
}
.yakima-map:before{
 content:"";
 position:absolute;
 inset:0;
 background:
 repeating-linear-gradient(0deg,rgba(70,96,113,.22) 0 2px,transparent 2px 72px),
 repeating-linear-gradient(90deg,rgba(70,96,113,.18) 0 2px,transparent 2px 88px);
 opacity:.75;
}
.yakima-road{
 position:absolute;
 background:#ffffff;
 box-shadow:0 0 0 2px rgba(70,96,113,.18);
 border-radius:999px;
 opacity:.96;
}
.road-a{width:78%;height:18px;left:8%;top:47%;transform:rotate(-18deg)}
.road-b{width:62%;height:16px;left:28%;top:60%;transform:rotate(23deg)}
.road-c{width:18px;height:82%;left:52%;top:6%;transform:rotate(7deg)}
.yakima-label{
 position:absolute;
 background:rgba(255,255,255,.85);
 color:#08213a;
 padding:8px 12px;
 border-radius:10px;
 font-weight:800;
 box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.yakima-city{left:40%;top:27%}
.union-gap{left:56%;top:68%}
.map-pin{
 position:absolute;
 left:52%;
 top:50%;
 transform:translate(-50%,-50%);
 background:#e63131;
 color:#fff;
 padding:14px 18px;
 border-radius:12px;
 font-weight:800;
 box-shadow:0 12px 28px rgba(0,0,0,.24);
 z-index:2;
 text-align:left;
}
.map-pin:before{
 content:"";
 position:absolute;
 left:18px;
 bottom:-12px;
 border-left:10px solid transparent;
 border-right:10px solid transparent;
 border-top:14px solid #e63131;
}
#services .cards{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
@media(max-width:1100px){
 .home-map{grid-template-columns:1fr}
 #services .cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:700px){
 #services .cards{grid-template-columns:1fr !important}
}


/* 1stMile-style homepage hero with Google map in main section */
.compwrx-main-hero{
 background:linear-gradient(135deg,#08213a 0%,#0f3e66 52%,#071016 100%);
 padding:20px 0 30px;
}
.hero-layout-map{
 display:grid;
 grid-template-columns:1.05fr .95fr;
 gap:34px;
 align-items:center;
}
.hero-copy .eyebrow{
 display:inline-flex;
 color:#fff;
 background:rgba(255,255,255,.12);
 border:1px solid rgba(255,255,255,.2);
 border-radius:999px;
 padding:8px 13px;
 font-weight:800;
 margin-bottom:16px;
}
.hero-copy h1{
 color:#fff;
 margin-top:0;
}
.hero-copy h1 strong{
 color:#f6c64a;
}
.hero-copy p{
 color:#d6e2ee;
 font-size:20px;
 max-width:720px;
}
.hero-meta{
 display:flex;
 flex-wrap:wrap;
 gap:10px;
 margin-top:22px;
}
.hero-meta span{
 background:rgba(255,255,255,.12);
 border:1px solid rgba(255,255,255,.18);
 color:#fff;
 padding:8px 12px;
 border-radius:999px;
 font-weight:700;
 font-size:14px;
}

.compact-card{
 padding:18px;
}


.home-map-card{
 overflow:hidden;
 border-radius:24px;
 border:1px solid var(--line);
 background:#fff;
 box-shadow:var(--shadow);
}
.home-map-card iframe{
 width:100%;
 height:280px;
 border:0;
 display:block;
}
.map-label{
 display:grid;
 gap:3px;
 padding:14px 16px;
 background:#08213a;
 color:#fff;
}
.map-label span{
 color:#d6e2ee;
 font-size:14px;
}
.map-link{
 display:block;
 padding:12px 16px;
 background:#f5f7fb;
 color:#08213a;
 font-weight:800;
 text-decoration:none;
}
.feature-strip{
 background:#f5f7fb;
 color:#08213a;
 padding:24px 0;
}
.feature-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:14px;
}
.mini-card{
 display:flex;
 align-items:center;
 gap:12px;
 background:#fff;
 border:1px solid rgba(8,33,58,.12);
 border-radius:18px;
 padding:16px;
 box-shadow:0 10px 28px rgba(8,33,58,.08);
}
.mini-card span{
 font-size:24px;
}
.mini-card small{
 color:#526273;
 font-weight:600;
}
.home-followup{
 background:#fff;
 color:#08213a;
}
.home-followup .section-title h2{color:#08213a}
.home-followup .section-title p{color:#526273}
.home-followup .card{
 background:#fff;
 color:#08213a;
 border:1px solid rgba(8,33,58,.12);
 box-shadow:0 10px 30px rgba(8,33,58,.12);
}
.home-followup .card p{color:#526273}
#services .cards{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
@media(max-width:1100px){
 .hero-layout-map{grid-template-columns:1fr}
 .feature-grid{grid-template-columns:repeat(2,1fr)}
 #services .cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:700px){
 .feature-grid{grid-template-columns:1fr}
 #services .cards{grid-template-columns:1fr !important}
}





/* Clean header brand: logo + Computer Works only */
.brand-wrap{
  display:flex;
  align-items:center;
  gap:14px;
  text-decoration:none;
  white-space:nowrap;
  flex-shrink:0;
}
.brand-wrap img{
  height:58px;
  width:auto;
  display:block;
}
.company-name{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  font-weight:900;
  font-size:clamp(22px,2.2vw,34px);
  line-height:1;
  letter-spacing:-0.03em;
  white-space:nowrap;
}
.company-name .cw-computer{
  color:#243f8f;
}
.company-name .cw-works{
  color:#0a9f4a;
}
.logo{
  display:none !important;
}
@media(max-width:900px){
  .company-name{
    font-size:22px;
  }
  .brand-wrap img{
    height:46px;
  }
}
@media(max-width:620px){
  .company-name{
    font-size:18px;
  }
}


/* Gradient Computer Works branding */
.company-name{
  font-weight:900 !important;
  background:linear-gradient(90deg,#ffb347 0%,#ff8c42 30%,#ff6b35 60%,#d94b2b 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  color:transparent !important;
}
.company-name .cw-computer,
.company-name .cw-works{
  color:inherit !important;
}
.brand-gradient,
.hero-brand,
.footer-brand{
  background:linear-gradient(90deg,#ffb347 0%,#ff8c42 30%,#ff6b35 60%,#d94b2b 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.hero-copy h1{
    margin-top:0 !important;
}
.site-header{
    margin-bottom:0 !important;
}

.hero-address{
    font-size:1.1rem;
    color:#f5f7fb;
    margin-top:10px;
    font-weight:600;
}


/* Remove non-clickable service-page badge */
.service-hero-panel .kicker,
.service-page .kicker{
  display:none !important;
}


/* Gradient styling for all primary call buttons to match Computer Works logo */
.btn-primary {
    background: linear-gradient(90deg,#ffb347 0%,#ff8c42 30%,#ff6b35 60%,#d94b2b 100%) !important;
    color: #fff !important;
    border: none !important;
    font-weight: 700 !important;
    transition: all 0.3s ease;
}

.btn-primary:hover {
    filter: brightness(1.1);
}


/* Make every Call button consistent */
.btn-primary,
.btn-orange,
.cta .btn,
.cta a[href^="tel:"] {
    background: linear-gradient(90deg,#ffb347 0%,#ff8c42 30%,#ff6b35 60%,#d94b2b 100%) !important;
    color: #fff !important;
    border: none !important;
    font-weight: 800 !important;
    box-shadow: 0 12px 30px rgba(217,75,43,.25) !important;
}

.btn-primary:hover,
.btn-orange:hover,
.cta .btn:hover,
.cta a[href^="tel:"]:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}








/* Home page background matched to Repair page dark blue gradient colors */

















/* Home page exact darker Repair page gradient */



/* Apply current homepage gradient consistently across homepage sections */



/* Shorten homepage top padding */


/* Align right-hand boxes better */
.home-followup .mini-card,
.home-followup .card {
    display: inline-block !important;
    vertical-align: top !important;
    margin-bottom: 15px !important;
}


/* Updated Local computer service and support image */



/* Show the full Local computer service/support image and remove extra caption space */




/* Shorten homepage top hero section to fit on one page */



/* Display the two boxes side by side and move text below */
.hero-boxes-flex {
    display:flex !important;
    gap:15px !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
}

.hero-boxes-flex .card,
.hero-boxes-flex .mini-card {
    flex:1 1 48% !important;
}

.hero-left-text {
    width:100% !important;
    margin-top:20px !important;
}


/* Actual homepage hero relayout: image + map side by side, text below */






















@media(max-width:900px){
  
  
  
}


/* Make Local Computer Service image fill box to match map size */







/* Make the two top homepage boxes exactly equal size */












@media(max-width:900px){
  
  
  
}




/* Left homepage image: same image, cropped to the box ratio, no other layout changes */





/* Keep the two top boxes visible after removing the lower text/detail block */




@media(max-width:900px){
  
}


/* Make homepage service boxes behave like buttons */
.feature-grid .mini-card{
  text-decoration:none !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}

.feature-grid .mini-card:hover{
  transform:translateY(-3px) !important;
}
























/* CLEAN SLIDER SYSTEM (ONLY SOURCE OF TRUTH) */

.hero-layout-map{
  display:grid !important;
  grid-template-columns: 1fr !important;
}





/* SLIDER */








.home-map-card{
  display:flex !important;
  flex-direction:column !important;
}

.home-map-card iframe{
  flex:1;
}


/* === SINGLE SOURCE SLIDER FIX (LOCKED) === */

.hero-side-stack{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}












.hero-side-stack{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:18px !important;
}

.service-photo-card,
.home-map-card{
  height:405px !important;
  overflow:hidden !important;
}

.cw-slider{
  position:relative !important;
  width:100% !important;
  height:100% !important;
}

.cw-slide{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:0 !important;
  transition:opacity .6s ease !important;
}

.cw-slide.active{
  opacity:1 !important;
  z-index:2 !important;
}


/* Smart Slider plugin-ready homepage layout */
.hero-side-stack{
  display:grid !important;
  grid-template-columns:2fr 1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}

.smart-slider-card,
.home-map-card{
  min-height:405px !important;
  height:405px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

.smart-slider-card{
  padding:0 !important;
  position:relative !important;
  background:#07111d !important;
}

/* Let Smart Slider 3 fully occupy the left homepage card */
.smart-slider-card .n2-section-smartslider,
.smart-slider-card .n2-ss-align,
.smart-slider-card .n2-ss-slider,
.smart-slider-card .n2-ss-slider-1,
.smart-slider-card .n2-ss-slider-wrapper-inside,
.smart-slider-card .n2-ss-slide,
.smart-slider-card .n2-ss-slide-background,
.smart-slider-card .n2-ss-slide-background-image{
  width:100% !important;
  height:100% !important;
  min-height:405px !important;
}

/* Keep the map equal height */
.home-map-card{
  display:flex !important;
  flex-direction:column !important;
}

.home-map-card .map-label,
.home-map-card .map-link{
  flex:0 0 auto !important;
}

.home-map-card iframe{
  flex:1 1 auto !important;
  height:auto !important;
  min-height:0 !important;
  width:100% !important;
}

@media(max-width:900px){
  .hero-side-stack{
    grid-template-columns:1fr !important;
  }
  .smart-slider-card,
  .home-map-card{
    height:auto !important;
    min-height:0 !important;
  }
  .smart-slider-card{
    aspect-ratio:16/5 !important;
  }
}


/* FORCE HOMEPAGE HERO TO 66/33 */
.hero-layout-map .hero-side-stack{
    display:grid !important;
    grid-template-columns: 2fr 1fr !important;
    gap:18px !important;
    width:100% !important;
}

.hero-layout-map .service-photo-card{
    width:auto !important;
}

.hero-layout-map .home-map-card{
    width:auto !important;
}

@media (max-width:900px){
    .hero-layout-map .hero-side-stack{
        grid-template-columns:1fr !important;
    }
}


/* FINAL EXACT 66/33 HOMEPAGE HERO SPLIT */
.compwrx-main-hero .container.hero-layout-map{
  display:block !important;
  width:100% !important;
  max-width:1200px !important;
}

.compwrx-main-hero .container.hero-layout-map > aside.hero-side-stack.compwrx-hero-split{
  display:grid !important;
  grid-template-columns:minmax(0,2fr) minmax(0,1fr) !important;
  gap:18px !important;
  width:100% !important;
  align-items:stretch !important;
}

.compwrx-main-hero .compwrx-slider-two-thirds{
  grid-column:1 !important;
  width:100% !important;
  min-width:0 !important;
}

.compwrx-main-hero .compwrx-map-one-third{
  grid-column:2 !important;
  width:100% !important;
  min-width:0 !important;
}

@media(max-width:900px){
  .compwrx-main-hero .container.hero-layout-map > aside.hero-side-stack.compwrx-hero-split{
    grid-template-columns:1fr !important;
  }
  .compwrx-main-hero .compwrx-slider-two-thirds,
  .compwrx-main-hero .compwrx-map-one-third{
    grid-column:auto !important;
  }
}


/* Service page primary banner images */
.service-primary-image{
  width:100%;
  margin:0 0 24px 0;
  border-radius:34px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:#000;
}
.service-primary-image img{
  width:100%;
  height:auto;
  display:block;
}
.service-page .service-hero-panel{
  margin-bottom:24px;
}


/* Service page banner width correction */
.service-primary-image{
  max-width:880px !important;
  margin:0 auto 24px auto !important;
}

.service-primary-image img{
  width:100% !important;
  height:auto !important;
  display:block !important;
}

@media(max-width:900px){
  .service-primary-image{
    max-width:100% !important;
  }
}


/* FINAL service page image fit correction */
.service-page .container{
  max-width:1160px !important;
}

.service-page .service-primary-image{
  width:100% !important;
  max-width:760px !important;
  margin:0 auto 22px auto !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

.service-page .service-primary-image img{
  width:100% !important;
  height:auto !important;
  max-height:320px !important;
  object-fit:contain !important;
  display:block !important;
}

@media(max-width:900px){
  .service-page .service-primary-image{
    max-width:100% !important;
  }
  .service-page .service-primary-image img{
    max-height:none !important;
  }
}


/* FINAL service page image full-width fit */
.service-page .service-primary-image{
  width:100% !important;
  max-width:100% !important;
  margin:0 0 24px 0 !important;
  border-radius:34px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

.service-page .service-primary-image img{
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  display:block !important;
}


/* Remove extra spacing where service intro panel was removed */
.service-page .service-primary-image{
  margin-bottom:24px !important;
}


/* Force header menu onto a single line */
.nav-wrap{
  flex-wrap:nowrap !important;
}
.nav{
  flex-wrap:nowrap !important;
  gap:12px !important;
}
.nav a{
  font-size:14px !important;
  white-space:nowrap !important;
}
.logo img{
  height:52px !important;
}


/* Keep Check Email before Call button */
.nav .btn-primary{
  order:99;
}


/* Compress service page content sections without changing content */
.service-layout{
  gap:16px !important;
  margin-top:12px !important;
}

.service-section{
  padding:18px !important;
  margin:0 !important;
}

.service-section h2{
  margin-top:0 !important;
  margin-bottom:10px !important;
}

.service-list{
  gap:8px !important;
}

.service-item{
  padding:10px !important;
  margin:0 !important;
}

.checks li,
.steps li{
  margin-bottom:4px !important;
}

.notice-box{
  margin-top:12px !important;
  padding:12px !important;
}


/* Make service content noticeably shorter */
.service-layout{
  display:block !important;
}

.service-section{
  padding:14px !important;
}

.service-section p,
.service-item span,
.checks li,
.steps li{
  font-size:14px !important;
  line-height:1.35 !important;
}

.service-item{
  padding:8px !important;
}

.checks,
.steps{
  margin:8px 0 !important;
}

.service-section + .service-section{
  margin-top:10px !important;
}


/* Desktop two-column service content to reduce page height */
@media(min-width:901px){
  .service-layout{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:16px !important;
    align-items:start !important;
    margin-top:12px !important;
  }

  .service-section + .service-section{
    margin-top:0 !important;
  }

  .service-section{
    height:auto !important;
  }
}

@media(max-width:900px){
  .service-layout{
    display:block !important;
  }
}


/* Extra compression of service pages */
@media(min-width:901px){

  .service-list{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .service-item{
    padding:6px 8px !important;
  }

  .service-item strong{
    display:block !important;
    font-size:14px !important;
    margin-bottom:2px !important;
  }

  .service-item span{
    font-size:13px !important;
    line-height:1.25 !important;
  }

  .checks,
  .steps{
    columns:2 !important;
    column-gap:24px !important;
  }

  .checks li,
  .steps li{
    break-inside:avoid !important;
    margin-bottom:3px !important;
  }

  .service-section h2{
    font-size:24px !important;
    margin-bottom:6px !important;
  }
}


/* Compress the right-side service section to match the left */
@media(min-width:901px){
  .service-layout > .service-section:nth-child(2){
    padding:12px !important;
  }

  .service-layout > .service-section:nth-child(2) h2{
    font-size:22px !important;
    line-height:1.05 !important;
    margin:0 0 6px 0 !important;
  }

  .service-layout > .service-section:nth-child(2) h2[style]{
    margin-top:14px !important;
  }

  .service-layout > .service-section:nth-child(2) ul.checks,
  .service-layout > .service-section:nth-child(2) ol.steps{
    columns:2 !important;
    column-gap:18px !important;
    margin:4px 0 10px 0 !important;
    padding-left:18px !important;
  }

  .service-layout > .service-section:nth-child(2) li{
    font-size:13px !important;
    line-height:1.22 !important;
    margin:0 0 2px 0 !important;
    padding:0 !important;
    break-inside:avoid !important;
  }

  .service-layout > .service-section:nth-child(2) .notice-box{
    font-size:13px !important;
    line-height:1.25 !important;
    padding:9px 10px !important;
    margin-top:8px !important;
  }
}




.page-main .split{
  gap:18px !important;
  align-items:start !important;
}

.page-main .panel{
  padding:20px !important;
}

.page-main .panel h1,
.page-main .panel h2{
  margin-top:0 !important;
  margin-bottom:12px !important;
}

.page-main .panel p{
  margin:0 0 10px 0 !important;
  line-height:1.35 !important;
}

.contact-form-compact{
  display:grid !important;
  gap:10px !important;
}

.contact-form-compact input,
.contact-form-compact textarea{
  padding:10px 12px !important;
}

.contact-request-options{
  background:rgba(255,255,255,.045);
  border:1px solid var(--line);
  border-radius:16px;
  padding:10px 12px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px 12px;
}

.contact-request-options strong{
  grid-column:1 / -1;
  font-size:14px;
  margin-bottom:2px;
}

.contact-request-options label{
  font-size:14px;
  line-height:1.25;
  color:var(--muted);
  display:flex;
  align-items:center;
  gap:7px;
}

.contact-request-options input{
  width:auto !important;
  min-width:auto !important;
  padding:0 !important;
}

@media(max-width:700px){
  .contact-request-options{
    grid-template-columns:1fr;
  }
}




.page-main .split > div:last-child,
.page-main .split > .panel:last-child{
  padding:14px !important;
}

.page-main .split > div:last-child h2,
.page-main .split > .panel:last-child h2{
  margin-bottom:8px !important;
  font-size:22px !important;
}

.page-main .split > div:last-child p,
.page-main .split > .panel:last-child p{
  font-size:14px !important;
  line-height:1.3 !important;
  margin-bottom:6px !important;
}

.page-main .split > div:last-child ul,
.page-main .split > .panel:last-child ul{
  columns:2 !important;
  column-gap:18px !important;
  margin:6px 0 !important;
}

.page-main .split > div:last-child li,
.page-main .split > .panel:last-child li{
  margin-bottom:2px !important;
  line-height:1.2 !important;
  break-inside:avoid !important;
}




.page-main .split > .panel:first-child{
  padding:20px !important;
}

.page-main .split > .panel:last-child{
  padding:12px !important;
}

.page-main .split > .panel:last-child h2{
  font-size:22px !important;
  margin:0 0 8px 0 !important;
  line-height:1.1 !important;
}

.contact-form-compact{
  gap:7px !important;
}

.contact-form-compact input,
.contact-form-compact textarea{
  padding:8px 10px !important;
  font-size:14px !important;
}

.contact-form-compact textarea{
  min-height:82px !important;
  max-height:96px !important;
}

.contact-request-options{
  padding:8px 10px !important;
  gap:4px 10px !important;
}

.contact-request-options strong{
  font-size:13px !important;
  margin-bottom:0 !important;
}

.contact-request-options label{
  font-size:13px !important;
  line-height:1.15 !important;
}

.contact-form-compact .btn{
  padding:10px 18px !important;
}




.page-main .split > .panel:first-child{
  padding:20px !important;
}

.page-main .split > .panel:last-child{
  padding:12px !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}

.page-main .split > .panel:last-child h2{
  font-size:21px !important;
  line-height:1.05 !important;
  margin:0 0 8px 0 !important;
}

.contact-form-tight{
  display:grid !important;
  gap:7px !important;
}

.contact-field-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:7px !important;
}

.contact-form-tight input,
.contact-form-tight textarea{
  padding:7px 9px !important;
  font-size:13px !important;
  line-height:1.15 !important;
  min-height:32px !important;
}

.contact-form-tight textarea{
  min-height:58px !important;
  max-height:70px !important;
}

.contact-request-options.tight-options{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:4px 8px !important;
  padding:7px 9px !important;
  border-radius:12px !important;
}

.contact-request-options.tight-options strong{
  grid-column:1 / -1 !important;
  font-size:12px !important;
  line-height:1.05 !important;
  margin:0 !important;
}

.contact-request-options.tight-options label{
  font-size:12px !important;
  line-height:1.05 !important;
  gap:4px !important;
  white-space:nowrap !important;
}

.contact-request-options.tight-options input[type="checkbox"]{
  transform:scale(.85);
}

.contact-form-tight .btn{
  padding:8px 16px !important;
  min-height:34px !important;
  font-size:13px !important;
}

@media(max-width:700px){
  .contact-field-grid,
  .contact-request-options.tight-options{
    grid-template-columns:1fr !important;
  }
  .contact-request-options.tight-options label{
    white-space:normal !important;
  }
}




  .page-main .split > .panel{
    height:auto !important;
    align-self:stretch !important;
  }

  .page-main .split > .panel:first-child{
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
  }

  .page-main .split > .panel:last-child{
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    padding:10px 12px !important;
    overflow:visible !important;
    max-height:none !important;
  }

  .page-main .split > .panel:last-child h2{
    font-size:20px !important;
    line-height:1 !important;
    margin:0 0 6px 0 !important;
  }

  .contact-form-tight{
    gap:5px !important;
  }

  .contact-field-grid{
    grid-template-columns:1fr 1fr !important;
    gap:5px !important;
  }

  .contact-form-tight input,
  .contact-form-tight textarea{
    padding:6px 8px !important;
    font-size:12px !important;
    line-height:1.1 !important;
    min-height:28px !important;
  }

  .contact-form-tight textarea{
    min-height:46px !important;
    max-height:54px !important;
  }

  .contact-request-options.tight-options{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:3px 6px !important;
    padding:5px 7px !important;
    border-radius:10px !important;
  }

  .contact-request-options.tight-options strong{
    font-size:11px !important;
    line-height:1 !important;
    margin:0 !important;
  }

  .contact-request-options.tight-options label{
    font-size:11px !important;
    line-height:1 !important;
    gap:3px !important;
    white-space:nowrap !important;
  }

  .contact-request-options.tight-options input[type="checkbox"]{
    transform:scale(.78);
    margin:0 !important;
  }

  .contact-form-tight .btn{
    padding:7px 14px !important;
    min-height:30px !important;
    font-size:12px !important;
    margin-top:0 !important;
  }
}




  .page-main .split > .panel{
    align-self:stretch !important;
  }

  .page-main .split > .panel:last-child{
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    padding:14px !important;
    overflow:visible !important;
    max-height:none !important;
  }

  .page-main .split > .panel:last-child h2{
    font-size:22px !important;
    line-height:1.1 !important;
    margin:0 0 8px 0 !important;
  }

  .contact-form-tight{
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    gap:7px !important;
    flex:1 !important;
  }

  .contact-field-grid{
    grid-template-columns:1fr 1fr !important;
    gap:7px !important;
  }

  .contact-form-tight input,
  .contact-form-tight textarea{
    padding:7px 10px !important;
    font-size:13px !important;
    line-height:1.2 !important;
    min-height:32px !important;
  }

  .contact-form-tight textarea{
    min-height:64px !important;
    max-height:80px !important;
  }

  .contact-request-options.tight-options{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:5px 10px !important;
    padding:8px 10px !important;
    border-radius:12px !important;
  }

  .contact-request-options.tight-options strong{
    font-size:13px !important;
    line-height:1.1 !important;
  }

  .contact-request-options.tight-options label{
    font-size:13px !important;
    line-height:1.15 !important;
    gap:5px !important;
    white-space:normal !important;
  }

  .contact-request-options.tight-options input[type="checkbox"]{
    transform:scale(.9);
    margin:0 !important;
  }

  .contact-form-tight .btn{
    padding:9px 16px !important;
    min-height:36px !important;
    font-size:13px !important;
  }
}


/* Homepage conversion expansion */
.urgent-strip{padding:18px 0;background:linear-gradient(90deg,rgba(242,140,40,.95),rgba(13,143,232,.45));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.urgent-inner{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}
.urgent-inner strong{font-size:22px;color:#fff}
.urgent-inner span{color:#fff;font-weight:700}

.home-services-expanded,.trust-section,.success-section,.service-area-section,.faq-section{padding:48px 0}
.section-head{text-align:center;max-width:850px;margin:0 auto 24px}
.section-head h2{margin:10px 0 0}
.service-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.service-card-link{display:block;text-decoration:none;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow)}
.service-card-link span{font-size:32px}
.service-card-link h3{margin:8px 0 6px;font-size:20px}
.service-card-link p{color:var(--muted);font-size:14px;line-height:1.35}
.service-card-link b{color:#fff}

.trust-grid-home{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}
.trust-panel,.reviews-panel,.success-grid>div,.faq-grid>div{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}
.trust-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.trust-points span{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:14px;padding:10px;color:var(--muted);font-weight:700}
.review-card{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:16px;padding:12px;margin-top:10px;color:#ffc14d}
.review-card p{margin:4px 0 0;color:var(--muted)}

.success-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.faq-grid{grid-template-columns:repeat(4,1fr)}
.success-grid h3,.faq-grid h3{margin-top:0}
.success-grid p,.faq-grid p{color:var(--muted);font-size:14px;line-height:1.35}

.service-area-section{text-align:center}
.area-pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}
.area-pills span{padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--line);color:var(--muted);font-weight:800}

.service-faq-section{margin-top:22px}
.service-faq-section h2{font-size:28px;margin-bottom:14px}
.service-faq-grid{grid-template-columns:repeat(3,1fr)}

.contact-extra-options{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:4px 8px!important;
  padding:6px 8px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.045);
  border:1px solid var(--line);
}
.contact-extra-options strong{font-size:11px!important;line-height:1!important;color:#fff}
.contact-extra-options label{font-size:11px!important;line-height:1!important;color:var(--muted);display:flex;align-items:center;gap:3px;white-space:nowrap}
.contact-extra-options input{width:auto!important;min-width:auto!important;transform:scale(.78);margin:0!important;padding:0!important}

@media(max-width:900px){
 .service-card-grid,.trust-grid-home,.success-grid,.faq-grid,.service-faq-grid{grid-template-columns:1fr!important}
 .trust-points{grid-template-columns:1fr}
 .contact-extra-options{grid-template-columns:1fr 1fr!important}
}


/* Balanced two-row service area layout */
.area-pills-balanced{
  display:grid !important;
  grid-template-columns:repeat(5, auto) !important;
  justify-content:center !important;
  gap:10px 12px !important;
  max-width:900px;
  margin:18px auto 0 auto !important;
}

@media(max-width:900px){
  .area-pills-balanced{
    grid-template-columns:repeat(2, auto) !important;
  }
}


/* Polished service area section */
.area-pills-balanced{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(140px,1fr)) !important;
  max-width:820px !important;
  margin:20px auto 0 auto !important;
  gap:12px !important;
}

.area-pills-balanced span{
  text-align:center !important;
  width:100% !important;
  box-sizing:border-box !important;
}

@media(max-width:900px){
  .area-pills-balanced{
    grid-template-columns:repeat(2, minmax(140px,1fr)) !important;
    max-width:420px !important;
  }
}


/* Shorter 'Need Computer Help Now' strip */
.urgent-strip{
  padding:10px 0 !important;
}

.urgent-inner{
  gap:12px !important;
}

.urgent-inner strong{
  font-size:18px !important;
  line-height:1 !important;
}

.urgent-inner span{
  font-size:14px !important;
  line-height:1 !important;
}

.urgent-inner .btn{
  padding:8px 14px !important;
  min-height:auto !important;
}


/* Perfectly center service area city pills */
.area-pills-balanced{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(140px,1fr)) !important;
  max-width:820px !important;
  gap:12px !important;
}

.area-pills-balanced span{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:44px !important;
  width:100% !important;
  padding:10px 12px !important;
  box-sizing:border-box !important;
  margin:0 !important;
}

@media(max-width:900px){
  .area-pills-balanced{
    grid-template-columns:repeat(2,minmax(140px,1fr)) !important;
  }
}


/* Center FAQ section heading */
.faq-section{
  text-align:center !important;
}

.faq-section h2{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.faq-grid{
  text-align:left !important;
}

/* Expand common problems section to 6 cards */
.success-grid{
  grid-template-columns:repeat(3,1fr) !important;
}
@media(max-width:900px){
  .success-grid{
    grid-template-columns:1fr !important;
  }
}


.reviews-panel .review-card{
  margin-bottom:10px;
}
.reviews-panel .btn{
  width:100%;
  text-align:center;
}


/* Balance trust/reviews section and reduce height */
.trust-grid-home{
  align-items:stretch !important;
}

.trust-panel,
.reviews-panel{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  padding:18px !important;
}

.trust-panel h2,
.reviews-panel h2{
  margin-top:0 !important;
  margin-bottom:12px !important;
  font-size:28px !important;
}

.trust-points{
  grid-template-columns:1fr !important;
  gap:8px !important;
  margin-top:8px !important;
}

.trust-points span{
  padding:8px 12px !important;
  font-size:14px !important;
  line-height:1.2 !important;
}

.review-card{
  padding:10px 12px !important;
  margin-top:8px !important;
}

.review-card p{
  font-size:13px !important;
  line-height:1.25 !important;
}

.reviews-panel .btn{
  margin-top:auto !important;
}


/* Increase left trust spacing to visually match the reviews side */
.trust-panel{
  justify-content:flex-start !important;
}

.trust-points{
  gap:10px !important;
  margin-top:12px !important;
}

.trust-points span,
.trust-card{
  padding:10px 12px !important;
  line-height:1.25 !important;
  margin:0 !important;
}

.trust-card strong{
  margin-bottom:4px !important;
}

.trust-card p{
  line-height:1.3 !important;
}


/* Actual left trust panel fix: make it visually match the review cards */
.trust-panel,
.reviews-panel{
  padding:18px !important;
}

.trust-card-list{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  margin-top:10px !important;
}

.trust-card-list .trust-card{
  display:block !important;
  padding:10px 12px !important;
  margin:0 !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid var(--line) !important;
  border-radius:16px !important;
}

.trust-card-list .trust-card strong{
  display:block !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1.15 !important;
  margin:0 0 4px 0 !important;
}

.trust-card-list .trust-card p{
  color:var(--muted) !important;
  font-size:13px !important;
  line-height:1.25 !important;
  margin:0 !important;
}

/* prevent old span trust styling from affecting the new card layout */
.trust-card-list span{
  all:unset;
}


/* Header logo-only cleanup */
.company-name,
.cw-computer,
.cw-works{
  display:none !important;
}

.brand-wrap{
  display:flex !important;
  align-items:center !important;
  text-decoration:none !important;
  min-width:0 !important;
}

.brand-wrap img,
.logo img{
  height:72px !important;
  width:auto !important;
  display:block !important;
}


/* Wide transparent header logo */
.brand-wrap img,
.logo img{
  height:78px !important;
  width:auto !important;
  max-width:420px !important;
}


/* Larger wide header logo */
.brand-wrap img,
.logo img{
  height:110px !important;
  max-width:600px !important;
  width:auto !important;
}

@media(max-width:900px){
  .brand-wrap img,
  .logo img{
    height:80px !important;
    max-width:420px !important;
  }
}


/* Make the wide logo significantly larger */
.brand-wrap{
  flex:0 0 auto !important;
}

.brand-wrap img,
.logo img{
  height:140px !important;
  max-width:800px !important;
  width:auto !important;
}

/* Give the header enough room for the logo */
.site-header,
.site-header .container,
.header-inner{
  min-height:140px !important;
}

@media(max-width:1100px){
  .brand-wrap img,
  .logo img{
    height:100px !important;
    max-width:550px !important;
  }
}


/* Corrected tightly-cropped larger header logo */
.nav-wrap{
  padding:12px 0 !important;
  min-height:120px !important;
}

.brand-wrap{
  flex:0 0 360px !important;
  width:360px !important;
  max-width:360px !important;
  display:flex !important;
  align-items:center !important;
}

.brand-wrap img,
.logo img{
  height:auto !important;
  width:360px !important;
  max-width:360px !important;
  max-height:none !important;
  object-fit:contain !important;
}

.site-header,
.site-header .container{
  min-height:120px !important;
}

@media(max-width:1100px){
  .brand-wrap{
    flex-basis:280px !important;
    width:280px !important;
    max-width:280px !important;
  }
  .brand-wrap img,
  .logo img{
    width:280px !important;
    max-width:280px !important;
  }
}


/* Compact header with new 3D logo */
.site-header,
.site-header .container,
.header-inner,
.nav-wrap{
  min-height:72px !important;
  height:auto !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}

.brand-wrap{
  flex:0 0 420px !important;
  width:420px !important;
  max-width:420px !important;
  display:flex !important;
  align-items:center !important;
}

.brand-wrap img,
.logo img{
  width:420px !important;
  height:auto !important;
  max-width:420px !important;
  max-height:none !important;
  object-fit:contain !important;
}

@media(max-width:1100px){
  .brand-wrap,
  .brand-wrap img,
  .logo img{
    width:300px !important;
    max-width:300px !important;
    flex-basis:300px !important;
  }
}


/* Reduce top and bottom header padding */
.site-header,
.site-header .container,
.header-inner,
.nav-wrap{
  min-height:58px !important;
  padding-top:2px !important;
  padding-bottom:2px !important;
}

.brand-wrap{
  align-items:center !important;
}

.header-inner{
  align-items:center !important;
}


/* Unified dark visual theme */
:root{
  --bg:#02070d !important;
  --panel:#071522 !important;
  --panel2:#0b1d2f !important;
  --text:#f7fbff !important;
  --muted:#b9c9dd !important;
  --orange:#ff7a1a !important;
  --line:rgba(120,170,220,.18) !important;
}

body{
  background:
    radial-gradient(circle at 18% 0%, rgba(13,143,232,.18), transparent 32%),
    radial-gradient(circle at 84% 12%, rgba(255,122,26,.10), transparent 28%),
    #02070d !important;
  color:var(--text) !important;
}

.site-header,
.topbar,
footer,
.site-footer{
  background:#03080d !important;
  border-color:var(--line) !important;
}

.compwrx-main-hero,
.feature-strip,
.home-services-expanded,
.trust-section,
.success-section,
.service-area-section,
.faq-section,
.page-main,
.service-page{
  background:
    linear-gradient(180deg, rgba(7,21,34,.96), rgba(3,9,15,.96)) !important;
  color:var(--text) !important;
}

.feature-strip{
  border-top:1px solid var(--line) !important;
  border-bottom:1px solid var(--line) !important;
}

.card,
.panel,
.hero-card,
.mini-card,
.service-card-link,
.trust-panel,
.reviews-panel,
.success-grid > div,
.faq-grid > div,
.service-section,
.service-item,
.notice-box,
.service-primary-image,
.page-main .panel,
.contact-request-options,
.contact-extra-options,
.area-pills span,
.review-card,
.trust-card{
  background:linear-gradient(180deg, rgba(13,31,49,.96), rgba(7,18,30,.96)) !important;
  border:1px solid var(--line) !important;
  color:var(--text) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.28) !important;
}

.mini-card small,
.service-card-link p,
.trust-points span,
.review-card p,
.success-grid p,
.faq-grid p,
.service-section p,
.service-item span,
.checks li,
.steps li,
.page-main p,
.contact-request-options label,
.contact-extra-options label,
.contact-info-card small{
  color:var(--muted) !important;
}

.mini-card,
.service-card-link{
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.mini-card:hover,
.service-card-link:hover{
  transform:translateY(-2px);
  border-color:rgba(255,122,26,.45) !important;
  box-shadow:0 20px 50px rgba(255,122,26,.12) !important;
}

h1,h2,h3,
.service-card-link h3,
.success-grid h3,
.faq-grid h3,
.page-main h1,
.page-main h2{
  color:#fff !important;
}

.kicker{
  background:rgba(255,122,26,.12) !important;
  border-color:rgba(255,122,26,.35) !important;
  color:#ffd0b2 !important;
}

.area-pills span{
  background:linear-gradient(180deg, rgba(14,35,55,.95), rgba(9,22,36,.95)) !important;
}

input,
textarea,
select{
  background:#061423 !important;
  border:1px solid var(--line) !important;
  color:#fff !important;
}

input::placeholder,
textarea::placeholder{
  color:#8fa4bb !important;
}

.footer,
.site-footer,
footer{
  color:var(--muted) !important;
}

footer h2,
footer h3,
footer strong,
.site-footer h2,
.site-footer h3,
.site-footer strong{
  color:#ff9a42 !important;
}


/* Green Check Email button */
.menu-item a[href*="webmail.compwrx.com"]{
  background:linear-gradient(180deg,#4fc76a,#2e9f47) !important;
  color:#fff !important;
  padding:12px 22px !important;
  border-radius:999px !important;
  margin-left:12px !important;
  box-shadow:0 8px 24px rgba(79,199,106,.30) !important;
}

.menu-item a[href*="webmail.compwrx.com"]:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(79,199,106,.40) !important;
}


/* Stack Check Email and Call buttons in upper-right corner */
.header-actions,
.nav-actions,
.header-buttons{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:10px !important;
}

/* Green Check Email button */
a[href*="webmail.compwrx.com"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(180deg,#4fc76a,#2e9f47) !important;
  color:#fff !important;
  padding:12px 22px !important;
  border-radius:999px !important;
  box-shadow:0 8px 24px rgba(79,199,106,.30) !important;
  text-decoration:none !important;
}

/* Ensure call button sits underneath */
a[href^="tel:"]{
  display:inline-flex !important;
}


/* True stacked upper-right action buttons */
.nav-wrap{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.nav{
  flex:1 1 auto !important;
  justify-content:flex-end !important;
}

.header-action-stack{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:8px !important;
  flex:0 0 auto !important;
  margin-left:12px !important;
}

.header-action-stack .btn{
  white-space:nowrap !important;
  min-width:190px !important;
  padding:10px 18px !important;
  line-height:1 !important;
  text-align:center !important;
}

.header-call-btn{
  background:linear-gradient(135deg,#ffad4a,#f04b25) !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(240,75,37,.28) !important;
}

.header-email-btn{
  background:linear-gradient(135deg,#6ee06f,#159447) !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(21,148,71,.28) !important;
  border:1px solid transparent !important;
}

.header-email-btn:hover,
.header-call-btn:hover{
  transform:translateY(-1px);
}

@media(max-width:1100px){
  .header-action-stack .btn{
    min-width:160px !important;
    padding:9px 14px !important;
    font-size:13px !important;
  }
}


/* Smaller stacked buttons */
.header-action-stack .btn{
  min-width:165px !important;
  padding:8px 14px !important;
  font-size:14px !important;
  border-radius:999px !important;
}

/* Stronger green gradient and glow */
.header-email-btn{
  background:linear-gradient(135deg,#7ff57d 0%, #38c25a 45%, #1b8c3d 100%) !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(56,194,90,.35) !important;
}

/* Slightly reduce call button too */
.header-call-btn{
  box-shadow:0 12px 30px rgba(240,75,37,.25) !important;
}


/* Force the green button gradient and override generic .btn styles */
.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover,
.header-action-stack .header-email-btn:focus{
  background-image: linear-gradient(180deg, #7ff57d 0%, #38c25a 55%, #1b8c3d 100%) !important;
  background-color: #38c25a !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 12px 30px rgba(56,194,90,.35) !important;
}

/* Match the call button's glossy look */
.header-action-stack .header-email-btn::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.22) 0%,
    rgba(255,255,255,.08) 35%,
    rgba(255,255,255,0) 100%
  );
  pointer-events:none;
}

.header-action-stack .header-email-btn{
  position:relative !important;
  overflow:hidden !important;
}


/* Make the 4 homepage service buttons dark green instead of blue */
.mini-card,
.service-card-link{
  background:linear-gradient(
    180deg,
    rgba(14,40,22,.96),
    rgba(8,24,14,.96)
  ) !important;
  border:1px solid rgba(90,180,110,.22) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.28) !important;
}

.mini-card:hover,
.service-card-link:hover{
  border-color:rgba(111,214,128,.45) !important;
  box-shadow:0 20px 50px rgba(56,194,90,.16) !important;
}


/* Option 3: Dark charcoal cards with subtle green glow */
.mini-card,
.service-card-link{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(
      circle at 18% 15%,
      rgba(72,200,110,.10) 0%,
      rgba(72,200,110,.04) 18%,
      transparent 45%
    ),
    linear-gradient(
      180deg,
      rgba(12,20,28,.98),
      rgba(7,12,18,.98)
    ) !important;
  border:1px solid rgba(72,200,110,.20) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.30) !important;
}

.mini-card:hover,
.service-card-link:hover{
  border-color:rgba(111,214,128,.42) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 24px rgba(72,200,110,.12) !important;
  transform:translateY(-2px);
}

.mini-card h3,
.service-card-link h3{
  color:#ffffff !important;
}

.mini-card p,
.service-card-link p{
  color:#b9c9dd !important;
}


/* Slightly brighter emerald glow on the 4 service cards */
.mini-card,
.service-card-link{
  background:
    radial-gradient(
      circle at 18% 15%,
      rgba(90,235,135,.18) 0%,
      rgba(90,235,135,.08) 22%,
      transparent 48%
    ),
    linear-gradient(
      180deg,
      rgba(12,20,28,.98),
      rgba(7,12,18,.98)
    ) !important;
  border:1px solid rgba(90,235,135,.24) !important;
}

.mini-card:hover,
.service-card-link:hover{
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 30px rgba(90,235,135,.18) !important;
}

/* Make Check Email match the same dark card + emerald glow */
.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  background:
    radial-gradient(
      circle at 18% 15%,
      rgba(90,235,135,.20) 0%,
      rgba(90,235,135,.10) 28%,
      transparent 55%
    ),
    linear-gradient(
      180deg,
      rgba(14,40,22,.98),
      rgba(8,24,14,.98)
    ) !important;
  border:1px solid rgba(90,235,135,.28) !important;
  color:#fff !important;
  box-shadow:
    0 12px 30px rgba(0,0,0,.28),
    0 0 24px rgba(90,235,135,.18) !important;
}


/* Match the LED logo with a more intense blue border while keeping green backgrounds */
.mini-card,
.service-card-link{
  border:1px solid rgba(70,150,255,.38) !important;
  box-shadow:
    0 18px 45px rgba(0,0,0,.30),
    inset 0 0 0 1px rgba(70,150,255,.05) !important;
}

.mini-card:hover,
.service-card-link:hover{
  border-color:rgba(90,180,255,.60) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 26px rgba(70,150,255,.18),
    0 0 24px rgba(90,235,135,.14) !important;
}

/* Keep green background on Check Email but use the same blue border */
.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  border:1px solid rgba(70,150,255,.45) !important;
  box-shadow:
    0 12px 30px rgba(0,0,0,.28),
    0 0 22px rgba(70,150,255,.16),
    0 0 20px rgba(90,235,135,.14) !important;
}


/* Slightly thicker LED-blue borders */
.mini-card,
.service-card-link{
  border:2px solid rgba(80,165,255,.48) !important;
  box-shadow:
    0 18px 45px rgba(0,0,0,.30),
    inset 0 0 0 1px rgba(120,190,255,.08) !important;
}

/* Brighten the green backgrounds slightly */
.mini-card,
.service-card-link,
.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  background:
    radial-gradient(
      circle at 18% 15%,
      rgba(105,245,150,.24) 0%,
      rgba(105,245,150,.12) 30%,
      transparent 58%
    ),
    linear-gradient(
      180deg,
      rgba(18,48,28,.98),
      rgba(10,28,16,.98)
    ) !important;
}

/* Match the email button border thickness */
.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  border:2px solid rgba(80,165,255,.52) !important;
}


/* Test: remove borders from service cards and Check Email button */
.mini-card,
.service-card-link{
  border:none !important;
  box-shadow:
    0 18px 45px rgba(0,0,0,.30),
    0 0 18px rgba(90,235,135,.10) !important;
}

.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  border:none !important;
  box-shadow:
    0 12px 30px rgba(0,0,0,.28),
    0 0 18px rgba(90,235,135,.12) !important;
}


/* Test: neon green LED borders matching the logo */
.mini-card,
.service-card-link{
  border:2px solid rgba(105,255,140,.65) !important;
  box-shadow:
    0 18px 45px rgba(0,0,0,.30),
    0 0 12px rgba(105,255,140,.18),
    0 0 24px rgba(105,255,140,.08) !important;
}

.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited,
.header-action-stack .header-email-btn:hover{
  border:2px solid rgba(105,255,140,.70) !important;
  box-shadow:
    0 12px 30px rgba(0,0,0,.28),
    0 0 12px rgba(105,255,140,.22),
    0 0 24px rgba(105,255,140,.10) !important;
}


/* Refine neon border: slightly thinner */
.mini-card,
.service-card-link{
  border:1.5px solid rgba(105,255,140,.62) !important;
}

.header-action-stack .header-email-btn,
.header-action-stack .header-email-btn:link,
.header-action-stack .header-email-btn:visited{
  border:1.5px solid rgba(105,255,140,.66) !important;
}

/* Match Check Email hover to the service cards */
.header-action-stack .header-email-btn:hover{
  border:1.5px solid rgba(111,255,146,.78) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 12px rgba(105,255,140,.18),
    0 0 24px rgba(105,255,140,.08) !important;
  transform:translateY(-2px) !important;
}


/* Force Check Email hover to match service cards */
.header-action-stack .header-email-btn:hover,
.header-action-stack .header-email-btn:focus{
  transform: translateY(-2px) !important;
  border-color: rgba(111,255,146,.78) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 12px rgba(105,255,140,.18),
    0 0 24px rgba(105,255,140,.08) !important;
  filter: brightness(1.06) !important;
}

/* Disable generic button hover rules overriding it */
.header-action-stack .header-email-btn:hover::before{
  opacity: 0 !important;
}


/* Keep green button, but make hover glow blue like the service cards */
.header-action-stack .header-email-btn:hover,
.header-action-stack .header-email-btn:focus{
  transform:translateY(-2px) !important;
  filter:brightness(1.06) !important;
  border-color:rgba(105,255,140,.72) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 14px rgba(70,150,255,.22),
    0 0 28px rgba(70,150,255,.12) !important;
}


/* Thin new computers announcement ribbon */
.cw-computers-ribbon{
  background:
    radial-gradient(circle at 12% 50%, rgba(105,255,140,.12), transparent 30%),
    linear-gradient(180deg, rgba(10,18,26,.98), rgba(6,10,15,.98));
  border-top:1px solid rgba(105,255,140,.25);
  border-bottom:1px solid rgba(105,255,140,.25);
}

.ribbon-inner{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.ribbon-text{
  color:#fff;
  font-size:15px;
  display:flex;
  align-items:center;
  gap:12px;
}

.ribbon-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#69ff8c;
  box-shadow:0 0 12px rgba(105,255,140,.7);
  flex:0 0 auto;
}

.ribbon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 16px;
  border-radius:999px;
  text-decoration:none;
  color:#fff !important;
  background:
    radial-gradient(circle at 18% 15%, rgba(105,245,150,.24), transparent 58%),
    linear-gradient(180deg, rgba(18,48,28,.98), rgba(10,28,16,.98));
  border:1.5px solid rgba(105,255,140,.62);
  box-shadow:
    0 0 12px rgba(105,255,140,.18),
    0 0 24px rgba(105,255,140,.08);
}

.ribbon-btn:hover{
  transform:translateY(-2px);
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 14px rgba(70,150,255,.22),
    0 0 28px rgba(70,150,255,.12);
}

@media(max-width:900px){
  .ribbon-inner{
    flex-direction:column;
    padding:10px 0;
    min-height:auto;
  }
  .ribbon-text{
    text-align:center;
    justify-content:center;
    font-size:14px;
  }
}


/* Make ribbon shorter */
.ribbon-inner{
  min-height:44px !important;
  gap:14px !important;
}

.ribbon-text{
  font-size:14px !important;
  gap:10px !important;
}

/* Match Request a Quote button size to header buttons */
.ribbon-btn{
  min-width:165px !important;
  padding:8px 14px !important;
  font-size:14px !important;
  line-height:1 !important;
  border-radius:999px !important;
}

.ribbon-dot{
  width:8px !important;
  height:8px !important;
}


/* Slightly larger ribbon text */
.ribbon-text{
  font-size:15px !important;
}


/* Ribbon keyword highlighting */
.ribbon-text{
  font-size:15px !important;
  font-weight:600 !important;
}

.rib-green{
  color:#8dff9f !important;
  text-shadow:0 0 8px rgba(105,255,140,.22);
}

.rib-blue{
  color:#8fc7ff !important;
  text-shadow:0 0 8px rgba(70,150,255,.20);
}

.rib-sep{
  color:rgba(255,255,255,.45) !important;
  margin:0 8px;
}


/* Improve main menu readability */
.nav{
  gap:16px !important;
}

.nav a{
  color:#f4f8ff !important;
  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  text-shadow:0 0 8px rgba(70,150,255,.20) !important;
  padding:8px 4px !important;
}

.nav a:hover{
  color:#8fc7ff !important;
  text-shadow:
    0 0 8px rgba(70,150,255,.38),
    0 0 14px rgba(105,255,140,.16) !important;
}

/* Keep menu readable beside stacked buttons */
@media(min-width:901px){
  .nav{
    flex-wrap:nowrap !important;
  }
}


/* Re-center header balance */
.nav-wrap{
  display:grid !important;
  grid-template-columns: 420px 1fr 180px !important;
  align-items:center !important;
  gap:20px !important;
}

.brand-wrap{
  justify-self:start !important;
}

.nav{
  justify-content:center !important;
  text-align:center !important;
}

.header-action-stack{
  justify-self:end !important;
}

@media(max-width:1100px){
  .nav-wrap{
    display:flex !important;
  }
}


/* Fix header balance: undo forced grid and pull buttons inward */
.nav-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.brand-wrap{
  flex:0 0 auto !important;
  justify-self:auto !important;
}

.nav{
  flex:1 1 auto !important;
  justify-content:center !important;
  text-align:center !important;
  gap:14px !important;
}

.header-action-stack{
  flex:0 0 auto !important;
  justify-self:auto !important;
  margin-left:6px !important;
  margin-right:34px !important;
}

@media(max-width:1100px){
  .header-action-stack{
    margin-right:0 !important;
  }
}


/* Header test layout: buttons top-right, menu bottom-right */
@media(min-width:901px){
  .nav-wrap{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    column-gap:24px !important;
    row-gap:4px !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-top:6px !important;
    padding-bottom:6px !important;
  }

  .brand-wrap{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    justify-self:start !important;
    align-self:center !important;
  }

  .header-action-stack{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:end !important;
    align-self:end !important;
    display:flex !important;
    flex-direction:row !important;
    gap:10px !important;
    margin:0 !important;
  }

  .header-action-stack .btn{
    min-width:165px !important;
    padding:8px 14px !important;
    font-size:14px !important;
  }

  .nav{
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:end !important;
    justify-content:flex-end !important;
    align-self:start !important;
    gap:16px !important;
    margin:0 !important;
  }

  .site-header,
  .site-header .container{
    min-height:auto !important;
  }
}


/* Add more separation between top buttons and lower menu */
@media(min-width:901px){
  .nav{
    margin-top:12px !important;
    padding-top:4px !important;
  }

  .nav-wrap{
    row-gap:12px !important;
  }
}


/* Move both buttons and menu slightly lower */
@media(min-width:901px){

  .header-action-stack{
    margin-top:10px !important;
  }

  .nav{
    margin-top:18px !important;
    padding-top:6px !important;
  }

  .nav-wrap{
    row-gap:16px !important;
    padding-top:10px !important;
  }
}


/* Actually lower the button row itself */
@media(min-width:901px){

  .header-action-stack{
    position:relative !important;
    top:14px !important;
    margin-top:0 !important;
  }

  /* Keep menu where it is */
  .nav{
    margin-top:18px !important;
  }
}


/* Move button row further down */
@media(min-width:901px){
  .header-action-stack{
    top:24px !important;
  }
}


/* Move BOTH button row and menu closer to bottom of header */
@media(min-width:901px){

  .nav-wrap{
    padding-top:26px !important;
    padding-bottom:4px !important;
  }

  .header-action-stack{
    top:30px !important;
  }

  .nav{
    margin-top:26px !important;
    padding-top:0 !important;
  }
}


/* Force both buttons and menu significantly lower */
@media(min-width:901px){

  .header-action-stack{
    position:relative !important;
    top:42px !important;
  }

  .nav{
    position:relative !important;
    top:22px !important;
    margin-top:26px !important;
  }

  .nav-wrap{
    padding-top:34px !important;
    padding-bottom:2px !important;
  }
}


/* Pull the four service buttons closer to the hero section */
.compwrx-main-hero,
.hero-section,
.home-hero{
  padding-bottom:18px !important;
  margin-bottom:0 !important;
}

/* Reduce top spacing above the 4 service cards */
.feature-strip,
.home-services,
.services-grid-wrap{
  padding-top:10px !important;
  margin-top:0 !important;
}

/* Remove any extra gap between sections */
.compwrx-main-hero + section,
.hero-section + section,
.home-hero + section{
  margin-top:0 !important;
}


/* Change Request a Quote button to blue LED tones */
.ribbon-btn{
  background:
    radial-gradient(
      circle at 18% 15%,
      rgba(120,190,255,.26) 0%,
      rgba(120,190,255,.12) 30%,
      transparent 58%
    ),
    linear-gradient(
      180deg,
      rgba(18,36,60,.98),
      rgba(10,20,38,.98)
    ) !important;

  border:1.5px solid rgba(120,190,255,.70) !important;

  box-shadow:
    0 0 12px rgba(120,190,255,.22),
    0 0 24px rgba(120,190,255,.10) !important;
}

.ribbon-btn:hover{
  box-shadow:
    0 20px 50px rgba(0,0,0,.34),
    0 0 14px rgba(120,190,255,.32),
    0 0 28px rgba(120,190,255,.18) !important;
}


/* Option A: change ribbon background from green glow to blue glow */
.cw-computers-ribbon{
  background:
    radial-gradient(
      circle at 12% 50%,
      rgba(120,190,255,.16) 0%,
      rgba(120,190,255,.08) 18%,
      transparent 40%
    ),
    linear-gradient(
      180deg,
      rgba(10,18,26,.98),
      rgba(6,10,15,.98)
    ) !important;

  border-top:1px solid rgba(120,190,255,.35) !important;
  border-bottom:1px solid rgba(120,190,255,.35) !important;
}

/* Blue LED indicator to match ribbon */
.ribbon-dot{
  background:#8fc7ff !important;
  box-shadow:0 0 12px rgba(120,190,255,.85) !important;
}


/* Small LED separators in ribbon */
.ribbon-dot-small{
  width:7px !important;
  height:7px !important;
  display:inline-block !important;
  margin:0 10px !important;
  vertical-align:middle !important;
}




.quote-details-options strong{
  font-size:12px !important;
  line-height:1.05 !important;
  color:#fff !important;
}

.quote-details-options label{
  font-size:12px !important;
  line-height:1.05 !important;
  color:var(--muted) !important;
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  white-space:nowrap !important;
}

.quote-details-options input{
  width:auto !important;
  min-width:auto !important;
  padding:0 !important;
  margin:0 !important;
  transform:scale(.85);
}



.contact-request-options.tight-options label{
  white-space:normal !important;
}

@media(max-width:700px){
  .quote-details-options{
    grid-template-columns:1fr 1fr !important;
  }
  .quote-details-options strong{
    grid-column:1 / -1 !important;
  }
}




/* Give the checkbox groups breathing room */
.quote-details-options{
    padding:12px !important;
    gap:8px 10px !important;
}

.contact-request-options{
    margin-top:6px !important;
}




/* Any urgency group heading inherits orange styling */
.contact-priority-title,
.contact-urgency-title{
    color:#c8742a !important;
}


/* FINAL CONTACT CONSISTENCY FIX */
.contact-request-options strong,
.contact-extra-options strong,
.quote-details-options strong{
    color:#c8742a !important;
    font-weight:700;
    display:block;
    margin:0 0 8px 0;
}

/* keep labels consistent */
.contact-request-options label,
.contact-extra-options label,
.quote-details-options label{
    color:#ddd !important;
    font-size:14px !important;
}

.contact-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:10px;
}
.contact-col{
  background:rgba(255,255,255,0.03);
  padding:14px;
  border-radius:10px;
}
.contact-title{
  color:#c8742a;
  font-weight:700;
  display:block;
  margin-bottom:10px;
}
.contact-grid label{
  display:block;
  color:#ddd;
  font-size:14px;
  margin:4px 0;
}
@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr;}
}


/* MODERN CONTACT UI POLISH */
.contact-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:18px;
}

.contact-col{
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
  border: 1px solid rgba(255,255,255,0.06);
  border-radius:12px;
  padding:14px;
  transition: all .2s ease;
}

.contact-col:hover{
  transform: translateY(-2px);
  border-color: rgba(200,120,42,0.35);
}

.contact-title{
  color:#c8742a;
  font-weight:700;
  margin-bottom:10px;
  font-size:15px;
  letter-spacing:0.2px;
}

.contact-block label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#ddd;
  font-size:14px;
  margin:6px 0;
}

@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr;}
}


/* FINAL CONTACT CONSISTENCY LOCK */
.contact-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:18px;
}

.contact-col{
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius:12px;
  padding:14px;
}

.contact-title{
  color:#c8742a;
  font-weight:700;
  margin-bottom:10px;
}

.contact-block label{
  display:block;
  color:#ddd;
  font-size:14px;
  margin:6px 0;
}

@media(max-width:900px){
  .contact-grid{
    grid-template-columns:1fr;
  }
}


/* ===== CLEAN MODERN CONTACT PAGE RESET ===== */

.cw-contact-page{
  padding-top:48px;
  padding-bottom:60px;
}

.cw-contact-layout{
  display:grid !important;
  grid-template-columns:minmax(320px,.9fr) minmax(520px,1.1fr) !important;
  gap:28px !important;
  align-items:stretch !important;
}

.cw-contact-info,
.cw-message-panel{
  border-radius:22px !important;
}

.cw-eyebrow{
  margin:0 0 8px 0 !important;
  color:#ff8a2a !important;
  font-weight:800 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  font-size:13px !important;
}

.cw-contact-info h1{
  margin:0 0 16px 0 !important;
  font-size:clamp(52px,5vw,86px) !important;
  line-height:.95 !important;
}

.cw-contact-intro{
  color:#d7e5f5 !important;
  font-size:17px !important;
  line-height:1.55 !important;
  max-width:580px !important;
}

.cw-info-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
  margin-top:24px !important;
}

.cw-info-card{
  display:block !important;
  padding:16px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  text-decoration:none !important;
  color:#eaf4ff !important;
}

.cw-info-card:hover{
  border-color:rgba(255,138,42,.45) !important;
}

.cw-info-label{
  display:block !important;
  margin-bottom:6px !important;
  color:#ff8a2a !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.cw-info-card strong{
  color:#eaf4ff !important;
  font-size:15px !important;
  line-height:1.35 !important;
}

.cw-message-panel h2{
  margin:0 0 20px 0 !important;
  color:#fff !important;
  font-size:30px !important;
}

.cw-contact-form{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
}

.cw-field-row{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:14px !important;
}

.cw-contact-form input[type="text"],
.cw-contact-form input[type="email"],
.cw-contact-form input[type="tel"],
.cw-contact-form textarea{
  width:100% !important;
  box-sizing:border-box !important;
  border-radius:13px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(0,0,0,.16) !important;
  color:#fff !important;
  padding:13px 14px !important;
  font-size:15px !important;
  outline:none !important;
}

.cw-contact-form input::placeholder,
.cw-contact-form textarea::placeholder{
  color:rgba(225,235,245,.72) !important;
}

.cw-options-row{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:16px !important;
}

.cw-option-card{
  border-radius:16px !important;
  padding:16px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}

.cw-option-card h3{
  margin:0 0 14px 0 !important;
  color:#ff8a2a !important;
  font-size:17px !important;
  line-height:1.25 !important;
}

.cw-option-card label{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:32px !important;
  margin:7px 0 !important;
  color:#e8f2ff !important;
  font-size:14px !important;
  line-height:1.25 !important;
  cursor:pointer !important;
}

.cw-option-card input[type="checkbox"],
.cw-option-card input[type="radio"]{
  flex:0 0 auto !important;
  width:16px !important;
  height:16px !important;
  accent-color:#ff8a2a !important;
  margin:0 !important;
}

.cw-send-button{
  align-self:flex-start !important;
  min-width:170px !important;
  border:0 !important;
}

@media(max-width:1100px){
  .cw-contact-layout{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:760px){
  .cw-info-grid,
  .cw-field-row,
  .cw-options-row{
    grid-template-columns:1fr !important;
  }
}



/* CONTACT HARD LOCK TWO COLUMNS */


/* HARD-LOCKED CONTACT LAYOUT - overrides older/contact/CSS cache conflicts */
.cw-contact-page .cw-contact-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:28px !important;
  align-items:stretch !important;
  max-width:1280px !important;
  margin:0 auto !important;
}
.cw-contact-page .cw-contact-info,
.cw-contact-page .cw-message-panel{
  width:auto !important;
  min-width:0 !important;
  height:100% !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
}
.cw-contact-page .cw-contact-info h1{
  font-size:clamp(54px,5vw,84px) !important;
  line-height:.95 !important;
}
.cw-contact-page .cw-info-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
  margin-top:auto !important;
}
.cw-contact-page .cw-contact-form{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
}
.cw-contact-page .cw-field-row{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
}
.cw-contact-page .cw-field-row input[type="tel"]{
  grid-column:1 / -1 !important;
}
.cw-contact-page .cw-options-row{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}
.cw-contact-page .cw-options-row .cw-option-card:first-child{
  grid-column:1 / -1 !important;
}
.cw-contact-page .cw-option-card{
  padding:14px !important;
}
.cw-contact-page .cw-option-card h3{
  font-size:16px !important;
  margin:0 0 10px 0 !important;
}
.cw-contact-page .cw-option-card label{
  min-height:26px !important;
  margin:5px 0 !important;
  font-size:14px !important;
}
.cw-contact-page textarea{
  min-height:105px !important;
}
@media(max-width:1100px){
  .cw-contact-page .cw-contact-layout{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:760px){
  .cw-contact-page .cw-info-grid,
  .cw-contact-page .cw-field-row,
  .cw-contact-page .cw-options-row{
    grid-template-columns:1fr !important;
  }
  .cw-contact-page .cw-options-row .cw-option-card:first-child,
  .cw-contact-page .cw-field-row input[type="tel"]{
    grid-column:auto !important;
  }
}




/* ===== CONTACT PAGE: SHORTER BALANCED PANELS ===== */
.cw-contact-page{
  padding-top:34px !important;
  padding-bottom:42px !important;
}

.cw-contact-page .cw-contact-layout{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:24px !important;
  align-items:start !important;
}

.cw-contact-page .cw-contact-info,
.cw-contact-page .cw-message-panel{
  height:auto !important;
  min-height:0 !important;
  display:block !important;
  padding:24px !important;
}

.cw-contact-page .cw-contact-info h1{
  font-size:clamp(42px,4.2vw,68px) !important;
  margin-bottom:10px !important;
}

.cw-contact-page .cw-contact-intro{
  font-size:15px !important;
  line-height:1.45 !important;
  margin-bottom:16px !important;
}

.cw-contact-page .cw-info-grid{
  margin-top:16px !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
}

.cw-contact-page .cw-info-card{
  padding:12px !important;
  border-radius:12px !important;
}

.cw-contact-page .cw-info-label{
  margin-bottom:4px !important;
  font-size:12px !important;
}

.cw-contact-page .cw-info-card strong{
  font-size:14px !important;
  line-height:1.28 !important;
}

.cw-contact-page .cw-message-panel h2{
  font-size:25px !important;
  margin-bottom:14px !important;
}

.cw-contact-page .cw-contact-form{
  gap:10px !important;
}

.cw-contact-page .cw-field-row{
  gap:10px !important;
}

.cw-contact-page .cw-contact-form input[type="text"],
.cw-contact-page .cw-contact-form input[type="email"],
.cw-contact-page .cw-contact-form input[type="tel"],
.cw-contact-page .cw-contact-form textarea{
  padding:10px 12px !important;
  border-radius:11px !important;
  font-size:14px !important;
}

.cw-contact-page .cw-options-row{
  gap:10px !important;
}

.cw-contact-page .cw-option-card{
  padding:11px 12px !important;
  border-radius:13px !important;
}

.cw-contact-page .cw-option-card h3{
  font-size:15px !important;
  margin-bottom:7px !important;
}

.cw-contact-page .cw-option-card label{
  min-height:21px !important;
  margin:3px 0 !important;
  font-size:13.5px !important;
  line-height:1.2 !important;
}

.cw-contact-page .cw-option-card input[type="checkbox"],
.cw-contact-page .cw-option-card input[type="radio"]{
  width:14px !important;
  height:14px !important;
}

.cw-contact-page textarea{
  min-height:78px !important;
}

.cw-contact-page .cw-send-button{
  padding:9px 16px !important;
  min-width:155px !important;
}


/* FINAL CONTACT BALANCE POLISH */

.cw-contact-page .cw-info-card{
  display:block !important;
  text-decoration:none !important;
}

.cw-extra-info{
  margin-top:18px !important;
  padding-top:10px !important;
}

.cw-extra-info h3{
  color:#ff8a2a !important;
  font-size:18px !important;
  margin:0 0 10px 0 !important;
}

.cw-benefits{
  margin:0 !important;
  padding-left:18px !important;
}

.cw-benefits li{
  margin:5px 0 !important;
  color:#e7eef7 !important;
  font-size:14px !important;
}

.cw-help-now{
  margin-top:14px !important;
  padding:12px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  color:#eaf4ff !important;
}



/* CONTACT COLUMNS RESTORED - FINAL OVERRIDE */
.cw-contact-page .cw-contact-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:24px !important;
  align-items:start !important;
}
.cw-contact-page .cw-contact-info,
.cw-contact-page .cw-message-panel{
  display:block !important;
  width:auto !important;
  min-width:0 !important;
}
@media(max-width:1100px){
  .cw-contact-page .cw-contact-layout{
    grid-template-columns:1fr !important;
  }
}


/* ===== CF7 VISUAL MATCH FOR MODERN CONTACT PAGE ===== */

/* Keep the CF7 form inside the existing right-side panel design */
.cw-contact-page .cw-cf7-wrap .wpcf7{
  width:100% !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  margin:0 !important;
}

/* Remove CF7's paragraph spacing so it behaves like the custom form */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form p{
  margin:0 !important;
}

/* If the CF7 form uses the cf7-grid/cf7-col structure, make it match the old right panel */
.cw-contact-page .cw-cf7-wrap .cf7-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  margin:0 0 10px 0 !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-grid .cf7-col:first-child{
  grid-column:1 / -1 !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col{
  border-radius:13px !important;
  padding:11px 12px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col > p:first-child,
.cw-contact-page .cw-cf7-wrap .cf7-col > label,
.cw-contact-page .cw-cf7-wrap .cf7-col h3{
  margin:0 0 7px 0 !important;
  color:#ff8a2a !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

/* CF7 field styling to match the old custom inputs */
.cw-contact-page .cw-cf7-wrap input[type="text"],
.cw-contact-page .cw-cf7-wrap input[type="email"],
.cw-contact-page .cw-cf7-wrap input[type="tel"],
.cw-contact-page .cw-cf7-wrap textarea{
  width:100% !important;
  box-sizing:border-box !important;
  border-radius:11px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(0,0,0,.16) !important;
  color:#fff !important;
  padding:10px 12px !important;
  font-size:14px !important;
  outline:none !important;
}

.cw-contact-page .cw-cf7-wrap textarea{
  min-height:78px !important;
}

/* Option rows */
.cw-contact-page .cw-cf7-wrap .wpcf7-list-item{
  display:flex !important;
  align-items:center !important;
  margin:3px 0 !important;
  color:#e8f2ff !important;
  font-size:13.5px !important;
  line-height:1.2 !important;
}

.cw-contact-page .cw-cf7-wrap .wpcf7-list-item label{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
  cursor:pointer !important;
}

.cw-contact-page .cw-cf7-wrap input[type="checkbox"],
.cw-contact-page .cw-cf7-wrap input[type="radio"]{
  width:14px !important;
  height:14px !important;
  accent-color:#ff8a2a !important;
  margin:0 !important;
}

/* Name/email/phone fields if CF7 has them as separate paragraphs */
.cw-contact-page .cw-cf7-wrap .wpcf7-form > p:has(input[type="text"]),
.cw-contact-page .cw-cf7-wrap .wpcf7-form > p:has(input[type="email"]),
.cw-contact-page .cw-cf7-wrap .wpcf7-form > p:has(input[type="tel"]){
  display:block !important;
}

/* Submit button */
.cw-contact-page .cw-cf7-wrap input[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:155px !important;
  padding:9px 16px !important;
  border-radius:999px !important;
  border:0 !important;
  background:linear-gradient(135deg,#f07a22,#b94719) !important;
  color:#fff !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

/* Hide CF7 spinner unless active */
.cw-contact-page .cw-cf7-wrap .wpcf7-spinner{
  margin-left:10px !important;
}

@media(max-width:760px){
  .cw-contact-page .cw-cf7-wrap .cf7-grid{
    grid-template-columns:1fr !important;
  }

  .cw-contact-page .cw-cf7-wrap .cf7-grid .cf7-col:first-child{
    grid-column:auto !important;
  }
}





/* ===== CONTACT PAGE: COMPRESS RIGHT COLUMN TO MATCH LEFT ===== */

/* Keep the two main columns aligned without stretching the left side */
.cw-contact-page .cw-contact-layout{
  align-items:start !important;
}

/* Reduce right panel padding and heading spacing */
.cw-contact-page .cw-message-panel{
  padding:22px !important;
}

.cw-contact-page .cw-message-panel h2{
  font-size:24px !important;
  margin:0 0 10px 0 !important;
}

.cw-contact-page .cw-message-panel .cw-eyebrow{
  margin-bottom:5px !important;
}

/* Compact the CF7 form spacing */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form{
  gap:8px !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form p{
  margin:0 !important;
}

/* Tighten the three option areas */
.cw-contact-page .cw-cf7-wrap .cf7-grid{
  gap:8px !important;
  margin-bottom:8px !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col{
  padding:9px 10px !important;
  border-radius:11px !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col > p:first-child,
.cw-contact-page .cw-cf7-wrap .cf7-col > label,
.cw-contact-page .cw-cf7-wrap .cf7-col h3{
  margin-bottom:5px !important;
  font-size:14px !important;
  line-height:1.1 !important;
}

/* Tighten checkbox/radio rows */
.cw-contact-page .cw-cf7-wrap .wpcf7-list-item{
  margin:2px 0 !important;
  font-size:13px !important;
  line-height:1.15 !important;
}

.cw-contact-page .cw-cf7-wrap .wpcf7-list-item label{
  gap:6px !important;
}

/* Reduce field height */
.cw-contact-page .cw-cf7-wrap input[type="text"],
.cw-contact-page .cw-cf7-wrap input[type="email"],
.cw-contact-page .cw-cf7-wrap input[type="tel"],
.cw-contact-page .cw-cf7-wrap textarea{
  padding:8px 10px !important;
  font-size:13.5px !important;
  border-radius:10px !important;
}

/* Shorter message area */
.cw-contact-page .cw-cf7-wrap textarea{
  min-height:58px !important;
  height:58px !important;
}

/* Smaller send button */
.cw-contact-page .cw-cf7-wrap input[type="submit"]{
  padding:8px 14px !important;
  min-width:145px !important;
  font-size:13.5px !important;
}

/* Hide extra CF7 response spacing until a message appears */
.cw-contact-page .cw-cf7-wrap .wpcf7-response-output{
  margin:8px 0 0 0 !important;
  padding:8px 10px !important;
  font-size:13px !important;
}





/* ===== CONTACT PAGE: CF7 FIELD GRID FIX ===== */

/* Use the right-side form itself as a clean 2-column grid */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px 10px !important;
  margin:0 !important;
}

/* Remove CF7 paragraph spacing that was making the form too tall */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form p{
  margin:0 !important;
  padding:0 !important;
}

/* Keep the three option sections full width */
.cw-contact-page .cw-cf7-wrap .cf7-grid{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px !important;
  margin:0 !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-grid .cf7-col:first-child{
  grid-column:1 / -1 !important;
}

/* Name + Email stay side-by-side */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]){
  grid-column:1 !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]){
  grid-column:2 !important;
}

/* Phone, message, and submit span full width */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]),
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea),
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[type="submit"]){
  grid-column:1 / -1 !important;
}

/* Tight labels above Name / Email / Phone / Message */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p > label{
  display:block !important;
  margin:0 0 3px 0 !important;
  padding:0 !important;
  font-size:13px !important;
  line-height:1.1 !important;
}

/* Compact fields */
.cw-contact-page .cw-cf7-wrap input[type="text"],
.cw-contact-page .cw-cf7-wrap input[type="email"],
.cw-contact-page .cw-cf7-wrap input[type="tel"]{
  height:34px !important;
  padding:7px 10px !important;
  font-size:13.5px !important;
}

/* Short compact message box */
.cw-contact-page .cw-cf7-wrap textarea{
  height:44px !important;
  min-height:44px !important;
  padding:7px 10px !important;
  font-size:13.5px !important;
}

/* Pull submit button tight under message */
.cw-contact-page .cw-cf7-wrap input[type="submit"]{
  margin-top:0 !important;
  padding:8px 14px !important;
}

/* Keep CF7 validation/status messages from adding big empty space */
.cw-contact-page .cw-cf7-wrap .wpcf7-response-output{
  grid-column:1 / -1 !important;
  margin:6px 0 0 0 !important;
  padding:7px 10px !important;
  font-size:13px !important;
}

/* Older browser fallback: if :has is unsupported, stack cleanly instead of stretching */
@supports not selector(:has(*)){
  .cw-contact-page .cw-cf7-wrap form.wpcf7-form{
    display:flex !important;
    flex-direction:column !important;
    gap:7px !important;
  }
}

@media(max-width:760px){
  .cw-contact-page .cw-cf7-wrap form.wpcf7-form,
  .cw-contact-page .cw-cf7-wrap .cf7-grid{
    grid-template-columns:1fr !important;
  }

  .cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]),
  .cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]){
    grid-column:1 / -1 !important;
  }
}

/* ===== FINAL CONTACT FORM RIGHT-COLUMN TIGHTEN + ORANGE FIELD TITLES ===== */
/* This final override fixes the Name / Email / Phone / Message spacing without shrinking the titles. */
.cw-contact-page .cw-message-panel{
  padding:20px 22px !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:6px 10px !important;
  align-items:start !important;
  margin:0 !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p{
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p > label{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#ff8a2a !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
}

.cw-contact-page .cw-cf7-wrap .wpcf7-form-control-wrap{
  display:block !important;
  margin-top:4px !important;
  line-height:1 !important;
}

.cw-contact-page .cw-cf7-wrap input[type="text"],
.cw-contact-page .cw-cf7-wrap input[type="email"],
.cw-contact-page .cw-cf7-wrap input[type="tel"]{
  height:32px !important;
  padding:6px 10px !important;
  font-size:13.5px !important;
  line-height:1.1 !important;
}

.cw-contact-page .cw-cf7-wrap textarea{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  padding:6px 10px !important;
  font-size:13.5px !important;
  line-height:1.15 !important;
}

.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]),
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea),
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[type="submit"]){
  grid-column:1 / -1 !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-grid{
  grid-column:1 / -1 !important;
  gap:7px !important;
  margin:0 !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col{
  padding:8px 10px !important;
}

.cw-contact-page .cw-cf7-wrap .cf7-col > p:first-child,
.cw-contact-page .cw-cf7-wrap .cf7-col > label,
.cw-contact-page .cw-cf7-wrap .cf7-col h3{
  color:#ff8a2a !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  margin:0 0 4px 0 !important;
}

.cw-contact-page .cw-cf7-wrap .wpcf7-list-item{
  margin:1px 0 !important;
  font-size:13px !important;
  line-height:1.1 !important;
}

.cw-contact-page .cw-cf7-wrap input[type="submit"]{
  margin-top:0 !important;
  padding:8px 14px !important;
}

@media(max-width:760px){
  .cw-contact-page .cw-cf7-wrap form.wpcf7-form,
  .cw-contact-page .cw-cf7-wrap .cf7-grid{
    grid-template-columns:1fr !important;
  }
}


/* CF7 compact spacing */
.contact-form label,
.cf7-grid label{margin:0!important;padding:0!important;line-height:1.1!important;}
.contact-form p,
.cf7-grid p{margin:0 0 6px 0!important;}
.wpcf7-form-control-wrap{margin:0!important;padding:0!important;display:block!important;}
.contact-form textarea,
.contact-form input,
.cf7-grid textarea,
.cf7-grid input{margin-top:4px!important;}


/* ===== CONTACT FORM: MOVE FIELD LABELS CLOSER TO INPUTS ONLY ===== */
/* This targets only Name / Email / Phone / Message label-to-field spacing. */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]) > label,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]) > label,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]) > label,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea[name="your-message"]) > label{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  line-height:.9 !important;
}

/* CF7 sometimes inserts a line break between the label text and field. Remove that gap. */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]) > label br,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]) > label br,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]) > label br,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea[name="your-message"]) > label br{
  display:none !important;
}

/* Pull the actual CF7 input wrapper directly under the orange title. */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]) .wpcf7-form-control-wrap,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]) .wpcf7-form-control-wrap,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]) .wpcf7-form-control-wrap,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea[name="your-message"]) .wpcf7-form-control-wrap{
  display:block !important;
  margin-top:-6px !important;
  padding-top:0 !important;
  line-height:1 !important;
}

/* Keep the cells themselves unchanged except for removing any browser/CSS top offset. */
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-name"]) input,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-email"]) input,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(input[name="your-phone"]) input,
.cw-contact-page .cw-cf7-wrap form.wpcf7-form > p:has(textarea[name="your-message"]) textarea{
  margin-top:0 !important;
}


/* Equalize contact page columns */
.cw-contact-page textarea,
.cw-cf7-wrap textarea,
.wpcf7 textarea[name="your-message"]{
    height:125px !important;
    min-height:125px !important;
}


/* FORCE TALL MESSAGE BOX */
.wpcf7 textarea,
.wpcf7-form textarea,
textarea[name="your-message"],
.cw-contact-page textarea,
.cw-cf7-wrap textarea{
    height: 260px !important;
    min-height: 260px !important;
    max-height: none !important;
}


/* ACTUAL MESSAGE FIELD HEIGHT FIX - message box only */
body .cw-contact-page .cw-cf7-wrap form.wpcf7-form textarea[name="your-message"],
body .cw-contact-page .cw-cf7-wrap form.wpcf7-form textarea.wpcf7-textarea,
body .contact-card textarea[name="your-message"],
body .contact-card textarea.wpcf7-textarea,
body textarea[name="your-message"]{
    height:190px!important;
    min-height:190px!important;
    max-height:none!important;
    box-sizing:border-box!important;
}


/* FINAL CONTACT MESSAGE BOX HEIGHT FIX - message field only */
body .cw-contact-page .wpcf7-form textarea[name="your-message"],
body .cw-contact-page .wpcf7-form textarea.wpcf7-textarea,
body .cw-cf7-wrap .wpcf7-form textarea[name="your-message"],
body .cw-cf7-wrap .wpcf7-form textarea.wpcf7-textarea,
body .contact-card .wpcf7-form textarea[name="your-message"],
body .contact-card .wpcf7-form textarea.wpcf7-textarea,
body .wpcf7-form textarea[name="your-message"],
body textarea[name="your-message"],
body textarea.wpcf7-textarea,
body .cw-message-tall {
    height: 95px !important;
    min-height: 95px !important;
    max-height: none !important;
    box-sizing: border-box !important;
    resize: vertical !important;
}


/* Reduce gap between orange section bars and images on inner pages */
.page .entry-content h2 + img,
.page .entry-content h3 + img,
.page .entry-content .wp-block-heading + img,
.page .entry-content .wp-block-heading + figure,
.page .entry-content figure.wp-block-image {
    margin-top: 8px !important;
}

/* Common content wrappers used on the service pages */
.page .service-image,
.page .service-hero img,
.page .wp-block-image {
    margin-top: 8px !important;
}


/* FORCE remove gap under orange title bars on service pages */
.page .wp-block-image,
.page figure.wp-block-image,
.page .wp-block-cover,
.page .wp-block-spacer,
.page .entry-content > * {
    margin-top: 0 !important;
}

.page .entry-content h2,
.page .entry-content h3,
.page .wp-block-heading {
    margin-bottom: 6px !important;
}


/* Match Home page gap below New Computers & Laptops ribbon on service pages */
body .service-page{
    padding-top:20px !important;
}


/* Match Home page spacing under the New Computers ribbon */
body .service-page{
    padding-top:0 !important;
    margin-top:0 !important;
}

body .service-page > .container{
    padding-top:0 !important;
    margin-top:0 !important;
}

body .service-primary-image{
    margin-top:0 !important;
}


/* HOME PAGE MOBILE-ONLY FIX */
@media (max-width: 760px){

  /* Keep desktop unchanged; only stack the homepage slider/map cleanly on phones */
  body.home .compwrx-main-hero{
    padding: 12px 0 18px !important;
  }

  body.home .compwrx-main-hero .container.hero-layout-map,
  body.home .compwrx-main-hero .hero-side-stack,
  body.home .compwrx-main-hero .compwrx-hero-split{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds,
  body.home .compwrx-main-hero .home-map-card,
  body.home .compwrx-main-hero .compwrx-map-one-third{
    grid-column: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.home .compwrx-main-hero .smart-slider-card{
    padding: 8px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.home .compwrx-main-hero .home-map-card{
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.home .compwrx-main-hero .home-map-card iframe{
    width: 100% !important;
    height: 260px !important;
    display: block !important;
  }

  body.home .map-label{
    padding: 10px 12px !important;
  }

  body.home .map-label strong,
  body.home .map-label span{
    display: block !important;
    line-height: 1.25 !important;
  }

  /* Make the four service buttons stack cleanly on mobile */
  body.home .feature-grid,
  body.home #services .cards{
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.home .mini-card{
    width: 100% !important;
    min-height: auto !important;
    padding: 14px !important;
  }

  body.home .urgent-inner{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    text-align: center !important;
  }
}


/* HOME MOBILE STACK FIX - force slider above map, no side-by-side overflow */
@media (max-width: 760px){

  body.home .compwrx-main-hero,
  body.home .compwrx-main-hero *{
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.home .compwrx-main-hero .container.hero-layout-map{
    display: block !important;
    width: min(100%, 92vw) !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.home .compwrx-main-hero aside.hero-side-stack.compwrx-hero-split,
  body.home .compwrx-main-hero .hero-side-stack,
  body.home .compwrx-main-hero .compwrx-hero-split{
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: none !important;
  }

  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds{
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.home .compwrx-main-hero .home-map-card,
  body.home .compwrx-main-hero .compwrx-map-one-third{
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.home .compwrx-main-hero iframe{
    width: 100% !important;
    max-width: 100% !important;
    height: 230px !important;
  }
}


/* HOME DESKTOP + MOBILE HERO LAYOUT FIX
   Desktop stays side-by-side. Mobile stacks slider over map. */
.compwrx-main-hero .hero-side-stack.compwrx-hero-split{
  display:grid !important;
  grid-template-columns:minmax(0,2fr) minmax(0,1fr) !important;
  gap:18px !important;
  width:100% !important;
  align-items:stretch !important;
}

.compwrx-main-hero .compwrx-slider-two-thirds,
.compwrx-main-hero .compwrx-map-one-third{
  width:100% !important;
  min-width:0 !important;
}

@media (max-width:760px){
  .compwrx-main-hero .container.hero-layout-map{
    width:92vw !important;
    max-width:92vw !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .compwrx-main-hero .hero-side-stack.compwrx-hero-split{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    gap:12px !important;
  }

  .compwrx-main-hero .compwrx-slider-two-thirds{
    order:1 !important;
  }

  .compwrx-main-hero .compwrx-map-one-third{
    order:2 !important;
  }

  .compwrx-main-hero .smart-slider-card,
  .compwrx-main-hero .home-map-card{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .compwrx-main-hero .home-map-card iframe{
    width:100% !important;
    height:230px !important;
  }
}


/* MOBILE HEADER FIX - keep logo/company name and Home button visible */
@media (max-width:760px){

  header .container.nav-wrap{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }

  .brand-wrap{
    display:flex !important;
    align-items:center !important;
    flex:1 1 auto !important;
    min-width:0 !important;
  }

  .brand-wrap img{
    display:block !important;
    max-width:220px !important;
    height:auto !important;
  }

  /* Show navigation on mobile and keep at least Home visible */
  .nav{
    display:flex !important;
    flex-wrap:wrap !important;
    width:100% !important;
    gap:8px !important;
    justify-content:center !important;
    order:3 !important;
  }

  .nav a{
    display:inline-flex !important;
    padding:8px 10px !important;
    font-size:14px !important;
  }

  /* Put call/email buttons below logo instead of hiding header */
  .header-action-stack{
    display:flex !important;
    gap:8px !important;
    flex-wrap:wrap !important;
  }
}


/* MOBILE FIX: New Computers ribbon / Request a Quote section */
@media (max-width:760px){

  .cw-computers-ribbon{
    overflow:hidden !important;
  }

  .cw-computers-ribbon .container,
  .cw-computers-ribbon .ribbon-inner{
    width:92vw !important;
    max-width:92vw !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  .cw-computers-ribbon .ribbon-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:8px !important;
    min-height:auto !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
  }

  .cw-computers-ribbon .ribbon-text{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:6px 8px !important;
    width:100% !important;
    max-width:100% !important;
    font-size:13px !important;
    line-height:1.25 !important;
    text-align:center !important;
    white-space:normal !important;
  }

  .cw-computers-ribbon .ribbon-text span{
    white-space:normal !important;
  }

  .cw-computers-ribbon .ribbon-dot{
    width:7px !important;
    height:7px !important;
  }

  .cw-computers-ribbon .ribbon-btn{
    width:100% !important;
    max-width:240px !important;
    margin:0 auto !important;
    justify-content:center !important;
    text-align:center !important;
    padding:9px 12px !important;
    font-size:13px !important;
    box-sizing:border-box !important;
  }
}


/* MOBILE FIX: make homepage main slider/image fit phone width */
@media (max-width:760px){

  body.home .compwrx-main-hero{
    overflow:hidden !important;
  }

  body.home .compwrx-main-hero .container.hero-layout-map{
    width:92vw !important;
    max-width:92vw !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .hero-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    border-radius:18px !important;
    box-sizing:border-box !important;
  }

  body.home .compwrx-main-hero .smart-slider-card img,
  body.home .compwrx-main-hero .service-photo-card img,
  body.home .compwrx-main-hero .hero-card img,
  body.home .compwrx-main-hero canvas,
  body.home .compwrx-main-hero video{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    display:block !important;
    object-fit:contain !important;
    box-sizing:border-box !important;
  }

  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-section-main-content,
  body.home .compwrx-main-hero [id^="n2-ss-"]{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
}


/* MOBILE FIX: show full homepage slider/image height */
@media (max-width:760px){

  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .hero-card{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }

  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-section-main-content,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-layers-container,
  body.home .compwrx-main-hero [id^="n2-ss-"]{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }

  body.home .compwrx-main-hero .smart-slider-card img,
  body.home .compwrx-main-hero .service-photo-card img,
  body.home .compwrx-main-hero .hero-card img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}


/* MOBILE FORCE: give homepage slider enough height so image is not cropped */
@media (max-width:760px){

  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds{
    height: auto !important;
    min-height: 260px !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    overflow: visible !important;
  }

  body.home .compwrx-main-hero .smart-slider-card > *,
  body.home .compwrx-main-hero .service-photo-card > *,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds > *,
  body.home .compwrx-main-hero .n2-section-smartslider,
  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slider-1,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    height: 100% !important;
    min-height: 260px !important;
    max-height: none !important;
  }

  body.home .compwrx-main-hero .n2-ss-slide-background-image img,
  body.home .compwrx-main-hero .n2-ss-slide img,
  body.home .compwrx-main-hero .smart-slider-card img{
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}


/* TEST: Keep full-height mobile slider but align image to top */
@media (max-width:760px){

  body.home .compwrx-main-hero .compwrx-slider-two-thirds{
    min-height:260px !important;
    overflow:hidden !important;
  }

  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    padding-top:0 !important;
    margin-top:0 !important;
  }

  body.home .compwrx-main-hero .n2-ss-slide img,
  body.home .compwrx-main-hero .n2-ss-slide-background-image img,
  body.home .compwrx-main-hero .smart-slider-card img{
    object-fit:contain !important;
    object-position:top center !important;
  }
}


/* MOBILE SLIDER VISIBLE + TOP BACKGROUND POSITION FIX */
@media (max-width:760px){

  /* Keep slider visible; do not collapse Smart Slider height */
  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds{
    min-height:260px !important;
    height:260px !important;
    max-height:260px !important;
    overflow:hidden !important;
  }

  body.home .compwrx-main-hero .n2-section-smartslider,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slider-1,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    min-height:260px !important;
    height:260px !important;
    max-height:260px !important;
    padding-top:0 !important;
    margin-top:0 !important;
  }

  /* Smart Slider often uses background images, not normal img tags */
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-slide-background-image picture,
  body.home .compwrx-main-hero .n2-ss-slide-background-image img{
    background-position:center top !important;
    background-size:contain !important;
    background-repeat:no-repeat !important;
    object-position:center top !important;
    object-fit:contain !important;
  }
}


/* MOBILE SLIDER HEIGHT TUNE: reduce blank space above/below image */
@media (max-width:760px){
  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds,
  body.home .compwrx-main-hero .n2-section-smartslider,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slider-1,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    min-height:220px !important;
    height:220px !important;
    max-height:220px !important;
  }
}


/* MOBILE SLIDER HEIGHT TUNE: 150px */
@media (max-width:760px){
  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds,
  body.home .compwrx-main-hero .n2-section-smartslider,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slider-1,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    min-height:150px !important;
    height:150px !important;
    max-height:150px !important;
  }
}


/* MOBILE FIX: force the OUTER homepage slider box to shrink too */
@media (max-width:760px){

  body.home .compwrx-main-hero .hero-card.compact-card.service-photo-card.smart-slider-card.compwrx-slider-two-thirds,
  body.home .compwrx-main-hero .hero-card.compact-card,
  body.home .compwrx-main-hero .service-photo-card,
  body.home .compwrx-main-hero .smart-slider-card,
  body.home .compwrx-main-hero .compwrx-slider-two-thirds{
    height:150px !important;
    min-height:150px !important;
    max-height:150px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    display:block !important;
    box-sizing:border-box !important;
  }

  body.home .compwrx-main-hero .hero-card.compact-card.service-photo-card.smart-slider-card.compwrx-slider-two-thirds > div,
  body.home .compwrx-main-hero .smart-slider-card > div,
  body.home .compwrx-main-hero .n2-section-smartslider,
  body.home .compwrx-main-hero .n2-ss-align,
  body.home .compwrx-main-hero .n2-ss-slider,
  body.home .compwrx-main-hero .n2-ss-slider-wrapper,
  body.home .compwrx-main-hero .n2-ss-slider-1,
  body.home .compwrx-main-hero .n2-ss-slide,
  body.home .compwrx-main-hero .n2-ss-slide-background,
  body.home .compwrx-main-hero .n2-ss-slide-background-image,
  body.home .compwrx-main-hero .n2-ss-layers-container{
    height:150px !important;
    min-height:150px !important;
    max-height:150px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body.home .compwrx-main-hero .n2-ss-slide-background-image img,
  body.home .compwrx-main-hero .n2-ss-slide img,
  body.home .compwrx-main-hero .smart-slider-card img{
    height:150px !important;
    min-height:150px !important;
    max-height:150px !important;
    width:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}


/* ===== COMPWRX.COM Native Homepage Slider Fix ===== */
body.home .compwrx-main-hero .cw-native-slider{
  position:relative !important;
  width:100% !important;
  aspect-ratio:1536 / 405 !important;
  min-height:0 !important;
  height:auto !important;
  overflow:hidden !important;
  border-radius:inherit !important;
  background:#fff !important;
}
body.home .compwrx-main-hero .cw-native-slide{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:0 !important;
  transition:opacity .55s ease-in-out !important;
  display:block !important;
}
body.home .compwrx-main-hero .cw-native-slide.is-active{
  opacity:1 !important;
}
@media(max-width:760px){
  body.home .compwrx-main-hero .cw-native-slider{
    aspect-ratio:16 / 10 !important;
    min-height:260px !important;
  }
  body.home .compwrx-main-hero .cw-native-slide{
    object-fit:contain !important;
    background:#fff !important;
  }
}


/* ===== COMPWRX.COM TRUE NATIVE SLIDER FINAL - NO SMART SLIDER REQUIRED ===== */
body.home .compwrx-main-hero .smart-slider-card.compwrx-slider-two-thirds{
  padding:0 !important;
  overflow:hidden !important;
  background:#111 !important;
}
body.home .compwrx-main-hero .cw-native-slider{
  position:relative !important;
  width:100% !important;
  aspect-ratio:1536 / 405 !important;
  min-height:0 !important;
  height:auto !important;
  overflow:hidden !important;
  border-radius:inherit !important;
  background:#111 !important;
  display:block !important;
}
body.home .compwrx-main-hero .cw-native-slide{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:0 !important;
  transition:opacity .55s ease-in-out !important;
  display:block !important;
  z-index:1 !important;
}
body.home .compwrx-main-hero .cw-native-slide.is-active{
  opacity:1 !important;
  z-index:2 !important;
}
@media(max-width:760px){
  body.home .compwrx-main-hero .cw-native-slider{
    aspect-ratio:1536 / 405 !important;
    min-height:0 !important;
  }
  body.home .compwrx-main-hero .cw-native-slide{
    object-fit:cover !important;
  }
}
