/*
Theme Name: Wedding CFO Elementor
Theme URI: https://www.weddingcfo.com
Author: Wedding CFO
Description: Lightweight Elementor-ready theme for Wedding CFO editorial tools site.
Version: 1.0.0
Text Domain: weddingcfo-elementor
*/

:root{
  --wcfo-cream:#fffdf9;
  --wcfo-ink:#28231f;
  --wcfo-muted:#74675e;
  --wcfo-gold:#d4af7f;
  --wcfo-blush:#f4e7df;
  --wcfo-line:#eadfd5;
  --wcfo-radius:24px;
}

body{
  margin:0;
  background:var(--wcfo-cream);
  color:var(--wcfo-ink);
  font-family:Inter, Arial, sans-serif;
}

a{color:inherit}

.wcfo-container{width:min(1140px,92vw);margin:auto}
.wcfo-section{padding:80px 0}

.wcfo-hero{
  padding:96px 0 72px;
  background:
    radial-gradient(circle at top left, rgba(212,175,127,.22), transparent 33rem),
    radial-gradient(circle at top right, rgba(244,231,223,.7), transparent 28rem),
    var(--wcfo-cream);
}

.wcfo-h1,.wcfo-h2{
  font-family:Georgia, 'Times New Roman', serif;
  line-height:1.05;
  letter-spacing:-.05em;
  margin:0 0 20px;
}

.wcfo-h1{font-size:clamp(44px,7vw,78px)}
.wcfo-h2{font-size:clamp(34px,5vw,56px)}

.wcfo-lead{
  color:var(--wcfo-muted);
  font-size:20px;
  line-height:1.65;
  max-width:760px;
}

.wcfo-eyebrow{
  display:inline-flex;
  padding:8px 13px;
  border:1px solid var(--wcfo-line);
  border-radius:999px;
  background:white;
  color:#9a7141;
  font-weight:800;
  font-size:13px;
  margin-bottom:18px;
}

.wcfo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.wcfo-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}

.wcfo-card{
  background:rgba(255,255,255,.88);
  border:1px solid var(--wcfo-line);
  border-radius:var(--wcfo-radius);
  padding:28px;
  box-shadow:0 18px 50px rgba(55,39,28,.07);
}

.wcfo-card h3{font-size:24px;margin:0 0 10px}
.wcfo-card p{color:var(--wcfo-muted)}

.wcfo-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 22px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  margin:8px 8px 8px 0;
}

.wcfo-btn-primary{background:var(--wcfo-ink);color:white}
.wcfo-btn-soft{background:white;border:1px solid var(--wcfo-line)}

.wcfo-form input,
.wcfo-form select{
  width:100%;
  padding:14px;
  border-radius:14px;
  border:1px solid var(--wcfo-line);
  margin-bottom:12px;
  box-sizing:border-box;
}

.wcfo-calc{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.wcfo-result{background:linear-gradient(180deg,#fff8f1,#fff);border:1px solid var(--wcfo-line);border-radius:24px;padding:24px}
.wcfo-big{font-family:Georgia, serif;font-size:48px;line-height:1;margin:10px 0}
.wcfo-table{width:100%;border-collapse:collapse}
.wcfo-table td{padding:10px;border-bottom:1px solid var(--wcfo-line)}

.site-header{
  background:rgba(255,253,249,.92);
  border-bottom:1px solid var(--wcfo-line);
  position:sticky;
  top:0;
  z-index:999;
  backdrop-filter:blur(16px);
}

.wcfo-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.wcfo-brand{font-family:Georgia, serif;font-size:30px;font-weight:bold;text-decoration:none}
.wcfo-brand span{color:var(--wcfo-gold)}
.wcfo-menu{display:flex;gap:18px}
.wcfo-menu a{text-decoration:none;color:var(--wcfo-muted);font-weight:700;font-size:14px}

.site-footer{background:#171311;color:white;padding:56px 0;margin-top:70px}

@media(max-width:850px){
  .wcfo-grid,.wcfo-grid-2,.wcfo-calc{grid-template-columns:1fr}
  .wcfo-menu{display:none}
}
.wcfo-brand img,
.custom-logo {
  max-height: 62px;
  width: auto;
  display: block;
}