
/* Brand symbol and refined editorial composition */
.brand{align-items:flex-start!important}
.boutique-mark{margin-left:1px;text-indent:0!important;letter-spacing:.25em!important}
.foot-top>div:first-child{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding-right:70px;min-height:130px}
.foot-top>div:first-child>p{margin:15px 0 0!important;text-align:left;max-width:260px}
.foot-seal{position:absolute;right:9px;top:9px;width:49px;height:49px;object-fit:contain}
/* A deliberate two-line hero heading avoids orphan words at every desktop width. */
.hero-panel h1{font-size:clamp(3.05rem,4.42vw,5.65rem)!important;line-height:1.04!important;letter-spacing:-.05em!important;margin-bottom:26px!important}
.hero-line{display:block;white-space:nowrap}
/* A more consistent vertical rhythm between content-rich sections. */
.intro{padding:105px 0 90px!important}
.intro-grid{align-items:start!important;grid-template-columns:minmax(0,1fr) minmax(0,.9fr)!important;gap:clamp(48px,7vw,130px)!important}
.intro .eyebrow{margin-bottom:19px!important}
.intro h2{font-size:clamp(2.65rem,3.65vw,4.4rem)!important;max-width:680px;line-height:1.105!important}
.intro-right{padding-top:46px!important}
.intro-right p:first-child{font-size:1.17rem!important;line-height:1.46!important;max-width:450px}
.consulting-overview{background:var(--limestone)!important;padding:0 0 100px!important}
.consulting-layout{background:var(--sandstone)!important;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;gap:8%!important;align-items:start!important;padding:74px 7.5%!important}
.consulting-heading h2{font-size:clamp(2.7rem,3.4vw,4.05rem)!important;line-height:1.095!important;max-width:470px}
.consulting-detail>p:first-child{margin-top:0}
.consulting-detail{padding-top:3px}
/* Service section: title and supporting copy share the same left alignment. */
.services .section-head{display:block!important;margin-bottom:40px!important}
.services .section-head>div{max-width:750px}
.services .section-head h2{line-height:1.1!important;font-size:clamp(2.7rem,4vw,4.75rem)!important}
.services .section-head>p{max-width:620px!important;width:auto!important;margin:21px 0 0!important;font-size:1.03rem!important;line-height:1.55!important}
.service-card-link{grid-template-columns:42% minmax(0,58%)!important}
.service-copy{padding:29px 29px 25px!important}
.service-copy h3{font-size:clamp(1.75rem,1.9vw,2.22rem)!important}
.service-image img{object-position:center center}
/* Product navigation uses stable typography and no decorative numbers. */
.promises{padding:34px 0!important}
.promise-grid .symbol{display:block!important;width:28px;height:29px!important;color:var(--terracotta)!important}
.promise-grid .symbol svg{width:27px;height:27px;display:block}
.promise-grid>div{gap:7px!important;text-align:left!important;align-items:flex-start!important;padding:0 18px 0 25px;justify-content:center}
.promise-grid>div:first-child{padding-left:0}
.promise-grid strong{font-size:.67rem!important;letter-spacing:.08em!important}
/* Portfolio banner: image and message visibly occupy one deliberately compact module. */
.portfolio-feature{min-height:370px!important;grid-template-columns:49% 51%!important}
.portfolio-visual{min-height:370px!important;max-height:390px!important}
.portfolio-visual img{object-fit:cover!important;object-position:50% 60%!important}
.portfolio-story{padding:45px clamp(35px,5vw,85px)!important}
.portfolio-story h2{font-size:clamp(2.7rem,3.5vw,4.2rem)!important;line-height:1.06!important;margin-bottom:18px!important}
.portfolio-story p:not(.eyebrow){font-size:.97rem!important;line-height:1.52!important;margin-bottom:10px}
.portfolio-story .eyebrow{margin-bottom:16px}
.portfolio-story .btn{margin-top:15px!important}
/* Founder story follows a consistent left-to-right reading order. */
.about{padding:90px 0!important}
.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 26%!important;gap:5%!important;align-items:start!important}
.about h2{font-size:clamp(2.5rem,3.15vw,3.9rem)!important;line-height:1.09!important}
.about-grid>div:nth-child(2){padding-top:45px}
.about-portrait{height:280px!important}
/* Footer: logo, BOUTIQUE and motto form a single coherent block. */
.foot-top{align-items:start!important;grid-template-columns:minmax(0,1.65fr) minmax(0,.95fr) minmax(0,1.2fr) minmax(0,.65fr)!important}
.foot-top a.brand{width:195px!important}
@media(min-width:801px) and (max-width:1300px){
 .hero-panel h1{font-size:clamp(2.75rem,4.3vw,4.9rem)!important}
 .intro-grid{gap:48px!important}
 .consulting-layout{padding:55px!important;gap:6%!important}
 .service-card-link{grid-template-columns:40% 60%!important}
 .service-copy{padding:24px 21px!important}
 .service-copy h3{font-size:1.75rem!important}
 .portfolio-story{padding:40px 45px!important}
 .foot-seal{display:none}
}
@media(max-width:1120px){
 .service-card-link{display:flex!important;flex-direction:column!important}
 .service-image{height:245px!important;min-height:245px!important}
 .service-copy{min-height:325px!important}
 .service-copy h3{font-size:2rem!important}
 .about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:28px!important}
 .about-portrait{grid-column:2!important;grid-row:1 / span 2!important;height:100%!important;min-height:280px!important}
 .about-grid>div:nth-child(2){grid-column:1!important;padding-top:0!important}
}
@media(max-width:800px){
 .hero-panel h1{font-size:clamp(2.7rem,8vw,4.7rem)!important}
 .intro{padding:80px 0 65px!important}
 .intro-grid{display:block!important}
 .intro-right{padding-top:25px!important}
 .consulting-overview{padding-bottom:80px!important}
 .consulting-layout{display:block!important;padding:42px 28px!important}
 .consulting-heading h2{max-width:none!important}
 .services .section-head h2{font-size:clamp(2.6rem,7.5vw,4.1rem)!important}
 .services .section-head>p{margin-top:16px!important}
 .portfolio-feature{display:flex!important;flex-direction:column!important}
 .portfolio-visual{height:250px!important;min-height:250px!important}
 .portfolio-story{padding:42px 28px 48px!important}
 .about-grid{grid-template-columns:1fr!important}
 .about-portrait{grid-column:1!important;grid-row:auto!important;height:240px!important;min-height:0!important}
 .foot-top{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .foot-top>div:first-child{padding-right:0}
 .foot-seal{display:none}
 .promise-grid>div{padding-left:12px}
}
@media(max-width:600px){
 .hero-panel h1{font-size:clamp(2.32rem,10.1vw,3.8rem)!important;letter-spacing:-.055em!important}
 .service-card-link{display:grid!important;grid-template-columns:38% minmax(0,62%)!important}
 .service-image{height:100%!important;min-height:288px!important}
 .service-copy{padding:19px 17px 17px!important;min-height:288px!important}
 .service-copy h3{font-size:1.54rem!important}
 .intro h2,.consulting-heading h2{font-size:clamp(2.5rem,9vw,3.7rem)!important}
 .foot-top>div:first-child{grid-column:1/-1!important}
}
@media(max-width:360px){
 .hero-panel h1{font-size:2.22rem!important}
 .service-card-link{grid-template-columns:35% 65%!important}
 .service-copy{padding:16px 12px!important}
 .service-copy h3{font-size:1.42rem!important}
}
