/* Krishna Enterprises — V1 homepage (Bootstrap 5.3.8)
   Layout: industrial catalogue — navy/orange brand, hazard-stripe accents, product-first grid */
:root{
  --kr-navy:#002e5b;
  --kr-navy-900:#011d3a;
  --kr-orange:#ff8800;
  --kr-yellow:#ffc20e;
  --kr-ink:#16202b;
  --kr-muted:#5d6876;
  --kr-line:#e3e8ee;
  --kr-soft:#f3f6f9;
  --kr-font:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bs-body-font-family:var(--kr-font);
  --bs-body-color:var(--kr-ink);
  --bs-link-color:var(--kr-navy);
  --bs-link-hover-color:var(--kr-orange);
}
body{ font-family:var(--kr-font); color:var(--kr-ink); background:#fff; }
h1,h2,h3,h4,h5{ font-weight:700; color:var(--kr-navy); text-wrap:balance; }
p{ color:#2c3642; line-height:1.75; font-size:15px; }
a{ text-decoration:none; }
.section{ padding:88px 0; }
.section-sm{ padding:64px 0; }
.bg-soft{ background:var(--kr-soft); }
.eyebrow{ display:inline-block; font-size:13px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--kr-orange); margin-bottom:10px; }
.section-title{ font-size:calc(clamp(26px,3.2vw,38px) - 2px); margin-bottom:14px; }
.section-lead{ color:var(--kr-muted); max-width:640px; }
.hazard{ height:8px; background:repeating-linear-gradient(-45deg,var(--kr-yellow) 0 14px,var(--kr-navy-900) 14px 28px); }

/* Buttons */
.btn{ font-weight:600; border-radius:6px; padding:12px 24px; }
.btn-kr{ background:var(--kr-orange); border:2px solid var(--kr-orange); color:#fff; }
.btn-kr:hover,.btn-kr:focus{ background:#e67700; border-color:#e67700; color:#fff; }
.btn-kr-navy{ background:var(--kr-navy); border:2px solid var(--kr-navy); color:#fff; }
.btn-kr-navy:hover{ background:var(--kr-orange); border-color:var(--kr-orange); color:#fff; }
.btn-kr-outline{ border:2px solid #fff; color:#fff; background:transparent; }
.btn-kr-outline:hover{ background:#fff; color:var(--kr-navy); }

/* Topbar + nav */
.kr-topbar{ background:var(--kr-navy-900); color:#d8e1ea; font-size:13.5px; }
.kr-topbar a{ color:#fff; }
.kr-topbar a:hover{ color:var(--kr-orange); }
.kr-topbar .bi{ color:var(--kr-orange); margin-right:6px; }
.kr-nav{ background:#fff; box-shadow:0 2px 16px rgba(1,29,58,.08); }
.kr-nav .navbar-brand img{ width:200px; height:auto; }
.kr-nav .nav-link{ font-weight:500; color:var(--kr-ink); padding:28px 14px!important; }
.kr-nav .nav-link:hover,.kr-nav .nav-link.active{ color:var(--kr-orange); }
.kr-nav .dropdown-menu{ border:0; border-top:3px solid var(--kr-orange); border-radius:0 0 8px 8px; box-shadow:0 14px 30px rgba(1,29,58,.12); padding:8px 0; min-width:260px; }
.kr-nav .dropdown-item{ padding:9px 20px; font-size:14.5px; }
.kr-nav .dropdown-item:hover{ background:var(--kr-soft); color:var(--kr-orange); }
@media(max-width:991.98px){ .kr-nav .nav-link{ padding:10px 0!important; } .kr-nav .navbar-collapse{ padding-bottom:16px; } }

/* Hero */
.kr-hero{ position:relative; background:linear-gradient(115deg,#f7f9fb 0 55%,#e9eef3 55% 100%); overflow:hidden; }
.kr-hero:before{ content:""; position:absolute; left:-60px; top:0; width:260px; height:120px; background:var(--kr-yellow); transform:skewX(-40deg); opacity:.9; }
.kr-hero .container{ position:relative; padding-top:72px; padding-bottom:72px; }
.kr-hero .tagline{ font-size:calc(clamp(40px,6vw,72px) - 2px); line-height:1; font-weight:800; color:var(--kr-navy-900); text-transform:uppercase; letter-spacing:-.01em; margin-bottom:18px; }
.kr-hero .tagline span{ display:block; color:var(--kr-orange); }
.kr-hero h1{ font-size:calc(clamp(19px,2vw,24px) - 2px); font-weight:600; color:var(--kr-navy); margin-bottom:16px; }
.kr-hero p.lead{ font-size:16px; color:var(--kr-muted); max-width:520px; }
.kr-hero .hero-points{ display:flex; flex-wrap:wrap; gap:22px; margin:26px 0 30px; padding:0; list-style:none; }
.kr-hero .hero-points li{ display:flex; align-items:center; gap:10px; font-weight:600; font-size:14px; color:var(--kr-navy-900); }
.kr-hero .hero-points .bi{ width:40px; height:40px; border-radius:50%; background:var(--kr-navy); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:18px; }
.kr-hero .hero-img{ position:relative; }
.kr-hero .hero-img img{ width:100%; height:auto; border-radius:14px; box-shadow:0 30px 60px rgba(1,29,58,.18); }
.kr-hero .hero-badge{ position:absolute; left:-18px; bottom:28px; background:var(--kr-navy-900); color:#fff; border-left:5px solid var(--kr-yellow); padding:14px 18px; border-radius:8px; font-weight:700; line-height:1.25; box-shadow:0 12px 26px rgba(1,29,58,.25); }
.kr-hero .hero-badge small{ display:block; font-weight:500; color:#c8d3de; font-size:12px; }

/* Strip */
.kr-strip{ background:var(--kr-navy-900); color:#fff; }
.kr-strip .item{ display:flex; align-items:center; gap:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; font-size:15px; padding:20px 0; }
.kr-strip .item .bi{ color:var(--kr-yellow); font-size:26px; }
.kr-strip .slogan{ background:var(--kr-yellow); color:var(--kr-navy-900); font-weight:800; text-transform:uppercase; line-height:1.15; padding:18px 26px; height:100%; display:flex; align-items:center; font-size:17px; }

/* About */
.about-img{ position:relative; }
.about-img img{ width:100%; height:auto; border-radius:12px; }
.about-img .exp{ position:absolute; right:-14px; top:24px; background:var(--kr-orange); color:#fff; border-radius:10px; padding:16px 20px; text-align:center; box-shadow:0 12px 24px rgba(255,136,0,.35); }
.about-img .exp b{ display:block; font-size:34px; line-height:1; }
.about-img .exp span{ font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.check-list{ list-style:none; padding:0; margin:20px 0 28px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 20px; }
.check-list li{ position:relative; padding-left:28px; font-weight:500; }
.check-list li:before{ content:"\F26E"; font-family:"bootstrap-icons"; position:absolute; left:0; top:0; color:var(--kr-orange); font-size:18px; line-height:1.4; }
@media(max-width:575.98px){ .check-list{ grid-template-columns:1fr; } }

/* Product cards */
.p-card{ background:#fff; border:1px solid var(--kr-line); border-radius:12px; overflow:hidden; height:100%; display:flex; flex-direction:column; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.p-card:hover{ transform:translateY(-5px); box-shadow:0 18px 36px rgba(1,29,58,.12); border-color:transparent; }
.p-card .p-img{ background:linear-gradient(180deg,#fff,#f2f5f8); height:210px; display:flex; align-items:center; justify-content:center; padding:20px; }
.p-card .p-img img{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; transition:transform .3s ease; }
.p-card:hover .p-img img{ transform:scale(1.05); }
.p-card .p-body{ padding:18px 18px 20px; border-top:3px solid var(--kr-orange); display:flex; flex-direction:column; flex:1; }
.p-card h3{ font-size:15px; margin-bottom:6px; }
.p-card p{ font-size:13px; color:var(--kr-muted); line-height:1.6; margin-bottom:14px; flex:1; }
.p-card .p-link{ font-weight:600; font-size:14px; color:var(--kr-orange); }
.p-card .p-link .bi{ transition:transform .2s; display:inline-block; }
.p-card:hover .p-link .bi{ transform:translateX(4px); }

/* Why us */
.kr-why{ position:relative; background:linear-gradient(rgba(1,29,58,.92),rgba(1,29,58,.92)), url("../new-img/quote-bg.jpg") center/cover; color:#fff; }
.kr-why h2,.kr-why h3{ color:#fff; }
.kr-why p{ color:#c9d4df; }
.why-item{ display:flex; gap:16px; padding:24px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(255,255,255,.04); height:100%; transition:background .25s, border-color .25s; }
.why-item:hover{ background:rgba(255,255,255,.08); border-color:var(--kr-orange); }
.why-item .bi{ flex:0 0 52px; width:52px; height:52px; border-radius:10px; background:var(--kr-orange); color:#fff; display:flex; align-items:center; justify-content:center; font-size:24px; }
.why-item h3{ font-size:16px; margin-bottom:6px; }
.why-item p{ margin:0; font-size:13.5px; line-height:1.65; }

/* Process */
.step{ position:relative; text-align:center; padding:34px 22px 28px; background:#fff; border:1px solid var(--kr-line); border-radius:12px; height:100%; transition:box-shadow .25s, transform .25s; }
.step:hover{ box-shadow:0 16px 32px rgba(1,29,58,.10); transform:translateY(-4px); }
.step .num{ position:absolute; top:12px; right:16px; font-size:40px; font-weight:800; color:rgba(0,46,91,.07); line-height:1; }
.step .bi{ width:66px; height:66px; border-radius:50%; background:rgba(255,136,0,.12); color:var(--kr-orange); display:inline-flex; align-items:center; justify-content:center; font-size:28px; margin-bottom:16px; }
.step h3{ font-size:16px; margin-bottom:8px; }
.step p{ font-size:13.5px; color:var(--kr-muted); margin:0; }
@media(min-width:992px){ .steps-row > div:not(:last-child) .step:after{ content:""; position:absolute; top:66px; right:-22px; width:20px; border-top:2px dashed var(--kr-orange); } }

/* Stats */
.kr-stats{ background:linear-gradient(rgba(0,46,91,.9),rgba(0,46,91,.9)), url("../krishna-img/breadcrumb.webp") center/cover; color:#fff; }
.stat{ border-left:3px solid var(--kr-orange); padding-left:18px; }
.stat b{ display:block; font-size:clamp(32px,4vw,44px); font-weight:800; line-height:1.1; color:#fff; font-variant-numeric:tabular-nums; }
.stat span{ color:#d6e0ea; font-size:15px; }

/* Industries */
.ind{ display:flex; align-items:center; gap:14px; padding:18px 20px; border:1px solid var(--kr-line); border-radius:10px; background:#fff; height:100%; font-weight:600; color:var(--kr-navy); }
.ind .bi{ font-size:26px; color:var(--kr-orange); }

/* Areas */
.area-link{ display:block; padding:16px 18px; border:1px solid var(--kr-line); border-radius:10px; background:#fff; height:100%; transition:border-color .2s, box-shadow .2s, transform .2s; }
.area-link b{ display:block; color:var(--kr-navy); }
.area-link span{ font-size:13px; color:var(--kr-muted); }
.area-link:hover{ border-color:var(--kr-orange); box-shadow:0 10px 22px rgba(1,29,58,.08); transform:translateY(-2px); }

/* FAQ */
.kr-faq .accordion-item{ border:1px solid var(--kr-line); border-radius:10px!important; margin-bottom:12px; overflow:hidden; }
.kr-faq .accordion-button{ font-weight:600; color:var(--kr-navy); padding:18px 20px; }
.kr-faq .accordion-button:not(.collapsed){ background:var(--kr-soft); color:var(--kr-orange); box-shadow:none; }
.kr-faq .accordion-button:focus{ box-shadow:0 0 0 3px rgba(255,136,0,.2); }
.kr-faq .accordion-body{ color:#2c3642; line-height:1.75; }

/* Enquiry */
.kr-enquiry{ background:var(--kr-navy-900); color:#fff; border-radius:16px; overflow:hidden; }
.kr-enquiry .info{ padding:44px; background:linear-gradient(160deg,var(--kr-navy) 0%,var(--kr-navy-900) 100%); height:100%; }
.kr-enquiry .info h2{ color:#fff; }
.kr-enquiry .info p{ color:#c9d4df; }
.contact-row{ display:flex; gap:14px; align-items:flex-start; margin-top:22px; }
.contact-row .bi{ flex:0 0 46px; width:46px; height:46px; border-radius:50%; background:rgba(255,136,0,.15); color:var(--kr-orange); display:flex; align-items:center; justify-content:center; font-size:19px; }
.contact-row small{ display:block; text-transform:uppercase; letter-spacing:.08em; font-size:11.5px; color:#9fb1c3; font-weight:600; }
.contact-row a,.contact-row div{ color:#fff; }
.kr-enquiry form{ padding:44px; background:#fff; height:100%; }
.kr-enquiry form h3{ font-size:20px; }
.kr-enquiry .form-control{ padding:13px 15px; border-color:#d5dce4; border-radius:6px; }
.kr-enquiry .form-control:focus{ border-color:var(--kr-orange); box-shadow:0 0 0 3px rgba(255,136,0,.15); }
@media(max-width:575.98px){ .kr-enquiry .info,.kr-enquiry form{ padding:28px 22px; } }

/* Footer */
.kr-footer{ background:#0e1822; color:#b7c3cf; font-size:14.5px; }
.kr-footer h4{ color:#fff; font-size:15px; margin-bottom:18px; padding-bottom:12px; border-bottom:2px solid rgba(255,136,0,.6); display:inline-block; }
.kr-footer a{ color:#dfe6ed; }
.kr-footer a:hover{ color:var(--kr-orange); }
.kr-footer ul{ list-style:none; padding:0; margin:0; }
.kr-footer ul li{ margin-bottom:9px; }
.kr-footer .bi{ color:var(--kr-orange); margin-right:8px; }
.kr-footer .copy{ border-top:1px solid rgba(255,255,255,.08); font-size:13.5px; }

/* Floating call (mobile) */
.kr-call-fab{ position:fixed; right:16px; bottom:16px; z-index:1030; width:56px; height:56px; border-radius:50%; background:var(--kr-orange); color:#fff; display:flex; align-items:center; justify-content:center; font-size:24px; box-shadow:0 10px 24px rgba(255,136,0,.45); }
.kr-call-fab:hover{ color:#fff; background:#e67700; }

:focus-visible{ outline:3px solid rgba(255,136,0,.6); outline-offset:2px; }
@media(prefers-reduced-motion:reduce){ *{ transition:none!important; } }

/* fixes after review */
.kr-strip .slogan{ justify-content:center; text-align:center; font-size:18px; letter-spacing:.02em; }
@media(min-width:992px){ .kr-strip .slogan{ margin-left:20px; } }
.about-img img{ max-height:440px; object-fit:contain; }
.kr-faq a, .section p a{ color:var(--kr-orange); font-weight:600; }
.kr-faq a:hover, .section p a:hover{ color:var(--kr-navy); }
.kr-enquiry{ background:#fff; border:1px solid var(--kr-line); box-shadow:0 24px 50px rgba(1,29,58,.10); }
.kr-footer .copy a{ color:#fff; }
.kr-hero .hero-points{ gap:14px 22px; }
@media(max-width:575.98px){
  .section{ padding:60px 0; }
  .kr-hero .container{ padding-top:44px; padding-bottom:48px; }
  .kr-hero .hero-badge{ left:10px; bottom:10px; }
  .about-img .exp{ right:10px; top:10px; padding:10px 14px; }
  .about-img .exp b{ font-size:26px; }
  .p-card .p-img{ height:140px; padding:12px; }
  .p-card .p-body{ padding:12px 12px 14px; }
  .p-card h3{ font-size:13px; }
  .p-card p{ font-size:12px; }
  .kr-strip .item{ font-size:13px; padding:14px 0; }
}

/* Desktop: open submenu on hover */
@media(min-width:992px){
  .kr-nav .dropdown .dropdown-menu{ display:block; opacity:0; visibility:hidden; transform:translateY(10px); transition:opacity .2s ease, transform .2s ease, visibility .2s; margin-top:0; top:100%; }
  .kr-nav .dropdown:hover > .dropdown-menu,
  .kr-nav .dropdown:focus-within > .dropdown-menu{ opacity:1; visibility:visible; transform:translateY(0); }
  .kr-nav .dropdown:hover > .dropdown-toggle{ color:var(--kr-orange); }
}

/* Tighter spacing between sections */
.section{ padding:60px 0; }
.section-sm{ padding:44px 0; }
.section .mb-5{ margin-bottom:2rem!important; }
.section-title{ margin-bottom:10px; }
.kr-hero .container{ padding-top:56px; padding-bottom:56px; }
@media(max-width:575.98px){
  .section{ padding:44px 0; }
  .section-sm{ padding:36px 0; }
  .kr-hero .container{ padding-top:36px; padding-bottom:40px; }
}

/* ===== Mobile responsive pass ===== */
@media(max-width:767.98px){
  .section-title{ font-size:22px; }
  .section .text-center.mb-5, .section .mb-5{ margin-bottom:1.25rem!important; }
  .eyebrow{ font-size:11.5px; margin-bottom:6px; }
  p{ font-size:14px; line-height:1.7; }

  /* Hero */
  .kr-hero:before{ width:150px; height:70px; left:-40px; }
  .kr-hero .tagline{ font-size:36px; margin-bottom:12px; }
  .kr-hero h1{ font-size:16px; margin-bottom:10px; }
  .kr-hero p.lead{ font-size:14px; margin-bottom:0; }
  .kr-hero .hero-points{ gap:8px; margin:18px 0 20px; justify-content:space-between; }
  .kr-hero .hero-points li{ flex-direction:column; text-align:center; gap:6px; font-size:12px; flex:1; }
  .kr-hero .hero-points .bi{ width:36px; height:36px; font-size:16px; }
  .kr-hero .hero-cta{ display:grid!important; grid-template-columns:1fr 1fr; gap:10px!important; }
  .kr-hero .hero-cta .btn{ padding:11px 10px; font-size:14px; }
  .kr-hero .row{ --bs-gutter-y:1.75rem; }
  .kr-hero .hero-img img{ border-radius:10px; }
  .kr-hero .hero-badge{ font-size:13px; padding:10px 12px; }

  /* Strip: three badges in one row, slogan below */
  .kr-strip .row > .col-6, .kr-strip .row > .col-12:not(:last-child){ flex:0 0 auto; width:33.333%; }
  .kr-strip .item{ flex-direction:column; text-align:center; gap:4px; font-size:11px; letter-spacing:.02em; padding:12px 4px; line-height:1.25; }
  .kr-strip .item .bi{ font-size:20px; }
  .kr-strip .slogan{ font-size:14px; padding:10px; }

  /* About */
  .about-img img{ max-height:260px; padding:12px!important; }
  .check-list{ grid-template-columns:1fr 1fr; gap:8px 12px; font-size:13.5px; margin:14px 0 20px; }
  .check-list li{ padding-left:22px; }
  .check-list li:before{ font-size:15px; }

  /* Why us: compact 2x2 */
  .why-item{ flex-direction:column; gap:10px; padding:14px; }
  .why-item .bi{ flex:0 0 auto; width:40px; height:40px; font-size:19px; }
  .why-item h3{ font-size:12.5px; margin-bottom:4px; }
  .why-item p{ font-size:11.5px; line-height:1.5; }
  .kr-why .row.g-5{ --bs-gutter-y:1.5rem; }

  /* Process: compact 2x2 */
  .step{ padding:20px 12px 16px; }
  .step .bi{ width:46px; height:46px; font-size:20px; margin-bottom:10px; }
  .step .num{ font-size:28px; top:8px; right:10px; }
  .step h3{ font-size:12.5px; margin-bottom:6px; }
  .step p{ font-size:11.5px; line-height:1.5; }

  /* Stats */
  .stat{ padding-left:12px; }
  .stat b{ font-size:28px; }
  .stat span{ font-size:13px; }

  /* Industries */
  .ind{ padding:12px; gap:10px; font-size:13px; line-height:1.3; }
  .ind .bi{ font-size:20px; }

  /* Areas */
  .area-link{ padding:12px; }
  .area-link b{ font-size:15px; }
  .area-link span{ font-size:12px; }

  /* FAQ */
  .kr-faq .row.g-5{ --bs-gutter-y:1rem; }
  .kr-faq .accordion-button{ font-size:12.5px; padding:14px 16px; }
  .kr-faq .accordion-body{ font-size:14px; }

  /* Enquiry */
  .contact-row{ margin-top:14px; }

  /* Footer */
  .kr-footer .row.g-4{ --bs-gutter-y:1.25rem; }
  .kr-footer .foot-products{ columns:2; column-gap:16px; }
  .kr-footer .foot-products li{ break-inside:avoid; font-size:13.5px; }
  .kr-footer .copy{ font-size:12.5px; text-align:center; padding-bottom:84px!important; }
}

/* Fix horizontal scroll: large g-5 gutters wider than container padding on small screens */
@media(max-width:991.98px){
  .row.g-5{ --bs-gutter-x:1.5rem; }
}

/* Honeypot + long email wrapping */
.kr-hp{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.contact-row a, .contact-row div{ overflow-wrap:anywhere; min-width:0; }

/* ===== Offcanvas mobile menu ===== */
.kr-nav .navbar-toggler{ border:0; padding:6px 10px; font-size:30px; line-height:1; color:var(--kr-navy); box-shadow:none; }
.kr-nav .navbar-toggler:focus{ box-shadow:0 0 0 3px rgba(255,136,0,.25); }
@media(max-width:991.98px){
  .kr-offcanvas{ width:300px!important; border-left:0; }
  .kr-offcanvas .offcanvas-header{ padding:16px 20px; border-bottom:1px solid var(--kr-line); }
  .kr-offcanvas .kr-oc-logo{ width:160px; height:auto; }
  .kr-offcanvas .offcanvas-body{ padding:8px 0 24px; display:flex; flex-direction:column; }
  .kr-offcanvas .navbar-nav .nav-link{ display:flex; align-items:center; gap:12px; padding:14px 22px!important; font-size:16px; font-weight:600; border-bottom:1px solid var(--kr-line); }
  .kr-offcanvas .navbar-nav .nav-link .bi{ color:var(--kr-orange); font-size:18px; width:20px; }
  .kr-offcanvas .navbar-nav .nav-link.active{ color:var(--kr-orange); background:rgba(255,136,0,.06); border-left:4px solid var(--kr-orange); padding-left:18px!important; }
  .kr-offcanvas .dropdown-toggle::after{ margin-left:auto; transition:transform .2s; }
  .kr-offcanvas .dropdown-toggle.show::after{ transform:rotate(180deg); }
  .kr-offcanvas .dropdown-menu{ position:static!important; transform:none!important; border:0; border-left:3px solid var(--kr-orange); border-radius:0; box-shadow:none; background:var(--kr-soft); margin:0; padding:6px 0; }
  .kr-offcanvas .dropdown-item{ padding:10px 22px 10px 52px; font-size:14.5px; color:var(--kr-ink); }
  .kr-offcanvas .kr-oc-cta{ padding:18px 22px 6px; }
  .kr-offcanvas .kr-oc-cta .btn{ width:100%; padding:12px!important; font-size:15px; }
  .kr-oc-contact{ margin-top:auto; padding:18px 22px 0; font-size:14px; display:flex; flex-direction:column; gap:12px; }
  .kr-oc-contact a, .kr-oc-contact p{ color:var(--kr-ink); margin:0; display:flex; gap:10px; overflow-wrap:anywhere; }
  .kr-oc-contact .bi{ color:var(--kr-orange); }
  .offcanvas-backdrop.show{ opacity:.55; }
}
@media(min-width:992px){
  .kr-offcanvas .offcanvas-header{ display:none; }
}

/* Mobile: smaller buttons + smaller call icon */
@media(max-width:767.98px){
  .btn{ padding:9px 16px; font-size:14px; border-radius:5px; }
  .btn .bi{ font-size:13px; }
  .kr-hero .hero-cta .btn{ padding:9px 8px; font-size:13.5px; }
  .kr-offcanvas .kr-oc-cta .btn{ padding:10px!important; font-size:14px; }
  .kr-call-fab{ width:44px; height:44px; font-size:18px; right:12px; bottom:12px; box-shadow:0 6px 16px rgba(255,136,0,.4); }
  .kr-footer .copy{ padding-bottom:64px!important; }
}
@media(max-width:991.98px){
  .kr-offcanvas .navbar-nav{ margin-left:0!important; width:100%; align-items:stretch!important; }
  .kr-offcanvas .navbar-nav .nav-item{ margin-left:0!important; }
}
.kr-call-fab{ z-index:1015; }
body.offcanvas-open .kr-call-fab, body:has(.offcanvas.show) .kr-call-fab{ display:none; }
/* Offcanvas: smaller menu text */
@media(max-width:991.98px){
  .kr-offcanvas .navbar-nav .nav-link{ font-size:14.5px; padding:12px 22px!important; gap:10px; }
  .kr-offcanvas .navbar-nav .nav-link.active{ padding-left:18px!important; }
  .kr-offcanvas .navbar-nav .nav-link .bi{ font-size:16px; }
  .kr-offcanvas .dropdown-item{ font-size:13.5px; padding:8px 22px 8px 48px; }
  .kr-oc-contact{ font-size:13px; }
}
/* Mobile: slimmer header bar and menu rows */
@media(max-width:991.98px){
  .kr-nav{ padding-top:0; padding-bottom:0; }
  .kr-nav .navbar-brand{ padding-top:8px!important; padding-bottom:8px!important; }
  .kr-nav .navbar-brand img{ width:150px; }
  .kr-nav .navbar-toggler{ font-size:26px; padding:4px 6px; }
  .kr-offcanvas .offcanvas-header{ padding:10px 18px; }
  .kr-offcanvas .kr-oc-logo{ width:140px; }
  .kr-offcanvas .navbar-nav .nav-link{ padding:10px 20px!important; }
  .kr-offcanvas .navbar-nav .nav-link.active{ padding-left:16px!important; }
  .kr-offcanvas .dropdown-item{ padding:7px 20px 7px 46px; }
  .kr-offcanvas .kr-oc-cta{ padding:14px 20px 4px; }
}
@media(max-width:991.98px){ .kr-oc-contact p, .kr-oc-contact a{ font-size:12px; line-height:1.5; } }


/* Desktop: buttons 2px smaller */
@media(min-width:768px){
  .btn{ font-size:14px; padding:10px 20px; }
  .btn-sm, .kr-nav .btn-sm{ font-size:12px; padding:8px 14px!important; }
  .btn .bi{ font-size:13px; }
}
