/* =========================
   OC ProServe – pricing.css
   ========================= */

:root{
  --brand:#003366; /* deep blue */
  --brand-2:#1e90ff; /* accent */
  --ink:#0f172a; /* slate-900 */
  --muted:#475569; /* slate-600 */
  --bg:#ffffff;
  --card:#f8fafc;
  --radius:14px;
  --maxw:1100px;
}

*,*:before,*:after{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"IBM Plex Sans", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  background:var(--bg);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

a{color:var(--brand-2);text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--brand-2);outline-offset:2px}

/* Header / Nav */
header{background:var(--brand);color:#fff;position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;margin:0 auto;max-width:var(--maxw)}
.brand{display:flex;align-items:center;gap:.5rem}
.brand img{width:40px;height:auto}
.brand .title{background: #e86717;
    background: linear-gradient(90deg,rgb(209, 156, 123) 0%, rgb(197, 94, 29) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.5rem;
    font-weight: 700;
    font-family: 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;}

/* Desktop nav defaults */
.navlinks{display:flex;align-items:center;gap:1rem}
.navlinks a{color:#fff}
.cta{background:var(--brand-2);color:#fff;padding:.5rem .9rem;border-radius:999px;font-weight:600}

/* Hamburger: hidden on desktop, shown on mobile only */
.hamburger{display:none}
#menu{display:none}

/* Mobile behavior */
@media (max-width: 860px){
  /* Show hamburger only on mobile */
  .hamburger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:40px;height:40px;
    border:1px solid rgba(255,255,255,.35);
    border-radius:10px;
    background:transparent;
    color:#fff;
  }
  /* Collapse navlinks behind toggle by default */
  .navlinks{display:none}
  /* When checkbox is checked, reveal menu */
  #menu:checked + .navlinks{
    display:flex;
    flex-direction:column;
    position:absolute;
    left:0; right:0; top:64px;
    background:var(--brand);
    padding:1rem;
    border-bottom-left-radius:16px;
    border-bottom-right-radius:16px;
  }
}


main{max-width:var(--maxw);margin:0 auto;padding:1.25rem}

.hero{display:grid;gap:.5rem;justify-items:center;text-align:center;margin:1rem 0 1.25rem}
.hero h1{font-size:clamp(1.5rem, 2vw + 1rem, 2.2rem);margin:.25rem 0}
.hero p{max-width:60ch;color:var(--muted);margin:0}

/* Cards */
.cards{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}
@media (max-width: 860px){.cards{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid #e2e8f0;border-radius:var(--radius);padding:1rem}
.card h3{font-size:1.25rem;margin:.25rem 0 .5rem}
.price{font-size:2.25rem;margin:.25rem 0 .75rem}
.card ul{margin:0;padding-left:1.1rem}
.card li{margin:.35rem 0}
.actions{margin-top:1rem;display:flex;gap:.5rem;flex-wrap:wrap}
.btn{appearance:none;border:1px solid #CBD5E1;background:#fff;padding:.65rem 1rem;border-radius:10px;cursor:pointer}
.btn-primary{background:var(--brand-2);border-color:var(--brand-2);color:#fff;font-weight:600}

/* Price list */
.price-list{margin:2rem 0;background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius)}
.price-list h2{font-size:1.15rem;margin:0;padding:1rem;border-bottom:1px solid #e2e8f0}
.price-grid{display:grid;grid-template-columns:1fr auto;gap:.65rem 1rem;padding:1rem}
@media (max-width: 520px){.price-grid{grid-template-columns:1fr}}
.label{font-weight:600}
.value{color:var(--muted)}

/* FAQ */
details{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.8rem 1rem}
details+details{margin-top:.6rem}
summary{cursor:pointer;font-weight:600}
.faq{margin:2rem 0}

/* Footer */
footer{border-top:1px solid #e2e8f0;margin-top:2rem}
.foot{max-width:var(--maxw);margin:0 auto;padding:1rem;color:var(--muted);font-size:.95rem}

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}
}
