/* October 2026 refinement: shared rhythm, distinct page compositions. */
html { scroll-behavior: smooth; }
.wp-block-post-content > .ww-section { margin-block-start: 0; }
.ww-section { padding-block: clamp(64px, 6vw, 88px); scroll-margin-top: 112px; }
.ww-section .ww-section-tag { margin-bottom: 30px; }
.ww-section-tag::before { background: #C1121F; }
.ww-prose p, .ww-next-copy { max-width: 65ch; }
.ww-quiet-link a { border-color: #53535C; }
.ww-next-links { display: flex; flex-wrap: wrap; gap: 20px 38px; }
.ww-section .ww-next-links .ww-quiet-link { margin-top: 0; }
.ww-footer { padding-top: 125px; }
.ww-footer::before { height: 140px; background-image: url('../art/footer-threads.svg?v=3'); }
.ww-footer .ww-footer-bottom { font-size: 12px; }
@media(min-width:701px) { .ww-hero { padding-bottom: 50px; } }

/* Home: one calm connected sequence, without stacked decorative panels. */
.ww-approach-canvas.ww-listen-flow { display: block; padding: 0 0 0 32px; max-width: 470px; border-left: 1px solid #53535C; }
.ww-approach-canvas .ww-listen-step { border: 0; background: none; box-shadow: none; padding: 0 0 28px; min-height: 0; }
.ww-approach-canvas .ww-listen-step + .ww-listen-step { margin-top: 15px !important; }
.ww-approach-canvas .ww-listen-step:last-child { padding-bottom: 0; }
.ww-approach-canvas .ww-listen-step::before { content: ''; position: absolute; width: 17px; height: 1px; left: -32px; top: 15px; background: #777783; }
.ww-approach-canvas .ww-listen-step:last-child::after { display: none; }
.ww-approach-widow { position: absolute; left: -13px; top: 0; width: 26px; height: 26px; background: #0B0B0D url('../art/widow-mark.svg') center / contain no-repeat; pointer-events: none; }
.ww-approach-canvas p { font-size: 14px; }
.ww-services .ww-service-list { margin-top: 30px !important; padding-left: 0; }
.ww-services .ww-service-list::before, .ww-services .ww-service-row::before { display: none; }
.ww-services .ww-service-row { gap: 36px; padding-block: 26px; }
.ww-services .ww-service-row p { font-size: 15px; }
.ww-experience-points { border-top: 1px solid #35353B; }
.ww-experience-point { padding-block: 24px; border-bottom: 1px solid #35353B; }
.ww-experience-point h3 { font-size: 29px; line-height: 1.2; letter-spacing: -.02em; }
.ww-experience-point p { color: #B9B9C2; font-size: 15px; line-height: 1.8; margin-top: 12px; }
#next-steps .ww-section-title { font-size: clamp(44px, 5vw, 68px); }
#next-steps .ww-next-links { justify-content: space-between; margin-top: 32px !important; }

/* Services: a wide silk study, then four accessible whole-card links. */
.ww-services-hero { padding-top: 35px; padding-bottom: 50px; }
.ww-services-weave { margin: 0 0 28px; width: 100%; }
.ww-services-weave img { display: block; width: 100%; height: auto; max-height: 285px; object-fit: contain; }
.ww-services-hero .ww-page-title { font-size: clamp(58px, 6.1vw, 94px); }
.ww-services-hero .ww-page-intro { max-width: 740px; margin-top: 24px; }
.ww-service-overview { padding-top: 18px; }
.ww-overview-card { isolation: isolate; transition: border-color .2s, background-color .2s; }
.ww-overview-card a::after { content: ''; position: absolute; inset: 0; z-index: 1; }
.ww-overview-card:focus-within { outline: 2px solid #F5F5F5; outline-offset: 5px; border-color: #C1121F; }
.ww-overview-card:hover { border-color: #C1121F; background-color: #211216; }
.ww-overview-card a:focus-visible { outline: none; }
.ww-overview-card .ww-card-index { font: 11px/1.5 Inter, sans-serif; color: #B9B9C2; margin: 0 0 15px; }
.ww-detail-layout { gap: clamp(40px, 6vw, 85px); }
#technical-seo .ww-detail-layout { grid-template-columns: 1fr 1.08fr; }
#on-page-seo .ww-detail-layout { grid-template-columns: .92fr 1.08fr; }
#local-seo .ww-detail-layout { grid-template-columns: 1fr 1.12fr; }
.ww-detail-art img { max-height: 460px; object-fit: contain; }
.ww-detail-copy ul, .ww-overview-card p { font-size: 15px; }
.ww-scope .ww-next-links { margin-top: 26px !important; }

/* Pricing keeps its illustration and accordion identity; the connecting silk is quieter. */
.ww-pricing-hero { padding-top: 55px; padding-bottom: 50px; }
.ww-pricing-opening .ww-page-title { font-size: clamp(60px, 6.5vw, 98px); }
.ww-proposal-art img { max-height: 570px; object-fit: contain; }
.ww-pricing-phases { padding-top: 105px; gap: 80px; }
.ww-pricing-phases::before { height: 100px; background-image: url('../art/working-silk.svg?v=3'); }
.ww-pricing-phase::before, .ww-pricing-phase:nth-child(2)::before { top: -38px; height: 22px; background: #53535C; }
.ww-pricing-phase:nth-child(2) { margin-top: 16px !important; }
.ww-pricing-phase .ww-phase-label { margin-bottom: 18px; }
.ww-pricing-next-step { max-width: 940px; margin: 38px auto 0 !important; padding-top: 26px; border-top: 1px solid #35353B; }
.ww-pricing-next-step > p { color: #B9B9C2; font-size: 15px; line-height: 1.8; }
.ww-pricing-next-step .ww-next-links { margin-top: 22px !important; }
.ww-scope-thread p, .ww-pricing-question p { font-size: 15px; }

/* About remains an editorial story, with selection included in the working relationship. */
.ww-about-title { font-size: clamp(60px, 6.8vw, 102px); }
.ww-about-opening { gap: 65px; }
.ww-about-art { max-width: 540px; }
.ww-about-opening-copy .ww-about-lead { font-size: 19px; }
.ww-about-questions .ww-field-notes { margin-top: 40px !important; }
.ww-about-questions .ww-field-note { padding-block: 26px; }
.ww-about-philosophy { gap: 65px; }
.ww-about-relationship .ww-relationship-note h3 { font-size: 29px; }
.ww-relationship-note p { font-size: 15px; }
.ww-about-next { border-top: 1px solid #242428; }

/* Contact retains its real form and small hanging widow. */
.ww-contact-hero { padding-top: 58px; padding-bottom: 50px; }
.ww-contact-title { font-size: clamp(58px, 7vw, 104px); }
.ww-contact-opening { max-width: 590px; margin-top: 25px !important; }
.ww-contact-hero::after { width: 220px; height: 195px; bottom: 25px; }
.ww-contact-inquiry { padding-top: 20px; }
.ww-contact-letter::before { background: linear-gradient(#71333C, #35353B); }
.ww-contact-email { font-size: 14px; line-height: 1.8; margin-top: 28px !important; overflow-wrap: anywhere; }
.ww-contact-availability { margin-top: 16px !important; }
.ww-form-field label { font-size: 13px; }
.ww-form-instruction, .ww-form-preview { font-size: 12px; }
.ww-form-submit p { display: none; }

@media(max-width:1000px) {
 .ww-about-opening, .ww-about-philosophy { gap: 38px; }
 .ww-pricing-opening .ww-page-title { font-size: 66px; }
}
@media(max-width:800px) {
 .ww-about-opening, .ww-about-philosophy { grid-template-columns: 1fr; }
 .ww-about-art { max-width: 440px; }
 .ww-contact-hero::after { width: 150px; right: 0; }
}
@media(max-width:700px) {
 .ww-section { padding-block: 58px; scroll-margin-top: 28px; }
 .ww-section .ww-section-tag { margin-bottom: 25px; }
 .ww-approach-canvas.ww-listen-flow { padding-left: 30px; margin: 8px 0 0 !important; }
 .ww-services .ww-service-row { grid-template-columns: 1fr; gap: 12px; }
 .ww-experience-point h3 { font-size: 27px; }
 .ww-next-links, #next-steps .ww-next-links { gap: 20px 30px; }
 .ww-services-hero { padding-top: 12px; padding-bottom: 35px; }
 .ww-services-weave { margin-bottom: 24px; }
 .ww-services-weave img { min-height: 115px; object-fit: cover; }
 .ww-services-hero .ww-page-title { font-size: clamp(45px, 10.9vw, 68px); }
 .ww-overview-card p, .ww-detail-copy ul { font-size: 14px; }
 .ww-service-overview { padding-top: 15px; }
 #technical-seo .ww-detail-layout, #on-page-seo .ww-detail-layout, #local-seo .ww-detail-layout { grid-template-columns: 1fr; }
 .ww-detail-art { max-width: 500px; margin-inline: auto; }
 .ww-pricing-opening .ww-page-title { font-size: clamp(49px, 12.7vw, 78px); }
 .ww-pricing-opening { gap: 18px; }
 .ww-proposal-art { max-width: 390px; }
 .ww-pricing-phases { padding-top: 0; padding-left: 30px; margin-top: 36px !important; }
 .ww-pricing-phases::before { width: 22px; height: auto; background-image: url('../art/working-silk-mobile.svg?v=3'); }
 .ww-pricing-phase::before, .ww-pricing-phase:nth-child(2)::before { top: 7px; height: 1px; }
 .ww-pricing-phase:nth-child(2) { margin-top: 35px !important; }
 .ww-scope-thread p, .ww-pricing-question p { font-size: 14px; }
 .ww-about-title { font-size: clamp(43px, 10.9vw, 70px); }
 .ww-about-opening-copy .ww-about-lead { font-size: 18px; }
 .ww-about-relationship-notes { padding-left: 22px; }
 .ww-contact-title { font-size: clamp(49px, 12vw, 75px); }
 .ww-contact-hero { padding-bottom: 35px; }
 .ww-contact-hero::after { display: block; width: 65px; height: 100px; top: 10px; right: 0; bottom: auto; opacity: .7; }
 .ww-contact-inquiry { padding-top: 15px; }
 .ww-footer { padding-top: 105px; }
 .ww-footer-nav .wp-block-navigation__container { column-gap: 20px; row-gap: 16px; }
 .ww-footer::before { height: 105px; background-size: auto 105px; background-position: 74% top; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior: auto; }
 .ww-overview-card { transition: none; }
}

/* Final refinement: shared editorial hierarchy, with the existing hero compositions retained. */
.ww-section-tag, .ww-contact-aside-label { color: #B9B9C2; font: 500 10px/1.6 Inter, sans-serif; letter-spacing: .18em; }
.ww-section .ww-section-title { font-family: Newsreader, Georgia, serif; font-size: clamp(38px, 4.4vw, 64px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.ww-section .ww-prose p, .ww-section .ww-detail-copy li, .ww-section .ww-field-answer, .ww-section .ww-relationship-note p, .ww-section .ww-contact-step p:not(.ww-contact-step-index), .ww-section .ww-next-copy { font-size: 15px; line-height: 1.85; }
.ww-section p.ww-page-intro, .ww-section p.ww-about-lead, .ww-contact-intro { font-size: 18px; line-height: 1.75; }
.ww-section .ww-section-tag { font-size: 10px; line-height: 1.6; }
.ww-section .ww-field-question, .ww-section .ww-relationship-note h3, .ww-section .ww-contact-step h3 { font: 400 clamp(27px, 2.5vw, 34px)/1.2 Newsreader, Georgia, serif; letter-spacing: -.02em; }
/* Each row owns its bottom separator; full-row links share pointer and keyboard feedback. */
.ww-services .ww-service-list { border-top: 1px solid #35353B; }
.ww-services .ww-service-row { border-top: 0; border-bottom: 1px solid #35353B; transition: border-bottom-color .2s; }
.ww-services .ww-service-row:is(:hover, :focus-within, :active) { border-bottom-color: #C1121F; }
.ww-service-row h3 a::after { content: ''; position: absolute; inset: 0; }
.ww-service-row:focus-within { outline: 2px solid #F5F5F5; outline-offset: 5px; }
.ww-service-row h3 a:focus-visible { outline: none; }
.ww-philosophy-intro { max-width: 65ch; margin-top: 28px; color: #B9B9C2; }
.ww-about-questions .ww-field-notes { width: 100%; margin: 36px 0 0 !important; }
.ww-about-questions .ww-field-note:nth-child(n) { margin-left: 0 !important; }
.ww-about-questions .ww-field-answer { max-width: 65ch; margin-top: 12px !important; }
.ww-field-index { color: #B9B9C2; }
.ww-form-field input, .ww-form-field textarea { font: 400 16px/1.5 Inter, sans-serif; }
.ww-form-field :is(input, textarea):focus-visible { outline: 2px solid #F5F5F5; outline-offset: 3px; }
@media(max-width:700px) {
 .ww-section .ww-section-title { font-size: clamp(35px, 8.8vw, 48px); }
 .ww-section p.ww-page-intro, .ww-section p.ww-about-lead, .ww-contact-intro { font-size: 17px; }
}
@media(prefers-reduced-motion:reduce) { .ww-services .ww-service-row { transition: none; } }
/* Keep every section label on the same small type scale, including labels inside prose. */
.ww-section p.ww-section-tag, .ww-contact-aside-label { display: flex; align-items: center; gap: 20px; padding-left: 0; font: 500 10px/1.6 Inter, sans-serif; letter-spacing: .18em; color: #B9B9C2; }
.ww-section p.ww-section-tag::before, .ww-contact-aside-label::before { content: ''; display: block; position: static; flex-shrink: 0; margin: 0; width: 20px; height: 1px; background: #C1121F; }

.ww-pricing-questions > p.ww-section-tag { justify-content: center; }
