/* ══════════════ Lewis-Mancebo Enterprise LLC — plain HTML build ══════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  scroll-behavior:smooth;
  overflow-x:hidden;
  overflow-x:clip;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  font-family:'Inter',ui-sans-serif,system-ui,sans-serif;
  color:#171717;background:#fff;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
  overflow-x:clip;
  position:relative;
  width:100%;
}
img{display:block;max-width:100%}
img:not([height]){height:auto}
/* grid children can always shrink — prevents layout blowout on small screens */
main section>*,.ft>*,.svc-grid>*,.work-grid>*,.areas-grid>*,.mini-grid>*,.f-grid>*{min-width:0}
a{text-decoration:none;color:inherit}
ul{list-style:none}
::selection{background:#111;color:#fff}

.display{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;letter-spacing:-.02em}
.wrap{max-width:1280px;margin:0 auto;padding-left:32px;padding-right:32px}

/* ── eyebrow label ── */
.eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase}
.eyebrow::before{content:"";width:36px;height:1px;background:currentColor;opacity:.45}

/* ── buttons ── */
.btn{display:inline-flex;align-items:center;gap:9px;padding:16px 30px;font-size:13px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s;cursor:pointer;border:1px solid transparent}
.btn .arr{transition:transform .25s}
.btn:hover .arr{transform:translateX(4px)}
.btn-white{background:#fff;color:#0a0a0a}
.btn-white:hover{background:#e5e5e5}
.btn-ghost-w{border-color:rgba(255,255,255,.4);color:#fff}
.btn-ghost-w:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-dark{background:#0a0a0a;color:#fff}
.btn-dark:hover{background:#262626}
.btn-ghost-d{border-color:#d4d4d4;color:#0a0a0a}
.btn-ghost-d:hover{border-color:#0a0a0a}

/* ── header ── */
header{position:fixed;top:0;left:0;right:0;z-index:50;color:#fff;transition:background .4s,color .4s,box-shadow .4s}
header.solid{background:rgba(255,255,255,.96);color:#171717;box-shadow:0 1px 0 rgba(0,0,0,.08);backdrop-filter:blur(8px)}
.hd-in{display:flex;align-items:center;justify-content:space-between;height:80px}
.hd-logo img{height:44px;width:auto;transition:height .4s}
header.solid .hd-logo img{height:36px}
.logo-w{display:block}
.logo-k{display:none}
header.solid .logo-w{display:none}
header.solid .logo-k{display:block}
nav.desk{display:none;align-items:center;gap:36px}
nav.desk a{position:relative;font-size:13px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;opacity:.65}
nav.desk a:hover,nav.desk a.on{opacity:1}
nav.desk a::after{content:"";position:absolute;left:0;bottom:-8px;height:1px;width:0;background:currentColor;transition:width .3s}
nav.desk a:hover::after,nav.desk a.on::after{width:100%}
.hd-cta{margin-left:12px;padding:11px 24px;font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  background:#fff;color:#0a0a0a;border:1px solid #fff;transition:.3s}
.hd-cta:hover{background:transparent;color:#fff}
header.solid .hd-cta{background:#0a0a0a;color:#fff;border-color:#0a0a0a}
header.solid .hd-cta:hover{background:transparent;color:#0a0a0a}
.burger{background:none;border:0;color:inherit;cursor:pointer;padding:8px}
.m-menu{overflow:hidden;max-height:0;background:#fff;color:#171717;transition:max-height .5s ease}
.m-menu.open{max-height:400px;border-top:1px solid #f0f0f0}
.m-menu nav{display:flex;flex-direction:column;padding:24px}
.m-menu a{padding:16px 0;border-bottom:1px solid #f0f0f0;font-size:14px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#a3a3a3}
.m-menu a.on{color:#171717}
.m-menu .m-cta{margin-top:16px;background:#0a0a0a;color:#fff;text-align:center;padding:16px;font-size:14px;font-weight:600;letter-spacing:.2em;border:0}
@media(min-width:1024px){
  nav.desk{display:flex}
  .burger,.m-menu{display:none}
}

/* ── hero ── */
.hero{position:relative;display:flex;align-items:center;min-height:100svh;background:#0a0a0a;color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.55;animation:drift 22s ease-in-out infinite alternate}
@keyframes drift{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to right,#0a0a0a 0%,rgba(10,10,10,.7) 45%,rgba(10,10,10,.2) 100%)}
.hero-bg::before{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;z-index:1;
  background:linear-gradient(to top,#0a0a0a,transparent)}
.hero-in{position:relative;z-index:2;width:100%;padding-top:144px;padding-bottom:200px}
.hero h1{margin-top:28px;max-width:900px;font-size:clamp(42px,6vw,74px);line-height:1.06;font-weight:500}
.hero h1 em{color:#d4d4d4}
.hero .lead{margin-top:28px;max-width:620px;font-size:17px;line-height:1.7;color:#d4d4d4}
.hero-ctas{margin-top:40px;display:flex;flex-wrap:wrap;gap:16px}
.hero-stats{position:absolute;left:0;right:0;bottom:0;z-index:3;border-top:1px solid rgba(255,255,255,.1);
  background:rgba(10,10,10,.6);backdrop-filter:blur(4px)}
.hero-stats .wrap{display:grid;grid-template-columns:repeat(2,1fr);padding:0}
.stat{display:flex;align-items:center;gap:12px;padding:20px 24px;border-left:1px solid rgba(255,255,255,.1)}
.stat:first-child{border-left:0}
.stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.1)}
.stat svg{flex-shrink:0;color:#a3a3a3}
.stat span{font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#e5e5e5}
@media(min-width:1024px){
  .hero-stats .wrap{grid-template-columns:repeat(4,1fr)}
  .stat:nth-child(n+3){border-top:0}
  .hero-in{padding-bottom:160px}
}
@media(max-width:640px){.hero-in{padding-bottom:220px}}

/* ── marquee ── */
.marq{overflow:hidden;border-bottom:1px solid #e5e5e5;padding:20px 0;background:#fff}
.marq-in{display:flex;width:max-content;gap:40px;animation:marq 30s linear infinite}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marq span{display:flex;align-items:center;gap:40px}
.marq .w{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-weight:500;letter-spacing:.02em;font-size:18px;color:#262626}
.marq .d{width:6px;height:6px;background:#d4d4d4;transform:rotate(45deg)}

/* ── sections ── */
.sec{padding:96px 0}
@media(min-width:1024px){.sec{padding:128px 0}}
.sec-dark{background:#0a0a0a;color:#fff}
.sec-tint{background:#fafafa;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}
h2.display{margin-top:24px;font-size:clamp(30px,4vw,48px);line-height:1.15;font-weight:500;color:#0a0a0a}
.sec-dark h2.display{color:#fff}
.lead2{margin-top:24px;line-height:1.75;color:#525252;max-width:640px}
.sec-dark .lead2{color:#a3a3a3}

/* ── about ── */
.about{display:grid;gap:56px;align-items:center}
@media(min-width:1024px){.about{grid-template-columns:1fr 1fr;gap:80px}}
.about-media{position:relative}
.about-media .main{width:100%;aspect-ratio:4/3;object-fit:cover}
.about-media .sub{display:none;position:absolute;bottom:-40px;left:-40px;width:50%;border:8px solid #fff;box-shadow:0 24px 48px rgba(0,0,0,.25)}
.about-media::after{content:"";position:absolute;top:-16px;right:-16px;width:100%;height:100%;border:1px solid #d4d4d4;z-index:-1}
@media(min-width:640px){.about-media .sub{display:block}}
.linkline{display:inline-flex;align-items:center;gap:8px;margin-top:36px;font-size:13px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:#0a0a0a}
.linkline svg{transition:transform .25s}
.linkline:hover svg{transform:translateX(5px)}
.linkline-u{display:block;height:1px;width:150px;background:#0a0a0a;margin-top:8px}

/* ── services grid (home) ── */
.svc-head{display:flex;flex-direction:column;gap:24px;margin-bottom:64px}
@media(min-width:768px){.svc-head{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.svc-grid{display:grid;gap:1px;background:rgba(255,255,255,.1);overflow:hidden}
@media(min-width:640px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.svc-grid{grid-template-columns:repeat(4,1fr)}}
.svc-card{display:flex;flex-direction:column;background:#0a0a0a;padding:28px;transition:background .3s;height:100%}
.svc-card:hover{background:#171717}
.svc-card svg{color:#a3a3a3;transition:color .3s}
.svc-card:hover svg{color:#fff}
.svc-card h3{margin-top:20px;font-size:15px;font-weight:600;line-height:1.4;letter-spacing:.02em}
.svc-card p{margin-top:12px;font-size:14px;line-height:1.65;color:#a3a3a3;flex:1}
.svc-card .more{margin-top:20px;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:#737373;transition:color .3s}
.svc-card:hover .more{color:#fff}
.svc-card .more svg{width:12px;height:12px;color:inherit}

/* ── why us ── */
.why-grid{display:grid;gap:40px;margin-top:64px}
@media(min-width:640px){.why-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.why-grid{grid-template-columns:repeat(4,1fr)}}
.why{border-top:2px solid #0a0a0a;padding-top:24px}
.why .n{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:30px;color:#d4d4d4;transition:color .3s}
.why:hover .n{color:#0a0a0a}
.why h3{margin-top:16px;font-size:18px;font-weight:600;color:#0a0a0a}
.why p{margin-top:12px;font-size:14px;line-height:1.65;color:#525252}

/* ── area band (home) ── */
.area-band{display:grid;gap:48px;align-items:center}
@media(min-width:1024px){.area-band{grid-template-columns:1.2fr 1fr 1fr;gap:32px}}
.area-card{display:block;border:1px solid #e5e5e5;background:#fff;padding:32px;transition:transform .3s,border-color .3s,box-shadow .3s;height:100%}
.area-card:hover{transform:translateY(-4px);border-color:#0a0a0a;box-shadow:0 20px 40px rgba(0,0,0,.12)}
.area-card .st{font-size:11px;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:#a3a3a3}
.area-card h3{display:flex;align-items:center;justify-content:space-between;margin-top:12px;
  font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:30px;font-weight:500;color:#0a0a0a}
.area-card h3 svg{color:#d4d4d4;transition:.3s}
.area-card:hover h3 svg{color:#0a0a0a;transform:translateX(4px)}
.area-card p{margin-top:12px;font-size:14px;line-height:1.65;color:#525252}

/* ── CTA ── */
.cta-sec{text-align:center}
.cta-sec h2{max-width:760px;margin-left:auto;margin-right:auto}
.cta-sec p{max-width:560px;margin:24px auto 0;line-height:1.75;color:#525252}
.cta-sec .btns{margin-top:40px;display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.eyebrow-c{justify-content:center}
.eyebrow-c::after{content:"";width:36px;height:1px;background:currentColor;opacity:.45}

/* ── page hero (inner pages) ── */
.pg-hero{background:#0a0a0a;color:#fff;padding:160px 0 80px}
@media(min-width:1024px){.pg-hero{padding:192px 0 96px}}
.pg-hero h1{margin-top:28px;max-width:820px;font-size:clamp(38px,5vw,60px);line-height:1.08;font-weight:500}
.pg-hero p{margin-top:28px;max-width:640px;line-height:1.75;color:#d4d4d4}

/* ── feature rows (services page) ── */
.feat{display:grid;gap:40px;align-items:center;margin-bottom:96px}
.feat:last-child{margin-bottom:0}
@media(min-width:1024px){
  .feat{grid-template-columns:1fr 1fr;gap:64px}
  .feat.flip .feat-media{order:2}
}
.feat-media{position:relative}
.feat-media img{width:100%;aspect-ratio:3/2;object-fit:cover}
.feat-media::after{content:"";position:absolute;top:-16px;width:100%;height:100%;border:1px solid #d4d4d4;z-index:-1}
.feat:not(.flip) .feat-media::after{left:-16px}
.feat.flip .feat-media::after{right:-16px}
.feat .n{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:48px;color:#e5e5e5}
.feat h2{margin-top:16px;font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:clamp(28px,3.5vw,38px);font-weight:500;color:#0a0a0a}
.feat .b{margin-top:16px;line-height:1.75;color:#525252}
.feat ul{margin-top:24px;display:grid;gap:12px}
@media(min-width:640px){.feat ul{grid-template-columns:1fr 1fr}}
.feat li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#404040}
.feat li svg{flex-shrink:0;margin-top:2px}

/* ── compact service cards ── */
.mini-grid{display:grid;gap:24px;margin-top:48px}
@media(min-width:640px){.mini-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.mini-grid{grid-template-columns:repeat(4,1fr)}}
.mini{border:1px solid #e5e5e5;background:#fff;padding:28px;transition:transform .3s,border-color .3s,box-shadow .3s;height:100%}
.mini:hover{transform:translateY(-4px);border-color:#0a0a0a;box-shadow:0 16px 32px rgba(0,0,0,.1)}
.mini h3{margin-top:20px;font-size:15px;font-weight:600;color:#0a0a0a}
.mini p{margin-top:12px;font-size:14px;line-height:1.65;color:#525252}

/* ── who we serve ── */
.serve-grid{display:grid;gap:1px;background:rgba(255,255,255,.1);margin-top:64px}
@media(min-width:1024px){.serve-grid{grid-template-columns:repeat(3,1fr)}}
.serve{background:#0a0a0a;padding:36px;transition:background .3s;height:100%}
.serve:hover{background:#171717}
.serve .n{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:30px;color:#525252}
.serve h3{margin-top:20px;font-size:18px;font-weight:600}
.serve p{margin-top:12px;font-size:14px;line-height:1.65;color:#a3a3a3}

/* ── service area (services page) ── */
.areas-grid{display:grid;gap:32px;margin-top:56px}
@media(min-width:1024px){.areas-grid{grid-template-columns:1fr 1fr}}
.area-big{border:1px solid #e5e5e5;background:#fafafa;padding:40px;transition:border-color .3s}
.area-big:hover{border-color:#0a0a0a}
@media(min-width:1024px){.area-big{padding:48px}}
.area-big h3{margin-top:20px;font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:clamp(26px,3vw,34px);font-weight:500;color:#0a0a0a}
.area-big h3 em{color:#737373}
.area-big p{margin-top:12px;font-size:14px;line-height:1.65;color:#525252}
.tags{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px}
.tags span{border:1px solid #d4d4d4;background:#fff;padding:6px 14px;font-size:12px;font-weight:500;letter-spacing:.03em;color:#404040}
.hours-band{margin-top:48px;display:flex;flex-direction:column;gap:24px;align-items:center;justify-content:space-between;
  background:#0a0a0a;color:#fff;padding:32px}
@media(min-width:640px){.hours-band{flex-direction:row;padding:32px 48px}}
.hours-band .l{display:flex;align-items:center;gap:16px}
.hours-band .t{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:22px}
.hours-band .s{font-size:14px;color:#a3a3a3;margin-top:4px}

/* ── contact ── */
.contact-grid{display:grid;gap:64px}
@media(min-width:1024px){.contact-grid{grid-template-columns:2fr 3fr;gap:64px}}
.cinfo{display:flex;flex-direction:column;gap:32px;margin-top:40px}
.cinfo .row{display:flex;align-items:flex-start;gap:16px}
.cinfo .ic{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #0a0a0a}
.cinfo .k{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#737373}
.cinfo .v{margin-top:4px;color:#0a0a0a}
.cinfo .s{font-size:14px;color:#737373}
.vendor-note{margin-top:48px;border:1px solid #e5e5e5;background:#fafafa;padding:28px}
.vendor-note p{margin-top:12px;font-size:14px;line-height:1.7;color:#404040}
.form-card{border:1px solid #e5e5e5;background:#fff;padding:32px;box-shadow:0 24px 60px -30px rgba(0,0,0,.25)}
@media(min-width:640px){.form-card{padding:40px}}
.form-card h2{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;font-size:clamp(24px,3vw,32px);font-weight:500;color:#0a0a0a}
.form-card .sub{margin-top:8px;font-size:14px;color:#737373}
.f-grid{margin-top:32px;display:grid;gap:20px}
@media(min-width:640px){.f-grid{grid-template-columns:1fr 1fr}.f-full{grid-column:1/-1}}
label{display:block;margin-bottom:6px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#404040}
input,select,textarea{width:100%;border:1px solid #d4d4d4;background:#fff;padding:12px 16px;font-size:14px;
  font-family:inherit;color:#171717;outline:none;transition:border-color .25s;border-radius:0;appearance:none;-webkit-appearance:none}
select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23737373' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center}
input:focus,select:focus,textarea:focus{border-color:#0a0a0a}
textarea{resize:vertical;min-height:120px}
.fine{margin-top:20px;font-size:12px;line-height:1.6;color:#a3a3a3}
.sent-note{display:none;margin-top:16px;font-size:14px;color:#404040}

/* ── footer ── */
footer{background:#0a0a0a;color:#a3a3a3}
.ft{display:grid;gap:48px;padding:64px 0}
@media(min-width:1024px){.ft{grid-template-columns:4fr 2fr 3fr 3fr;gap:48px;padding:80px 0}}
.ft img{height:56px;width:auto}
.ft .blurb{margin-top:24px;max-width:340px;font-size:14px;line-height:1.7}
.ft h4{font-size:11px;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:#fff}
.ft ul{margin-top:20px;display:grid;gap:12px;font-size:14px}
.ft a{transition:color .25s}
.ft a:hover{color:#fff}
.ft .crow{display:flex;align-items:flex-start;gap:12px;font-size:14px}
.ft .crow svg{flex-shrink:0;margin-top:2px;color:#525252}
.ft .crow .s{display:block;color:#525252}
.ft-cta{display:inline-block;margin-top:28px;border:1px solid #404040;padding:11px 24px;font-size:11px;
  font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#fff;transition:.3s}
.ft-cta:hover{border-color:#fff;background:#fff;color:#0a0a0a}
.ft-bot{display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:space-between;
  border-top:1px solid rgba(255,255,255,.1);padding:28px 0;font-size:12px;color:#525252}
@media(min-width:640px){.ft-bot{flex-direction:row}}
.ft-bot .fam{letter-spacing:.2em;text-transform:uppercase}

/* ── reveal animation ── */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .hero-bg img,.marq-in{animation:none}
}


/* ── updates: text-only Who We Are, dual service photos, font accents ── */
.about-text{max-width:820px}
.about-text h2{max-width:640px}
.accent{color:#d4d4d4;font-style:normal}

/* dual photos inside a feature row (painting & carpet cleaning) */

/* keep portrait "after" shots tidy next to the wide before/after */
.feat-media img{aspect-ratio:3/2}


/* ── Our Work gallery ── */
.work-grid{display:grid;gap:16px;margin-top:48px}
@media(min-width:640px){.work-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.work-grid{grid-template-columns:repeat(3,1fr)}}
.work-tile{overflow:hidden;background:#111}
.work-tile img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;
  transition:transform .7s cubic-bezier(.22,1,.36,1)}
.work-tile:hover img{transform:scale(1.05)}
.work-tile.wide{grid-column:1/-1}
.work-tile.wide img{aspect-ratio:auto}
.work-cta{display:flex;flex-direction:column;justify-content:center;gap:14px;
  background:#0a0a0a;color:#fff;padding:32px;min-height:100%}
.work-cta .t{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;letter-spacing:-.02em;
  font-size:clamp(20px,2.2vw,26px);font-weight:500;line-height:1.25}
.work-cta .s{font-size:14px;color:#a3a3a3}
.work-cta a{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;
  font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#fff}
.work-cta a svg{transition:transform .25s}
.work-cta a:hover svg{transform:translateX(4px)}

@media(min-width:1024px){.work-tile.wide{grid-column:span 2}}
.feat-media img.natural{aspect-ratio:auto}


/* ── v4: image-free service rows ── */
.svc-row{display:grid;gap:20px;padding:44px 0;border-top:1px solid #e5e5e5}
.svc-row:last-child{border-bottom:1px solid #e5e5e5}
@media(min-width:1024px){.svc-row{grid-template-columns:150px 1fr;gap:48px;padding:56px 0}}
.svc-num span{font-family:'Manrope','Inter',ui-sans-serif,sans-serif;letter-spacing:-.02em;
  font-size:clamp(40px,5vw,56px);font-weight:600;color:#e0e0e0;line-height:1;transition:color .3s}
.svc-row:hover .svc-num span{color:#0a0a0a}
.svc-body h2{margin-top:0;font-size:clamp(24px,3vw,32px);font-weight:500;color:#0a0a0a}
.svc-body .b{margin-top:10px;line-height:1.75;color:#525252;max-width:560px}
.svc-body ul{margin-top:22px;display:grid;gap:12px}
@media(min-width:640px){.svc-body ul{grid-template-columns:1fr 1fr;max-width:720px}}
.svc-body li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#404040}
.svc-body li svg{flex-shrink:0;margin-top:2px}


/* ── mobile layout hardening ── */
@media(max-width:1023px){
  /* decorative offset frames only exist on desktop — kill any chance of bleed */
  .feat-media::after,.about-media::after{display:none}
}
@media(max-width:640px){
  .wrap{padding-left:28px;padding-right:28px}
  .ft{padding:56px 0;gap:44px}
  .ft img{height:48px}
  .ft .blurb{margin-top:20px}
  .ft-bot{padding:26px 0;align-items:flex-start;gap:8px}
  /* hero stats: keep labels from crowding small screens */
  .stat{padding:16px 18px;gap:10px}
  .stat span{font-size:11px;letter-spacing:.1em}
  /* let long words/emails never force a scroll */
  p,li,a,span,h1,h2,h3,h4{overflow-wrap:break-word}
}
@media(max-width:380px){
  .wrap{padding-left:22px;padding-right:22px}
}


/* ── footer breathing room (all screens) ── */
@media(min-width:641px){
  .wrap{padding-left:32px;padding-right:32px}
}
@media(min-width:1024px){
  .wrap{padding-left:40px;padding-right:40px}
}


/* ══════════════ Preloader ══════════════ */
#pl{position:fixed;inset:0;z-index:9999;background:#0a0a0a;
  display:flex;align-items:center;justify-content:center;
  transition:opacity .7s ease,visibility .7s}
#pl.done{opacity:0;visibility:hidden;pointer-events:none}
#pl.lift{transform:translateY(-100%);transition:transform .8s cubic-bezier(.7,0,.3,1),visibility 0s .8s;opacity:1;visibility:hidden}
.pl-inner{display:flex;flex-direction:column;align-items:center;gap:26px;padding:24px}
.pl-mono{width:clamp(120px,22vw,180px)}
.pl-mono svg{width:100%;height:auto;display:block}
.pl-mono path{stroke:#fff;stroke-width:6;fill:#fff;fill-opacity:0;
  stroke-dasharray:1400;stroke-dashoffset:1400;
  animation:pl-draw 1.6s cubic-bezier(.6,0,.3,1) forwards,pl-fill .6s ease 1.3s forwards}
.pl-mono path:nth-child(2){animation-delay:.15s,1.4s}
.pl-mono path:nth-child(3){animation-delay:.3s,1.5s}
.pl-mono path:nth-child(4){animation-delay:.45s,1.6s}
@keyframes pl-draw{to{stroke-dashoffset:0}}
@keyframes pl-fill{to{fill-opacity:1}}
.pl-word{width:clamp(220px,44vw,340px);height:auto;
  opacity:0;transform:translateY(14px);
  animation:pl-rise .8s cubic-bezier(.22,1,.36,1) 1.1s forwards}
@keyframes pl-rise{to{opacity:1;transform:translateY(0)}}
.pl-bar{width:clamp(140px,26vw,220px);height:2px;background:rgba(255,255,255,.15);
  overflow:hidden;position:relative}
.pl-bar span{position:absolute;left:0;top:0;bottom:0;width:0;background:#fff;
  animation:pl-load 1.8s cubic-bezier(.65,0,.35,1) .2s forwards}
@keyframes pl-load{to{width:100%}}
/* while preloader is up, keep page from scrolling/interacting */
body.pl-lock{overflow:hidden}
@media(prefers-reduced-motion:reduce){
  .pl-mono path{animation:pl-fill-instant 0s forwards;stroke-dashoffset:0;fill-opacity:1}
  .pl-word{animation:none;opacity:1;transform:none}
  .pl-bar span{animation:none;width:100%}
}
.pl-skip #pl{display:none!important}
.pl-skip .rv{opacity:1!important;transform:none!important;transition:none!important}
.h1-sub{display:block;margin-top:18px;font-size:clamp(20px,2.6vw,30px);font-weight:500;letter-spacing:-.01em;line-height:1.25;color:#d4d4d4}
.h1-sub em{font-style:normal;color:#a3a3a3}
.page-h1-sub{color:#a3a3a3}
.hd-contact{display:none;align-items:center}
.hd-contact a{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;letter-spacing:.02em;color:currentColor;text-decoration:none;opacity:.85;transition:opacity .2s}
.hd-contact a:hover{opacity:1}
@media(min-width:900px){.hd-contact{display:flex;margin-right:22px}}
.ft-mail{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25)}
.ft-mail:hover{border-bottom-color:currentColor}
.ft-contact-line{width:100%;font-size:12.5px;opacity:.65;margin-bottom:14px}
.ft-contact-line a{color:inherit}
.cinfo-mail{color:#0a0a0a;text-decoration:none;border-bottom:1px solid #d4d4d4}
.cinfo-mail:hover{border-bottom-color:#0a0a0a}
