/* Inner-page finishing layer. Approved home, shared blocks, Team and shell
   are deliberately excluded; these rules replace remaining legacy surfaces. */
.ccw-approved-site.ccw-visual-parity::after{display:none}
.ccw-visual-parity .sidebar{line-height:1.55}
.ccw-visual-parity .side-nav>a{border-radius:0}
.ccw-visual-parity .ccw-blueprint-page{--visual-paper:linear-gradient(145deg,#f4ead8,#e4d4bb);--visual-panel:linear-gradient(145deg,rgba(255,252,246,.92),rgba(226,215,194,.72));--visual-line:rgba(181,138,76,.58)}
.ccw-visual-parity .ccw-blueprint-page :is(h1,h2,h3,h4):not(:where(.ccw-shared-home *,.ccw-team-consultation *,.ccw-team-section *,.ccw-team-story *)){font-family:var(--serif);font-weight:400;font-synthesis:none;letter-spacing:-.015em;text-shadow:none}
.ccw-visual-parity .ccw-blueprint-page h1:not(.ccw-shared-home *){font-size:clamp(38px,4.3vw,62px);line-height:1.07;overflow-wrap:break-word}
.ccw-visual-parity .ccw-blueprint-page h2:not(:where(.ccw-shared-home *,.ccw-team-consultation *,.ccw-team-section *,.ccw-team-story *)){font-size:clamp(29px,2.9vw,42px);line-height:1.15;margin:0 0 20px}
.ccw-visual-parity .ccw-blueprint-page h3:not(:where(.ccw-shared-home *,.ccw-team-consultation *,.ccw-team-section *,.ccw-team-story *)){font-size:clamp(23px,2vw,29px);line-height:1.2;margin:0 0 12px}
.ccw-visual-parity .ccw-blueprint-page :is(p,li):not(:where(.ccw-shared-home *,.ccw-team-consultation *,.ccw-team-section *,.ccw-team-story *)){font-weight:400;text-shadow:none}
.ccw-visual-parity .ccw-services-hero{padding:clamp(28px,3.8vw,54px);gap:28px;box-shadow:0 16px 40px rgba(8,20,29,.12)}
.ccw-visual-parity .ccw-services-hero--source-image{min-height:330px}
.ccw-visual-parity .ccw-services-hero__lead{font:400 clamp(17px,1.45vw,20px)/1.55 var(--serif);max-width:65ch}
.ccw-visual-parity .ccw-services-hero:not(.ccw-services-hero--source-image)::after{display:none}
.ccw-visual-parity .ccw-hero-facts{align-self:center}
.ccw-visual-parity .ccw-services-hero--facts-inline .ccw-hero-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 26px;margin-top:26px}
.ccw-visual-parity .ccw-blueprint-page .ccw-breadcrumbs{margin-bottom:24px;font:400 14px/1.5 var(--sans)}
.ccw-visual-parity .ccw-blueprint-slot{margin-block:28px}
.ccw-visual-parity .ccw-blueprint-slot>section+section{margin-top:24px}
.ccw-visual-parity .ccw-visual-card{position:relative;padding:clamp(24px,3vw,38px);background:var(--visual-panel);border:1px solid var(--visual-line);box-shadow:inset 0 0 0 5px rgba(255,255,255,.38),inset 0 0 0 6px rgba(200,156,84,.28),0 14px 36px rgba(10,25,35,.07)}
.ccw-visual-parity .ccw-visual-card::before{content:'';position:absolute;inset:10px;border:1px solid rgba(181,138,76,.2);pointer-events:none}
.ccw-visual-parity .ccw-visual-card :is(p,li){color:#394953;line-height:1.6}
.ccw-visual-parity .ccw-visual-card :is(h2,h3){color:var(--ink)}
.ccw-visual-parity .ccw-content-section--split{gap:24px 38px}
.ccw-visual-parity .ccw-visual-card :is(.ccw-note,.ccw-status-note,.ccw-contact-note){background:rgba(236,221,192,.5);border-left:2px solid var(--gold);box-shadow:none}
.ccw-visual-parity .ccw-service-grid,.ccw-visual-parity .ccw-program-grid{gap:22px}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card){position:relative;min-height:0;padding:25px 28px 23px;background:var(--visual-paper);color:var(--ink);border:1px solid var(--gold);box-shadow:inset 0 0 0 6px rgba(255,255,255,.28),inset 0 0 0 7px rgba(200,156,84,.36)}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card)::before{content:'';position:absolute;inset:12px;border:1px solid rgba(200,156,84,.32);pointer-events:none}
.ccw-visual-parity .ccw-blueprint-page :is(.ccw-service-card,.ccw-program-card) h2{font:400 29px/1.12 var(--serif);margin:12px 0}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card) :is(h2,h2 a,p,.ccw-service-card__price){color:var(--ink)}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card) p{color:#576165;margin:0 0 16px;line-height:1.5}
.ccw-visual-parity :is(.ccw-service-card__number,.ccw-program-card>span){color:#6f51a1;margin:0 0 8px}
.ccw-visual-parity .ccw-service-card__price{border-color:var(--visual-line);padding-top:14px}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card) .ccw-text-link{color:#52358b!important}
.ccw-visual-parity .ccw-blueprint-media{padding:0;border:0;background:none;gap:22px;margin-bottom:22px;box-shadow:none}
.ccw-visual-parity .ccw-blueprint-media figure{padding:14px;border:1px solid var(--visual-line);background:var(--visual-panel)}
.ccw-visual-parity .ccw-blueprint-media img{background:transparent;object-fit:contain;max-height:360px}
.ccw-visual-parity .ccw-blueprint-media[data-count='1']{grid-template-columns:minmax(0,760px)}
.ccw-visual-parity .ccw-blueprint-related-media{border:0;background:transparent;margin:0 0 18px}
.ccw-visual-parity .ccw-blueprint-related-media img{height:170px;width:100%;object-fit:contain;background:transparent}
.ccw-visual-parity .ccw-related-service-grid{gap:18px;border:0;background:none}
.ccw-visual-parity .ccw-related-service-grid>section{padding:20px;background:var(--visual-panel);border:1px solid var(--visual-line)}
.ccw-visual-parity .ccw-original-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ccw-visual-parity .ccw-original-related-grid>section{display:flex;flex-direction:column}
.ccw-visual-parity .ccw-original-related-grid>section>.ccw-text-link{margin-top:auto}
.ccw-visual-parity .ccw-related-service-grid--text>section{padding:18px}
.ccw-visual-parity .ccw-blueprint-page .ccw-related-service-grid--text h3{font-size:23px}
.ccw-visual-parity .ccw-license-preview a{display:block}
.ccw-visual-parity .ccw-license-preview img{display:block;width:auto;max-width:100%;height:270px;max-height:none;margin:auto}
.ccw-visual-parity .ccw-license-preview figcaption{margin-top:16px;color:var(--ink);font:400 24px/1.3 var(--serif);text-align:center}
.ccw-visual-parity .ccw-steps{gap:14px;background:none;border:0}
.ccw-visual-parity .ccw-steps>div{padding:22px;background:rgba(250,246,237,.85);border:1px solid var(--visual-line)}
.ccw-visual-parity .ccw-news-grid{gap:22px}
.ccw-visual-parity .ccw-news-card{background:var(--visual-panel);box-shadow:inset 0 0 0 5px rgba(255,255,255,.3)}
.ccw-visual-parity .ccw-news-card img{height:185px;object-fit:contain;background:rgba(255,252,246,.65)}
.ccw-visual-parity .ccw-blueprint-page .ccw-news-card h2{font-size:27px}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card,.ccw-news-card,.ccw-related-service-grid) :is(h2,h3) a{color:var(--ink);text-decoration:none}
.ccw-visual-parity :is(.ccw-service-card,.ccw-program-card,.ccw-news-card,.ccw-related-service-grid) :is(h2,h3) a:hover{color:#52358b;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.ccw-visual-parity .ccw-document-card{background:rgba(255,252,246,.65);box-shadow:inset 0 0 0 4px rgba(255,255,255,.4)}
.ccw-visual-parity .ccw-document-card strong{font:400 23px/1.2 var(--serif)}
.ccw-visual-parity .ccw-disclosure-nav{gap:12px}
.ccw-visual-parity .ccw-disclosure-nav a{font:400 19px/1.3 var(--serif);background:rgba(255,252,246,.66);padding:16px;overflow-wrap:anywhere}
.ccw-visual-parity .ccw-data-table{min-width:650px;font:400 14px/1.5 var(--sans)}
.ccw-visual-parity .ccw-table-wrap{max-width:100%;overflow:auto}
.ccw-visual-parity .ccw-faq summary{font:400 22px/1.3 var(--serif);padding:18px 38px 18px 0;min-height:0}
.ccw-visual-parity .ccw-faq details>div{padding:0 12px 20px 0}
.ccw-visual-parity .ccw-visual-action{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:14px 24px;border:0!important;border-radius:0;background:linear-gradient(100deg,#5931a0,#263f88);color:var(--cream-2)!important;text-decoration:none!important;box-shadow:none;font:400 18px/1.2 var(--serif);text-shadow:none;max-width:100%;text-align:center}
.ccw-visual-parity .ccw-visual-action:hover{background:linear-gradient(100deg,#6840b0,#304e9d);filter:none}
.ccw-visual-parity .ccw-visual-frame{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:var(--gold-2);stroke-width:1;overflow:visible}
.ccw-visual-parity .ccw-visual-frame path{vector-effect:non-scaling-stroke}
.ccw-visual-parity .ccw-visual-frame path+path{stroke:rgba(226,197,138,.75)}
.ccw-visual-parity .ccw-visual-cta{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 30px;color:var(--cream-2);background:linear-gradient(120deg,#091925,#102632);border:0}
.ccw-visual-parity .ccw-visual-cta :is(p,h2){margin:0;font:400 clamp(23px,2vw,29px)/1.25 var(--serif);color:var(--cream-2)}
.ccw-visual-parity .ccw-visual-cta .ccw-visual-action{flex:0 0 auto;align-self:center}
.ccw-visual-parity .ccw-contact-page{display:block}
.ccw-visual-parity .ccw-contact-hero{text-align:left;margin:0 0 30px;padding-bottom:22px;border-bottom:1px solid var(--visual-line)}
.ccw-visual-parity .ccw-contact-hero h1{margin:0}
.ccw-visual-parity .ccw-city-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ccw-visual-parity .ccw-city-list li{min-height:48px;padding:12px 15px;font:400 21px/1.2 var(--serif);background:rgba(255,252,246,.55);border-color:var(--visual-line)}
.ccw-visual-parity .ccw-contact-details{gap:16px}
.ccw-visual-parity .ccw-contact-details div{grid-template-columns:110px minmax(0,1fr);padding-bottom:12px;border-color:var(--visual-line)}
.ccw-visual-parity .ccw-contact-details dt{font:400 20px/1.3 var(--serif);color:var(--ink)}
.ccw-visual-parity .ccw-contact-details a{font-weight:400}
.ccw-visual-parity .ccw-contact-grid{gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:start}
.ccw-visual-parity .ccw-contact-copy{gap:22px;margin-top:28px}
.ccw-visual-parity .ccw-contact-map-section{background:var(--visual-panel);box-shadow:inset 0 0 0 6px rgba(255,255,255,.35);padding:20px}
.ccw-visual-parity .ccw-contact-map-section img{background:transparent;max-height:390px}
.ccw-visual-parity .ccw-map-link{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:120px;padding:28px 32px;color:var(--cream-2);background:linear-gradient(120deg,#091925,#102632);border:1px solid var(--gold)}
.ccw-visual-parity .ccw-map-link figcaption{margin:0;padding:0;font:400 25px/1.3 var(--serif)}
.ccw-visual-parity .ccw-map-link::before{content:'⌖';font:400 64px/1 var(--serif);color:var(--gold-2)}
.ccw-visual-parity .ccw-map-link a{background:transparent;color:var(--cream-2);border:1px solid var(--gold-2);font:400 20px/1.2 var(--serif)}
.ccw-visual-parity .ccw-map-link+.ccw-contact-cta{margin-top:24px}
@media(max-width:1100px){.ccw-visual-parity .ccw-content-section--split{grid-template-columns:1fr}.ccw-visual-parity .ccw-city-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
  .ccw-visual-parity .ccw-services-hero{padding:28px 24px;min-height:0}
  .ccw-visual-parity .ccw-blueprint-page h1:not(.ccw-shared-home *){font-size:38px}
  .ccw-visual-parity .ccw-visual-card{padding:24px 22px}
  .ccw-visual-parity .ccw-visual-cta{flex-direction:column;align-items:stretch;padding:24px}
  .ccw-visual-parity .ccw-visual-cta .ccw-visual-action{width:100%}
  .ccw-visual-parity .ccw-contact-grid{grid-template-columns:1fr}
  .ccw-visual-parity .ccw-contact-details div{grid-template-columns:1fr;gap:4px}
  .ccw-visual-parity .ccw-map-link{padding:22px;gap:16px;min-height:100px}
  .ccw-visual-parity .ccw-map-link::before{font-size:42px}
  .ccw-visual-parity .ccw-blueprint-media{gap:18px;grid-template-columns:1fr}
  .ccw-visual-parity .ccw-blueprint-related-media img{height:160px}
  .ccw-visual-parity .ccw-service-grid,.ccw-visual-parity .ccw-program-grid,.ccw-visual-parity .ccw-news-grid{grid-template-columns:1fr}
  .ccw-visual-parity .ccw-original-related-grid{grid-template-columns:1fr}
}
html:is([data-ccw-a11y-images=hidden],[data-a11y-images=hidden]) .ccw-visual-parity .ccw-map-link::before{display:none}
html:is([data-ccw-a11y-theme=contrast],[data-a11y-theme=contrast]) .ccw-visual-parity :is(.ccw-visual-card,.ccw-visual-cta,.ccw-visual-action,.ccw-map-link,.ccw-service-card,.ccw-program-card,.ccw-news-card){color:#fff!important;background:#000!important;border-color:#fff!important}
html:is([data-ccw-a11y-theme=contrast],[data-a11y-theme=contrast]) .ccw-visual-parity .ccw-visual-frame{stroke:#fff!important}
