:root{
  --bg:#fffaf7;
  --soft:#f6eee9;
  --text:#3f332f;
  --muted:#796b65;
  --accent:#b98573;
  --accent-dark:#8f6355;
  --border:#e7d8d1;
  --white:#ffffff;
}
html{scroll-behavior:smooth;}
body{font-family:'Montserrat',sans-serif;color:var(--text);background:var(--bg);padding-top:76px;}
h1,h2,h3,.brand,.signature{font-family:'Cormorant Garamond',serif;}
.navbar{min-height:76px}.brand{font-size:1.8rem;font-weight:700}.nav-link{font-size:.95rem}
.hero{background:radial-gradient(circle at top right,rgba(185,133,115,.12),transparent 32%),var(--bg)}
.hero h1{font-size:clamp(3rem,7vw,6.2rem);line-height:.92;margin:.45rem 0 1.2rem}
.lead{max-width:620px;color:var(--muted);font-size:1.15rem}
.eyebrow{letter-spacing:.22em;font-size:.78rem;font-weight:600;color:var(--accent-dark)}
.section{padding:92px 0}.bg-soft{background:var(--soft)}
.section-heading{max-width:760px;margin:0 auto}.section-heading h2,.section h2{font-size:clamp(2.2rem,5vw,4rem);margin:.4rem 0 1rem}
.btn-brand{background:var(--accent);border-color:var(--accent);color:#fff}.btn-brand:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.btn-outline-brand{border:1px solid var(--accent);color:var(--accent-dark);background:transparent}.btn-outline-brand:hover{background:var(--accent);color:#fff}
.placeholder-photo{background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(246,238,233,.9)),repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(185,133,115,.07) 18px,rgba(185,133,115,.07) 36px);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);overflow:hidden}
.placeholder-photo span{display:block;font-size:.8rem;margin-top:.35rem}
.hero-photo{min-height:620px;border-radius:220px 220px 24px 24px}.about-photo{min-height:520px;border-radius:24px}
.signature{font-size:2rem;color:var(--accent-dark);margin-top:1.25rem}
.service-card,.testimonial,.contact-form{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:32px;box-shadow:0 10px 30px rgba(80,60,50,.05)}
.service-card h3{font-size:2rem}.service-icon{font-size:1.5rem;color:var(--accent);margin-bottom:1rem}
.portfolio-item{aspect-ratio:4/5;border-radius:16px;font-weight:600}.instagram-card{aspect-ratio:1/1;border-radius:16px;font-weight:600}
.bridal-callout{background:var(--text);color:#fff}.bridal-callout .eyebrow{color:#e7cfc5}.bridal-callout p{color:#e8dfdb}
.contact-section{background:linear-gradient(180deg,var(--bg),var(--soft))}
.form-control,.form-select{border-color:var(--border);padding:.8rem 1rem}.form-control:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 .2rem rgba(185,133,115,.15)}
.footer{background:#2f2623;color:#d9cbc5;padding:28px 0;font-size:.88rem}
.whatsapp-float{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;text-decoration:none;box-shadow:0 8px 22px rgba(0,0,0,.18);z-index:1030}
@media (max-width:991.98px){body{padding-top:70px}.hero-photo{min-height:480px}.section{padding:72px 0}}
