/* ============================================================
   PRIME FITOUTS — DESIGN SYSTEM: SLATE & COBALT ICE
   Graphite slate + steel-ice accent. Technical, precise, engineered.
   Blueprint-inspired: corner brackets, dimension lines, mono figures.
   ============================================================ */

:root{
  --ink:      #17181b;
  --slate:    #1d1e22;
  --slate-2:  #232428;
  --slate-3:  #292a2f;
  --slate-4:  #313236;
  --ice:      #6fb3d9;
  --ice-lt:   #9ccfe8;
  --ice-dim:  #4a7691;
  --steel:    #5c86a0;
  --white:    #e9eef2;
  --grey:     #8b98a3;
  --grey-dim: #5a6670;
  --line:     rgba(233,238,242,0.09);
  --line-ice: rgba(111,179,217,0.28);
  --shadow:   0 40px 90px rgba(0,0,0,0.5);

  --f-display: 'Helvetica Neue', Arial, sans-serif;
  --f-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --f-mono: 'SF Mono', 'JetBrains Mono', Menlo, Consolas, monospace;

  --ease: cubic-bezier(.19,1,.22,1);

  --radius:    12px;
  --radius-sm: 8px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--f-body);
  background:var(--ink);
  color:var(--grey);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit;}
::selection{background:var(--ice);color:var(--ink);}

.container{max-width:1280px;margin:0 auto;padding:0 5%;}

/* ---------- typography ---------- */
.mono{font-family:var(--f-mono);}
.eyebrow{
  display:none;
  align-items:center;gap:10px;
  font-family:var(--f-mono);font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--ice);
}
.eyebrow::before{content:'//';color:var(--ice-dim);}
.eyebrow.center{justify-content:center;}

h1,h2,h3,h4{
  font-family:var(--f-display);font-weight:700;letter-spacing:-.01em;color:var(--white);line-height:1.06;
  text-transform:uppercase;
}
.condensed{transform:scaleX(.92);transform-origin:left;display:inline-block;}
.hero-title-lock{white-space:nowrap;font-size:clamp(42px,6.4vw,90px);}
.center-block .condensed{transform-origin:center;}

.display-xl{font-size:clamp(46px,7.4vw,104px);}
.display-lg{font-size:clamp(34px,4.8vw,62px);}
.display-md{font-size:clamp(27px,3.2vw,42px);}
.display-sm{font-size:clamp(20px,2.2vw,26px);}
h1 i,h2 i,h3 i{font-style:normal;color:var(--ice);}

.section-head{max-width:620px;margin:0 auto 64px;text-align:center;}
.section-head .eyebrow{margin-bottom:20px;}
.section-head h2{margin-bottom:16px;}
.section-head p{font-family:var(--f-body);text-transform:none;color:var(--grey);font-size:15.5px;line-height:1.8;}
.section-head.left{margin:0 0 60px;text-align:left;}
.section-head.left .eyebrow,.section-head.left h2{justify-content:flex-start;}

section{position:relative;padding:130px 0;}
.section-tight{padding:90px 0;}
p{font-family:var(--f-body);}

/* ---------- corner bracket motif ---------- */
.bracket{position:relative;}
.bracket::before,.bracket::after{
  content:'';position:absolute;width:22px;height:22px;
  border:1.5px solid var(--ice);opacity:.55;z-index:3;pointer-events:none;
}
.bracket::before{top:-1px;left:-1px;border-right:none;border-bottom:none;}
.bracket::after{bottom:-1px;right:-1px;border-left:none;border-top:none;}

/* ---------- buttons ---------- */
.btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 30px;font-family:var(--f-mono);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;
  border-radius:var(--radius-sm);border:1px solid transparent;transition:.4s var(--ease);white-space:nowrap;
}
.btn svg{width:16px;height:16px;flex-shrink:0;fill:currentColor;}
.btn-ice{background:var(--ice);color:var(--ink);}
.btn-ice:hover{background:var(--ice-lt);transform:translateY(-2px);}
.btn-outline{background:transparent;color:var(--white);border-color:rgba(233,238,242,0.22);}
.btn-outline:hover{border-color:var(--ice);color:var(--ice-lt);}
.btn-wa{background:#25D366;color:#06210f;}
.btn-wa:hover{background:#33e075;transform:translateY(-2px);}
.btn-lg{padding:19px 40px;font-size:12.5px;}

/* ---------- nav ---------- */
.nav{
  position:fixed;top:0;left:0;width:100%;z-index:1000;
  display:flex;align-items:center;justify-content:space-between;
  padding:26px 5%;transition:.5s var(--ease);border-bottom:none;
  background:linear-gradient(180deg,rgba(12,14,18,.58) 0%,rgba(12,14,18,.24) 62%,transparent 100%);
}
.nav.scrolled{padding:16px 5%;background:rgba(23,24,27,0.9);backdrop-filter:blur(14px);border-bottom:none;}
.brand{display:flex;align-items:center;gap:13px;}
.brand-logo{display:block;width:196px;height:auto;max-height:42px;}
.brand-mark{
  width:38px;height:38px;border:1px solid var(--ice-dim);
  display:flex;align-items:center;justify-content:center;position:relative;
  font-family:var(--f-mono);font-size:12px;color:var(--ice);flex-shrink:0;
}
.brand-word{font-family:var(--f-display);font-weight:700;font-size:17px;letter-spacing:0;color:#fff;text-transform:uppercase;}
.brand-word i{font-style:normal;color:var(--ice);}
.brand-sub{display:block;font-family:var(--f-mono);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#fff;margin-top:2px;}

.nav-links{display:flex;align-items:center;gap:36px;}
.nav-links a{font-family:var(--f-mono);font-size:11.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#fff;transition:color .3s;position:relative;}
.nav-links a::after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--ice);transition:width .35s var(--ease);}
.nav-links a:hover{color:var(--white);}
.nav-links a:hover::after{width:100%;}
.nav-cta{display:flex;align-items:center;gap:16px;}
.nav-cta .btn{padding:12px 22px;font-size:10.5px;box-shadow:0 10px 24px rgba(0,0,0,.18);}
.nav-cta .btn-outline,.nav-cta .btn-ice{background:#fff;border-color:#fff;color:var(--ink);}
.nav-cta .btn-outline:hover,.nav-cta .btn-ice:hover{background:var(--ice-lt);border-color:var(--ice-lt);color:var(--ink);transform:translateY(-2px);}

.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;z-index:1100;}
.hamburger span{width:22px;height:1.5px;background:var(--white);transition:.3s;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

.mobile-menu{
  position:fixed;inset:0;z-index:1050;
  display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;
  padding:118px 7% 34px;background:linear-gradient(145deg,#111318 0%,#171d25 58%,#101215 100%);
  opacity:0;pointer-events:none;transform:translateX(28px);transition:opacity .35s var(--ease),transform .45s var(--ease);
}
.mobile-menu::before{content:'Navigation';font:600 10px var(--f-mono);letter-spacing:2.2px;text-transform:uppercase;color:var(--ice);padding-bottom:18px;border-bottom:1px solid var(--line-ice);}
.mobile-menu.open{opacity:1;pointer-events:all;transform:none;}
.mobile-menu-back{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:9px 12px;border:1px solid var(--line-ice);color:var(--ice-lt);font:600 10px var(--f-mono);letter-spacing:1.2px;text-transform:uppercase;transition:.25s;}
.mobile-menu-back:hover{background:rgba(111,179,217,.12);border-color:var(--ice);color:#fff;}
.mobile-menu a{display:flex;align-items:center;justify-content:space-between;padding:18px 2px;border-bottom:1px solid var(--line);font-family:var(--f-mono);font-weight:600;font-size:14px;letter-spacing:1.2px;color:#fff;text-transform:uppercase;transition:color .25s,background .25s,padding .25s;}
.mobile-menu a:not(.btn)::after{content:'↗';font-size:16px;color:var(--ice);}
.mobile-menu a:not(.btn):hover{color:var(--ice-lt);padding-left:8px;background:rgba(111,179,217,.04);}
.mobile-menu .btn{margin-top:26px;justify-content:center;border:none;background:#25D366;color:#06210f;padding:18px 20px;font-size:11px;box-shadow:0 14px 28px rgba(37,211,102,.2);}
.mobile-menu .btn::after{display:none;}

/* ---------- floating whatsapp ---------- */
.float-wa{
  position:fixed;bottom:26px;right:26px;z-index:999;
  width:56px;height:56px;border-radius:50%;background:#25D366;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 30px rgba(37,211,102,0.4);
  animation:pulseWa 2.6s infinite;
}
.float-wa svg{width:26px;height:26px;fill:#06210f;}
.float-wa:hover{transform:scale(1.08);}
@keyframes pulseWa{0%,100%{box-shadow:0 10px 30px rgba(37,211,102,0.4);}50%{box-shadow:0 10px 40px rgba(37,211,102,0.65),0 0 0 9px rgba(37,211,102,0.1);}}

/* ---------- placeholder image blocks ---------- */
.ph{position:relative;overflow:hidden;background:var(--slate-2);border:1px solid var(--line);}
.ph::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px, transparent 1px),linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size:24px 24px;
}
.ph-fill{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;}
.ph-label{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  cursor:pointer;transition:.3s;z-index:2;text-align:center;padding:20px;
}
.ph-label:hover{background:rgba(111,179,217,0.06);}
.ph-icon{width:42px;height:42px;border:1px solid var(--ice-dim);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--ice);}
.ph-label span{font-family:var(--f-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--steel);font-weight:600;}
.ph-label small{font-family:var(--f-mono);font-size:9.5px;color:var(--grey-dim);letter-spacing:.5px;}
.ph.has-img .ph-label{opacity:0;pointer-events:none;}
.ph.has-img::before{display:none;}
.ph-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.ph-tag{position:absolute;top:14px;left:14px;z-index:3;font-family:var(--f-mono);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ice-lt);background:rgba(23,24,27,0.75);border:1px solid var(--line-ice);padding:5px 11px;}

/* ---------- footer ---------- */
footer{background:#080a0d;padding:80px 0 28px;border-top:1px solid var(--line);}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:60px;margin-bottom:64px;}
.footer-brand p{font-size:13.5px;line-height:1.9;color:var(--grey-dim);margin-top:18px;max-width:280px;}
.footer-col h4{font-family:var(--f-mono);font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ice);margin-bottom:20px;}
.footer-col ul{display:flex;flex-direction:column;gap:13px;}
.footer-col ul li a{font-size:13.5px;color:var(--grey-dim);transition:.25s;}
.footer-col ul li a:hover{color:var(--ice-lt);}
.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-bottom p{font-family:var(--f-mono);font-size:11px;color:var(--grey-dim);letter-spacing:.4px;}

/* ---------- misc shared ---------- */
.tag-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border:1px solid var(--line-ice);font-family:var(--f-mono);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--ice-lt);background:rgba(111,179,217,0.05);}
.divider{height:1px;background:var(--line);}

/* ============================================================
   HERO — asymmetric split, coordinate-tagged image, dual selector
   ============================================================ */
.hero{min-height:100vh;position:relative;display:flex;align-items:center;padding:150px 0 90px;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:0;}
.hero-bg .ph{position:absolute;inset:0;border:none;}
.hero-bg .ph::before{display:none;}
.hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(95deg, rgba(23,24,27,0.94) 0%, rgba(23,24,27,0.82) 32%, rgba(23,24,27,0.45) 58%, rgba(23,24,27,0.12) 82%, rgba(23,24,27,0.06) 100%);}
.hero-inner{position:relative;z-index:2;max-width:640px;text-align:left;margin-right:auto;margin-left:0;}
.hero > .container{max-width:none;margin:0;padding-left:13%;}
.hero-eyebrow-row{display:flex;align-items:center;gap:18px;margin-bottom:26px;}
.hero-eyebrow-row{display:none;}
.hero-eyebrow-row .rule{flex:1;height:1px;background:var(--line);max-width:60px;}
.hero-inner h1{margin-bottom:26px;}
.hero-sub{font-size:16px;line-height:1.85;color:#fff;max-width:480px;margin-bottom:44px;text-transform:none;}

.hero-switch{display:flex;border:1px solid var(--line-ice);width:fit-content;margin-bottom:44px;background:rgba(23,24,27,0.4);backdrop-filter:blur(3px);}
.hero-switch-btn{display:flex;flex-direction:column;gap:7px;padding:18px 24px;border-right:1px solid var(--line-ice);transition:.3s var(--ease);min-width:180px;}
.hero-switch-btn:last-child{border-right:none;}
.hero-switch-btn .hsw-code{font-family:var(--f-mono);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.75);transition:.3s;}
.hero-switch-btn .hsw-label{font-family:var(--f-display);font-weight:700;font-size:15.5px;letter-spacing:.3px;text-transform:uppercase;color:var(--white);transition:.3s;}
.hero-switch-btn:hover,.hero-switch-btn.active{background:var(--ice);}
.hero-switch-btn:hover .hsw-code,.hero-switch-btn.active .hsw-code{color:rgba(23,24,27,0.55);}
.hero-switch-btn:hover .hsw-label,.hero-switch-btn.active .hsw-label{color:var(--ink);}
@media(max-width:560px){
  .hero-switch{flex-direction:column;width:100%;}
  .hero-switch-btn{border-right:none;border-bottom:1px solid var(--line-ice);min-width:0;}
  .hero-switch-btn:last-child{border-bottom:none;}
}
.hero-stats{display:flex;gap:36px;}
.hero-stats .stat{border-left:1px solid var(--line-ice);padding-left:14px;}
.hero-stats .stat b{display:block;font-family:var(--f-mono);font-size:22px;color:var(--white);font-weight:700;}
.hero-stats .stat span{font-family:var(--f-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#fff;}
.select-track{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);}
.select-tile{
  position:relative;padding:44px 5% 54px;overflow:hidden;transition:.5s var(--ease);border-right:1px solid var(--line);
}
.select-tile:last-child{border-right:none;}
.select-tile .sel-num{
  position:absolute;top:14px;right:5%;font-family:var(--f-mono);font-size:88px;font-weight:700;color:var(--slate-4);
  line-height:1;transition:.5s var(--ease);z-index:0;
}
.select-tile:hover .sel-num{color:var(--slate-4);transform:translateX(-6px);}
.select-tile .sel-code{font-family:var(--f-mono);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--ice);margin-bottom:14px;position:relative;z-index:1;}
.select-tile h3{font-size:26px;margin-bottom:10px;position:relative;z-index:1;}
.select-tile p{font-size:13.5px;color:var(--grey-dim);max-width:340px;margin-bottom:20px;position:relative;z-index:1;text-transform:none;}
.select-tile .sel-arrow{font-family:var(--f-mono);font-size:11.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--white);display:inline-flex;align-items:center;gap:8px;position:relative;z-index:1;transition:gap .35s var(--ease),color .3s;}
.select-tile:hover{background:var(--slate-2);}
.select-tile:hover .sel-arrow{gap:14px;color:var(--ice-lt);}
.select-tile:hover h3{color:var(--ice-lt);}

/* ============================================================
   SPEC LIST — capability rows (replaces card-grid "why us")
   ============================================================ */
.spec-wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:stretch;}
.spec-intro-img{position:relative;min-height:100%;}
.spec-intro-img .ph{position:absolute;inset:0;}
.spec-list{border-top:1px solid var(--line);}
.spec-row{display:grid;grid-template-columns:70px 1fr auto;gap:24px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line);transition:.35s;}
#capability{padding:76px 0;}
#capability .section-head{margin-bottom:28px;}
#capability .spec-wrap{gap:50px;}
.spec-row:hover{background:rgba(111,179,217,0.03);}
.spec-row .idx{font-family:var(--f-mono);font-size:12px;color:var(--ice-dim);padding-top:4px;}
.spec-row h4{font-size:18px;text-transform:none;font-weight:600;color:var(--white);margin-bottom:8px;letter-spacing:0;}
.spec-row p{font-size:13.5px;color:var(--grey-dim);line-height:1.7;max-width:520px;}
.spec-row .val{font-family:var(--f-mono);font-size:13px;color:var(--ice-lt);padding-top:4px;text-align:right;white-space:nowrap;}

/* ============================================================
   SERVICES — modern image grid cards
   ============================================================ */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:24px;}
.svc-card{border:1px solid rgba(17,24,29,0.1);background:#fff;transition:.5s var(--ease);position:relative;overflow:hidden;}
.svc-card:hover{border-color:var(--ice-dim);transform:translateY(-8px);box-shadow:0 30px 60px rgba(17,24,29,0.12);}
.svc-card-img{position:relative;height:200px;overflow:hidden;}
.svc-card-img .ph{position:absolute;inset:0;border:none;}
.svc-card-img .ph-fill{transition:transform .6s var(--ease);}
.svc-card:hover .svc-card-img .ph-fill{transform:scale(1.06);}
.svc-card-idx{position:absolute;top:14px;left:14px;z-index:3;font-family:var(--f-mono);font-size:10.5px;letter-spacing:1px;color:var(--ice-lt);background:rgba(23,24,27,0.72);border:1px solid var(--line-ice);padding:4px 10px;}
.svc-card-titlebar{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:18px 20px;background:linear-gradient(to top, rgba(23,24,27,0.95) 0%, transparent 100%);}
.svc-card-titlebar h3{font-size:17px;text-transform:none;letter-spacing:0;color:var(--white);font-weight:600;line-height:1.25;}
.svc-card-body{padding:20px 22px 24px;}
.svc-card-list{display:flex;flex-direction:column;gap:9px;margin-bottom:20px;}
.svc-card-list li{font-size:12.5px;color:#4a5560;display:flex;align-items:center;gap:9px;}
.svc-card-list li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--ice-dim);flex-shrink:0;}
.svc-card-cta{font-family:var(--f-mono);font-size:10.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#2f7599;display:inline-flex;align-items:center;gap:8px;transition:gap .35s var(--ease);}
.svc-card:hover .svc-card-cta{gap:14px;color:var(--ice-dim);}

/* ============================================================
   BUILD SEQUENCE — blueprint dimension-line timeline
   ============================================================ */
.seq-wrap{position:relative;}
.seq-track{display:flex;position:relative;max-width:760px;margin:0 auto 56px;}
.seq-track-line{position:absolute;left:22px;right:22px;top:21px;height:2px;background:var(--line);border-radius:2px;overflow:hidden;z-index:1;}
.seq-track-fill{position:absolute;left:0;top:0;bottom:0;width:0%;background:linear-gradient(90deg,var(--ice-dim),var(--ice));border-radius:2px;transition:width .6s var(--ease);}
.seq-node{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;z-index:2;background:none;border:none;padding:0;font:inherit;}
.seq-node-ring{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-ice);background:var(--ink);display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:14px;transition:.35s var(--ease);}
.seq-node:hover .seq-node-ring{border-color:var(--ice);transform:translateY(-3px);}
.seq-node .tick{font-family:var(--f-mono);font-size:12px;color:var(--grey-dim);transition:.3s;position:relative;z-index:2;}
.seq-node.active .seq-node-ring{border-color:var(--ice);background:var(--ice);animation:seqPulse 2.2s infinite;}
.seq-node.active .tick{color:var(--ink);font-weight:700;}
.seq-node .seq-code{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--grey-dim);transition:.3s;}
.seq-node.active .seq-code{color:var(--ice-lt);font-weight:700;}
@keyframes seqPulse{0%{box-shadow:0 0 0 0 rgba(111,179,217,.4);}70%{box-shadow:0 0 0 11px rgba(111,179,217,0);}100%{box-shadow:0 0 0 0 rgba(111,179,217,0);}}
.seq-panel{position:relative;overflow:hidden;border:1px solid var(--line);padding:52px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;transition:border-color .35s var(--ease),box-shadow .35s var(--ease);}
.seq-panel:hover{border-color:var(--line-ice);box-shadow:0 20px 60px rgba(0,0,0,.35);}
.seq-autobar{position:absolute;top:0;left:0;right:0;height:3px;background:var(--line);z-index:3;}
.seq-autobar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--ice-dim),var(--ice));}
.seq-autobar-fill.running{transition:width 6s linear;}
.seq-ghost-num{position:absolute;top:-30px;right:-8px;font-family:var(--f-display);font-size:180px;font-weight:800;line-height:1;letter-spacing:-6px;color:rgba(255,255,255,.035);pointer-events:none;user-select:none;z-index:0;}
.seq-panel-text,.seq-panel-img{position:relative;z-index:1;}
.seq-panel-text .seq-tag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--ice);margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.seq-panel-text .seq-tag::before{content:'';width:16px;height:1px;background:var(--ice);}
.seq-panel-text h3{font-size:26px;text-transform:none;margin-bottom:14px;font-weight:600;}
.seq-panel-text p{font-size:15.5px;color:#fff;font-weight:500;line-height:1.8;margin-bottom:20px;}
.seq-panel-text ul{display:flex;flex-direction:column;gap:9px;}
.seq-panel-text ul li{display:flex;gap:12px;font-size:13.5px;color:#fff;font-weight:500;font-family:var(--f-mono);}
.seq-panel-text ul li::before{content:'—';color:var(--ice-dim);}
.seq-panel-img{position:relative;aspect-ratio:4/3;}
.seq-panel-img .ph{position:absolute;inset:0;}
.seq-nav{display:flex;align-items:center;gap:14px;margin-top:26px;}
.seq-nav-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line-ice);background:transparent;color:var(--grey-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.25s var(--ease);flex-shrink:0;}
.seq-nav-btn:hover{border-color:var(--ice);color:var(--ice);transform:translateY(-2px);}
.seq-nav-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;}

/* ============================================================
   PROJECT ALBUMS — lazy cover images and fullscreen viewer
   ============================================================ */
.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.album-card{display:block;text-align:left;border:1px solid var(--line);background:#121214;overflow:hidden;border-radius:var(--radius);transition:.4s var(--ease);width:100%;}
.album-card:hover{transform:translateY(-6px);border-color:var(--line-ice);box-shadow:0 24px 50px rgba(0,0,0,.3);}
.album-thumb{display:block;position:relative;aspect-ratio:4/3;background:var(--slate-2);overflow:hidden;}
.album-thumb::before{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:24px 24px;}
.album-thumb img{position:relative;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);z-index:1;}
.album-card:hover .album-thumb img{transform:scale(1.06);}
.album-placeholder{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;color:var(--ice);}
.album-placeholder b,.album-placeholder small,.album-body small,.album-kicker,.album-count{font-family:var(--f-mono);text-transform:uppercase;letter-spacing:1.1px;}
.album-placeholder b{font-size:10px;}.album-placeholder small{font-size:9px;color:var(--grey-dim);}
.album-thumb:has(img) .album-placeholder{display:none;}
.album-open{position:absolute;right:14px;bottom:14px;z-index:2;padding:8px 11px;background:rgba(23,24,27,.82);border:1px solid var(--line-ice);color:var(--ice-lt);font:600 9px var(--f-mono);letter-spacing:1px;text-transform:uppercase;opacity:0;transform:translateY(7px);transition:.3s var(--ease);}
.album-card:hover .album-open{opacity:1;transform:none;}.album-open i{font-style:normal;font-size:12px;margin-left:4px;}
.album-body{display:block;padding:18px 20px;}.album-body strong{display:block;color:var(--white);font-size:14px;font-weight:600;margin-bottom:5px;}.album-body small{font-size:10.5px;color:#fff;font-weight:600;}
.album-lightbox{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:24px;}.album-lightbox.is-open{display:flex;}.album-backdrop{position:absolute;inset:0;background:rgba(4,5,7,.92);backdrop-filter:blur(10px);}
.album-dialog{position:relative;width:min(100%,1100px);max-height:calc(100vh - 48px);background:var(--slate);border:1px solid var(--line-ice);box-shadow:var(--shadow);}.album-stage{position:relative;min-height:280px;height:min(68vh,720px);background:#080a0d;display:flex;align-items:center;justify-content:center;overflow:hidden;}.album-stage img{width:100%;height:100%;object-fit:contain;}.album-empty{font:11px var(--f-mono);color:var(--grey-dim);letter-spacing:1px;text-transform:uppercase;}.album-nav,.album-close{position:absolute;z-index:3;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line-ice);background:rgba(23,24,27,.8);color:var(--white);font-size:21px;transition:.25s;}.album-nav:hover,.album-close:hover{background:var(--ice);color:var(--ink);}.album-prev{left:18px;}.album-next{right:18px;}.album-close{right:12px;top:12px;font-size:28px;line-height:1;}.album-meta{padding:19px 68px 18px 24px;display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid var(--line);}.album-kicker{display:block;font-size:9px;color:var(--ice);margin-bottom:6px;}.album-meta h2{font-size:19px;text-transform:none;}.album-meta p{font-size:12px;color:var(--grey-dim);margin-top:5px;}.album-count{font-size:10px;color:var(--ice-lt);white-space:nowrap;}.album-dots{display:flex;justify-content:center;gap:8px;padding:0 20px 19px;}.album-dots button{width:7px;height:7px;border-radius:50%;background:var(--grey-dim);}.album-dots button.active{background:var(--ice);transform:scale(1.25);}.album-open{overflow:hidden;}

/* ============================================================
   SPOTLIGHT TESTIMONIAL — single rotator
   ============================================================ */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.review-card{border:1px solid var(--line);background:var(--slate-2);padding:26px;border-radius:var(--radius);display:flex;flex-direction:column;}
.review-stars{color:var(--ice);letter-spacing:2px;font-size:13px;margin-bottom:14px;}
.review-text{font-size:14px;color:var(--grey);line-height:1.75;margin-bottom:22px;flex:1;}
.review-foot{display:flex;align-items:center;gap:12px;}
.review-avatar{width:42px;height:42px;border-radius:50%;background:var(--ice);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--f-display);font-size:15px;flex-shrink:0;}
.review-name{font-size:13.5px;color:var(--white);font-weight:600;}
.review-loc{font-family:var(--f-mono);font-size:12px;letter-spacing:.4px;color:#fff;font-weight:700;margin-top:3px;display:flex;align-items:center;gap:6px;}
.review-loc::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ice);flex-shrink:0;}
@media(max-width:980px){.review-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.review-grid{grid-template-columns:1fr;}}

/* ============================================================
   CONTACT — coordinate panel
   ============================================================ */
.contact-wrap{border:1px solid var(--line);padding:72px 40px;text-align:center;background:var(--slate-2);}
.contact-tagline{font-size:15px;color:var(--grey);line-height:1.8;max-width:460px;margin:0 auto 28px;text-transform:none;}
.contact-phone-big{font-family:var(--f-display);font-weight:700;font-size:clamp(40px,6.4vw,76px);color:#fff;letter-spacing:-1px;margin-bottom:40px;text-transform:none;}
.contact-phone-big span{color:var(--ice);}
.contact-btn-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.hero-actions{justify-content:flex-start;margin-bottom:44px;}
.contact-info-strip{display:flex;justify-content:center;gap:64px;flex-wrap:wrap;margin-top:64px;padding-top:44px;border-top:1px solid var(--line);}
.ci-item{text-align:center;}
.ci-item .ci-label{display:block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--grey-dim);margin-bottom:10px;}
.ci-item .ci-value{font-size:16.5px;font-weight:600;color:var(--white);}
.ci-item .ci-value a{transition:color .3s;}
.ci-item .ci-value a:hover{color:var(--ice-lt);}

/* ---------- coverage section background image ---------- */
#coverage{position:relative;overflow:hidden;}
.coverage-bg{position:absolute;inset:0;z-index:0;}
.coverage-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.coverage-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(23,24,27,0.9) 0%, rgba(23,24,27,0.78) 40%, rgba(23,24,27,0.94) 100%);}
#coverage .container{position:relative;z-index:2;}

/* ---------- trusted-by client strip ---------- */
.clients-wrap{margin-top:60px;}
.clients-label-row{display:flex;align-items:center;gap:18px;margin-bottom:26px;}
.clients-label-row::before,.clients-label-row::after{content:'';flex:1;height:1px;background:var(--line);}
.clients-label{font-family:var(--f-mono);font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#fff;white-space:nowrap;}
.clients-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.client-logo{height:66px;border:1px solid var(--line-ice);background:linear-gradient(135deg, rgba(111,179,217,0.08), rgba(111,179,217,0.02));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-display);font-size:14.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--grey-dim);opacity:.68;filter:grayscale(1);transition:.3s var(--ease);}
.client-logo .cl-mark{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;}
.client-logo:hover{color:var(--ice-lt);border-color:var(--ice);opacity:1;filter:grayscale(0);transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.3);}
@media(max-width:980px){.clients-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.clients-strip{grid-template-columns:repeat(2,1fr);}.client-logo{font-size:13px;height:58px;}}

/* ---------- vinyl finish swatch grid (interior wrapping) ---------- */
.swatch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.swatch-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--slate-2);transition:.35s var(--ease);}
.swatch-card:hover{transform:translateY(-5px);border-color:var(--line-ice);box-shadow:0 20px 40px rgba(0,0,0,.32);}
.swatch-color{height:110px;}
.swatch-body{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.swatch-name{font-size:13.5px;font-weight:600;color:var(--white);}
.swatch-tag{font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--ice-lt);white-space:nowrap;}
.swatch-note{margin-top:28px;text-align:center;font-size:12px;color:var(--grey-dim);}
.swatch-navy{background:#1c3d5a;}
.swatch-walnut{background:#5a3a22;}
.swatch-charcoal{background:#33363b;}
.swatch-marble{background:#efece5;}
.swatch-teal{background:#1f5c56;}
.swatch-terracotta{background:#b25f43;}
.swatch-sand{background:#cebc93;}
.swatch-oak{background:#93672f;}
.swatch-graphite{background:#3a3d42;}
.swatch-stone{background:#98988f;}
.swatch-black{background:#141517;}
.swatch-olive{background:#55613f;}
@media(max-width:980px){.swatch-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.swatch-grid{grid-template-columns:repeat(2,1fr);}.swatch-color{height:90px;}}

/* ---------- vinyl finish swipe carousel (interior wrapping) ---------- */
.wc-wrap{padding:6px 0 8px;}
.wc-stage{position:relative;width:100%;max-width:1100px;margin:0 auto;height:340px;display:flex;align-items:center;justify-content:center;touch-action:pan-y;user-select:none;}
.wc-drag{position:absolute;inset:0;z-index:60;cursor:grab;}
.wc-drag:active{cursor:grabbing;}
.wc-card{position:absolute;width:200px;height:280px;border-radius:var(--radius);overflow:hidden;background:var(--slate-2);box-shadow:0 20px 50px rgba(0,0,0,.45);will-change:transform,opacity;top:50%;left:50%;margin:-140px 0 0 -100px;pointer-events:none;}
.wc-card-media{position:absolute;inset:0;}
.wc-card-media img{width:100%;height:100%;object-fit:cover;}
.wc-badge{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.96);color:var(--ink);font-family:var(--f-mono);font-size:9px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;padding:6px 11px;border-radius:20px;}
.wc-text{position:absolute;left:14px;right:14px;bottom:16px;color:#fff;opacity:0;}
.wc-text h4{font-size:16px;font-weight:700;margin-bottom:4px;}
.wc-card-light .wc-text h4{color:#17181b;}
.wc-text p{font-size:11px;color:rgba(255,255,255,.75);font-style:italic;line-height:1.5;}
.wc-nav{display:flex;justify-content:center;gap:14px;margin-top:22px;}
@media(min-width:640px){
  .wc-stage{height:420px;}
  .wc-card{width:250px;height:340px;margin:-170px 0 0 -125px;}
  .wc-text h4{font-size:19px;}
  .wc-text p{font-size:12px;}
}
@media(min-width:1024px){
  .wc-stage{height:480px;}
  .wc-card{width:280px;height:390px;margin:-195px 0 0 -140px;}
}

/* ---------- coverage grid (handyman) ---------- */
.cov-badge-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:48px;}
.cov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:56px;}
.cov-area{background:transparent;border:none;border-radius:0;padding:17px 18px;height:58px;box-sizing:border-box;display:flex;align-items:center;gap:12px;transition:.3s var(--ease);}
.cov-area:hover{background:transparent;border-color:transparent;transform:translateY(-2px);}
.cov-dot{width:6px;height:6px;background:var(--ice);border-radius:50%;flex-shrink:0;}
.cov-area span{font-family:var(--f-mono);font-size:14px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.emergency-band{position:relative;isolation:isolate;overflow:hidden;margin-top:44px;border:1px solid rgba(111,179,217,.55);background:linear-gradient(120deg,rgba(23,24,27,.96),rgba(32,48,58,.88));padding:44px 52px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;box-shadow:inset 4px 0 0 var(--ice),0 26px 50px rgba(0,0,0,.28);}
.emergency-band::before{content:'24/7';position:absolute;right:250px;bottom:-34px;z-index:-1;font:800 170px/1 var(--f-display);letter-spacing:-10px;color:rgba(111,179,217,.07);}.emergency-band::after{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(135deg,transparent 0 16px,rgba(111,179,217,.025) 16px 17px);}
.emergency-signal{display:flex;align-items:center;gap:9px;margin-bottom:14px;font:700 9.5px var(--f-mono);letter-spacing:1.8px;text-transform:uppercase;color:var(--ice-lt);}.emergency-signal span{width:8px;height:8px;border-radius:50%;background:#25D366;box-shadow:0 0 0 6px rgba(37,211,102,.12);animation:emergencyPulse 1.8s infinite;}
.emergency-band h3{font-size:clamp(26px,2.5vw,38px);text-transform:none;margin-bottom:10px;font-weight:700;letter-spacing:-.025em;}.emergency-band h3 b{color:var(--ice);}.emergency-band p{font-size:14px;color:var(--grey);line-height:1.75;max-width:540px;text-transform:none;}
.emergency-notes{display:flex;gap:15px;flex-wrap:wrap;margin-top:22px;}.emergency-notes span{font:600 9px var(--f-mono);letter-spacing:1px;text-transform:uppercase;color:var(--ice-lt);padding:7px 9px;border:1px solid var(--line-ice);background:rgba(111,179,217,.06);}
.emergency-cta{display:flex;flex-direction:column;gap:10px;min-width:210px;}.emergency-cta-label{font:600 9px var(--f-mono);letter-spacing:1.5px;text-align:center;text-transform:uppercase;color:var(--grey);margin-bottom:2px;}.emergency-cta .btn span{font-size:15px;line-height:0;}@keyframes emergencyPulse{0%,100%{box-shadow:0 0 0 4px rgba(37,211,102,.12)}50%{box-shadow:0 0 0 9px rgba(37,211,102,0)}}

.gal-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:2px;margin-bottom:50px;border:1px solid var(--line);width:fit-content;margin-left:auto;margin-right:auto;}
.gf-btn{padding:11px 22px;font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--grey-dim);background:transparent;transition:.3s;border-right:1px solid var(--line);}
.gf-btn:last-child{border-right:none;}
.gf-btn.active,.gf-btn:hover{background:var(--ice);color:var(--ink);}

@media(max-width:1000px){
  .nav-links,.nav-cta .btn:not(.btn-wa-mobile-hide){display:none;}
  .hamburger{display:flex;}
  .footer-top{grid-template-columns:1fr 1fr;gap:40px;}
  .select-track{grid-template-columns:1fr;}
  .select-tile{border-right:none;border-bottom:1px solid var(--line);}
  .spec-wrap{grid-template-columns:1fr;}
  .seq-panel{grid-template-columns:1fr;}
  .album-grid{grid-template-columns:1fr 1fr;}
  .emergency-band{grid-template-columns:1fr;text-align:center;}
  .emergency-band p{margin:0 auto;}
  .emergency-notes{justify-content:center;}.emergency-cta{margin:0 auto;}.emergency-band::before{right:50%;transform:translateX(50%);}
}
@media(max-width:640px){
  .brand-logo{width:168px;max-height:36px;}
  section{padding:90px 0;}
  .footer-top{grid-template-columns:1fr;}
  .hero-stats{flex-wrap:wrap;gap:22px;}
  .album-grid{grid-template-columns:1fr;}
  .album-lightbox{padding:12px;}.album-dialog{max-height:calc(100vh - 24px);}.album-stage{height:min(61vh,560px);min-height:220px;}.album-nav{width:38px;height:38px;}.album-prev{left:10px;}.album-next{right:10px;}.album-meta{padding:16px 50px 14px 16px;}.album-meta h2{font-size:16px;}.album-count{display:none;}
  .seq-track{max-width:100%;overflow-x:auto;justify-content:flex-start;gap:26px;padding:4px 4px 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
  .seq-track::-webkit-scrollbar{display:none;}
  .seq-track-line{left:26px;right:26px;}
  .seq-node{flex:0 0 auto;min-width:66px;}
  .seq-node-ring{width:38px;height:38px;margin-bottom:10px;}
  .seq-panel{padding:32px 22px;}
  .seq-ghost-num{font-size:110px;top:-16px;}
  .contact-wrap{padding:44px 22px;}
  .contact-info-strip{gap:32px;}
  .clients-strip{gap:14px;}.emergency-band{padding:34px 24px;gap:30px;}.emergency-band::before{font-size:120px;bottom:-20px;}
}

/* ============================================================
   SOFTENED CORNERS — subtle rounding across the site
   ============================================================ */
.brand-mark{border-radius:var(--radius-sm);}
.ph{border-radius:var(--radius-sm);}
.hero-bg .ph,.hero-bg-img{border-radius:0;}
.svc-card{border-radius:var(--radius);}
.svc-card-img .ph,.spec-intro-img .ph,.seq-panel-img .ph{border-radius:0;}
.spec-intro-img{border-radius:var(--radius);overflow:hidden;}
.select-track{border-radius:var(--radius);overflow:hidden;}
.contact-wrap{border-radius:var(--radius);overflow:hidden;}
.seq-panel{border-radius:var(--radius);}
.seq-panel-img{border-radius:var(--radius-sm);overflow:hidden;}
.emergency-band{border-radius:var(--radius);}
.tag-pill{border-radius:var(--radius-sm);}
.hero-switch{border-radius:var(--radius-sm);overflow:hidden;}
.gal-filter{border-radius:var(--radius-sm);overflow:hidden;}
.float-wa{border-radius:50%;}

/* ---------- mobile refinements ---------- */
@media(max-width:1000px){
  .hero > .container{padding-left:7%;padding-right:7%;}
  .hero-inner{max-width:min(640px,100%);}
}
@media(max-width:640px){
  section{padding:78px 0;}
  .nav{padding:16px 5%;}
  .nav.scrolled{padding:13px 5%;}
  .mobile-menu{padding:102px 6% 28px;}
  .brand-logo{width:168px;max-height:36px;}
  .hero{min-height:92svh !important;padding:112px 0 52px !important;}
  .hero-overlay{background:linear-gradient(180deg,rgba(23,24,27,.72) 0%,rgba(23,24,27,.56) 52%,rgba(23,24,27,.72) 100%);}
  .handyman-hero .hero-bg-img{object-position:82% center;}
  .hero > .container{width:100%;box-sizing:border-box;padding-left:5%;padding-right:5%;}
  .hero-inner{display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%;min-height:calc(92svh - 164px);margin-left:auto;margin-right:auto;text-align:center;}
  .hero-sub{display:none;}
  .hero .display-xl{font-size:clamp(42px,11.5vw,52px);line-height:.98;}
  .handyman-hero .hero-title-lock{font-size:inherit;}
  .hero-inner h1{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);margin:0;text-align:center;}
  .hero-inner h1{margin-bottom:24px;}
  .hero-switch{flex-direction:row;width:min(100%,680px);max-width:100%;align-self:center;align-items:stretch;margin: auto auto 20px;}
  .hero-switch-btn{flex:1;width:auto;gap:5px;padding:12px 10px;min-width:0;border-right:1px solid var(--line-ice);border-bottom:none;}
  .hero-switch-btn{align-items:center;justify-content:center;text-align:center;}
  .hero-switch-btn .hsw-code,.hero-switch-btn .hsw-label{display:block;width:100%;text-align:center;}
  .hero-switch-btn:last-child{border-right:none;}
  .hero-switch-btn .hsw-code{font-size:7.5px;letter-spacing:.8px;}
  .hero-switch-btn .hsw-label{font-size:12px;}
  .hero-actions{display:none;}
  .hero-actions .btn{flex:1;padding:13px 10px;font-size:9px;letter-spacing:1px;}
  .hero-stats[style]{margin-top:0 !important;}
  .hero-stats{width:min(100%,520px);align-self:center;justify-content:center;flex-wrap:nowrap;gap:8px;margin-left:auto;margin-right:auto;}
  .hero-stats .stat{min-width:0;flex:1;padding-left:10px;padding-right:10px;text-align:center;}
  .hero-stats .stat b{font-size:clamp(23px,6.8vw,32px);}
  .hero-stats .stat span{font-size:7.5px;letter-spacing:.55px;white-space:nowrap;}
  .section-head{margin-bottom:42px;}
  .section-head.left{margin-bottom:32px;}
  .section-head p{font-size:14px;}
  .spec-intro-img{min-height:390px;}
  .spec-wrap{gap:34px;}
  #capability .capability-mobile-panel{display:block;padding:34px 24px;background-color:var(--ink);background-image:linear-gradient(180deg,rgba(14,17,21,.7) 0%,rgba(14,17,21,.88) 34%,rgba(14,17,21,.96) 100%),url('../assets/img/capability.jpg');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat;border:1px solid var(--line-ice);border-radius:var(--radius);overflow:hidden;}
  #capability .container{max-width:none;padding-left:0;padding-right:0;}
  #capability .capability-mobile-panel{border-left:none;border-right:none;border-radius:0;}
  #capability{padding-top:0;padding-bottom:0;}
  #capability .capability-mobile-panel .spec-intro-img{display:none;}
  #capability .capability-mobile-panel .section-head{margin-bottom:28px;}
  #capability .capability-mobile-panel .section-head h2{color:#fff;}
  #capability .capability-mobile-panel .section-head p{color:rgba(255,255,255,.82);}
  #capability .capability-mobile-panel .spec-list{border-top-color:rgba(255,255,255,.22);}
  #capability .capability-mobile-panel .spec-row{border-bottom-color:rgba(255,255,255,.18);}
  #capability .capability-mobile-panel .spec-row h4{color:#fff;}
  #capability .capability-mobile-panel .spec-row p{color:rgba(255,255,255,.78);}
  #capability .capability-mobile-panel .spec-row .val{color:var(--ice-lt);}
  .handyman-mobile-panel{display:block;padding:34px 24px;background-color:var(--ink);background-image:linear-gradient(180deg,rgba(14,17,21,.7) 0%,rgba(14,17,21,.88) 34%,rgba(14,17,21,.96) 100%),url('../assets/img/capability-handyman.webp');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat;border:1px solid var(--line-ice);border-radius:var(--radius);overflow:hidden;}
  .handyman-mobile-panel .spec-intro-img{display:none;}
  .handyman-mobile-panel .section-head{margin-bottom:28px;}
  .handyman-mobile-panel .section-head h2{color:#fff;}
  .handyman-mobile-panel .section-head p{color:rgba(255,255,255,.82);}
  .handyman-mobile-panel .spec-list{border-top-color:rgba(255,255,255,.22);}
  .handyman-mobile-panel .spec-row{border-bottom-color:rgba(255,255,255,.18);}
  .handyman-mobile-panel .spec-row h4{color:#fff;}
  .handyman-mobile-panel .spec-row p{color:rgba(255,255,255,.78);}
  .handyman-mobile-panel .spec-row .val{color:var(--ice-lt);}
  #handyman-capability .container{max-width:none;padding-left:0;padding-right:0;}
  #handyman-capability .handyman-mobile-panel{border-left:none;border-right:none;border-radius:0;}
  #handyman-capability{padding-top:0;padding-bottom:0;}
  .wrap-mobile-panel{display:block;padding:34px 24px;background-color:var(--ink);background-image:linear-gradient(180deg,rgba(14,17,21,.7) 0%,rgba(14,17,21,.88) 34%,rgba(14,17,21,.96) 100%),url('../assets/img/capability-wrapping.jpg');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat;border:1px solid var(--line-ice);border-radius:var(--radius);overflow:hidden;}
  .wrap-mobile-panel .spec-intro-img{display:none;}
  .wrap-mobile-panel .section-head{margin-bottom:28px;}
  .wrap-mobile-panel .section-head h2{color:#fff;}
  .wrap-mobile-panel .section-head p{color:rgba(255,255,255,.82);}
  .wrap-mobile-panel .spec-list{border-top-color:rgba(255,255,255,.22);}
  .wrap-mobile-panel .spec-row{border-bottom-color:rgba(255,255,255,.18);}
  .wrap-mobile-panel .spec-row h4{color:#fff;}
  .wrap-mobile-panel .spec-row p{color:rgba(255,255,255,.78);}
  .wrap-mobile-panel .spec-row .val{color:var(--ice-lt);}
  #wrap-capability .container{max-width:none;padding-left:0;padding-right:0;}
  #wrap-capability .wrap-mobile-panel{border-left:none;border-right:none;border-radius:0;}
  #wrap-capability{padding-top:0;padding-bottom:0;}
  .spec-row{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:20px 0;}
  .spec-row .idx{padding-top:3px;}
  .spec-row .val{grid-column:2;grid-row:2;padding-top:0;text-align:left;font-size:10.5px;}
  .spec-row h4{font-size:18px;}
  .spec-row p{font-size:13.5px;}
  .gal-filter{width:100%;margin-bottom:32px;justify-content:center;}
  .gf-btn{padding:10px 12px;font-size:9px;letter-spacing:.7px;}
  .album-body{padding:16px;}
  .cov-grid{display:grid;grid-template-columns:none;grid-template-rows:repeat(5,58px);grid-auto-columns:calc((100% - 12px) / 2);grid-auto-flow:column;gap:10px 12px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:10px;margin-bottom:38px;scrollbar-width:none;}
  .cov-grid::-webkit-scrollbar{display:none;}
  .cov-area{scroll-snap-align:start;min-width:0;}
  .cov-badge-row{margin-bottom:34px;}
  .contact-btn-row .btn-lg{width:100%;}
  .svc-grid[data-stagger] > *{opacity:1;transform:none;transition:none;}
  footer{padding:48px 0 22px;}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px 24px;margin-bottom:38px;}
  .footer-brand{grid-column:1 / -1;}
  .footer-brand p{margin-top:10px;}
  .footer-col ul{gap:9px;}
  .footer-col h4{margin-bottom:14px;}
  .footer-bottom{padding-top:18px;}
}
@media(max-width:380px){
  .brand-logo{width:150px;}
  .hero-actions .btn{flex-basis:100%;}
  .hero-stats .stat{min-width:0;}
  .gf-btn{padding:9px 10px;font-size:8.5px;}
}

/* ============================================================
   SERVICES — off-white section on the dark site
   ============================================================ */
#services{background:#eef0f2;}
#finishes{background:#eef0f2;}
#finishes .eyebrow::before{color:var(--ice-dim);}
#finishes .section-head h2{color:var(--ink);}
#finishes .section-head p{color:#4a5560;}
#services .eyebrow::before{color:var(--ice-dim);}
#services .section-head h2{color:var(--ink);}
#services .section-head p{color:#4a5560;}
