/* =====================================================================
   PKC Premium design layer
   A calm, editorial look on top of the app. Content is untouched.
   Colours come from the admin panel theme (--primary, --gold ...),
   so changing colours in Super Admin still works.
   Turn off: Super Admin > Settings > Layout > "Premium design".
   ===================================================================== */
html.pkc-site.pkc-premium {
  --pk-ink: #16201b;
  --pk-ink-2: #45524b;
  --pk-ink-3: #6b766f;
  --pk-paper: #ffffff;
  --pk-paper-2: #f6f5f1;
  --pk-line: #e5e2d9;
  --pk-line-dark: rgba(255, 255, 255, .12);
  --pk-deep: var(--primary-dark, #0b2417);
  --pk-brand: var(--primary, #1a6b3c);
  --pk-accent: var(--gold, #c9a227);
  --pk-radius: 6px;
  --pk-radius-lg: 10px;
  --pk-section: clamp(56px, 6.5vw, 128px);
  --pk-gap: clamp(16px, 1.6vw, 32px);
  --font-bn-heading: "Noto Serif Bengali", "Tiro Bangla", serif;
  --font-bn-body: "Hind Siliguri", "Noto Sans Bengali", sans-serif;
  scroll-behavior: smooth;
}

/* ---------- large screens and TVs: everything scales together ---------- */
@media (min-width: 1920px) { html.pkc-site.pkc-premium { font-size: 17px; } }
@media (min-width: 2400px) { html.pkc-site.pkc-premium { font-size: 20px; } }
@media (min-width: 3200px) { html.pkc-site.pkc-premium { font-size: 26px; } }
html.pkc-site.pkc-premium .max-w-7xl { max-width: min(92vw, 80rem) !important; }
html.pkc-site.pkc-premium .max-w-6xl { max-width: min(92vw, 72rem) !important; }

/* ---------- base ---------- */
html.pkc-site.pkc-premium body {
  background: var(--pk-paper) !important;
  color: var(--pk-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  line-height: 1.7;
}
html.pkc-site.pkc-premium #root ::selection { background: var(--pk-brand); color: #fff; }

/* No icons, emoji boxes, glows, textures or moving decoration */
html.pkc-site.pkc-premium #root svg.lucide:not(.pkc-keep-icon),
html.pkc-site.pkc-premium .pkc-empty-deco { display: none !important; }
html.pkc-site.pkc-premium #root [class~="blur-3xl"],
html.pkc-site.pkc-premium #root [class~="blur-2xl"],
html.pkc-site.pkc-premium #root [class*=" blur-[1"],
html.pkc-site.pkc-premium #root [class^="blur-[1"],
html.pkc-site.pkc-premium #root .pkc-texture { display: none !important; }
html.pkc-site.pkc-premium:not(.pkc-3d) #root *,
html.pkc-site.pkc-premium:not(.pkc-3d) #root *::before,
html.pkc-site.pkc-premium:not(.pkc-3d) #root *::after {
  text-shadow: none !important;
}
html.pkc-site.pkc-premium #root [class*="animate-pulse"],
html.pkc-site.pkc-premium #root [class*="animate-bounce"],
html.pkc-site.pkc-premium #root [class*="animate-ping"],
html.pkc-site.pkc-premium #root [class*="animate-spin"]:not(button *),
html.pkc-site.pkc-premium #root [class*="animate-float"] { animation: none !important; }
html.pkc-site.pkc-premium #root [class*="animate-ping"] { display: none !important; }

/* ---------- typography ---------- */
html.pkc-site.pkc-premium #root h1,
html.pkc-site.pkc-premium #root h2,
html.pkc-site.pkc-premium #root h3 {
  font-family: var(--font-bn-heading) !important;
  letter-spacing: -0.005em;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}
html.pkc-site.pkc-premium #root h1 { font-size: clamp(2rem, 1.3rem + 2.6vw, 4rem) !important; }
html.pkc-site.pkc-premium #root h2 { font-size: clamp(1.6rem, 1.15rem + 1.5vw, 2.75rem) !important; }
html.pkc-site.pkc-premium #root h3 { font-size: clamp(1.1rem, 1rem + .45vw, 1.45rem) !important; }
html.pkc-site.pkc-premium #root p { line-height: 1.8; }
html.pkc-site.pkc-premium #root [class*="bg-clip-text"] {
  background: none !important; -webkit-text-fill-color: currentColor !important; color: var(--pk-brand) !important;
}
html.pkc-site.pkc-premium #root :is(.pkc-dark, .pkc-hero) [class*="bg-clip-text"] { color: var(--pk-accent) !important; }

/* small labels above headings: plain, quiet text instead of pills */
html.pkc-site.pkc-premium #root .pkc-eyebrow {
  background: none !important; border: 0 !important; box-shadow: none !important;
  padding: 0 !important; border-radius: 0 !important;
  font-size: .8rem !important; font-weight: 600 !important; letter-spacing: .08em;
  color: var(--pk-brand) !important; opacity: 1;
}
html.pkc-site.pkc-premium #root .pkc-dark .pkc-eyebrow { color: var(--pk-accent) !important; }

/* ---------- sections: one rhythm, two calm backgrounds ---------- */
html.pkc-site.pkc-premium #root section.pkc-sec {
  padding-top: var(--pk-section) !important;
  padding-bottom: var(--pk-section) !important;
  background-image: none !important;
  border: 0 !important;
}
html.pkc-site.pkc-premium #root .pkc-light { background-color: var(--pk-paper) !important; color: var(--pk-ink); }
html.pkc-site.pkc-premium #root .pkc-light.pkc-alt { background-color: var(--pk-paper-2) !important; }
html.pkc-site.pkc-premium #root .pkc-dark { background-color: var(--pk-deep) !important; color: #f3f1ea; }
html.pkc-site.pkc-premium #root .pkc-light :is(h1, h2, h3, h4) { color: var(--pk-ink) !important; }
html.pkc-site.pkc-premium #root .pkc-dark :is(h1, h2, h3, h4) { color: #fff !important; }

/* colourful text becomes ink / brand on light, soft white on dark */
html.pkc-site.pkc-premium #root .pkc-light :is([class*="text-amber-"], [class*="text-orange-"], [class*="text-yellow-"], [class*="text-rose-"], [class*="text-pink-"], [class*="text-red-"], [class*="text-purple-"], [class*="text-violet-"], [class*="text-indigo-"], [class*="text-blue-"], [class*="text-sky-"], [class*="text-cyan-"], [class*="text-teal-"], [class*="text-emerald-"], [class*="text-green-"], [class*="text-lime-"], [class*="text-fuchsia-"]) {
  color: var(--pk-brand) !important;
}
html.pkc-site.pkc-premium #root .pkc-light :is(p, li, span)[class*="text-gray-"],
html.pkc-site.pkc-premium #root .pkc-light :is(p, li, span)[class*="text-slate-"] { color: var(--pk-ink-2) !important; }
html.pkc-site.pkc-premium #root .pkc-dark :is([class*="text-amber-"], [class*="text-orange-"], [class*="text-yellow-"], [class*="text-rose-"], [class*="text-pink-"], [class*="text-red-"], [class*="text-purple-"], [class*="text-violet-"], [class*="text-indigo-"], [class*="text-blue-"], [class*="text-sky-"], [class*="text-cyan-"], [class*="text-teal-"], [class*="text-emerald-"], [class*="text-green-"], [class*="text-lime-"], [class*="text-fuchsia-"], [class*="text-gold"]) {
  color: rgba(255, 255, 255, .82) !important;
}

/* ---------- cards ---------- */
html.pkc-site.pkc-premium #root .pkc-card {
  border-radius: var(--pk-radius-lg) !important;
  box-shadow: none !important;
  background-image: none !important;
  transform: none !important;
  backdrop-filter: none !important;
}
html.pkc-site.pkc-premium #root .pkc-light .pkc-card {
  background-color: #fff !important;
  border: 1px solid var(--pk-line) !important;
}
html.pkc-site.pkc-premium #root .pkc-light.pkc-alt .pkc-card { background-color: #fff !important; }
html.pkc-site.pkc-premium #root .pkc-dark .pkc-card {
  background-color: rgba(255, 255, 255, .035) !important;
  border: 1px solid var(--pk-line-dark) !important;
}
html.pkc-site.pkc-premium #root .pkc-card:hover { transform: none !important; }
html.pkc-site.pkc-premium #root .pkc-light .pkc-card:hover { border-color: #cfcabd !important; }
html.pkc-site.pkc-premium #root .pkc-dark .pkc-card:hover { border-color: rgba(255, 255, 255, .24) !important; }

/* tinted chips / badges become simple outlined labels */
html.pkc-site.pkc-premium #root .pkc-chip {
  background: transparent !important; box-shadow: none !important;
  border: 1px solid currentColor !important; border-radius: 999px !important;
  opacity: .9;
}

/* shadows and glows everywhere (not on photos' overlay) */
html.pkc-site.pkc-premium #root [class*="shadow-"]:not([id="main-site-header"]):not(.pkc-keep-shadow) { box-shadow: none !important; }
html.pkc-site.pkc-premium #root [class*="hover:-translate-y"],
html.pkc-site.pkc-premium #root [class*="hover:scale"]:not(img) { transform: none !important; }

/* rounded corners: one consistent, restrained radius */
html.pkc-site.pkc-premium #root [class*="rounded-3xl"],
html.pkc-site.pkc-premium #root [class*="rounded-2xl"],
html.pkc-site.pkc-premium #root [class*="rounded-[2"],
html.pkc-site.pkc-premium #root [class*="rounded-[3"] { border-radius: var(--pk-radius-lg) !important; }
html.pkc-site.pkc-premium #root img { border-radius: inherit; }

/* ---------- buttons ---------- */
html.pkc-site.pkc-premium #root a.pkc-btn,
html.pkc-site.pkc-premium #root button.pkc-btn {
  border-radius: var(--pk-radius) !important;
  box-shadow: none !important;
  background-image: none !important;
  font-weight: 600 !important;
  letter-spacing: .01em;
  padding: .8em 1.6em !important;
  transition: background-color .2s, color .2s, border-color .2s !important;
}
html.pkc-site.pkc-premium #root a.pkc-btn:hover,
html.pkc-site.pkc-premium #root button.pkc-btn:hover { transform: none !important; }
html.pkc-site.pkc-premium #root .pkc-btn-solid {
  background-color: var(--pk-brand) !important; color: #fff !important; border: 1px solid var(--pk-brand) !important;
}
html.pkc-site.pkc-premium #root .pkc-btn-solid:hover { background-color: var(--pk-deep) !important; border-color: var(--pk-deep) !important; }
html.pkc-site.pkc-premium #root :is(.pkc-dark, .pkc-hero) .pkc-btn-solid {
  background-color: #fff !important; color: var(--pk-deep) !important; border-color: #fff !important;
}
html.pkc-site.pkc-premium #root :is(.pkc-dark, .pkc-hero) .pkc-btn-solid:hover { background-color: #ece9df !important; }
html.pkc-site.pkc-premium #root .pkc-btn-ghost {
  background: transparent !important; border: 1px solid currentColor !important;
}

/* ---------- header ---------- */
html.pkc-site.pkc-premium #main-site-header {
  background: var(--pk-deep) !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
}
html.pkc-site.pkc-premium #main-site-header nav a,
html.pkc-site.pkc-premium #main-site-header nav button {
  background: transparent !important; box-shadow: none !important; border-color: transparent !important;
  border-radius: var(--pk-radius) !important;
}
html.pkc-site.pkc-premium #main-site-header nav :is(a, button)[aria-current="page"],
html.pkc-site.pkc-premium #main-site-header nav :is(a, button).pkc-active {
  color: #fff !important; box-shadow: inset 0 -2px 0 var(--pk-accent) !important; border-radius: 0 !important;
}

/* news ticker: one quiet line */
html.pkc-site.pkc-premium #homepage-news-ticker {
  background: #0f1713 !important; border: 0 !important; box-shadow: none !important;
}
html.pkc-site.pkc-premium #homepage-news-ticker :is(span, a, div)[class*="bg-"] {
  background: transparent !important; box-shadow: none !important;
}

/* ---------- hero ---------- */
html.pkc-site.pkc-premium #root .pkc-hero h1 { color: #fff !important; max-width: 20ch; margin-left: auto; margin-right: auto; }
html.pkc-site.pkc-premium #root .pkc-hero p { color: rgba(255, 255, 255, .86) !important; }
html.pkc-site.pkc-premium #root .pkc-hero .pkc-overlay {
  background: linear-gradient(180deg, rgba(5, 14, 10, .55) 0%, rgba(5, 14, 10, .72) 100%) !important;
  opacity: 1 !important; mix-blend-mode: normal !important;
}

/* ---------- footer ---------- */
html.pkc-site.pkc-premium #root footer {
  background: #0c1410 !important; border-top: 0 !important; background-image: none !important;
}
html.pkc-site.pkc-premium #root footer .pkc-card { background: transparent !important; border: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
html.pkc-site.pkc-premium #root footer :is(h3, h4) { color: #fff !important; font-size: 1rem !important; letter-spacing: .02em; }

/* floating buttons */
html.pkc-site.pkc-premium .pkc-float {
  box-shadow: 0 6px 20px rgba(0, 0, 0, .18) !important; background-image: none !important;
  border-radius: var(--pk-radius) !important;
}
html.pkc-site.pkc-premium #pkc-back-top {
  border-radius: var(--pk-radius) !important; border-color: rgba(255, 255, 255, .25) !important; color: #fff !important;
}

/* ---------- small screens ---------- */
@media (max-width: 767px) {
  html.pkc-site.pkc-premium { --pk-section: 52px; }
  html.pkc-site.pkc-premium #root .pkc-hero h1 { max-width: none; }
  html.pkc-site.pkc-premium #root a.pkc-btn,
  html.pkc-site.pkc-premium #root button.pkc-btn { min-height: 44px; }
}

/* ---------- refinements ---------- */
/* hero: the real photo, a neutral dark veil, no colour wash */
html.pkc-site.pkc-premium #root section.pkc-hero { background-color: #0b0f0d !important; }
html.pkc-site.pkc-premium #root .pkc-hero [class*="mix-blend"] { mix-blend-mode: normal !important; }
html.pkc-site.pkc-premium #root .pkc-hero > .absolute.inset-0:first-child::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(6, 12, 9, .58) 0%, rgba(6, 12, 9, .80) 100%);
}
html.pkc-site.pkc-premium #root .pkc-hero :is(h1, h2) { color: #fff !important; }
html.pkc-site.pkc-premium #root .pkc-hero h3 { color: rgba(255, 255, 255, .92) !important; font-family: var(--font-bn-body) !important; font-weight: 500 !important; }
html.pkc-site.pkc-premium #root .pkc-hero .pkc-eyebrow { color: var(--pk-accent) !important; }
html.pkc-site.pkc-premium #root .pkc-btn [class*="absolute"] { display: none !important; }

/* gradient fills and colour bars inside sections become flat */
html.pkc-site.pkc-premium #root .pkc-sec [class*="bg-gradient-to"]:not(.pkc-btn):not(.pkc-overlay) { background-image: none !important; }
html.pkc-site.pkc-premium #root .pkc-dark [class*="bg-gradient-to"]:not(.pkc-btn):not(.pkc-overlay):not(.pkc-sec) { background-color: rgba(255, 255, 255, .05) !important; }
html.pkc-site.pkc-premium #root .pkc-light [class*="bg-gradient-to"]:not(.pkc-btn):not(.pkc-sec):not(.pkc-card) { background-color: transparent !important; }

/* footer: open columns, modest brand name */
html.pkc-site.pkc-premium #root footer [class*="rounded"]:not(a):not(button):not(img) { background: transparent !important; border: 0 !important; }
html.pkc-site.pkc-premium #root footer :is(h1, h2) { font-size: 1.5rem !important; color: #fff !important; }
html.pkc-site.pkc-premium #root footer a { color: rgba(255, 255, 255, .72) !important; }
html.pkc-site.pkc-premium #root footer a:hover { color: #fff !important; }

/* social links: written names instead of logos */
html.pkc-site.pkc-premium #root a.pkc-social {
  width: auto !important; height: auto !important; padding: .35em .9em !important;
  border: 1px solid currentColor !important; border-radius: 999px !important; background: transparent !important;
  font-size: .8rem; font-weight: 600; line-height: 1.6; text-decoration: none;
}
html.pkc-site.pkc-premium #root a.pkc-social svg { display: none !important; }
html.pkc-site.pkc-premium #root a.pkc-social::after { content: attr(data-pkc-label); }