/* ── Page Header ─────────────────────────────────────────── */
.page-header-section { background:var(--gradient-hero); padding:3.5rem 0 2.5rem; position:relative; overflow:hidden; }
.page-header-section::after { content:''; position:absolute; inset:0; background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); pointer-events:none; }
.page-header-section .breadcrumb { background:none; padding:0; margin-bottom:.75rem; }
.page-header-section .breadcrumb-item a { color:rgba(255,255,255,.65); font-size:.82rem; }
.page-header-section .breadcrumb-item a:hover { color:var(--color-accent); }
.page-header-section .breadcrumb-item+.breadcrumb-item::before { color:rgba(255,255,255,.35); }
.page-header-section .breadcrumb-item.active { color:var(--color-accent); font-size:.82rem; }
.page-header-title { font-family:var(--font-heading); font-size:clamp(1.6rem,3.5vw,2.4rem); color:#fff; font-weight:700; margin-bottom:.5rem; }
.page-header-subtitle { color:rgba(255,255,255,.70); font-size:.95rem; max-width:600px; margin:0; }

/* ── Contact main ─────────────────────────────────────────── */
.contact-main { padding:4rem 0 5rem; background:var(--color-bg); }

/* ── Form card ────────────────────────────────────────────── */
.contact-form-card { background:var(--color-white); border-radius:var(--border-radius); box-shadow:var(--shadow-md); border:1px solid var(--color-secondary-dark); overflow:hidden; }
.contact-form-card-header { background:var(--color-primary); padding:1.25rem 1.75rem; }
.contact-form-card-header h2 { font-family:var(--font-heading); color:#fff; font-size:1.15rem; font-weight:700; margin:0; }
.contact-form-card-header p { color:rgba(255,255,255,.65); font-size:.82rem; margin:.3rem 0 0; }
.contact-form-card-body { padding:2rem 1.75rem; }
.cf-label { font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--color-text-light); margin-bottom:.4rem; display:block; }
.cf-control { width:100%; border:1.5px solid var(--color-secondary-dark); border-radius:var(--border-radius-sm); padding:.65rem .9rem; font-size:.875rem; color:var(--color-text); background:var(--color-secondary-light); font-family:var(--font-body); transition:border-color var(--transition), box-shadow var(--transition); outline:none; }
.cf-control:focus { border-color:var(--color-accent); box-shadow:0 0 0 3px rgba(201,168,76,.15); background:#fff; }
textarea.cf-control { resize:vertical; min-height:130px; }
.btn-send { background:var(--gradient-gold); color:var(--color-primary-dark) !important; font-weight:700; font-size:.925rem; border:none; border-radius:50px; padding:.8rem 2.25rem; box-shadow:var(--shadow-gold); cursor:pointer; transition:transform var(--transition), filter var(--transition); display:inline-flex; align-items:center; gap:.5rem; }
.btn-send:hover { transform:translateY(-2px); filter:brightness(1.06); }
.form-success-box { background:linear-gradient(135deg,rgba(18,62,0,.06),rgba(201,168,76,.10)); border:1.5px solid rgba(18,62,0,.20); border-radius:var(--border-radius); padding:2.5rem; text-align:center; }
.form-success-box i { font-size:3rem; color:#22c55e; display:block; margin-bottom:.75rem; }
.form-success-box h3 { font-family:var(--font-heading); color:var(--color-primary); margin-bottom:.4rem; }
.form-alert-error { background:rgba(239,68,68,.08); border:1px solid rgba(239,68,68,.25); color:#dc2626; border-radius:var(--border-radius-sm); padding:.75rem 1rem; font-size:.875rem; margin-bottom:1rem; display:flex; align-items:center; gap:.5rem; }

/* ── Info sidebar ─────────────────────────────────────────── */
.info-sidebar { display:flex; flex-direction:column; gap:1.25rem; }
.info-card { background:var(--color-white); border-radius:var(--border-radius); box-shadow:var(--shadow-sm); border:1px solid var(--color-secondary-dark); padding:1.5rem; }
.info-card-title { font-family:var(--font-heading); font-size:.9rem; font-weight:700; color:var(--color-primary); margin-bottom:1rem; text-transform:uppercase; letter-spacing:.5px; }
.info-item { display:flex; gap:1rem; align-items:flex-start; padding:.65rem 0; border-bottom:1px solid var(--color-secondary-dark); }
.info-item:last-child { border-bottom:none; padding-bottom:0; }
.info-icon { width:40px; height:40px; border-radius:var(--border-radius-sm); background:rgba(201,168,76,.12); color:var(--color-accent); display:flex; align-items:center; justify-content:center; font-size:1rem; flex-shrink:0; }
.info-label { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--color-text-light); margin-bottom:.2rem; }
.info-value { font-size:.875rem; color:var(--color-text); font-weight:500; line-height:1.5; }
.info-value a { color:var(--color-accent); text-decoration:none; }
.info-value a:hover { text-decoration:underline; }

/* Checklist card */
.check-card { background:var(--color-primary); border-radius:var(--border-radius); padding:1.5rem; }
.check-card-title { font-family:var(--font-heading); font-size:.9rem; font-weight:700; color:#fff; margin-bottom:1rem; }
.check-list-item { display:flex; align-items:center; gap:.6rem; padding:.4rem 0; color:rgba(255,255,255,.85); font-size:.875rem; }
.check-list-item i { color:var(--color-accent); flex-shrink:0; }

/* WhatsApp bar */
.wa-bar { background:linear-gradient(135deg,#25D366 0%,#1ba74c 100%); border-radius:var(--border-radius); padding:1.1rem 1.5rem; display:flex; align-items:center; gap:1rem; color:#fff; text-decoration:none; transition:transform var(--transition), box-shadow var(--transition); box-shadow:0 4px 16px rgba(37,211,102,.30); }
.wa-bar:hover { transform:translateY(-3px); box-shadow:0 8px 28px rgba(37,211,102,.45); color:#fff; }
.wa-bar-icon { font-size:1.75rem; flex-shrink:0; }
.wa-bar-label { font-size:.7rem; font-weight:600; opacity:.80; }
.wa-bar-cta { font-size:.95rem; font-weight:700; }

/* Map */
.map-section { padding:3rem 0 0; background:var(--color-secondary); }
.contact-map { width:100%; height:400px; border:none; border-radius:var(--border-radius) var(--border-radius) 0 0; display:block; box-shadow:var(--shadow-md); }
@media (max-width:767.98px) { .contact-map { height:280px; } }
/* Social media section inside info card */
.info-social-row {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.info-social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(201, 168, 76, 0.12);
    color: var(--color-accent) !important;
    font-size: 0.95rem;
    transition: background-color var(--transition), transform var(--transition), color var(--transition);
    text-decoration: none;
}

.info-social-btn:hover {
    background-color: var(--color-accent);
    color: var(--color-primary-dark) !important;
    transform: translateY(-3px);
}
