/* Weddlock Landing — Blue with Yellow Accent */
:root{
  --bg: #f3f7fb;           /* very light blue */
  --ink: #1f2937;          /* dark slate */
  --muted:#6b7280;         /* gray */
  --brand:#2563eb;         /* blue 600 */
  --brand-ink:#0b3ea8;     /* deep blue */
  --accent:#f2c94c;        /* warm yellow */
  --card:#ffffff;
  --shadow:0 10px 25px rgba(15, 23, 42, .08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}
a{color:var(--brand)}
.container{max-width:1080px;margin:0 auto;padding:0 20px}

/* Header */
.site-header{position:sticky;top:0;background:rgba(243,247,251,.8);backdrop-filter:saturate(180%) blur(6px);border-bottom:1px solid #e5e7eb;z-index:20}
.header-wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg, var(--brand), #1d4ed8);color:#fff;display:grid;place-items:center;font-weight:800;box-shadow:var(--shadow);border:2px solid rgba(255,255,255,.6)}
.brand-text{display:flex;flex-direction:column;font-size:12px}
.brand-text strong{font-size:15px;letter-spacing:.2px}
.top-nav{display:flex;gap:14px;align-items:center}
.top-nav a{font-weight:600;text-decoration:none;color:var(--ink)}
.btn{display:inline-block;padding:10px 14px;border-radius:12px;border:1px solid #cbd5e1;text-decoration:none;font-weight:700}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.accent{background:var(--accent);border-color:var(--accent);color:#1f2937}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.block{display:block;text-align:center}

/* Hero */
.hero{padding:70px 0;background:radial-gradient(1200px 400px at 20% -10%, rgba(37,99,235,.15), transparent), radial-gradient(1000px 400px at 100% 0%, rgba(242,201,76,.18), transparent)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.hero-copy h1{font-size:42px;line-height:1.15;margin:0 0 10px}
.hero-copy p{color:var(--muted)}
.cta-row{display:flex;gap:10px;margin:18px 0 6px}
.powered{font-size:12px;color:var(--muted)}

.hero-card .card{background:var(--card);border-radius:18px;padding:18px;box-shadow:var(--shadow);border:1px solid #e5e7eb}
.card h3{margin:0 0 8px}
.tick{list-style:none;padding:0;margin:12px 0}
.tick li{padding-left:26px;position:relative;margin:8px 0}
.tick li:before{content:"✓";position:absolute;left:0;top:0;color:#16a34a;font-weight:700}

/* Sections */
.section{padding:56px 0}
.section.alt{background:#f8fafc}
.section-title{text-align:center;font-size:28px;margin:0 0 24px}

.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fcard{background:var(--card);border-radius:16px;padding:16px;box-shadow:var(--shadow);border:1px solid #e5e7eb}
.fcard h3{margin:0 0 6px}

/* Pricing */
.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;align-items:stretch}
.pcard{background:var(--card);border-radius:18px;padding:20px;box-shadow:var(--shadow);position:relative;border:1px solid #e5e7eb}
.pcard.highlight{outline:3px solid rgba(37,99,235,.12)}
.pcard .badge{position:absolute;right:14px;top:14px;background:var(--accent);color:#1f2937;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:900}
.price{font-size:18px;margin:6px 0 12px}
.price span{font-size:34px;font-weight:900;letter-spacing:.5px}
.fineprint{text-align:center;color:var(--muted);margin-top:8px}

/* Steps */
.steps{max-width:800px;margin:0 auto;padding:0 20px}
.steps li{margin:12px 0}

/* Contact */
.contact{background:linear-gradient(180deg,#f8fafc, #eef6ff)}
.contact-box{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:center;background:var(--card);border-radius:18px;padding:22px;box-shadow:var(--shadow);border:1px solid #e5e7eb}
.contact-actions .btn{margin:6px 0}

/* Footer */
.site-footer{border-top:1px solid #e5e7eb;background:#fff}
.footer-wrap{display:flex;gap:12px;justify-content:space-between;align-items:center;height:64px}

@media (max-width: 900px){
  .hero-grid{grid-template-columns:1fr}
  .features-grid{grid-template-columns:1fr 1fr}
  .pricing-grid{grid-template-columns:1fr}
  .contact-box{grid-template-columns:1fr}
}
@media (max-width: 540px){
  .features-grid{grid-template-columns:1fr}
}
