/* Marble & Stone Polishing: self-contained portfolio archive and detail navigation. */
/* The imported WordPress pages reset the body margin; the new static archive must too. */
body.msp-projects-page{margin:0;min-width:0;overflow-x:clip}

.msp-projects,.msp-projects *, .mp-detail-back,.mp-detail-back *,
.mp-related,.mp-related * {box-sizing:border-box}
.msp-projects{color:#1f2522;background:#faf9f6;font:400 16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow-x:clip}
.msp-projects img,.mp-related img{max-width:100%;display:block}
.msp-projects a,.mp-related a,.mp-detail-back a{color:inherit;text-underline-offset:.2em}
.msp-projects h1,.msp-projects h2,.mp-related h2{font-family:"Playfair Display",Georgia,"Times New Roman",serif;line-height:1.13;letter-spacing:-.025em;font-weight:600}
.msp-projects :focus-visible,.mp-related :focus-visible,.mp-detail-back :focus-visible{outline:3px solid #9b761f;outline-offset:4px}
.mp-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.mp-hero{position:relative;isolation:isolate;overflow:hidden;background:#131c1a;color:#f5f2e9;padding:30px 0 74px}
.mp-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 88% 20%,rgba(201,168,76,.20),transparent 42%),linear-gradient(128deg,#15221e 2%,#0e1514 85%)}
.mp-hero:after{content:"";position:absolute;z-index:-1;right:-120px;top:90px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(201,168,76,.16);box-shadow:0 0 0 70px rgba(201,168,76,.02),0 0 0 145px rgba(201,168,76,.02);pointer-events:none}
.mp-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#d2cdc2;font-size:13px;margin-bottom:72px}
.mp-breadcrumb a{text-decoration:none}
.mp-breadcrumb a:hover{color:#f2cc80;text-decoration:underline}
.mp-breadcrumb [aria-current]{color:#e1c586}
.mp-eyebrow{margin:0 0 13px!important;font-weight:750!important;letter-spacing:.16em;text-transform:uppercase;font-size:11px!important;color:#ab8736}
.mp-hero .mp-eyebrow{color:#edcf80}
.mp-hero h1{font-size:clamp(50px,8vw,104px);max-width:780px;margin:0 0 19px;color:#fff}
.mp-hero-description{font-size:clamp(17px,2vw,21px);max-width:700px;line-height:1.75;color:#d9dcd7;margin:0 0 34px}
.mp-hero-cta{display:inline-flex;align-items:center;gap:24px;padding:13px 20px;border:1px solid rgba(238,217,164,.62);color:#f5e6bd!important;font-size:14px;font-weight:700;text-decoration:none!important;min-height:48px;transition:background .2s}
.mp-hero-cta:hover{background:rgba(201,168,76,.15)}
.mp-hero-index{display:flex;align-items:center;gap:13px;position:absolute;right:max(24px,calc((100vw - 1180px)/2));bottom:44px;color:#ddd7c9}
.mp-hero-index strong{font-size:32px;color:#f3d38a;line-height:1;font-weight:550}
.mp-hero-index span{font-size:12px;max-width:92px;line-height:1.4}
.mp-work{padding:84px 0 96px}
.mp-section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:27px}
.mp-section-heading h2{font-size:clamp(32px,4vw,50px);margin:0 0 8px;color:#17211e}
.mp-section-heading p:not(.mp-eyebrow){color:#606660;max-width:640px;font-size:16px;margin:0}
.mp-filters{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #e2e2da;padding-top:22px}
.mp-filter{border:1px solid #d7d8d1;background:#fff;color:#3c4440;border-radius:100px;cursor:pointer;font:650 13px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;padding:12px 16px;min-height:44px;display:inline-flex;align-items:center;gap:10px;transition:background .18s,border-color .18s,color .18s}
.mp-filter:hover{border-color:#708077;background:#f2f5ef}
.mp-filter[aria-pressed=true]{background:#233a30;color:#fff;border-color:#233a30}
.mp-filter span{font-size:12px;opacity:.65;font-variant-numeric:tabular-nums}
.mp-results{margin:16px 0 24px;color:#606660;font-size:13px}
.mp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:30px}
.mp-card{min-width:0;background:#fff;border:1px solid #e6e5dd;box-shadow:0 4px 26px rgba(22,31,27,.045);transition:transform .2s,box-shadow .2s}
.mp-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px rgba(22,31,27,.11)}
.mp-card[hidden]{display:none!important}
.mp-card-link{display:block;text-decoration:none!important;color:inherit!important}
.mp-card-cover{position:relative;overflow:hidden;aspect-ratio:16/10;background:#ece9df}
.mp-card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mp-card:hover .mp-card-cover img{transform:scale(1.025)}
.mp-cover-tag{position:absolute;left:18px;bottom:18px;background:rgba(19,26,23,.92);color:#f7e4b3;padding:8px 13px;font-size:12px;font-weight:700}
.mp-card-content{padding:30px 30px 26px}
.mp-card-location{color:#7d6b4b!important;font-size:12px!important;letter-spacing:.075em;text-transform:uppercase;font-weight:750!important;margin:0 0 10px!important}
.mp-card-content h2{font-size:clamp(23px,2.5vw,31px);margin:0 0 13px;color:#202c26}
.mp-card-content>p:not(.mp-card-location){font-size:15px;line-height:1.8;color:#545d55;margin:0 0 23px;min-height:3.6em}
.mp-card-cta{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid #bc9946;padding-bottom:6px;font-size:14px;font-weight:750;color:#233a30}
.mp-card-cta span{font-size:19px;transition:transform .2s}
.mp-card:hover .mp-card-cta span{transform:translate(2px,-2px)}
.mp-before-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #e9e6df;background:#f7f5ef}
.mp-before-after figure{position:relative;margin:0;min-width:0}
.mp-before-after figure:first-child{border-right:2px solid #fff}
.mp-before-after img{width:100%;aspect-ratio:1.8;object-fit:cover}
.mp-before-after figcaption{position:absolute;left:10px;bottom:10px;background:rgba(18,26,21,.88);color:#fff;padding:4px 9px;font-size:11px;font-weight:750}
.mp-process{background:#e8e5db;padding:65px 0}
.mp-process .mp-container{display:flex;justify-content:space-between;align-items:center;gap:36px}
.mp-process h2{font-size:clamp(28px,3.5vw,43px);max-width:550px;margin:0 0 15px;color:#1c2b22}
.mp-process p:not(.mp-eyebrow){margin:0;max-width:620px;color:#566058;font-size:15px;line-height:1.8}
.mp-process-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;flex:0 0 225px}
.mp-primary-button{display:inline-flex;justify-content:center;align-items:center;padding:15px 20px;background:#22382f;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:750;min-height:50px}
.mp-primary-button:hover{background:#355345}
.mp-phone{text-align:center;font-size:14px;font-weight:700}
.mp-detail-back{background:#f4f2eb;color:#5a645e;font:500 13px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;border-bottom:1px solid #e3e0d6}
.mp-detail-back-inner{width:min(1180px,calc(100% - 48px));margin:auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:15px 0}
.mp-detail-back a{text-decoration:none!important;font-weight:700;color:#223a2e!important}
.mp-detail-back a:hover{text-decoration:underline!important}
.mp-detail-back [aria-current]{font-weight:500}
.mp-related{background:#f7f6f1;color:#26372e;padding:70px 0;font:400 15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.mp-related-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.mp-related h2{font-size:clamp(27px,3.5vw,40px);margin:0}
.mp-related-heading>a{text-decoration:none;font-weight:750;font-size:14px;border-bottom:1px solid #ac8c45}
.mp-related-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.mp-related-card{display:flex;align-items:center;gap:24px;text-decoration:none!important;background:#fff;border:1px solid #e7e5db;min-width:0}
.mp-related-card img{width:42%;aspect-ratio:1.2;object-fit:cover}
.mp-related-card span{display:grid;gap:6px;padding:10px 16px 10px 0;min-width:0}
.mp-related-card small{font-size:11px;color:#85714c}
.mp-related-card strong{font-size:19px;line-height:1.3}
.mp-related-card em{font-size:12px;color:#2e6247;font-weight:750;font-style:normal}
@media(max-width:900px){
 .mp-hero{padding-bottom:65px}
 .mp-breadcrumb{margin-bottom:45px}
 .mp-grid{gap:20px}
 .mp-card-content{padding:24px}
 .mp-process .mp-container{align-items:flex-start}
 .mp-hero-index{bottom:35px}
}
@media(max-width:680px){
 .mp-container,.mp-detail-back-inner{width:min(100% - 32px,1180px)}
 .mp-hero{padding:20px 0 65px}
 .mp-hero:after{right:-270px;top:40px}
 .mp-breadcrumb{margin-bottom:50px}
 .mp-hero h1{font-size:clamp(46px,12vw,65px)}
 .mp-hero-description{font-size:16px;max-width:42ch}
 .mp-hero-index{position:static;margin-top:38px}
 .mp-work{padding:56px 0 70px}
 .mp-grid{grid-template-columns:1fr}
 .mp-filters{gap:8px}
 .mp-filter{padding:11px 14px}
 .mp-card-content>p:not(.mp-card-location){min-height:0}
 .mp-process{padding:48px 0}
 .mp-process .mp-container{flex-direction:column;align-items:stretch;gap:24px}
 .mp-process-actions{flex-basis:auto}
 .mp-related{padding:50px 0}
 .mp-related-heading{align-items:flex-start;flex-direction:column}
 .mp-related-cards{grid-template-columns:1fr}
}
@media(max-width:360px){
 .mp-container,.mp-detail-back-inner{width:calc(100% - 28px)}
 .mp-filter{font-size:12px;padding:9px 12px}
 .mp-before-after figcaption{font-size:10px;left:6px;bottom:6px}
 .mp-card-content{padding:20px}
 .mp-related-card{gap:14px}
 .mp-related-card strong{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .msp-projects *, .mp-related *{transition:none!important}
}
