/* =========================================================
   SPP-V4.0 FINAL — Home Stories + Mobile Carousel + Portfolio Intro
========================================================= */
.spp-v40-home-stories .section-head{margin-bottom:clamp(38px,5vw,72px)}
.spp-v40-featured-story{position:relative;display:block;margin:0 0 clamp(70px,8vw,118px);border:1px solid rgba(255,255,255,.09);background:#0b0b0b;overflow:hidden}
.spp-v40-featured-media{display:block;position:relative;background:#050505}
.spp-v40-featured-img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center center;background:#050505}
.spp-v40-featured-copy{padding:clamp(20px,2.2vw,34px) clamp(20px,2.4vw,40px) clamp(24px,2.4vw,40px);background:linear-gradient(180deg,rgba(5,5,5,.86),#080808)}
.spp-v40-featured-copy .meta,.spp-v40-card-copy .meta{color:var(--gold,#c8a96a);font-family:var(--font-sans,Arial,sans-serif);font-size:10px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:10px}
.spp-v40-featured-copy h3{font-family:var(--font-serif,Georgia,serif);font-size:clamp(28px,3vw,50px);line-height:1.04;margin:0 0 10px;color:#f5f5f5;letter-spacing:-.025em}
.spp-v40-featured-copy h3 a,.spp-v40-card-copy h3 a{color:inherit;text-decoration:none}
.spp-v40-featured-copy p{max-width:680px;color:rgba(245,245,245,.72);font-size:clamp(14px,1vw,17px);line-height:1.65;margin:0 0 16px}
.spp-v40-card-copy .read-more,.spp-v40-featured-copy .read-more{color:var(--gold,#c8a96a);font-size:10px;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;font-weight:700}
.spp-v40-carousel-wrapper{position:relative;margin-top:0}
.spp-v40-carousel-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;overflow-x:visible;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
.spp-v40-story-card{min-width:0;border:1px solid rgba(255,255,255,.09);background:#0a0a0a;overflow:hidden;scroll-snap-align:start}
.spp-v40-card-media{display:block;background:#050505;aspect-ratio:4/3;overflow:hidden}
.spp-v40-card-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .45s ease,opacity .45s ease}
.spp-v40-story-card:hover .spp-v40-card-img{transform:scale(1.025);opacity:.92}
.spp-v40-card-copy{padding:18px 18px 20px}
.spp-v40-card-copy h3{font-family:var(--font-serif,Georgia,serif);font-size:clamp(20px,1.7vw,30px);line-height:1.07;margin:0 0 10px;color:#f5f5f5;letter-spacing:-.02em}
.spp-v40-card-copy p{color:rgba(245,245,245,.64);font-size:13px;line-height:1.55;margin:0 0 14px}
.spp-v40-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:30;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(5,5,5,.84);color:#f5f5f5;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:28px;line-height:1;box-shadow:0 14px 36px rgba(0,0,0,.42);transition:opacity .25s ease,transform .25s ease,border-color .25s ease,background .25s ease}
.spp-v40-carousel-arrow.left{left:8px}.spp-v40-carousel-arrow.right{right:8px}
.spp-v40-carousel-arrow:hover{transform:translateY(-50%) scale(1.04);border-color:rgba(200,169,106,.55);background:rgba(12,12,12,.96)}
@media (min-width:1025px){.spp-v40-carousel-wrapper.has-four-or-less .spp-v40-carousel-arrow{display:none}.spp-v40-carousel-wrapper.has-many .spp-v40-carousel-track{display:flex;overflow-x:auto;padding-bottom:14px}.spp-v40-carousel-wrapper.has-many .spp-v40-story-card{flex:0 0 calc((100% - 54px)/4)}}
@media (max-width:1024px){.spp-v40-featured-story{margin-bottom:70px}.spp-v40-carousel-track{display:flex;overflow-x:auto;gap:16px;padding:0 4px 12px;scroll-padding-inline:4px}.spp-v40-carousel-track::-webkit-scrollbar{display:none}.spp-v40-story-card{flex:0 0 52vw}.spp-v40-carousel-arrow{width:50px;height:50px;background:rgba(0,0,0,.86);border-color:rgba(255,255,255,.22)}}
@media (max-width:767px){.spp-v40-home-stories .section-head{margin-bottom:34px}.spp-v40-featured-story{margin-bottom:64px}.spp-v40-featured-copy{padding:20px}.spp-v40-card-copy{padding:16px}.spp-v40-story-card{flex:0 0 82vw}.spp-v40-carousel-arrow{width:54px;height:54px;font-size:30px}.spp-v40-carousel-arrow.left{left:2px}.spp-v40-carousel-arrow.right{right:2px}}

/* Generic enhancement for existing Works / Stories mobile carousels */
@media (max-width:900px){
  .works-showcase-home .works-grid-static,.spp-works-home-carousel .works-grid-static,.spp-home-stories-mobile-carousel .sabino-stories-compact-grid{display:flex!important;overflow-x:auto!important;gap:16px!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth!important;padding-bottom:14px!important}
  .works-showcase-home .works-grid-static::-webkit-scrollbar,.spp-works-home-carousel .works-grid-static::-webkit-scrollbar,.spp-home-stories-mobile-carousel .sabino-stories-compact-grid::-webkit-scrollbar{display:none!important}
  .works-showcase-home .works-grid-static>* ,.spp-works-home-carousel .works-grid-static>* ,.spp-home-stories-mobile-carousel .sabino-stories-compact-grid>*{flex:0 0 82vw!important;scroll-snap-align:start!important}
  .spp-carousel-nav .spp-carousel-arrow,.spp-carousel-arrow{width:50px!important;height:50px!important;background:rgba(0,0,0,.86)!important;color:#fff!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.22)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:40!important;box-shadow:0 14px 36px rgba(0,0,0,.42)!important}
}

/* About mobile readability */
@media (max-width:767px){
  .about-page .page-content,.page-template-template-about .page-content,.sabino-about-section,.about-content,.spp-about-content{padding-inline:22px!important}
  .about-page p,.page-template-template-about p,.sabino-about-section p,.about-content p,.spp-about-content p{font-size:17px!important;line-height:1.82!important;margin-bottom:22px!important;color:rgba(245,245,245,.82)!important}
}

/* Portfolio intro hard visibility */
.spp-v40-portfolio-intro,.spp-v386-portfolio-intro,.spp-v388-portfolio-intro,.single-portfolio-article-text{display:block!important;visibility:visible!important;opacity:1!important;max-width:900px!important;margin:clamp(72px,8vw,120px) auto clamp(64px,8vw,106px)!important;padding:0 24px!important;color:rgba(244,237,225,.92)!important;font-size:clamp(17px,1.25vw,20px)!important;line-height:1.86!important;position:relative!important;z-index:2!important}
.spp-v40-portfolio-intro p,.spp-v386-portfolio-intro p,.spp-v388-portfolio-intro p,.single-portfolio-article-text p{margin:0 0 1.35em!important;color:inherit!important}
.spp-v40-portfolio-intro .spp-v40-label{font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold,#c8a96a);margin-bottom:26px;font-family:var(--font-sans,Arial,sans-serif)}


/* =========================================================
   SPP-V4.2 — Works carousel parity + editorial portfolio intro
========================================================= */
.spp-v42-home-works .section-head{margin-bottom:clamp(38px,5vw,72px)}
.spp-v42-works-carousel .spp-v40-card-media{aspect-ratio:4/3;background:#050505}
.spp-v42-works-carousel .spp-v40-card-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.spp-v42-works-carousel .spp-v40-story-card{background:#0a0a0a;border:1px solid rgba(255,255,255,.09)}
@media (min-width:1025px){.spp-v42-works-carousel.has-four-or-less .spp-v40-carousel-arrow{display:none}.spp-v42-works-carousel.has-many .spp-v40-carousel-track{display:flex;overflow-x:auto;padding-bottom:14px}.spp-v42-works-carousel.has-many .spp-v40-story-card{flex:0 0 calc((100% - 54px)/4)}}
@media (max-width:1024px){.spp-v42-works-carousel .spp-v40-carousel-track{display:flex!important;overflow-x:auto!important;gap:16px!important;padding:0 4px 12px!important;scroll-padding-inline:4px!important;scroll-snap-type:x mandatory!important}.spp-v42-works-carousel .spp-v40-carousel-track::-webkit-scrollbar{display:none}.spp-v42-works-carousel .spp-v40-story-card{flex:0 0 52vw!important;scroll-snap-align:start!important}.spp-v42-works-carousel .spp-v40-carousel-arrow{display:flex!important;width:50px;height:50px;background:rgba(0,0,0,.86);border-color:rgba(255,255,255,.22)}}
@media (max-width:767px){.spp-v42-works-carousel .spp-v40-story-card{flex:0 0 82vw!important}.spp-v42-works-carousel .spp-v40-carousel-arrow{width:54px;height:54px;font-size:30px}.spp-v42-works-carousel .spp-v40-carousel-arrow.left{left:2px}.spp-v42-works-carousel .spp-v40-carousel-arrow.right{right:2px}}
.spp-v42-taxonomy-editorial-intro{max-width:860px!important;margin:clamp(44px,6vw,86px) auto clamp(42px,6vw,80px)!important;padding:clamp(28px,4vw,52px)!important;border-top:1px solid rgba(200,169,106,.38)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0))!important}
.spp-v42-taxonomy-editorial-intro p:first-of-type{font-family:var(--font-serif,Georgia,serif);font-size:clamp(22px,2.3vw,36px)!important;line-height:1.32!important;color:#f5f5f5!important;letter-spacing:-.02em!important}
.spp-v40-portfolio-intro{border-top:1px solid rgba(200,169,106,.34)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding-top:clamp(28px,4vw,52px)!important;padding-bottom:clamp(24px,4vw,44px)!important}
