/* ═══════════════════════════════════════════════════════════
   Natura Dental — İletişim CSS
   ═══════════════════════════════════════════════════════════ */

/* ── Page wrapper ── */
.ndc-page {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 2fr 3fr;
}

/* ── Left Panel (dark) ── */
.ndc-left {
    background: linear-gradient(160deg, #13134b 0%, #1e1b6e 100%);
    padding: 80px 56px;
    color: white;
    position: relative;
    overflow: hidden;
}
.ndc-left::after {
    content:''; position:absolute; right:-100px; bottom:-100px;
    width:400px; height:400px; border-radius:50%;
    background: rgba(100,97,230,.1); pointer-events:none;
}
.ndc-left-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); color:rgba(255,255,255,.8); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:5px 12px; border-radius:9999px; margin-bottom:24px; }
.ndc-left-title { font-size:clamp(1.8rem,3vw,2.5rem); font-weight:800; line-height:1.15; letter-spacing:-.02em; margin-bottom:12px; }
.ndc-left-title em { font-style:normal; color:#e1e0ff; }
.ndc-left-desc { font-size:.9rem; color:rgba(255,255,255,.65); line-height:1.75; margin-bottom:48px; max-width:320px; }

/* Info rows */
.ndc-info-list { display:flex; flex-direction:column; gap:24px; margin-bottom:48px; }
.ndc-info-row { display:flex; align-items:flex-start; gap:16px; }
.ndc-info-icon { width:40px; height:40px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; color:rgba(255,255,255,.85); }
.ndc-info-icon svg { width:18px; height:18px; }
.ndc-info-lbl { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:rgba(255,255,255,.45); margin-bottom:4px; }
.ndc-info-val { font-size:.9rem; color:white; font-weight:500; line-height:1.55; }
.ndc-info-val a { color:white; text-decoration:none; }
.ndc-info-val a:hover { color:#e1e0ff; }

/* Hours table */
.ndc-hours { border-top:1px solid rgba(255,255,255,.12); padding-top:24px; }
.ndc-hours-title { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.45); margin-bottom:12px; }
.ndc-hours-row { display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px solid rgba(255,255,255,.06); font-size:.875rem; color:rgba(255,255,255,.75); }
.ndc-hours-row:last-child { border-bottom:none; }
.ndc-hours-row strong { color:white; font-weight:600; }
.ndc-hours-closed { color:#f87171 !important; }

/* ── Right Panel (form) ── */
.ndc-right {
    background: #fff;
    padding: 80px 72px;
}
.ndc-form-title { font-size:1.75rem; font-weight:800; color:#13134b; margin-bottom:8px; letter-spacing:-.02em; }
.ndc-form-subtitle { font-size:.9rem; color:#575993; margin-bottom:40px; line-height:1.65; }

/* Alert */
.ndc-alert { padding:14px 20px; margin-bottom:28px; font-size:.875rem; font-weight:500; }
.ndc-alert--success { background:#f0fdf4; color:#15803d; border-left:4px solid #22c55e; }
.ndc-alert--error { background:#fef2f2; color:#991b1b; border-left:4px solid #ef4444; }

/* Form layout */
.ndc-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }
.ndc-field { margin-bottom:28px; }
.ndc-field--full { grid-column:span 2; }
.ndc-label { display:block; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#9295b0; margin-bottom:8px; }
.ndc-input, .ndc-select, .ndc-textarea {
    width:100%; background:transparent;
    border:none; border-bottom:2px solid #e1e0ff;
    padding:10px 0; font-size:.9375rem; color:#13134b;
    font-family:inherit; outline:none;
    transition:border-color .2s;
}
.ndc-input:focus, .ndc-select:focus, .ndc-textarea:focus { border-bottom-color:#4441cc; }
.ndc-select { cursor:pointer; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%234441cc' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 4px center; background-size:16px; padding-right:24px; }
.ndc-textarea { resize:vertical; min-height:100px; }
.ndc-input::placeholder, .ndc-textarea::placeholder { color:#c7c4d7; }

.ndc-submit { display:inline-flex; align-items:center; gap:10px; background:#4441cc; color:white; padding:14px 32px; border-radius:9999px; font-size:.9375rem; font-weight:700; border:none; cursor:pointer; transition:background .2s; }
.ndc-submit:hover { background:#5e5ce6; }
.ndc-submit svg { width:18px; height:18px; }

/* Map */
.ndc-map { height:400px; overflow:hidden; background:#f5f2ff; }
.ndc-map iframe { width:100%; height:100%; border:none; display:block; filter:saturate(.8); }

/* Responsive */
@media (max-width:1024px) { .ndc-page { grid-template-columns:1fr; } .ndc-left { padding:64px 5%; } .ndc-right { padding:64px 5%; } }
@media (max-width:768px) { .ndc-form-grid { grid-template-columns:1fr; } .ndc-field--full { grid-column:span 1; } .ndc-map { height:300px; } }
