:root{--xolo-purple:#7b2cff;--xolo-blue:#285de8;--xolo-dark:#101828;--xolo-muted:#667085;--xolo-soft:#f6f7fb;--xolo-radius:22px}.xolo-site-main{overflow:hidden}.xolo-page-hero{padding:92px 0 58px;background:linear-gradient(135deg,var(--xolo-purple),var(--xolo-blue));color:#fff}.xolo-page-hero h1{font-size:clamp(34px,5vw,64px);font-weight:800;letter-spacing:-.04em}.xolo-page-hero p{max-width:720px;font-size:18px;opacity:.92}.xolo-wp-content{font-size:17px;line-height:1.75}.xolo-content-card{background:#fff;border-radius:var(--xolo-radius);padding:28px;margin-bottom:22px;box-shadow:0 12px 36px rgba(16,24,40,.08)}.xolo-subhero{padding:72px 0;background:#fff}.xolo-subhero .eyebrow{font-weight:800;color:var(--xolo-purple);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.xolo-subhero h1{font-size:clamp(36px,5vw,68px);font-weight:800;letter-spacing:-.04em;color:var(--xolo-dark)}.xolo-subhero p{font-size:18px;color:var(--xolo-muted);max-width:780px}.xolo-feature-card{height:100%;background:#fff;border-radius:var(--xolo-radius);padding:28px;box-shadow:0 16px 40px rgba(16,24,40,.08);border:1px solid rgba(16,24,40,.06)}.xolo-feature-card h3{font-size:22px;font-weight:800;color:var(--xolo-dark)}.xolo-feature-card p{color:var(--xolo-muted);margin-bottom:0}.xolo-gradient-panel{background:linear-gradient(135deg,var(--xolo-purple),var(--xolo-blue));color:#fff;border-radius:30px;padding:44px}.xolo-product-grid .xolo-card{height:100%}.xolo-contact-card{background:#fff;border-radius:28px;padding:34px;box-shadow:0 20px 45px rgba(16,24,40,.1)}.xolo-contact-item{padding:18px 0;border-bottom:1px solid rgba(16,24,40,.08)}.xolo-contact-item:last-child{border-bottom:0}.xolo-contact-form-wrap input,.xolo-contact-form-wrap textarea,.xolo-contact-form-wrap select{width:100%;border:1px solid #e5e7eb;border-radius:14px;padding:13px 15px;margin-bottom:14px}.xolo-contact-form-wrap input[type=submit],.xolo-contact-form-wrap button{background:linear-gradient(135deg,var(--xolo-purple),var(--xolo-blue));border:0;color:#fff;border-radius:999px;padding:12px 24px;font-weight:800}.xolo-post-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 14px 38px rgba(16,24,40,.08);height:100%}.xolo-post-card img{width:100%;height:210px;object-fit:cover}.xolo-post-card div{padding:24px}.xolo-post-card h3{font-size:21px;font-weight:800}.xolo-meta{font-size:13px;color:var(--xolo-purple);font-weight:700;margin-bottom:8px}.xolo-template-note{background:#fff9e8;border:1px solid #ffe2a3;padding:14px 18px;border-radius:14px;color:#775400;margin-bottom:20px}
@media(max-width:991px){.xolo-gradient-panel{padding:30px}.xolo-subhero{padding:52px 0}.xolo-page-hero{padding:72px 0 42px}}

/* =====================================================
   INNER PAGE CONTENT — v1.3 fixes
   Targets .xolo-wp-content (standard page template)
   ===================================================== */

/* ── Images ── */
.xolo-wp-content img {
  max-width: 100%;
  height: auto;
  border-radius: 14px;
  display: block;
}
.xolo-wp-content figure {
  margin: 0;
}
/* Person portrait: fixed square, circular */
.xolo-person-card figure img,
.xolo-wp-content .xolo-person-card figure img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto 14px;
}
/* Full-width editorial images (hero/feel-good style) */
.xolo-wp-content .xolo-img-full img {
  width: 100%;
  max-height: 480px;
  object-fit: cover;
  border-radius: 20px;
}

/* ── Team grid ── */
.xolo-team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 28px;
  margin: 36px 0;
}
.xolo-person-card {
  background: #fff;
  border-radius: 20px;
  border: 1px solid rgba(16,24,40,.08);
  box-shadow: 0 8px 28px rgba(16,24,40,.07);
  padding: 28px 24px 20px;
  text-align: center;
  transition: transform .25s, box-shadow .25s;
}
.xolo-person-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(123,44,255,.12);
}
.xolo-person-card figure {
  margin: 0 0 14px;
}
.xolo-person-card figure img {
  width: 110px;
  height: 110px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto;
  display: block;
}
.xolo-person-card h3 {
  font-size: 17px;
  font-weight: 800;
  color: var(--xolo-dark);
  margin: 0 0 4px;
}
.xolo-person-card .xolo-person-role {
  font-size: 13px;
  color: var(--xolo-muted);
  margin: 0 0 12px;
}
.xolo-person-card .xolo-linkedin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: #0077b5;
  border-radius: 50%;
  color: #fff;
  text-decoration: none;
  margin-bottom: 14px;
  transition: opacity .2s;
}
.xolo-person-card .xolo-linkedin:hover { opacity: .8; }
.xolo-person-card .xolo-linkedin svg {
  width: 14px;
  height: 14px;
  fill: #fff;
}

/* ── Accordion (details/summary) ── */
.xolo-wp-content details {
  background: var(--xolo-soft);
  border-radius: 14px;
  margin: 16px 0 0;
  overflow: hidden;
  border: 1px solid rgba(16,24,40,.08);
}
.xolo-wp-content details[open] {
  border-color: var(--xolo-purple);
}
.xolo-wp-content summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 18px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: var(--xolo-purple);
  list-style: none;
  user-select: none;
  gap: 10px;
}
.xolo-wp-content summary::-webkit-details-marker { display: none; }

/* Hide ALL raw SVGs inside summary — we replace with CSS icon */
.xolo-wp-content summary svg { display: none; }
.xolo-wp-content summary br  { display: none; }

/* CSS +/− toggle icon */
.xolo-wp-content summary::after {
  content: '+';
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  color: var(--xolo-purple);
  flex-shrink: 0;
  transition: transform .25s;
}
.xolo-wp-content details[open] summary::after {
  content: '−';
}

/* Trim "Know More" text node — keep only the label, hide <br> junk */
.xolo-wp-content summary {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Content inside open accordion */
.xolo-wp-content details > *:not(summary) {
  padding: 4px 18px 18px;
  font-size: 15px;
  line-height: 1.75;
  color: #374151;
}
.xolo-wp-content details p { margin: 0 0 12px; }
.xolo-wp-content details p:last-child { margin: 0; }

/* ── Section headings inside content ── */
.xolo-wp-content h2 {
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 800;
  color: var(--xolo-purple);
  margin: 52px 0 20px;
  letter-spacing: -.03em;
}
.xolo-wp-content h3 {
  font-size: 19px;
  font-weight: 700;
  color: var(--xolo-dark);
  margin: 0 0 6px;
}

/* ── Founder note styling ── */
.xolo-founder-note {
  background: linear-gradient(135deg, #f4f0ff 0%, #eef4ff 100%);
  border-radius: 24px;
  padding: 40px;
  margin: 40px 0;
  border-left: 4px solid var(--xolo-purple);
}
.xolo-founder-note p { color: #374151; font-size: 16px; line-height: 1.8; }

/* ── Mission / Vision / Difference blocks ── */
.xolo-mvd-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
  margin: 32px 0 52px;
}
.xolo-mvd-card {
  background: #fff;
  border-radius: 20px;
  border: 1px solid rgba(16,24,40,.08);
  padding: 28px;
  box-shadow: 0 8px 24px rgba(16,24,40,.06);
}
.xolo-mvd-card h1 {
  font-size: 20px !important;
  font-weight: 800;
  color: var(--xolo-purple);
  margin: 0 0 10px;
}
.xolo-mvd-card p, .xolo-mvd-card ul {
  font-size: 15px;
  color: var(--xolo-muted);
  margin: 0;
  line-height: 1.7;
}
.xolo-mvd-card ul { padding-left: 18px; }
.xolo-mvd-card li { margin-bottom: 8px; }

/* ── Suppress raw duplicate content outside details ──
   WordPress/Elementor dumps content inside AND outside <details>.
   We hide the orphan paragraphs that appear right after a </details>
   by targeting the immediate following siblings.
   Note: these are hidden via JS (see xolopak-main.js) since CSS
   alone can't reliably target post-details siblings in all browsers. */
.xolo-duplicate-hide { display: none !important; }

/* ── Responsive ── */
@media (max-width: 767px) {
  .xolo-team-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .xolo-mvd-grid  { grid-template-columns: 1fr; }
  .xolo-founder-note { padding: 24px; }
}
@media (max-width: 480px) {
  .xolo-team-grid { grid-template-columns: 1fr; }
}
