
.contact-page{background:var(--cream);color:var(--ink)}
.contact-info-main{max-width:1180px;margin:0 auto;padding:clamp(54px,8vw,100px) 28px clamp(70px,9vw,112px);min-height:52vh}
.contact-info-heading{text-align:center;margin:0 auto 58px;max-width:680px}
.contact-info-heading h1{font:600 clamp(34px,5vw,48px)/1.15 "Schoolbell",sans-serif;color:#9f6c56;margin:0 0 14px}
.contact-info-heading p{font:400 16px/1.7 "DM Sans",sans-serif;color:#a97864;margin:0}
.contact-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;text-align:center}
.contact-detail{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:34px 20px;min-height:205px;background:#fffaf1;border:1px solid rgba(66,53,43,.10);border-radius:16px;box-shadow:0 8px 26px rgba(66,53,43,.04)}
.contact-detail-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:rgba(207,116,134,.12);color:#a5745f;font:500 22px "DM Sans",sans-serif}
.contact-detail h2{font:600 25px/1.2 "Schoolbell",sans-serif;color:#a5745f;margin:0}
.contact-detail a,.contact-detail span:not(.contact-detail-icon){font:500 15px/1.6 "DM Sans",sans-serif;color:#8e6655;overflow-wrap:anywhere}
.contact-detail a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.contact-info-main{padding:48px 20px 68px}.contact-info-heading{margin-bottom:38px}.contact-details{grid-template-columns:1fr;gap:16px}.contact-detail{min-height:150px;padding:25px 18px}}
@media(max-width:420px){.contact-info-main{padding:38px 15px 54px}.contact-info-heading p{font-size:14px}.contact-detail a,.contact-detail span:not(.contact-detail-icon){font-size:14px}}
