
/* ==========================================================
   Kalima Phase 4 - Institutional pages, policies, support and mobile refinements
   ========================================================== */
:root{
    --kalima-black:#080807;
    --kalima-charcoal:#151412;
    --kalima-ink:#24211b;
    --kalima-gold:#d8c47c;
    --kalima-gold-deep:#a98b37;
    --kalima-cream:#fff9ea;
    --kalima-soft:#f7f2e4;
    --kalima-border:rgba(216,196,124,.22);
    --kalima-shadow:0 24px 70px rgba(8,8,7,.14);
}
body{scroll-padding-top:112px;}
.kalima-page-hero{position:relative;overflow:hidden;padding:118px 0 72px;background:radial-gradient(circle at 15% 15%,rgba(216,196,124,.26),transparent 30%),linear-gradient(135deg,#080807 0%,#171510 58%,#2a2112 100%);color:#fff;}
.kalima-page-hero::before{content:"";position:absolute;inset:0;background:url('../images/hero-slider/kalima-training-digital.webp') center/cover no-repeat;opacity:.16;filter:saturate(.9);}
.kalima-page-hero::after{content:"";position:absolute;inset:auto -10% -45% -10%;height:70%;background:radial-gradient(ellipse at center,rgba(216,196,124,.22),transparent 62%);pointer-events:none;}
.kalima-page-hero .container{position:relative;z-index:1;}
.kalima-eyebrow{display:inline-flex;align-items:center;gap:.55rem;padding:.5rem 1rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(216,196,124,.34);color:var(--kalima-gold);font-weight:800;letter-spacing:.01em;backdrop-filter:blur(12px);}
.kalima-page-hero h1{font-weight:900;line-height:1.25;letter-spacing:-.02em;margin-top:1rem;}
.kalima-page-hero p{color:rgba(255,255,255,.76);font-size:1.08rem;line-height:1.95;}
.kalima-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem;}
.kalima-hero-actions .btn{border-radius:16px;font-weight:800;padding:.9rem 1.25rem;}
.kalima-hero-actions .btn-light{background:var(--kalima-cream);border-color:transparent;color:var(--kalima-black);}
.kalima-hero-actions .btn-outline-light{border-color:rgba(216,196,124,.45);color:#fff;}
.kalima-hero-actions .btn-outline-light:hover{background:rgba(216,196,124,.15);border-color:var(--kalima-gold);}
.kalima-page-shell{background:linear-gradient(180deg,#fff 0%,#fbf8ef 48%,#fff 100%);}
.kalima-glass-card{background:rgba(255,255,255,.88);border:1px solid rgba(216,196,124,.22);box-shadow:var(--kalima-shadow);border-radius:28px;backdrop-filter:blur(18px);}
.kalima-dark-card{background:linear-gradient(135deg,#11100d,#211a10);color:#fff;border:1px solid rgba(216,196,124,.24);box-shadow:0 30px 80px rgba(8,8,7,.24);border-radius:28px;}
.kalima-section-kicker{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .85rem;border-radius:999px;background:rgba(216,196,124,.16);color:#7f641d;font-weight:800;font-size:.88rem;margin-bottom:.75rem;}
.kalima-section-title{font-size:clamp(1.55rem,2.1vw,2.45rem);font-weight:900;color:#13110c;line-height:1.35;margin:0 0 .75rem;}
.kalima-section-text{color:#685d44;line-height:2;font-size:1.02rem;}
.kalima-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
.kalima-metric-card{padding:1.2rem;border-radius:24px;background:#fff;border:1px solid rgba(216,196,124,.22);box-shadow:0 16px 38px rgba(8,8,7,.06);}
.kalima-metric-card i{width:44px;height:44px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d8c47c,#a98b37);color:#11100d;margin-bottom:.8rem;}
.kalima-metric-card strong{display:block;font-size:1.55rem;font-weight:900;color:#11100d;}
.kalima-metric-card span{display:block;color:#756a52;font-size:.92rem;}
.kalima-value-card,.kalima-policy-card,.kalima-help-card{height:100%;padding:1.35rem;border-radius:26px;background:#fff;border:1px solid rgba(216,196,124,.22);box-shadow:0 18px 46px rgba(8,8,7,.07);transition:.25s ease;}
.kalima-value-card:hover,.kalima-policy-card:hover,.kalima-help-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(8,8,7,.12);border-color:rgba(216,196,124,.48);}
.kalima-card-icon{width:54px;height:54px;border-radius:19px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#14120d,#302713);color:var(--kalima-gold);font-size:1.25rem;margin-bottom:1rem;box-shadow:inset 0 0 0 1px rgba(216,196,124,.18);}
.kalima-value-card h3,.kalima-policy-card h3,.kalima-help-card h3{font-size:1.12rem;font-weight:900;color:#14120d;margin-bottom:.55rem;}
.kalima-value-card p,.kalima-policy-card p,.kalima-help-card p{color:#6c614c;line-height:1.85;margin-bottom:0;}
.kalima-process-list{display:grid;gap:.85rem;}
.kalima-process-item{display:flex;align-items:flex-start;gap:.9rem;padding:1rem;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(216,196,124,.18);}
.kalima-process-step{width:36px;height:36px;flex:0 0 36px;border-radius:14px;background:var(--kalima-gold);color:#11100d;display:flex;align-items:center;justify-content:center;font-weight:900;}
.kalima-process-item strong{display:block;color:#fff;margin-bottom:.2rem;}
.kalima-process-item span{display:block;color:rgba(255,255,255,.68);font-size:.9rem;line-height:1.65;}
.kalima-contact-panel{padding:1.25rem;border-radius:26px;background:linear-gradient(135deg,#11100d,#241d10);color:#fff;border:1px solid rgba(216,196,124,.2);height:100%;}
.kalima-contact-item{display:flex;gap:.8rem;align-items:flex-start;padding:1rem;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.07);margin-bottom:.85rem;}
.kalima-contact-item i{width:40px;height:40px;border-radius:15px;background:rgba(216,196,124,.16);color:var(--kalima-gold);display:flex;align-items:center;justify-content:center;flex:0 0 40px;}
.kalima-contact-item strong{display:block;color:#fff;font-weight:900;}
.kalima-contact-item span,.kalima-contact-item a{color:rgba(255,255,255,.76);text-decoration:none;}
.kalima-form-card{border:0;border-radius:30px;box-shadow:var(--kalima-shadow);overflow:hidden;}
.kalima-form-card .form-control,.kalima-form-card .form-select,.kalima-support-form .form-control,.kalima-support-form .form-select{border-radius:16px;border:1px solid rgba(36,33,27,.12);padding:.85rem 1rem;background:#fffdf7;}
.kalima-form-card .form-control:focus,.kalima-form-card .form-select:focus,.kalima-support-form .form-control:focus,.kalima-support-form .form-select:focus{border-color:var(--kalima-gold);box-shadow:0 0 0 .25rem rgba(216,196,124,.18);}
.kalima-policy-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;align-items:start;}
.kalima-policy-article{border-radius:30px;background:#fff;border:1px solid rgba(216,196,124,.24);box-shadow:var(--kalima-shadow);overflow:hidden;}
.kalima-policy-article-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#11100d,#2a2112);color:#fff;}
.kalima-policy-article-header small{color:rgba(255,255,255,.64);}
.kalima-policy-content{padding:2rem;line-height:2.1;font-size:1.04rem;color:#332f24;}
.kalima-policy-content h2,.kalima-policy-content h3{font-weight:900;color:#16130d;margin-top:1.45rem;margin-bottom:.75rem;}
.kalima-policy-content h2:first-child,.kalima-policy-content h3:first-child{margin-top:0;}
.kalima-policy-content p{color:#4c4434;margin-bottom:1rem;}
.kalima-policy-content ul,.kalima-policy-content ol{padding-right:1.25rem;margin-bottom:1rem;}
.kalima-policy-content li{margin-bottom:.45rem;}
.kalima-policy-side{position:sticky;top:116px;display:grid;gap:1rem;}
.kalima-side-box{border-radius:24px;background:#fff;border:1px solid rgba(216,196,124,.24);box-shadow:0 18px 42px rgba(8,8,7,.07);padding:1.15rem;}
.kalima-side-box h4{font-size:1rem;font-weight:900;color:#15120d;margin-bottom:.9rem;}
.kalima-side-links{display:grid;gap:.55rem;}
.kalima-side-links a{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .85rem;border-radius:15px;background:#fffaf0;color:#221d12;text-decoration:none;font-weight:800;border:1px solid rgba(216,196,124,.18);font-size:.92rem;}
.kalima-side-links a:hover{background:#19150d;color:#fff;border-color:rgba(216,196,124,.42);}
.kalima-policy-card .policy-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem;}
.kalima-policy-card .policy-meta span{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.35rem .65rem;background:#fff8df;color:#7c641f;font-size:.8rem;font-weight:800;}
.kalima-faq-accordion .accordion-item{border:1px solid rgba(216,196,124,.23)!important;border-radius:22px!important;overflow:hidden;margin-bottom:1rem;background:#fff;box-shadow:0 14px 34px rgba(8,8,7,.06);}
.kalima-faq-accordion .accordion-button{font-weight:900;color:#17130c;background:#fff;padding:1.15rem 1.25rem;}
.kalima-faq-accordion .accordion-button:not(.collapsed){background:linear-gradient(135deg,#fff8df,#fff);color:#17130c;box-shadow:none;}
.kalima-faq-accordion .accordion-body{color:#625740;line-height:1.9;padding:1.25rem;}
.kalima-support-layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:1.5rem;align-items:start;}
.kalima-support-form{position:sticky;top:116px;border-radius:30px;border:1px solid rgba(216,196,124,.24);box-shadow:var(--kalima-shadow);overflow:hidden;background:#fff;}
.kalima-support-form .card-header{background:linear-gradient(135deg,#11100d,#2a2112)!important;color:#fff;border:0;padding:1.2rem 1.35rem;font-weight:900;}
.kalima-ticket-list{border-radius:28px;border:1px solid rgba(216,196,124,.2);box-shadow:var(--kalima-shadow);overflow:hidden;background:#fff;}
.kalima-ticket-list .table{margin:0;}
.kalima-ticket-list thead th{background:#fff8df;color:#2d2515;font-weight:900;border:0;white-space:nowrap;}
.kalima-ticket-list tbody td{vertical-align:middle;}
.kalima-ticket-chat-card{border-radius:28px;border:1px solid rgba(216,196,124,.22);box-shadow:var(--kalima-shadow);overflow:hidden;background:#fff;}
.kalima-alert-note{border-radius:22px;background:#fff8df;border:1px solid rgba(216,196,124,.36);padding:1rem;color:#5a4b23;line-height:1.8;}
.kalima-mobile-bottom-bar{display:none;}
@media (max-width:1399.98px){
    .kalima-nav-collapse{max-height:calc(100vh - 92px);overflow-y:auto;}
}
@media (max-width:991.98px){
    body{scroll-padding-top:86px;}
    .kalima-page-hero{padding:102px 0 52px;}
    .kalima-page-hero p{font-size:1rem;}
    .kalima-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .kalima-policy-layout,.kalima-support-layout{grid-template-columns:1fr;}
    .kalima-policy-side,.kalima-support-form{position:static;}
    .kalima-policy-content{padding:1.35rem;}
    .kalima-page-shell{padding-bottom:74px;}
    .kalima-mobile-bottom-bar{position:fixed;right:12px;left:12px;bottom:12px;z-index:1040;display:flex;gap:.55rem;padding:.55rem;border-radius:22px;background:rgba(16,14,10,.92);border:1px solid rgba(216,196,124,.25);box-shadow:0 18px 48px rgba(0,0,0,.25);backdrop-filter:blur(14px);}
    .kalima-mobile-bottom-bar a{flex:1;min-width:0;text-align:center;text-decoration:none;color:#fff;border-radius:16px;padding:.55rem .35rem;font-size:.78rem;font-weight:800;}
    .kalima-mobile-bottom-bar a i{display:block;color:var(--kalima-gold);font-size:1.05rem;margin-bottom:.2rem;}
    .footer-main{padding-bottom:96px;}
}
@media (max-width:575.98px){
    .kalima-page-hero{padding:94px 0 44px;}
    .kalima-page-hero h1{font-size:1.8rem;}
    .kalima-hero-actions .btn{width:100%;}
    .kalima-metric-grid{grid-template-columns:1fr;}
    .kalima-policy-article-header{display:block;padding:1.1rem;}
    .kalima-policy-content{font-size:.98rem;line-height:2;padding:1rem;}
    .kalima-form-card .card-body{padding:1.15rem!important;}
    .kalima-support-form .card-body{padding:1rem!important;}
    .kalima-ticket-list{overflow-x:auto;}
    .kalima-side-links a{font-size:.86rem;}
}
@media print{
    .navbar-main,.footer-main,.footer-stats-section,.scroll-top,.cookie-consent,.pwa-install-prompt,.kalima-mobile-bottom-bar,.kalima-policy-side,.kalima-hero-actions{display:none!important;}
    .kalima-page-hero{padding:1rem 0;background:#fff!important;color:#000!important;}
    .kalima-page-hero::before,.kalima-page-hero::after{display:none;}
    .kalima-policy-layout{display:block;}
    .kalima-policy-article{box-shadow:none;border:0;}
    .kalima-policy-content{padding:0;color:#000;}
}
