.page-hero{padding:9rem 0 3rem;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;top:-200px;left:50%;width:700px;height:700px;transform:translateX(-50%);background:radial-gradient(circle,rgba(46,204,139,.08),transparent 70%);border-radius:50%}
.page-hero h1{font-size:clamp(2.2rem,4.5vw,3.5rem);margin-bottom:1rem;opacity:0;animation:hIn .8s .2s forwards}
.page-hero p{color:var(--text-dim);font-size:1.05rem;max-width:500px;margin:0 auto;opacity:0;animation:hIn .8s .35s forwards}
@keyframes hIn{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}

/* CONTACT */
.contact-layout{display:grid;grid-template-columns:1fr;gap:1.2rem;padding:4rem 0 6rem;align-items:start}
.contact-info-card{display:flex;gap:1rem;align-items:flex-start;margin-bottom:2rem}
.contact-icon{width:48px;height:48px;flex-shrink:0;background:var(--accent-dim);border:1px solid rgba(46,204,139,.15);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .4s}
.contact-info-card:hover .contact-icon{transform:scale(1.1);box-shadow:0 0 20px var(--accent-dim)}
.contact-info-card h4{font-family:'Outfit',sans-serif;font-weight:700;font-size:.95rem;margin-bottom:.2rem}
.contact-info-card p{font-size:.88rem;color:var(--text-dim);line-height:1.7}
.contact-info-card a{color:var(--accent)}
.contact-trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.contact-trust-card{background:rgba(46,204,139,.05);border:1px solid rgba(46,204,139,.18);padding:1.35rem 1.5rem;color:var(--text);display:flex;flex-direction:column;border-radius:var(--radius-xl)}
.contact-trust-card h3{margin-bottom:.55rem;font-size:1.08rem;line-height:1.3;font-family:'Playfair Display',serif}
.contact-trust-card p{margin:0;color:var(--text-dim);line-height:1.5;font-size:.74rem}
.contact-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;align-items:stretch}
.contact-reach{background:var(--bg-card);border:1px solid var(--border);padding:2.1rem;border-radius:var(--radius-xl);height:100%}
.contact-reach h2{font-size:1.45rem;margin-bottom:1.3rem}
.contact-reach .contact-info-card{margin-bottom:1.2rem}
.office-map-wrap{position:relative;height:240px;margin:-.25rem 0 1.2rem 4rem;border:1px solid var(--border-hover);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.02)}
.office-map-embed{width:100%;height:100%;border:0;filter:grayscale(.15) contrast(1.05) brightness(.92)}
.office-map-link{position:absolute;inset:0;z-index:2}
.contact-form{background:var(--bg-card);border:1px solid var(--border);padding:2.5rem;transition:all .5s;border-radius:var(--radius-xl);height:100%}
.contact-form:hover{border-color:var(--border-hover)}
.contact-form h3{font-size:1.3rem;margin-bottom:.3rem}
.contact-form .sub{color:var(--text-muted);font-size:.88rem;margin-bottom:2rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{margin-bottom:1.2rem}
.form-group label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem;color:var(--text)}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:.8rem 1rem;border:1.5px solid var(--border-hover);border-radius:var(--radius);font-size:.9rem;background:var(--bg);color:var(--text);transition:all .4s}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}
.form-group textarea{resize:vertical;min-height:110px}
.form-group select{cursor:pointer}
.form-group select option{background:var(--bg-card);color:var(--text)}
.form-submit{width:100%;padding:.9rem;background:var(--accent);color:var(--bg);border:none;border-radius:100px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .4s;font-family:inherit}
.form-submit:hover{box-shadow:0 12px 35px var(--accent-glow);transform:translateY(-2px)}

.partner-note{margin-top:2rem;padding:1.2rem;background:var(--gold-dim);border:1px solid rgba(212,168,75,.12);border-radius:var(--radius);font-size:.85rem;color:var(--gold)}
.partner-note a{color:var(--gold);font-weight:600;text-decoration:underline}
.contact-partner-strip{margin-top:1.2rem;padding:1.35rem 1.6rem;font-size:1.02rem;line-height:1.75}
.contact-partner-strip strong{font-weight:700}

@media(max-width:1024px){.contact-bottom-grid{grid-template-columns:1fr}.contact-trust-grid{grid-template-columns:1fr}}
@media(max-width:768px){.contact-layout{grid-template-columns:1fr}.contact-trust-grid{grid-template-columns:1fr}.contact-bottom-grid{grid-template-columns:1fr}.office-map-wrap{height:190px;margin:0 0 1rem 0}.contact-partner-strip{font-size:.92rem;padding:1.1rem 1.2rem}.contact-trust-card h3{font-size:1rem}.contact-trust-card p{font-size:.76rem}.form-row{grid-template-columns:1fr}}
@media(max-width:480px){.contact-layout{gap:2rem}}

