@layer plc-reset, plc-base, plc-components, plc-utilities;
/* ---------- Reset (scoped) ---------- */
@layer plc-reset{
  :where(.plc-root, .plc-root :is(*)) { box-sizing:border-box; }
  :where(.plc-root){ all: unset; display:block; }
  :where(.plc-root *){ font: inherit; color: inherit; }
}

/* ---------- Base ---------- */
@layer plc-base{
  .plc-root{ --plc-max:clamp(720px,92vw,1120px); --plc-radius:1.25rem; --plc-gap:1rem; --plc-pad:1.25rem;
    --plc-shadow:0 10px 30px rgba(0,0,0,.06), 0 2px 8px rgba(0,0,0,.04);
    --plc-fg:#0a0a0a; --plc-sub:#4a4a4a; --plc-bg:#ffffff; --plc-accent:#0a84ff; --plc-ring:rgba(10,132,255,.35);
    --plc-font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    color:var(--plc-fg); background:transparent; font-family:var(--plc-font);
    contain: layout inline-size; content-visibility:auto; }
  .plc-container{ max-width:var(--plc-max); margin-inline:auto; padding:clamp(16px,2vw,28px); display:block; }
  .plc-title{ font-weight:700; letter-spacing:-.01em; line-height:1.15; font-size:clamp(1.25rem,2.4vw,1.875rem); margin:0 0 .5rem; }
  .plc-lede{ color:var(--plc-sub); margin:0 0 1rem; font-size:clamp(0.95rem,1.6vw,1.0625rem); }
  .plc-hero{ position:relative; border-radius: var(--plc-radius); padding:var(--plc-pad); background:var(--plc-bg); box-shadow:var(--plc-shadow); }
  .plc-cta{ display:inline-block; padding:.7rem 1rem; border-radius:999px; text-decoration:none; border:1px solid rgba(0,0,0,.08); background:linear-gradient(#fff,#f7f7f7); }
  .plc-cta:focus-visible{ outline:2px solid var(--plc-ring); outline-offset:2px; }
  .plc-grid{ display:grid; gap:clamp(.75rem,1.6vw,1rem); margin-top:clamp(12px,2vw,20px);
    grid-template-columns: repeat(12, minmax(0,1fr)); }
  .plc-card{ grid-column: span 6; padding:var(--plc-pad); border-radius:var(--plc-radius); background:var(--plc-bg); box-shadow:var(--plc-shadow); }
  .plc-card h3{ margin:0 0 .35rem; font-size:clamp(1rem,1.8vw,1.25rem); line-height:1.25; }
  .plc-card p{ margin:0; color:var(--plc-sub); }
  @media (max-width: 900px){ .plc-card{ grid-column: span 12; } }
  .plc-chips{ list-style:none; display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:.5rem 0 0; }
  .plc-chip{ border:1px solid rgba(0,0,0,.08); padding:.35rem .6rem; border-radius:999px; font-size:.875rem; }
  .plc-meta{ margin-top:clamp(14px,2vw,18px); color:var(--plc-sub); font-size:.9rem; }
  .plc-noscript{ color:#a00; }
  .plc-trust{ grid-column: span 12; }
  .plc-badges{ list-style:none; display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:.5rem 0 0; }
  .plc-badge{ border:1px solid rgba(0,0,0,.08); padding:.35rem .6rem; border-radius:999px; font-size:.85rem; background:#fff; box-shadow:var(--plc-shadow); }
  .plc-process{ grid-column: span 12; }
  .plc-steps{ display:flex; gap:.75rem; list-style:none; padding:0; margin:.5rem 0 0; flex-wrap:wrap; }
  .plc-steps li{ padding:.4rem .6rem; border-radius:999px; border:1px solid rgba(0,0,0,.08); background:#fff; }
  .plc-cta-wrap{ grid-column: span 12; text-align:center; padding:var(--plc-pad); background:#fff; border-radius:var(--plc-radius); box-shadow:var(--plc-shadow); }
  .plc-cta-note{ margin:.5rem 0 0; color:var(--plc-sub); font-size:.9rem; }
  .plc-faqs{ grid-column: span 12; }
  .plc-faq{ background:#fff; border-radius:var(--plc-radius); box-shadow:var(--plc-shadow); padding:var(--plc-pad); margin:.5rem 0; }
  .plc-faq summary{ list-style:none; cursor:pointer; }
  .plc-faq summary::-webkit-details-marker{ display:none; }
  .plc-faq h3{ display:inline; }
  .plc-card ul{ margin:.5rem 0 0; padding-left:1.2rem; }
  .plc-card li{ margin:.25rem 0; }
}

/* ---------- Components (animations, HIG‑like depth) ---------- */
@layer plc-components{
  @media (prefers-reduced-motion:no-preference){
    .plc-hero{ transform:translateZ(0); transition:box-shadow .25s ease, transform .25s ease; }
    .plc-hero:hover{ box-shadow:0 16px 40px rgba(0,0,0,.09), 0 3px 10px rgba(0,0,0,.05); transform:translateY(-2px); }
    .plc-card{ transform:translateZ(0); transition:box-shadow .25s ease, transform .25s ease; }
    .plc-card:hover{ box-shadow:0 14px 34px rgba(0,0,0,.08), 0 2px 10px rgba(0,0,0,.05); transform:translateY(-1px); }
  }
}

/* ---------- Utilities & Divi Guards ---------- */
@layer plc-utilities{
  .et_pb_row .plc-container, .et_pb_column .plc-container { width:100% !important; max-width:var(--plc-max) !important; float:none !important; padding:clamp(16px,2vw,28px) !important; }
  .et_pb_row .plc-root, .et_pb_column .plc-root { width:100% !important; float:none !important; }
}
