/* Bezalel — Contact page specific styles */

/* Desktop: solid banner (cream, matching this page's own background) instead of a floating
   transparent overlay. No hero geometry change needed — .page-hero's own padding-top
   (style.css) already reserves calc(var(--nav-h) + 60px), sized for exactly this: the dark
   gradient now simply starts being visible right where the opaque banner ends. Mobile keeps
   the original fixed overlay + hamburger untouched. */
.topnav:not(.solid) .brand{color:var(--navy);}
.topnav:not(.solid) .nav-links a{color:var(--navy);}
.topnav:not(.solid) .nav-links a.active{color:var(--gold);}
.topnav:not(.solid) .nav-toggle span{background:var(--navy);}
@media (min-width:861px){
  .topnav,.topnav.solid{
    background:color-mix(in srgb, var(--cream) 82%, transparent);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    box-shadow:0 2px 20px rgba(23,59,98,.08);
  }
}

.contact-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:48px;align-items:start;}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr;}}

.contact-form-card{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:40px;box-shadow:var(--shadow-sm);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media (max-width:520px){.form-row{grid-template-columns:1fr;}}
@media (max-width:599px){.contact-form-card{padding:24px;}.info-card{padding:24px;}}

.info-card{background:linear-gradient(135deg,var(--navy-deep),var(--navy-deeper));border-radius:22px;padding:36px;color:var(--cream);}
.info-card h3{color:var(--cream);font-size:19px;}
.info-item{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px;}
.info-item svg{width:20px;height:20px;color:var(--gold-light);flex-shrink:0;margin-top:2px;}
.info-item a,.info-item span{color:var(--cream-muted);font-size:14px;line-height:1.5;}
.info-item a:hover{color:var(--gold-light);}

.involve-card{position:relative;}
.involve-card .card-icon{margin-bottom:14px;}
.involve-card a.btn{margin-top:14px;}

.form-error{display:none;padding:14px 16px;border-radius:10px;background:rgba(179,58,58,.1);border:1px solid rgba(179,58,58,.3);color:#8a2f2f;font-size:13.5px;margin-bottom:18px;}
.form-error.is-visible{display:block;}
