
.ob-seo{max-width:1140px;margin:0 auto;padding:58px 0;color:#4b4b50;font:inherit;font-size:16px;line-height:1.85;overflow-wrap:break-word}
.ob-seo h2,.ob-seo h3{font-family:inherit;font-weight:600;color:#292733;line-height:1.35;text-transform:none;letter-spacing:normal}
.ob-seo h2{font-size:clamp(25px,2.4vw,32px);margin:0 0 22px}.ob-seo h3{font-size:20px;margin:0 0 12px}
.ob-seo p{margin:0 0 19px}.ob-seo p:last-child{margin-bottom:0}.ob-seo strong{font-weight:600}.ob-seo a{color:#8b6200;text-decoration:underline;text-underline-offset:3px}.ob-seo a:hover{color:#443000}
.ob-seo__intro{max-width:970px;margin-bottom:30px}.ob-seo__intro>p{font-size:18px;line-height:1.8}
.ob-seo__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 30px}.ob-seo__card{min-width:0;margin:0;border:1px solid #e9e7e1;background:#fff;border-radius:3px;overflow:hidden}.ob-seo__card>a{display:block;text-decoration:none;color:inherit;height:100%}.ob-seo__card img{display:block;width:100%;height:220px;object-fit:cover}.ob-seo__card-copy{padding:22px}.ob-seo__card-copy p{font-size:15px;line-height:1.7}.ob-seo__card figcaption{padding:16px 20px;font-size:14px;color:#56545a;line-height:1.6}.ob-seo__gallery{margin:42px 0}
.ob-seo__section{margin:48px 0}
.ob-seo__faq{margin:50px 0}.ob-seo__faq details{border-bottom:1px solid #e2e0db;padding:0;background:#fff}.ob-seo__faq summary{position:relative;cursor:pointer;padding:20px 36px 20px 0;list-style:none;font-size:17px;font-weight:600;color:#292733;line-height:1.55}.ob-seo__faq summary::-webkit-details-marker{display:none}.ob-seo__faq summary:after{content:'+';position:absolute;right:9px;top:18px;color:#a86c00;font-size:24px;font-weight:400}.ob-seo__faq details[open]>summary:after{content:'−'}.ob-seo__faq details>div{padding:0 22px 22px 0}.ob-seo :focus-visible{outline:2px solid #a86c00;outline-offset:4px}
.ob-seo__related,.ob-seo__local{margin:42px 0;padding-top:28px;border-top:1px solid #e6e3db}.ob-seo__related>div,.ob-seo__local>div{display:flex;flex-wrap:wrap;gap:12px 24px}.ob-seo__related a,.ob-seo__local a{font-size:15px;line-height:1.7}
.ob-local-hero{position:relative;min-height:360px;padding:170px 24px 70px;background-position:center;background-size:cover;color:#fff;text-align:center}.ob-local-hero>div{max-width:950px;margin:auto}.ob-local-hero h1{font-family:inherit;font-weight:600;font-size:clamp(28px,3.4vw,44px);line-height:1.3;color:#fff;margin:16px 0 0}.ob-local-hero p{font-size:14px;margin:0;color:#fff}
.ob-service-hero h1{font-size:clamp(28px,3.2vw,42px)!important;line-height:1.25!important;overflow-wrap:normal}
@media(max-width:1000px){.ob-seo__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ob-seo{padding:44px 0}.ob-seo__card img{height:230px}}
@media(max-width:640px){.ob-seo{font-size:16px;line-height:1.8;padding:36px 0}.ob-seo__intro>p{font-size:17px}.ob-seo__cards{grid-template-columns:1fr;gap:20px}.ob-seo__card img{height:auto;aspect-ratio:4/3;object-fit:cover}.ob-seo__section{margin:36px 0}.ob-seo__faq summary{font-size:16px}.ob-local-hero{min-height:320px;padding:155px 18px 55px}.ob-local-hero h1{font-size:29px}.ob-seo__related>div,.ob-seo__local>div{flex-direction:column;gap:10px}}

.ob-seo figure.ob-seo__card>a{height:auto}

.ob-seo__contact-line{margin:24px 0 36px!important;font:inherit;line-height:1.8}.ob-seo__contact-line a{white-space:nowrap}.ob-seo__contact-line span{margin:0 8px}.ob-seo__card{border:0;border-radius:0;background:transparent;box-shadow:none}.ob-seo__card-copy{padding:18px 0 0}.ob-seo__card figcaption{padding:12px 0 0}.ob-seo__card>a{height:auto}
@media(max-width:640px){.ob-seo__contact-line span{display:none}.ob-seo__contact-line a:last-child{display:block}}

/* Accordion colours and spacing follow the original Oculis accordion component. */
.ob-seo__faq details,.ob-seo__process details{margin:0;border:0;background:#fff}
.ob-seo__faq summary,.ob-seo__process summary{position:relative;display:block;list-style:none;cursor:pointer;margin:0;padding:20px 58px 20px 28px;background:#ffb600;color:#202020;border-bottom:1px solid rgba(255,255,255,.5);line-height:1.5;font-size:17px;font-weight:600}
.ob-seo__faq summary:hover,.ob-seo__process summary:hover{background:#f2ad00}
.ob-seo__faq summary:after,.ob-seo__process summary:after{content:'+';position:absolute;right:24px;top:18px;color:#202020;font-size:24px;font-weight:400}
.ob-seo__faq details[open]>summary:after,.ob-seo__process details[open]>summary:after{content:'−'}
.ob-seo__process summary::-webkit-details-marker{display:none}
.ob-seo__process summary h2{margin:0;font-size:20px;line-height:1.5;color:inherit;font-weight:600}
.ob-seo__faq details>div,.ob-seo__process details>div{padding:26px 28px;border:1px solid #eee;border-top:0}
.ob-seo__process{margin:46px 0}
.ob-seo__section>h2:after{content:'';display:block;width:44px;height:3px;margin-top:17px;background:#ffb600}
@media(max-width:640px){.ob-seo__faq summary,.ob-seo__process summary{padding:18px 48px 18px 18px;font-size:16px}.ob-seo__faq summary:after,.ob-seo__process summary:after{right:17px;top:16px}.ob-seo__process summary h2{font-size:18px}.ob-seo__faq details>div,.ob-seo__process details>div{padding:20px 18px}}

/* Alternating photographs and copy follow the site's original image/text sections. */
.ob-seo__feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:44px;align-items:start;margin:58px 0}
.ob-seo__feature-copy{min-width:0}.ob-seo__feature h2{font-size:clamp(24px,2.2vw,29px)}
.ob-seo__feature h2:after{content:'';display:block;width:44px;height:3px;margin-top:17px;background:#ffb600}
.ob-seo__visual{margin:0;min-width:0}.ob-seo__visual a{display:block}.ob-seo__visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.ob-seo__visual figcaption{padding:12px 0 0;color:#615e65;font-size:14px;line-height:1.6}
.ob-seo__feature--reverse{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.ob-seo__feature--reverse .ob-seo__feature-copy{grid-column:2;grid-row:1}.ob-seo__feature--reverse .ob-seo__visual{grid-column:1;grid-row:1}
.ob-seo__gallery{margin:58px 0}
@media(max-width:900px){.ob-seo__feature,.ob-seo__feature--reverse{grid-template-columns:minmax(0,1fr);gap:24px;margin:40px 0}.ob-seo__feature--reverse .ob-seo__feature-copy,.ob-seo__feature--reverse .ob-seo__visual{grid-column:auto;grid-row:auto}.ob-seo__visual img{max-height:560px}.ob-seo__feature h2{font-size:25px}}
