/* Inner pages extend the approved homepage. All fonts and imagery are local. */
:root{--content-max:1500px;--page-gutter:clamp(20px,4.5vw,64px);--container-inset:max(var(--page-gutter),calc((100% - var(--content-max))/2))}.preview{font-size:.8125rem}.header nav{gap:24px}.header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.header .nav-contact[aria-current=page]{text-decoration:none;background:var(--deep);color:#fff}.breadcrumbs{padding:26px 5% 0;max-width:1600px;margin:auto;display:flex;gap:12px;align-items:center;font-size:.875rem;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:5px}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inner-hero{max-width:1600px;margin:auto;padding:48px 5% 76px}.inner-hero h1{font-size:clamp(3.5rem,6.6vw,6.5rem);line-height:1.05;max-width:1000px;margin-bottom:28px}.inner-hero .eyebrow{margin-bottom:24px}.inner-lead{font-size:1.125rem;color:var(--muted);max-width:600px;margin:0 0 26px}.about-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center}.about-portrait{margin:0;position:relative;max-width:570px}.about-portrait img{width:100%;aspect-ratio:1;object-fit:cover}.credentials-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:34px 7%;background:var(--surface);border-block:1px solid var(--line)}.credentials-strip div{display:flex;flex-direction:column;gap:8px}.credentials-strip span{font-size:.875rem;color:var(--muted)}.credentials-strip strong{font:1.8rem/1.2 var(--serif)}.editorial-section{padding:85px 7%;display:grid;grid-template-columns:1fr 1.35fr;gap:10%;border-bottom:1px solid var(--line)}.editorial-heading h2{font-size:clamp(2.8rem,4.3vw,4.5rem);margin-bottom:26px}.editorial-heading>p:not(.eyebrow){color:var(--muted);max-width:340px}.prose{max-width:760px;min-width:0;color:var(--muted)}.prose p:last-child{margin-bottom:0}.prose p:first-child{color:var(--ink)}.surface{background:var(--surface)}.curriculum{padding:0}.curriculum summary{font-size:1.2rem}.curriculum p{font-size:1rem}.page-cta{padding:62px 7%;display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--deep);color:white}.page-cta h2{font-size:clamp(2.6rem,4.2vw,4rem);margin:0 0 16px}.page-cta p{color:#d5e4dc;margin:0;max-width:630px}.page-cta .button{background:white;color:var(--ink);white-space:nowrap}.site-footer{padding:42px 5% 25px;background:white}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-bottom:28px}.footer-links{display:flex;flex-wrap:wrap;gap:16px 28px;font-size:.875rem}.footer-links a{text-decoration:underline;text-underline-offset:5px}.footer-fine{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:.8125rem}.footer-fine p{margin:0}.reading-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:8%;padding:0 7% 90px;max-width:1600px;margin:auto}.page-index{position:sticky;top:35px;align-self:start;border-top:1px solid var(--ink);padding-top:20px}.page-index .eyebrow{margin-bottom:12px}.page-index a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:.9375rem}.page-index a:hover{color:#000}.reading-body{min-width:0}.reading-body>section{padding:48px 0;border-top:1px solid var(--line);scroll-margin-top:28px}.reading-body>section:first-child{padding-top:0;border-top:0}.reading-body h2{font-size:clamp(2.4rem,3.5vw,3.5rem);margin-bottom:24px}.reading-body h3{font:1.6rem/1.25 var(--serif);margin-bottom:14px}.reading-body p{color:var(--muted)}.treatment-photo{margin:32px 0 0;max-width:760px}.treatment-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.treatment-photo figcaption{padding-top:12px;color:var(--muted);font-size:.875rem}.clinical-note{background:var(--surface);padding:25px 28px;border-left:3px solid var(--deep);margin:26px 0}.clinical-note p:last-child{margin:0}.condition-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.condition-list div{border:1px solid var(--line);padding:22px}.condition-list p{margin:0;font-size:1rem}.treatment-facts{display:flex;flex-wrap:wrap;gap:18px 35px;border-top:1px solid var(--line);padding-top:22px;margin-top:34px;color:var(--muted);font-size:.9375rem}.treatment-facts strong{display:block;color:var(--ink);font-weight:500}.faq-hero{padding-bottom:55px}.faq-content{max-width:1550px}.faq-group+.faq-group{margin-top:50px}.faq-group>h2{font-size:2.4rem;margin-bottom:24px}.faq-group .questions{padding:0}.faq-group .questions details:last-child{border-bottom:1px solid var(--line)}.faq-group summary{font-size:1.125rem;padding:25px 0}.faq-number{font:400 .875rem var(--sans)!important;color:var(--muted);flex-shrink:0;padding-top:5px}.faq-question{flex:1}.faq-group summary .faq-question{font-size:inherit!important;transform:none!important}.faq-group summary .faq-number{transform:none!important}.faq-group .questions details p{padding-left:38px}.contact-hero{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.contact-hero h1{font-size:clamp(3.5rem,5.8vw,6rem)}.contact-direct{padding-bottom:32px}.contact-direct>a{display:block;overflow-wrap:anywhere;border-bottom:1px solid var(--line);padding:16px 0;font-size:1.1rem}.contact-direct>a:first-child{font:2.8rem var(--serif)}.contact-direct p{font-size:.9375rem;color:var(--muted);margin:20px 0}.studios{padding:70px 7%;background:var(--surface)}.studios-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px}.studios h2{font-size:3.5rem}.studios .locations{margin-top:36px;gap:28px}.studios .city{margin-bottom:10px}.studio-phones{display:flex;flex-direction:column;gap:10px;margin:0 0 30px}.studio-phones a{text-decoration:underline;text-underline-offset:5px}.form-section{padding:85px 7%;display:grid;grid-template-columns:1fr 1.35fr;gap:10%}.form-section h2{font-size:3.5rem;margin-bottom:24px}.form-section>div>p{max-width:350px;color:var(--muted)}.legal-content{max-width:920px;margin:auto;padding:0 5% 80px;overflow-wrap:anywhere}.legal-content h2{font:2rem/1.25 var(--serif);margin:42px 0 22px}.legal-content h3{font:1.5rem/1.3 var(--serif);margin:30px 0 18px}.legal-content a{text-decoration:underline;text-underline-offset:5px}.legal-hero{max-width:1020px;padding-bottom:45px}.legal-content .cookie-preview{padding:30px;background:var(--surface);border:1px solid var(--line)}.legal-content .cookie-preview h2{margin:0 0 18px}.legal-content button{border:0;font:inherit;cursor:pointer}.inner-hero h1,.page-cta h2{overflow-wrap:normal}.header .profession{font-size:.75rem}
@media(min-width:1700px){.editorial-section,.credentials-strip,.page-cta,.studios,.form-section{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}
@media(max-width:1150px){.header nav{gap:16px}.header .name{font-size:1.8rem}.about-hero{gap:6%}.reading-layout{grid-template-columns:215px minmax(0,1fr);gap:6%}.editorial-section,.form-section{gap:6%}.contact-direct>a:first-child{font-size:2.3rem}}
@media(max-width:860px){.about-hero{gap:5%;grid-template-columns:1.1fr 1fr}.inner-hero h1{font-size:clamp(3.2rem,7vw,5rem)}.credentials-strip{gap:25px;padding-inline:5%}.credentials-strip strong{font-size:1.6rem}.editorial-section{grid-template-columns:1fr;gap:30px;padding:60px 6%}.editorial-heading>p:not(.eyebrow){max-width:560px}.editorial-heading h2 br{display:none}.reading-layout{grid-template-columns:1fr;padding-inline:6%;gap:40px}.page-index{position:static;display:flex;flex-wrap:wrap;gap:0 24px}.page-index .eyebrow{flex-basis:100%}.page-index a{padding:9px 0}.contact-hero{gap:7%}.contact-direct>a:first-child{font-size:2rem}.form-section{gap:35px;grid-template-columns:1fr}.form-section>div>p{max-width:600px}.page-cta{align-items:flex-start;flex-direction:column;gap:28px}.footer-main{align-items:flex-start;flex-direction:column}.contact-hero .inner-lead{font-size:1rem}}
@media(max-width:600px){.inner-hero{padding:35px 6% 45px}.inner-hero h1{font-size:clamp(3rem,11.5vw,4.2rem);line-height:1.05}.about-hero{grid-template-columns:1fr;gap:35px}.about-portrait{max-width:100%}.credentials-strip{grid-template-columns:1fr;gap:20px;padding:26px 6%}.credentials-strip div+div{border-top:1px solid var(--line);padding-top:20px}.credentials-strip strong{font-size:1.9rem}.editorial-section{padding:50px 6%;gap:25px}.breadcrumbs{padding:22px 6% 0;font-size:.8125rem}.inner-lead{font-size:1.0625rem}.condition-list{grid-template-columns:1fr}.reading-body>section{padding:36px 0}.reading-layout{padding-bottom:55px}.page-index{gap:0 20px}.clinical-note{padding:22px}.contact-hero{grid-template-columns:1fr;gap:12px}.contact-direct{padding-bottom:0}.contact-direct>a:first-child{font-size:2.5rem}.studios{padding:48px 6%}.studios-heading{align-items:flex-start;flex-direction:column;gap:0}.studios h2,.form-section h2{font-size:3rem}.studios .locations{margin-top:28px}.form-section{padding:50px 6%}.page-cta{padding:48px 6%}.footer-fine{flex-direction:column;font-size:.8125rem}.site-footer{padding-inline:6%}.faq-group .questions details p{padding-left:0;padding-right:0}.faq-group summary{gap:14px}.faq-group>h2{font-size:2.2rem}.legal-content{padding-inline:6%}.legal-content h2{font-size:1.75rem}.header .profession{font-size:.63rem}.treatment-facts{gap:18px 24px}}
@media print{.page-index,.contact-wpforms,.breadcrumbs,.page-cta,.cookie-preview{display:none}.reading-layout,.editorial-section{display:block;padding:20px}.inner-hero{padding:20px}.about-hero{display:grid}.inner-hero h1{font-size:40px}.site-footer{padding:20px}.questions details>p{display:block}.faq-answer{display:block}.legal-content{max-width:none}}
.about-portrait img{height:auto}
[hidden]{display:none!important}
.arrow-icon{display:inline-block;vertical-align:-.15em;flex-shrink:0}.contact-direct>a{display:flex;justify-content:space-between;align-items:center;gap:15px}.footer-links a:last-child{display:inline-flex;align-items:center;gap:8px}

/* Shared content edges across the entire prototype, including full-bleed bands.
   1500px is the usable content width; gutters remain outside this measure. */
@media screen {
  .preview, .header, .hero.hero-aligned, main > .section,
  .breadcrumbs, .inner-hero, .credentials-strip, .editorial-section,
  .page-cta, .site-footer, .reading-layout, .studios, .form-section,
  .legal-content {
    width:100%;
    max-width:none;
    margin-inline:0;
    padding-inline:var(--container-inset);
  }
  .legal-copy {max-width:80ch;}
}

/* Booking CTA shares the primary homepage button treatment. */
.contact-direct > .booking-cta {
 display:inline-flex;
 width:100%;
 max-width:100%;
 padding:16px 18px;
 gap:14px;
 border:1px solid var(--deep);
 color:#fff;
 background:var(--deep);
 font-size:.9375rem;
 line-height:1.5;
}
.contact-direct > .booking-cta:hover {background:#275757;}

.footer-fine {align-items:flex-start;}
.footer-fine p:last-child {max-width:490px;}

/* Treatment opening with the provisional photograph supplied by Marco. */
.treatment-hero-main {
 display:grid;
 grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
 align-items:center;
 gap:clamp(28px,4vw,64px);
}
.treatment-hero h1 {font-size:clamp(2.75rem,4.1vw,4.8rem);}
.treatment-hero-copy {min-width:0;}
.treatment-hero-copy .inner-lead {margin-bottom:0;}
.treatment-hero-media {margin:0;}
.treatment-hero-media img {display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}
@media(max-width:860px) {
 .treatment-hero-main {grid-template-columns:1fr;gap:32px;}
 .treatment-hero h1 {font-size:clamp(2.75rem,7vw,4.8rem);}
}

/* Contact page has no CTA separating the footer. */
.site-footer--bordered{border-top:1px solid var(--line)}
a{text-underline-offset:5px}

/* Keep the toggle centered on the question, including multiline labels. */
.questions summary{align-items:center}
.questions summary>span[aria-hidden="true"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 24px;
  width:24px;
  height:24px;
  line-height:1;
  align-self:center;
  transform-origin:center;
}
.faq-group summary .faq-number{padding-top:0}

/* Match the desktop index layout when treatment and FAQ pages become one column. */
@media screen and (max-width:860px){
  .treatment-hero .treatment-facts{border-top:0}
  .treatment-hero + .reading-layout .page-index,
  .faq-content .page-index{display:block}
  .treatment-hero + .reading-layout .page-index a,
  .faq-content .page-index a{width:100%;padding:12px 0}
}

/* Editorial detail pages share the existing site typography and container. */
.pathology-sources{margin:28px 0 36px;border-block:1px solid var(--line);padding:16px 0;color:var(--muted);font-size:.875rem}
.pathology-sources summary{cursor:pointer}
.pathology-sources ul{padding-left:20px;margin:16px 0 0}
.pathology-sources a{text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.pathology-related{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}
.pathology-related a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}
@media(max-width:860px){.pathology-content .page-index{display:block}.pathology-content .page-index a{width:100%;padding:12px 0}}
@media(max-width:600px){.pathology-content .reading-body h2{font-size:clamp(2.1rem,8vw,3rem)}}

/* The coloured text panel and photo share one bounded, equal-height row. */
.pathology-hero .treatment-hero-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:0}
.pathology-hero .treatment-hero-copy{background:var(--surface);padding:clamp(28px,4vw,60px);display:flex;flex-direction:column;justify-content:center}
.pathology-hero .treatment-hero-media{position:relative;min-height:380px;overflow:hidden}
.pathology-hero .treatment-hero-media img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:var(--photo-focus,50% 50%)}
@media(max-width:860px){.pathology-hero .treatment-hero-main{grid-template-columns:1fr}.pathology-hero .treatment-hero-copy{padding:32px 28px}.pathology-hero .treatment-hero-media{min-height:0;aspect-ratio:3/2}}
@media(max-width:400px){.pathology-hero .treatment-hero-copy{padding:28px 22px}}

/* Visual index of the six detail pages, aligned to the shared container. */
.pathology-index-hero .inner-lead{max-width:760px}
.pathology-directory{padding:0 var(--container-inset) 90px}
.pathology-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.pathology-card{min-width:0;border:1px solid var(--line)}
.pathology-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;background:white;transition:background .2s}
.pathology-card>a:hover{background:var(--surface)}
.pathology-card>a:focus-visible{outline:2px solid var(--deep);outline-offset:5px}
.pathology-card-image{aspect-ratio:3/2;overflow:hidden}
.pathology-card-image img{display:block;width:100%;height:100%;object-fit:cover}
.pathology-card-copy{padding:28px;display:flex;flex-direction:column;flex:1}
.pathology-card-number{font-size:.8125rem;color:var(--muted);margin-bottom:18px}
.pathology-card h2{font-size:clamp(1.8rem,2.5vw,2.5rem);line-height:1.12;margin:0 0 18px}
.pathology-card p{color:var(--muted);font-size:1rem;margin-bottom:28px}
.pathology-card-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;font-size:.9375rem}
@media(max-width:1100px){.pathology-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pathology-cards{grid-template-columns:1fr;gap:24px}.pathology-card-copy{padding:24px}.pathology-directory{padding-bottom:55px}}

/* WPForms 64: submit button follows the site's primary buttons. */
.contact-wpforms{min-width:0}
#wpforms-64 #wpforms-submit-64 {
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  width:auto;
  max-width:100%;
  height:auto;
  min-height:48px;
  margin:0;
  padding:16px 18px;
  border:1px solid var(--deep);
  border-radius:0;
  background:var(--deep);
  color:#fff;
  box-shadow:none;
  font:400 .9375rem/1.5 var(--sans);
  text-transform:none;
  letter-spacing:normal;
  white-space:normal;
  cursor:pointer;
  transition:background .2s;
}
#wpforms-64 #wpforms-submit-64::after {
  content:"";
  display:block;
  flex:0 0 20px;
  width:20px;
  height:20px;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Cpath d='M6 18 18 6M6 6h12v12'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Cpath d='M6 18 18 6M6 6h12v12'/%3E%3C/svg%3E") center/contain no-repeat;
}
#wpforms-64 #wpforms-submit-64:hover:not(:disabled) {
  background:#275757;
  color:#fff;
}
#wpforms-64 #wpforms-submit-64:focus-visible {
  outline:2px solid var(--deep);
  outline-offset:3px;
}
#wpforms-64 #wpforms-submit-64:disabled {
  opacity:.65;
  cursor:wait;
}
@media(prefers-reduced-motion:reduce) {
  #wpforms-64 #wpforms-submit-64{transition:none}
}