/* Candidate-only stylesheet. Enqueue through v34-design-features-enqueue-plan.php after review. */
.wo-v34{--wo-ink:var(--bs-dark);--wo-paper:var(--bs-white);--wo-muted:color-mix(in srgb,var(--bs-body-color) 66%,var(--bs-body-bg));--wo-accent:var(--bs-primary);--wo-line:color-mix(in srgb,var(--bs-body-color) 16%,transparent);font-family:var(--bs-body-font-family)}
.wo-v34 h1,.wo-v34 h2,.wo-v34 h3{font-family:var(--wp--preset--font-family--fraunces,var(--bs-font-sans-serif));letter-spacing:-.035em}.wo-v34 h1{font-size:clamp(2.65rem,6vw,5.85rem);line-height:.95;max-width:12ch}.wo-v34 h2{font-size:clamp(2rem,3.6vw,3.45rem);line-height:1.01}.wo-v34 h3{font-size:1.4rem}.wo-v34 p{font-size:1.05rem;line-height:1.65}.wo-v34 .btn{border-radius:0;padding:.85rem 1.2rem;font-weight:700}.wo-v34-kicker,.wo-v34-eyebrow{font-size:.72rem!important;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.wo-v34-hero{position:relative;overflow:hidden;padding:clamp(5rem,12vw,10rem) 0}.wo-v34-section{padding:clamp(4rem,8vw,7.5rem) 0}.wo-v34-section--paper{background:var(--wo-paper)}.wo-v34-section--quiet{background:color-mix(in srgb,var(--bs-body-bg) 87%,var(--wo-accent))}.wo-v34-section--ink{background:var(--wo-ink);color:var(--wo-paper)}.wo-v34-section--ink .wo-v34-kicker{color:color-mix(in srgb,var(--wo-paper) 70%,var(--wo-accent))}.wo-v34-lede{font-size:clamp(1.15rem,2vw,1.45rem)!important;max-width:53ch}.wo-v34-link-stack{display:grid;gap:.85rem}.wo-v34-link-stack a{border-bottom:1px solid var(--wo-line);color:inherit;font-weight:700;padding-bottom:.7rem;text-decoration:none}.wo-v34-link-stack span{float:right}.wo-v34--sizes{--wo-ink:color-mix(in srgb,var(--bs-dark) 91%,var(--bs-primary))}.wo-v34-sizes-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--bs-body-bg) 85%,var(--wo-accent)),var(--bs-body-bg))}.wo-v34-measure-card{border-left:2px solid var(--wo-accent);padding:1.25rem 0 1.25rem 1.4rem}.wo-v34-measure-card ol{margin:0;padding-left:1.3rem}.wo-v34-measure-card li{font-weight:700;margin:.65rem 0}.wo-v34-size-instrument{background:linear-gradient(120deg,var(--wo-ink),color-mix(in srgb,var(--wo-ink) 78%,var(--wo-accent)))}.wo-v34-panel{border-top:1px solid color-mix(in srgb,var(--wo-paper) 38%,transparent);height:100%;padding:1.5rem 0}.wo-v34-panel span{color:color-mix(in srgb,var(--wo-paper) 68%,var(--wo-accent));font-weight:800}.wo-v34-panel p{color:color-mix(in srgb,var(--wo-paper) 80%,transparent)}
.wo-v34--safety{--wo-ink:color-mix(in srgb,var(--bs-dark) 86%,var(--bs-primary))}.wo-v34-safety-hero{background:var(--wo-ink);color:var(--wo-paper)}.wo-v34-safety-hero .wo-v34-kicker{color:color-mix(in srgb,var(--wo-paper) 68%,var(--wo-accent))}.wo-v34-safety-orbit{aspect-ratio:1;border:1px solid color-mix(in srgb,var(--wo-paper) 32%,transparent);border-radius:50%;display:grid;place-items:center;position:relative}.wo-v34-safety-orbit strong{background:var(--wo-accent);border-radius:50%;display:grid;font-size:.75rem;height:5rem;place-items:center;text-transform:uppercase;width:5rem}.wo-v34-safety-orbit span{font-size:.7rem;font-weight:800;letter-spacing:.12em;position:absolute;text-transform:uppercase}.wo-v34-safety-orbit span:nth-child(1){top:13%}.wo-v34-safety-orbit span:nth-child(2){right:6%;top:48%}.wo-v34-safety-orbit span:nth-child(4){bottom:13%}.wo-v34-safety-map{padding-bottom:clamp(4rem,10vw,9rem);padding-top:clamp(4rem,10vw,9rem)}.wo-v34-safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.wo-v34-safety-grid>div{border-left:1px solid color-mix(in srgb,var(--wo-paper) 28%,transparent);padding:1.5rem}.wo-v34-safety-grid>div:first-child{border-left:0}.wo-v34-safety-grid span{color:color-mix(in srgb,var(--wo-paper) 65%,var(--wo-accent));font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.wo-v34-safety-grid p{color:color-mix(in srgb,var(--wo-paper) 80%,transparent)}.wo-v34-safety-grid a{color:var(--wo-paper);display:block;font-weight:700;margin-top:.65rem}
.wo-v34--lighting{--wo-ink:color-mix(in srgb,var(--bs-dark) 82%,var(--bs-primary));--wo-accent:var(--bs-info)}.wo-v34-lighting-hero{background:radial-gradient(circle at 77% 26%,color-mix(in srgb,var(--wo-accent) 42%,transparent),transparent 22%),linear-gradient(135deg,var(--wo-ink),color-mix(in srgb,var(--wo-ink) 88%,var(--wo-accent)));color:var(--wo-paper)}.wo-v34-lighting-hero .wo-v34-kicker{color:color-mix(in srgb,var(--wo-paper) 70%,var(--wo-accent))}.wo-v34-light-field i{background:color-mix(in srgb,var(--wo-paper) 88%,var(--wo-accent));border-radius:50%;box-shadow:0 0 3rem color-mix(in srgb,var(--wo-accent) 80%,transparent);height:.5rem;position:absolute;width:.5rem}.wo-v34-light-field i:nth-child(1){right:17%;top:24%}.wo-v34-light-field i:nth-child(2){right:30%;top:63%}.wo-v34-light-field i:nth-child(3){right:9%;top:74%}.wo-v34-lighting-brief{background:linear-gradient(145deg,var(--wo-ink),color-mix(in srgb,var(--wo-ink) 76%,var(--wo-accent)))}.wo-v34-scene-list{list-style:none;margin:0;padding:0}.wo-v34-scene-list li{border-top:1px solid color-mix(in srgb,var(--wo-paper) 28%,transparent);display:grid;gap:1.5rem;grid-template-columns:3rem 1fr;padding:1.25rem 0}.wo-v34-scene-list span{color:color-mix(in srgb,var(--wo-paper) 68%,var(--wo-accent));font-weight:800}.wo-v34-scene-list h3{margin:0}.wo-v34-scene-list p{color:color-mix(in srgb,var(--wo-paper) 80%,transparent);margin:.3rem 0 0}
.wo-v34--shelf{--wo-ink:color-mix(in srgb,var(--bs-dark) 88%,var(--bs-primary));--wo-accent:var(--bs-success)}.wo-v34-shelf-hero{background:linear-gradient(115deg,color-mix(in srgb,var(--bs-body-bg) 88%,var(--wo-accent)),var(--bs-body-bg))}.wo-v34-shelf-diagram{border:1px solid var(--wo-line);display:grid;gap:.75rem;padding:1rem}.wo-v34-shelf-diagram i{background:color-mix(in srgb,var(--wo-accent) 55%,var(--bs-body-bg));display:block;height:1rem}.wo-v34-shelf-diagram strong{background:color-mix(in srgb,var(--wo-accent) 18%,var(--bs-body-bg));font-family:var(--wp--preset--font-family--fraunces,var(--bs-font-sans-serif));font-size:clamp(1.6rem,3vw,2.5rem);padding:1.1rem}.wo-v34-shelf-diagram span{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.wo-v34-shelf-use{background:var(--wo-ink)}.wo-v34-use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:color-mix(in srgb,var(--wo-paper) 32%,transparent)}.wo-v34-use-grid>div{background:var(--wo-ink);padding:1.5rem}.wo-v34-use-grid p,.wo-v34-inline-answer{color:color-mix(in srgb,var(--wo-paper) 82%,transparent)}.wo-v34-inline-answer{border-left:2px solid var(--wo-accent);margin:2rem 0 0;padding-left:1rem}
@media (max-width:767.98px){.wo-v34-hero{padding:4.5rem 0}.wo-v34 h1{max-width:14ch}.wo-v34-safety-orbit{margin:auto;max-width:16rem}.wo-v34-safety-grid,.wo-v34-use-grid{grid-template-columns:1fr}.wo-v34-safety-grid>div{border-left:0;border-top:1px solid color-mix(in srgb,var(--wo-paper) 28%,transparent)}.wo-v34-safety-grid>div:first-child{border-top:0}.wo-v34-panel{padding-top:1rem}.wo-v34-light-field{display:none}}

/* @why V45: V42's full-width post-content context leaves Bootstrap g-5 rows
 * 12px outside the mobile/tablet canvas. This covers only the V34 dossier IDs. */
@media (max-width:1399.98px){body.page-id-62 main .wo-v34 .row.g-5,body.page-id-84 main .wo-v34 .row.g-5,body.page-id-129 main .wo-v34 .row.g-5,body.page-id-133 main .wo-v34 .row.g-5{margin-left:0;margin-right:0}}

/* @why V45 axe: these two dark-surface V34 sections inherited the ink heading
 * token. Limit the AA correction to the confirmed affected page/section pairs. */
body.page-id-84 main .wo-v34 .wo-v34-safety-hero h1,
body.page-id-84 main .wo-v34 .wo-v34-safety-hero h2,
body.page-id-84 main .wo-v34 .wo-v34-safety-hero h3,
body.page-id-133 main .wo-v34 .wo-v34-shelf-use h2,
body.page-id-133 main .wo-v34 .wo-v34-shelf-use h3 { color: var(--bs-white); }

/* @why V45 axe: only post 84's dark safety-map headings retain the inherited
 * ink token. Keep the correction inside that page and component. */
body.page-id-84 main .wo-v34 .wo-v34-safety-map h3 { color: var(--bs-white); }

/* @why 2026-09-14 improve run: family rule for every dark v34 surface. The section sets
 * color: var(--wo-paper) but the theme's h1/h2/h3 colour rules out-specify inheritance, so
 * headings rendered ink-on-ink (pixel-truth ratios 1.09-1.48 on Pool sizes and Pool lighting).
 * Replaces per-page-id patches with one component-level correction; page-id rules above stay. */
main .wo-v34 .wo-v34-section--ink h1,
main .wo-v34 .wo-v34-section--ink h2,
main .wo-v34 .wo-v34-section--ink h3,
main .wo-v34 .wo-v34-lighting-hero h1,
main .wo-v34 .wo-v34-lighting-hero h2,
main .wo-v34 .wo-v34-safety-hero h1,
main .wo-v34 .wo-v34-safety-hero h2 { color: var(--wo-paper); }
