/* Real project photography. Scoped to keep the established site intact. */
.msp-swipe-hint{display:none}
.skip-link{position:absolute;top:-80px;left:16px;z-index:100000;background:#fff;color:#143c2b;padding:10px 16px;border:2px solid #143c2b}.skip-link:focus{top:8px}.msp-hub>.msp-hero{padding:38px 0}.msp-hub>.msp-section{padding-top:30px}
@media(min-width:601px){.msp-card[data-project-card="covered-yard-storage"] img{object-fit:cover;object-position:center 66%}.msp-card[data-project-card="building-beside-a-workshop"] img{object-fit:cover;object-position:left center}}
.msp-section{padding:clamp(2.25rem,5vw,4.5rem) 0;background:#f4f4ee;color:#163f30}
.msp-section.msp-white{background:#fff}.msp-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.msp-heading h2{font-size:clamp(1.875rem,2.8vw,2.75rem);line-height:1.12;margin:var(--space-sm) 0}.msp-heading p{max-width:640px;color:#516057;line-height:1.6;margin:0}.msp-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:20px}.msp-links a,.msp-heading>a{font-weight:700;color:#174a36;text-underline-offset:4px}.msp-heading>a{white-space:nowrap}.msp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}.msp-card{background:#fff;border:1px solid #d8dfd5;border-radius:12px;overflow:hidden;color:inherit;text-decoration:none;display:flex;flex-direction:column}.msp-card:hover{border-color:#55775b;box-shadow:0 6px 22px #163f3012}.msp-card img{width:100%;height:235px;object-fit:contain;background:#e8ece4;display:block}.msp-card-copy{padding:var(--space-lg);flex:1;display:flex;flex-direction:column}.msp-card small,.msp-kicker{display:block;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;line-height:1.618;color:var(--brand-muted)}.msp-card h3{font-size:var(--text-xl);margin:var(--space-sm) 0;line-height:1.15}.msp-card p{font-size:var(--text-base);line-height:1.618;color:var(--brand-muted);margin:0 0 var(--space-md)}.msp-card strong{font-size:var(--text-base);font-weight:700;line-height:1.5;margin-top:auto}.msp-hero{padding:clamp(2rem,5vw,4.5rem) 0;background:#eef1e9}.msp-hero-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(24px,5vw,68px);align-items:center}.msp-hero h1{font-size:clamp(2.3rem,4.7vw,4.5rem);line-height:1.02;letter-spacing:.01em;margin:14px 0 22px;color:#103e2b}.msp-hero p{font-size:1.08rem;line-height:1.7;max-width:610px}.msp-hero .msp-figure img{max-height:530px}.msp-breadcrumb{font-size:.85rem;margin-bottom:25px}.msp-breadcrumb a{color:#315c40}.msp-body{max-width:1100px;margin:auto;padding:48px 24px 70px;color:#263e31}.msp-body h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.2;margin:0 0 20px;color:#143c2b}.msp-body p{line-height:1.75;max-width:760px}.msp-body>section{margin:0 0 52px}.msp-body ul{padding-left:22px;line-height:1.85;max-width:760px}.msp-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px}.msp-photo-grid.msp-three{grid-template-columns:repeat(3,minmax(0,1fr))}.msp-figure{margin:0;min-width:0}.msp-figure>a{display:block;background:#e8ece4;border-radius:8px;overflow:hidden}.msp-figure img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain}.msp-figure figcaption{font-size:var(--text-sm);line-height:1.6;color:#526057;padding-top:12px}.msp-figure figcaption b{color:#20452f}.msp-split{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.msp-split h2{font-size:clamp(1.875rem,2.8vw,2.75rem);line-height:1.12;margin:var(--space-sm) 0 var(--space-md)}.msp-split p{line-height:1.7;color:#526158}.msp-proof{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.msp-proof article{display:grid;grid-template-columns:125px 1fr;gap:20px;align-items:center;padding:20px;background:#fff;border:1px solid #d8dfd5;border-radius:8px}.msp-proof img{height:170px;width:125px;object-fit:contain;background:#e8ece4}.msp-proof h3{font-size:1.5rem;line-height:1.15;margin:0 0 var(--space-sm)}.msp-proof p{font-size:var(--text-base);line-height:1.618;margin:0 0 var(--space-md)}.msp-proof a{color:#174a36;font-weight:700}.msp-note{font-size:.85rem!important;color:#617063;border-left:3px solid #b8a35d;padding:8px 0 8px 15px;margin:25px 0}.msp-cta{padding:30px;background:#edf2e8;border:1px solid #cdd9c8;border-radius:10px}.msp-video{display:block;width:100%;height:auto;max-height:70vh;background:#102c22;border-radius:10px}.msp-watch{max-width:1050px;margin:auto;padding:35px 24px 60px}.msp-watch h1{font-size:clamp(2rem,4vw,3.7rem);line-height:1.05;margin:18px 0}.msp-watch p{line-height:1.7;max-width:780px}.msp-watch video{margin:22px 0}.msp-curated{padding:35px 0 15px}.msp-curated h2{font-size:1.8rem;line-height:1.2;margin:0 0 12px}.msp-curated>div>p{color:#526158;max-width:760px;line-height:1.6}.msp-selected{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-top:22px}.msp-selected img{height:205px;width:100%;object-fit:contain}.msp-selected figcaption{font-size:var(--text-sm)}.msp-dialog{border:0;border-radius:10px;background:#10271e;color:#fff;max-width:96vw;padding:50px 18px 18px}.msp-dialog::backdrop{background:#000d}.msp-dialog img{display:block;max-width:90vw;max-height:75vh;object-fit:contain;margin:auto}.msp-dialog p{max-width:800px;margin:14px auto 0;font-size:.9rem}.msp-dialog button{position:absolute;right:12px;top:10px;background:#fff;color:#143c2b;border:0;border-radius:6px;padding:8px 14px;font:inherit;cursor:pointer}.msp-section a:focus-visible,.msp-body a:focus-visible,.msp-curated a:focus-visible,.msp-dialog button:focus-visible{outline:3px solid #bd8c11;outline-offset:4px}
@media(max-width:800px){.msp-heading{display:block}.msp-heading>a{display:inline-block;margin-top:15px}.msp-hero-inner,.msp-split{grid-template-columns:1fr}.msp-hero .msp-figure img{max-height:470px}.msp-card img{height:195px}.msp-card-copy{padding:16px}.msp-proof{grid-template-columns:1fr}.msp-selected{grid-template-columns:repeat(3,minmax(0,1fr))}.msp-photo-grid.msp-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.msp-cards{grid-template-columns:1fr;gap:12px}.msp-card{display:grid;grid-template-columns:120px 1fr}.msp-card img{height:100%;min-height:155px;max-height:215px}.msp-hero h1{font-size:2.6rem}.msp-photo-grid,.msp-photo-grid.msp-three{grid-template-columns:1fr}.msp-photo-grid .msp-figure img{max-height:540px}.msp-body{padding:35px 20px 55px}.msp-selected{grid-template-columns:repeat(2,minmax(0,1fr))}.msp-selected img{height:190px}.msp-proof article{grid-template-columns:95px 1fr;padding:14px;gap:14px}.msp-proof img{width:95px;height:150px}}
@media(max-width:600px){.msp-swipe-hint{display:block;font-size:var(--text-sm);color:var(--brand-muted);margin:0 0 var(--space-md)}.msp-cards{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:88%;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:0 2px 14px}.msp-cards .msp-card{display:flex;scroll-snap-align:start}.msp-cards .msp-card img{width:100%;height:190px;min-height:190px;max-height:190px}.msp-cards .msp-card[data-project-card="covered-yard-storage"] img{object-fit:cover;object-position:center 66%}.msp-cards .msp-card[data-project-card="building-beside-a-workshop"] img{object-fit:cover;object-position:left center}.msp-cards .msp-card-copy{padding:var(--space-md)}}

/* Use the existing MSB display face and type scale on every new section.
   The homepage intentionally opts out of the global heading rule. */
body :is(.msp-heading,.msp-split,.msp-curated,.msp-hero,.msp-body,.msp-watch) :is(h1,h2),
body :is(.msp-card,.msp-proof) h3{
 font-family:var(--font-display);
 font-weight:800;
 letter-spacing:.01em;
}
.home-refined :is(.msp-heading,.msp-split) h2{font-size:var(--text-2xl);line-height:1.1}
@media(min-width:1024px){.home-refined :is(.msp-heading,.msp-split) h2{font-size:var(--text-3xl)}}
