.contact-page .contact-breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;font-size:.875rem;color:var(--muted)}
.contact-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--blue)}.contact-breadcrumbs .icon{width:15px;height:15px}
.contact-page.interior-page .contact-heading{padding:22px 0 30px;border-bottom:2px solid var(--ink);background:white;border-radius:0}
.contact-page .contact-heading h1{font-size:clamp(2.25rem,3.4vw,3.5rem);line-height:1.08;letter-spacing:-.045em;color:var(--blue)}.contact-page .contact-heading h1 em{font-style:normal;color:var(--ink)}
.contact-page .contact-heading .eyebrow{margin-bottom:13px;color:var(--blue)}.contact-page .contact-heading>p:last-child{margin-top:17px;max-width:660px;font-size:1rem;line-height:1.7;color:var(--muted)}
.contact-page .contact-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:28px;padding:30px 0}
.contact-page .contact-methods{min-width:0;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:4px;padding:28px 30px;background:white}
.contact-section-heading{display:flex;align-items:center;gap:14px}.contact-page .contact-section-heading .eyebrow{font-size:.75rem;margin:0 0 5px}.contact-page .contact-section-heading h2{font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.2;letter-spacing:-.03em}
.contact-page .contact-icon{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:4px;background:#edf3ff;color:var(--blue)}
.contact-page .contact-intro{font-size:1rem;line-height:1.7;color:var(--muted);margin:20px 0}
.contact-email{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--blue);color:white;border-radius:4px;padding:18px 22px;min-width:0}.contact-email>span{min-width:0}.contact-email small{display:block;font-size:.8125rem;color:#e1eaff}.contact-email strong{display:block;font-size:clamp(1.45rem,2.3vw,1.9rem);font-weight:750;overflow-wrap:anywhere;line-height:1.4}.contact-email:hover{background:var(--blue-dark)}
.contact-email-hint{font-size:.75rem;color:var(--muted);margin-top:8px}.contact-page .contact-enquiries{margin-top:25px}.contact-enquiries h3{font-size:1.125rem;letter-spacing:-.02em}.contact-enquiries>p{font-size:.875rem;color:var(--muted);margin-top:4px;margin-bottom:8px}
.enquiry-link{display:flex;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid var(--line);min-height:72px}.enquiry-link:last-child{border-bottom:0;padding-bottom:0}.enquiry-link>span{flex:1;min-width:0}.enquiry-link strong{display:block;font-size:.9375rem;line-height:1.4}.enquiry-link small{display:block;font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:3px}.enquiry-link>.icon{width:21px;height:21px;color:var(--blue)}.enquiry-link:hover strong{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.contact-page .contact-location{border:1px solid var(--line);border-radius:4px;padding:0;min-width:0;overflow:hidden;background:#f5f7fb;scroll-margin-top:25px}
.contact-page .contact-location-photo{margin:0}.contact-page .contact-location-photo img{display:block;width:100%;height:190px;object-fit:cover;object-position:center 42%;aspect-ratio:auto}.contact-page .contact-location-photo figcaption{padding:7px 14px;font-size:.75rem;background:white;color:var(--muted);line-height:1.5}
.contact-location-body{padding:24px 28px 20px}.contact-page .contact-location .contact-icon{background:white}.contact-page .contact-location address{font-style:normal;font-size:1rem;line-height:1.75;margin:21px 0}.contact-location address strong{font-weight:700}
.contact-page .contact-location .button{min-height:48px}.contact-page .contact-arrival-note{font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:17px}
.contact-opening-hours{margin:0 0 22px;padding:18px 20px;background:#fff;border-left:3px solid var(--blue);border-radius:0 4px 4px 0}
.contact-opening-hours h3{margin:0 0 8px;font-size:1.125rem;line-height:1.4;color:var(--blue)}
.contact-opening-hours p{margin:0;font-size:1rem;line-height:1.7;color:var(--ink)}
.contact-prayer-link{display:flex;align-items:center;gap:9px;min-height:48px;margin-top:14px;border-top:1px solid var(--line);padding-top:12px;color:var(--blue);font-size:.875rem;font-weight:650}.contact-prayer-link .icon{width:19px;height:19px}.contact-prayer-link .icon:last-child{margin-left:auto}.contact-prayer-link:hover{text-decoration:underline;text-underline-offset:3px}
.contact-page .contact-updates{display:flex;align-items:center;gap:20px;padding:25px 28px;margin-bottom:36px;background:#eafbf0;border:1px solid #b8e8c8;border-radius:4px}.contact-page .contact-updates .contact-icon{background:var(--green);color:#07190d}.contact-updates>div{flex:1;min-width:0}.contact-page .contact-updates h2{font-size:1.55rem;line-height:1.25;letter-spacing:-.025em}.contact-page .contact-updates p{font-size:.9375rem;color:#345441;line-height:1.65;margin-top:6px}.contact-page .contact-updates .button{background:var(--green);border-color:var(--green);color:#07190d;flex-shrink:0}.contact-page .contact-updates .button:hover{background:#67f394;border-color:#67f394}
.contact-page main a:focus-visible{outline:3px solid #be7b12;outline-offset:4px}
@media(max-width:1000px){.contact-page .contact-layout{gap:22px}.contact-page .contact-methods{padding:24px}.contact-location-body{padding:22px}.contact-page .contact-updates{flex-wrap:wrap}.contact-page .contact-updates .button{margin-left:68px}}
@media(max-width:800px){.contact-page .contact-layout{grid-template-columns:1fr;padding:24px 0}.contact-page.interior-page .contact-heading{padding:14px 0 25px}.contact-page .contact-location-photo img{height:220px}.contact-page .contact-updates .button{margin-left:0}}
@media(max-width:530px){.contact-page .contact-methods{padding:22px 18px}.contact-location-body{padding:22px 18px}.contact-page .contact-heading h1{font-size:clamp(2rem,7.5vw,2.5rem)}.contact-section-heading{gap:11px}.contact-page .contact-icon{width:42px;height:42px}.contact-page .contact-location-photo img{height:180px}.contact-email{padding:16px}.contact-page .contact-updates{padding:22px 18px;gap:14px}.contact-updates>div{flex-basis:calc(100% - 56px)}.contact-page .contact-updates .button{width:100%}.enquiry-link{gap:10px}.contact-page .contact-location .button{width:100%}}
@media(prefers-reduced-motion:reduce){.contact-page main *{transition:none!important}}
