/* ==========================================================================
   contact.css — sadece contact.html
   Iletisim hero'su, kart seridi, teklif formu, kapsam bandi
   Token'lar ve nav/footer base.css'ten gelir.
   ========================================================================== */

/* === HERO === */
/* Yatay 4% padding disaridaki tam genislik elemanda; --max kutusunun
   icine girmiyor ki diger bolumlerle ayni cizgide dursun. */
.ct-hero{padding:11rem 4% 4.5rem;background:var(--cream);border-bottom:1px solid var(--border)}
.ct-hero-inner{max-width:var(--max);margin:0 auto}
.ct-hero h1{font-family:var(--fd);font-size:clamp(2.4rem,5.5vw,4rem);font-weight:700;line-height:1.08;letter-spacing:-.01em}
.ct-hero h1 em{font-style:italic;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ct-hero-sub{font-size:1.02rem;color:var(--text);line-height:1.75;max-width:640px;margin-top:1.3rem}

/* === CONTACT KARTLARI === */
.ct-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3rem}
.ct-card{display:flex;flex-direction:column;gap:.35rem;padding:1.6rem 1.5rem;background:var(--white);border:1px solid var(--border);border-radius:12px;transition:all .35s var(--ease)}
a.ct-card:hover{border-color:var(--purple-soft);transform:translateY(-4px);box-shadow:0 14px 40px rgba(58,18,64,.09)}
.ct-card-ico{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,rgba(94,37,99,.07),rgba(106,127,212,.07));display:flex;align-items:center;justify-content:center;margin-bottom:.7rem}
.ct-card-ico svg{width:19px;height:19px;color:var(--plum)}
a.ct-card:hover .ct-card-ico{background:var(--accent-gradient)}
a.ct-card:hover .ct-card-ico svg{color:#fff}
.ct-card-label{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-light)}
.ct-card strong{font-size:1rem;font-weight:600;color:var(--navy)}
.ct-card-note{font-size:.82rem;color:var(--text);line-height:1.55}

/* === FORM BOLUMU === */
.ct-wrap{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1.15fr;gap:4rem;align-items:start}

/* --- Sol kolon --- */
.ct-h2{font-family:var(--fd);font-size:clamp(1.7rem,3vw,2.3rem);font-weight:700;line-height:1.2;margin-bottom:2rem}
.ct-steps{list-style:none;display:flex;flex-direction:column;gap:1.6rem;margin-bottom:2.5rem}
.ct-steps li{display:flex;gap:1.1rem;align-items:flex-start}
.ct-step-n{flex:0 0 auto;font-family:var(--fd);font-size:1.15rem;font-weight:700;color:var(--plum);opacity:.5;line-height:1.3;min-width:26px}
.ct-steps h4{font-size:.98rem;font-weight:600;margin-bottom:.3rem}
.ct-steps p{font-size:.88rem;color:var(--text);line-height:1.65}
.ct-note{padding:1.3rem 1.4rem;background:var(--cream);border-left:2px solid var(--purple-soft);border-radius:0 10px 10px 0;margin-bottom:1rem}
.ct-note h4{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--plum);margin-bottom:.5rem}
.ct-note p{font-size:.87rem;color:var(--text);line-height:1.7}

/* --- Form --- */
.ct-form{background:linear-gradient(165deg,var(--navy) 0%,#1d1533 55%,var(--plum-dark) 100%);border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:2.4rem;box-shadow:0 30px 80px rgba(21,25,41,.35),inset 0 1px 0 rgba(255,255,255,.06);display:flex;flex-direction:column;gap:1.3rem;position:relative;overflow:hidden}
.ct-form::before{content:'';position:absolute;top:-30%;right:-20%;width:70%;height:70%;background:radial-gradient(circle,rgba(122,61,158,.22),transparent 68%);pointer-events:none}
.ct-form>*{position:relative;z-index:1}
.ct-form-head h3{font-family:var(--fd);font-size:1.65rem;font-weight:700;margin-bottom:.4rem;color:#fff}
.ct-form-head p{font-size:.87rem;color:rgba(255,255,255,.55);line-height:1.6}
.cf-full{display:flex;flex-direction:column;gap:.55rem}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cf-row>div{display:flex;flex-direction:column;gap:.55rem}
.ct-form label{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.cf-req{color:var(--purple-soft)}
.ct-form input,.ct-form textarea,.ct-form select{font-family:var(--fb);font-size:.92rem;color:#fff;padding:.8rem .9rem;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(255,255,255,.06);transition:border-color .3s,box-shadow .3s,background .3s;width:100%}
.ct-form select option{background:#1E2338;color:#fff}
.ct-form textarea{resize:vertical;line-height:1.6}
.ct-form input:focus,.ct-form textarea:focus,.ct-form select:focus{outline:none;border-color:var(--purple-soft);background:rgba(255,255,255,.09);box-shadow:0 0 0 3px rgba(155,107,181,.22)}
.ct-form input::placeholder,.ct-form textarea::placeholder{color:rgba(255,255,255,.35)}
.ct-form input.invalid,.ct-form textarea.invalid{border-color:#C2416B;box-shadow:0 0 0 3px rgba(194,65,107,.1)}

/* Secim butonlari */
.cf-togs{display:flex;flex-wrap:wrap;gap:.5rem}
.cf-tog{font-family:var(--fb);font-size:.83rem;font-weight:500;color:rgba(255,255,255,.72);padding:.55rem 1rem;border:1px solid rgba(255,255,255,.18);border-radius:7px;background:rgba(255,255,255,.05);cursor:pointer;transition:all .28s var(--ease)}
.cf-tog:hover{border-color:var(--purple-soft);color:#fff;background:rgba(255,255,255,.09)}
.cf-tog.selected{background:var(--accent-gradient);border-color:transparent;color:#fff;font-weight:600}

.cf-divider{height:1px;background:rgba(255,255,255,.12)}
.cf-error{font-size:.83rem;color:#C2416B;line-height:1.5;min-height:0}
.cf-error:empty{display:none}
.cf-submit{font-family:var(--fb);font-size:.95rem;font-weight:600;color:#fff;background:var(--accent-gradient);border:none;border-radius:9px;padding:1rem 1.5rem;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.cf-submit:hover{transform:translateY(-2px);box-shadow:0 14px 44px rgba(122,61,158,.5)}
.cf-note{font-size:.78rem;color:rgba(255,255,255,.4);line-height:1.55;text-align:center}

/* --- Basari durumu --- */
/* Form gizlenince onay kutusu onun yerine gecer — sol kolon yerinde kalir. */
.ct-success{text-align:center;padding:4rem 2rem;background:linear-gradient(165deg,var(--navy),var(--plum-dark));border:1px solid rgba(255,255,255,.09);border-radius:18px}
.ct-success-ico{width:58px;height:58px;border-radius:50%;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;margin:0 auto 1.4rem}
.ct-success-ico svg{width:26px;height:26px;color:#fff}
.ct-success h3{font-family:var(--fd);font-size:1.9rem;font-weight:700;margin-bottom:.6rem;color:#fff}
.ct-success p{font-size:.95rem;color:rgba(255,255,255,.6);line-height:1.7;max-width:440px;margin:0 auto}
.ct-success a{color:var(--purple-soft);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* === KAPSAM BANDI === */
.ct-cov{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}
.ct-cov-col h4{color:#fff;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.1)}
.ct-cov-col p{font-size:.9rem;color:rgba(255,255,255,.55);line-height:1.85}
.ct-cov-note{max-width:var(--max);margin:2.8rem auto 0;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);font-size:.87rem;color:rgba(255,255,255,.42);line-height:1.7;text-align:center}

/* === RESPONSIVE === */
@media(max-width:1024px){
  .ct-wrap{grid-template-columns:1fr;gap:3rem}
  .ct-cards{grid-template-columns:1fr}
  .ct-cov{grid-template-columns:1fr;gap:2rem}
}
@media(max-width:768px){
  .ct-hero{padding:8.5rem 4% 3.5rem}
  .ct-form{padding:1.6rem}
  .cf-row{grid-template-columns:1fr}
}

/* Onay kutulari — koyu panel varyanti */
.ct-form .consent-row span{color:rgba(255,255,255,.6)}
.ct-form .consent-row a{color:var(--purple-soft)}
.ct-form .consent-row input[type=checkbox]{accent-color:var(--purple-mid)}
