.page-hero{background:var(--navy);color:#fff;padding:64px 0 68px}.page-hero .eyebrow{color:#cbb38d;margin-bottom:23px}.page-hero h1{font-size:clamp(2.7rem,4.6vw,4.5rem);max-width:1050px;line-height:1.12}.page-intro{font-size:1.13rem;color:#c4d0d3;max-width:710px;margin-top:27px;line-height:1.75}.breadcrumb{font-size:.85rem;color:#bfcccf;display:inline-block;margin-bottom:32px}.breadcrumb:hover{text-decoration:underline;text-underline-offset:5px}.service-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:100px;align-items:start}.service-body .eyebrow{color:var(--muted);margin-bottom:18px}.service-body h2{font-size:2.2rem;margin-bottom:25px}.large-copy{font-size:1.1rem;color:var(--muted);line-height:1.85}.service-list{list-style:none;padding:0;margin:36px 0}.service-list li{border-top:1px solid var(--line);padding:16px 0 16px 25px;position:relative}.service-list li:last-child{border-bottom:1px solid var(--line)}.service-list li:before{content:'—';position:absolute;left:0;color:#796642}.preparation{border-left:2px solid var(--gold);padding-left:25px;margin-top:40px}.preparation h3{font-size:1.15rem;margin-bottom:13px}.preparation p{color:var(--muted)}.service-aside{background:var(--mist);padding:30px;position:sticky;top:30px}.service-aside .eyebrow{font-size:.76rem;color:var(--muted);margin-bottom:20px}.service-aside h3{margin-bottom:20px}.service-aside p:not(.eyebrow){font-size:.95rem;color:var(--muted);margin-bottom:25px}.service-aside .button{width:100%;font-size:.85rem;gap:16px;padding-inline:14px}.phone-link{display:block;margin:20px 0;font-size:1.14rem;letter-spacing:.025em}.aside-person{border-top:1px solid #cbd6d6;padding-top:23px;margin-top:26px}.aside-person>span{display:block;font-size:.8rem;color:var(--muted);margin-bottom:8px}.small-link{display:block;margin-top:25px;font-size:.8rem;text-decoration:underline;text-underline-offset:4px}.related-section{padding:45px 0 55px;background:var(--mist)}.related-section .eyebrow{color:var(--muted);margin-bottom:23px}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:60px}.related-links a{display:flex;justify-content:space-between;font-size:1.35rem;border-top:1px solid #cbd6d6;padding-top:20px}.related-links a:hover{color:#596f73}.service-jump{display:flex;gap:45px;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:58px;flex-wrap:wrap}.service-jump a{font-size:.92rem;display:flex;gap:22px}.service-jump a:hover{text-decoration:underline;text-underline-offset:6px}.service-category+.service-category{margin-top:76px}.service-category h2{font-size:2rem;margin-bottom:28px}.directory-row{display:grid;grid-template-columns:1fr 1.3fr 25px;gap:45px;padding:30px 0;border-top:1px solid var(--line);align-items:center;transition:background .2s}.directory-row:last-child{border-bottom:1px solid var(--line)}.directory-row:hover{background:var(--mist)}.directory-row p{color:var(--muted);font-size:.98rem}.directory-row>span{font-size:1.6rem}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.process-grid h3{margin-bottom:18px}.process-grid p{color:var(--muted)}.step-no{font-size:3.5rem;font-family:'Manrope',sans-serif;color:#768d90;line-height:1;display:block;border-top:1px solid #cbd6d6;padding-top:30px;margin-bottom:28px}.people-list{margin-top:28px}.person-row{display:grid;grid-template-columns:1.5fr 1fr auto;align-items:center;gap:40px;padding:38px 0;border-top:1px solid var(--line)}.person-row:last-child{border-bottom:1px solid var(--line)}a.person-row:hover{background:var(--mist)}.person-row h2{font-size:1.9rem}.person-role{font-size:.9rem;color:var(--muted);margin-top:8px}.person-row>p{font-size:.95rem;color:var(--muted)}.person-arrow{font-size:1.7rem}.team-note{display:flex;gap:70px;align-items:center;justify-content:space-between;margin-top:45px}.team-note p{max-width:670px;color:var(--muted)}.team-note a{white-space:nowrap}.profile-expertise-title{margin-top:45px}.profile-services{margin-top:20px}.profile-services a{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line)}.profile-services a:last-child{border-bottom:1px solid var(--line)}.profile-services a:hover{text-decoration:underline}.back-people{margin-top:35px}.email-link{font-size:.88rem;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.fee-links{display:grid;grid-template-columns:1fr 1fr;margin-top:28px;border-top:1px solid var(--line)}.fee-links a{display:flex;justify-content:space-between;gap:18px;padding:18px 18px 18px 0;border-bottom:1px solid var(--line);font-size:.93rem}.fee-links a:hover{text-decoration:underline}.content-heading{margin-top:60px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:500;font-size:1.03rem;line-height:1.5;padding-right:20px}details[open] summary{margin-bottom:20px}details p{color:var(--muted);margin-bottom:16px}details .text-link{font-size:.9rem}.contact-page-grid{display:grid;grid-template-columns:.82fr 1.3fr;gap:100px;align-items:start}.contact-details>.eyebrow{margin-bottom:23px;color:var(--muted)}.contact-details h2{font-size:2.2rem;margin-bottom:30px}.contact-large{display:block;font-size:1.8rem;font-family:'Manrope',sans-serif;margin-bottom:8px}.contact-email{overflow-wrap:anywhere;border-bottom:1px solid #a4b0b4;padding-bottom:3px;font-size:1rem}.office-address{margin-top:42px;padding-top:35px;border-top:1px solid var(--line)}.office-address h3{font-size:1.2rem;margin-bottom:16px}.office-address .muted{margin-top:22px;font-size:.94rem}.muted{color:var(--muted)}.office-address .text-link{margin-top:20px}.enquiry-panel{background:var(--mist);padding:38px}.enquiry-panel>h2{font-size:1.7rem}.form-intro{font-size:.95rem;color:var(--muted);margin-top:15px;margin-bottom:27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;min-width:0}.form-field label{font-size:.88rem;font-weight:500}.form-field label span{font-size:.75rem;color:var(--muted);font-weight:400}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #b9c8cb;padding:12px 13px;background:#fff;color:var(--navy);border-radius:0;min-height:49px;font-size:1rem}.form-field textarea{resize:vertical}.form-field input:hover,.form-field textarea:hover,.form-field select:hover{border-color:#6f858a}.form-field textarea::placeholder{color:#687e83;font-size:.9rem}.form-note{font-size:.79rem;color:var(--muted);line-height:1.7;margin:16px 0}.form-note a{text-decoration:underline;text-underline-offset:3px}.enquiry-panel form>.button{margin-top:5px}.email-result{padding-top:24px;border-top:1px solid #b9c8cb;margin-top:24px}.email-result h3{font-size:1.2rem;margin-bottom:10px}.email-result>p{font-size:.9rem;color:var(--muted);margin-bottom:20px}.email-result .button{font-size:.84rem;gap:10px}.email-result details{border-bottom:0}.email-result label{font-size:.85rem;display:block;margin-bottom:8px}.email-result textarea{width:100%;resize:vertical;border:1px solid #b9c8cb;padding:12px;font: .86rem/1.6 'DM Sans',sans-serif;margin-bottom:16px;background:white;color:var(--navy)}.email-result summary{font-size:.9rem}.email-result details p{font-size:.85rem}.email-result .button-outline{color:var(--navy)}.email-result .button-outline:hover{background:#e2e9e8}#copy-status{margin-top:12px}.prose{max-width:840px}.prose h2{font-size:1.6rem;margin:38px 0 20px}.prose h2:first-child{margin-top:0}.prose p{color:var(--muted);font-size:1.03rem}.prose p a{text-decoration:underline;text-underline-offset:4px}.prose .text-link{color:var(--navy)}
@media(max-width:1100px){.service-layout{gap:55px;grid-template-columns:minmax(0,1fr) 305px}.contact-page-grid{gap:55px}.enquiry-panel{padding:28px}.person-row{gap:24px}.person-row h2{font-size:1.6rem}.person-row>p{font-size:.88rem}}
@media(max-width:850px){.service-layout{gap:40px;grid-template-columns:1fr}.service-aside{position:static;max-width:100%;display:block}.service-aside .button{max-width:300px}.service-body h2{font-size:2rem}.page-hero{padding:50px 0}.directory-row{gap:28px;grid-template-columns:1fr 1.2fr 20px}.directory-row h3{font-size:1.25rem}.process-grid{gap:28px}.person-row{grid-template-columns:1fr auto;gap:10px 25px}.person-row>p{grid-column:1;font-size:.95rem}.person-row>.person-arrow,.person-row>.text-link{grid-column:2;grid-row:1 / 3}.person-row h2{font-size:1.75rem}.team-note{align-items:flex-start;flex-direction:column;gap:20px}.contact-page-grid{grid-template-columns:1fr;gap:55px}.contact-details{max-width:550px}.enquiry-panel{padding:35px}.page-intro{font-size:1.05rem}}
@media(max-width:520px){.page-hero h1{font-size:2.65rem}.page-hero{padding:43px 0 48px}.page-hero .eyebrow{font-size:.75rem;letter-spacing:.12em}.page-intro{margin-top:22px;font-size:1rem}.service-body h2{font-size:1.8rem}.service-aside{padding:26px}.directory-row{grid-template-columns:1fr 20px;gap:12px 20px;padding:25px 0}.directory-row h3{font-size:1.4rem}.directory-row p{grid-column:1}.directory-row>span{grid-column:2;grid-row:1 / 3}.process-grid{grid-template-columns:1fr;gap:38px}.step-no{font-size:2.7rem;padding-top:20px;margin-bottom:20px}.service-jump{gap:18px;margin-bottom:40px}.service-category h2{font-size:1.65rem}.related-links{grid-template-columns:1fr;gap:24px}.related-links a{font-size:1.15rem}.person-row h2{font-size:1.45rem}.person-role{font-size:.82rem}.person-row>p{font-size:.86rem}.person-row>.text-link{font-size:.83rem;gap:8px}.fee-links{grid-template-columns:1fr}.enquiry-panel{padding:25px 20px;margin-inline:-8px}.form-grid{grid-template-columns:1fr;gap:0}.contact-large{font-size:1.55rem}.enquiry-panel>h2{font-size:1.5rem}.form-intro{font-size:.91rem}.form-field label span{font-size:.76rem}.service-body .large-copy{font-size:1.03rem}.breadcrumb{font-size:.8rem;margin-bottom:24px}.prose h2{font-size:1.5rem}.prose p{font-size:1rem}}

.directory-row p,.form-intro,.service-aside p:not(.eyebrow){font-size:1rem}
.form-consent{margin-top:1.25rem}.form-consent label{display:block;font-size:.9rem;line-height:1.6}.form-consent input{width:auto;margin-right:.5rem}.form-status{margin-top:1rem;font-weight:600;color:var(--navy)}
.profile-education{margin-top:28px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-education .eyebrow{margin-bottom:10px}.profile-education h3{font-size:1.15rem;margin-bottom:7px}.profile-education p:last-child{color:var(--muted)}.profile-skills-title{font-size:1.15rem;margin-top:38px;margin-bottom:0}.contact-option{white-space:nowrap;font-size:.85rem}

/* Expertise directory imagery */
.page-hero-with-image{padding-block:0}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);align-items:stretch}.page-hero-grid>div{padding:64px 70px 68px 0}.page-hero-image{margin:0;min-height:328px;position:relative;overflow:hidden}.page-hero-image img{display:block;width:100%;height:100%;object-fit:cover}.page-hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,49,68,.24),transparent 35%);pointer-events:none}.page-hero-image figcaption{position:absolute;z-index:1;right:18px;bottom:15px;color:#fff;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,0,0,.48)}.directory-row{grid-template-columns:150px minmax(180px,1fr) minmax(260px,1.3fr) 25px}.directory-image{width:150px;height:105px;object-fit:cover;display:block}.directory-row:hover .directory-image{filter:saturate(1.08);transform:scale(1.015)}.directory-image{transition:filter .2s,transform .2s}
@media(max-width:850px){.page-hero-grid{grid-template-columns:1fr}.page-hero-grid>div{padding:50px 0}.page-hero-image{min-height:265px;margin-inline:calc((100vw - min(100vw - 40px, 1180px)) / -2)}.directory-row{grid-template-columns:115px minmax(150px,1fr) minmax(160px,1.2fr) 20px;gap:20px}.directory-image{width:115px;height:88px}}
@media(max-width:520px){.page-hero-grid>div{padding:43px 0 48px}.page-hero-image{min-height:220px;margin-inline:-20px}.directory-row{grid-template-columns:82px minmax(0,1fr) 20px;gap:12px 16px}.directory-image{grid-row:1 / 3;width:82px;height:100%;min-height:96px}.directory-row h3{grid-column:2}.directory-row p{grid-column:2}.directory-row>span{grid-column:3;grid-row:1 / 3}}

/* News archive and future article template */
.blog-coming-soon{padding-block:88px}.coming-soon-panel{display:grid;grid-template-columns:132px minmax(0,660px);gap:46px;align-items:start;max-width:910px;margin-inline:auto;padding:55px 60px;background:var(--mist);border-top:2px solid var(--gold)}.spinner{width:78px;height:78px;border:3px solid #b8c7c9;border-top-color:var(--navy);border-radius:50%;animation:blog-spin .9s linear infinite}.coming-soon-panel .eyebrow{color:var(--muted);margin-bottom:17px}.coming-soon-panel h2{font-size:2rem;margin-bottom:18px}.coming-soon-panel p:not(.eyebrow){color:var(--muted);max-width:590px;margin-bottom:28px}.blog-article-header time{display:block;margin-top:27px;font-size:.87rem;color:#c4d0d3}.blog-article{max-width:980px;padding-block:72px}.blog-featured-image{margin:0 0 48px}.blog-featured-image img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.blog-article .prose{max-width:740px;margin-inline:auto}.blog-article code{font:inherit;font-size:.94em;background:var(--mist);padding:.08em .28em}@keyframes blog-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}@media(max-width:650px){.blog-coming-soon{padding-block:55px}.coming-soon-panel{grid-template-columns:1fr;gap:28px;padding:34px 25px}.spinner{width:58px;height:58px}.coming-soon-panel h2{font-size:1.65rem}.blog-article{padding-block:45px}.blog-featured-image{margin-bottom:35px}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Sidebar contact and regulation details. */
.phone-link{border-top:1px solid #cbd6d6;padding-top:17px;margin-top:24px;font-family:'Manrope',sans-serif;font-size:1.25rem;letter-spacing:.015em;line-height:1.25}
.phone-link span{display:block;margin-bottom:6px;color:var(--muted);font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.phone-link:hover{color:#596f73}
.aside-regulation{border-top:1px solid #cbd6d6;padding-top:23px;margin-top:25px}
.aside-regulation>span{display:block;font-size:.8rem;color:var(--muted);margin-bottom:8px}
.sra-badge{max-width:275px;margin-top:20px;aspect-ratio:275 / 163;overflow:hidden}
.sra-badge iframe{display:block;width:100%;height:100%;border:0;margin:0;padding:0;background:transparent}
.complaint-prose h3{font-size:1.15rem;margin:32px 0 14px}
.complaint-prose address{font-style:normal}

/* Contact enquiry form */
.enquiry-panel{position:relative;border-top:3px solid var(--gold);box-shadow:0 18px 45px #11272d0d}.form-heading .eyebrow{color:#6f5b3d;font-size:.72rem;margin-bottom:12px}.form-heading{padding-bottom:25px;border-bottom:1px solid #cbd6d6;margin-bottom:25px}.form-intro{margin-bottom:0;max-width:610px}.form-required-note{font-size:.78rem;color:var(--muted);margin-bottom:18px}.form-grid{row-gap:16px}.form-field{margin-bottom:16px}.form-field textarea{min-height:150px}.form-required-note span,.form-field label>span:not(.optional),.form-consent label>span{color:#806237;font-weight:700}.form-field label .optional{color:var(--muted);font-size:.75rem;font-weight:400}.form-field input,.form-field select,.form-field textarea{transition:border-color .2s,box-shadow .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#536e73;box-shadow:0 0 0 3px #b8c9c833;outline:0}.field-guidance{font-size:.77rem;line-height:1.5;color:var(--muted);margin-top:-2px}.form-consent{padding:15px 18px;background:#fff;border-left:2px solid var(--gold)}.form-consent label{display:flex;align-items:flex-start;gap:11px}.form-consent input{accent-color:var(--navy);flex:0 0 auto;margin:.28em 0 0}.form-submit-row{display:flex;align-items:center;gap:22px;margin-top:22px}.form-submit-row .button{margin-top:0}.form-submit-row .form-note{margin:0;max-width:370px}.form-status{padding-left:14px;border-left:2px solid var(--gold)}@media(max-width:520px){.form-heading{padding-bottom:20px;margin-bottom:20px}.form-submit-row{align-items:flex-start;flex-direction:column;gap:14px}.form-submit-row .form-note{max-width:none}.form-consent{padding:15px}.field-guidance{font-size:.75rem}}
.form-field--captcha .captcha-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
}
.form-field--captcha .captcha-question {
  font-weight: bold;
  font-size: 1.1rem;
  color: #11272d;
}
.form-field--captcha .captcha-equals {
  color: #58686d;
}
.form-field--captcha input {
  width: 80px;
  text-align: center;
}

/* Team profile contact panels */
.team-profile-aside{padding:30px}.team-profile-aside .email-link{display:inline-block;padding-bottom:2px}.team-profile-aside .phone-link{border-top:1px solid #cbd6d6;padding-top:18px;margin:26px 0 20px;line-height:1.2}.team-profile-aside .phone-link .contact-option{display:block;margin-top:4px;padding:0;border:0;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.team-profile-aside .button{margin-top:0}.team-profile-aside .aside-regulation{border-top:1px solid #cbd6d6;padding-top:22px;margin-top:27px}.team-profile-aside .aside-regulation>span{display:block;font-size:.8rem;color:var(--muted);margin-bottom:8px}.team-profile-aside .sra-badge{margin-top:17px}.team-profile-aside .sra-badge iframe{display:block}
.profile-education-entry + .profile-education-entry{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.profile-education-entry h3{font-size:1.15rem;margin-bottom:7px}.profile-education-entry p{color:var(--muted)}

/* Contact form consent and bot protection */
.form-consent{margin:24px 0 20px;padding:22px 24px;background:#fff;border:1px solid #d5dede;border-left:3px solid var(--gold)}
.form-consent legend{padding:0;font-size:.86rem;font-weight:600;color:var(--navy)}
.form-consent legend span{color:#806237}
.consent-option{display:grid!important;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;margin-top:14px;font-size:.92rem;line-height:1.6;color:var(--navy)}
.consent-option input{width:16px!important;height:16px;margin:.28em 0 0!important;accent-color:var(--navy)}
.consent-option a{font-weight:600;text-decoration:underline;text-decoration-color:#bba179;text-underline-offset:3px}
.form-consent p{margin:10px 0 0 32px;color:var(--muted);font-size:.78rem;line-height:1.55}
.form-submit-row .button:disabled{cursor:not-allowed;opacity:.55}.form-submit-row .button:disabled:hover{background:var(--navy);color:#fff}
@media(max-width:520px){.form-consent{padding:19px 18px}.form-consent p{margin-left:0}.consent-option{font-size:.89rem}}

/* Contact form submission feedback */
.form-status:empty{display:none}
.form-status{margin-top:18px;padding:13px 15px;border-left:3px solid var(--gold);background:#fff;font-size:.9rem;font-weight:500;line-height:1.55}
.form-status-success{border-left-color:#3f6b55;color:#214331}
.form-status-error{border-left-color:#9b4135;color:#702c23}
.form-status-sending{display:flex;align-items:center;gap:10px;color:var(--muted)}
.form-submit-row .button[aria-busy="true"]{cursor:wait}
.form-submit-row .button-spinner{display:none;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:contact-button-spin .65s linear infinite}
.form-submit-row .button[aria-busy="true"] .button-spinner{display:block}
.form-submit-row .button[aria-busy="true"] .button-arrow{display:none}
@keyframes contact-button-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.form-submit-row .button-spinner{animation:none}}
