/* Imported from public/theme - used by Vite */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap');

:root{
  --navbar-height: 70px;
  --sidebar-width: 220px;
  --bg: #f8fbff;
  --panel-bg: #ffffff;
  --primary: #0d6efd; /* blue */
  --primary-600: #0b5ed7;
  --bronze: #b08d57;
  --bronze-600: #9a7744;
  --bronze-soft: #f7f1e8;
  --muted: #6b7280;
  --text: #071D2B;
  --accent-white: #ffffff;
  --surface: rgba(13,110,253,0.06);
  --border: rgba(13,110,253,0.12);
  --card-radius: 12px;
  --shadow-sm: 0 6px 18px rgba(11,37,64,0.06);
}

html,body{height:100%;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Navbar */
.navbar-top{
  position:fixed;
  top:0;left:0;right:0;
  height:var(--navbar-height);
  display:flex;align-items:center;
  padding:0 18px;
  background:linear-gradient(90deg,var(--primary),var(--primary-600));
  color:var(--accent-white);
  border-bottom: 1px solid rgba(255,255,255,0.06);
  z-index:1100;
}
.navbar-top.navbar-top-transparent{
  background:linear-gradient(180deg, rgba(5,16,38,0.72) 0%, rgba(5,16,38,0.32) 58%, rgba(5,16,38,0) 100%);
  border-bottom:none;
}
.navbar-shell{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.navbar-brand-wrap{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{
  width:42px;
  height:42px;
  object-fit:contain;
  flex:0 0 auto;
  background:#ffffff;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.5);
  padding:4px;
  box-shadow:0 4px 10px rgba(0,0,0,0.2);
}
.brand-header{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.brand-header strong{font-weight:800;letter-spacing:0.05em;color:var(--accent-white);font-size:0.94rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand-header span{font-weight:500;color:rgba(255,255,255,0.85);font-size:0.8rem}
.navbar-text{color:rgba(255,255,255,0.9);font-size:0.9rem}
.navbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.header-user-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,0.12);color:#fff;font-weight:600;white-space:nowrap}

.profile-header-links{display:flex;align-items:center;gap:24px}
.profile-header-links a{
  color:#ffffff;
  text-decoration:none;
  font-weight:600;
  font-size:0.98rem;
  text-shadow:0 2px 8px rgba(0,0,0,0.32);
}
.profile-header-links a:hover{color:#f4dfbd}

/* Sidebar */
.sidebar-overlay{position:fixed;inset:var(--navbar-height) 0 0 0;background:rgba(7,29,43,0.45);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:1085}
.sidebar-fixed{position:fixed;left:0;top:var(--navbar-height);bottom:0;width:var(--sidebar-width);padding:18px 12px;background:linear-gradient(180deg,var(--primary-600),var(--primary));color:var(--accent-white);border-right:1px solid rgba(255,255,255,0.04);overflow:auto;z-index:1090}
.sidebar-mobile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:0 4px 12px;border-bottom:1px solid rgba(255,255,255,0.12)}
.sidebar-menu{list-style:none;padding:0;margin:0}
.sidebar-menu a{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;color:rgba(255,255,255,0.95);text-decoration:none;font-weight:600;transition:all .18s}
.sidebar-menu a:hover{background:rgba(255,255,255,0.06);transform:translateX(6px)}
.sidebar-menu a.active{background:var(--accent-white);color:var(--primary);box-shadow:var(--shadow-sm)}
.sidebar-group-details{margin:0}
.sidebar-group-details > summary{list-style:none;appearance:none;-webkit-appearance:none;display:flex}
.sidebar-group-details > summary::marker{content:""}
.sidebar-group-details > summary::-webkit-details-marker{display:none}
.sidebar-menu a,.sidebar-group-toggle{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;color:rgba(255,255,255,0.95);text-decoration:none;font-weight:600;transition:all .18s}
.sidebar-group-toggle{width:100%;justify-content:flex-start;border:0;background:transparent;text-align:left;cursor:pointer;user-select:none;outline:none;box-shadow:none}
.sidebar-group-toggle:focus,.sidebar-group-toggle:focus-visible{outline:none;box-shadow:none}
.sidebar-menu a:hover,.sidebar-group-toggle:hover{background:rgba(255,255,255,0.06);transform:translateX(6px)}
.sidebar-menu a.active,.sidebar-group-details[open] > .sidebar-group-toggle,.sidebar-group-toggle.active{background:var(--accent-white);color:var(--primary);box-shadow:var(--shadow-sm)}

/* Stronger enforcement so parent toggle visually matches active sidebar links */
.sidebar-group-toggle.active,
.sidebar-group-toggle[aria-expanded="true"]{
  background:var(--accent-white) !important;
  color:var(--primary) !important;
  box-shadow:var(--shadow-sm) !important;
  border:1px solid rgba(255,255,255,0.18) !important;
}
.sidebar-group-toggle.active .sidebar-group-label span,
.sidebar-group-toggle[aria-expanded="true"] .sidebar-group-label span{
  color:var(--primary) !important;
}
.sidebar-group-toggle.active i,
.sidebar-group-toggle[aria-expanded="true"] i{
  color:var(--primary) !important;
}
.sidebar-group-toggle .sidebar-group-label{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto;pointer-events:none}
.sidebar-group-toggle .sidebar-group-label i{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;font-size:1.05rem}
.sidebar-group-toggle .sidebar-group-label span{display:inline-block;color:inherit}
.sidebar-submenu-wrap{padding-top:6px}
.sidebar-submenu{list-style:none;padding:8px 0 0 16px;margin:0;display:grid;gap:6px}
.sidebar-submenu a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;color:rgba(255,255,255,0.92);text-decoration:none;font-weight:600;font-size:0.92rem;border:1px solid transparent;transition:all .18s}
.sidebar-submenu a:hover{background:rgba(255,255,255,0.06);transform:translateX(4px)}
.sidebar-submenu a.active{background:rgba(255,255,255,0.96);color:var(--primary);border-color:rgba(255,255,255,0.2);box-shadow:var(--shadow-sm)}
.sidebar-menu i{font-size:1.05rem}
.sidebar-menu-button{background:var(--accent-white);color:var(--primary);border-radius:10px;padding:10px 12px;font-weight:700;border:none;width:100%}

/* smooth transitions for collapse/expand */
.sidebar-fixed{transition:width .18s ease, transform .18s ease}
.dashboard-main{transition:margin-left .18s ease, padding .18s ease}

/* Collapsed sidebar (icons-only) */
@media (min-width:993px){
  body.sidebar-collapsed .sidebar-fixed{width:72px}
  body.sidebar-collapsed .dashboard-main{margin-left:72px}
  body.sidebar-collapsed .sidebar-menu a{justify-content:center}
  body.sidebar-collapsed .sidebar-menu a span{display:none}
  body.sidebar-collapsed .sidebar-group-toggle{justify-content:center;padding:8px 12px}
  body.sidebar-collapsed .sidebar-group-toggle .sidebar-group-label span{display:none}
  body.sidebar-collapsed .sidebar-submenu-wrap{display:none!important}
  body.sidebar-collapsed .sidebar-menu i{font-size:1.2rem}
  body.sidebar-collapsed .sidebar-mobile-header{display:none}
}

/* Main content */
.main-content{margin-top:var(--navbar-height);padding:28px}
.dashboard-main{margin-left:var(--sidebar-width)}
.company-main{margin-top:0;padding:0}
.company-main .cp-layout{padding-top:0}

/* Cards and hero */
.card, .hero, .chart-container, .metric-card{background:var(--panel-bg);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);padding:20px;border:1px solid var(--border)}
.hero{padding:28px;margin-bottom:22px}
.hero h1{font-size:2rem;margin:0 0 8px}
.hero p{color:var(--muted);margin:0}

/* Landing page */
.landing-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,0.9fr);gap:24px;align-items:stretch;padding:24px;border-radius:24px;background:linear-gradient(135deg,rgba(13,110,253,0.12),rgba(13,110,253,0.03) 60%,#ffffff 100%);border:1px solid rgba(13,110,253,0.12);box-shadow:var(--shadow-sm)}
.landing-hero-copy,.landing-hero-panel{min-width:0}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(13,110,253,0.1);color:var(--primary);font-size:0.78rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}
.landing-hero h1{margin:14px 0 12px;font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.02;font-weight:900;letter-spacing:-0.04em;color:var(--text)}
.landing-lead{font-size:1.05rem;line-height:1.8;color:var(--muted);max-width:60ch;margin:0}
.landing-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.landing-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.stat-card{padding:16px;border-radius:18px;background:#fff;border:1px solid var(--border);box-shadow:0 10px 22px rgba(11,37,64,0.05)}
.stat-card strong{display:block;font-size:1.3rem;font-weight:900;color:var(--primary)}
.stat-card span{display:block;margin-top:4px;color:var(--muted);font-weight:600;font-size:0.92rem}
.landing-hero-panel{display:grid;gap:14px}
.profile-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-card{padding:18px;border-radius:18px;background:#fff;border:1px solid var(--border);box-shadow:0 10px 22px rgba(11,37,64,0.05)}
.profile-card i{display:inline-flex;width:44px;height:44px;border-radius:12px;align-items:center;justify-content:center;background:var(--surface);color:var(--primary);font-size:1.2rem;margin-bottom:12px}
.profile-card strong,.feature-card h3,.mission-card h3{display:block;font-size:1.02rem;font-weight:800;margin-bottom:6px;color:var(--text)}
.profile-card span,.feature-card p,.mission-card li,.mission-card span{color:var(--muted);line-height:1.7}
.profile-card-highlight{padding:22px;background:linear-gradient(180deg,#fff,rgba(13,110,253,0.04));}
.profile-card-title{font-size:0.85rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--primary);margin-bottom:8px}

.landing-section{margin-top:24px;padding:24px;border-radius:22px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.landing-section-alt{background:linear-gradient(180deg,#fff,rgba(13,110,253,0.03))}
.section-heading{max-width:760px;margin-bottom:18px}
.section-heading h2{font-size:clamp(1.5rem,3vw,2.25rem);margin:10px 0 8px;font-weight:900;letter-spacing:-0.03em}
.section-heading p{margin:0;color:var(--muted);line-height:1.8}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.feature-card{padding:22px;border-radius:18px;background:linear-gradient(180deg,#fff,rgba(13,110,253,0.03));border:1px solid var(--border);box-shadow:0 10px 22px rgba(11,37,64,0.05)}
.feature-icon{width:52px;height:52px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);color:var(--primary);font-size:1.35rem;margin-bottom:14px}
.mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mission-card{padding:22px;border-radius:18px;background:#fff;border:1px solid var(--border);box-shadow:0 10px 22px rgba(11,37,64,0.05)}
.mission-card span{display:inline-block;margin-bottom:10px;font-size:0.8rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--primary)}
.mission-card ul{margin:0;padding-left:18px}
.landing-cta{margin-top:24px;padding:24px;border-radius:22px;background:linear-gradient(90deg,var(--primary),var(--primary-600));color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;box-shadow:0 18px 38px rgba(13,110,253,0.25)}
.landing-cta .eyebrow{background:rgba(255,255,255,0.14);color:#fff}
.landing-cta h2{margin:12px 0 8px;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:900;letter-spacing:-0.03em;color:#fff}
.landing-cta p{margin:0;max-width:60ch;color:rgba(255,255,255,0.9);line-height:1.8}
.landing-cta .btn-outline-modern{border-color:rgba(255,255,255,0.28);color:#fff;background:transparent}
.landing-cta .btn-outline-modern:hover{background:rgba(255,255,255,0.12)}

/* Metrics */
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.metric-card{padding:18px}
.metric-icon{width:44px;height:44px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);margin-bottom:10px}
.metric-value{font-size:1.6rem;font-weight:800}
.metric-label{color:var(--muted);font-weight:700}

/* Buttons */
.btn-modern{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;border:none;background:var(--primary);color:var(--accent-white);font-weight:700;cursor:pointer;box-shadow:0 6px 16px rgba(13,110,253,0.12);transition:transform .12s}
.btn-modern:hover{transform:translateY(-2px);background:var(--primary-600)}
.btn-outline-modern{background:transparent;border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:10px}

/* Compatibility: restore previous .btn-custom used across views */
.btn-custom{border:2px solid var(--border);border-radius:6px;padding:8px 14px;background:var(--panel-bg);color:var(--text);font-weight:600;font-size:0.9rem;cursor:pointer;transition:all .12s}
.btn-custom:hover{border-color:var(--primary);background:rgba(13,110,253,0.06);color:var(--primary)}

/* Sidebar toggle button (mobile) */
.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,0.12);border-radius:8px;background:transparent;color:var(--accent-white);padding:8px 10px;line-height:1}
.sidebar-toggle:hover{background:rgba(255,255,255,0.06);}

/* Tables */
.table{background:transparent;border-collapse:collapse;width:100%}
.table th{background:transparent;color:var(--text);font-weight:700;padding:12px;border-bottom:1px solid rgba(15,23,42,0.06)}
.table td{padding:12px;border-bottom:1px solid rgba(15,23,42,0.04);color:var(--text)}

/* Alerts */
.status-alert{padding:14px;border-radius:10px;border:1px solid rgba(13,110,253,0.14);background:rgba(13,110,253,0.04);color:var(--primary)}
.errors{padding:14px;border-radius:10px;border:1px solid rgba(220,53,69,0.12);background:rgba(220,53,69,0.03);color:#931b2d}

/* Responsive */
@media (max-width:992px){
  .sidebar-fixed{transform:translateX(-100%)}
  .sidebar-overlay{pointer-events:auto}
  .dashboard-main{margin-left:0}
  .metrics-grid{grid-template-columns:repeat(2,1fr)}
  .sidebar-toggle{display:inline-flex !important}
  body.sidebar-open .sidebar-fixed{transform:translateX(0)}
  body.sidebar-open .sidebar-overlay{opacity:1}
  .landing-hero,.feature-grid,.mission-grid{grid-template-columns:1fr}
  .profile-card-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:576px){
  .sidebar-fixed{width:min(88vw, 280px)}
  .dashboard-main{margin-left:0;padding:12px}
  .navbar-top{padding:0 12px}
  .brand-logo{width:36px;height:36px}
  .brand-header span{display:none}
  .landing-hero,.landing-section,.landing-cta{padding:18px;border-radius:18px}
  .landing-stats,.profile-card-grid{grid-template-columns:1fr}
}

/* Small utilities */
.text-muted{color:var(--muted)}
.p-0{padding:0}
.mb-2{margin-bottom:8px}

/* Company profile skeleton (corporate energy inspired) */
.cp-layout{
  position:relative;
  width:100%;
  margin-left:0;
  margin-right:0;
  padding:0 0 24px;
}

.cp-layout::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 6%, rgba(13,110,253,0.12), transparent 38%),
    radial-gradient(circle at 92% 28%, rgba(176,141,87,0.16), transparent 42%);
  pointer-events:none;
}

.cp-container{
  position:relative;
  z-index:1;
  width:100%;
  margin-inline:0;
  display:grid;
  gap:16px;
}

.company-main .cp-quick-nav{display:none}

.company-main .cp-hero{
  border-radius:0;
  min-height:100vh;
  padding:0;
  display:block;
  background:transparent !important;
  box-shadow:none !important;
}

/* Ensure hero and video wrappers have explicit height so iframe can fill it */
.company-main .cp-hero{min-height:100vh !important;height:100vh !important}
.company-main .cp-hero .cp-hero-video-wrap{position:absolute !important;inset:0 !important;height:100% !important;width:100% !important;z-index:0 !important}
.company-main .cp-hero .cp-hero-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;opacity:1 !important;border:0 !important}

/* Full-bleed hero: stretch to left and right edges of the viewport */
.company-main .cp-hero{
  width:100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-radius:0 !important;
  padding:0 !important;
}

@media (max-width: 992px) {
  .company-main .cp-hero{margin-left:0 !important; margin-right:0 !important; width:100% !important}
}

/* ensure hero panel is transparent so video shows through */
.company-main .cp-hero-panel{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  color:rgba(255,255,255,0.95);
}

.cp-quick-nav{
  position:sticky;
  top:calc(var(--navbar-height) + 10px);
  z-index:20;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border-radius:14px;
  background:rgba(255,255,255,0.82);
  border:1px solid rgba(13,110,253,0.16);
  backdrop-filter:blur(10px);
  box-shadow:0 10px 24px rgba(11,37,64,0.07);
}

.cp-quick-nav a{
  text-decoration:none;
  color:var(--text);
  font-size:0.83rem;
  font-weight:700;
  padding:8px 11px;
  border-radius:9px;
  border:1px solid transparent;
  transition:all .16s ease;
}

.cp-quick-nav a:hover{
  color:#0a3f92;
  border-color:rgba(176,141,87,0.35);
  background:rgba(176,141,87,0.12);
}

.cp-hero{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(280px,0.7fr);
  gap:20px;
  padding:28px;
  border-radius:24px;
  background:linear-gradient(120deg,#0a3f92 0%,#1162d8 56%,#b08d57 100%);
  color:#ffffff;
  box-shadow:0 18px 44px rgba(6,28,59,0.25);
}

/* YouTube background video for hero */
.cp-hero-video-wrap{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  /* don't rely on the youtube thumbnail as background; iframe should cover */
  background-image:none !important;
}
.cp-hero-video{
  position:absolute;
  top:50% !important;
  left:50% !important;
  width:120% !important;
  height:120% !important;
  min-width:120% !important;
  min-height:120% !important;
  transform:translate(-50%,-50%) scale(1.05) !important;
  opacity:1 !important;
  border:0 !important;
}
.cp-hero-video-overlay{
  position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,28,59,0.25),rgba(6,28,59,0.38));z-index:1;
}
.cp-hero > *{position:relative;z-index:2}

.cp-hero-glow{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(20px);
  opacity:0.26;
  pointer-events:none;
}

.cp-hero-glow-red{background:#b08d57;top:-140px;right:-60px;}
.cp-hero-glow-blue{background:#0d6efd;bottom:-180px;left:-120px;}

.cp-hero-content,
.cp-hero-panel{position:relative;z-index:1}

.company-main .cp-hero-content{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:62%;
  padding:120px 44px 56px;
}

/* Desktop: place logo left of text */
@media (min-width: 993px) {
  .company-main .cp-hero-content{
    flex-direction:row !important;
    align-items:center !important;
    gap:20px !important;
    padding:120px 44px 56px !important;
    justify-content:flex-start !important;
  }
  .company-main .cp-hero .cp-hero-logo{width:120px !important}
  .company-main .cp-hero .cp-hero-logo-wrap{display:flex !important;align-items:center !important}
  .company-main .cp-hero .cp-hero-text-wrap{text-align:left !important}
}

/* Force video visible and remove static thumbnail if present */
.company-main .cp-hero .cp-hero-video-wrap{background-image:none !important;}
.company-main .cp-hero .cp-hero-video{opacity:1 !important;z-index:0 !important}

.cp-hero-logo{
  width:90px;
  height:auto;
  object-fit:contain;
  margin-bottom:8px;
  background:#ffffff;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.6);
  padding:8px;
  box-shadow:0 10px 24px rgba(0,0,0,0.22);
}

.cp-chip{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  font-size:0.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.08em;
  background:rgba(255,255,255,0.16);
  color:#ffffff;
}

.cp-hero h1{
  margin:12px 0 10px;
  font-size:clamp(2rem,4.2vw,3.6rem);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-0.03em;
}

.cp-hero p{
  margin:0;
  max-width:62ch;
  color:rgba(255,255,255,0.92);
  line-height:1.8;
}

.cp-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

.cp-btn-light{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border-radius:10px;
  padding:10px 14px;
  font-weight:700;
  color:#ffffff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,0.3);
  background:rgba(255,255,255,0.08);
}

.cp-btn-light:hover{background:rgba(255,255,255,0.18);color:#ffffff}

.cp-hero-panel{
  background:rgba(0,0,0,0.16);
  border:1px solid rgba(255,255,255,0.24);
  border-radius:16px;
  padding:18px;
}

.cp-hero-panel h3{margin:0 0 10px;font-size:1.02rem;font-weight:800}
.cp-hero-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.cp-hero-panel li{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,0.9)}

.cp-section{
  margin-top:48px;
  padding:48px 44px;
  border-radius:0;
  background:#ffffff;
  border:none;
  box-shadow:none;
  backdrop-filter:none;
}

/* alternate blue tint for every other cp-section (based on section order) */
.cp-container > section.cp-section:nth-of-type(odd){
  background: rgba(13,110,253,0.04);
}

.cp-container > section.cp-section:nth-of-type(odd) .cp-heading h2,
.cp-container > section.cp-section:nth-of-type(odd) .cp-heading p{
  color:var(--text);
}

.cp-heading{margin-bottom:16px}

.cp-heading .cp-chip{
  background:linear-gradient(90deg,#0d6efd,#b08d57);
  color:#ffffff;
}

.cp-heading h2{margin:10px 0 6px;font-size:clamp(1.4rem,3vw,2rem);font-weight:900;letter-spacing:-0.02em}
.cp-heading p{margin:0;color:var(--muted);line-height:1.8}

.cp-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cp-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}

.cp-card{
  padding:0;
  border-radius:0;
  border:none;
  background:transparent;
  box-shadow:none;
  transition:none;
}

.cp-card h3{margin:0 0 8px;font-size:1.02rem;font-weight:800;color:var(--text)}
.cp-card p{margin:0;color:var(--muted);line-height:1.7}

.cp-card-accent{
  background:transparent;
}

.cp-card-accent span{
  display:inline-flex;
  margin-bottom:6px;
  font-size:0.78rem;
  font-weight:800;
  color:var(--bronze-600);
  letter-spacing:0.06em;
}

/* Custom Profile Styles */
.cp-card-hover {
  background: #ffffff;
  padding: 28px;
  border-radius: 16px;
  border: 1px solid rgba(11,37,64,0.06);
  box-shadow: 0 10px 24px rgba(11,37,64,0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.cp-card-hover:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.08);
}
.cp-card-hover h3 {
  margin: 0 0 16px;
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--text);
}

.cp-org-wrap{
  padding:0;
  border-radius:0;
  background:transparent;
  border:none;
}

.cp-org-top,
.cp-org-node{
  text-align:center;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(176,141,87,0.35);
  background:#ffffff;
  font-weight:700;
}

.cp-org-top{max-width:280px;margin:0 auto}
.cp-org-line{height:28px;width:2px;background:rgba(176,141,87,0.45);margin:0 auto}
.cp-org-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

.cp-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}

.cp-gallery-item{
  min-height:160px;
  border-radius:0;
  border:none;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  color:var(--text);
  background:transparent;
}

.cp-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}

.cp-step{
  padding:6px 0;
  border-radius:0;
  background:transparent;
  border:none;
  box-shadow:none;
  display:flex;
  align-items:center;
  gap:12px;
}

.cp-step strong{
  width:28px;
  height:28px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--bronze);
  color:#ffffff;
  font-size:0.86rem;
}

.cp-step span{font-weight:700;color:var(--text);line-height:1.5}

.cp-contact{
  background:linear-gradient(135deg,#f7fbff 0%,#ffffff 55%,#f7f1e8 100%);
}

.cp-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}

.cp-contact-item{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--text);
  background:#ffffff;
  border:1px solid var(--border);
  border-radius:14px;
  padding:14px;
  transition:transform .16s ease, box-shadow .16s ease;
}

.cp-contact-item:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(11,37,64,0.11);
}

.cp-contact-item i{
  width:40px;
  height:40px;
  border-radius:11px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  background:linear-gradient(135deg,#0d6efd,#b08d57);
}

.cp-contact-item small{display:block;color:var(--muted);font-size:0.78rem}
.cp-contact-item strong{display:block;margin-top:2px;font-size:0.97rem}

/* Bento Grid Improvements */
.cp-bento-hero {
  background: linear-gradient(135deg, #061c3d 0%, #0d6efd 100%);
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  box-shadow: 0 15px 35px rgba(6, 28, 61, 0.25);
}
.cp-bento-hero:hover {
  transform: translateY(-5px) scale(1.01);
  box-shadow: 0 20px 45px rgba(13, 110, 253, 0.25);
}

.cp-bento-card {
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid rgba(13, 110, 253, 0.08) !important;
}
.cp-bento-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(11, 37, 64, 0.1) !important;
  border-color: rgba(13, 110, 253, 0.2) !important;
}

.cp-bento-card-glass {
  backdrop-filter: blur(8px);
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
}

.cp-bento-card-accent {
  position: relative;
  overflow: hidden;
}
.cp-bento-card-accent::after {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
  pointer-events: none;
}

.cp-btn-hover {
  transition: all 0.3s ease;
}
.cp-btn-hover:hover {
  transform: scale(1.05);
  box-shadow: 0 5px 15px rgba(0,0,0,0.2) !important;
}

@media (max-width:992px){
  .profile-header-links{display:none !important}
  .cp-quick-nav{top:calc(var(--navbar-height) + 8px)}
  .cp-hero{grid-template-columns:1fr}
  .cp-grid-3,.cp-gallery-grid,.cp-process,.cp-org-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:576px){
  .company-main .cp-hero{min-height:80vh}
  .company-main .cp-hero-content{max-width:100%;padding:96px 18px 30px;min-height:80vh}
  .cp-layout{padding:4px 0 16px}
  .cp-quick-nav{padding:8px}
  .cp-quick-nav a{font-size:0.76rem;padding:7px 9px}
  .cp-hero-logo{width:72px}
  .cp-hero,.cp-section{padding:18px;border-radius:16px}
  .cp-grid-2,.cp-grid-3,.cp-gallery-grid,.cp-process,.cp-contact-grid,.cp-org-grid{grid-template-columns:1fr}
}

/* End of theme */
