/* Services hub — Kitchor "Services 01" (Phase 2, 2026-10-16). Loaded on the service archive only. */
.ksv{--gold:#daa14c;--ink:#30373e;--text:#535353;--dark:#14171d;background:#fff;color:var(--text)}
.ksv *{box-sizing:border-box}
html body .ksv h1,html body .ksv h2,html body .ksv h3,html body .ksv p,html body .ksv a,html body .ksv strong,html body .ksv small{font-family:"Plus Jakarta Sans",Arial,sans-serif!important}
.ksv-wrap{width:calc(100% - 150px);max-width:1290px;margin:0 auto}
html body .ksv h1,html body .ksv h2{margin:0 0 20px;color:var(--ink);font-size:48px;font-weight:700!important;line-height:52px;letter-spacing:-1px!important}
.ksv p{margin:0 0 16px;font-size:16px;line-height:26px;color:var(--text)}
.ksv-kicker{display:block;margin:0 0 14px!important;color:var(--gold)!important;font-size:13px!important;font-weight:600;line-height:20px!important;letter-spacing:3.4px;text-transform:uppercase}
.ksv-btn{display:inline-flex;align-items:center;gap:12px;margin-top:10px;padding:16px 30px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase;transition:background .25s,color .25s}
.ksv-btn-dark{background:var(--ink);color:#fff}.ksv-btn-dark:hover{background:var(--gold);color:#fff}
.ksv-btn-gold{background:var(--gold);color:#fff}.ksv-btn-gold:hover{background:#fff;color:var(--ink)}
.ksv-link{display:inline-block;margin-top:26px;padding-bottom:8px;border-bottom:1px solid var(--gold);color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.ksv-link:hover{color:var(--gold)}

/* 1. Services grid — Kitchor icon cards */
.ksv-services{padding:110px 0 100px}
.ksv-center-head{max-width:780px;margin:0 auto 70px;text-align:center}
.ksv-center-head .ksv-kicker{text-align:center}
.ksv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:56px 40px}
.ksv-card{display:flex;flex-direction:column}
.ksv-card-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.ksv-icon{position:relative;flex:0 0 46px;height:46px}
.ksv-icon::before{content:"";position:absolute;top:-4px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--gold);opacity:.85;z-index:0}
.ksv-icon svg{position:relative;z-index:1;width:46px;height:46px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html body .ksv .ksv-card h2{margin:0;font-size:18px!important;line-height:24px!important;letter-spacing:-.2px!important}
.ksv-card h2 a{color:var(--ink);text-decoration:none}.ksv-card h2 a:hover{color:var(--gold)}
.ksv-card p{flex:1;font-size:14px;line-height:24px}
.ksv-more{margin-top:14px;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.ksv-more:hover{color:var(--gold)}

/* 2. Steps — Kitchor "3 easy steps" */
.ksv-steps{padding:110px 0;background:#ededed right bottom/auto 92% no-repeat}
.ksv-steps-grid{display:grid;grid-template-columns:300px 1fr;gap:50px;align-items:center}
.ksv-step-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ksv-step{position:relative;overflow:hidden;min-height:300px;padding:26px 22px 30px;background:#fff;transition:color .35s}
.ksv-step::before{content:"";position:absolute;inset:0;background:var(--step-bg) center/cover;opacity:0;transition:opacity .4s}
.ksv-step::after{content:"";position:absolute;inset:0;background:rgba(20,23,29,.72);opacity:0;transition:opacity .4s}
.ksv-step>*{position:relative;z-index:1}
.ksv-step-num{display:block;margin-bottom:24px;color:transparent;-webkit-text-stroke:1px #dcdcdc;font-size:72px;font-weight:800;line-height:1}
.ksv-step h3{margin:0 0 12px;color:var(--ink);font-size:17px;font-weight:700;line-height:22px}
.ksv-step p{margin:0;font-size:13px;line-height:22px}
.ksv-step:hover::before,.ksv-step:hover::after{opacity:1}
.ksv-step:hover h3,.ksv-step:hover p{color:#fff}
.ksv-step:hover .ksv-step-num{-webkit-text-stroke-color:var(--gold)}

/* 3. Stone selection — Kitchor accomplishments split */
.ksv-selection{display:grid;grid-template-columns:1fr 1fr;background:#f5f5f5}
.ksv-selection-media{min-height:640px;background:center/cover no-repeat}
.ksv-selection-copy{padding:100px 8% 90px}
.ksv-materials{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px;margin-top:30px}
.ksv-material{display:flex;gap:14px;color:var(--ink);text-decoration:none}
.ksv-mat-icon{display:flex;flex:0 0 58px;height:58px;align-items:center;justify-content:center;border-radius:50%;background:var(--gold)}
.ksv-mat-icon svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ksv-material strong{display:block;margin:4px 0 4px;font-size:18px;font-weight:700;color:var(--ink)}
.ksv-material small{display:block;font-size:13px;line-height:20px;color:var(--text)}
.ksv-material:hover strong{color:var(--gold)}

/* 4. Brands */
.ksv-brands{padding:70px 0;background:#fff}
.ksv-brand-row{display:grid;grid-template-columns:repeat(6,1fr);gap:30px;align-items:center}
.ksv-brand-row a{display:flex;align-items:center;justify-content:center;height:70px}
.ksv-brand-row img{max-width:100%;max-height:56px;object-fit:contain;opacity:.85;transition:opacity .25s}
.ksv-brand-row a:hover img{opacity:1}

/* 5. Sample CTA — same picture as the homepage CTA */
.ksv-cta{position:relative;padding:110px 0;background:#14171d url("/wp-content/uploads/2026/10/footer_BG_01.webp") center/cover no-repeat;text-align:center}
.ksv-cta::before{content:"";position:absolute;inset:0;background:rgba(20,23,29,.78)}
.ksv-cta>.ksv-wrap{position:relative;z-index:1}
html body .ksv .ksv-cta h2{color:#fff}
.ksv-cta p{color:#c3c7cc;max-width:620px;margin:0 auto 20px}

@media(max-width:1100px){.ksv-wrap{width:calc(100% - 48px)}.ksv-grid{grid-template-columns:repeat(2,1fr)}.ksv-steps-grid{grid-template-columns:1fr}.ksv-step-cards{grid-template-columns:repeat(2,1fr)}.ksv-selection{grid-template-columns:1fr}.ksv-selection-media{min-height:420px}.ksv-brand-row{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.ksv-wrap{width:calc(100% - 36px)}html body .ksv h1,html body .ksv h2{font-size:32px;line-height:38px}.ksv-services,.ksv-steps,.ksv-cta{padding:70px 0}.ksv-grid,.ksv-step-cards,.ksv-materials{grid-template-columns:1fr}.ksv-selection-copy{padding:60px 18px}.ksv-selection-media{min-height:300px}.ksv-brand-row{grid-template-columns:repeat(2,1fr)}.ksv-step{min-height:0}}
/* 9 services → clean 3×3 grid; centred CTA kicker */
.ksv-grid{grid-template-columns:repeat(3,1fr);gap:60px 70px}
.ksv-cta .ksv-kicker{text-align:center}
@media(max-width:1100px){.ksv-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.ksv-grid{grid-template-columns:1fr}}
/* v2: Kitchor "Services 02" picture cards */
.ksv-grid{grid-template-columns:repeat(3,1fr)!important;gap:50px 30px!important}
.ksv-card-media{display:block;overflow:hidden;aspect-ratio:4/3;background:#eee}
.ksv-card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.ksv-card:hover .ksv-card-media img{transform:scale(1.06)}
.ksv-card-body{display:flex;gap:16px;padding:26px 6px 0}
.ksv-card-body .ksv-icon{flex:0 0 44px;height:44px}
.ksv-card-body .ksv-icon svg{width:44px;height:44px}
html body .ksv .ksv-card h2{margin:2px 0 8px!important;font-size:18px!important}
.ksv-card-body p{margin:0;font-size:14px;line-height:23px}
@media(max-width:1100px){.ksv-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:680px){.ksv-grid{grid-template-columns:1fr!important}}
.ksv-step-num{font-family:"Plus Jakarta Sans",Arial,sans-serif!important}
