/* EBM v7.1 — light visual polish. Original layouts, fonts and brand colors retained. */
:root {
  --polish-radius: 22px;
  --polish-small-radius: 14px;
  --polish-ease: cubic-bezier(.22,.61,.36,1);
}

/* The original full-width navigation, with a subtle glass surface. */
body nav#navbar {
  background: rgba(17,17,17,.58);
  border-bottom: 1px solid rgba(255,255,255,.10);
  -webkit-backdrop-filter: blur(16px) saturate(115%);
  backdrop-filter: blur(16px) saturate(115%);
  transition: background .3s ease, padding .3s ease, box-shadow .3s ease;
}
body nav#navbar.scrolled {
  background: rgba(20,20,20,.92);
  box-shadow: 0 4px 20px rgba(0,0,0,.10);
}
body .mobile-menu, body .mobile-menu.active {
  background: rgba(17,17,17,.96) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
body .sticky-cta {
  background: rgba(17,17,17,.92);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

/* Same photographs and grid arrangements; only the framing is softened. */
body .about-img,
body .portfolio-item,
body .insta-item,
body .event-card {
  border-radius: var(--polish-radius);
}
body .about-img::after { border-radius: var(--polish-radius); }
body .gallery-strip img,
body .lightbox img,
body .map-embed { border-radius: var(--polish-small-radius); }
body .event-card::before { border-radius: var(--polish-small-radius); }
#portfolio-lookbook figure,
#portfolio-2026 > div > div > div {
  border-radius: var(--polish-radius) !important;
  overflow: hidden;
}
body .portfolio-item img,
body .insta-item img {
  transition: transform .65s var(--polish-ease);
}
body .portfolio-item:hover img,
body .insta-item:hover img { transform: scale(1.045); }

/* Existing light cards retain their cream-and-white context. */
body.page-home .wedding-card,
body.page-home .area-card {
  border-radius: var(--polish-radius);
  background: rgba(255,255,255,.64);
  border-color: rgba(115,92,48,.13);
  box-shadow: 0 4px 18px rgba(45,33,12,.025), inset 0 1px 0 rgba(255,255,255,.7);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  transition: transform .3s var(--polish-ease), box-shadow .3s ease, border-color .3s ease;
}
body.page-home .wedding-card:hover,
body.page-home .area-card:hover {
  transform: translateY(-3px);
  border-color: rgba(212,175,55,.45);
  box-shadow: 0 10px 28px rgba(45,33,12,.07);
}

/* Dark sections gain a quiet translucent finish, using the existing palette. */
body .corporate-card,
body .service-card,
body .package-card,
body .review-card,
body .why-card {
  border-radius: var(--polish-radius);
  background: linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  transition: transform .3s var(--polish-ease), border-color .3s ease, box-shadow .3s ease;
}
body .corporate-card:hover,
body .service-card:hover,
body .review-card:hover { transform: translateY(-3px); }
body .package-card .savings { border-radius: 9px; }
body.page-inner .testimonial { border-radius: 0 18px 18px 0; }
body .wedding-card p,
body .corporate-card p,
body .service-card p { line-height: 1.8; }

/* Original button labels, dimensions and gold treatments are retained. */
body .nav-cta,
body .hero-cta,
body .btn-gold,
body .btn-outline,
body .btn-submit,
body .filter-btn,
body .cities-list a,
body .sticky-cta a,
body .est-cta-btn,
body .result-box .cta-btn,
body .review-btn,
body .link-btn {
  border-radius: var(--polish-small-radius);
}
body .hero-cta {
  background: rgba(255,255,255,.035);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
body .hero-cta:hover { background: var(--gold); }
body .social-link,
body .info-item .icon { border-radius: 12px; }

/* Light contact inputs and the existing wizard's white inputs stay readable. */
body .form-group input:not([type=checkbox]):not([type=radio]):not([type=range]),
body .form-group select,
body .form-group textarea { border-radius: var(--polish-small-radius); }
body.page-home #contact .form-group input,
body.page-home #contact .form-group select,
body.page-home #contact .form-group textarea {
  background-color: rgba(255,255,255,.78);
  border-color: rgba(92,78,52,.22);
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
body.page-home #contact .form-group input:focus,
body.page-home #contact .form-group select:focus,
body.page-home #contact .form-group textarea:focus {
  background-color: #fff;
  border-color: #947020;
  box-shadow: 0 0 0 3px rgba(148,112,32,.12);
}
body .form-error { border-radius: var(--polish-small-radius); }

/* Existing estimate and inquiry panels: no step or field changes. */
body .est-card {
  border-radius: 24px;
  background: linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.025));
  border-color: rgba(255,255,255,.14);
  box-shadow: 0 10px 32px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.035);
}
body .est-btn,
body .opt-btn,
body .guest-seg { border-radius: var(--polish-small-radius); }
body .cat-card,
body .style-card,
body .budget-card,
body .estimate-box,
body .summary-card,
body .est-result-box,
body .result-box { border-radius: 20px; }
body .cat-card:not(.selected),
body .style-card:not(.selected),
body .budget-card:not(.selected) {
  background: rgba(255,255,255,.035);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
body .steps-wrapper .guest-seg.selected { color: var(--cream); }

/* Keep the original responsive layouts, with comfortable phone input sizes. */
@media (max-width:768px) {
  :root { --polish-radius: 18px; --polish-small-radius: 12px; }
  body.page-home .form-group input:not([type=checkbox]):not([type=radio]):not([type=range]),
  body.page-home .form-group select,
  body.page-home .form-group textarea { font-size: 16px; }
}
@supports not (backdrop-filter:blur(1px)) {
  body nav#navbar { background: rgba(17,17,17,.94); }
  body .sticky-cta { background: #111; }
}
@media (prefers-reduced-motion:reduce) {
  body .portfolio-item img,
  body .insta-item img,
  body .wedding-card,
  body .corporate-card,
  body .area-card,
  body .service-card,
  body .review-card { transition: none !important; }
}

/* v7.2: a shared vector icon treatment for the existing contact links. */
body .ebm-social-icon {
  display: inline-block;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  vertical-align: middle;
  pointer-events: none;
}
body .ebm-social-link {
  display: inline-flex;
  align-items: center;
  gap: .5em;
  vertical-align: middle;
  text-decoration: none;
}
body .ebm-icon-only { justify-content: center; gap: 0; }
body .ebm-social-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
body footer .footer-col .ebm-social-link {
  display: flex;
  width: fit-content;
  gap: .6em;
}
body footer .ebm-social-icon { width: 18px; height: 18px; }
body .social-links .ebm-icon-only {
  color: #755918;
  background: rgba(255,255,255,.45);
  border: 1px solid rgba(117,89,24,.25);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
body .social-links .ebm-icon-only:hover {
  background: rgba(212,175,55,.14);
  border-color: rgba(117,89,24,.65);
  transform: translateY(-2px);
}
body .ebm-social-float,
body .float-btn.btn-top {
  color: #e5ce93 !important;
  background: rgba(22,22,22,.90) !important;
  border: 1px solid rgba(212,175,55,.38) !important;
  border-radius: 17px !important;
  box-shadow: 0 6px 22px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.07) !important;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
body .ebm-social-float:hover,
body .float-btn.btn-top:hover {
  background: rgba(37,33,25,.96) !important;
  border-color: rgba(229,206,147,.75) !important;
  transform: translateY(-2px);
}
body .btn-gold.ebm-social-whatsapp,
body .share-btn.ebm-social-link {
  color: #e5ce93 !important;
  background: rgba(22,22,22,.88) !important;
  border: 1px solid rgba(212,175,55,.4) !important;
  border-radius: 14px;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body .btn-gold.ebm-social-whatsapp:hover,
body .share-btn.ebm-social-link:hover { background: rgba(42,36,25,.96) !important; }
body .sticky-cta .ebm-social-link { gap: 6px; }
body .sticky-cta .ebm-social-icon { width: 18px; height: 18px; }
body .confirm-links .ebm-social-link { color: #755918 !important; }
body.page-links .ebm-social-link.link-btn { display: flex; gap: .85rem; }
body.page-links .ebm-social-link .link-icon {
  color: #e5ce93 !important;
  background: rgba(212,175,55,.07) !important;
  border: 1px solid rgba(212,175,55,.2);
  border-radius: 14px;
}
body.page-links .ebm-social-link .link-arrow .ebm-social-icon { width: 18px; height: 18px; }
@media (prefers-reduced-motion:reduce) {
  body .ebm-social-link,
  body .float-btn.btn-top { transition: none !important; }
  body .ebm-social-link:hover,
  body .float-btn.btn-top:hover { transform: none !important; }
}
