/* Homepage concepts A/B/C — staging only */
.concept { --navy:#002060; --cyan:#00C0F0; --blue:#0070E0; --grey:#f4f6f9; --ink:#14203a; --shadow:0 18px 48px rgba(0,32,96,.12); color:var(--ink); }
.concept section { padding: 88px 24px; }
.concept .wrap { max-width: 1200px; margin: 0 auto; }
.concept .grid2 { display:grid; grid-template-columns: 1.05fr 1fr; gap: 64px; align-items:center; }
.concept .grid2.rev > :first-child { order: 0; }
.concept h1 { font-size: clamp(2.3rem, 4.6vw, 3.9rem); line-height:1.07; font-weight:800; color:var(--navy); margin:.6rem 0 1.1rem; letter-spacing:-.02em; }
.concept h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight:800; color:var(--navy); margin:.3rem 0 .6rem; line-height:1.15; }
.concept h3 { font-size:1rem; text-transform:uppercase; letter-spacing:.06em; color:var(--blue); margin:1.6rem 0 .6rem; }
.concept .lead { font-size:1.2rem; color:#4b566b; max-width:34em; margin:0 0 2rem; }
.concept .sub { font-size:1.08rem; color:#4b566b; margin:0 0 1.2rem; }
.concept .kicker, .concept .eyebrow { display:inline-block; font-weight:800; font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; color:var(--blue); background:rgba(0,192,240,.12); padding:.4rem .85rem; border-radius:999px; }
.concept .row { display:flex; gap:14px; flex-wrap:wrap; }
.cbtn { display:inline-flex; align-items:center; gap:10px; background:linear-gradient(135deg,#00C0F0,#0070E0); color:#fff !important; font-weight:800; font-size:1.05rem; padding:16px 28px; border-radius:14px; box-shadow:0 10px 24px rgba(0,112,224,.3); text-decoration:none !important; transition:transform .15s; }
.cbtn:hover { transform:translateY(-2px); }
.cbtn.ghost { background:#fff; color:var(--navy) !important; border:2px solid var(--navy); box-shadow:none; }
.concept .photo { width:100%; height:100%; object-fit:cover; display:block; }
.concept .price { margin:1rem 0 .5rem; }
.concept .price small { display:block; font-weight:700; color:#6b7385; text-transform:uppercase; font-size:.78rem; letter-spacing:.08em; }
.concept .price strong { font-size: clamp(2.8rem,5vw,4rem); font-weight:900; color:var(--navy); line-height:1; letter-spacing:-.02em; }
.concept .ticks { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:.55rem 1.4rem; }
.concept .ticks li { position:relative; padding-left:1.8rem; font-size:.95rem; line-height:1.45; }
.concept .ticks li::before { content:"✓"; position:absolute; left:0; top:0; width:1.25rem; height:1.25rem; border-radius:50%; background:linear-gradient(135deg,#00C0F0,#0070E0); color:#fff; font-size:.75rem; font-weight:900; display:flex; align-items:center; justify-content:center; }
.concept .ticks.shield li::before { content:"★"; background:var(--navy); }
.concept .meta { margin:.8rem 0 0; font-size:.93rem; }
.concept .muted { color:#6b7385; }
.concept .id-line { background:var(--grey); border-left:4px solid var(--cyan); padding:.7rem 1rem; border-radius:0 10px 10px 0; }
.concept .final { font-size:.82rem; color:#6b7385; font-style:italic; margin:1rem 0 1.4rem; }
.concept .price-badge.big { font-size:1.9rem; padding:.7rem 1.6rem; margin:.4rem 0 1rem; }
/* sticky WA */
.wa-float { position:fixed; right:22px; bottom:22px; z-index:90; width:62px; height:62px; border-radius:50%; background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 10px 26px rgba(0,0,0,.22); }
.m-bar { display:none; }
@media (max-width: 760px) {
  .concept section { padding: 56px 18px; }
  .concept .grid2 { grid-template-columns:1fr; gap:32px; }
  .concept .ticks { grid-template-columns:1fr; }
  .m-bar { display:block; position:fixed; left:0; right:0; bottom:0; z-index:89; background:#fff; padding:10px 14px calc(10px + env(safe-area-inset-bottom)); box-shadow:0 -6px 20px rgba(0,32,96,.12); }
  .m-bar .cbtn { width:100%; justify-content:center; }
  .wa-float { bottom:86px; width:54px; height:54px; }
  body { padding-bottom:76px; }
}

/* ===== A: premium / trust — crisp, framed, navy accent band ===== */
.ca .hero { background:linear-gradient(180deg,#fff 0%,#f4f6f9 100%); }
.ca .frame { border-radius:28px; overflow:hidden; box-shadow:var(--shadow); aspect-ratio:4/3.4; outline:1px solid rgba(0,32,96,.08); outline-offset:10px; }
.ca .trust { list-style:none; padding:0; margin:2rem 0 0; display:flex; gap:28px; flex-wrap:wrap; }
.ca .trust li { font-weight:700; color:var(--navy); padding-left:22px; position:relative; }
.ca .trust li::before { content:""; position:absolute; left:0; top:.45em; width:12px; height:12px; border-radius:3px; background:linear-gradient(135deg,#00C0F0,#0070E0); }
.ca .band { background:var(--grey); border-top:6px solid var(--navy); }
.ca .card { background:#fff; border-radius:24px; padding:44px; box-shadow:var(--shadow); }
.ca #dh .card { border-top:6px solid var(--cyan); }

/* ===== B: warm family — full-bleed photo, rounded, soft ===== */
.cb .hero { position:relative; min-height:640px; display:flex; align-items:flex-end; padding-bottom:64px; overflow:hidden; }
.cb .bgimg { position:absolute; inset:0; }
.cb .bgimg::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.6) 45%,rgba(255,255,255,0) 75%); }
.cb .hero .wrap { position:relative; width:100%; }
.cb .glass { max-width:600px; background:rgba(255,255,255,.75); backdrop-filter:blur(8px); border-radius:32px; padding:40px; box-shadow:var(--shadow); }
.cb .story { display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center; }
.cb .story.rev .round { order:2; }
.cb .round { border-radius:50% 50% 40px 40px; overflow:hidden; aspect-ratio:4/5; box-shadow:var(--shadow); border:10px solid #fff; }
.cb .soft { background:linear-gradient(180deg,#f4f8fc,#eef6fb); }
.cb .cbtn { border-radius:999px; }
@media (max-width:760px){ .cb .story{grid-template-columns:1fr; gap:28px;} .cb .story.rev .round{order:0;} .cb .hero{min-height:auto; padding-top:240px;} .cb .glass{padding:26px;} .cb .round{aspect-ratio:4/3; border-radius:28px;} }

/* ===== C: bold modern sales — big numbers, navy accent band, pricing card ===== */
.cc .hero { background:#fff; }
.cc h1 { font-size:clamp(2.6rem,5.4vw,4.6rem); }
.cc .tilt { border-radius:24px; overflow:hidden; box-shadow:24px 24px 0 #00C0F0, var(--shadow); aspect-ratio:1/1; }
.cc .stats { display:flex; gap:32px; margin-top:2.2rem; flex-wrap:wrap; }
.cc .stats b { display:block; font-size:2rem; font-weight:900; color:var(--navy); line-height:1; }
.cc .stats span { font-size:.85rem; color:#6b7385; font-weight:600; }
.cc .accent { background:var(--navy); color:#fff; padding:22px 24px !important; }
.cc .ticker { display:flex; gap:22px; justify-content:center; flex-wrap:wrap; font-weight:800; letter-spacing:.04em; text-transform:uppercase; font-size:.9rem; color:#7fe0ff; }
.cc .pricing { display:grid; grid-template-columns:420px 1fr; border-radius:28px; overflow:hidden; box-shadow:var(--shadow); background:#fff; border:2px solid #e6ebf3; }
.cc .pricing .photo.top { height:100%; }
.cc .pbody { padding:48px; }
.cc .pricing .price strong { background:linear-gradient(135deg,#00C0F0,#0070E0); -webkit-background-clip:text; background-clip:text; color:transparent; }
.cc .soft { background:var(--grey); }
.cc .bigcard { background:#fff; border-radius:28px; box-shadow:var(--shadow); border-left:10px solid var(--navy); }
.cc #dh img.photo { border-radius:28px; box-shadow:var(--shadow); aspect-ratio:4/3; }
@media (max-width:760px){ .cc .pricing{grid-template-columns:1fr;} .cc .pricing .photo.top{height:240px;} .cc .pbody{padding:28px;} .cc .tilt{box-shadow:12px 12px 0 #00C0F0; aspect-ratio:4/3;} }
.concept .price-badge, .concept .cbtn { align-self:flex-start; }

/* ===== v4 full site in Concept B style ===== */
.cb .sec-cta { display:flex; justify-content:center; margin-top:40px; }
.cb section > .section-inner + .sec-cta { padding-bottom: 0; }
.cb .center-head { text-align:center; max-width:720px; margin:0 auto 40px; }
.cb .center-head .sub { margin:0 auto; }
.cb .duo { display:grid; grid-template-columns:1fr 1fr; gap:28px; max-width:900px; margin:0 auto; }
.cb .pcard { background:#fff; border-radius:28px; padding:36px; box-shadow:var(--shadow); text-align:center; display:flex; flex-direction:column; align-items:center; gap:10px; }
.cb .pcard h3 { margin:0; text-transform:none; letter-spacing:0; font-size:1.35rem; color:var(--navy); }
.cb .pcard p { margin:0; color:#4b566b; }
.cb .pcard .price { margin:0; }
.cb .tag { background:rgba(0,192,240,.12); color:var(--blue); font-weight:700; padding:.35rem .9rem; border-radius:999px; font-size:.85rem; }
.cb .center { text-align:center; }
.cb .section-head h2 { font-size:clamp(1.8rem,3vw,2.6rem); font-weight:800; }
.cb .flow .svc-icon, .cb .remind .svc-icon { border-radius:50%; }
.cb .remind, .cb .faqt-card { border-radius:28px; box-shadow:var(--shadow); border:0; }
.cb .final-cta { background:linear-gradient(180deg,#eef6fb,#f7fbfe); }
.cb .final-cta .job-card { margin-top:18px; }
.cb .contact-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:56px; }
.cb .ccard { background:#fff; border-radius:24px; padding:24px 26px; box-shadow:var(--shadow); color:var(--navy); text-decoration:none; display:flex; flex-direction:column; gap:4px; }
.cb .ccard small { color:var(--blue); font-weight:800; text-transform:uppercase; letter-spacing:.06em; font-size:.75rem; }
.cb .ccard b { font-size:1.02rem; word-break:break-word; }
a.ccard:hover { text-decoration:none; transform:translateY(-2px); }
.cb .job-card .btn-wa { border-radius:999px; }
section[id] { scroll-margin-top: 90px; }
/* fees / faq pages in warm style */
.cb-site .page-banner { background:linear-gradient(180deg,#eef6fb,#fff); border:0; padding:72px 24px 40px; }
.cb-site .page-banner h1 { font-size:clamp(2.2rem,4vw,3.2rem); font-weight:800; color:#002060; }
.cb-site .fee-block { background:#fff; border-radius:28px; padding:36px; box-shadow:0 18px 48px rgba(0,32,96,.10); margin-bottom:28px; border:0; }
.cb-site .fee-block .card { border-radius:24px; }
.cb-site .headline-price { font-size:2.6rem; }
.cb-site .faq-item { border-radius:20px; box-shadow:0 8px 24px rgba(0,32,96,.06); border:0; }
.cb-site .faq-tab, .cb-site .faq-search { border-radius:999px; }
.cb-site .final { font-size:.85rem; color:#6b7385; font-style:italic; }
.cb-site .btn { border-radius:999px; }
@media (max-width:760px){
  .cb .hero { display:block; min-height:0; padding:0 0 32px; }
  .cb .bgimg { position:relative; height:300px; }
  .cb .bgimg::after { background:linear-gradient(180deg,rgba(255,255,255,0) 60%,rgba(255,255,255,.9) 100%); }
  .cb .hero .wrap { padding:0 16px; margin-top:-48px; }
  .cb .glass { background:#fff; backdrop-filter:none; }
  .cb .duo, .cb .contact-cards { grid-template-columns:1fr; }
  .cb .sec-cta .cbtn { width:100%; justify-content:center; }
  .cb-site .fee-block { padding:24px; }
}
