/* ===== Kitengela Terrazzo — site styles ===== */

/* ---------- Header ---------- */
.kt-header{background:#F6F3EE;border-bottom:1px solid #DDD6CB;padding:14px 24px;position:sticky;top:0;z-index:50}
body.admin-bar .kt-header{top:32px}
@media (max-width:782px){body.admin-bar .kt-header{top:46px}}
.kt-header__row{max-width:1200px;margin:0 auto;gap:28px;align-items:center}
.kt-logo{display:block;line-height:0;flex-shrink:0}
.kt-logo img{height:44px;width:auto}
.kt-nav{font-size:15px;font-weight:500;gap:32px}
.kt-nav a{color:#272F32;text-decoration:none}
.kt-nav a:hover,.kt-nav .current-menu-item>a{color:#D62A1C}
.kt-header__cta .wp-block-button__link{padding:12px 22px;font-size:15px;white-space:nowrap}
@media (max-width:900px){.kt-header__cta{display:none}.kt-logo img{height:36px}}

/* ---------- Footer ---------- */
.wp-site-blocks>footer.wp-block-template-part{margin-top:0}
.kt-footer{background:#272F32;color:#CFC8BF;padding:72px 24px 28px;font-size:15px}
.kt-footer a{color:#FFFFFF;text-decoration:none}
.kt-footer a:hover{color:#FF8A7F}
.kt-footer__cols{max-width:1200px;margin:0 auto;gap:48px}
.kt-footer__title{font-family:var(--wp--preset--font-family--manrope);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#FFFFFF;margin:0 0 18px}
.kt-footer__links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.kt-footer p{margin:0 0 10px;line-height:1.6}
.kt-footer .kt-footer__about{margin-top:18px;max-width:320px}
.kt-logo--footer img{height:40px}
.kt-footer__bottom{max-width:1200px;margin:56px auto 0;padding-top:22px;border-top:1px solid #3D474B;font-size:13px;color:#A39A90}
.kt-footer__bottom p{margin:0}

/* ---------- Home: shared ---------- */
.kt-home>*{margin-block-start:0}
.kt-eyebrow{font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#D62A1C;margin:0}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:#272F32;border:1.5px solid #272F32}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:#272F32;color:#FFFFFF}

/* ---------- Home: hero ---------- */
.kt-hero{max-width:1200px;margin:0 auto;padding:96px 24px;gap:64px;align-items:center}
.kt-hero__title{margin:18px 0 0}
.kt-hero .kt-hero__lead{font-size:19px;line-height:1.6;color:#4F4A45;max-width:520px;margin:22px 0 0}
.kt-hero .wp-block-buttons{margin-top:32px;gap:12px}
.kt-hero .kt-hero__note{font-size:14px;color:#5E5852;margin-top:18px}
.kt-hero__img{margin:0}
.kt-hero__img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
@media (max-width:781px){.kt-hero{padding:48px 20px;gap:36px}.kt-hero__img img{aspect-ratio:4/3}}

/* ---------- Home: sections (shared) ---------- */
.kt-section{padding:112px 24px}
.kt-section-head{max-width:1200px;margin:0 auto 56px;gap:32px;align-items:flex-end}
.kt-section-head h2{margin:14px 0 0;max-width:640px}
.kt-section-head p{margin:0}
.kt-more{font-weight:600;text-decoration:none;border-bottom:1.5px solid #D62A1C;padding-bottom:4px}
@media (max-width:781px){.kt-section{padding:64px 20px}.kt-section-head{margin-bottom:32px}}

/* ---------- Home: trust strip ---------- */
.kt-trust{background:#FFFFFF;border-top:1px solid #DDD6CB;border-bottom:1px solid #DDD6CB;padding:0 24px}
.kt-trust__row{max-width:1200px;margin:0 auto;gap:0}
.kt-trust__row>.wp-block-column{padding:30px 24px;border-right:1px solid #E8E2D8}
.kt-trust__row>.wp-block-column:first-child{padding-left:0}
.kt-trust__row>.wp-block-column:last-child{border-right:0}
.kt-trust .kt-trust__big{font-family:var(--wp--preset--font-family--jost);font-size:30px;font-weight:500;line-height:1.15;margin:0}
.kt-trust .kt-trust__label{font-size:14px;color:#5E5852;margin:6px 0 0}
@media (max-width:781px){.kt-trust__row>.wp-block-column{border-right:0;border-bottom:1px solid #E8E2D8;padding:20px 0}}

/* ---------- Home: service cards ---------- */
.kt-cards{max-width:1200px;margin:0 auto;gap:24px}
.kt-card{background:#FFFFFF;border:1px solid #E3DDD3;display:flex;flex-direction:column}
.kt-card>*{margin:0}
.kt-card>*:not(figure){padding:0 24px}
.kt-card figure img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.kt-card .kt-card__num{font-family:var(--wp--preset--font-family--jost);font-size:13px;letter-spacing:.1em;color:#D62A1C;margin-top:24px}
.kt-card h3{font-size:22px;margin-top:8px}
.kt-card p{font-size:15px;line-height:1.6;color:#5E5852;margin-top:10px}
.kt-card .kt-card__link{margin-top:auto;padding-top:14px;padding-bottom:26px;font-weight:600}

/* ---------- Home: featured projects ---------- */
.kt-section--white{background:#FFFFFF}
.kt-section-head .kt-intro{max-width:480px;font-size:17px;line-height:1.7;color:#4F4A45}
.kt-projects{max-width:1200px;margin:0 auto}
.kt-projects .wp-block-post-template{gap:24px}
.kt-projects .wp-block-post-featured-image{margin:0}
.kt-projects .wp-block-post-featured-image img{display:block}
.kt-projects .wp-block-post-title{font-size:22px;margin:16px 0 0}
.kt-projects .wp-block-post-title a{color:#272F32;text-decoration:none}
.kt-projects .wp-block-post-title a:hover{color:#D62A1C}
.kt-projects .wp-block-post-excerpt{font-size:15px;color:#5E5852;margin-top:6px}
.kt-projects .kt-empty{padding:48px 24px;border:1px dashed #C9BBA8;text-align:center;color:#5E5852;margin:0}

/* ---------- Home: how we work ---------- */
.kt-steps{max-width:1200px;margin:0 auto;gap:0;border-top:1.5px solid #272F32}
.kt-steps>.wp-block-column{padding:32px 32px 0;border-left:1px solid #DDD6CB}
.kt-steps>.wp-block-column:first-child{padding-left:0;border-left:0}
.kt-steps .kt-step__num{font-family:var(--wp--preset--font-family--jost);font-size:44px;font-weight:300;line-height:1;color:#D62A1C;margin:0}
.kt-steps h3{font-size:22px;margin:14px 0 0}
.kt-steps p{font-size:15px;line-height:1.6;color:#5E5852;margin:10px 0 0}
@media (max-width:781px){.kt-steps>.wp-block-column{border-left:0;padding:24px 0;border-bottom:1px solid #DDD6CB}}

/* ---------- Home: supplies (dark) ---------- */
.kt-section--dark{background:#272F32;color:#CFC8BF}
.kt-section--dark h2,.kt-section--dark h3{color:#FFFFFF}
.kt-section--dark .kt-eyebrow{color:#FF8A7F}
.kt-section--dark .kt-intro{color:#CFC8BF;margin-top:16px}
.kt-section--dark .kt-more{color:#FFFFFF;border-color:#FF8A7F}
.kt-card--dark{background:#2F383C;border-color:#3D474B}
.kt-card--dark h3{margin-top:22px}
.kt-card--dark p{color:#CFC8BF}
.kt-card .kt-btn-light{margin-top:auto;padding:18px 24px 24px}
.kt-btn-light .wp-block-button{width:100%}
.kt-btn-light .wp-block-button__link{width:100%;background:transparent;color:#FFFFFF;border:1.5px solid #FF8A7F;padding:12px 16px;font-size:14px}
.kt-btn-light .wp-block-button__link:hover{background:#FF8A7F;color:#272F32}

/* ---------- Home: contact ---------- */
.kt-contact{max-width:1200px;margin:0 auto;background:#FFFFFF;border:1px solid #E3DDD3;gap:0}
.kt-contact>.wp-block-column:first-child{padding:64px}
.kt-contact h2{margin:14px 0 0}
.kt-contact p{font-size:17px;line-height:1.7;color:#4F4A45;margin:18px 0 0}
.kt-contact .wp-block-buttons{margin-top:28px;gap:12px}
.kt-contact>.wp-block-column:last-child{line-height:0}
.kt-map{display:block;width:100%;height:100%;min-height:440px;border:0}
@media (max-width:781px){.kt-contact>.wp-block-column:first-child{padding:32px 24px}.kt-map{min-height:300px}}

/* ---------- Contact: shop line ---------- */
.kt-contact .kt-visit{font-size:15px;line-height:1.7;color:#272F32;margin-top:22px;padding-top:18px;border-top:1px solid #E8E2D8}

/* ---------- Contact page ---------- */
.kt-ct{padding-bottom:4rem}
.kt-ct-hero{padding:4rem 0 2.5rem}
.kt-ct-eyebrow{color:#D62A1C;font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;margin:0 0 .5rem}
.kt-ct-hero h1{margin:0 0 1rem}
.kt-ct-lead{max-width:640px;font-size:1.1rem;margin:0}
.kt-ct-grid{gap:3rem}
.kt-ct-info h2,.kt-ct-form h2{font-size:1.25rem;margin:1.75rem 0 .5rem}
.kt-ct-info h2:first-child,.kt-ct-form h2:first-child{margin-top:0}
.kt-ct-info a{color:#D62A1C}
.kt-ct-muted{color:#6b6b6b;font-size:.9rem}
.kt-ct-btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}
.kt-ct-btn{display:inline-block;padding:.75rem 1.4rem;border-radius:2px;background:#D62A1C;color:#fff!important;text-decoration:none;font-weight:600;white-space:nowrap}
.kt-ct-btn:hover{background:#A81F14}
.kt-ct-btn--ghost{background:transparent;color:#272F32!important;border:2px solid #272F32}
.kt-ct-btn--ghost:hover{background:#272F32;color:#fff!important}
.kt-ct-form{background:#fff;padding:2rem;border-radius:2px;box-shadow:0 1px 3px rgba(39,47,50,.08),0 8px 24px rgba(39,47,50,.06)}
.kt-ct-form .ff-btn-submit{background:#D62A1C!important;border-color:#D62A1C!important;border-radius:2px!important;padding:.8rem 1.6rem!important}
.kt-ct-form .ff-btn-submit:hover{background:#A81F14!important}
.kt-ct-map{margin-top:3.5rem}
.kt-ct-map iframe{display:block;width:100%;height:420px;border:0;border-radius:2px}
@media (max-width:781px){.kt-ct-hero{padding:2.5rem 0 1.5rem}.kt-ct-form{padding:1.25rem}.kt-ct-map iframe{height:320px}}

/* ---------- Services page ---------- */
.kt-sv{padding-bottom:4rem}
.kt-sv-hero{padding:4rem 0 2rem}
.kt-sv-hero h1{margin:0 0 1rem}
.kt-sv-jump{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}
.kt-sv-jump a{padding:.45rem .9rem;border:1px solid rgba(39,47,50,.2);border-radius:999px;color:#272F32;text-decoration:none;font-size:.9rem}
.kt-sv-jump a:hover{border-color:#D62A1C;color:#D62A1C}
.kt-sv-row{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;padding:3.5rem 0;border-top:1px solid rgba(39,47,50,.1);scroll-margin-top:90px}
.kt-sv-row--flip .kt-sv-media{order:2}
.kt-sv-media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:2px;background:#e9e4dc}
.kt-sv-num{color:#D62A1C;font-weight:600;letter-spacing:.12em;font-size:.8rem;margin:0 0 .5rem}
.kt-sv-body h2{margin:0 0 .4rem}
.kt-sv-new{display:inline-block;vertical-align:middle;margin-left:.5rem;padding:.15rem .55rem;background:#D62A1C;color:#fff;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:2px}
.kt-sv-tag{font-size:1.15rem;color:#272F32;font-weight:500;margin:0 0 1rem}
.kt-sv-body ul{padding-left:1.1rem;margin:0 0 1rem}
.kt-sv-body li{margin:.3rem 0}
.kt-sv-body li::marker{color:#D62A1C}
.kt-sv-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;margin-top:2rem;padding:2.5rem;background:#272F32;color:#fff;border-radius:2px}
.kt-sv-cta h2{color:#fff;margin:0 0 .5rem}
.kt-sv-cta p{margin:0;max-width:560px}
.kt-sv-btn-light{background:#fff;color:#272F32!important}
.kt-sv-btn-light:hover{background:#F6F3EE}
@media (max-width:781px){.kt-sv-hero{padding:2.5rem 0 1rem}.kt-sv-row{grid-template-columns:1fr;gap:1.5rem;padding:2.5rem 0}.kt-sv-row--flip .kt-sv-media{order:0}.kt-sv-cta{padding:1.75rem}}

/* ---------- Projects page ---------- */
.kt-pj{padding-bottom:4rem}
.kt-pj-query{margin-top:1rem}
.kt-pj-grid{gap:2rem!important}
.kt-pj-grid .wp-block-post-featured-image{margin:0 0 .9rem}
.kt-pj-grid .wp-block-post-featured-image img{border-radius:2px;transition:opacity .2s}
.kt-pj-grid .wp-block-post-featured-image a:hover img{opacity:.88}
.kt-pj-grid .wp-block-post-title{font-size:1.2rem;margin:0 0 .4rem}
.kt-pj-grid .wp-block-post-title a{color:#272F32;text-decoration:none}
.kt-pj-grid .wp-block-post-title a:hover{color:#D62A1C}
.kt-pj-grid .wp-block-post-excerpt{font-size:.95rem;color:#5a5a5a}
.kt-pj-grid .wp-block-post-excerpt__more-link{display:none}
.kt-pj-empty{padding:2.5rem;background:#fff;border-radius:2px;max-width:none}
.kt-pj .wp-block-query-pagination{margin-top:2.5rem}
.kt-pj .kt-sv-cta{margin-top:4rem}

/* ---------- About page ---------- */
.kt-ab{padding-bottom:4rem}
.kt-ab-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(39,47,50,.12);border:1px solid rgba(39,47,50,.12);border-radius:2px;margin:1rem 0 4rem}
.kt-ab-stats div{background:#fff;padding:1.75rem 1.5rem}
.kt-ab-stats strong{display:block;font-family:var(--wp--preset--font-family--jost,inherit);font-size:2.4rem;line-height:1;color:#D62A1C;margin-bottom:.5rem}
.kt-ab-stats span{font-size:.95rem;color:#5a5a5a}
.kt-ab-chain{padding:3.5rem;background:#272F32;color:#fff;border-radius:2px}
.kt-ab-chain h2,.kt-ab-chain h3{color:#fff}
.kt-ab-chain__intro{max-width:640px;margin-bottom:2.5rem}
.kt-ab-chain__intro h2{margin:0 0 .75rem}
.kt-ab-chain__intro p{color:rgba(255,255,255,.8);margin:0}
.kt-ab-chain .kt-ct-eyebrow{color:#FF3D2E}
.kt-ab-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.kt-ab-steps li{border-top:2px solid #FF3D2E;padding-top:1.25rem}
.kt-ab-steps__n{font-size:.8rem;letter-spacing:.12em;color:#FF3D2E;font-weight:600}
.kt-ab-steps h3{font-size:1.3rem;margin:.4rem 0 .5rem}
.kt-ab-steps p{color:rgba(255,255,255,.75);font-size:.95rem;margin:0}
.kt-ab-values{margin-top:4.5rem}
.kt-ab-values h2{margin:0 0 2rem}
.kt-ab-values__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.kt-ab-card{background:#fff;padding:2rem;border-radius:2px;border-top:3px solid #D62A1C}
.kt-ab-card h3{font-size:1.25rem;margin:0 0 .6rem}
.kt-ab-card p{margin:0;color:#4a4a4a}
.kt-ab .kt-sv-cta{margin-top:4.5rem}
@media (max-width:900px){.kt-ab-stats{grid-template-columns:repeat(2,1fr)}.kt-ab-steps{grid-template-columns:repeat(2,1fr)}.kt-ab-values__grid{grid-template-columns:1fr}}
@media (max-width:600px){.kt-ab-chain{padding:2rem 1.5rem}.kt-ab-steps{grid-template-columns:1fr}}

/* ---------- Padding inside width for boxed sections ---------- */
.kt-sv-cta,.kt-ab-chain,.kt-ab-stats,.kt-ct-form,.kt-pj-empty,.kt-ab-card{box-sizing:border-box}

/* ---------- Home service cards: even photo crop ---------- */
.kt-card .wp-block-image{margin:0}
.kt-card .wp-block-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

/* ---------- Products page ---------- */
.kt-pr{padding-bottom:4rem}
.kt-pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;margin-top:1rem}
.kt-pr-card{display:flex;flex-direction:column;background:#fff;border-radius:2px;overflow:hidden;scroll-margin-top:90px}
.kt-pr-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#e9e4dc}
.kt-pr-card__body{display:flex;flex-direction:column;flex:1;padding:1.5rem}
.kt-pr-card h2{font-size:1.3rem;margin:0 0 .4rem}
.kt-pr-card .kt-ct-muted{margin:0 0 1rem}
.kt-pr-items{list-style:none;margin:0 0 1.5rem;padding:0;flex:1}
.kt-pr-items li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid rgba(39,47,50,.08);font-size:.95rem}
.kt-pr-items em{font-style:normal;color:#6b6b6b}
.kt-pr-items small{color:#6b6b6b;white-space:nowrap}
.kt-pr-card .kt-ct-btn{align-self:flex-start}
.kt-pr-how{margin-top:4.5rem;padding:3rem;background:#272F32;color:#fff;border-radius:2px;box-sizing:border-box}
.kt-pr-how h2,.kt-pr-how h3{color:#fff}
.kt-pr-how h2{margin:0 0 2rem}
.kt-pr-how .kt-ab-steps p{color:rgba(255,255,255,.75)}
.kt-pr-tooluxe{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:3rem;padding:2rem 2.5rem;border:2px solid #272F32;border-radius:2px;box-sizing:border-box}
.kt-pr-tooluxe h2{margin:0 0 .4rem;font-size:1.5rem}
.kt-pr-tooluxe p{margin:0}
.kt-pr-soon{padding:.6rem 1rem;background:#F6F3EE;border:1px dashed rgba(39,47,50,.35);border-radius:2px;font-size:.9rem;color:#272F32}
.kt-pr .kt-sv-cta{margin-top:3rem}
@media (max-width:1000px){.kt-pr-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.kt-pr-grid{grid-template-columns:1fr}.kt-pr-how{padding:2rem 1.5rem}.kt-pr-tooluxe{padding:1.5rem}}
