/* Contact-only composition. Logical dimensions keep Arabic and English on the same grid. */
.public-page-content .contact-page .public-section-header{padding-block-end:24px}
.contact-page .public-section-intro{padding-block:24px 0}
.public-page-content .contact-content{padding-block:0 48px}
.contact-page .contact-jump-links{display:flex;flex-wrap:wrap;gap:10px;margin-block-end:24px}
.contact-jump-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 16px;border:1px solid var(--public-line);border-radius:4px;color:var(--public-green);font-size:13px;text-decoration:none;background:var(--public-surface)}
.contact-jump-links svg{width:18px;height:18px;flex:none}.contact-jump-links svg:last-child{width:13px;margin-inline-start:14px}
.public-page-content .contact-page .contact-section{display:grid;grid-template-columns:minmax(0,1fr);margin:0;border:1px solid var(--public-line);border-block-start:3px solid var(--public-green);border-radius:8px;background:var(--public-surface);overflow:hidden;scroll-margin-block-start:24px}
.public-page-content .contact-page .contact-section+.contact-section{margin-block-start:28px}
.public-page-content .contact-page .contact-section.has-map{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.contact-page .contact-information{min-width:0;padding:28px 32px}
.contact-page .contact-section-heading{display:flex;align-items:center;gap:16px;margin-block-end:24px}
.contact-page .contact-heading-icon{display:grid;place-items:center;flex:none;width:52px;height:56px;border-radius:4px;background:var(--public-green);color:#f8f4ed}
.contact-page .is-management .contact-heading-icon{background:#e9e1d1;color:var(--public-green)}
.contact-page .contact-heading-icon svg{width:26px;height:26px;stroke-width:1.5}
.contact-page .contact-eyebrow{margin:0 0 4px;font-size:11px;line-height:1.8;color:var(--public-muted)}
.public-page-content .contact-page .contact-section-heading h2{margin:0;font-size:26px;line-height:1.5;font-weight:600;color:var(--public-green)}
.public-page-content .contact-page .contact-grid{display:flex;flex-direction:column;gap:0}
.public-page-content .contact-page .contact-grid .contact-detail{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:16px 0;border:0;border-block-start:1px solid #e9e2d7;background:transparent;overflow-wrap:anywhere}
.contact-page .contact-detail-icon{display:grid;place-items:center;flex:none;width:28px;height:28px;color:var(--public-green)}
.contact-page .contact-detail-icon svg{width:19px;height:19px;stroke-width:1.6}
.contact-page .contact-detail-content{flex:1;min-width:0}
.public-page-content .contact-page .contact-detail h3{display:block;margin:0 0 6px;color:var(--public-muted);font-size:12px;line-height:1.8;font-weight:500}
.public-page-content .contact-page .contact-detail address,.public-page-content .contact-page .contact-detail p{margin:0;font-style:normal;font-size:14px;line-height:1.9;color:var(--public-ink);white-space:pre-line}
.contact-page .contact-phone-list{display:flex;flex-wrap:wrap;gap:8px}
.contact-page .contact-phone-action{display:flex;align-items:stretch;min-width:0;max-width:100%;border:1px solid #d4ddd4;border-radius:4px;background:#f3f5ef;overflow:hidden}
.public-page-content .contact-page .contact-phone-action a{display:flex;align-items:center;justify-content:space-between;flex:1;gap:18px;min-width:0;min-height:44px;padding:6px 12px;color:var(--public-green);text-decoration:none}
.contact-phone-action bdi{font-size:16px;font-weight:600;letter-spacing:.3px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.contact-call-label{display:inline-flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap;color:var(--public-muted)}
.contact-call-label svg{width:12px;height:12px}
.contact-page .contact-email-action{display:flex;align-items:stretch;width:fit-content;max-width:100%;min-width:0;border-block-end:1px solid #a3b5a6}
.public-page-content .contact-page .contact-email-action a{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;min-width:0;min-height:44px;padding-block:5px;color:var(--public-green);text-decoration:none}
.contact-email-action bdi{min-width:0;overflow-wrap:anywhere;font-size:15px;line-height:1.7;font-weight:500}
.contact-email-arrow{flex:none;font-size:20px}
.contact-page .contact-copy{display:grid;place-items:center;flex:none;width:44px;min-height:44px;padding:8px;border:0;border-inline-start:1px solid #d4ddd4;border-radius:0;background:transparent;color:var(--public-muted);cursor:pointer}
.contact-page .contact-copy[hidden]{display:none}
.contact-copy svg{width:16px;height:16px;stroke-width:1.6}
.contact-page .contact-email-action .contact-copy{border:0;margin-inline-start:8px}
.contact-page .contact-copy:hover,.contact-page .contact-phone-action a:hover{background:#e6ede2;color:var(--public-green)}
.contact-page .contact-email-action a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-page .contact-location{display:flex;flex-direction:column;min-width:0;border-inline-start:1px solid var(--public-line);background:#efeee5}
.contact-page .contact-map-surface{flex:1;min-height:320px;position:relative}
.public-page-content .contact-page .contact-map-frame{display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;border:0;border-radius:0;background:#e6e7dc}
.contact-page .contact-directions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-block-start:1px solid var(--public-line);background:#f2ecdf}
.contact-directions>span{display:inline-flex;align-items:center;gap:7px;font-size:11px;line-height:1.8;color:var(--public-muted)}
.contact-directions>span svg{width:16px;height:16px;flex:none}
.public-page-content .contact-page .contact-directions .public-button{min-height:44px;gap:10px;padding:10px 16px;font-size:12px;white-space:normal;text-align:start}
.contact-directions .public-button svg{width:16px;height:16px;flex:none}
.contact-page :is(a,button):focus-visible{outline:2px solid #c9382a;outline-offset:3px}
.contact-page .contact-phone-action:focus-within{outline:2px solid #c9382a;outline-offset:3px}
.contact-page .contact-copy-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contact-copy-feedback{position:fixed;z-index:10070;max-width:min(280px,calc(100vw - 16px));box-sizing:border-box;padding:8px 12px;border-radius:5px;background:#234e46;color:#fff;font-family:inherit;font-size:13px;line-height:1.7;box-shadow:0 3px 12px #203b3520;pointer-events:none;text-align:center}
.contact-copy-feedback[hidden]{display:none}
.contact-page .contact-copy.is-copied{color:#234e46;background:#e6ede2}
.contact-copy.is-copied svg{display:none}
.contact-copy.is-copied::after{content:'✓';font-size:20px;line-height:1}
@media(max-width:1000px){.contact-page .contact-information{padding:24px}.contact-page .contact-directions{align-items:stretch;flex-direction:column}.contact-page .contact-directions .public-button{justify-content:center}.contact-page .contact-phone-action{flex:1 1 100%}}
@media(max-width:760px){.public-page-content .contact-page .contact-section.has-map{grid-template-columns:minmax(0,1fr)}.contact-page .contact-information{padding:24px}.contact-page .contact-location{border-inline-start:0;border-block-start:1px solid var(--public-line)}.contact-page .contact-map-surface{flex:none;height:260px;min-height:0}.contact-page .contact-directions{flex-direction:row;align-items:center}.contact-page .contact-phone-action{flex:0 1 auto}.contact-page .contact-section-heading{margin-block-end:18px}.contact-page .contact-section-heading h2{font-size:24px}.contact-page .contact-jump-links{gap:8px}.contact-jump-links a{padding-inline:12px;gap:8px}.contact-jump-links svg:last-child{margin-inline-start:4px}}
@media(max-width:420px){.contact-page .contact-information{padding:22px 18px}.contact-page .contact-heading-icon{width:44px;height:48px}.contact-page .contact-section-heading{gap:12px}.contact-page .contact-detail-icon{width:22px}.public-page-content .contact-page .contact-grid .contact-detail{gap:10px}.contact-page .contact-phone-action{flex:1 1 100%}.contact-page .contact-directions{padding:16px;flex-direction:column;align-items:stretch}.contact-directions>span{justify-content:center}.contact-page .contact-map-surface{height:240px}.contact-page .contact-jump-links a{flex:1;justify-content:center;font-size:12px}.contact-jump-links svg:last-child{display:none}.contact-email-action bdi{font-size:14px}}
@media(prefers-reduced-motion:reduce){.contact-page{scroll-behavior:auto}}
