/* Contact page. Builds on landing.css (tokens, header, buttons, footer). Tokens come from the design "Aminsoft BD Trust Blue". */
.ab-contact{--err:#B42318}
.ct{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--tint-b) 0%,var(--bg) 70%)}
.ct::before{content:'';position:absolute;right:-8%;top:-30%;width:620px;height:620px;border-radius:50%;background:var(--tint-g);opacity:.7}
.ct::after{content:'';position:absolute;right:0;bottom:0;width:220px;height:120px;background:var(--accent);clip-path:polygon(100% 0,100% 100%,0 100%)}
.ct-grid{position:relative;z-index:1;display:grid;gap:28px;align-items:start;padding:56px 0 76px;grid-template-columns:minmax(0,.9fr) minmax(0,.75fr) minmax(0,1.25fr);grid-template-areas:'intro vis form' 'cards vis form'}
.ct-intro{grid-area:intro}
.ct-info{grid-area:cards}
.ct-vis{grid-area:vis;align-self:end}
.ct-formcard{grid-area:form}

/* intro */
.ct-kicker{display:flex;align-items:center;gap:10px;font-weight:600;font-size:18px;line-height:1.2;color:var(--accent)}
.ct-kicker .i{font-size:28px}
.ct-kicker::after{content:'';width:28px;height:2px;background:var(--accent);border-radius:2px}
.ct-h1{margin-top:16px;font-size:clamp(34px,3.6vw,48px);line-height:1.22;font-weight:700;letter-spacing:-.01em}
.ct-h1 span{display:block}
.ct-h1 .b{color:var(--brand)}
.ct-lead{margin-top:16px;max-width:46ch;font-size:16px;line-height:1.8;color:var(--muted)}

/* contact details */
.ct-info{display:grid;gap:12px;margin-top:4px}
.ct-info li{display:flex;align-items:center;gap:16px;padding:14px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow)}
.ct-ico{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--surface);font-size:24px}
.ct-ico--b{background:var(--brand)}
.ct-info h3{font-size:15px;line-height:1.3;font-weight:700;color:var(--brand)}
.ct-info p{font-size:14px;line-height:1.55;color:var(--muted)}
.ct-info p a{color:var(--ink);font-weight:500}
.ct-info p a:hover{color:var(--brand);text-decoration:underline}
.ct-tag{display:inline-block;position:relative;margin:10px 0 0 6px;font-family:'Hind Siliguri','Poppins',sans-serif;font-weight:600;font-style:italic;font-size:22px;line-height:1.3;color:var(--brand);transform:rotate(-4deg)}
.ct-tag::after{content:'';position:absolute;left:14%;right:0;bottom:-8px;border-bottom:3px solid var(--accent);border-radius:0 0 60% 40%}

/* illustration and trust points */
.ct-vis{display:flex;flex-direction:column;align-items:center;gap:22px}
.ct-art{position:relative;width:min(100%,290px);aspect-ratio:1}
.ct-art__glow{position:absolute;inset:0;border-radius:50%;background:var(--tint-b)}
.ct-art__core{position:absolute;inset:15%;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}
.ct-art__core .i{font-size:92px;stroke-width:1.3}
.ct-bub{position:absolute;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;color:var(--surface);font-size:26px;box-shadow:var(--shadow)}
.ct-bub--chat{top:4%;left:0;background:var(--accent);border-radius:16px 16px 16px 4px}
.ct-bub--mail{top:18%;right:-2%;background:var(--brand)}
.ct-bub--tel{bottom:8%;right:10%;background:var(--brand)}
.ct-trust{width:100%;display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow)}
.ct-trust li{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;text-align:center;font-weight:600;font-size:13px;line-height:1.4}
.ct-trust li:nth-child(odd){border-right:1px solid var(--line)}
.ct-trust li:nth-child(-n+2){border-bottom:1px solid var(--line)}
.ct-trust .i{font-size:28px;color:var(--brand)}

/* form card */
.ct-formcard{padding:34px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow)}
.ct-formhead{display:flex;align-items:center;gap:18px;margin-bottom:26px}
.ct-plane{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:50%;background:var(--tint-b);color:var(--brand);font-size:30px}
.ct-formhead h2{font-size:clamp(26px,2.6vw,32px);line-height:1.25;font-weight:700}
.ct-formhead p{margin-top:2px;font-size:15px;color:var(--muted)}
.ct-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ct-field{position:relative;display:block;padding:12px 14px 12px 52px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-sm);transition:border-color .2s,box-shadow .2s}
.ct-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(21,88,184,.16)}
.ct-field>.i{position:absolute;left:16px;top:15px;font-size:22px;color:var(--ink)}
.ct-field--wide{grid-column:1/-1}
.ct-field label{display:block;font-weight:600;font-size:14px;line-height:1.4}
.ct-field label b{color:var(--err);font-weight:600}
.ct-field input,.ct-field select,.ct-field textarea{display:block;width:100%;margin:4px 0 0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font:400 16px/1.5 'Poppins','Hind Siliguri',sans-serif;color:var(--ink);outline:0;-webkit-appearance:none;appearance:none}
.ct-field textarea{min-height:128px;resize:vertical}
.ct-field input::placeholder,.ct-field textarea::placeholder{color:var(--muted);opacity:1}
.ct-field select{padding-right:28px;cursor:pointer}
.ct-field select:invalid{color:var(--muted)}
.ct-field .ct-caret{position:absolute;left:auto;right:14px;top:50%;font-size:20px;transform:translateY(-50%);pointer-events:none}
.ct-field.is-err{border-color:var(--err)}
.ct-err{display:block;margin-top:4px;font-size:13px;line-height:1.4;color:var(--err)}
.ct-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ct-submit{width:100%;margin-top:20px;padding:17px 26px;font-size:17px}
.ct-submit .i{font-size:22px}
.ct-submit[disabled]{filter:grayscale(.2) brightness(.95);cursor:progress}
.ct-status{display:none;margin-top:16px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font-size:15px;line-height:1.6}
.ct-status.is-ok{display:block;background:var(--tint-g);border-color:var(--accent)}
.ct-status.is-err{display:block;border-color:var(--err);color:var(--err)}
.ct-note{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:18px;font-size:14px;color:var(--muted)}
.ct-note .i{font-size:20px;color:var(--brand)}

/* responsive */
@media (max-width:1179px){
.ct-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'intro form' 'cards form' 'vis form';padding:44px 0 64px}
.ct-vis{align-self:start}
.ct-art{width:min(100%,240px)}
}
@media (max-width:899px){
.ct-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:'intro' 'cards' 'form' 'vis';gap:24px}
.ct-vis{align-self:center;width:100%;max-width:420px;margin-inline:auto}
.ct-lead{max-width:60ch}
}
@media (max-width:640px){
.ct-grid{padding:32px 0 56px}
.ct-formcard{padding:22px 16px}
.ct-fields{grid-template-columns:1fr}
.ct-formhead{gap:14px;margin-bottom:20px}
.ct-plane{width:52px;height:52px;font-size:24px}
.ct-info li{padding:12px 14px;gap:14px}
.ct-tag{font-size:19px}
.ct::after{width:130px;height:72px}
.ct::before{width:380px;height:380px;right:-30%;top:-12%}
.ct-note{align-items:flex-start;text-align:left}
}
@media (hover:none){.ct-submit:hover{filter:none}}
