/* ============================================================
   Optivro Young Home Care Widgets — core.css
   Design tokens (verbatim from source :root), scoped resets,
   shared buttons. Every widget root carries
   `class="oyw-scope oyw-<widget>"`. Nothing here leaks outward:
   no bare *, html or body rules.
   ============================================================ */

/* ── Design tokens (verbatim from source :root) ── */
.oyw-scope{
  --oyw-ink:#0B2A42;
  --oyw-ink-2:#123A59;
  --oyw-blue:#1E7BC4;
  --oyw-blue-dk:#155F9B;
  --oyw-sky:#E9F2FA;
  --oyw-brass:#B49A6B;
  --oyw-sand:#EFE5D3;
  --oyw-paper:#FBF9F5;
  --oyw-line:#E4E7EC;
  --oyw-muted:#516274;
  --oyw-white:#fff;
  --oyw-r:18px;
  --oyw-shadow:0 24px 60px -28px rgba(11,42,66,.35);
  --oyw-shadow-sm:0 10px 30px -18px rgba(11,42,66,.45);
  --oyw-pad:clamp(76px,8.5vw,132px);
  --oyw-gutter:clamp(20px,5vw,48px);
}

/* ── Scoped resets — undo common theme pollution, contained to our roots ── */
.oyw-scope{
  font-family:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;line-height:1.7;color:var(--oyw-ink);
  box-sizing:border-box;-webkit-font-smoothing:antialiased;
}
.oyw-scope *,.oyw-scope *::before,.oyw-scope *::after{box-sizing:border-box}
.oyw-scope :where(h1,h2,h3,h4,h5,h6,p,ul,ol,figure){margin:0;padding:0}
.oyw-scope :where(h1,h2,h3,h4){font-family:"Newsreader",Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:inherit}
.oyw-scope :where(ul,ol){list-style:none}
.oyw-scope a{color:inherit;text-decoration:none}
.oyw-scope img{max-width:100%;display:block}
.oyw-scope :focus-visible{outline:3px solid var(--oyw-brass);outline-offset:3px;border-radius:4px}

/* ── Shared layout — source .wrap ── */
.oyw-wrap{width:min(1200px,100%);margin-inline:auto;padding-inline:var(--oyw-gutter)}

/* ── Shared buttons (verbatim from source .btn family) ── */
.oyw-btn{
  display:inline-flex;align-items:center;gap:.6rem;
  font-weight:600;font-size:.95rem;letter-spacing:.01em;
  padding:.95rem 1.6rem;border-radius:999px;border:1px solid transparent;cursor:pointer;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;
}
.oyw-btn svg{width:17px;height:17px;flex:none}
.oyw-btn-primary{background:var(--oyw-blue);color:#fff;box-shadow:0 14px 28px -14px rgba(30,123,196,.85)}
.oyw-btn-primary:hover{background:var(--oyw-blue-dk);transform:translateY(-2px)}

/* ── Reduced motion — scoped to our roots (source used a bare * block) ── */
@media(prefers-reduced-motion:reduce){
  .oyw-scope *,.oyw-scope *::before,.oyw-scope *::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;
  }
}
