/* Bella Vita Salon and Day Spa - elegant classic */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--body);color:#3b322f;background:#fbf7f4;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
h1,h2,h3,h4{font-family:var(--head);color:#5a1130;line-height:1.2;margin:0 0 .5em;font-weight:700}
.gold{color:#b08d57}

/* buttons */
.btn{display:inline-block;background:var(--accent);color:#fff;padding:.8rem 1.7rem;border-radius:2px;font-weight:600;font-family:var(--body);letter-spacing:.6px;text-transform:uppercase;font-size:.82rem;transition:.2s;border:1.5px solid var(--accent)}
.btn:hover{background:#7a0e25;border-color:#7a0e25;text-decoration:none}
.btn-outline{background:transparent;color:var(--accent)}
.btn-outline:hover{background:var(--accent);color:#fff}
.btn-light{background:#fff;color:var(--accent);border-color:#fff}
.btn-light:hover{background:#f3e7d8;border-color:#f3e7d8;color:#7a0e25}

/* header with logo */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,247,244,.97);backdrop-filter:blur(6px);border-bottom:1px solid #ece1d8}
.biz-head-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:74px;flex-wrap:wrap}
.brand-logo{height:46px;width:auto}
.biz-brand{font-family:var(--head);font-weight:700;font-size:1.4rem;color:#5a1130}
.biz-brand:hover{text-decoration:none}
.biz-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .95rem}
.biz-nav a{color:#5b4f4a;font-weight:500;font-size:.9rem;letter-spacing:.2px}
.biz-nav a:hover{color:var(--accent);text-decoration:none}
.biz-cta{background:var(--accent);color:#fff!important;padding:.45rem 1rem;border-radius:2px}

/* hero */
.bv-hero{background:radial-gradient(ellipse at top,#fff 0%,#f6ece3 55%,#efe1d4 100%);text-align:center;border-bottom:1px solid #ecddcf}
.bv-hero-inner{padding:5rem 24px 4.5rem;max-width:760px}
.bv-eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:4px;font-size:.74rem;color:#b08d57;font-weight:700;margin-bottom:1rem}
.bv-hero-title{font-size:4.4rem;margin:0 0 .1em;color:#5a1130;letter-spacing:1px}
.bv-script{font-family:var(--head);font-style:italic;font-size:1.5rem;color:#b08d57;margin:0 0 1.3rem;font-weight:500}
.bv-hero-lead{font-size:1.12rem;color:#6b5d57;max-width:560px;margin:0 auto 2rem}
.bv-hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* welcome */
.bv-welcome{padding:4rem 0;background:#fff}
.bv-welcome-inner{max-width:760px;margin:0 auto;text-align:center}
.bv-orn{display:block;color:#d8b98c;font-size:1.8rem;margin-bottom:.6rem}
.bv-welcome-body{font-size:1.07rem;color:#4a3f3a}
.bv-welcome-body h2{font-size:1.7rem;margin-top:1.4em}

/* services */
.bv-services{padding:4.5rem 0;background:#faf3ec}
.bv-sec-title{text-align:center;font-size:2.3rem;margin-bottom:.2em}
.bv-sec-lead{text-align:center;color:#8a7a72;margin:0 auto 2.4rem;max-width:540px}
.bv-svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.1rem}
.bv-svc{display:block;background:#fff;border:1px solid #ecdfd3;border-radius:3px;padding:1.7rem 1.5rem;text-align:center;transition:.2s}
.bv-svc:hover{text-decoration:none;border-color:#b08d57;box-shadow:0 10px 30px rgba(90,17,48,.08);transform:translateY(-3px)}
.bv-svc h3{font-size:1.18rem;margin-bottom:.4em;color:#5a1130}
.bv-svc-more{color:#b08d57;font-weight:600;font-size:.84rem;letter-spacing:.5px;text-transform:uppercase}

/* values */
.bv-values{padding:4rem 0;background:#5a1130;color:#f3e3d6}
.bv-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;text-align:center}
.bv-value h3{color:#e9c79b;font-size:1.35rem;margin-bottom:.3em}
.bv-value p{color:#e4d0c4;margin:0}

/* cta */
.bv-cta{padding:4.5rem 24px;text-align:center;background:radial-gradient(ellipse at center,#fff 0%,#f6ece3 100%)}
.bv-cta-script{margin-bottom:.2rem}
.bv-cta h2{font-size:2rem;margin-bottom:1.3rem}

/* inner pages */
.biz-page{padding:2.8rem 24px 4rem;max-width:840px}
.crumbs{font-size:.84rem;color:#a8978d;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}
.crumbs a{color:#a8978d}
.post-title{font-size:2.4rem;margin-bottom:.5em;color:#5a1130}
.post-body{font-size:1.05rem;color:#473c37}
.post-body h2{font-size:1.55rem;margin-top:1.7em;color:#5a1130}
.post-body h3{font-size:1.22rem;margin-top:1.3em;color:#7a2a48}
.post-body ul,.post-body ol{padding-left:1.3em}
.post-body li{margin:.4em 0}
.post-body a{font-weight:600;text-decoration:underline}
.post-body strong{color:#5a1130}
.post-body blockquote{margin:1.4em 0;padding:.6em 1.4em;border-left:3px solid #b08d57;background:#faf3ec;font-style:italic;color:#6b5048}

/* contact form */
.cform{display:grid;gap:1rem;margin-top:1.4rem;max-width:560px}
.cform label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;font-size:.9rem;color:#5b4f4a}
.cform input,.cform textarea{font:inherit;padding:.75rem .85rem;border:1px solid #d8c8bb;border-radius:2px;background:#fff}
.cform input:focus,.cform textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(157,23,77,.1)}
.cform button{justify-self:start;background:var(--accent);color:#fff;border:0;padding:.85rem 2rem;border-radius:2px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;font-size:.82rem;cursor:pointer}
.cform button:hover{background:#7a0e25}
.notice{background:#f0ead0;border:1px solid #d9cfa0;color:#6b5a2a;padding:.9rem 1.1rem;border-radius:2px;margin-bottom:1.2rem}
.muted{color:#9a8a80}

/* footer */
.site-footer{background:#3a0b1e;color:#d8c3b8;padding:3.2rem 0 1.6rem}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem}
.foot-brand{font-family:var(--head);font-weight:700;font-size:1.3rem;color:#f0d9c9;margin-bottom:.4rem}
.site-footer h4{color:#e9c79b;font-size:1rem;margin-bottom:.7rem}
.foot-links{list-style:none;margin:0;padding:0}
.foot-links li{margin:.32rem 0}
.foot-links a{color:#cdb3a6;font-size:.92rem}
.foot-links a:hover{color:#fff}
.copyright{border-top:1px solid #5a2238;margin-top:2rem;padding-top:1.2rem;font-size:.84rem;color:#a8897c;text-align:center}

@media(max-width:820px){
  .bv-values-grid,.foot-grid{grid-template-columns:1fr}
  .bv-hero-title{font-size:3rem}
  .biz-head-inner{min-height:auto;padding:.6rem 0}
}
