/* ================= 14TH ROUND : DESIGN SYSTEM ================= */
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 100%;
    width: 1440px;
    padding: 0 20px;
}
.row>* { padding-left: 20px; padding-right: 20px; }
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --blue:#083ba3;
  --blue2:#003ec2;
  --dark:#070A14;
  --dark2:#0D1120;
  --text:#E8ECF5;
  --muted:#7A8299;
  --border:rgba(255,255,255,0.07);
}
html, body {overflow-x:hidden;}
body{background:var(--dark);color:var(--text);font-family:'Barlow',sans-serif;padding:0;margin:0;}
h1,h2,h3,h4{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;}
a{transition:0.3s;}
a:hover{transition:0.3s;}
.common-padding{padding:100px 0;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(7,10,20,0.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);}
.logo{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1.6rem;letter-spacing:2px;color:#fff;text-transform:uppercase;}
.logo span{color:var(--blue);}
nav ul a{color:var(--muted);text-decoration:none;font-size:0.88rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;transition:color 0.2s;}
nav ul a:hover{color:#fff;}
.nav-cta{background:var(--blue);color:#fff;padding:0.5rem 1.4rem;border-radius:2px;font-size:0.82rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;transition:background 0.2s;}
.nav-cta:hover{background:var(--blue2);}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:20px;}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(0,85,255,0.12) 0%,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(0,85,255,0.1) 0%,transparent 50%);pointer-events:none;}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.05) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;}
.hero-content{position:relative;z-index:2;margin:0 auto;}
.hero h1{font-size:clamp(80px,15vw,220px);font-weight:900;line-height:0.92;letter-spacing:10px;color:#fff;margin-bottom:1.5rem;}

/* BUTTONS */
.btn-primary-custom{background:var(--blue);color:#fff;padding:0.85rem 2rem;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1rem;letter-spacing:2px;text-transform:uppercase;border:none;cursor:pointer;border-radius:2px;text-decoration:none;transition:background 0.2s;display:inline-block;}
.btn-primary-custom:hover{background:var(--blue2);color:#fff;}

/* MARQUEE */
.marquee-section{padding:1.2rem 0;background:var(--blue);overflow:hidden;}
.marquee-track{display:flex;gap:3rem;animation:marquee 10s linear infinite;white-space:nowrap;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.marquee-item{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:3px;text-transform:uppercase;color:#fff;display:flex;align-items:center;gap:1.5rem;}
.marquee-item::after{content:'\25C6';font-size:0.5rem;opacity:0.5;}

/* SECTION GENERIC */
.section-label{font-size:20px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:1rem;}
.section-title{font-size:clamp(40px,5vw,80px);font-weight:900;line-height:0.95;color:#fff;margin-bottom:20px;letter-spacing:1px;}
.section-sub{font-size:clamp(16px,1.5vw,24px);line-height:1.7;color:var(--muted);font-weight:300;margin-top:30px;}

/* PRODUCT SECTION */
.product-section{background:var(--dark2);position:relative;overflow:hidden;}
.product-hero-img{position:relative;display:flex;justify-content:center;}
.product-hero-img .bg-ring{position:absolute;width:400px;height:400px;border-radius:50%;border:1px solid rgba(0,85,255,0.15);top:50%;left:50%;transform:translate(-50%,-50%);}
.product-hero-img .bg-ring2{position:absolute;width:300px;height:300px;border-radius:50%;border:1px solid rgba(0,85,255,0.1);top:50%;left:50%;transform:translate(-50%,-50%);}
.cart-img{width:200px;position:relative;z-index:2;filter:drop-shadow(0 20px 60px rgba(0,85,255,0.4));}

/* STATS BAR */
.stats-bar{background:var(--blue);padding:3rem 0;}
.stat-num{font-family:'Barlow Condensed',sans-serif;font-size:3rem;font-weight:900;color:#fff;line-height:1;}
.stat-label{font-size:0.78rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.65);margin-top:6px;}

/* CLIENT WORK SECTION */
.benefits-section{background:var(--dark2);text-align:center;}

/* SERVICES */
.service-icon{margin-bottom:30px;border-radius:200px;position:relative;overflow:hidden;max-width:300px;margin:0 auto 30px;}
.service-icon img{width:100%;border-radius:200px;aspect-ratio:0.7;transform:scale(1);transition:0.5s;object-fit:cover;}
.service-icon::after{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--blue);content:"";border-radius:200px;opacity:0.9;transition:0.5s;}
.service-icon:hover img{transform:scale(1.2);transition:0.5s;}
.service-icon:hover::after{opacity:0.1;transition:0.5s;}
.service-icon a.btn-primary-custom{position:absolute;z-index:9;top:50%;left:50%;transform:translate(-50%,-50%);line-height:1;opacity:0;visibility:hidden;transition:0.5s;white-space:nowrap;}
.service-icon:hover a.btn-primary-custom{opacity:1;visibility:visible;transition:0.5s;}

/* LEAF GRAPHIC */
.leaf-graphic-xsml{position:relative;z-index:1;margin-top:10px;}
.leaf-graphic-xsml::after{content:"";width:100px;height:100px;background:var(--blue);position:absolute;border-radius:30px 0 0 0;top:-10px;left:-10px;z-index:-1;}

/* SERVICE CARD (3-col) */
.service-card-lg .service-title{font-size:clamp(36px,4vw,60px);margin:0 0 30px 0;position:relative;}
.service-card-lg .service-text{font-size:clamp(16px,1.3vw,24px);line-height:1.4;}
.service-card-lg a.read-more{margin-top:20px;display:inline-block;font-size:clamp(16px,1.3vw,24px);text-decoration:none;color:var(--blue);}
.service-card-lg a.read-more:hover {color:#fff;}

.service-title{font-family:'Barlow Condensed',sans-serif;font-size:30px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#fff;margin-bottom:0.75rem;line-height:1;}
.service-title a{color:#fff;text-decoration:none;}
.service-title a:hover{color:var(--blue);}
.service-text{font-size:0.88rem;line-height:1.65;color:var(--muted);}

/* CTA SECTION */
.cta-section{display:block;background-color:var(--dark2);}
.cta-btn{background:#fff;color:#0033aa;display:inline-block;margin:20px 0 0;padding:0.85rem 2rem;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1rem;letter-spacing:2px;text-transform:uppercase;border-radius:2px;text-decoration:none;}
.cta-btn:hover{background:var(--blue);color:#fff;}
.cta-section-form img{width:100%;height:440px;object-fit:cover;}

/* FOOTER (only applies if your footer.php uses these classes) */
.fourteen-footer{background:linear-gradient(135deg,#0033aa 0%,#001f6e 50%,#070A14 100%);position:relative;overflow:hidden;}
.fourteen-footer::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);background-size:40px 40px;}
.fourteen-footer .container{z-index:2;position:relative;}
.footer-logo{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(36px,5vw,60px);letter-spacing:2px;color:#fff;text-transform:uppercase;margin-bottom:1rem;}
.footer-logo span{color:var(--blue);}
.footer-desc{font-size:18px;line-height:1.4;color:var(--muted);}
.footer-col-title{font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:1.2rem;}
.footer-col ul{list-style:none;padding:0;}
.footer-col ul li{margin-bottom:0.6rem;}
.footer-col ul a{color:var(--muted);text-decoration:none;font-size:20px;transition:color 0.2s;}
.footer-col ul a:hover{color:#fff;}
.footer-bottom{font-size:16px;color:var(--muted);}
.border-dark-custom{border-color:var(--border) !important;}

/* CONTACT FORM 7 */
.cf7-row { display:flex; gap:20px; margin-bottom:20px; }
.cf7-col { flex:1; }
.cf7-col-full { flex:1 1 100%; }
.cf7-label {
  display:block; font-family:'Barlow Condensed',sans-serif;
  font-size:15px; font-weight:800; letter-spacing:2px; text-transform:uppercase;
  color:var(--text); margin-bottom:8px;
}
.wpcf7-form-control.wpcf7-text,
.wpcf7-form-control.wpcf7-email,
.wpcf7-form-control.wpcf7-tel,
.wpcf7-form-control.wpcf7-select,
.wpcf7-form-control.wpcf7-textarea {
  width:100%; background:#fff; border:none; border-radius:12px;
  padding:14px 20px; font-family:'Barlow',sans-serif;
  font-size:15px; color:#111; outline:none;
  transition:box-shadow 0.2s; display:block;
  appearance:none; -webkit-appearance:none;
}
.wpcf7-form-control.wpcf7-select {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 16px center;
  padding-right:44px; cursor:pointer;
}
.wpcf7-form-control:focus { box-shadow:0 0 0 3px rgba(8,59,163,0.4); }
.wpcf7-form-control.wpcf7-textarea { resize:vertical; min-height:150px; }
.cf7-group-label {
  font-family:'Barlow Condensed',sans-serif;
  font-size:15px; font-weight:800; letter-spacing:2px; text-transform:uppercase;
  color:var(--text); margin-bottom:14px; display:block;
}
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item {
  display:inline-flex; align-items:center;
  margin-right:40px; margin-bottom:8px; cursor:pointer;
}
.wpcf7-checkbox .wpcf7-list-item input[type="checkbox"],
.wpcf7-radio .wpcf7-list-item input[type="radio"] {
  width:20px; height:20px; margin-right:10px;
  accent-color:var(--blue); cursor:pointer; flex-shrink:0;
}
.wpcf7-checkbox .wpcf7-list-item label,
.wpcf7-radio .wpcf7-list-item label {
  font-family:'Barlow',sans-serif; font-size:15px;
  color:var(--text); cursor:pointer;
}
.wpcf7-submit {
    background: var(--blue) !important;
    color: #fff !important;
    border: none !important;
    padding: 14px 48px !important;
    font-family: 'Barlow Condensed',sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.2s;
    margin-top: 10px;
    display: block;
}
.wpcf7-submit:hover { background:#003ec2; }
.wpcf7-not-valid-tip { color:#ff4d4d; font-size:12px; margin-top:5px; display:block; }
.wpcf7-response-output { margin-top:16px; padding:12px 16px; border-radius:4px; font-size:14px; }
.wpcf7-mail-sent-ok { border:1px solid #4CAF50; color:#4CAF50; }
.wpcf7-mail-sent-ng { border:1px solid #ff4d4d; color:#ff4d4d; }

/* RESPONSIVE */
@media screen and (max-width:1024px){ .common-padding{padding:80px 0;} }
@media screen and (max-width:991px){ .cf7-col{flex:1 1 100%;} .cf7-row{flex-wrap:wrap;} }
@media screen and (max-width:767px){
  .marquee-track{animation:marquee 5s linear infinite;}
  .service-icon{margin-bottom:15px;}
  .leaf-graphic-xsml::after{width:60px;height:60px;}
  .cta-section .col-12.col-md-6.col-lg-5{text-align:center;}
  .common-padding{padding:60px 0;}
  .cf7-col{flex:1;}
}
@media screen and (max-width:580px){ .cf7-col{flex:1 1 100%;} }