/* ── Hero ─────────────────────────────────────────── */
.ct-hero{background:#030d1d;padding:100px 0 72px;position:relative;overflow:hidden;text-align:center;}
.ct-hero::before{content:'';position:absolute;top:-160px;left:50%;transform:translateX(-50%);width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(30,136,229,0.08) 0%,transparent 70%);pointer-events:none;}
.ct-hero::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,rgba(30,136,229,0.4),transparent);}

.ct-kicker{font-size:0.68rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;color:#1E88E5;display:block;margin-bottom:0.75rem;}
.ct-h1{font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:800;letter-spacing:-0.03em;line-height:1.05;color:#fff;margin-bottom:1rem;}
.ct-h1 span{color:#1E88E5;}
.ct-lead{font-size:1rem;color:rgba(255,255,255,0.6);max-width:480px;margin:0 auto 1.75rem;line-height:1.7;}

/* Promise pills */
.ct-pills{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;}
.ct-pill{display:inline-flex;align-items:center;gap:5px;background:rgba(30,136,229,0.08);border:1px solid rgba(30,136,229,0.2);border-radius:100px;padding:5px 14px;font-size:0.75rem;font-weight:600;color:rgba(255,255,255,0.6);}
.ct-pill svg{color:#1E88E5;flex-shrink:0;}

/* ── Main Layout ──────────────────────────────────── */
.ct-main{background:#021327;padding:72px 0;}

.ct-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(255,255,255,0.05);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,0.05);}
.ct-col{background:#021327;padding:2.5rem;}
.ct-col-right{background:#031a38;}

.ct-sec-label{font-size:0.68rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;color:#1E88E5;display:block;margin-bottom:1.25rem;}

/* ── Contact Option Cards ─────────────────────────── */
.ct-opt{display:flex;align-items:flex-start;gap:14px;padding:1.1rem 1.25rem;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:10px;margin-bottom:10px;transition:border-color 0.2s,background 0.2s;text-decoration:none;}
.ct-opt:hover{border-color:rgba(30,136,229,0.3);background:rgba(30,136,229,0.04);}
.ct-opt-icon{width:38px;height:38px;border-radius:9px;background:rgba(30,136,229,0.1);border:1px solid rgba(30,136,229,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ct-opt-title{font-size:0.8rem;font-weight:700;color:rgba(255,255,255,0.6);margin-bottom:2px;text-transform:uppercase;letter-spacing:0.06em;font-size:0.68rem;}
.ct-opt-val{font-size:0.9rem;font-weight:700;color:#fff;margin-bottom:2px;}
.ct-opt-sub{font-size:0.75rem;color:rgba(255,255,255,0.35);}

/* ── Response time ────────────────────────────────── */
.ct-response{display:flex;align-items:center;gap:10px;background:rgba(99,153,34,0.07);border:1px solid rgba(99,153,34,0.18);border-radius:8px;padding:11px 14px;margin-top:16px;}
.ct-pulse{width:8px;height:8px;border-radius:50%;background:#639922;flex-shrink:0;position:relative;}
.ct-pulse::after{content:'';position:absolute;inset:-3px;border-radius:50%;border:1px solid rgba(99,153,34,0.35);}
.ct-response-text{font-size:0.78rem;color:rgba(255,255,255,0.5);line-height:1.4;}
.ct-response-text strong{color:rgba(99,153,34,0.9);}

/* ── Address ──────────────────────────────────────── */
.ct-addr{display:flex;align-items:flex-start;gap:12px;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:10px;padding:1.1rem 1.25rem;margin-top:10px;}
.ct-addr svg{color:#1E88E5;flex-shrink:0;margin-top:2px;}
.ct-addr-text{font-size:0.82rem;color:rgba(255,255,255,0.5);line-height:1.7;}
.ct-addr-text strong{color:rgba(255,255,255,0.8);display:block;}

/* ── Calendly Side ────────────────────────────────── */
.ct-cal-title{font-size:1.15rem;font-weight:800;color:#fff;letter-spacing:-0.02em;margin-bottom:6px;}
.ct-cal-sub{font-size:0.83rem;color:rgba(255,255,255,0.45);line-height:1.6;margin-bottom:1.5rem;}

.ct-cal-box{background:rgba(30,136,229,0.05);border:1px solid rgba(30,136,229,0.15);border-radius:12px;padding:1.75rem;text-align:center;margin-bottom:1.5rem;}
.ct-cal-icon{width:52px;height:52px;border-radius:13px;background:rgba(30,136,229,0.12);border:1px solid rgba(30,136,229,0.25);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;}
.ct-cal-btn{display:inline-flex;align-items:center;gap:7px;background:#1E88E5;color:#fff !important;font-weight:700;font-size:0.88rem;padding:12px 22px;border-radius:6px;text-decoration:none !important;transition:background 0.2s,transform 0.15s;box-shadow:0 4px 16px rgba(30,136,229,0.3);}
.ct-cal-btn:hover{background:#0A3570;transform:translateY(-2px);}

/* ── What to expect ───────────────────────────────── */
.ct-expect-label{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-bottom:0.75rem;display:block;}
.ct-expect{display:flex;flex-direction:column;gap:8px;}
.ct-exp-item{display:flex;align-items:center;gap:10px;font-size:0.8rem;color:rgba(255,255,255,0.5);}
.ct-exp-num{width:20px;height:20px;border-radius:50%;background:rgba(30,136,229,0.1);border:1px solid rgba(30,136,229,0.2);display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:800;color:#1E88E5;flex-shrink:0;font-family:monospace;}

/* ── Trust Row ────────────────────────────────────── */
.ct-trust{background:#010e1f;border-top:1px solid rgba(255,255,255,0.05);padding:18px 0;}
.ct-trust-inner{display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap;}
.ct-trust-item{display:flex;align-items:center;gap:6px;font-size:0.75rem;font-weight:600;color:rgba(255,255,255,0.65);}
.ct-trust-item svg{color:rgba(30,136,229,0.6);}

/* ── Responsive ───────────────────────────────────── */
@media(max-width:900px){
  .ct-grid{grid-template-columns:1fr;}
  .ct-col{padding:2rem;}
}
@media(max-width:768px){
  .ct-hero{padding:72px 0 52px;}
  .ct-trust-inner{gap:1.25rem;}
}

.ct-form-label {
    font-size:0.68rem;font-weight:700;letter-spacing:0.13em;
    text-transform:uppercase;color:#1E88E5;display:block;margin-bottom:1.25rem;
}
.ct-field {
    width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;padding:11px 14px;font-size:0.88rem;color:#fff;
    transition:border-color 0.2s,background 0.2s;outline:none;
    font-family:inherit;
}
.ct-field::placeholder { color:rgba(255,255,255,0.25); }
.ct-field:focus { border-color:rgba(30,136,229,0.5);background:rgba(30,136,229,0.04); }
.ct-field.error { border-color:rgba(220,53,69,0.6); }
.ct-field option { background:#021327;color:#fff; }

.ct-field-group { margin-bottom:12px; position:relative; }
.ct-field-row { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px; }

.ct-error-msg {
    font-size:0.72rem;color:#dc3545;margin-top:4px;display:none;
}

.ct-privacy-box {
    display:flex;align-items:flex-start;gap:10px;
    background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.07);
    border-radius:8px;padding:12px 14px;margin-bottom:14px;cursor:pointer;
}
.ct-privacy-box input[type="checkbox"] {
    margin-top:2px;flex-shrink:0;
    accent-color:#1E88E5;width:16px;height:16px;cursor:pointer;
}
.ct-privacy-box label {
    font-size:0.78rem;color:rgba(255,255,255,0.4);line-height:1.5;cursor:pointer;
}

.ct-submit-btn {
    width:100%;background:#1E88E5;color:#fff;border:none;border-radius:8px;
    padding:13px 20px;font-size:0.9rem;font-weight:700;cursor:pointer;
    transition:background 0.2s,transform 0.15s;display:flex;align-items:center;
    justify-content:center;gap:8px;
}
.ct-submit-btn:hover:not(:disabled) { background:#0A3570;transform:translateY(-1px); }
.ct-submit-btn:disabled { opacity:0.6;cursor:not-allowed; }

.ct-char-count {
    font-size:0.7rem;color:rgba(255,255,255,0.25);
    text-align:right;margin-top:3px;
}
.ct-char-count.warn { color:#ffc107; }
.ct-char-count.over { color:#dc3545; }

.ct-success-box {
    display:none;text-align:center;padding:2rem;
    background:rgba(99,153,34,0.07);border:1px solid rgba(99,153,34,0.2);
    border-radius:10px;
}
.ct-success-box svg { color:#639922;margin-bottom:0.75rem; }
.ct-success-box p { color:rgba(255,255,255,0.7);font-size:0.9rem;margin:0; }

@media(max-width:600px) {
    .ct-field-row { grid-template-columns:1fr; }
}

@keyframes spin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }

/* Converted from inline style="" attributes */
.ct-calendly-sub-inline { font-size:0.82rem; color:rgba(255,255,255,0.45); margin-bottom:1.25rem; line-height:1.6; }
.ct-iframe-wrap { border-radius:10px; overflow:hidden; border:1px solid rgba(30,136,229,0.2); }
.ct-iframe-block { display:block; }
.ct-form-section { background:#021327; padding:0 0 72px; }
.ct-form-header { text-align:center; margin-bottom:2.5rem; }
.ct-form-heading { font-size:clamp(1.6rem,3vw,2.2rem); font-weight:800; color:#fff; letter-spacing:-0.02em; margin:0.5rem 0 0.75rem; }
.ct-form-subheading { font-size:0.9rem; color:rgba(255,255,255,0.45); max-width:460px; margin:0 auto; }
.ct-form-card { max-width:680px; margin:0 auto; background:#031a38; border:1px solid rgba(255,255,255,0.06); border-radius:16px; padding:2.5rem; }
.ct-success-box-inline { display:none; text-align:center; padding:2rem; background:rgba(99,153,34,0.07); border:1px solid rgba(99,153,34,0.2); border-radius:10px; }
.ct-success-icon { margin-bottom:0.75rem; }
.ct-success-text { color:rgba(255,255,255,0.7); font-size:0.9rem; margin:0; }
.ct-honeypot-wrap { position:absolute; left:-9999px; top:-9999px; opacity:0; pointer-events:none; }
.ct-privacy-error { margin-top:-8px; margin-bottom:10px; }
.ct-generic-error { margin-top:10px; font-size:0.8rem; }
.ct-spin-icon { animation:spin 1s linear infinite; }
