/* ========== TOKENS ========== */
:root{
  --bg:#0b0f16; --panel:#0f1622; --ink:#e5e7eb; --muted:#94a3b8;
  --accent:#22d3ee; --accent-2:#38bdf8; --warn:#f59e0b;
  --elev:rgba(255,255,255,.08); --elev-2:rgba(255,255,255,.12);
  --container:min(1180px, 92vw);
  --radius:8px;
  --shadow-lg:0 14px 40px rgba(2,8,23,.45);
  --shadow-md:0 10px 28px rgba(2,8,23,.35);
  --grid:clamp(16px, 3vw, 28px);
}
@media (prefers-color-scheme: light){
  :root{ --bg:#f8fafc; --panel:#ffffff; --ink:#0f172a; --muted:#475569; --elev:rgba(2,8,23,.08); --elev-2:rgba(2,8,23,.14) }
}

/* ========== BASE ========== */
*{ box-sizing:border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
html{ scroll-behavior:smooth; -webkit-touch-callout: none; -webkit-user-select: none; }
body{ 
  margin:0; 
  color:var(--ink); 
  background:
    radial-gradient(900px 600px at 10% -10%, color-mix(in oklab, var(--accent), transparent 80%), transparent),
    radial-gradient(900px 600px at 90% -15%, color-mix(in oklab, var(--accent-2), transparent 84%), transparent),
    var(--bg);
  font:16px/1.55 "Manrope", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Disable context menu */
body {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Disable drag */
img, svg { 
  -webkit-user-drag: none; 
  -khtml-user-drag: none; 
  -moz-user-drag: none; 
  -o-user-drag: none; 
  user-drag: none; 
  pointer-events: none;
}

/* Allow selection for inputs and text areas */
input, textarea, select { 
  -webkit-user-select: text !important;
  -moz-user-select: text !important;
  -ms-user-select: text !important;
  user-select: text !important;
}

.container{ width:var(--container); margin-inline:auto; padding-inline:8px }
.center{ text-align:center }
.kicker{ color:var(--accent-2); font-weight:800; text-transform:uppercase; letter-spacing:.08em; font-size:12px; }
.lead{ color:var(--muted) }
.muted{ color:var(--muted) }
.reveal{ opacity:0; transform:translateY(18px); transition:.35s ease }
.reveal.show{ opacity:1; transform:none }
.section{ padding:48px 0 }
.section__head{ margin-bottom:22px }
.section h2{ font-size: clamp(26px, 3.2vw, 38px); margin:.2em 0 0 }
.section__head--row{ display:flex; align-items:center; gap:12px }

/* ========== HEADER ========== */
.site-header{ position:sticky; top:0; z-index:50; border-bottom:1px solid var(--elev); backdrop-filter:saturate(160%) blur(12px); background:color-mix(in oklab, var(--bg), transparent 40%) }
.nav{ min-height:76px; display:flex; align-items:center; justify-content:space-between }
.brand{ display:flex; align-items:center; gap:10px; text-decoration:none; color:inherit; font-weight:800; letter-spacing:.2px }
.brand__mark{ width:36px; height:36px; display:grid; place-items:center; border-radius:6px; background: linear-gradient(135deg, var(--accent), var(--accent-2)); box-shadow: inset 0 -10px 24px rgba(0,0,0,.2) }
.brand__mark svg{ width:20px; height:20px; fill:#fff }
.nav__links{ display:flex; gap:18px }
.link{ color:var(--muted); text-decoration:none; font-weight:700; padding:10px 0; position:relative }
.link:after{ content:""; position:absolute; left:0; bottom:0; height:2px; width:0; background:var(--ink); transition:width .25s }
.link:hover{ color:var(--ink) }
.link:hover:after{ width:100% }
.nav__cta{ display:flex; align-items:center; gap:10px }
.btn{ display:inline-flex; gap:10px; align-items:center; justify-content:center; background:linear-gradient(90deg, var(--accent), var(--accent-2)); color:#00121a; font-weight:800; padding:12px 18px; border-radius:6px; text-decoration:none; border:1px solid transparent; box-shadow:var(--shadow-md); transition: transform .2s, box-shadow .2s; cursor: pointer; }
.btn:hover{ transform:translateY(-2px); box-shadow:var(--shadow-lg) }
.btn--ghost{ background:transparent; border-color:var(--elev); color:var(--ink); box-shadow:none }
.btn--ghost:hover{ background:var(--elev) }
.burger{ display:none; background:transparent; border:none; padding:8px; color:var(--ink); cursor: pointer; }
.sheet{ position:fixed; inset:0; background:color-mix(in oklab, var(--bg), black 16%); border:0; padding:0; display:none }
.sheet[open]{ display:block }
.sheet__body{ position:absolute; right:0; inset-block:0; width:min(420px, 86vw); background:var(--panel); border-left:1px solid var(--elev); padding:22px; display:flex; flex-direction:column; gap:12px }
.sheet__body a{ color:var(--ink); text-decoration:none; font-weight:700; padding:10px 12px; border-radius:6px }
.sheet__body a:hover{ background:var(--elev) }
.sheet__close{ align-self:flex-end }

/* ========== HERO ========== */
.hero{ display:grid; grid-template-columns:1.1fr .9fr; gap:var(--grid); align-items:center; padding: clamp(32px, 5vw, 64px) 0 32px }
.bigtype{ font-size: clamp(32px, 6vw, 62px); line-height:1.04; letter-spacing:-.02em; margin:.3em 0 .2em }
.stroke{ -webkit-text-stroke: 1px color-mix(in oklab, var(--ink), transparent 45%); color:transparent }
.lead{ font-size:clamp(16px, 1.5vw, 20px) }
.hero__cta{ display:flex; gap:12px; margin-top:16px; flex-wrap:wrap }
.ticks{ display:flex; gap:18px; flex-wrap:wrap; padding:0; margin:18px 0 0; list-style:none }
.ticks li{ padding:8px 12px; border:1px dashed var(--elev); border-radius:6px; color:var(--muted); font-weight:700 }
.hero__right .artboard{ position:relative; aspect-ratio:4/3; border:1px solid var(--elev); border-radius:10px; overflow:hidden; background:
  linear-gradient(135deg, color-mix(in oklab, var(--accent), transparent 70%), color-mix(in oklab, var(--accent-2), transparent 76%)); box-shadow:var(--shadow-lg) }
.artboard .badge{ position:absolute; left:12px; top:12px; background:#0b0f16cc; border:1px solid var(--elev); padding:8px 10px; border-radius:6px; font-weight:800 }
.tagcloud{ position:absolute; inset:auto 12px 12px 12px; display:flex; gap:8px; flex-wrap:wrap }
.tagcloud span{ background:#0b0f16cc; border:1px solid var(--elev); padding:6px 10px; border-radius:6px; font-weight:700; color:var(--muted) }

/* ========== TRUST STRIP ========== */
.trust{ padding:22px 0 8px; border-top:1px solid var(--elev); border-bottom:1px solid var(--elev); background: color-mix(in oklab, var(--bg), black 6%) }
.trust__row{ display:grid; grid-template-columns:repeat(4, 1fr); gap:16px }
.kpi{ display:flex; gap:16px; align-items:center; background:var(--panel); border:1px solid var(--elev); padding:14px 16px; border-radius:8px; transition:transform .2s, box-shadow .2s }
.kpi:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md) }
.kpi-icon{ width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, var(--accent), var(--accent-2)); border-radius:8px; flex-shrink:0; color:#00121a }
.kpi-icon svg{ width:20px; height:20px }
.kpi__num{ font-size:22px; font-weight:900; display:block }
.kpi__txt{ color:var(--muted); font-weight:700; font-size:14px }

/* ========== SERVICES ========== */
.grid{ display:grid; gap:var(--grid) }
.grid--services{ grid-template-columns: repeat(3, 1fr) }
.slab{ background:var(--panel); border:1px solid var(--elev-2); padding:22px; border-radius:var(--radius); transition:transform .2s, border-color .2s, box-shadow .2s }
.slab:hover{ transform:translateY(-4px); border-color:var(--accent-2); box-shadow:var(--shadow-md) }
.slab__title{ font-weight:800; font-size:18px; letter-spacing:.2px }
.slab__meta{ margin-top:10px; font-weight:800; color:var(--warn) }
.list{ display:flex; gap:10px; flex-wrap:wrap; padding:0; margin:10px 0 0; list-style:none }
.list li{ padding:6px 10px; border:1px dashed var(--elev); border-radius:6px; color:var(--muted); font-weight:700; font-size:14px }

/* ========== PORTFOLIO ========== */
.gallery{ display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--grid) }
.case{ margin:0; background:var(--panel); border:1px solid var(--elev); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; transition:transform .2s, box-shadow .2s }
.case:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md) }
.case img{ width:100%; height:220px; object-fit:cover; filter:saturate(1.05) contrast(1.05) }
.case figcaption{ padding:14px 16px }
.case h3{ margin:0 0 6px 0; font-size:16px }
.case p{ margin:0; color:var(--muted) }

.beforeafter{ margin-top:24px; background:var(--panel); border:1px solid var(--elev); border-radius:var(--radius); padding:16px }
.ba__wrap{ position:relative; aspect-ratio:16/9; overflow:hidden; border:1px solid var(--elev); border-radius:var(--radius) }
.ba__wrap img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover }
.ba__wrap img.after{ clip-path:inset(0 50% 0 0) }
.ba__wrap input[type="range"]{ position:absolute; inset:auto 0 0 0; width:100%; background:transparent; cursor:pointer }
.ba__legend{ display:flex; justify-content:space-between; color:var(--muted); font-weight:700; margin-top:8px }

/* ========== CTA MODERN ========== */
.cta-modern{ background:var(--panel); border:1px solid var(--elev); border-radius:14px; padding:32px; display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start }
.cta-badge{ display:inline-flex; align-items:center; background:linear-gradient(90deg, var(--accent), var(--warn)); color:#000; padding:6px 12px; border-radius:16px; font-weight:700; font-size:14px; margin-bottom:16px }
.cta-modern__content h2{ margin:0 0 16px 0; font-size:clamp(24px, 3vw, 32px) }
.cta-modern__content p{ color:var(--muted); margin-bottom:24px; font-size:16px }
.cta-benefits{ display:flex; flex-direction:column; gap:16px }
.benefit{ display:flex; gap:12px; align-items:flex-start }
.benefit-icon{ width:40px; height:40px; border-radius:8px; background:linear-gradient(135deg, var(--accent), var(--accent-2)); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:#00121a }
.benefit-icon svg{ width:18px; height:18px }
.benefit strong{ display:block; margin-bottom:4px }
.benefit span{ color:var(--muted); font-size:14px }
.cta-form-modern{ display:flex; flex-direction:column; gap:20px }
.form-step{ display:flex; flex-direction:column; gap:12px }
.form-label-modern{ font-weight:700; margin-bottom:8px; display:block }
.radio-group{ display:grid; gap:8px }
.radio-card{ display:flex; align-items:center; gap:12px; padding:12px; border:1px solid var(--elev); border-radius:8px; cursor:pointer; transition:all .2s }
.radio-card:hover{ border-color:var(--accent) }
.radio-card input{ display:none }
.radio-card input:checked + .radio-content{ color:var(--accent) }
.radio-card input:checked{ background:var(--accent) }
.radio-card:has(input:checked){ border-color:var(--accent); background:color-mix(in oklab, var(--accent), transparent 90%) }
.radio-content{ display:flex; justify-content:space-between; width:100%; align-items:center }
.radio-title{ font-weight:700 }
.radio-price{ color:var(--warn); font-weight:800; font-size:14px }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px }
.form-group-modern{ display:flex; flex-direction:column; gap:6px }
.form-input-modern{ padding:12px 16px; background:var(--panel); border:1px solid var(--elev); border-radius:8px; color:var(--ink); font-family:inherit; transition:border-color .2s; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }
.form-input-modern:focus{ outline:none; border-color:var(--accent) }
.form-input-modern::placeholder{ color:var(--muted) }
.btn-cta{ display:flex; align-items:center; justify-content:center; gap:8px; background:linear-gradient(90deg, var(--accent), var(--accent-2)); color:#00121a; font-weight:800; padding:16px 24px; border:none; border-radius:8px; font-size:16px; cursor:pointer; transition:transform .2s, box-shadow .2s; width:100% }
.btn-cta:hover{ transform:translateY(-2px); box-shadow:var(--shadow-lg) }
.cta-disclaimer{ text-align:center; color:var(--muted); font-size:12px; margin-top:8px }

/* ========== PROCESS CARDS ========== */
.cards{ display:grid; gap:var(--grid) }
.cards--process{ grid-template-columns:repeat(3, 1fr) }
.card{ background:var(--panel); border:1px solid var(--elev); border-radius:10px; padding:16px; display:flex; flex-direction:column; gap:8px; transition:transform .2s, box-shadow .2s }
.card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md) }
.card__num{ width:36px; height:36px; border:2px solid var(--elev); border-radius:50%; display:grid; place-items:center; font-weight:900; background:var(--accent); color:#00121a }
.card h3{ margin:.2em 0 0 0; font-size:18px }
.card p{ margin:0; color:var(--muted) }

/* ========== REVIEWS ========== */
.reviews-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:24px }
.review-card{ background:var(--panel); border:1px solid var(--elev); border-radius:12px; padding:20px; transition:transform .2s, box-shadow .2s }
.review-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md) }
.review-header{ display:flex; align-items:flex-start; gap:12px; margin-bottom:16px }
.review-avatar{ width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg, var(--accent), var(--accent-2)); display:flex; align-items:center; justify-content:center; color:#00121a; font-weight:800; flex-shrink:0 }
.review-info{ flex:1 }
.review-info h4{ margin:0 0 4px 0; font-size:16px }
.review-info p{ margin:0; color:var(--muted); font-size:14px }
.review-rating{ display:flex; gap:2px; align-items:center }
.review-text{ margin:0; font-style:italic; color:var(--ink); line-height:1.6 }

/* ========== PRICES ========== */
.table-wrap{ background:var(--panel); border:1px solid var(--elev); border-radius:10px; overflow:auto }
.table{ width:100%; border-collapse:collapse; min-width:720px }
.table th, .table td{ padding:14px 16px; border-bottom:1px solid var(--elev); text-align:left }
.table thead th{ background:linear-gradient(90deg, color-mix(in oklab, var(--accent), transparent 85%), transparent); font-weight:800 }
.table tbody tr:hover td{ background:color-mix(in oklab, var(--panel), #ffffff0f) }

/* ========== FAQ ========== */
.faq{ display:grid; gap:12px; max-width:var(--container); margin-inline:auto }
.faq--wide{ width:100% }
.faq__item{ background:var(--panel); border:1px solid var(--elev); border-radius:8px; overflow:hidden }
.faq__q{ padding:16px; cursor:pointer; font-weight:800; display:flex; justify-content:space-between; align-items:center; margin:0; list-style:none }
.faq__q::marker{ display:none }
.faq__a{ padding:0 16px 16px; color:var(--muted) }
.faq__item[open] .faq__q{ border-bottom:1px solid var(--elev) }

/* ========== CONTACT ========== */
.contactcard{ display:grid; grid-template-columns:1fr 1.2fr; gap:16px; background:var(--panel); border:1px solid var(--elev); border-radius:12px; padding:16px; margin-bottom:16px }
.contactcard__info h3{ margin-top:0 }
.contactcard__map iframe{ width:100%; height:100%; min-height:320px; border-radius:8px }

/* ========== FOOTER ========== */
.site-footer{ border-top:1px solid var(--elev); background: color-mix(in oklab, var(--bg), black 8%); margin-top:var(--section-padding) }
.footer-content{ padding:48px 0 }
.footer-main{ display:grid; grid-template-columns:2fr 1fr 1fr 1.2fr; gap:32px; margin-bottom:32px }
.footer-brand{ max-width:280px }
.footer-logo{ margin-bottom:16px }
.footer-description{ color:var(--muted); line-height:1.6; margin-bottom:20px }
.footer-contacts{ display:flex; flex-direction:column; gap:8px }
.footer-contact{ display:flex; align-items:center; gap:8px; color:var(--ink); text-decoration:none; padding:6px 0; transition:color .2s }
.footer-contact:hover{ color:var(--accent) }
.contact-icon{ display:flex; align-items:center; justify-content:center; color:var(--accent) }
.footer-section h4{ margin:0 0 16px 0; font-size:18px; font-weight:800 }
.footer-links{ list-style:none; display:flex; flex-direction:column; gap:8px; margin:0; padding:0 }
.footer-links a{ color:var(--muted); text-decoration:none; transition:color .2s; padding:2px 0 }
.footer-links a:hover{ color:var(--accent) }
.social-links{ display:flex; gap:12px; margin-bottom:20px }
.social-link{ width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:var(--panel); border:1px solid var(--elev); border-radius:8px; color:var(--muted); text-decoration:none; transition:all .2s }
.social-link:hover{ color:var(--accent); border-color:var(--accent); transform:translateY(-2px) }
.btn-footer{ background:linear-gradient(90deg, var(--accent), var(--accent-2)); color:#00121a; font-weight:700; padding:10px 16px; border:none; border-radius:6px; cursor:pointer; transition:transform .2s; font-size:14px; width:100% }
.btn-footer:hover{ transform:translateY(-2px) }
.footer-bottom{ border-top:1px solid var(--elev); padding:20px 0 }
.footer-bottom-content{ display:flex; justify-content:space-between; align-items:center; gap:20px }
.footer-bottom-left p{ color:var(--muted); margin:0 0 8px 0 }
.footer-legal{ display:flex; gap:8px; align-items:center }
.footer-legal a{ color:var(--muted); text-decoration:none; font-size:14px; transition:color .2s }
.footer-legal a:hover{ color:var(--accent) }
.footer-legal span{ color:var(--muted) }
.footer-stats{ display:flex; gap:24px }
.stat-item{ text-align:center }
.stat-number{ display:block; font-size:18px; font-weight:900; color:var(--accent) }
.stat-text{ color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.5px }

/* ========== POPUP ========== */
.popup-overlay{ position:fixed; inset:0; background:rgba(0,0,0,0.8); backdrop-filter:blur(4px); z-index:1000; display:none; align-items:center; justify-content:center; padding:20px }
.popup-overlay.active{ display:flex }
.popup-content{ background:var(--panel); border:1px solid var(--elev); border-radius:16px; width:100%; max-width:500px; max-height:90vh; overflow-y:auto }
.popup-header{ display:flex; justify-content:space-between; align-items:center; padding:24px 24px 0; border-bottom:1px solid var(--elev); margin-bottom:24px }
.popup-header h3{ margin:0; font-size:24px }
.popup-close{ background:none; border:none; color:var(--muted); font-size:24px; cursor:pointer; padding:4px; border-radius:4px; transition:color .2s }
.popup-close:hover{ color:var(--ink) }
.popup-body{ padding:0 24px 24px }
.popup-description{ color:var(--muted); margin-bottom:24px }
.popup-form{ display:flex; flex-direction:column; gap:16px }
.popup-form .form-group{ display:flex; flex-direction:column; gap:6px }
.popup-form label{ font-weight:700; color:var(--ink) }
.popup-form input, .popup-form select, .popup-form textarea{ padding:12px 16px; background:var(--bg); border:1px solid var(--elev); border-radius:8px; color:var(--ink); font-family:inherit; transition:border-color .2s; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }
.popup-form input:focus, .popup-form select:focus, .popup-form textarea:focus{ outline:none; border-color:var(--accent) }
.popup-form input::placeholder, .popup-form textarea::placeholder{ color:var(--muted) }
.popup-btn{ width:100%; margin-top:8px }
.popup-disclaimer{ text-align:center; color:var(--muted); font-size:12px; margin-top:16px }

/* ========== RESPONSIVE ========== */
@media (max-width: 1180px){
  .gallery{ grid-template-columns:repeat(3, 1fr) }
}
@media (max-width: 980px){
  .nav__links{ display:none }
  .burger{ display:block }
  .hero{ grid-template-columns:1fr; text-align:center }
  .hero__right{ order:-1 }
  .trust__row{ grid-template-columns:repeat(2, 1fr) }
  .grid--services{ grid-template-columns: 1fr 1fr }
  .cta-modern{ grid-template-columns:1fr; gap:24px }
  .form-row{ grid-template-columns:1fr }
  .contactcard{ grid-template-columns:1fr }
  .contactcard__map iframe{ min-height:260px }
  .cards--process{ grid-template-columns:1fr 1fr }
  .section__head--row{ flex-direction:column; text-align:center }
  .reviews-grid{ grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)) }
  .footer-main{ grid-template-columns:1fr 1fr; gap:24px }
  .footer-bottom-content{ flex-direction:column; gap:16px; text-align:center }
  .footer-stats{ justify-content:center }
}
@media (max-width: 720px){
  .gallery{ grid-template-columns:repeat(2, 1fr) }
  .trust__row{ grid-template-columns:1fr }
  .cards--process{ grid-template-columns:1fr }
  .reviews-grid{ grid-template-columns:1fr }
  .footer-main{ grid-template-columns:1fr }
  .footer-brand{ max-width:none }
}
@media (max-width: 640px){
  .grid--services{ grid-template-columns:1fr }
  .cta-modern{ padding:20px }
  .radio-group{ grid-template-columns:1fr }
  .table{ min-width:0 }
  .table thead{ display:none }
  .table tbody{ display:grid; gap:12px; padding:12px }
  .table tr{ display:grid; border:1px solid var(--elev); border-radius:8px; overflow:hidden }
  .table td{ display:flex; justify-content:space-between; gap:16px; padding:12px 14px; border-bottom:1px dashed var(--elev) }
  .table td::before{ content:attr(data-label); color:var(--muted); font-weight:700 }
  .table tr td:last-child{ border-bottom:0 }
  .hero__cta{ flex-direction:column; width:100% }
  .ticks{ justify-content:center }
  .popup-content{ margin:0 10px }
}

/* ========== COPY PROTECTION ========== */
::selection { background: transparent; }
::-moz-selection { background: transparent; }

@media print {
  body { display: none !important; }
}

/* Disable inspect element shortcuts */
body {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide scrollbar but keep functionality */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: var(--bg);
}
::-webkit-scrollbar-thumb {
  background: var(--muted);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--accent);
}


/* --- FIX: FAQ summary clickable & selectable --- */
.faq__q{
  pointer-events: auto;
  user-select: text;
  cursor: pointer;
}
details > summary.faq__q { list-style: none; }


/* --- FIX: Improve contrast for hero badge & tag pills --- */
.artboard .badge{
  background: linear-gradient(90deg, var(--accent), var(--accent-2)) !important;
  color: #00121a !important;
  border-color: transparent !important;
  text-shadow: none !important;
}
.tagcloud span{
  background: linear-gradient(135deg, var(--accent), var(--accent-2)) !important;
  color: #00121a !important;
  border-color: transparent !important;
}




/* --- FORCE FIX: FAQ summary toggle --- */
.faq__item summary {
  pointer-events: auto !important;
  user-select: text !important;
  cursor: pointer !important;
  list-style: none !important;
}
.faq__item summary::-webkit-details-marker { display:none; }


/* --- FIX: Hero artboard badge & tagcloud with white background --- */
.artboard .badge{
  background: #ffffff !important;
  color: #0b0f16 !important;
  border:1px solid var(--elev) !important;
}
.tagcloud span{
  background:#ffffff !important;
  color:#0b0f16 !important;
  border:1px solid var(--elev) !important;
}

