/* ═══════════════════ CONTACT PAGE · css/contact.css ═══════════════════
   White base · orange accent · matches theme. Header fixed top:56px. */
.ct{--o:#FF7A2E;--o-deep:#E8631B;--o-soft:#FFF1E8;--rad:20px;--rad-lg:28px;--gap:20px}
.ct-h2{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.6rem,3.2vw,2.3rem);font-weight:500;color:var(--c-ink);line-height:1.18;margin:8px 0 0}
.ct-h2 em{font-style:italic;color:var(--o-deep)}
.ct-center-h{text-align:center}
.ct-head{margin-bottom:40px}
.ct-head-center{text-align:center}
.ct-pill{display:inline-block;padding:6px 16px;font-size:.72rem;font-weight:700;border-radius:var(--r-pill);background:var(--o-soft);color:var(--o-deep)}
.ct-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:var(--r-pill);font-size:.88rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .25s;line-height:1;font-family:inherit}
.ct-btn-orange{background:var(--o);color:#fff;box-shadow:0 8px 22px -8px rgba(255,122,46,.55)}
.ct-btn-orange:hover{background:var(--o-deep);transform:translateY(-2px)}
.ct-btn-dark{background:var(--c-ink);color:#fff}.ct-btn-dark:hover{background:#2a2a2a;transform:translateY(-2px)}
.ct-btn-white{background:#fff;color:var(--o-deep)}.ct-btn-white:hover{transform:translateY(-2px);box-shadow:var(--sh-lg)}
.ct-btn-ghost-w{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.35)}.ct-btn-ghost-w:hover{background:rgba(255,255,255,.25)}
.ct-full{width:100%}

/* HERO (white split) */
.ct-hero{background:var(--c-white);padding:148px 0 72px}
.ct-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.ct-hero-copy h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(2rem,4.4vw,3.2rem);font-weight:500;color:var(--c-ink);line-height:1.12;margin:16px 0 18px}
.ct-hero-copy h1 em{font-style:italic;color:var(--o-deep)}
.ct-hero-copy p{color:var(--c-ink-mute);font-size:1rem;line-height:1.7;margin:0 0 28px;max-width:460px}
.ct-hero-quick{display:flex;gap:14px;flex-wrap:wrap}
.ct-quick{display:flex;align-items:center;gap:12px;background:var(--c-cream-soft);border:1px solid var(--c-border-light);border-radius:var(--rad);padding:14px 20px;text-decoration:none;transition:all .25s}
.ct-quick:hover{box-shadow:var(--sh-md);transform:translateY(-2px);border-color:transparent}
.ct-quick-ic{font-size:1.4rem}
.ct-quick small{display:block;font-size:.72rem;color:var(--c-ink-mute)}
.ct-quick strong{font-size:.92rem;color:var(--c-ink)}
.ct-hero-visual{position:relative;border-radius:var(--rad-lg);overflow:hidden}
.ct-hero-visual img{width:100%;height:380px;object-fit:cover;display:block}
.ct-hero-badge{position:absolute;bottom:20px;left:20px;background:var(--o);color:#fff;padding:14px 20px;border-radius:var(--rad);box-shadow:0 16px 40px -12px rgba(255,122,46,.55)}
.ct-hero-badge strong{display:block;font-family:'Fraunces',serif;font-size:1.5rem;font-weight:500;line-height:1}
.ct-hero-badge span{font-size:.72rem;opacity:.9}

/* METHODS */
.ct-methods{padding:0 0 80px;background:var(--c-white)}
.ct-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.ct-method{background:var(--c-cream-soft);border:1px solid var(--c-border-light);border-radius:var(--rad);padding:30px 26px;text-decoration:none;display:block;transition:all .3s}
.ct-method:hover{box-shadow:var(--sh-md);transform:translateY(-4px);background:#fff;border-color:transparent}
.ct-method-ic{width:50px;height:50px;border-radius:14px;background:var(--o-soft);display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:16px}
.ct-method h3{font-size:1rem;font-weight:600;color:var(--c-ink);margin:0 0 4px}
.ct-method p{font-size:.88rem;color:var(--c-ink-soft);margin:0 0 4px;font-weight:500}
.ct-method-sub{font-size:.74rem;color:var(--c-ink-mute)}

/* MAIN form + side */
.ct-main{padding:80px 0;background:var(--c-cream-soft)}
.ct-main-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:40px;align-items:start}
.ct-form-wrap{background:#fff;border-radius:var(--rad-lg);padding:40px 38px;border:1px solid var(--c-border-light);box-shadow:var(--sh-sm)}
.ct-form-wrap .ct-h2{margin:8px 0 24px}
.ct-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ct-field{margin-bottom:16px}
.ct-field label{display:block;font-size:.78rem;font-weight:600;color:var(--c-ink);margin-bottom:6px}
.ct-field input,.ct-field select,.ct-field textarea{width:100%;padding:13px 16px;border:1px solid var(--c-border);border-radius:12px;font-size:.92rem;font-family:inherit;background:var(--c-off-white);transition:all .2s;color:var(--c-ink)}
.ct-field input:focus,.ct-field select:focus,.ct-field textarea:focus{outline:none;border-color:var(--o);box-shadow:0 0 0 3px var(--o-soft);background:#fff}
.ct-field textarea{resize:vertical}
.ct-form-trust{display:block;text-align:center;font-size:.72rem;color:var(--c-ink-mute);margin-top:14px}
/* side */
.ct-side{display:flex;flex-direction:column;gap:20px}
.ct-callback{background:var(--c-ink);border-radius:var(--rad-lg);padding:32px 30px}
.ct-callback h3{font-family:'Fraunces',serif;font-size:1.4rem;font-weight:500;color:#fff;margin:0 0 6px}
.ct-callback p{font-size:.84rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 18px}
.ct-callback input{width:100%;padding:13px 16px;border:1px solid rgba(255,255,255,.15);border-radius:12px;font-size:.92rem;font-family:inherit;background:rgba(255,255,255,.08);color:#fff;margin-bottom:14px;transition:all .2s}
.ct-callback input::placeholder{color:rgba(255,255,255,.4)}
.ct-callback input:focus{outline:none;border-color:var(--o);background:rgba(255,255,255,.12)}
.ct-callback .ct-btn-dark{background:var(--o)}
.ct-callback .ct-btn-dark:hover{background:var(--o-deep)}
.ct-map iframe{display:block}

/* FAQ */
.ct-faq{padding:80px 0;background:var(--c-white)}
.ct-faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.ct-acc{background:var(--c-cream-soft);border-radius:14px;overflow:hidden;border:1px solid var(--c-border-light)}
.ct-acc summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;cursor:pointer;list-style:none;font-size:.9rem;font-weight:600;color:var(--c-ink);transition:color .2s}
.ct-acc summary::-webkit-details-marker{display:none}
.ct-acc summary span{font-size:1.4rem;color:var(--o);transition:transform .3s;flex-shrink:0;line-height:1}
.ct-acc[open] summary span{transform:rotate(45deg)}
.ct-acc[open]{background:#fff;border-color:var(--o-soft)}
.ct-acc div{padding:0 22px 20px}.ct-acc div p{font-size:.84rem;color:var(--c-ink-mute);line-height:1.65;margin:0}

/* CTA */
.ct-cta{padding:0 0 80px;background:var(--c-white)}
.ct-cta-inner{background:linear-gradient(135deg,var(--o) 0%,var(--o-deep) 100%);border-radius:var(--rad-lg);padding:60px 48px;text-align:center}
.ct-cta h2{font-family:'Fraunces',serif;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:500;color:#fff;margin:0 0 12px}
.ct-cta p{color:rgba(255,255,255,.88);font-size:.96rem;margin:0 auto 28px;max-width:480px;line-height:1.6}
.ct-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* RESPONSIVE */
@media(max-width:1024px){
    .ct-hero{padding:130px 0 56px}
    .ct-hero-grid{grid-template-columns:1fr;gap:36px}
    .ct-hero-visual{max-width:560px}.ct-hero-visual img{height:300px}
    .ct-method-grid{grid-template-columns:1fr 1fr}
    .ct-main-grid{grid-template-columns:1fr;gap:24px}
}
@media(max-width:768px){
    .ct-methods{padding:0 0 56px}.ct-main,.ct-faq{padding:56px 0}
}
@media(max-width:600px){
    .ct-hero{padding:120px 0 48px}.ct-hero-copy h1{font-size:1.85rem}
    .ct-hero-quick{flex-direction:column}.ct-quick{width:100%}
    .ct-method-grid{grid-template-columns:1fr}
    .ct-form-wrap{padding:32px 24px}.ct-2col{grid-template-columns:1fr;gap:0}
    .ct-cta{padding:0 0 56px}.ct-cta-inner{padding:44px 24px}.ct-cta-btns{flex-direction:column;align-items:center}.ct-cta-btns a{width:100%}
}