/* Contact page */
.cx{background:var(--bg)}
.cx-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:34px;align-items:start}
.cx-form{background:#fff;border-radius:20px;padding:42px;box-shadow:0 18px 50px rgba(15,33,71,.10);border-top:4px solid var(--green)}
.cx-eyebrow{display:flex;align-items:center;gap:12px;color:var(--green-d);font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;margin-bottom:10px}
.cx-eyebrow span{width:36px;height:2px;background:var(--green)}
.cx-form h2{color:var(--navy);font-size:clamp(1.7rem,3vw,2.3rem);font-weight:600;line-height:1.15}
.cx-sub{color:var(--muted);margin:10px 0 26px}
.cx-form form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cx-form .f{margin-bottom:18px}
.cx-form label{display:block;font-weight:600;color:var(--navy);font-size:.92rem;margin-bottom:7px}
.cx-form label small{font-weight:400;color:var(--muted)}
.fi{position:relative}
.fi>i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--green);font-size:.95rem;pointer-events:none}
.fi input,.fi select,.fi textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:#f7f9fc;border:1.5px solid #e3e8f0;border-radius:12px;padding:14px 16px 14px 44px;outline:0;transition:.2s;appearance:none;-webkit-appearance:none}
.fi select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23BA882C' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:38px;text-overflow:ellipsis}
.fi textarea{resize:vertical;min-height:130px}
.fi-ta>i{top:20px;transform:none}
.fi input::placeholder,.fi textarea::placeholder{color:#9aa4b5}
.fi input:focus,.fi select:focus,.fi textarea:focus{background:#fff;border-color:var(--green);box-shadow:0 0 0 4px rgba(186,136,44,.15)}
.cx-form .f.bad input,.cx-form .f.bad select,.cx-form .f.bad textarea{border-color:#d33;background:#fff7f7}
.cx-form .err{margin-top:5px}
.cx-send{width:100%;justify-content:center;padding:16px 28px;font-size:1.08rem;border-radius:12px;margin-top:4px}
.cx-note{text-align:center;color:var(--muted);font-size:.86rem;margin-top:14px}
.cx-note i{color:var(--green);margin-right:6px}
.cx-side{background:linear-gradient(160deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;border-radius:20px;padding:38px 34px;position:sticky;top:100px;overflow:hidden;box-shadow:0 18px 50px rgba(15,33,71,.22)}
.cx-side:before{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(186,136,44,.16)}
.cx-side>*{position:relative}
.cx-side h3{font-size:1.5rem;font-weight:600}
.cx-side-sub{color:rgba(255,255,255,.72);margin:6px 0 24px}
.cx-list{list-style:none;margin:0 0 22px;padding:0}
.cx-list li{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.cx-ic{flex:none;width:44px;height:44px;border-radius:50%;background:rgba(186,136,44,.2);color:#e3b858;display:grid;place-items:center;font-size:1.05rem}
.cx-list small{display:block;color:rgba(255,255,255,.6);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}
.cx-list a,.cx-list span:not(.cx-ic){color:#fff;font-weight:500;line-height:1.45;word-break:break-word}
.cx-list a:hover{color:#e3b858}
.cx-social{display:flex;gap:10px;margin-bottom:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.cx-social a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);color:#fff;display:grid;place-items:center;transition:.2s}
.cx-social a:hover{background:var(--green);border-color:var(--green);transform:translateY(-3px)}
.cx-btns{display:flex;gap:10px;flex-wrap:wrap}
.cx-btns .btn{flex:1;justify-content:center;padding:13px 18px;border-radius:10px;font-size:1rem;margin:0}
.cx-call{background:var(--green);border-color:var(--green);color:#fff}
.cx-call:hover{background:var(--green-d);border-color:var(--green-d)}
.cx-wa{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.cx-wa:hover{background:#fff;color:var(--navy)}
.map iframe{box-shadow:0 14px 40px rgba(15,33,71,.14)}
@media(max-width:900px){.cx-grid{grid-template-columns:1fr}.cx-side{position:static}}
@media(max-width:600px){.cx-form{padding:28px 20px}.cx-form form .row{grid-template-columns:1fr;gap:0}.cx-side{padding:30px 22px}}