/*
Theme Name: KA Tempo
Theme URI: https://kavisharora.com/resources
Author: Kavish Arora
Author URI: https://kavisharora.com
Description: An independent fitness and coaching block theme with bold typography and a electric citron accent. Edit every section in the WordPress Site Editor. No plugins required.
Version: 2.2.0
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ka-tempo
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, editor-style, featured-images, wide-blocks
*/
*{box-sizing:border-box}body{margin:0}img{max-width:100%;height:auto}a{text-underline-offset:.2em}pre{overflow:auto}

:root{--ka-ink:#171914;--ka-paper:#f7f7f2;--ka-accent:#ddf847;--ka-line:#d6d8cf}
body{background:var(--ka-paper);color:var(--ka-ink)}html{scroll-behavior:smooth;scroll-padding-top:90px}a{color:inherit}.wp-site-blocks{padding:0}.wp-site-blocks>*,.wp-site-blocks>main>*{margin-block-start:0}.ka-shell{padding-inline:clamp(22px,5vw,88px)}.ka-header{padding-block:24px;background:var(--ka-paper);border-bottom:1px solid var(--ka-line)}.ka-header .wp-block-site-title{font-size:1.75rem;font-weight:900;letter-spacing:-.06em;text-transform:uppercase}.wp-block-site-title a{text-decoration:none}.ka-header .wp-block-navigation{font-size:.9rem;font-weight:700}.ka-hero{min-height:780px;min-height:min(850px,90svh);background:linear-gradient(90deg,rgba(0,0,0,.55),transparent 80%),url('assets/images/strength.png') center 42%/cover;display:flex;align-items:center;color:#fff;padding:80px clamp(22px,5vw,88px)}.ka-hero-copy{max-width:850px}.ka-hero h1{font-size:clamp(3.5rem,7.8vw,8.2rem);line-height:.92;letter-spacing:-.065em;font-weight:900;margin:26px 0}.ka-intro{max-width:440px;font-size:1.125rem;color:#e2e4df}.ka-kicker{font-size:.8rem;letter-spacing:.12em;font-weight:700}.ka-hero .ka-kicker{color:var(--ka-accent)}.ka-hero-note{font-size:.75rem;letter-spacing:.09em;margin-top:40px;color:#e1e4d9}.wp-block-button__link{background:var(--ka-accent);color:var(--ka-ink);border-radius:0;padding:17px 25px;font-size:.9rem;font-weight:750;transition:transform .2s}.wp-block-button__link:hover{transform:translateY(-2px)}.ka-strip{background:var(--ka-accent);padding:19px 22px;text-align:center}.ka-strip-text{margin:0;font-weight:850;letter-spacing:.05em;font-size:clamp(.8rem,1.6vw,1.15rem)}.ka-section{padding-block:100px;border-top:0}.ka-section h2{font-size:clamp(2.6rem,4.8vw,5rem);line-height:.99;letter-spacing:-.055em;margin:22px 0 38px;font-weight:900}.ka-section h3{letter-spacing:-.035em;line-height:1.1;font-size:1.7rem}.ka-section p{line-height:1.65}.ka-lead{font-size:1.5rem;line-height:1.4!important;letter-spacing:-.02em}.wp-block-columns{gap:40px}.ka-dark{background:var(--ka-ink);color:var(--ka-paper)}.ka-dark .ka-kicker{color:var(--ka-accent)}.ka-program{background:#23261e}.ka-program figure{margin:0}.ka-program img{width:100%;height:320px;object-fit:cover;display:block}.ka-program:first-child img{object-position:65% center}.ka-card-body{padding:28px}.ka-card-body p{font-size:1rem}.ka-card-body a{font-weight:700;color:var(--ka-accent);text-decoration:none}.ka-card-body h3{font-size:1.8rem}.ka-approach-grid{align-items:center}.ka-approach-grid img{width:100%;height:680px;object-fit:cover;object-position:65% center}.ka-approach-copy{padding:0 5%}.ka-step{padding-top:12px;border-top:1px solid var(--ka-line);margin-top:24px}.ka-step h3{font-size:1.1rem}.ka-step p{font-size:1rem}.ka-schedule-grid>.wp-block-column:first-child{flex-basis:38%!important}.ka-schedule-grid>.wp-block-column:last-child{flex-basis:62%!important}.wp-block-table{margin:0;overflow:auto}.wp-block-table table{width:100%;border-collapse:collapse;min-width:480px;table-layout:auto!important;font-size:1rem}.wp-block-table th{text-align:left;font-size:.8rem;text-transform:uppercase;background:var(--ka-ink);color:white}.wp-block-table td,.wp-block-table th{padding:20px 12px;border:0;border-bottom:1px solid var(--ka-line)}.ka-muted{font-size:.875rem;color:#5d6255}.ka-dark .ka-muted{color:#c2c6b9}.ka-plan{padding:32px;background:#25291f;min-height:470px;display:flex;flex-direction:column}.ka-plan p{font-size:1rem;margin:8px 0}.ka-plan h3{margin:20px 0 8px}.ka-plan .ka-price{font-size:clamp(2rem,3vw,3.2rem);font-weight:850;letter-spacing:-.05em;line-height:1.2;margin-bottom:20px}.ka-plan .wp-block-buttons{margin-top:auto;padding-top:30px}.ka-plan.ka-featured{background:var(--ka-accent);color:var(--ka-ink)}.ka-featured .ka-kicker{color:var(--ka-ink)}.ka-featured .wp-block-button__link{background:var(--ka-ink);color:white}.wp-block-details{border-bottom:1px solid var(--ka-line);padding:24px 0;margin-top:0}.wp-block-details summary{cursor:pointer;font-weight:700;font-size:1.1rem}.wp-block-details p{font-size:1rem}.ka-contact{background:var(--ka-accent)}.ka-contact h2{font-size:clamp(4rem,9vw,9rem);max-width:1000px}.ka-light-button .wp-block-button__link{background:var(--ka-ink);color:white}.ka-contact-note{font-size:.8rem}.ka-footer{background:var(--ka-ink);color:var(--ka-paper);padding-block:60px 24px}.ka-footer .wp-block-site-title{font-size:2.3rem;letter-spacing:-.05em;font-weight:900;text-transform:uppercase}.ka-footer h3{font-size:.875rem;letter-spacing:.05em}.ka-footer p{font-size:1rem}.ka-footer-bottom{border-top:1px solid #454a3d;margin-top:40px;padding-top:20px}.ka-footer-bottom p{font-size:.8rem;color:#c2c6b9}.ka-search-form{display:flex;flex-wrap:wrap;gap:12px}.ka-search-form input{padding:16px;border:1px solid #62695a;background:white;color:#171914;font:inherit;max-width:100%}.ka-search-form input[type=submit]{background:var(--ka-accent);cursor:pointer}.ka-search-form label{width:100%}:focus-visible{outline:3px solid #668413;outline-offset:5px}.ka-dark :focus-visible,.ka-hero :focus-visible{outline-color:var(--ka-accent)}
@media(max-width:900px){.ka-program img{height:240px}.ka-card-body,.ka-plan{padding:22px}.ka-section{padding-block:65px}.ka-approach-copy{padding:0}.ka-approach-grid img{height:560px}.wp-block-columns{gap:24px}.ka-hero{min-height:700px}}
@media(max-width:781px){.ka-program img{height:360px}.ka-hero{background-position:62% center;min-height:720px;background-image:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.2)),url('assets/images/strength.png')}.ka-hero h1{font-size:clamp(3.2rem,11vw,6rem)}.ka-hero-copy{max-width:600px}.ka-section h2{font-size:3rem}.ka-plan{min-height:430px}.ka-contact h2{font-size:clamp(4rem,13vw,7rem)}.ka-approach-grid img{height:440px}.ka-header{padding-block:16px}.ka-header .wp-block-site-title{font-size:1.5rem}.ka-footer .wp-block-columns{gap:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wp-block-button__link{transition:none;transform:none!important}}

.ka-page-intro h1{font-size:clamp(3.2rem,7.5vw,7.2rem);line-height:.95;letter-spacing:-.06em;font-weight:900;margin:24px 0 32px}.ka-page-intro .ka-lead{max-width:720px}.wp-block-post-content> .ka-section{margin-block-start:0}

/* Editorial photography and progressive motion. All content is visible without JS. */
.ka-photo-banner{padding-bottom:72px}.ka-photo-banner figure{margin:0;overflow:hidden}.ka-photo-banner img{display:block;width:100%;height:clamp(320px,43vw,620px);object-fit:cover;object-position:center 45%}.ka-program{overflow:hidden}.ka-program img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}.ka-program:hover img{transform:scale(1.045)}.ka-program figure{overflow:hidden}.ka-plan{transition:transform .25s,box-shadow .25s}.ka-plan:hover,.ka-plan:focus-within{transform:translateY(-6px);box-shadow:0 18px 40px #0002}.ka-faq{background:#eceee5}.ka-faq .wp-block-details{padding:24px 0}.ka-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px}.ka-faq summary::-webkit-details-marker{display:none}.ka-faq summary::after{content:'+';font-size:1.8rem;line-height:1;font-weight:400;flex-shrink:0}.ka-faq details[open] summary::after{content:'−'}.ka-faq details[open]{border-bottom-color:#88916e}.ka-faq .wp-block-details p{max-width:650px;color:#454c3c}.ka-faq-link{font-size:.95rem;font-weight:700}.ka-header a{transition:color .2s}.ka-header a:hover{color:#56660b}.ka-photo-banner+.ka-dark{margin-top:0}
@media(max-width:781px){.ka-photo-banner{padding-bottom:44px}.ka-photo-banner img{height:350px}.ka-faq summary{font-size:1rem}.ka-faq .wp-block-columns{gap:24px}}
@media(prefers-reduced-motion:reduce){.ka-program img,.ka-plan,.ka-header a{transition:none}.ka-program:hover img,.ka-plan:hover,.ka-plan:focus-within{transform:none}}
