/*
Theme Name: Krav Maga Life — Training Center
Theme URI: https://kravmaga.life/
Author: Custom site redesign
Description: Krav Maga Life training center website, featuring original school photography.
Version: 1.3.0
Requires at least: 6.0
Text Domain: kravmaga-training
*/

:root{--ink:#17201f;--forest:#304440;--sage:#b7c6bb;--paper:#f5f6f3;--rust:#d5684f;--line:#d9dfd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.58 system-ui,-apple-system,Segoe UI,Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.9rem,6vw,5.8rem);line-height:1.02;letter-spacing:-.06em;max-width:900px}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.12;letter-spacing:-.045em}h3{font-size:1.35rem}a{color:inherit}a:hover{opacity:.83}button{font:inherit;cursor:pointer}.wrap{max-width:1180px;padding:0 26px;margin:auto}.nav{background:#121b1b;color:#fff}.nav .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:82px}.brand{font-weight:900;letter-spacing:-.035em;font-size:1.45rem;text-decoration:none}.brand span{color:#e08169}.links{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.links a{text-decoration:none;font-size:13px;font-weight:650}.links .border{padding:11px 15px;border:1px solid #8b9c98;border-radius:5px}.hero{background:linear-gradient(110deg,#182220 0%,#304541 65%,#415a55 100%);color:white;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.17);width:580px;height:580px;border-radius:100%;right:-150px;top:-160px;box-shadow:0 0 0 75px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.025)}.hero .wrap{padding-top:106px;padding-bottom:115px;position:relative;z-index:1}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:850;color:#e4ae9d}.hero p.lead{font-size:clamp(17px,2vw,21px);max-width:720px;color:#e3ece8}.buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-block;border-radius:5px;text-decoration:none;padding:14px 22px;font-size:14px;font-weight:800;background:var(--rust);color:white;border:1px solid var(--rust)}.btn.secondary{background:transparent;border-color:#acbeb5}.hero-note{font-size:13px;color:#c4d2cb;margin-top:24px}.section{padding:82px 0}.intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}.intro p{max-width:430px;color:#53625d}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 8px 18px #15231b09}.visual{height:184px;background:linear-gradient(135deg,#425952,#83978a);display:flex;align-items:end;padding:18px;color:#eaf0eb}.visual.two{background:linear-gradient(135deg,#667c72,#bdcbbf)}.visual.three{background:linear-gradient(135deg,#1e3130,#6f8781)}.visual span{font-weight:800;font-size:13px;letter-spacing:.07em;text-transform:uppercase}.card-body{padding:24px}.card-body p{font-size:14px;color:#52615b;min-height:68px}.card-body a{font-size:13px;color:#355448;font-weight:850;text-underline-offset:4px}.muted{color:#566760}.dark{background:#1a2523;color:white}.dark p{color:#ced9d3}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.large-stat{background:#2f4540;border:1px solid #536b63;border-radius:13px;min-height:310px;display:grid;place-content:center;padding:36px;text-align:center}.large-stat strong{font-size:clamp(4rem,8vw,7rem);letter-spacing:-.08em;line-height:1}.large-stat small{color:#d4e2d9;max-width:340px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.step{border-top:2px solid #c7d3cb;padding-top:22px}.step strong{color:#bb624f}.profiles{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.profile{background:#fff;border:1px solid var(--line);padding:23px;border-radius:10px}.profile small{display:block;color:#8d523e;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.profile p{font-size:14px;color:#52615b}.faq{max-width:800px}.faq details{background:#fff;border:1px solid var(--line);margin:10px 0;border-radius:6px;padding:19px 22px}.faq summary{font-weight:800;cursor:pointer}.faq p{padding-top:15px;color:#52615b}.footer{background:#121b1a;color:white;padding:55px 0 27px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer a{color:#d2dfd6;display:block;margin:5px 0;font-size:14px;text-decoration:none}.footer h3{font-size:15px}.fine{border-top:1px solid #35443f;margin-top:35px;padding-top:18px;font-size:12px;color:#9dafaa}.notice{display:inline-block;border:1px dashed #98aba1;border-radius:6px;padding:12px 15px;color:#d1e3d6;font-size:13px;margin-top:25px}.pill{background:#e8ede8;color:#3f544c;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:800}.top-label{position:fixed;right:12px;bottom:12px;background:#fff;box-shadow:0 1px 8px #0003;color:#304440;padding:8px 12px;border-radius:5px;font-size:12px;font-weight:700;z-index:3}@media(max-width:800px){.links{gap:12px}.nav .wrap{align-items:flex-start;flex-direction:column;padding-top:15px;padding-bottom:17px}.hero .wrap{padding-top:70px;padding-bottom:80px}.cards,.steps{grid-template-columns:1fr}.split,.profiles,.footer-grid{grid-template-columns:1fr;gap:23px}.intro{display:block}.section{padding:60px 0}.card-body p{min-height:auto}}@media(max-width:430px){.wrap{padding-left:18px;padding-right:18px}.links a{font-size:12px}.hero h1{font-size:2.8rem}}

/* Original Krav Maga artwork, tuned for dark surfaces */
.brand-with-logo{display:flex;align-items:center;gap:12px;white-space:nowrap}
.brand-with-logo>img{width:57px;height:57px;object-fit:contain;filter:drop-shadow(0 0 3px rgba(255,255,255,.25))}
.brand-wordmark{color:#fff}.brand-wordmark b{color:#e08169;font-weight:900}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.72fr);align-items:center;gap:32px}
.hero-copy{min-width:0}.hero-mark{display:flex;align-items:center;justify-content:center}
.hero-mark img{width:100%;max-width:355px;max-height:380px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.24))}
.hero h1{font-size:clamp(2.7rem,5vw,4.8rem)}
@media(max-width:850px){.hero .wrap{grid-template-columns:minmax(0,1fr) 180px;gap:18px}.hero-mark img{max-height:245px}}
@media(max-width:620px){.hero .wrap{grid-template-columns:1fr}.hero-mark{margin-top:16px}.hero-mark img{max-width:240px}.brand-with-logo>img{width:48px;height:48px}}


/* Real Krav Maga class photography, version 3 */
.training-photo{width:100%;height:245px;object-fit:cover;display:block;border-radius:8px 8px 0 0}
#programs .card{overflow:hidden;padding-top:0}
#programs .card .training-photo{margin-bottom:22px}
#programs .card .training-photo~*{margin-left:24px;margin-right:24px}
#programs .card a:last-child{display:inline-block;margin-bottom:24px}
.real-training{padding:74px 0;background:#172220;color:#f6f7f4}
.real-training .gallery-heading{margin-bottom:26px;max-width:750px}
.real-training h2{margin:12px 0}
.real-training p{color:#cfdad5}
.photo-mosaic{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
.photo-mosaic figure{margin:0;background:#263732;border-radius:8px;overflow:hidden}
.photo-mosaic img{width:100%;height:310px;object-fit:cover;display:block}
.photo-mosaic figcaption{padding:10px 14px;color:#dbe5dd;font-size:13px}
@media(max-width:760px){.photo-mosaic{grid-template-columns:1fr 1fr}.photo-mosaic figure:first-child{grid-column:span 2}.photo-mosaic img{height:230px}#programs .card .training-photo{height:220px}}

/* WordPress inner page readability */
.wp-content{max-width:940px;margin:0 auto;padding:70px 26px 100px;min-height:50vh}.wp-content h1{font-size:clamp(2.1rem,4vw,3.7rem)}.wp-content img{max-width:100%;height:auto}.wp-content iframe{max-width:100%}.wp-content .entry-content{overflow-wrap:anywhere}.wp-content table{display:block;max-width:100%;overflow-x:auto}.wp-content a{color:#a94d38}.wp-content p{margin-bottom:1.15em}.wp-content .post-card{padding:24px 0;border-bottom:1px solid #d9dfd8}.wp-content .pagination{margin-top:32px}

/* Community links: distinct from the festival's cream and gold treatment */
.community-links{background:#e6eeeb;color:#172723;padding:75px 0 82px;border-top:5px solid #d5684f}
.community-eyebrow{color:#945441;font-size:12px;letter-spacing:.2em;font-weight:900;margin-bottom:9px}
.community-links h2{margin-bottom:7px}
.community-intro{color:#52635c;margin-bottom:30px}
.community-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.community-tile{background:#fff;border:1px solid #c9d5cd;border-radius:10px;padding:22px 14px;display:flex;align-items:center;text-align:center;flex-direction:column;gap:8px;text-decoration:none;min-width:0;box-shadow:0 3px 14px #1727230c;transition:transform .15s,border-color .15s}
.community-tile:hover,.community-tile:focus-visible{transform:translateY(-3px);border-color:#9d5d48;opacity:1}
.community-initial{width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:#1e3431;color:#f1f5f1;font-size:12px;font-weight:900;letter-spacing:.025em;border:3px solid #a7bdb3}
.community-tile strong{font-size:21px;line-height:1.2}
.community-tile small{font-size:12px;color:#586760;line-height:1.4;max-width:175px}
@media(max-width:720px){.community-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.community-links{padding:52px 0}}
@media(max-width:360px){.community-bar{grid-template-columns:1fr}}

/* Community organization logos */
.community-logo{display:flex;align-items:center;justify-content:center;width:124px;height:94px;margin:0 auto 9px;}
.community-logo img{max-width:120px;max-height:90px;width:auto;height:auto;object-fit:contain;display:block;}
.community-tile .community-logo{background:none;border:none;border-radius:0;}
@media(max-width:600px){.community-logo{width:115px;height:86px}.community-logo img{max-width:110px;max-height:82px}}
