/* A consistent left edge and readable line lengths at the end of the homepage. */
.marketplace-teaser{padding:64px 0!important}
.marketplace-teaser .wrap{min-width:0}
.marketplace-teaser .tag{margin:0 0 18px}
.marketplace-teaser h2{max-width:28ch;margin:0 0 24px;text-wrap:balance;overflow-wrap:break-word}
.marketplace-teaser p{max-width:62ch;margin:0 0 28px}
.contact-invitation{padding:64px 0}
.contact-invitation .contact-inner{grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.contact-invitation .contact-inner>div{min-width:0}
.contact-invitation .eyebrow{display:block;margin:0;color:#fff}
.contact-invitation .eyebrow::before{content:none;display:none}
.contact-invitation h2{max-width:28ch;margin:18px 0 20px;text-wrap:balance}
.contact-invitation p{max-width:72ch;margin:0;text-wrap:pretty}
.contact-invitation .button{max-width:100%;white-space:normal}
@media(max-width:700px){.marketplace-teaser,.contact-invitation{padding:44px 0!important}.marketplace-teaser h2,.contact-invitation h2{max-width:100%}.contact-invitation .contact-inner{gap:24px}}

/* Shared text/action layout for all five closing homepage sections. */
.home-band .home-band-inner{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:center}
.home-band .home-band-inner>div{min-width:0}
.home-band .home-band-inner>:last-child{justify-self:end;width:360px;max-width:100%}
.home-band .home-band-inner p{margin-bottom:0}
.home-band .home-band-inner .bernold-cta{margin:0;width:360px;max-width:100%;min-height:64px!important;padding:18px 22px!important;border-radius:10px!important;font-size:1rem!important;line-height:1.45!important;white-space:normal;text-align:center}
@media(max-width:900px){
 .home-band .home-band-inner{grid-template-columns:minmax(0,1fr);gap:28px}
 .home-band .home-band-inner>:last-child{justify-self:end;max-width:100%}
}

/* One reading rhythm across the five closing sections. */
.home-band{padding:64px 0!important}
.home-band .eyebrow,.home-band .tag,.home-band .hb-kicker{margin:0!important;font-family:var(--type-body)!important;font-size:.75rem!important;font-weight:700!important;line-height:1.6!important;letter-spacing:.1em!important}
.home-band h2{font-size:2rem!important;line-height:1.25!important;font-weight:500!important;max-width:30ch;margin:18px 0 20px!important;text-wrap:balance}
.home-band .home-band-inner p{font-size:1.125rem!important;line-height:1.65!important;font-weight:400!important;max-width:64ch;margin:0!important;text-wrap:pretty}
@media(max-width:700px){
 .home-band{padding:44px 0!important}
 .home-band h2{font-size:1.625rem!important;max-width:100%}
 .home-band .home-band-inner p{font-size:1rem!important}
}

/* Service cards: keep a real gap before actions, even when auto margins collapse. */
.services .service .service-symbol{display:block;flex-shrink:0}
.services .service h3{margin:20px 0 14px;hyphens:auto!important}
.services .service p{margin:0 0 24px!important;color:#40545e;line-height:1.65!important}
.services .service>.bernold-cta{margin-top:auto!important}
@media(max-width:900px){
 .services .service{padding:24px;min-height:0}
 .services .service .service-symbol{width:48px;height:48px}
 .services .service h3{margin:16px 0 12px}
 .services .service>.bernold-cta{width:100%;min-height:52px!important}
}

/* References belong to the full service section. */
.services .practice-entry{display:flex;justify-content:flex-end;margin:28px 0 0}
.services .practice-entry>.bernold-cta{width:360px;max-width:100%;min-height:64px!important;padding:18px 22px!important}

/* Keep the service introduction together in reading order. */
.services .section-head{grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;margin-bottom:36px}
.services .section-head .expertise-title{margin-bottom:0}
.services .section-head .section-copy{max-width:62ch;margin:0;color:#40545e;text-align:left}
@media(max-width:700px){.services .section-head{gap:20px;margin-bottom:28px}}

/* Match the homepage entrance and expertise heading to section titles. */
.hero h1,.services .expertise-title{font-size:2rem!important;line-height:1.25!important;font-weight:500!important;letter-spacing:-.025em!important}
@media(max-width:700px){.hero h1,.services .expertise-title{font-size:1.625rem!important}}

/* A compact personal introduction supports the company's main message. */
.hero{grid-template-columns:minmax(0,1fr) 280px;gap:64px}
.hero .home-visual{width:280px;max-width:100%;justify-self:end;box-shadow:none}
.hero .home-visual img[src^="patrick-bernold-"]{height:auto;min-height:0;aspect-ratio:1101/1429;object-fit:contain;object-position:center top}
.hero .home-visual>div{padding:28px 24px;background:#f4f1eb}
.hero .home-visual>div>span{color:#805c3c;font-size:.65rem!important;letter-spacing:.08em}
.hero .home-visual p.profile-role{margin:0 0 20px}
.hero .home-visual p.profile-experience{font-size:.875rem!important;line-height:1.65!important}
.hero .home-visual a.bernold-cta{margin-top:24px}
.hero .home-visual strong{font-size:1.25rem;margin:10px 0 8px}
.hero .home-visual .bernold-cta{width:100%;padding:10px 12px!important;font-size:.875rem!important}
@media(max-width:700px){
 .hero{grid-template-columns:minmax(0,1fr);gap:28px}
 .hero .home-visual{width:100%;grid-template-columns:32% minmax(0,1fr)}
 .hero .home-visual img[src^="patrick-bernold-"]{height:auto;min-height:0;aspect-ratio:1101/1429;object-fit:contain;align-self:start;object-position:center top}
 .hero .home-visual>div{padding:18px 16px}
 .hero .home-visual strong{font-size:1.2rem;white-space:normal}
}
