/* Compagnie Kabak — dedicated editorial layer over original Non-profit/Charo stylesheet */
:root{--ink:#222422;--muted:#5f605a;--gold:#e7a744;--goldlight:#f4d391;--cream:#fbf7ef;--red:#a54136;--paper:#fff;--line:#e9e1d5;--dark:#202223}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:#fff;line-height:1.65;overflow-x:hidden;font-size:16px}p{margin:0 0 1.15em}a{color:inherit;transition:color .2s, background .2s}a:hover{color:var(--red);text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:3px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em}img{max-width:100%;display:block}main{display:block;clear:both}section{position:relative;clear:both} .wrap{max-width:1230px;width:calc(100% - 64px);margin-left:auto;margin-right:auto} .eyebrow{font-family:system-ui,sans-serif;font-size:.69rem;letter-spacing:.22em;font-weight:750;text-transform:uppercase;color:var(--red);margin:0 0 20px}.skip-link{position:absolute;top:-100px;left:10px;background:#fff;padding:8px 16px;z-index:9999}.skip-link:focus{top:10px}
/* Header and original bootstrap navigation */
.header_section{background:var(--gold);padding:0;float:none;width:100%;position:relative;z-index:15}.header_section .navbar{padding:18px 0;min-height:86px}.header_section .navbar-nav{margin-left:auto!important;margin-right:24px!important;align-items:center;gap:2px}.navbar-expand-xl .navbar-nav .nav-link{font-size:12px;font-weight:800;letter-spacing:.065em;color:#242321;padding:12px 10px;text-transform:uppercase;white-space:nowrap}.navbar-expand-xl .navbar-nav .nav-link:hover,.navbar-expand-xl .navbar-nav .active>.nav-link{color:#8e3026}.navbar-toggler{border:1px solid #34322c;padding:7px 11px}.kabak-logo{width:166px;min-width:166px;display:flex;flex-direction:column;line-height:1;align-items:flex-start!important;margin:0 42px 0 0}.kabak-logo .brand-over{font-weight:800;font-size:10px;letter-spacing:.22em;color:#242321;margin-bottom:3px}.kabak-logo strong{font-size:30px;font-weight:950;letter-spacing:-.065em;color:#1e2020}.brand-period{color:#fff}.kb-top-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:14px;padding:11px 16px;white-space:nowrap;background:#242321!important;color:#fff!important;font-size:12px!important;font-weight:800;text-transform:uppercase;width:auto!important;border:0!important}.kb-top-cta:hover{background:#88362b!important;color:white!important}
/* Hero matches original central banner and three feature cards */
.banner_section.kb-hero{float:none;width:100%;min-height:560px;height:auto;padding:0;background:linear-gradient(90deg,rgba(10,10,10,.76),rgba(10,10,10,.33) 74%,rgba(10,10,10,.12)),url('../images/hero.webp') center 48%/cover no-repeat;display:flex;align-items:center}.kb-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.27),transparent 35%);pointer-events:none}.kb-hero-inner{padding:90px 0 100px;position:relative;z-index:1;text-align:center}.kb-hero .eyebrow{color:var(--goldlight)}.banner_taital{font:400 clamp(55px,6.8vw,102px)/1.04 Georgia,serif;letter-spacing:-.06em;color:#fff;text-align:center;width:100%;max-width:900px;text-transform:none;margin:0 auto}.banner_taital em{font-style:italic;color:var(--goldlight)}.banner_text{width:100%;max-width:620px;text-align:center;font-size:19px;line-height:1.7;margin:26px auto;color:#f7f3ea;padding:0}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:13px;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border-radius:2px;min-height:49px;padding:13px 22px;font:800 12px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.045em}.button.filled{background:var(--gold);color:#242321}.button.filled:hover{background:white}.button.outline-light{color:white;border:1px solid rgba(255,255,255,.75)}.button.outline-light:hover{background:white;color:#222}.hero-corner{position:absolute;bottom:22px;right:5%;z-index:2;color:rgba(255,255,255,.83);font-size:10px;font-weight:750;letter-spacing:.17em}.hero-corner span{color:var(--gold);padding:0 8px}
.kb-features{float:none!important;width:100%;padding:0 0 38px!important;background:var(--cream)!important}.kb-features .row{margin-top:-38px;position:relative;z-index:2}.kb-feature{padding:0 8px}.kb-features .box_main{height:100%;min-height:230px;float:none;padding:30px 31px 23px;background:#2c2d2d;box-shadow:0 12px 26px rgba(23,22,18,.06)}.kb-features .box_main.active{background:var(--gold);color:#1f2321}.kb-features .box_main:hover{background:#4b4233}.kb-features .box_main.active:hover{background:#d99b37}.feature-number{display:block;font:italic 23px Georgia,serif;color:var(--goldlight);margin-bottom:19px}.box_main.active .feature-number{color:#3b2a13}.kb-features .volunteer_text{text-transform:none;font:500 23px Georgia,serif;color:white;float:none;padding:0;line-height:1.14;margin:0 0 12px}.kb-features .active .volunteer_text{color:#222}.kb-features .lorem_text{float:none;width:100%;text-align:left;color:#e6dfd7;line-height:1.6;font-size:13px;margin:0 0 18px}.kb-features .active .lorem_text{color:#322a1e}.feature-link{color:white;font-size:12px;font-weight:700;letter-spacing:.02em}.box_main.active .feature-link{color:#242321}
/* About split original dark/white */
.about_section.kb-about{float:none;background:var(--dark);color:#f9f5ee;clear:both}.kb-about>.row{margin:0}.about-text-side{padding:0}.kb-about .about_taital_main{float:none;margin:0;padding:83px min(8vw,110px) 80px max(35px,calc((100vw - 1230px)/2));max-width:750px}.kb-about .eyebrow{color:var(--goldlight)}.kb-about .about_taital{float:none;padding:0;margin:0 0 27px;color:white;font:normal clamp(31px,3.4vw,48px)/1.12 Georgia,serif;text-transform:none}.kb-about p:not(.eyebrow){color:#e5dfd5;font-size:15px;line-height:1.85}.kb-about .button{margin-top:18px}.about-image-side img{height:100%;width:100%;object-fit:cover;min-height:520px}
/* Normal editorial rhythm */
.kb-intro{padding:105px 0 100px;display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);gap:8%}.kb-intro h2{font-size:clamp(34px,4vw,55px);line-height:1.17;letter-spacing:-.045em;max-width:510px}.kb-intro h2 em{color:var(--red);font-weight:400}.kb-intro .intro-text{font-size:16px;line-height:1.85;color:#454641;max-width:650px}.kb-intro .intro-text p+p{margin-top:20px}
.kb-activities{float:none!important;width:100%;padding:104px 0;background:var(--cream)}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}.section-top h2{font-size:clamp(34px,4vw,55px);line-height:1.1;margin:0}.section-top>p{max-width:350px;line-height:1.65;color:var(--muted)}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.activity-card{background:white;overflow:hidden}.activity-card>a{display:block;position:relative;height:280px;overflow:hidden}.activity-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.activity-card a:hover img{transform:scale(1.035)}.activity-card-arrow{position:absolute;right:22px;bottom:20px;background:var(--gold);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font-size:23px;color:#222}.activity-content{padding:29px 35px 34px}.activity-content h3{font-size:28px;margin:0 0 17px}.activity-content p{font-size:14px;line-height:1.84;color:#555650}.text-link{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--red);padding-bottom:6px;color:var(--red);display:inline-block}
.kb-essay{padding:106px 0 70px}.kb-essay-row{display:grid;grid-template-columns:1fr .75fr;gap:7%;align-items:center;border-top:1px solid var(--line);padding:50px 0}.kb-essay-row.reversed{grid-template-columns:.75fr 1fr}.kb-essay-row.reversed .kb-essay-copy{order:2}.kb-essay-row.reversed .kb-essay-media{order:1}.kb-essay-copy h3{font-size:clamp(29px,3vw,42px);line-height:1.19;margin:8px 0 23px}.kb-essay-copy p{color:#585b54;font-size:15px;line-height:1.85}.kb-essay-media img{width:100%;height:340px;object-fit:cover}.section-num{display:block;font-size:12px;letter-spacing:.14em;color:var(--red);font-weight:800}
/* Rich articles */
.inner-hero{background-image:linear-gradient(90deg,rgba(15,15,15,.87),rgba(15,15,15,.38)),var(--page-image,url('../images/spectacle.webp'));background-size:cover;background-position:center;height:340px;display:flex;align-items:center;color:#fff}.inner-hero-content{padding:65px 0}.inner-hero .eyebrow{color:var(--goldlight)}.inner-hero h1{font-size:clamp(37px,5vw,66px);max-width:900px;line-height:1.11;color:#fff;margin:0 0 14px}.inner-hero-content>p:last-child{font-size:17px;color:#f3e8d9;margin:0;max-width:750px}.kb-page-layout{padding:65px 0 100px}.kb-page-intro{display:grid;grid-template-columns:260px minmax(0,1fr);gap:55px;border-bottom:1px solid var(--line);padding-bottom:50px;margin-bottom:50px}.kb-page-intro .eyebrow{margin-top:10px}.kb-page-intro p{grid-column:2;max-width:790px;color:#42433e;font-size:17px;line-height:1.91;margin:0 0 18px}.kb-page-intro .eyebrow+p{margin-top:0}.kb-page-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:55px}.kb-page-aside{align-self:start;position:sticky;top:20px;border-top:3px solid var(--gold);padding-top:17px}.kb-page-aside .aside-label{font-size:11px;font-weight:850;color:var(--red);text-transform:uppercase;letter-spacing:.17em;margin:0 0 15px;display:block}.kb-page-aside nav{display:flex;flex-direction:column;gap:2px}.kb-page-aside nav a{padding:9px 0;color:#41423f;border-bottom:1px solid #eee9e1;font-size:12px;line-height:1.45;font-weight:650}.kb-page-aside nav a:hover{color:var(--red)}.kb-page-aside nav a span{color:var(--red);font-size:11px;margin-right:9px}.aside-contact{padding:25px;margin-top:28px;background:var(--cream);font-size:13px}.aside-contact strong{font-size:16px}.aside-contact p{margin:7px 0}.aside-contact a{color:var(--red);font-weight:750;overflow-wrap:anywhere}.kb-page-articles{max-width:830px}.kb-prose-section{scroll-margin-top:35px;border-bottom:1px solid var(--line);padding:0 0 40px;margin:0 0 47px}.kb-prose-section h2{font-size:clamp(28px,3vw,42px);margin:8px 0 23px;line-height:1.18}.kb-prose-section p{font-size:16px;color:#4c504a;line-height:1.91;margin:0 0 18px}.kb-inline-photo{margin:0 0 50px}.kb-inline-photo img{height:310px;width:100%;object-fit:cover}
/* CTA and Footer */
.bottom-cta{background:var(--red);padding:55px 0 52px;color:#fff}.bottom-cta .eyebrow{color:#f9c88d}.bottom-cta h2{font-size:clamp(28px,3.8vw,46px);line-height:1.18;color:#fff;margin:0 0 14px}.bottom-cta p{color:#ffe9df;margin:0;font-size:15px;line-height:1.6}.bottom-cta .cta-side{text-align:right}.footer_section{float:none!important;position:relative!important;background:#232526!important;color:#deddd6!important;padding:63px 0 26px!important}.footer-main{display:grid;grid-template-columns:1.55fr 1fr 1fr;gap:75px}.footer-brand{display:flex;flex-direction:column;color:white;margin:0 0 22px}.footer-brand span{letter-spacing:.15em;font-weight:800;font-size:11px}.footer-brand strong{letter-spacing:-.07em;font-weight:900;font-size:44px;line-height:1}.footer-main h3{color:#f7f4ef;font:800 12px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;margin:10px 0 22px}.footer-main p{font-size:14px;color:#c5c8c5;line-height:1.75}.footer-email{display:inline-block;color:#f5be69!important;font-weight:750;font-size:14px;margin-top:5px}.footer-links{display:grid;gap:9px}.footer-links a{color:#d7d8d3;font-size:13px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #4b4b49;padding-top:22px;margin-top:50px;font-size:12px;color:#aaa}.footer-bottom>div{display:flex;gap:19px}.footer-bottom a{color:#d7d8d3}
.kb-legal,.kb-sitemap{padding:80px 0 110px;max-width:850px}.kb-legal h2,.kb-sitemap h2{font-size:29px;margin:29px 0 16px}.kb-legal p,.kb-sitemap li{font-size:16px;color:#4b4b49;line-height:1.9}.kb-legal a,.kb-sitemap a{color:var(--red);text-decoration:underline}.legal-hero{height:250px}.kb-sitemap ul{padding-left:20px}.kb-sitemap li{margin-bottom:9px}
@media(max-width:1199px){.header_section .navbar{padding:17px 0;min-height:75px}.header_section .navbar-collapse{padding:18px 0 12px}.header_section .navbar-nav{align-items:stretch!important;margin-right:0!important}.navbar-expand-xl .navbar-nav .nav-link{padding:9px 0}.kb-top-cta{margin-top:15px}.header_section .navbar .kabak-logo{margin-right:auto}}
@media(max-width:991px){.kb-about .about_taital_main{padding:62px 32px;max-width:none}.about-image-side img{min-height:400px;max-height:450px}.kb-intro{grid-template-columns:1fr;gap:25px;padding:75px 0}.kb-page-intro{grid-template-columns:1fr;gap:15px}.kb-page-intro p{grid-column:1}.kb-page-body{grid-template-columns:1fr;gap:40px}.kb-page-aside{position:relative;top:auto}.kb-page-aside nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.footer-main{gap:35px}.bottom-cta .cta-side{text-align:left;margin-top:25px}}
@media(max-width:767px){.wrap{width:calc(100% - 36px)}.banner_section.kb-hero{min-height:510px;background-position:57% center}.kb-hero-inner{padding:85px 0 92px}.banner_taital{font-size:clamp(48px,12vw,67px);line-height:1.05}.banner_text{font-size:16px;line-height:1.6}.hero-corner{font-size:8px;right:18px;bottom:13px}.kb-features{padding-bottom:25px!important}.kb-features .row{margin-top:-28px}.kb-feature{padding:5px 15px}.kb-features .box_main{min-height:0;padding:25px}.feature-number{margin-bottom:10px}.kb-features .volunteer_text{font-size:23px}.kb-intro{padding:65px 0}.kb-activities{padding:65px 0}.section-top{display:block}.section-top>p{margin:18px 0}.activity-grid{grid-template-columns:1fr;gap:22px}.activity-card>a{height:245px}.activity-content{padding:25px}.kb-essay{padding:70px 0 40px}.kb-essay-row,.kb-essay-row.reversed{display:flex;flex-direction:column;gap:23px;padding:40px 0}.kb-essay-row.reversed .kb-essay-copy{order:0}.kb-essay-row.reversed .kb-essay-media{order:0}.kb-essay-media{width:100%}.kb-essay-media img{height:250px}.inner-hero{height:275px}.inner-hero h1{font-size:40px}.kb-page-layout{padding:55px 0 75px}.kb-page-aside nav{grid-template-columns:1fr}.kb-prose-section h2{font-size:30px}.kb-inline-photo img{height:210px}.footer-main{grid-template-columns:1fr 1fr;gap:40px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom>div{margin-top:15px;flex-wrap:wrap}.bottom-cta{padding:43px 0}.kb-legal,.kb-sitemap{padding:45px 0 70px}}
@media(max-width:420px){.hero-actions{gap:9px}.hero-actions .button{font-size:11px;padding:12px 14px}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:1}.kb-page-intro p{font-size:16px}.kb-essay-copy h3{font-size:30px}}
