.tr-preserved-style-0{margin-top:40px}
.tr-preserved-style-1{max-width:760px;margin-top:28px}
.tr-preserved-style-2{margin-top:40px}
.tr-preserved-style-3{padding-top:0}
.tr-preserved-style-4{font-size:34px;margin-bottom:25px}
.tr-preserved-style-5{font-size:14px;color:var(--muted)}

/* Core blocks inherit the approved design rather than default button shapes. */
.tr-visual-page .wp-block-group{box-sizing:border-box}
.tr-visual-page .wp-block-image{margin-block:0}
.tr-link-group{margin:0!important;gap:0!important;display:inline-flex}
.tr-link-group .wp-block-button{margin:0}
.tr-link-group .wp-block-button__link{border-radius:0;font-family:var(--sans);font-weight:600;font-size:14px;line-height:1.65;padding:15px 24px;border:1px solid var(--forest);background:var(--forest);color:var(--white);display:inline-flex;align-items:center;gap:30px;min-height:50px;text-decoration:none}
.tr-link-group .tr-button-light .wp-block-button__link{background:var(--paper);color:var(--forest);border-color:var(--paper)}
.tr-link-group .tr-text-link .wp-block-button__link{background:transparent;color:inherit;border:0;border-bottom:1px solid var(--bronze);padding:10px 0;min-height:0;text-align:left}
.hero-actions .tr-link-group{width:auto}
.credential-strip .credential-label{font-size:11px;font-weight:600;line-height:1.5;max-width:240px;margin:0}
.service-list .tr-service-row{display:grid;grid-template-columns:35px 1fr 25px;gap:30px;align-items:center;border-top:1px solid var(--line);padding-block:30px}
.service-list .tr-service-row:last-child{border-bottom:1px solid var(--line)}
.tr-service-row .service-number,.tr-service-row .service-arrow{margin:0}
.tr-service-row h3 a{color:inherit;text-decoration:none}
.tr-service-row h3 a:hover{text-decoration:underline}
.tr-service-row .service-arrow a{text-decoration:none;font-size:23px}
.process-grid .process-step{border-top:1px solid #ffffff40;padding-top:22px}
.process-grid p.process-step-number{font-size:12px;color:#d3bf96;display:block;margin:0 0 28px}
.tr-visual-page .wp-block-group.hero-copy{margin:0}
.tr-visual-page .approach-image figcaption{margin-bottom:0}
@media(max-width:1059px){.credential-strip .credential-label{width:calc(50% - 20px);max-width:none}}
@media(max-width:700px){.service-list .tr-service-row{grid-template-columns:26px 1fr 20px;gap:14px;padding-block:23px}.credential-strip .credential-label{font-size:10px;width:calc(50% - 12px)}.process-grid p.process-step-number{margin-bottom:18px}.hero-actions .tr-link-group .wp-block-button__link{font-size:13px}.tr-link-group .wp-block-button__link{max-width:100%}}

/* Core Group's compatibility wrapper must not become a grid/flex item. */
.tr-visual-page .wp-block-group__inner-container{display:contents}
.tr-visual-page .wp-block-group__inner-container>*{margin-block-start:0}
.tr-visual-page .section-heading .wp-block-group__inner-container>p:last-child:not(.eyebrow){max-width:540px;color:var(--muted);margin:23px 0 0;font-size:15px}
.tr-visual-page .process-section .section-heading .wp-block-group__inner-container>p.process-intro{max-width:760px;color:#dce4dd}
.tr-visual-page .process-next{margin-top:36px}
.tr-visual-page .process-grid .process-step-number{margin:0 0 28px}
.tr-visual-page .tr-link-group .wp-block-button__link{margin:0}

/* Retain the approved spacing after the core Group flow reset. */
.tr-visual-page .hero-location{margin-top:30px}
.tr-visual-page .tr-preserved-style-0,.tr-visual-page .tr-preserved-style-2{margin-top:40px}
.tr-visual-page .tr-preserved-style-1{margin-top:28px}
.tr-visual-page .resource-archive-link{margin-top:38px}
.tr-visual-page .contact-band p:not(.eyebrow){margin-top:16px}
@media(max-width:700px){.tr-visual-page .hero-location{margin-top:24px}.tr-visual-page .process-grid .process-step-number{margin-bottom:18px}}
/* Native service pages: consistent typography and lightweight documentary images. */
.service-intro{padding-block:64px 72px;border-bottom:1px solid var(--line)}
.service-intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}
.service-intro h1{font-size:clamp(42px,4.3vw,64px);margin-bottom:25px}
.service-lead{font-size:19px;line-height:1.65;color:var(--muted);max-width:590px}
.tr-visual-page .service-photo{margin:0}.service-photo img{width:100%;aspect-ratio:5/4;object-fit:cover}
.service-photo.service-portrait img{aspect-ratio:1/1;max-width:400px;margin:auto}
.service-section-wrap>h2{max-width:800px;margin-bottom:35px;font-size:clamp(32px,3.7vw,48px)}
.service-section-wrap>p:not(.eyebrow){max-width:820px;color:var(--muted)}
.service-body-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start}
.service-prose p{max-width:730px;color:var(--muted)}
.service-notes{padding:28px 30px;border-top:2px solid var(--bronze);background:#eceee5}
.service-notes h3{font-size:27px;margin-bottom:22px}.service-notes ul{padding-left:20px;margin:0 0 16px}.service-notes li{margin-bottom:12px;font-size:15px}
.service-tint{background:#eef0e8}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.service-cards-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 54px}
.service-card{border-top:1px solid #cbd4c9;padding-top:24px;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.service-card h3{font-size:29px;margin-bottom:18px}.service-card p{font-size:15px;color:var(--muted)}.service-card .tr-link-group{margin-top:auto!important}.service-card .wp-block-button__link{font-size:13px}
.service-close-copy{max-width:720px}.contact-band .service-engagement-note{font-size:13px!important;color:#cbd6cc!important}.service-legacy-anchors{height:0;overflow:hidden}
@media(max-width:1059px){.service-intro-grid,.service-body-grid{gap:36px}.service-cards{gap:24px}.service-intro{padding-block:45px}.service-notes{padding:24px}}
@media(max-width:700px){.service-intro{padding-block:40px 45px}.service-intro-grid,.service-body-grid,.service-cards,.service-cards-two{grid-template-columns:1fr;gap:32px}.service-intro h1{font-size:42px}.service-lead{font-size:17px}.service-photo img{aspect-ratio:4/3}.service-intro .service-portrait img{max-width:300px}.service-section-wrap>h2{margin-bottom:26px}.service-notes{padding:24px}.service-card h3{font-size:28px}}
