/* Signature Mentoring: shared presentation for frontend and block editor. */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 2rem; }
body { -webkit-font-smoothing: antialiased; }
:root { --sm-ink:#203f53; --sm-muted:#536c7a; --sm-gold:#997a42; --sm-ice:#eaf3f6; --sm-ivory:#faf8f3; --sm-line:rgba(32,63,83,.19); }
.wp-site-blocks { padding-block:0; }
.wp-site-blocks > *, .sm-main > *, .sm-main { margin-block-start:0; }
.sm-container { width:min(100% - clamp(2.5rem,8vw,8rem),1240px); margin-inline:auto; }
.sm-container > :first-child { margin-top:0; }
.sm-container > :last-child { margin-bottom:0; }
.sm-main > .wp-block-post-content { margin-block:0; }
.sm-main > .wp-block-post-content > * { margin-block-start:0; }
.editor-styles-wrapper .is-root-container > .sm-stage,
.editor-styles-wrapper .is-root-container > .sm-section { max-width:none; width:100%; }
.sm-section { padding-block:clamp(3.5rem,7.5vw,7rem); }
.sm-section h2 { margin:0 0 1.75rem; text-wrap:balance; }
.sm-section h3 { margin:0 0 .8rem; }
.sm-section p { margin-block:0 1.2rem; }
.sm-eyebrow { font-family:var(--wp--preset--font-family--body); font-size:.69rem; line-height:1.6; letter-spacing:.24em; font-weight:600; color:var(--sm-gold)!important; margin-bottom:1.5rem!important; }
.sm-header { background:var(--sm-ivory); border-bottom:1px solid rgba(153,122,66,.18); padding-block:1.35rem; }
.sm-header-row, .sm-brand-lockup, .sm-footer-row, .sm-footer-links { display:flex; align-items:center; }
.sm-header-row { justify-content:space-between; gap:2rem; }
.sm-brand-lockup { gap:1.3rem; flex-shrink:0; }
.sm-brand { margin:0!important; line-height:1; }
.sm-brand a { display:block; color:var(--sm-ink); text-decoration:none; }
.sm-brand-title { font-family:var(--wp--preset--font-family--editorial); font-size:1.5rem; line-height:1; letter-spacing:.21em; display:block; }
.sm-brand-sub { display:block; font-family:var(--wp--preset--font-family--body); font-size:.54rem; line-height:1.8; font-weight:600; letter-spacing:.56em; text-align:center; margin-top:.4rem; }
.sm-attribution { margin:0!important; padding-left:1.3rem; border-left:1px solid var(--sm-line); font-size:.75rem; white-space:nowrap; }
.sm-signature { font-family:var(--wp--preset--font-family--signature); font-size:1.7rem; font-weight:400; display:inline-block; margin-left:.35rem; color:var(--sm-ink); }
.sm-navigation { margin:0!important; }
.sm-navigation .wp-block-navigation__container { gap:clamp(1.25rem,2.4vw,2.5rem); }
.sm-navigation .wp-block-navigation-item__content { text-decoration:none; text-underline-offset:.3em; }
.sm-navigation .wp-block-navigation-item__content:hover { text-decoration:underline; }
.sm-nav-contact > a { border:1px solid var(--sm-gold); padding:.55rem 1.3rem; }
.sm-stage { position:relative; padding:4rem 0!important; min-height:680px; min-height:clamp(580px,76svh,820px)!important; color:var(--sm-ink); isolation:isolate; }
.sm-stage::before { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(250,248,243,.99) 0%,rgba(250,248,243,.94) 30%,rgba(250,248,243,.58) 48%,rgba(250,248,243,0) 68%); pointer-events:none; }
.sm-stage .wp-block-cover__inner-container { position:relative; z-index:2; width:100%; }
.sm-stage .sm-stage-copy { width:52%; max-width:650px; }
.sm-stage .sm-eyebrow { margin:0 0 2rem!important; }
.sm-stage .sm-hero-title { color:var(--sm-ink); font-size:clamp(2.75rem,4.4vw,4.65rem); line-height:1.07; letter-spacing:-.025em; margin:0 0 1.8rem; font-weight:400; text-wrap:balance; }
.sm-stage .sm-hero-offer { font-size:clamp(1.13rem,1.55vw,1.4rem); line-height:1.65; max-width:29rem; margin:0 0 2rem; color:var(--sm-ink); }
.sm-stage .wp-block-buttons { margin-top:0; }
.sm-stage .sm-hero-caption { margin-top:1.7rem; font-size:.82rem; letter-spacing:.015em; color:var(--sm-muted); }
.wp-block-button__link { transition:background-color .2s,border-color .2s; text-decoration:none!important; }
.wp-block-button__link:hover { background-color:#34647b; border-color:#34647b; }
a:focus-visible,button:focus-visible { outline:2px solid #34647b; outline-offset:5px; }
.sm-question-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.25rem; margin-top:2.9rem; }
.sm-question-grid > *, .sm-method-grid > *, .sm-profile-grid > *, .sm-work-grid > * { margin-block:0!important; }
.sm-question + .sm-question { border-left:1px solid var(--sm-line); padding-left:2.25rem; }
.sm-question h3 { font-size:clamp(1.5rem,2.05vw,1.85rem); }
.sm-question p { font-size:1rem; line-height:1.75; }
.sm-method { background:var(--sm-ice); position:relative; overflow:hidden; }
.sm-method::after { content:""; width:34rem; height:17rem; border:1px solid rgba(153,122,66,.6); border-radius:50%; position:absolute; top:4.5rem; right:-13rem; transform:rotate(-23deg); pointer-events:none; }
.sm-method-intro { max-width:760px; position:relative; z-index:1; }
.sm-method .sm-method-claim { font-family:var(--wp--preset--font-family--editorial); font-size:1.7rem; color:var(--sm-ink); line-height:1.3; margin-block:-.3rem 1.5rem; }
.sm-method-intro > p:last-child { max-width:650px; }
.sm-method-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.8rem; margin-top:3.2rem; }
.sm-dimension { text-align:center; padding-inline:1rem; border-left:1px solid var(--sm-line); }
.sm-dimension:first-child { border:0; }
.sm-dimension h3 { font-size:1.65rem; margin-top:.8rem; }
.sm-dimension p:last-child { font-size:.9rem; line-height:1.65; }
.sm-icon { height:48px; width:48px; margin:0 auto 1rem!important; background-position:center; background-repeat:no-repeat; background-size:contain; }
.sm-icon-understand { background-image:url(images/icon-understand.svg); }
.sm-icon-question { background-image:url(images/icon-question.svg); }
.sm-icon-release { background-image:url(images/icon-release.svg); }
.sm-icon-shape { background-image:url(images/icon-shape.svg); }
.sm-icon-spirit { background-image:url(images/icon-spirit.svg); }
.sm-profile-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr); gap:clamp(2rem,5.5vw,6rem); align-items:center; }
.sm-profile .sm-portrait { margin:0; position:relative; }
.sm-portrait img { display:block; width:100%; height:auto; aspect-ratio:4/4.5; object-fit:cover; object-position:center 25%; filter:saturate(.6); }
.sm-profile-signoff { border-top:1px solid rgba(153,122,66,.6); padding-top:1rem; margin-top:1.6rem!important; font-family:var(--wp--preset--font-family--editorial); font-size:1.2rem; color:var(--sm-ink)!important; }
.sm-work { background:linear-gradient(120deg,#eef6f8,var(--sm-ice)); text-align:center; }
.sm-section-lead { max-width:700px; margin-inline:auto; }
.sm-work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3rem; margin-top:3rem; }
.sm-step-number { display:flex; align-items:center; justify-content:center; width:2.8rem; height:2.8rem; border:1px solid var(--sm-gold); border-radius:50%; margin:0 auto 1.6rem!important; font-family:var(--wp--preset--font-family--editorial); font-size:1.5rem; color:var(--sm-ink)!important; }
.sm-work-step h3 { font-size:1.75rem; }
.sm-work-step > p:last-child { font-size:.97rem; }
.sm-contact { text-align:center; padding-block:clamp(4rem,8vw,8rem); }
.sm-contact-lead { font-size:1.2rem; margin-bottom:1.8rem!important; }
.sm-contact .wp-block-buttons { justify-content:center; }
.sm-contact-phone { margin-top:1.2rem!important; font-size:.95rem; }
.sm-contact-phone a { text-decoration:none; }
.sm-footer { padding-block:2rem; border-top:1px solid rgba(153,122,66,.5); }
.sm-footer-row { justify-content:space-between; gap:2rem; }
.sm-footer-links { flex-wrap:wrap; gap:1.4rem; font-size:.8rem; }
.sm-footer-links p { margin:0!important; }
.sm-footer-links a { color:var(--sm-muted); text-decoration:none; }
.sm-footer-links a:hover { text-decoration:underline; }
.sm-page { padding-block:5rem 7rem; min-height:65vh; }
.sm-page .wp-block-post-title { margin-top:0; }
.sm-page a { overflow-wrap:anywhere; }
.sm-page .wp-block-post-template > li { margin-bottom:3rem; }
.sm-page .wp-block-query-pagination { display:flex; gap:1rem; }
.editor-styles-wrapper .sm-stage { min-height:640px!important; }
.editor-styles-wrapper .sm-stage-copy { max-width:650px; }
.editor-styles-wrapper .sm-container { width:min(100% - 3rem,1240px); }
.editor-styles-wrapper .sm-stage::before { z-index:0; }
@media (max-width:1100px) {
 .sm-header .sm-attribution { display:none; }
 .sm-stage .sm-stage-copy { width:57%; }
 .sm-method-grid { gap:.5rem; }
 .sm-dimension { padding-inline:.6rem; }
 .sm-dimension h3 { font-size:1.45rem; }
 .sm-question-grid { gap:1.5rem; }
 .sm-question + .sm-question { padding-left:1.5rem; }
}
@media (max-width:781px) {
 .sm-section { padding-block:3.7rem; }
 .sm-header { padding-block:1.1rem; }
 .sm-brand-title { font-size:1.3rem; }
 .sm-brand-sub { font-size:.48rem; }
 .sm-stage { min-height:620px!important; padding-block:3.4rem!important; }
 .sm-stage .sm-stage-copy { width:78%; }
 .sm-stage::before { background:linear-gradient(90deg,rgba(250,248,243,.98) 0%,rgba(250,248,243,.95) 40%,rgba(250,248,243,.6) 72%,rgba(250,248,243,.15) 100%); }
 .sm-stage .sm-hero-title { font-size:clamp(2.6rem,6vw,3.4rem); }
 .sm-question-grid,.sm-work-grid { grid-template-columns:1fr; gap:1.5rem; }
 .sm-question + .sm-question { border-left:0; border-top:1px solid var(--sm-line); padding:1.5rem 0 0; }
 .sm-question h3 { font-size:1.9rem; }
 .sm-question p { max-width:38rem; }
 .sm-method-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem 1rem; }
 .sm-dimension:nth-child(4) { border-left:0; }
 .sm-profile-grid { grid-template-columns:.85fr 1.15fr; gap:2rem; }
 .sm-portrait img { aspect-ratio:3/4.5; }
 .sm-profile h2 { font-size:2.3rem; }
 .sm-work-step { max-width:36rem; margin-inline:auto; }
 .sm-work-grid { gap:2.5rem; }
 .sm-footer-row { flex-direction:column; align-items:flex-start; }
 .sm-footer-links { gap:1.1rem; }
}
@media (max-width:599px) {
 .sm-container { width:calc(100% - 2.5rem); }
 .sm-header-row { gap:1rem; }
 .sm-navigation .wp-block-navigation__responsive-container-open { border:1px solid var(--sm-line); padding:.55rem; }
 .sm-navigation .wp-block-navigation__responsive-container.is-menu-open { background:var(--sm-ivory); padding:2rem; }
 .sm-navigation .is-menu-open .wp-block-navigation__container { align-items:flex-start; gap:1.5rem; }
 .sm-navigation .is-menu-open .wp-block-navigation-item__content { font-size:1.1rem; }
 .sm-stage { min-height:640px!important; }
 .sm-stage .sm-stage-copy { width:100%; }
 .sm-stage .wp-block-cover__image-background { opacity:.28; }
 .sm-stage::before { background:linear-gradient(90deg,rgba(250,248,243,.97),rgba(250,248,243,.76)); }
 .sm-stage .sm-hero-title { font-size:clamp(2.4rem,9.4vw,3rem); }
 .sm-stage .sm-hero-offer { font-size:1.15rem; max-width:28rem; }
 .sm-stage .sm-hero-caption { max-width:16rem; }
 .sm-stage .wp-block-button { width:100%; max-width:25rem; }
 .sm-stage .wp-block-button__link { width:100%; text-align:center; padding-inline:.8rem; font-size:.85rem; }
 .sm-method-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem .75rem; }
 .sm-dimension:nth-child(odd) { border-left:0; }
 .sm-dimension:nth-child(4) { border-left:1px solid var(--sm-line); }
 .sm-dimension:last-child { grid-column:1/-1; max-width:16rem; justify-self:center; }
 .sm-dimension h3 { font-size:1.65rem; }
 .sm-method::after { opacity:.35; right:-25rem; }
 .sm-method .sm-method-claim { font-size:1.5rem; }
 .sm-profile-grid { grid-template-columns:1fr; gap:2.2rem; }
 .sm-portrait { max-width:26rem; }
 .sm-portrait img { aspect-ratio:4/4.5; }
 .sm-attribution { padding-left:1rem; }
 .sm-footer .sm-brand-lockup { flex-wrap:wrap; gap:.8rem; }
 .sm-footer .sm-brand-title { font-size:1.1rem; }
 .sm-footer .sm-signature { font-size:1.5rem; }
 .sm-footer-links { align-items:flex-start; flex-direction:column; gap:.8rem; }
 .sm-page { padding-block:3rem 4rem; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }
