/*
Theme Name: Sabino Noir V156 Merge
Theme URI: https://example.com/
Author: OpenAI
Author URI: https://openai.com/
Description: Premium dark editorial WordPress theme for cinematic portrait and storytelling photography with backend Portfolio management, WPBakery Page Builder compatibility, expandable categories, gallery-ready project pages and an optional hero slider managed from the backend.
Version: 156.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: sabino-noir-v135
*/

:root{
  --bg:#050505;
  --bg-soft:#0c0c0c;
  --panel:rgba(10,10,10,.82);
  --panel-solid:#0d0d0d;
  --text:#f4ede1;
  --muted:rgba(244,237,225,.62);
  --line:rgba(244,237,225,.11);
  --gold:#c6973d;
  --gold-2:#d5a645;
  --shadow:0 30px 100px rgba(0,0,0,.45);
  --max:1680px;
  --serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  --sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at top,#0a0a0a 0,#050505 50%,#030303 100%);color:var(--text);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
a{text-decoration:none;color:inherit}
a:hover{opacity:.95}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit}

.site-header,.side-nav,.side-label,.hero-progress,.hero-social{position:fixed;z-index:120}
.site-header{inset:0 0 auto 0;pointer-events:none}
.header-inner{width:min(100%,var(--max));margin:0 auto;padding:34px 36px 0;display:flex;justify-content:space-between;align-items:flex-start}
.branding,.mobile-toggle,.hero-social,.side-nav,.hero-progress{pointer-events:auto}
.branding a{display:inline-block;text-transform:uppercase;letter-spacing:.22em}
.brand-main{display:block;font-family:var(--serif);font-size:2rem;letter-spacing:.12em;font-weight:500}
.brand-sub{display:block;font-size:.72rem;color:var(--gold);letter-spacing:.34em;margin-top:2px}
.mobile-toggle{display:none;border:1px solid var(--line);background:rgba(5,5,5,.5);color:var(--text);padding:.55rem .85rem;text-transform:uppercase;letter-spacing:.18em;font-size:.7rem}

.side-nav{right:34px;top:24px;width:132px;border:1px solid var(--line);background:rgba(6,6,6,.36);backdrop-filter:blur(8px)}
.side-nav ul{list-style:none;margin:0;padding:12px}
.side-nav li+li{margin-top:3px}
.side-nav a{display:block;padding:6px 10px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.22em;font-size:.62rem;color:rgba(244,237,225,.78)}
.side-nav a.active,.side-nav a:hover{border-color:var(--line);background:rgba(255,255,255,.03);color:var(--text)}
.side-label{right:14px;top:24px;writing-mode:vertical-rl;text-orientation:mixed;text-transform:uppercase;letter-spacing:.28em;font-size:.55rem;color:rgba(244,237,225,.32)}
.hero-progress{left:40px;top:178px;width:1px;height:200px;background:rgba(244,237,225,.1)}
.hero-progress span{display:block;width:100%;height:100%;background:linear-gradient(180deg,var(--gold),rgba(198,151,61,.15));transform-origin:top;transform:scaleY(.08)}
.hero-social{right:34px;bottom:32px;display:flex;gap:10px}
.hero-social a{width:42px;height:42px;border:1px solid var(--line);display:grid;place-items:center;background:rgba(8,8,8,.44);font-size:1rem;backdrop-filter:blur(4px)}
.hero-social svg{width:16px;height:16px;stroke:var(--text);fill:none;stroke-width:1.6}

.hero,.page-hero{position:relative;min-height:100svh;overflow:hidden}
.hero-media,.page-hero-media,.hero-slide{position:absolute;inset:0;overflow:hidden}
.hero-media img,.page-hero-media img,.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.25) 28%,rgba(0,0,0,.08) 54%,rgba(0,0,0,.22) 100%),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.08) 24%,rgba(0,0,0,.28) 100%)}
.hero-vignette{position:absolute;inset:0;box-shadow:inset 0 0 180px rgba(0,0,0,.38), inset 0 0 30px rgba(0,0,0,.2)}
.hero-noise{display:none}
.hero-inner,.page-hero-inner{position:relative;z-index:2;width:min(100%,var(--max));margin:0 auto;padding:112px 54px 56px;min-height:100svh;display:flex;align-items:flex-end;justify-content:space-between;gap:5vw}
.hero-copy{max-width:520px;padding-bottom:7vh}
.hero-kicker,.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.34em;font-size:.62rem;color:var(--gold);margin-bottom:22px}
.hero-kicker:before,.eyebrow:before{content:"";width:22px;height:1px;background:var(--gold)}
.hero-copy h1,.page-hero-inner h1{margin:0;font-family:var(--serif);font-size:clamp(4rem,6.4vw,7.3rem);line-height:.86;font-weight:500;letter-spacing:-.03em}
.hero-copy h1 .italic,.page-hero-inner h1 .italic,.footer-cta-title em,.display-italic{font-style:italic;font-weight:400;color:rgba(244,237,225,.72)}
.hero-copy h2{margin:28px 0 0;font-family:var(--serif);font-size:clamp(3.7rem,5.8vw,6.4rem);line-height:.9;font-weight:500;letter-spacing:-.03em}
.hero-taxonomy,.page-sub{margin-top:22px;color:var(--gold);text-transform:uppercase;letter-spacing:.26em;font-size:.74rem}
.hero-actions{display:flex;gap:18px;align-items:center;margin-top:32px}
.btn,.footer-project-btn,button[type="submit"],.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 26px;background:var(--gold);color:#17120a;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:700;border:none;box-shadow:var(--shadow)}
.btn-ghost{display:inline-flex;align-items:center;min-height:54px;padding:0 6px;color:rgba(244,237,225,.9);text-transform:uppercase;letter-spacing:.22em;font-size:.7rem;border-bottom:1px solid rgba(244,237,225,.26)}
.hero-side-note{align-self:flex-end;display:flex;flex-direction:column;align-items:flex-end;gap:12px;padding-bottom:26px}
.hero-side-note span{padding:12px 18px;border:1px solid var(--line);font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;background:rgba(10,10,10,.25)}
.hero-mini-controls{display:flex;gap:0}
.hero-mini-controls span{width:44px;height:44px;display:grid;place-items:center;padding:0}
.scroll-indicator{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);text-transform:uppercase;letter-spacing:.3em;font-size:.56rem;color:rgba(244,237,225,.3)}

.page-shell{position:relative;z-index:2}
.container{width:min(100%,var(--max));margin:0 auto;padding:0 54px}
.section{padding:108px 0;background:transparent}
.section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:42px}
.section-title{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4rem);line-height:.95;font-weight:500;max-width:860px}
.section-copy{max-width:460px;color:var(--muted)}

.feature-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:26px}
.feature-card,.selected-card,.story-card,.collection-card,.contact-panel,.content-wrap,.page-card{background:linear-gradient(180deg,rgba(15,15,15,.82),rgba(9,9,9,.88));border:1px solid var(--line);box-shadow:var(--shadow)}
.feature-card .media,.selected-card .media,.story-card .media,.collection-card .media{aspect-ratio:16/11;background-size:cover;background-position:center}
.feature-card.large .media{aspect-ratio:16/12}
.feature-card .content,.story-card .content,.collection-card .content{padding:24px 24px 28px}
.feature-card h3,.story-card h3,.collection-card h3{margin:0 0 12px;font-family:var(--serif);font-size:2rem;font-weight:500}
.feature-card p,.story-card p,.collection-card p{margin:0;color:var(--muted)}

.portfolio-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.filter-chip{padding:11px 18px;border:1px solid var(--line);background:transparent;color:var(--text);text-transform:uppercase;letter-spacing:.18em;font-size:.66rem}
.filter-chip.active,.filter-chip:hover{background:rgba(255,255,255,.04);border-color:rgba(244,237,225,.24)}
.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.portfolio-card{grid-column:span 4;background:linear-gradient(180deg,rgba(13,13,13,.9),rgba(8,8,8,.92));border:1px solid var(--line);overflow:hidden;transition:transform .35s ease,opacity .25s ease,filter .25s ease}
.portfolio-card.large{grid-column:span 6}
.portfolio-card[data-hidden="true"]{opacity:.18;filter:grayscale(.9);pointer-events:none;transform:scale(.985)}
.portfolio-card .media{aspect-ratio:4/5;background-size:cover;background-position:center;transition:transform .7s ease}
.portfolio-card:hover .media{transform:scale(1.03)}
.portfolio-card .content{padding:22px 22px 24px}
.portfolio-card h3{margin:0 0 8px;font-family:var(--serif);font-size:2rem;font-weight:500}
.portfolio-card p{margin:0;color:var(--muted)}

.selected-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.selected-card{grid-column:span 3;overflow:hidden}
.selected-card.wide{grid-column:span 6}
.selected-card.tall .media{aspect-ratio:4/5}
.selected-card.wide .media{aspect-ratio:16/9}
.selected-card .content{padding:20px 20px 24px}
.selected-meta{text-transform:uppercase;letter-spacing:.24em;font-size:.62rem;color:var(--gold);margin-bottom:10px}
.selected-card h3{margin:0 0 8px;font-family:var(--serif);font-size:1.85rem;font-weight:500}
.selected-card p{margin:0;color:var(--muted)}

.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;align-items:stretch}
.about-panel{padding:38px 34px;background:linear-gradient(180deg,rgba(12,12,12,.88),rgba(8,8,8,.92));border:1px solid var(--line);box-shadow:var(--shadow)}
.about-panel h3{margin:0 0 14px;font-family:var(--serif);font-size:2.4rem;font-weight:500}
.about-panel p{margin:0 0 16px;color:var(--muted)}
.about-quote{display:flex;align-items:flex-end;min-height:100%;padding:34px;background:linear-gradient(180deg,rgba(12,12,12,.52),rgba(8,8,8,.84));border:1px solid var(--line);font-family:var(--serif);font-size:2.8rem;line-height:.92;font-style:italic;color:rgba(244,237,225,.8)}

.story-grid,.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.story-card,.collection-card{overflow:hidden}
.story-card .meta,.collection-meta{padding:20px 24px 0;text-transform:uppercase;letter-spacing:.22em;font-size:.62rem;color:var(--gold)}

.page-hero-inner{align-items:end}
.page-hero-copy{max-width:620px;padding-bottom:8vh}
.page-hero-copy p{max-width:600px;color:rgba(244,237,225,.76);font-size:1.02rem}
.page-content{padding:86px 0 0}
.content-wrap,.page-card,.contact-panel{padding:34px}
.content-wrap h2,.page-card h2{font-family:var(--serif);font-size:2.2rem;font-weight:500}
.content-wrap p,.page-card p,.contact-panel p{color:var(--muted)}
.collection-card .media{aspect-ratio:4/5}
.collection-card.featured{grid-column:span 2}
.collection-card.featured .media{aspect-ratio:16/9}
.collection-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}
.sticky-panel{position:sticky;top:120px}

.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px}
.contact-lead{padding-right:3vw}
.contact-lead h2{margin:0;font-family:var(--serif);font-size:clamp(3rem,5vw,5.4rem);line-height:.9;font-weight:500}
.contact-lead p{margin:18px 0 0;max-width:540px;color:var(--muted)}
.contact-list{display:grid;gap:16px;margin-top:34px}
.contact-list a,.footer-email{font-family:var(--serif);font-size:clamp(1.8rem,2.6vw,3rem);line-height:1;font-style:italic}
.contact-panel small,.footer-subline{display:block;margin-top:10px;text-transform:uppercase;letter-spacing:.24em;font-size:.62rem;color:rgba(244,237,225,.28)}
form p{margin:0 0 16px}
input[type="text"],input[type="email"],textarea{width:100%;background:#0a0a0a;border:1px solid var(--line);padding:16px 18px;color:var(--text)}
textarea{min-height:180px;resize:vertical}

.footer-cta{padding:96px 0 0;background:transparent}
.footer-cta-grid{width:min(100%,var(--max));margin:0 auto;padding:0 54px;display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:start;min-height:330px}
.footer-cta-copy{padding:62px 0 48px}
.footer-cta-title{margin:0;font-family:var(--serif);font-size:clamp(4rem,6vw,6.2rem);line-height:.88;font-weight:500;max-width:720px}
.footer-cta-panel{justify-self:end;max-width:400px;padding-top:82px}
.footer-project-btn{margin-top:32px}
.site-footer{background:#040404;border-top:1px solid rgba(244,237,225,.06);margin-top:0}
.site-footer-inner{width:min(100%,var(--max));margin:0 auto;padding:48px 54px 42px}
.site-footer-top{display:grid;grid-template-columns:1.05fr .95fr auto;gap:26px;align-items:start}
.footer-brand{font-family:var(--serif);font-size:2rem;letter-spacing:.08em;text-transform:uppercase}
.footer-brand span:last-child{color:var(--gold)}
.footer-links{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;padding-top:10px}
.footer-links a{font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;color:rgba(244,237,225,.5)}
.footer-social{display:flex;gap:12px;justify-content:flex-end}
.footer-social a{width:42px;height:42px;border:1px solid var(--line);display:grid;place-items:center}
.footer-social svg{width:15px;height:15px;stroke:var(--text);fill:none;stroke-width:1.6}
.footer-divider{height:1px;background:var(--line);margin:38px 0 18px}
.site-footer-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;color:rgba(244,237,225,.22);font-size:.78rem}

.fade-up{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s ease}
.fade-up.is-visible{opacity:1;transform:none}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (max-width:1200px){
  .portfolio-card{grid-column:span 6}
  .portfolio-card.large{grid-column:span 6}
  .selected-card{grid-column:span 6}
  .selected-card.wide{grid-column:span 6}
  .story-grid,.collection-grid,.feature-grid,.about-grid,.collection-layout,.contact-grid,.footer-cta-grid,.site-footer-top{grid-template-columns:1fr}
  .footer-cta-panel{justify-self:start;padding-top:0}
  .footer-links{justify-content:flex-start}
  .footer-social{justify-content:flex-start}
}
@media (max-width:820px){
  .mobile-toggle{display:inline-flex}
  .side-nav{right:18px;top:74px;transform:translateY(-14px);opacity:0;pointer-events:none;transition:.25s ease}
  .side-nav.open{transform:none;opacity:1;pointer-events:auto}
  .side-label,.hero-progress{display:none}
  .hero-social{right:18px;bottom:18px}
  .header-inner,.container,.site-footer-inner,.footer-cta-grid{padding-left:22px;padding-right:22px}
  .hero-inner,.page-hero-inner{padding:112px 22px 44px}
  .hero-copy h1,.page-hero-inner h1{font-size:3.6rem}
  .hero-copy h2{font-size:3.3rem}
  .hero-side-note{display:none}
  .section{padding:74px 0}
  .portfolio-grid,.selected-grid,.story-grid,.collection-grid{grid-template-columns:1fr}
  .portfolio-card,.portfolio-card.large,.selected-card,.selected-card.wide,.collection-card.featured{grid-column:auto}
  .contact-lead h2,.footer-cta-title{font-size:3.2rem}
  .site-footer-bottom{flex-direction:column;align-items:flex-start}
}


.dynamic-grid .portfolio-card,.dynamic-grid-two .selected-card{grid-column:span 6}
.dynamic-grid .portfolio-card.large{grid-column:span 6}
.dynamic-card .media-link{display:block}
.collection-grid.dynamic-grid{grid-template-columns:repeat(12,minmax(0,1fr));display:grid;gap:28px}
.archive-portfolio .page-content,.single-portfolio-page .page-content{padding-top:78px}
.narrow-content{max-width:900px}
.post-content{font-size:1.05rem;line-height:1.9;color:var(--muted)}
.post-content p{margin:0 0 1.2rem}
.post-content .wp-block-gallery,.post-content .gallery{margin:2rem 0}
.post-content img{height:auto}
.post-content a,.selected-card .content a,.portfolio-card .content a,.story-card .content a{color:var(--text)}
.single-portfolio-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:28px;margin-top:28px;border-top:1px solid var(--line);color:var(--muted)}
.pagination-wrap{padding-top:28px}
.pagination-wrap .nav-links{display:flex;gap:14px;flex-wrap:wrap}
.pagination-wrap .page-numbers{border:1px solid var(--line);padding:12px 16px;color:var(--text);text-decoration:none}
.pagination-wrap .page-numbers.current{background:var(--accent);border-color:var(--accent);color:#111}
.is-portfolio .page-hero-copy h1{max-width:10ch}
.portfolio-toolbar a{text-decoration:none}


.hero-slider{position:absolute;inset:0;overflow:hidden}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.03);transition:opacity 1s ease,transform 6s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-arrow{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);background:rgba(5,5,5,.34);color:var(--text);padding:0;cursor:pointer}
.hero-arrow svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6}
.hero-prev svg{transform:rotate(180deg)}
.hero-mini-controls{display:flex;gap:8px;align-items:center}
.hero-dots{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
.hero-dot{width:28px;height:2px;border:0;background:rgba(244,237,225,.24);padding:0;cursor:pointer}
.hero-dot.is-active{background:var(--gold)}


/* V8 additions */
.hero-side-note.no-label{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.hero-side-note.no-label span{display:none}
.portfolio-card[data-hidden="true"]{display:none}
.masonry-grid{column-count:3;column-gap:24px}
.masonry-grid .portfolio-card{display:inline-block;width:100%;margin:0 0 24px;break-inside:avoid;grid-column:auto!important}
.masonry-grid .portfolio-card .media{aspect-ratio:auto;min-height:360px}
.masonry-grid .portfolio-card:nth-child(3n) .media{min-height:500px}
.masonry-grid .portfolio-card:nth-child(4n) .media{min-height:420px}
.split-head{grid-template-columns:1.2fr .8fr}
.about-split{display:grid;grid-template-columns:.95fr 1.05fr;gap:26px;align-items:stretch}
.about-image-panel,.about-panel,.wp-block-group.is-style-sabino-panel{background:linear-gradient(180deg,rgba(12,12,12,.88),rgba(8,8,8,.92));border:1px solid var(--line);box-shadow:var(--shadow)}
.about-image-panel .media{height:100%;min-height:640px;background-size:cover;background-position:center}
.about-panel{padding:40px 34px}
.about-panel h3{margin:0 0 18px;font-family:var(--serif);font-size:clamp(3rem,4.6vw,5.6rem);line-height:.92;font-weight:500}
.about-panel p{max-width:880px;font-size:1.02rem}
.about-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.about-mini-card{border:1px solid var(--line);padding:24px 22px;background:rgba(255,255,255,.015)}
.about-mini-card h4{margin:0 0 10px;font-family:var(--serif);font-size:2rem;font-weight:500}
.about-mini-card p{margin:0;color:var(--muted)}
.sabino-home-content .wp-block-group,.sabino-home-content .wp-block-columns,.sabino-home-content .wp-block-cover{margin-bottom:0}
.sabino-home-content .wp-block-shortcode + .wp-block-shortcode{margin-top:0}
.sabino-home-content .wp-block-shortcode{display:block}
.sabino-home-content .alignwide,.sabino-home-content .alignfull{margin-left:auto;margin-right:auto}
@media (max-width:1200px){.masonry-grid{column-count:2}.about-split,.split-head,.about-mini-grid{grid-template-columns:1fr}}
@media (max-width:820px){.masonry-grid{column-count:1}.about-image-panel .media{min-height:420px}}


/* V9 mobile hero refinement */
@media (max-width:820px){
  .branding a{max-width:58vw}
  .brand-main{font-size:1.22rem;letter-spacing:.08em;line-height:1}
  .brand-sub{font-size:.54rem;letter-spacing:.22em;margin-top:4px}
  .hero-copy{max-width:260px;padding-bottom:10vh}
  .hero-kicker,.eyebrow{gap:8px;margin-bottom:14px;font-size:.5rem;letter-spacing:.24em}
  .hero-kicker:before,.eyebrow:before{width:14px}
  .hero-copy h1,.page-hero-inner h1{font-size:clamp(2.35rem,11vw,3.15rem);line-height:.9;max-width:7ch}
  .hero-copy h2{font-size:clamp(2.15rem,10vw,2.95rem);line-height:.9;margin-top:16px;max-width:6ch}
  .hero-taxonomy,.page-sub{font-size:.56rem;letter-spacing:.18em;margin-top:14px}
  .hero-actions{gap:10px;flex-wrap:wrap;margin-top:20px;max-width:270px}
  .btn,.footer-project-btn,button[type="submit"],.wp-block-button__link{min-height:46px;padding:0 18px;font-size:.58rem;letter-spacing:.18em}
  .btn-ghost{min-height:46px;font-size:.58rem;letter-spacing:.18em}
  .scroll-indicator{bottom:14px;font-size:.48rem;letter-spacing:.24em}
}
@media (max-width:520px){
  .header-inner{padding-top:24px}
  .branding a{max-width:62vw}
  .brand-main{font-size:1.02rem;letter-spacing:.07em}
  .brand-sub{font-size:.5rem;letter-spacing:.18em}
  .hero-inner,.page-hero-inner{padding-top:96px;padding-bottom:38px}
  .hero-copy{max-width:220px;padding-bottom:12vh}
  .hero-copy h1,.page-hero-inner h1{font-size:clamp(2rem,13vw,2.65rem)}
  .hero-copy h2{font-size:clamp(1.9rem,12vw,2.45rem)}
  .hero-taxonomy,.page-sub{max-width:220px;line-height:1.7}
}


/* V11 WPBakery compatibility */
.sabino-vc-content .wpb_row,.sabino-vc-content .vc_row{margin-bottom:0}
.sabino-vc-content .vc_column_container>.vc_column-inner{padding-left:0;padding-right:0}
.sabino-vc-content .wpb_content_element{margin-bottom:0}
.sabino-vc-content .vc_empty_space{margin-bottom:0!important}
.sabino-home-builder-shell{padding-top:0}
.sabino-vc-content > .vc_row:first-child{margin-top:0}
.sabino-vc-content .hero{min-height:100svh}
@media (max-width:820px){.sabino-vc-content .hero-copy h1{font-size:3.3rem}.sabino-vc-content .hero-copy h2{font-size:3rem}}


/* V17 Instagram section */
.sabino-instagram-section .instagram-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sabino-instagram-section .instagram-card{display:block;text-decoration:none;color:var(--sn-light);border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.02)}
.sabino-instagram-section .instagram-card-media{display:block;aspect-ratio:1/1;background-size:cover;background-position:center;opacity:.86}
.sabino-instagram-section .instagram-card-caption{display:block;padding:14px 16px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--sn-accent)}
.sabino-instagram-section .instagram-cta{margin-top:26px}
.sabino-instagram-section .instagram-plugin-wrap{margin-top:18px}
@media (max-width: 900px){.sabino-instagram-section .instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 640px){.sabino-instagram-section .instagram-grid{grid-template-columns:1fr;}}

/* V19 portfolio visibility improvements */
.portfolio-grid.dynamic-grid.masonry-grid{column-count:2;column-gap:28px}
.portfolio-card{position:relative;background:rgba(255,255,255,.02);border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow)}
.portfolio-card .media{display:block;min-height:520px;background-size:cover;background-position:center center;position:relative}
.portfolio-card .media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.06) 0%,rgba(5,5,5,.1) 35%,rgba(5,5,5,.76) 100%)}
.portfolio-card .content{position:absolute;left:0;right:0;bottom:0;padding:24px 22px 22px;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.32) 20%,rgba(0,0,0,.72) 100%)}
.portfolio-card h3 a,.portfolio-card p,.portfolio-card .selected-meta{color:var(--text)}
.portfolio-card p{max-width:44ch;color:rgba(244,237,225,.82)}
.portfolio-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}
.filter-chip{border:1px solid var(--line);background:transparent;color:var(--text);padding:11px 16px;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}
.filter-chip.active,.filter-chip:hover{background:var(--accent);border-color:var(--accent);color:#111}
.portfolio-card[data-hidden="true"]{display:none !important}
.sabino-portfolio-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 34px}
.sabino-portfolio-gallery-item{margin:0;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.sabino-portfolio-gallery-item img{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:1200px){.portfolio-grid.dynamic-grid.masonry-grid{column-count:2}.portfolio-card .media{min-height:440px}}
@media (max-width:820px){.portfolio-grid.dynamic-grid.masonry-grid{column-count:1}.portfolio-card .media{min-height:380px}.portfolio-card .content{padding:18px 18px 16px}.sabino-portfolio-gallery-grid{grid-template-columns:1fr}}


/* V20 fixes */
.hero-slide{transform:none!important;transition:opacity .35s ease!important}
.hero-slide.is-active{transform:none!important}
.hero.has-slider .hero-inner{position:relative;z-index:3}
.hero-media,.hero-slide{filter:none!important}

.portfolio-grid.dynamic-grid.masonry-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
  column-count:initial!important;
  column-gap:0!important;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card{
  display:flex!important;
  flex-direction:column;
  width:100%;
  margin:0;
  break-inside:auto;
  min-width:0;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .media{
  aspect-ratio: 4 / 3;
  min-height:0!important;
  height:auto;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .content{
  position:relative;
  inset:auto;
  padding:22px 22px 24px;
  background:var(--panel-solid);
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card h3{
  margin:10px 0 12px;
  font-size:clamp(2rem,2vw,2.6rem);
  line-height:.95;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card p{
  max-width:none;
  margin:0;
  font-size:1rem;
  line-height:1.7;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .selected-meta{
  font-size:.68rem;
  letter-spacing:.22em;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card[data-hidden="true"]{display:none!important}

.section-head .section-title{max-width:12ch}

@media (max-width:1200px){
  .portfolio-grid.dynamic-grid.masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .portfolio-grid.dynamic-grid.masonry-grid{grid-template-columns:1fr}
  .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .content{padding:18px 18px 20px}
}

/* V21 hero, portfolio and contact refinements */
.hero .hero-media,
.hero .hero-slide{background-position:72% center !important;}
.hero-overlay{background:
linear-gradient(90deg, rgba(2,2,2,.94) 0%, rgba(2,2,2,.90) 24%, rgba(2,2,2,.62) 46%, rgba(2,2,2,.42) 68%, rgba(2,2,2,.52) 100%),
linear-gradient(180deg, rgba(0,0,0,.40) 0%, rgba(0,0,0,.15) 34%, rgba(0,0,0,.58) 100%) !important;}
.hero-copy{position:relative;z-index:3;max-width:460px}
.hero-copy h1,.hero-copy h2{text-shadow:none !important}
.hero.has-slider .hero-inner{justify-content:flex-start}

.portfolio-grid.dynamic-grid.masonry-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:32px !important;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card{
  display:block !important;
  position:relative;
  min-height:0;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .media{
  aspect-ratio:16 / 10 !important;
  min-height:360px !important;
  background-position:center center !important;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .content{
  position:absolute !important;
  left:0; right:0; bottom:0;
  padding:22px 22px 22px !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.20) 18%, rgba(0,0,0,.82) 100%) !important;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card h3{
  font-size:clamp(1.7rem,2.4vw,2.4rem) !important;
  line-height:1.02 !important;
  max-width:12ch;
}
.portfolio-grid.dynamic-grid.masonry-grid .portfolio-card p{
  font-size:.98rem !important;
  line-height:1.6 !important;
  max-width:34ch;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
@media (max-width:1024px){
  .portfolio-grid.dynamic-grid.masonry-grid{grid-template-columns:1fr !important;}
  .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .media{min-height:320px !important;}
}

.contact-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:34px;align-items:stretch}
.contact-form-panel,.contact-info-card{border:1px solid var(--line);background:var(--panel-solid)}
.contact-form-panel{padding:34px}
.contact-form-title{margin:0 0 12px;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.4rem);line-height:.95;font-weight:500}
.contact-form-copy{max-width:52ch;color:var(--muted);margin:0 0 24px}
.sabino-contact-form{margin-top:18px}
.sabino-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sabino-form-grid .field{display:flex;flex-direction:column;gap:8px}
.sabino-form-grid .field-full{grid-column:1 / -1}
.sabino-contact-form label{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.sabino-contact-form input,.sabino-contact-form textarea{width:100%;background:#0c0c0c;border:1px solid var(--line);color:var(--text);padding:14px 16px;font:inherit}
.sabino-contact-form textarea{min-height:180px;resize:vertical}
.sabino-form-actions{margin-top:18px}
.sabino-form-notice{padding:14px 16px;border:1px solid var(--line);margin-bottom:16px}
.sabino-form-notice.is-success{border-color:rgba(198,151,61,.55);background:rgba(198,151,61,.08)}
.sabino-form-notice.is-error{border-color:rgba(170,80,80,.55);background:rgba(170,80,80,.10)}
.contact-info-card{position:relative;min-height:100%;background-size:cover;background-position:center center;overflow:hidden}
.contact-info-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,4,4,.20) 0%, rgba(4,4,4,.72) 50%, rgba(4,4,4,.92) 100%)}
.contact-info-copy{position:relative;z-index:1;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;min-height:100%}
.contact-info-copy h3{margin:14px 0 28px;font-family:var(--serif);font-size:clamp(2rem,3vw,3.3rem);line-height:.95;font-weight:500;max-width:10ch}
.contact-mini-list{list-style:none;padding:0;margin:0;display:grid;gap:18px}
.contact-mini-list li{display:grid;gap:6px;padding-top:18px;border-top:1px solid rgba(244,237,225,.12)}
.contact-mini-list span{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.contact-mini-list a,.contact-mini-list strong{font-size:1.05rem;color:var(--text);font-weight:400}
@media (max-width:900px){
  .contact-split{grid-template-columns:1fr}
  .contact-form-panel,.contact-info-copy{padding:22px}
  .sabino-form-grid{grid-template-columns:1fr}
}

@media (max-width:820px){
  .hero .hero-media,.hero .hero-slide{background-position:78% center !important;}
  .hero-copy{max-width:180px !important}
  .hero-copy h1,.page-hero-inner h1{font-size:clamp(1.45rem,8.6vw,2rem) !important;max-width:6ch !important}
  .hero-copy h2{font-size:clamp(1.35rem,8vw,1.85rem) !important;max-width:6ch !important}
  .hero-taxonomy,.page-sub{font-size:.5rem !important;letter-spacing:.14em !important}
  .hero-actions{margin-top:14px !important}
  .btn,.btn-ghost{min-height:42px !important;padding:0 16px !important;font-size:.56rem !important}
}

/* V22 hero + WPBakery + portfolio rect fixes */
.hero-media,.page-hero-media,.hero-slide{transform:none !important;}
.hero .hero-media,.hero .hero-slide{background-position:center center !important;}
.hero-slide{transition:opacity .45s ease !important;}
.hero-overlay{
  background:
    linear-gradient(90deg, rgba(3,3,3,.82) 0%, rgba(3,3,3,.70) 18%, rgba(3,3,3,.36) 48%, rgba(3,3,3,.16) 72%, rgba(3,3,3,.24) 100%),
    linear-gradient(180deg, rgba(0,0,0,.20) 0%, rgba(0,0,0,.06) 38%, rgba(0,0,0,.30) 100%) !important;
}
.hero-vignette{box-shadow:inset 0 0 160px rgba(0,0,0,.40), inset 0 0 28px rgba(0,0,0,.24) !important;}
.hero-copy{max-width:560px !important;}
.hero-copy h1{font-size:clamp(4.5rem,7vw,7.8rem) !important;line-height:.84 !important;}
.hero-copy h2{font-size:clamp(3.9rem,6vw,6.6rem) !important;line-height:.88 !important;margin-top:22px !important;}
.hero-copy h1 .italic{font-style:italic;color:rgba(244,237,225,.58) !important;}
.hero-copy h2{max-width:8ch;}

.portfolio-grid.dynamic-grid.portfolio-rect-grid,
.collection-grid.dynamic-grid.portfolio-rect-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:32px !important;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card,
.collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card{
  display:block !important;
  position:relative;
  min-width:0;
  min-height:0;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .media,
.collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .media{
  aspect-ratio:16 / 10 !important;
  min-height:0 !important;
  background-position:center center !important;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content,
.collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content{
  position:absolute !important;
  left:0;right:0;bottom:0;
  padding:24px 24px 22px !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.22) 18%, rgba(0,0,0,.84) 100%) !important;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3,
.collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3{
  margin:8px 0 10px;
  font-size:clamp(2rem,2.3vw,2.9rem) !important;
  line-height:.96 !important;
  max-width:12ch;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card p,
.collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card p{
  max-width:38ch;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:1rem !important;
  line-height:1.55 !important;
}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card[data-hidden="true"]{display:none !important;}

.contact-single-form{grid-template-columns:minmax(0,1fr) !important;}
.contact-single-form .contact-form-panel{max-width:960px;}
.wpb-page-content-only{padding-top:110px;}

@media (max-width:1024px){
  .portfolio-grid.dynamic-grid.portfolio-rect-grid,
  .collection-grid.dynamic-grid.portfolio-rect-grid{grid-template-columns:1fr !important;}
  .hero-copy h1{font-size:clamp(3.7rem,9vw,5.2rem) !important;}
  .hero-copy h2{font-size:clamp(3rem,8vw,4.4rem) !important;}
}
@media (max-width:820px){
  .hero-copy{max-width:145px !important;padding-bottom:11vh !important;}
  .hero-copy h1{font-size:clamp(1.02rem,6vw,1.38rem) !important;max-width:6ch !important;}
  .hero-copy h2{font-size:clamp(.95rem,5.7vw,1.28rem) !important;max-width:6ch !important;margin-top:10px !important;}
  .hero-taxonomy{font-size:.46rem !important;letter-spacing:.12em !important;max-width:12ch;}
  .hero-kicker{font-size:.42rem !important;letter-spacing:.18em !important;}
  .portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content,
  .collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content{padding:18px 18px 16px !important;}
  .portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3,
  .collection-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3{font-size:clamp(1.55rem,8vw,2rem) !important;}
}

/* V23 enhancements: premium about, marquee, client logos, custom cursor */
html.has-sabino-cursor, html.has-sabino-cursor body, html.has-sabino-cursor a, html.has-sabino-cursor button { cursor:none !important; }
.sabino-cursor{position:fixed;left:0;top:0;width:66px;height:66px;margin-left:-33px;margin-top:-33px;border:2px solid rgba(208,162,62,.75);border-radius:50%;pointer-events:none;z-index:99999;opacity:0;transform:translate(-200px,-200px);transition:opacity .2s ease, width .2s ease, height .2s ease, margin .2s ease, border-color .2s ease;mix-blend-mode:normal;}
.has-sabino-cursor .sabino-cursor{opacity:1;}
.sabino-cursor span{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#d0a23e;display:block;}
.sabino-cursor.is-hover{width:82px;height:82px;margin-left:-41px;margin-top:-41px;border-color:#e1b048;}
@media (pointer:coarse){.sabino-cursor{display:none !important;}}

.sabino-marquee-wrap{padding:0;border-top:1px solid rgba(208,162,62,.18);border-bottom:1px solid rgba(208,162,62,.18);background:linear-gradient(90deg,#d0a23e 0%, #dcb451 48%, #d0a23e 100%);overflow:hidden;}
.sabino-marquee-track{display:flex;align-items:center;gap:0;min-width:max-content;animation:sabino-marquee 30s linear infinite;padding:18px 0;}
.sabino-marquee-item{display:inline-flex;align-items:center;color:#16120b;font-family:Inter,Arial,sans-serif;font-size:.86rem;letter-spacing:.24em;text-transform:uppercase;font-weight:700;white-space:nowrap;padding:0 44px;position:relative;}
.sabino-marquee-item:after{content:'✦';position:absolute;right:-6px;top:50%;transform:translateY(-50%);font-size:.78rem;opacity:.45;}
@keyframes sabino-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.sabino-about-premium .container{max-width:1500px;}
.sabino-about-premium{padding-top:64px;}
.about-premium-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:0;border:1px solid rgba(255,255,255,.08);background:rgba(6,6,6,.68);}
.about-image-frame{position:relative;min-height:760px;background-size:cover;background-position:center center;}
.about-image-frame:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.12));}
.about-vertical-label{position:absolute;left:0;top:0;bottom:0;width:34px;background:#d0a23e;color:#17130c;writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;font-weight:700;z-index:2;}
.about-image-badge{position:absolute;right:28px;bottom:28px;background:rgba(7,7,7,.88);border:1px solid rgba(208,162,62,.5);padding:16px 22px;font-size:.75rem;letter-spacing:.24em;text-transform:uppercase;z-index:2;}
.about-premium-copy{padding:68px 64px 74px;display:flex;flex-direction:column;justify-content:center;background:rgba(4,4,4,.62);}
.about-premium-title{font-size:clamp(3rem,4.8vw,5.5rem);line-height:.95;letter-spacing:-.03em;margin:24px 0 28px;max-width:10ch;}
.about-premium-title .display-italic, .section-title-italic{font-style:italic;color:rgba(233,225,214,.62);font-weight:400;}
.about-premium-text{font-size:1.15rem;line-height:1.8;color:var(--muted);max-width:34ch;}
.about-premium-list{list-style:none;margin:28px 0 36px;padding:0;display:grid;gap:14px;}
.about-premium-list li{position:relative;padding-left:26px;color:#bdb8ae;}
.about-premium-list li:before{content:'—';position:absolute;left:0;color:var(--accent);}
.about-premium-btn{display:inline-flex;align-items:center;justify-content:center;min-height:72px;border:1px solid rgba(208,162,62,.48);padding:0 28px;font-size:.84rem;letter-spacing:.22em;text-transform:uppercase;align-self:flex-start;width:min(100%,620px);}

.sabino-clients-section{padding-top:70px;}
.section-head.centered{text-align:center;justify-content:center;display:block;}
.section-head.centered .section-title{max-width:none;}
.clients-logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:center;margin-top:36px;}
.client-logo-item{border:1px solid rgba(255,255,255,.08);min-height:68px;display:flex;align-items:center;justify-content:center;padding:18px 24px;background:rgba(9,9,9,.45);}
.client-logo-item img{max-width:150px;max-height:32px;width:auto;height:auto;filter:grayscale(1) brightness(1.95) contrast(.55);opacity:.78;}
.client-logo-item span{font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:#c7c2b7;}

/* More WPBakery content breathing room */
.sabino-vc-content > .vc_row{margin-bottom:0 !important;}
.sabino-vc-content .vc_row[data-vc-full-width]{overflow:visible;}

@media (max-width:1200px){
  .about-premium-grid{grid-template-columns:1fr;}
  .about-image-frame{min-height:560px;}
  .clients-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:820px){
  .sabino-marquee-track{padding:14px 0;animation-duration:22s;}
  .sabino-marquee-item{font-size:.67rem;letter-spacing:.18em;padding:0 28px;}
  .about-premium-copy{padding:42px 28px 48px;}
  .about-image-frame{min-height:420px;}
  .about-premium-title{font-size:clamp(2.2rem,9vw,3.4rem);max-width:11ch;}
  .about-premium-text{font-size:1rem;}
  .about-vertical-label{width:24px;font-size:.58rem;letter-spacing:.22em;}
  .clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
}


/* V24 overrides */
.portfolio-grid.dynamic-grid.portfolio-rect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:start}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card{display:flex;flex-direction:column;grid-column:auto!important;min-width:0;background:transparent;border:0;box-shadow:none;transition:opacity .28s ease, transform .28s ease}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .media{aspect-ratio:4/3;min-height:0;border:1px solid var(--line);background-size:cover;background-position:center center}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(3n+2) .media{aspect-ratio:4/5}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(5n) .media{aspect-ratio:16/10}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content{padding:16px 4px 0;background:transparent;border:0}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3{font-size:2.25rem;line-height:.95;margin:.2rem 0 .45rem}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card p{font-size:.98rem;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card.is-filtered-out{opacity:0;transform:translateY(10px) scale(.98);pointer-events:none}
.client-logo-item{position:relative}
.client-logo-item img{filter:grayscale(1) brightness(1.85) opacity(.78)}
.client-logo-item:hover img{filter:grayscale(1) brightness(2.2) opacity(1)}
.has-sabino-cursor, .has-sabino-cursor a, .has-sabino-cursor button, .has-sabino-cursor .portfolio-card .media-link, .has-sabino-cursor .client-logo-item{cursor:none!important}
.sabino-cursor{position:fixed;left:0;top:0;width:48px;height:48px;border:2px solid rgba(198,151,61,.8);border-radius:50%;pointer-events:none;transform:translate(-100px,-100px);z-index:9999;transition:width .18s ease,height .18s ease,border-color .18s ease,background-color .18s ease,opacity .18s ease;margin:-24px 0 0 -24px}
.sabino-cursor:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;background:var(--gold-2);border-radius:50%;transform:translate(-50%,-50%)}
.sabino-cursor.is-hover{width:62px;height:62px;margin:-31px 0 0 -31px;border-color:rgba(244,237,225,.88)}
.sabino-cursor.is-media{background:rgba(198,151,61,.08)}
@media (max-width:1200px){.portfolio-grid.dynamic-grid.portfolio-rect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.portfolio-grid.dynamic-grid.portfolio-rect-grid{grid-template-columns:1fr}.hero-copy h1,.page-hero-inner h1{font-size:2.52rem}.hero-copy h2{font-size:2.31rem}.hero-copy{max-width:78vw}.sabino-cursor{display:none!important}}

/* V25 final refinements */
.hero,.page-hero{background:#070707;}
.hero-media img,.page-hero-media img,.hero-slide img{object-fit:cover !important; object-position:center center !important; transform:none !important; filter:brightness(1.08) contrast(1.02) saturate(1.02);}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,.14) 34%,rgba(0,0,0,.08) 58%,rgba(0,0,0,.24) 100%),linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.06) 32%,rgba(0,0,0,.18) 100%) !important;}
.hero-vignette{box-shadow:inset 0 0 120px rgba(0,0,0,.22), inset 0 0 18px rgba(0,0,0,.12) !important;}
.hero-copy{max-width:600px !important;}
.hero-copy h1{font-size:clamp(4.2rem,6.8vw,7.2rem) !important;line-height:.84 !important;max-width:none !important;}
.hero-copy h2{font-size:clamp(3.7rem,6vw,6.2rem) !important;line-height:.88 !important;max-width:none !important;}
.hero-copy h1 .italic{font-style:italic;color:rgba(244,237,225,.56) !important;}
.hero-taxonomy{color:rgba(208,162,62,.95)!important;}
.hero-slide{transition:opacity .65s ease !important;}
.hero.has-slider .hero-inner{justify-content:space-between !important;}

.portfolio-grid.dynamic-grid.portfolio-rect-grid{display:block !important;column-count:4;column-gap:28px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card{position:relative;display:block !important;break-inside:avoid;margin:0 0 28px;background:#0c0c0c;border:1px solid rgba(255,255,255,.08);overflow:hidden;transform:translateY(0);transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .3s ease, box-shadow .45s ease,border-color .45s ease;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .media{display:block;aspect-ratio:auto !important;height:360px;border:0 !important;transition:transform .9s cubic-bezier(.22,.61,.36,1),filter .45s ease;background-size:cover;background-position:center center;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(6n+2) .media{height:560px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(6n+3) .media{height:280px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(6n+4) .media{height:430px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(6n+5) .media{height:320px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(6n) .media{height:500px;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .content{position:absolute;left:0;right:0;bottom:0;padding:20px 18px 18px !important;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.32) 24%,rgba(0,0,0,.86) 100%) !important;border:0 !important;transform:translateY(8px);transition:transform .45s ease,opacity .35s ease;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .selected-meta{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;opacity:.96;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3{font-size:1.5rem !important;line-height:1.02 !important;margin:0 !important;max-width:14ch;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card h3 a{color:var(--text);}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card p{max-height:0;opacity:0;overflow:hidden;font-size:.92rem !important;line-height:1.55 !important;margin-top:10px;transition:max-height .45s ease,opacity .35s ease;display:block !important;-webkit-line-clamp:unset !important;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:hover{transform:translateY(-6px);border-color:rgba(208,162,62,.42);box-shadow:0 24px 54px rgba(0,0,0,.28);}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:hover .media{transform:scale(1.045);filter:brightness(1.06) saturate(1.02);}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:hover .content{transform:translateY(0);}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:hover p{max-height:10rem;opacity:.92;}
.portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card.is-filtered-out{opacity:0 !important;transform:scale(.98) translateY(16px) !important;pointer-events:none;}

.clients-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:center;margin-top:34px;}
.client-logo-item{min-height:62px;background:rgba(14,14,14,.56);border-color:rgba(255,255,255,.10);transition:border-color .3s ease,background-color .3s ease, transform .3s ease;}
.client-logo-item:hover{transform:translateY(-2px);border-color:rgba(208,162,62,.4);background:rgba(18,18,18,.78);}
.client-logo-item img{max-width:160px;max-height:34px;filter:grayscale(1) brightness(2.35) contrast(.68);opacity:.94;}
.client-logo-item span{color:#d8d1c6;font-size:.74rem;letter-spacing:.2em;}

.about-premium-title,.about-premium-title .display-italic{font-family:var(--serif) !important;}
.about-premium-text,.about-premium-list li{font-family:Inter,Arial,sans-serif;}

.sabino-cursor{transition:width .2s ease,height .2s ease,border-color .2s ease,background-color .2s ease,opacity .2s ease,transform .08s linear !important;}
.sabino-cursor.is-hover{width:68px;height:68px;margin:-34px 0 0 -34px;border-color:rgba(244,237,225,.88);background:rgba(208,162,62,.08);}
.sabino-cursor.is-media{background:rgba(208,162,62,.14);border-color:rgba(208,162,62,.95);}

@media (max-width:1300px){
  .portfolio-grid.dynamic-grid.portfolio-rect-grid{column-count:3;}
}
@media (max-width:980px){
  .portfolio-grid.dynamic-grid.portfolio-rect-grid{column-count:2;}
  .clients-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:820px){
  .hero-copy h1{font-size:clamp(2.2rem,9vw,3.1rem) !important;}
  .hero-copy h2{font-size:clamp(1.95rem,8vw,2.75rem) !important;}
  .hero-copy{max-width:70vw !important;}
  .portfolio-grid.dynamic-grid.portfolio-rect-grid{column-count:1;}
  .portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card .media,
  .portfolio-grid.dynamic-grid.portfolio-rect-grid .portfolio-card:nth-child(n) .media{height:320px;}
  .clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* V26 ultra-final premium overrides */
:root{--wow-gap:20px;}
.hero,.page-hero{min-height:100svh;}
.hero-media,.hero-slide,.page-hero-media{background:#060606;}
.hero-media img,.hero-slide img,.page-hero-media img{object-fit:cover!important;object-position:center center!important;transform:none!important;filter:brightness(1.16) contrast(1.05) saturate(1.03)!important;opacity:1!important}
.hero-overlay{background:
linear-gradient(90deg, rgba(4,4,4,.72) 0%, rgba(4,4,4,.52) 18%, rgba(4,4,4,.14) 46%, rgba(4,4,4,.16) 74%, rgba(4,4,4,.34) 100%),
linear-gradient(180deg, rgba(0,0,0,.24) 0%, rgba(0,0,0,.05) 40%, rgba(0,0,0,.30) 100%)!important}
.hero-vignette{box-shadow:inset 0 0 120px rgba(0,0,0,.24), inset 0 0 24px rgba(0,0,0,.1)!important}
.hero-copy{max-width:560px!important;position:relative;z-index:3}
.hero-copy h1{font-size:clamp(4.7rem,7vw,7.8rem)!important;line-height:.84!important;letter-spacing:-.05em!important;margin:0!important;max-width:8ch}
.hero-copy h2{font-size:clamp(4.3rem,6.4vw,6.8rem)!important;line-height:.86!important;letter-spacing:-.05em!important;margin:10px 0 0!important;max-width:7ch}
.hero-copy h1 .italic{font-style:italic;color:rgba(214,214,214,.64)!important;font-weight:400}
.hero-copy .hero-kicker,.hero-taxonomy{color:var(--gold-2)!important}
.hero-copy,.page-hero-copy{font-family:var(--serif)}

.portfolio-grid.dynamic-grid.portfolio-masonry-wow{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:var(--wow-gap)!important;align-items:start}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card{position:relative;overflow:hidden;display:block!important;min-width:0;background:transparent;border:0;transform:translateY(0);transition:transform .45s cubic-bezier(.22,1,.36,1), opacity .3s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media{position:relative;min-height:0!important;height:100%;background-size:cover;background-position:center center;border:1px solid rgba(255,255,255,.08);overflow:hidden}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.06) 32%,rgba(0,0,0,.68) 100%);transition:opacity .45s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media:after{content:"";position:absolute;inset:0;background:inherit;background-size:cover;background-position:center center;transform:scale(1.001);transition:transform .7s cubic-bezier(.22,1,.36,1), filter .7s ease;z-index:0}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .content{position:absolute!important;left:0;right:0;bottom:0;z-index:2;padding:18px 18px 18px!important;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.22) 18%,rgba(0,0,0,.78) 100%)!important;transition:transform .4s cubic-bezier(.22,1,.36,1), opacity .35s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .selected-meta{font-size:.62rem;letter-spacing:.22em;color:var(--gold);margin-bottom:10px}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card h3{margin:0 0 10px!important;font-size:clamp(1.45rem,2vw,2rem)!important;line-height:.94!important;max-width:11ch}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card p{margin:0;font-size:.92rem!important;line-height:1.55!important;color:rgba(244,237,225,.78)!important;max-width:26ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;opacity:.92}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-landscape .media{aspect-ratio:1.12/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-square .media{aspect-ratio:1/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-portrait .media{aspect-ratio:.72/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-tall .media{aspect-ratio:.84/1.24}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide{grid-column:span 2}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide .media{aspect-ratio:1.55/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover{transform:translateY(-6px)}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .media:after{transform:scale(1.06);filter:brightness(1.05)}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .content{transform:translateY(-6px)}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.is-filtered-out{opacity:0;transform:scale(.96);pointer-events:none}
.filter-chip{transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease}
.filter-chip:hover,.filter-chip.active{transform:translateY(-1px)}
@media (max-width:1280px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide{grid-column:span 1}.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide .media{aspect-ratio:1.05/1}}
@media (max-width:960px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:1fr;gap:16px}.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media,.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide .media,.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-tall .media,.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-portrait .media,.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-square .media,.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-landscape .media{aspect-ratio:1.02/1!important}}

.about-premium-title,.about-premium-title .display-italic{font-family:var(--serif)!important;font-size:clamp(3.2rem,4.8vw,5.7rem)!important;line-height:.94!important;letter-spacing:-.04em}
.about-premium-text,.about-premium-list li{font-family:var(--sans)!important}

.clients-logo-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.client-logo-item{min-height:74px;display:flex;align-items:center;justify-content:center;padding:18px 20px;border:1px solid rgba(255,255,255,.08);background:rgba(14,14,14,.44);transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .3s ease,background-color .3s ease}
.client-logo-item:hover{transform:translateY(-3px);border-color:rgba(208,162,62,.45);background:rgba(18,18,18,.82)}
.client-logo-item img{display:block;max-width:160px;max-height:32px;width:auto;height:auto;filter:grayscale(1) brightness(2.2) contrast(.74)!important;opacity:.96}
.client-logo-item span{display:block;text-align:center;color:#cfc9bf;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
@media (max-width:960px){.clients-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:680px){.clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.sabino-cursor{width:54px;height:54px;margin:-27px 0 0 -27px;border:2px solid rgba(198,151,61,.85)!important;background:transparent!important}
.sabino-cursor:after{width:10px;height:10px;background:var(--gold-2)!important}
.sabino-cursor.is-hover{width:72px;height:72px;margin:-36px 0 0 -36px;border-color:rgba(244,237,225,.92)!important;background:rgba(208,162,62,.06)!important}
.sabino-cursor.is-media{width:84px;height:84px;margin:-42px 0 0 -42px;border-color:rgba(208,162,62,.98)!important;background:rgba(208,162,62,.1)!important}

.page-shell.archive-portfolio .collection-grid.dynamic-grid,
.portfolio-builder-shell .portfolio-grid.dynamic-grid{display:grid!important}

@media (max-width:820px){
  .hero-copy{max-width:170px!important}
  .hero-copy h1{font-size:clamp(1.9rem,6.1vw,2.6rem)!important;max-width:6ch!important}
  .hero-copy h2{font-size:clamp(1.75rem,5.7vw,2.35rem)!important;max-width:6ch!important}
  .hero-copy .hero-kicker,.hero-taxonomy{font-size:.56rem!important;letter-spacing:.18em!important}
}


/* V27 fixes */
.hero-media img,.hero-slide img,.page-hero-media img{filter:brightness(1.04) contrast(1.02) saturate(1.02)!important;opacity:.94!important}
.hero-overlay{background:linear-gradient(90deg, rgba(4,4,4,.78) 0%, rgba(4,4,4,.58) 18%, rgba(4,4,4,.20) 46%, rgba(4,4,4,.22) 74%, rgba(4,4,4,.42) 100%),linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.08) 40%, rgba(0,0,0,.38) 100%)!important}
.sabino-clients-section{display:block!important;visibility:visible!important;opacity:1!important}
.clients-logo-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.sabino-corporate-section .corporate-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.sabino-corporate-section .corporate-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0b0b0b}
.sabino-corporate-section .corporate-card .media{height:250px;background-size:cover;background-position:center center;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .4s ease}
.sabino-corporate-section .corporate-card .content{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.2) 20%,rgba(0,0,0,.84) 100%)}
.sabino-corporate-section .corporate-card h3{margin:6px 0 0;font-size:1.6rem;line-height:1}
.sabino-corporate-section .corporate-card:hover .media{transform:scale(1.05);filter:brightness(1.03)}
.section-cta{margin-top:24px}
.side-nav ul li{position:relative}
.side-nav .sub-menu{display:none;position:absolute;top:0;right:calc(100% + 12px);min-width:180px;background:rgba(8,8,8,.96);border:1px solid rgba(255,255,255,.08);padding:12px 0;z-index:30}
.side-nav .sub-menu li{padding:0;margin:0}
.side-nav .sub-menu a{display:block;padding:10px 16px;font-size:.65rem;letter-spacing:.18em;color:rgba(244,237,225,.82);text-transform:uppercase}
.side-nav li.menu-item-has-children:hover>.sub-menu,.side-nav li.menu-item-has-children:focus-within>.sub-menu{display:block}
.side-nav li.menu-item-has-children>a:after{content:'+';margin-left:10px;color:var(--gold);font-size:.8em}
@media (max-width:980px){.sabino-corporate-section .corporate-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.side-nav .sub-menu{position:static;display:block;border:0;background:transparent;padding:6px 0 0 12px}.side-nav li.menu-item-has-children>a:after{display:none}}
@media (max-width:680px){.sabino-corporate-section .corporate-strip{grid-template-columns:1fr}.clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}


/* V28 final visibility + masonry fixes */
.side-nav{display:block !important;opacity:1 !important;visibility:visible !important;pointer-events:auto !important;z-index:160 !important}
.site-header{z-index:165 !important}
.hero,.page-hero{background:#050505}
.hero-media,.page-hero-media,.hero-slide{overflow:hidden}
.hero-media img,.page-hero-media img,.hero-slide img{width:100% !important;height:100% !important;object-fit:cover !important;object-position:center center !important;transform:none !important}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,.16) 35%,rgba(0,0,0,.14) 64%,rgba(0,0,0,.28) 100%),linear-gradient(180deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.10) 36%,rgba(0,0,0,.26) 100%) !important}

.sabino-clients-section{display:block !important;visibility:visible !important;opacity:1 !important;padding-top:40px !important}
.clients-logo-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;align-items:center}
.client-logo-item{min-height:56px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.01);padding:10px 14px}
.client-logo-item img{max-height:28px;width:auto;max-width:100%;filter:grayscale(1) brightness(1.8) contrast(.55);opacity:.92}
.client-logo-item span{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(244,237,225,.55)}

.portfolio-toolbar{justify-content:center;gap:14px;margin-bottom:26px !important}
.filter-chip{min-width:88px;padding:11px 18px;background:transparent;border:1px solid rgba(255,255,255,.12)}
.filter-chip.active{background:var(--gold);border-color:var(--gold);color:#18130a}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow{display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:dense;gap:24px !important;align-items:start}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card{position:relative !important;display:block !important;background:transparent !important;border:0 !important;box-shadow:none !important;overflow:hidden;min-width:0;margin:0 !important;break-inside:auto !important}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media-link{display:block !important;position:relative !important;width:100% !important;height:100% !important;min-height:0 !important;border:0 !important;background-size:cover !important;background-position:center center !important;overflow:hidden}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media:before,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .media-link:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 32%,rgba(0,0,0,.18) 68%,rgba(0,0,0,.74) 100%);opacity:.62;transition:opacity .35s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .content{position:absolute !important;left:0;right:0;bottom:0;z-index:3;padding:16px 16px 14px !important;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.68) 100%) !important;transform:translateY(10px);opacity:.0;transition:transform .35s ease,opacity .35s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .selected-meta{font-size:.58rem !important;letter-spacing:.24em !important;text-transform:uppercase;color:var(--gold);margin-bottom:8px !important}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card h3{margin:0 !important;font-size:1.2rem !important;line-height:.95 !important;max-width:12ch}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card p{display:none !important}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .content{transform:translateY(0);opacity:1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .media:before,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .media-link:before{opacity:.88}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card:hover .media:after{transform:scale(1.05)}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-square .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-square .media-link{aspect-ratio:1/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-landscape .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-landscape .media-link{aspect-ratio:1.18/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-portrait .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-portrait .media-link{aspect-ratio:.78/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-tall .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-tall .media-link{aspect-ratio:.86/1.16}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide{grid-column:span 2}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide .media,
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide .media-link{aspect-ratio:1.52/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.is-filtered-out{opacity:0 !important;transform:scale(.96) translateY(10px) !important;pointer-events:none}
@media (max-width:1380px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1040px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px !important}.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card.size-wide{grid-column:span 1}.clients-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px !important}.portfolio-grid.dynamic-grid.portfolio-masonry-wow .portfolio-card .content{opacity:1;transform:none}.clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.portfolio-grid.dynamic-grid.portfolio-masonry-wow{grid-template-columns:1fr}.clients-logo-grid{grid-template-columns:1fr}.side-nav{right:14px !important;top:72px !important;width:138px !important}}


/* V29 polishing */
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.64) 0%,rgba(0,0,0,.28) 30%,rgba(0,0,0,.10) 58%,rgba(0,0,0,.22) 100%),linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.10) 24%,rgba(0,0,0,.34) 100%)}
.sabino-clients-section{padding-top:68px;padding-bottom:54px}
.clients-logo-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:center}
.client-logo-item{min-height:62px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:14px 16px;background:rgba(255,255,255,.015)}
.client-logo-item img{max-height:26px;max-width:100%;opacity:.75;filter:grayscale(1) brightness(1.65)}
.client-logo-item span{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(244,237,225,.72);white-space:nowrap}
.compact-head{margin-bottom:22px}
.portfolio-masonry-v29{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:26px}
.portfolio-masonry-v29 .portfolio-card{grid-column:span 3;border:0;background:none;overflow:hidden;position:relative;box-shadow:none}
.portfolio-masonry-v29 .portfolio-card .portfolio-card-link{display:block;position:relative;height:100%;overflow:hidden;background:#0c0c0c}
.portfolio-masonry-v29 .portfolio-card .media{height:100%;min-height:240px;aspect-ratio:auto;background-size:cover;background-position:center;transition:transform .75s ease,filter .5s ease}
.portfolio-masonry-v29 .portfolio-card:hover .media{transform:scale(1.04);filter:saturate(1.02)}
.portfolio-masonry-v29 .portfolio-card .portfolio-overlay{position:absolute;inset:auto 0 0 0;padding:18px 18px 16px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.22) 28%,rgba(0,0,0,.72) 100%);transform:translateY(0);transition:transform .35s ease,opacity .35s ease}
.portfolio-masonry-v29 .portfolio-card .selected-meta{margin-bottom:8px;font-size:.58rem;letter-spacing:.26em}
.portfolio-masonry-v29 .portfolio-card h3{margin:0;font-family:var(--serif);font-size:1.45rem;line-height:.95;font-weight:500;max-width:90%}
.portfolio-masonry-v29 .portfolio-card.tile-s{grid-column:span 3;grid-row:span 1}
.portfolio-masonry-v29 .portfolio-card.tile-m{grid-column:span 3;grid-row:span 2}
.portfolio-masonry-v29 .portfolio-card.tile-tall{grid-column:span 3;grid-row:span 3}
.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 6;grid-row:span 2}
.portfolio-masonry-v29 .portfolio-card.tile-s .media{min-height:220px}
.portfolio-masonry-v29 .portfolio-card.tile-m .media{min-height:360px}
.portfolio-masonry-v29 .portfolio-card.tile-tall .media{min-height:560px}
.portfolio-masonry-v29 .portfolio-card.tile-wide .media{min-height:360px}
.portfolio-card[data-hidden="true"]{opacity:.12;filter:grayscale(1);pointer-events:none;transform:none}
.sabino-corporate-section .corporate-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sabino-corporate-section .corporate-card .media{aspect-ratio:16/10}
@media (max-width:1200px){.clients-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-masonry-v29 .portfolio-card.tile-s,.portfolio-masonry-v29 .portfolio-card.tile-m,.portfolio-masonry-v29 .portfolio-card.tile-tall{grid-column:span 4}.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 8}}
@media (max-width:782px){.clients-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-masonry-v29{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portfolio-masonry-v29 .portfolio-card,.portfolio-masonry-v29 .portfolio-card.tile-s,.portfolio-masonry-v29 .portfolio-card.tile-m,.portfolio-masonry-v29 .portfolio-card.tile-tall,.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 1;grid-row:span 1}.portfolio-masonry-v29 .portfolio-card .media{min-height:220px}.sabino-corporate-section .corporate-strip{grid-template-columns:1fr 1fr}}


/* V30 masonry size fix */
.section-head{align-items:end;gap:24px}.section-head .section-title{line-height:.92}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense;gap:18px!important;align-items:start;margin-top:18px}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card{position:relative;grid-column:span 2;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;overflow:hidden;min-width:0}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media-link{display:block!important;width:100%!important;min-height:0!important;background-size:cover!important;background-position:center center!important;overflow:hidden;transition:transform .7s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media:before,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media-link:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 20%,rgba(0,0,0,.12) 52%,rgba(0,0,0,.66) 100%);opacity:.75;transition:opacity .3s ease}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .content{position:absolute!important;left:0;right:0;bottom:0;z-index:2;padding:14px 14px 12px!important;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.72) 100%)!important;transform:translateY(0)!important;opacity:1!important}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .selected-meta{font-size:.56rem!important;letter-spacing:.22em!important;margin-bottom:8px!important;color:var(--gold)}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card h3{margin:0!important;font-size:1.2rem!important;line-height:.95!important;max-width:10ch}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card p{display:none!important}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover .media-link{transform:scale(1.04)}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover .media:before,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover .media-link:before{opacity:.9}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-s{grid-column:span 2}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-s .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-s .media-link{aspect-ratio:1/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m{grid-column:span 2}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m .media-link{aspect-ratio:.86/1.08}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide{grid-column:span 2}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide .media-link{aspect-ratio:1.12/1}
.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card[data-hidden="true"]{display:none!important}
@media (max-width:1280px){.portfolio-grid.dynamic-grid.portfolio-masonry-fixed{grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-s,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide{grid-column:span 2}}
@media (max-width:820px){.portfolio-grid.dynamic-grid.portfolio-masonry-fixed{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-s,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide{grid-column:span 1}.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media,.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media-link{aspect-ratio:.92/1!important}.portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card h3{font-size:1rem!important}}


/* V31 compact masonry + backend controls */
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid{
  display:grid !important;
  grid-template-columns:repeat(var(--sabino-masonry-cols,4), minmax(0,1fr)) !important;
  gap:18px !important;
  column-count:unset !important;
  column-gap:0 !important;
  align-items:start !important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card{
  display:block !important;
  margin:0 !important;
  break-inside:auto !important;
  background:#0b0b0b !important;
  border:1px solid rgba(255,255,255,.08) !important;
  overflow:hidden !important;
  box-shadow:none !important;
  grid-column:span 1 !important;
  min-width:0 !important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide{grid-column:span 2 !important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card .media{
  height:220px !important;
  min-height:220px !important;
  aspect-ratio:auto !important;
  background-size:cover !important;
  background-position:center center !important;
  border:0 !important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m .media,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-m .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-m .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-m .media{height:280px !important; min-height:280px !important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-tall .media,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-tall .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-tall .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-tall .media{height:340px !important; min-height:340px !important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide .media,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide .media,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide .media{height:240px !important; min-height:240px !important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .content,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card .content,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card .content,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card .content{
  position:absolute !important;
  left:0; right:0; bottom:0;
  padding:14px 14px 12px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.22) 26%,rgba(0,0,0,.82) 100%) !important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card h3,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card h3,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card h3,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card h3{font-size:1.15rem !important; line-height:1.02 !important; max-width:14ch !important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card p,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card p,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card p,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card p{font-size:.82rem !important; line-height:1.45 !important; max-height:0; opacity:0; overflow:hidden; margin-top:8px;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover p,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card:hover p,
.page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card:hover p,
.page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card:hover p{max-height:6rem; opacity:.9;}
@media (max-width:1200px){
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:900px){
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed .portfolio-card.tile-wide,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid .portfolio-card.tile-wide{grid-column:span 1 !important;}
}
@media (max-width:680px){
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-compact-grid,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-masonry-fixed,
  .page-shell .portfolio-grid.dynamic-grid.portfolio-compact-grid{grid-template-columns:1fr !important;}
}


/* V32 page hero controls */
.page-hero,.portfolio-archive-hero,.portfolio-single-hero,.contact-hero{position:relative;overflow:hidden;min-height:64svh}
.page-hero-media{position:absolute;inset:0;overflow:hidden}
.page-hero-media img{width:100%;height:100%;object-fit:cover;object-position:var(--hero-position,50% 50%);display:block;transform:none}
.hero .hero-media img,.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
.hero .hero-media,.hero-slide{overflow:hidden}
@media (max-width: 900px){
  .page-hero,.portfolio-archive-hero,.portfolio-single-hero,.contact-hero{min-height:54svh}
  .page-hero-media img{object-position:var(--hero-position-mobile,var(--hero-position,50% 35%))}
}

/* V33 hero per-page controls */
.page-hero,.portfolio-archive-hero,.portfolio-single-hero,.contact-hero{min-height:var(--hero-height,64svh)!important;}
.page-hero-media{min-height:var(--hero-height,64svh)!important;}
.page-hero .hero-overlay,.portfolio-archive-hero .hero-overlay,.portfolio-single-hero .hero-overlay,.contact-hero .hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,var(--hero-overlay,.34)) 0%,rgba(0,0,0,calc(var(--hero-overlay,.34) * .5)) 35%,rgba(0,0,0,.10) 64%,rgba(0,0,0,calc(var(--hero-overlay,.34) * .7)) 100%),linear-gradient(180deg,rgba(0,0,0,calc(var(--hero-overlay,.34) * .55)) 0%,rgba(0,0,0,.10) 36%,rgba(0,0,0,calc(var(--hero-overlay,.34) * .8)) 100%)!important;}
@media (max-width: 767px){.page-hero,.portfolio-archive-hero,.portfolio-single-hero,.contact-hero{min-height:calc(var(--hero-height,64svh) - 8svh)!important;}}


/* V34 Works */
.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.work-card{position:relative;overflow:hidden;border-radius:22px;background:#121212;border:1px solid rgba(255,255,255,.08)}.work-card-link{display:block;color:inherit;text-decoration:none}.work-card-media{aspect-ratio:1.35/1;background-size:cover;background-position:center;transition:transform .7s ease,opacity .35s ease;opacity:.95}.work-card-content{padding:18px 18px 22px}.work-card-date{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.48);margin-bottom:8px}.work-card h3{font-size:22px;line-height:1.15;margin:0;color:#f2f2f2}.work-card:hover .work-card-media{transform:scale(1.04);opacity:1}.single-work-body .single-portfolio-meta .label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:8px}
@media (max-width: 1100px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 767px){.works-grid{grid-template-columns:1fr;gap:18px}.work-card h3{font-size:18px}}


/* V36 mobile menu and contact form fixes */
.sabino-hp{position:absolute !important;left:-9999px !important;opacity:0 !important;width:1px !important;height:1px !important;pointer-events:none !important}
body.menu-open{overflow:hidden}
@media (max-width:820px){
  .side-nav{display:block !important;right:18px;top:74px;width:min(78vw,320px);max-height:calc(100svh - 100px);overflow:auto;background:rgba(8,8,8,.94);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.10);box-shadow:0 20px 80px rgba(0,0,0,.45);transform:translateY(-10px) scale(.98);opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transition:opacity .28s ease, transform .28s ease, visibility .28s ease}
  .side-nav.open{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) scale(1)}
  .side-nav ul{padding:14px}
  .side-nav a{padding:10px 12px;font-size:.72rem}
  .mobile-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:82px;min-height:38px;border-radius:999px;transition:background .25s ease,border-color .25s ease,color .25s ease}
  .mobile-toggle:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
}
@media (min-width:821px){
  .side-nav{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:none !important}
}
.sabino-contact-form .field input,.sabino-contact-form .field textarea{width:100%}
.sabino-form-notice.is-error{border-color:rgba(255,126,126,.28);background:rgba(95,16,16,.28);color:#ffd7d7}
.sabino-form-notice.is-success{border-color:rgba(126,255,180,.18);background:rgba(10,55,32,.28);color:#dfffe9}


/* V37 clean loading + smooth mobile menu */
img{height:auto}
.mobile-nav-backdrop{display:none}
@media (max-width:820px){
  .mobile-nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.46);backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s ease;z-index:18}
  .mobile-nav-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}
  .site-header{backdrop-filter:saturate(120%) blur(8px)}
  .side-nav{z-index:19;border-radius:20px;will-change:transform,opacity}
  .side-nav ul{gap:4px}
  .side-nav a{line-height:1.2}
}
.sabino-form-notice{padding:14px 16px;border:1px solid var(--line);margin-bottom:16px}
.sabino-contact-form .btn{min-width:190px}
.sabino-contact-form input,.sabino-contact-form textarea{transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease}
.sabino-contact-form input:focus,.sabino-contact-form textarea:focus{outline:none;border-color:rgba(208,162,62,.65);box-shadow:0 0 0 3px rgba(208,162,62,.12)}

/* V39 branding overlay + logo */
.site-header{z-index:1200}
.header-inner{position:relative;align-items:flex-start}
.branding-wrap{position:relative;display:inline-block;max-width:min(92vw,860px);padding:18px 22px 18px 18px}
.branding-overlay{position:absolute;inset:0;background:rgba(0,0,0,var(--brand-overlay-opacity,.9));backdrop-filter:blur(2px);border-radius:2px;pointer-events:none}
.branding{position:relative;z-index:1}
.branding a{display:flex;align-items:center;gap:16px;text-decoration:none}
.brand-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.brand-logo img{display:block;width:var(--brand-logo-size,66px);height:auto;max-width:none}
.brand-copy{display:flex;flex-direction:column;gap:10px}
.brand-main,.brand-sub{display:block}
.brand-main{line-height:1;text-transform:uppercase;letter-spacing:.12em}
.brand-sub{line-height:1.2}
@media (max-width:820px){
  .branding-wrap{padding:12px 14px 12px 12px;max-width:calc(100vw - 96px)}
  .branding a{gap:10px}
  .brand-logo img{width:clamp(34px,calc(var(--brand-logo-size,66px) * .64),72px)}
}


/* V41 full-width branding overlay + collapsible main menu */
.site-header{inset:0 0 auto 0;pointer-events:none;z-index:1300}
.header-inner{width:100%;max-width:none;margin:0;padding:0;display:flex;align-items:flex-start;justify-content:space-between;position:relative}
.branding-wrap{display:block;position:relative;width:100%;max-width:none;padding:0;margin:0}
.branding-overlay{position:absolute;inset:0;background:rgba(0,0,0,var(--brand-overlay-opacity,.9));backdrop-filter:blur(4px);border-radius:0}
.branding{position:relative;z-index:1;width:100%}
.branding a{display:flex;align-items:center;gap:16px;padding:22px 34px 20px;text-decoration:none}
.mobile-toggle{display:inline-flex !important;pointer-events:auto;position:fixed;top:24px;right:28px;z-index:1302;align-items:center;justify-content:center;min-width:88px;min-height:42px;border-radius:999px;background:rgba(5,5,5,.78);border:1px solid rgba(244,237,225,.14);box-shadow:0 12px 40px rgba(0,0,0,.22);backdrop-filter:blur(8px);transition:transform .28s ease,background .28s ease,border-color .28s ease,opacity .28s ease}
.mobile-toggle:hover{background:rgba(10,10,10,.92);border-color:rgba(244,237,225,.28);transform:translateY(-1px)}
.mobile-toggle[aria-expanded="true"]{background:rgba(12,12,12,.96);border-color:rgba(244,237,225,.22)}
.side-nav{display:block !important;right:28px;top:76px;width:min(320px,calc(100vw - 32px));max-height:min(78svh,720px);overflow:auto;background:rgba(7,7,7,.96);backdrop-filter:blur(16px);border:1px solid rgba(244,237,225,.12);box-shadow:0 28px 90px rgba(0,0,0,.55);border-radius:24px;transform:translateY(-10px) scale(.985);opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transition:opacity .34s ease,transform .34s cubic-bezier(.22,.61,.36,1),visibility .34s ease;z-index:1301}
.side-nav.open{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) scale(1)}
.side-nav ul{padding:14px}
.side-nav li+li{margin-top:4px}
.side-nav a{padding:11px 14px;font-size:.72rem;line-height:1.25}
.side-nav .sub-menu{padding:4px 0 0 12px;display:block}
.side-nav .sub-menu a{font-size:.64rem;color:rgba(244,237,225,.62);padding:8px 12px}
.mobile-nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .34s ease,visibility .34s ease;z-index:1299}
.mobile-nav-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}
@media (min-width:821px){
  .side-nav{right:32px;top:80px;width:300px}
}
@media (max-width:820px){
  .branding a{padding:18px 18px 16px}
  .branding-wrap{padding:0}
  .mobile-toggle{top:16px;right:16px;min-width:82px;min-height:40px}
  .side-nav{right:16px;top:66px;width:min(300px,calc(100vw - 24px));border-radius:20px}
  .brand-logo img{width:clamp(34px,calc(var(--brand-logo-size,66px) * .64),72px)}
  .brand-main{font-size:clamp(1.2rem,7vw,1.7rem)}
  .brand-sub{font-size:.56rem;letter-spacing:.28em}
}

/* V42 menu clarity fix */
.mobile-toggle{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
.side-nav{background:rgba(6,6,6,.985) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;box-shadow:0 28px 90px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.03) !important;}
.side-nav ul{padding:18px !important;}
.side-nav a{color:rgba(248,242,233,.96) !important;text-shadow:none !important;font-size:.78rem !important;letter-spacing:.18em !important;}
.side-nav li+li{margin-top:6px !important;}
.side-nav .sub-menu{padding:8px 0 0 14px !important;display:block !important;}
.side-nav .sub-menu a{color:rgba(244,237,225,.78) !important;font-size:.66rem !important;}
.mobile-nav-backdrop{background:rgba(0,0,0,.68) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
body.menu-open .site-content, body.menu-open main, body.menu-open .site-main{filter:none !important;}


/* V45 menu interaction fix */
body.menu-open{overflow:auto !important;}
.mobile-nav-backdrop{display:none !important;opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}
.site-header{z-index:1300 !important;}
.mobile-toggle{z-index:1406 !important;}
.side-nav{z-index:1405 !important;top:78px !important;right:28px !important;display:block !important;}
.side-nav.open{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) scale(1) !important;}
.side-nav ul{padding:16px 16px 14px !important;}
.side-nav li{position:relative;}
.side-nav li.menu-item-has-children > a{display:flex !important;align-items:center;justify-content:space-between;gap:12px;}
.side-nav li.menu-item-has-children > a:after{content:"+";margin-left:auto;color:var(--gold);font-size:.95em;line-height:1;transition:transform .28s ease, color .28s ease;}
.side-nav li.menu-item-has-children.is-open > a:after{transform:rotate(45deg);}
.side-nav .sub-menu{display:block !important;position:static !important;right:auto !important;top:auto !important;min-width:0 !important;border:0 !important;background:transparent !important;padding:0 0 0 14px !important;margin:4px 0 0 !important;max-height:0;overflow:hidden;opacity:0;transform:translateY(-4px);transition:max-height .38s cubic-bezier(.22,.61,.36,1),opacity .28s ease,transform .28s ease,padding-top .28s ease;box-shadow:none !important;}
.side-nav li.menu-item-has-children.is-open > .sub-menu{max-height:320px;opacity:1;transform:translateY(0);padding-top:6px !important;}
.side-nav .sub-menu li+li{margin-top:2px !important;}
.side-nav .sub-menu a{padding:8px 12px !important;font-size:.66rem !important;letter-spacing:.16em !important;color:rgba(244,237,225,.72) !important;}
.side-nav .sub-menu a:hover{color:var(--gold) !important;}
@media (hover:hover){
  .side-nav a:hover{color:var(--gold) !important;background:rgba(198,151,61,.06) !important;border-color:rgba(198,151,61,.22) !important;}
}
@media (max-width:980px){
  .side-nav{top:68px !important;right:16px !important;width:min(320px,calc(100vw - 24px)) !important;max-height:calc(100svh - 88px) !important;}
}


/* V47 About layout fixes */
.sabino-about-premium .container{max-width:1420px;}
.about-premium-copy{gap:0;}
.about-premium-cards{display:grid;gap:18px;margin:18px 0 34px;}
.about-mini-card{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.02);padding:22px 20px 18px;min-height:128px;display:flex;flex-direction:column;justify-content:space-between;}
.about-mini-card h4{margin:0 0 10px;font-family:var(--serif);font-size:2rem;line-height:1;color:var(--text);font-weight:500;}
.about-mini-card p{margin:0;color:var(--muted);font-family:var(--sans);font-size:1rem;line-height:1.6;}
.about-premium-btn{margin-top:6px;}

/* Compact = image left + copy right + 3 small cards */
.about-layout-compact .about-premium-grid{grid-template-columns:minmax(360px,.92fr) minmax(460px,1.08fr);align-items:stretch;}
.about-layout-compact .about-image-frame{min-height:520px;max-height:620px;background-size:cover;background-position:center center;}
.about-layout-compact .about-premium-copy{padding:72px 68px;}
.about-layout-compact .about-premium-cards{grid-template-columns:repeat(3,minmax(0,1fr));}
.about-layout-compact .about-premium-title{font-size:clamp(3rem,5vw,5.4rem);}

/* Classic = image full-width top + copy below + cards in one row */
.about-layout-classic .about-premium-grid{display:block;border:1px solid rgba(255,255,255,.08);background:rgba(6,6,6,.68);}
.about-layout-classic .about-premium-image{padding:0;}
.about-layout-classic .about-image-frame{min-height:380px;max-height:460px;border-bottom:1px solid rgba(255,255,255,.08);background-size:cover;background-position:center center;}
.about-layout-classic .about-vertical-label{left:26px;top:26px;bottom:auto;writing-mode:horizontal-tb;transform:none;letter-spacing:.22em;font-size:.66rem;}
.about-layout-classic .about-image-badge{right:26px;bottom:26px;}
.about-layout-classic .about-premium-copy{padding:56px 56px 52px;max-width:980px;}
.about-layout-classic .about-premium-title{font-size:clamp(2.8rem,4vw,4.6rem);max-width:16ch;}
.about-layout-classic .about-premium-text{max-width:62ch;}
.about-layout-classic .about-premium-list{max-width:60ch;margin-bottom:28px;}
.about-layout-classic .about-premium-cards{grid-template-columns:repeat(3,minmax(180px,1fr));max-width:980px;}

@media (max-width: 1180px){
  .about-layout-compact .about-premium-grid{grid-template-columns:1fr;}
  .about-layout-classic .about-premium-grid{display:grid;grid-template-columns:1fr;}
  .about-layout-compact .about-premium-copy,.about-layout-classic .about-premium-copy{padding:42px 24px;}
  .about-layout-compact .about-premium-cards,.about-layout-classic .about-premium-cards{grid-template-columns:1fr;}
}
@media (max-width: 767px){
  .about-layout-compact .about-image-frame,.about-layout-classic .about-image-frame{min-height:340px !important;max-height:none;}
  .about-mini-card h4{font-size:1.7rem;}
}


/* V48 About minimal luxury layout */
.about-layout-minimal .about-premium-grid{grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);align-items:start;gap:38px;}
.about-layout-minimal .about-image-frame{min-height:420px;max-height:520px;background-size:cover;background-position:center center;border:1px solid rgba(255,255,255,.08);}
.about-layout-minimal .about-premium-copy{padding:28px 0 0;max-width:760px;}
.about-layout-minimal .about-premium-title{font-size:clamp(2.6rem,4.2vw,4.8rem);max-width:12ch;line-height:.98;}
.about-layout-minimal .about-premium-text{max-width:58ch;font-size:1.02rem;}
.about-layout-minimal .about-premium-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;max-width:720px;margin:18px 0 24px;padding:0;list-style:none;}
.about-layout-minimal .about-premium-list li{position:relative;padding-left:16px;color:var(--muted);}
.about-layout-minimal .about-premium-list li:before{content:'';position:absolute;left:0;top:.78em;width:7px;height:1px;background:var(--gold);}
.about-layout-minimal .about-premium-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:820px;margin-top:8px;}
.about-layout-minimal .about-mini-card{padding:18px 18px 16px;background:transparent;border-color:rgba(255,255,255,.11);min-height:110px;}
.about-layout-minimal .about-mini-card h4{font-size:1.6rem;}
.about-layout-minimal .about-premium-btn{margin-top:18px;display:inline-flex;}
@media (max-width:1180px){.about-layout-minimal .about-premium-grid{grid-template-columns:1fr;}.about-layout-minimal .about-premium-copy{padding:22px 24px 0;}.about-layout-minimal .about-premium-list{grid-template-columns:1fr;}.about-layout-minimal .about-premium-cards{grid-template-columns:1fr;}}


/* V50 works protected access + downloads */
.work-protected-box{max-width:720px;margin:40px auto;padding:36px;border:1px solid rgba(255,255,255,.08);background:#0b0b0b;border-radius:28px}
.work-protected-box h1{margin:8px 0 14px;font-size:clamp(2rem,4vw,3.5rem)}
.work-protected-box p{color:rgba(255,255,255,.72);max-width:60ch}
.work-protected-box form.post-password-form{margin-top:20px;display:grid;gap:14px}
.work-protected-box form.post-password-form label{display:block;color:#f2ecdf;font-size:.95rem}
.work-protected-box form.post-password-form input[type=password]{margin-top:8px;width:100%;padding:14px 16px;background:#121212;border:1px solid rgba(255,255,255,.1);color:#fff}
.work-protected-box form.post-password-form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;background:var(--gold);border:0;color:#111;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;cursor:pointer}
.work-download-actions{display:flex;justify-content:flex-end;margin:8px 0 34px}
.gallery-download-btn{position:absolute;right:12px;bottom:12px;z-index:2;padding:10px 12px;border:1px solid rgba(255,255,255,.14);background:rgba(8,8,8,.72);color:#fff;text-decoration:none;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease,background .25s ease,color .25s ease}
.sabino-portfolio-gallery-item{position:relative;overflow:hidden}
.sabino-portfolio-gallery-item:hover .gallery-download-btn{opacity:1;transform:translateY(0)}
.gallery-download-btn:hover{background:var(--gold);color:#111}


/* V51 Premium Works */
.works-showcase .section-head{align-items:end;gap:1.5rem}
.works-showcase .section-copy{max-width:42rem}
.works-toolbar{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 1.6rem}
.works-toolbar .filter-chip{border:1px solid rgba(198,151,61,.22);background:rgba(255,255,255,.02);color:var(--muted);padding:.72rem 1rem;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;font-size:.73rem;transition:all .3s ease}
.works-toolbar .filter-chip:hover,.works-toolbar .filter-chip.active{color:#111;background:linear-gradient(135deg,var(--gold),#e2bb6f);border-color:transparent;transform:translateY(-1px)}
.works-grid .portfolio-card{overflow:hidden;border-radius:22px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);box-shadow:0 18px 50px rgba(0,0,0,.18)}
.works-grid .portfolio-card .media{filter:saturate(.96) contrast(1.02);transition:transform .7s ease,filter .5s ease}
.works-grid .portfolio-card:hover .media{transform:scale(1.04);filter:saturate(1.05) contrast(1.06)}
.works-grid .portfolio-card .content{position:absolute;inset:auto 0 0 0;padding:1.05rem 1rem .95rem;background:linear-gradient(180deg,rgba(4,4,4,0) 0%,rgba(4,4,4,.72) 30%,rgba(4,4,4,.92) 100%)}
.works-grid .portfolio-card h3{font-size:1.18rem;margin:.2rem 0 .4rem;line-height:1.02}
.works-grid .portfolio-card p{font-size:.88rem;color:rgba(244,237,225,.72);margin:0}
.work-card-topline{display:flex;align-items:center;gap:.65rem;justify-content:space-between;margin-bottom:.2rem}
.work-card-tags{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.work-privacy-badge,.work-date-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .62rem;border-radius:999px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.work-privacy-badge{background:rgba(198,151,61,.16);border:1px solid rgba(198,151,61,.34);color:#f1d59c}
.work-date-pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:rgba(244,237,225,.75)}
.single-work-shell .page-hero-copy .eyebrow{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.work-private-chip{display:inline-flex;align-items:center;padding:.34rem .6rem;border-radius:999px;background:rgba(198,151,61,.16);border:1px solid rgba(198,151,61,.34);color:#f1d59c;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.work-download-actions{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center;margin:0 0 1.25rem}
.work-download-actions .btn{min-width:220px;justify-content:center}
.work-download-actions .btn.btn-outline{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:var(--text)}
.work-download-actions .btn.btn-outline:hover{border-color:rgba(198,151,61,.4);color:#111;background:linear-gradient(135deg,var(--gold),#e2bb6f)}
.work-download-note{font-size:.86rem;color:var(--muted)}
.work-protected-box{max-width:640px;margin:0 auto;border:1px solid rgba(198,151,61,.18);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));padding:2rem;border-radius:24px;box-shadow:0 25px 80px rgba(0,0,0,.2)}
.work-protected-box .password-form{margin-top:1rem}
.work-protected-box input[type=password]{width:100%;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--text);padding:.95rem 1rem;margin:.35rem 0 1rem}
.work-protected-box input[type=submit]{border:none;border-radius:999px;background:linear-gradient(135deg,var(--gold),#e2bb6f);color:#111;padding:.9rem 1.2rem;font-weight:700;cursor:pointer}
.gallery-download-btn{position:absolute;right:.9rem;bottom:.9rem;opacity:0;transform:translateY(8px);transition:all .28s ease;backdrop-filter:none;background:rgba(5,5,5,.82);border:1px solid rgba(255,255,255,.08);color:var(--text);padding:.55rem .7rem;border-radius:999px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.sabino-portfolio-gallery-item:hover .gallery-download-btn{opacity:1;transform:translateY(0)}
@media (max-width:900px){.work-download-actions .btn{min-width:0;width:100%}.works-grid .portfolio-card h3{font-size:1.02rem}.work-card-topline{align-items:flex-start;flex-direction:column}}


/* V52 works premium access */
.preview-watermark-overlay{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;padding:.42rem .7rem;border-radius:999px;background:rgba(5,5,5,.72);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.88);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}
.has-preview-watermark .media::after,.sabino-portfolio-gallery-item.has-preview-watermark::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-35deg,rgba(0,0,0,.0) 0,rgba(0,0,0,.0) 120px,rgba(198,151,61,.12) 120px,rgba(198,151,61,.12) 180px);pointer-events:none}
.sabino-portfolio-gallery-item.has-preview-watermark img{filter:saturate(.92) contrast(.98)}
.work-expired-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .62rem;border-radius:999px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:rgba(244,237,225,.72)}
#sabino-work-cover-select{margin-right:8px}


/* V53 works client delivery + elegant private access */
.sabino-work-password-form{display:block;margin-top:1rem}
.sabino-work-password-form .work-password-kicker{display:inline-flex;align-items:center;padding:.45rem .7rem;border-radius:999px;background:rgba(198,151,61,.12);border:1px solid rgba(198,151,61,.32);color:#e9cf95;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.9rem}
.sabino-work-password-form .work-password-title{font-size:clamp(1.45rem,3vw,2.3rem);line-height:1.05;margin:0 0 .8rem;color:#f4ede1}
.sabino-work-password-form .work-password-text{color:rgba(244,237,225,.72);max-width:46ch;margin:0 0 1rem}
.sabino-work-password-form label{display:block;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,237,225,.64);margin-bottom:.55rem}
.sabino-work-password-form .work-password-row{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}
.sabino-work-password-form input[type=password]{flex:1 1 280px;min-width:220px;padding:1rem 1rem;border-radius:14px;background:#121212;border:1px solid rgba(255,255,255,.12);color:#fff}
.sabino-work-password-form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.1rem;border:0;border-radius:999px;background:linear-gradient(135deg,var(--gold),#e2bb6f);color:#111;font-weight:700;cursor:pointer;min-width:180px}
.preview-watermark-overlay{background:rgba(5,5,5,.76);border-color:rgba(198,151,61,.28);color:#f0d8a8}
@media (max-width:700px){.sabino-work-password-form .work-password-row{display:grid;grid-template-columns:1fr}.sabino-work-password-form input[type=submit]{width:100%}}


/* V54 client portal polish */
.work-client-welcome{font-family:var(--serif);font-size:1.2rem;color:#f0d8a8;margin:.1rem 0 .8rem;}
.work-protected-benefits,.work-password-meta{display:flex;gap:.55rem;flex-wrap:wrap;margin:1rem 0 1.15rem;}
.work-protected-benefits span,.work-password-meta span{display:inline-flex;align-items:center;padding:.46rem .72rem;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:rgba(244,237,225,.76);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;}
.sabino-work-password-form{padding:1.15rem 1.1rem 1rem;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.06);}
.sabino-work-password-form .work-password-title{max-width:12ch;}
.single-work-welcome{display:inline-flex;align-items:center;padding:.55rem .82rem;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:#f1d59c;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;margin-top:1rem;}
.btn-download-all{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.16rem;min-width:260px;padding:1rem 1.25rem !important;box-shadow:0 18px 46px rgba(198,151,61,.18);}
.btn-download-all strong{font-size:.92rem;letter-spacing:.06em;text-transform:none;}
.download-all-kicker{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;opacity:.72;}
.work-download-actions{justify-content:space-between;border-top:1px solid rgba(255,255,255,.06);padding-top:1.2rem;margin-top:.4rem;}
@media (max-width:900px){.btn-download-all{min-width:0;width:100%;}.work-protected-benefits,.work-password-meta{gap:.45rem;}}

/* V55 Works commerce */
.work-image-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px}
.gallery-buy-btn,.gallery-download-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.gallery-buy-btn{background:#c8a96a;color:#111;border:1px solid #c8a96a}
.gallery-buy-btn:hover{background:#d8ba7a;color:#111}
.gallery-download-btn{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.16)}
.sabino-order-downloads{padding:28px;margin:24px 0;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);border-radius:18px}
.sabino-order-download-group + .sabino-order-download-group{margin-top:22px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08)}
.sabino-order-download-list{margin:10px 0 0 18px}
.sabino-order-download-list li{margin:6px 0}
.sabino-checkout-note{margin-bottom:20px}


/* V57 Works buy-license visibility + clean pricing note */
.sabino-portfolio-gallery-item{position:relative;overflow:hidden;border-radius:18px}
.sabino-portfolio-gallery-item img{aspect-ratio:4/3}
.work-image-actions{
  position:absolute;
  left:14px;
  right:14px;
  bottom:14px;
  z-index:3;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-start;
  align-items:center;
  opacity:1;
  transform:none;
}
.gallery-buy-btn,
.gallery-download-btn{
  position:static !important;
  opacity:1 !important;
  transform:none !important;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
  backdrop-filter:none !important;
}
.gallery-buy-btn{
  background:linear-gradient(135deg,#c8a96a,#d9bc83);
  color:#111 !important;
  border:1px solid rgba(255,255,255,.18);
}
.gallery-download-btn{
  background:rgba(6,6,6,.78) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.14) !important;
}
.gallery-btn-icon{
  display:inline-flex;
  width:18px;
  justify-content:center;
  font-weight:700;
  margin-right:4px;
}
.work-download-note .woocommerce-Price-amount,
.work-download-note .woocommerce-Price-currencySymbol{color:var(--gold);}
@media (max-width:900px){
  .work-image-actions{left:10px;right:10px;bottom:10px;gap:8px}
  .gallery-buy-btn,.gallery-download-btn{padding:9px 12px;font-size:11px}
}


.work-file-label{margin-top:10px;font-size:12px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);text-align:left;word-break:break-word}.woocommerce-notices-wrapper{margin-bottom:20px}.work-download-actions .btn{margin-right:10px;margin-bottom:10px}



/* V59 mini cart for Works gallery */
.work-cart-button{display:inline-flex;align-items:center;gap:.55rem}
.work-cart-button .work-cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.6rem;height:1.6rem;padding:0 .35rem;border-radius:999px;background:#c8a96a;color:#111;font-weight:700;font-size:.82rem}
.work-cart-mini{display:inline-flex;align-items:center;gap:.45rem;margin-left:.75rem;padding:.55rem .8rem;border-radius:999px;background:rgba(200,169,106,.14);border:1px solid rgba(200,169,106,.35);color:#d8d0c2;font-size:.84rem;opacity:.88;transition:transform .22s ease, opacity .22s ease}
.work-cart-mini strong{color:#c8a96a}
.work-cart-mini.is-visible{transform:translateY(-2px);opacity:1}
.gallery-buy-btn.is-loading{pointer-events:none;opacity:.65}
.gallery-buy-btn.is-added{border-color:rgba(200,169,106,.75);box-shadow:0 0 0 1px rgba(200,169,106,.18) inset}
@media (max-width: 767px){
  .work-cart-mini{display:flex;margin:.65rem 0 0 0}
}



/* V60 premium mini cart drawer */
.work-gallery-selection-bar{display:flex;align-items:center;gap:.65rem;justify-content:flex-end;margin:0 0 1.1rem 0;color:#d8d0c2;font-size:.9rem}
.work-gallery-selection-bar strong{display:inline-flex;align-items:center;justify-content:center;min-width:1.8rem;height:1.8rem;padding:0 .4rem;border-radius:999px;background:#c8a96a;color:#111;font-weight:700}
.work-gallery-selection-bar.is-active{animation:sabinoSelectionPulse .8s ease}
@keyframes sabinoSelectionPulse{0%{transform:translateY(0);opacity:.88}40%{transform:translateY(-2px);opacity:1}100%{transform:translateY(0);opacity:1}}

.work-mini-cart-drawer{
  position:fixed; right:1.4rem; bottom:1.4rem; width:min(420px, calc(100vw - 2rem));
  padding:1.15rem 1.1rem 1.05rem; border-radius:22px;
  background:rgba(10,10,12,.96); color:#f1ece2;
  border:1px solid rgba(200,169,106,.26);
  box-shadow:0 26px 70px rgba(0,0,0,.48); z-index:9998;
  transform:translateY(18px); opacity:0; pointer-events:none;
  transition:transform .28s ease, opacity .28s ease;
}
.work-mini-cart-drawer.is-open{transform:translateY(0); opacity:1; pointer-events:auto}
.work-mini-cart-close{
  position:absolute; top:.55rem; right:.7rem; width:2rem; height:2rem; border-radius:999px;
  background:transparent; color:#bdb3a3; border:none; font-size:1.35rem; line-height:1; cursor:pointer;
}
.work-mini-cart-close:hover{color:#c8a96a}
.work-mini-cart-kicker{display:block; color:#c8a96a; text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; margin-bottom:.45rem}
.work-mini-cart-top h3{margin:0 0 .3rem; font-size:1.25rem}
.work-mini-cart-message{margin:0; color:#cfc5b8; font-size:.95rem}
.work-mini-cart-summary{
  margin-top:.95rem; padding:.8rem .9rem; border-radius:16px;
  background:rgba(255,255,255,.03); display:flex; align-items:center; justify-content:space-between;
}
.work-mini-cart-summary strong{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:999px;background:#c8a96a;color:#111;font-weight:700}
.work-mini-cart-actions{display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1rem}
.gallery-buy-btn.is-added{
  background:rgba(200,169,106,.12);
  border-color:rgba(200,169,106,.75);
}
@media (max-width:767px){
  .work-mini-cart-drawer{right:.75rem; left:.75rem; width:auto; bottom:.85rem}
  .work-mini-cart-actions .btn{flex:1 1 auto; justify-content:center}
  .work-gallery-selection-bar{justify-content:flex-start}
}



/* V61 selected state + back to gallery */
.gallery-buy-btn.is-selected{
  background:rgba(200,169,106,.16);
  border-color:rgba(200,169,106,.82);
  box-shadow:0 0 0 1px rgba(200,169,106,.15) inset;
}
.gallery-buy-btn.is-selected .gallery-btn-icon{
  color:#c8a96a;
}
.sabino-back-to-gallery-wrap{
  margin:0 0 1.2rem 0;
}
.sabino-back-to-gallery{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.72rem 1rem;
  border:1px solid rgba(200,169,106,.28);
  border-radius:999px;
  color:#e9e1d2;
  text-decoration:none;
  transition:all .22s ease;
}
.sabino-back-to-gallery:hover{
  color:#c8a96a;
  border-color:rgba(200,169,106,.64);
  transform:translateY(-1px);
}


/* =========================
   V63 — STORIES EDITORIAL
========================= */
.story-card-link{display:block;color:inherit;text-decoration:none}
.story-grid-dynamic{align-items:stretch}
.story-grid-dynamic .story-card{position:relative;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.story-grid-dynamic .story-card:hover{transform:translateY(-6px);border-color:rgba(200,169,106,.35);box-shadow:0 40px 120px rgba(0,0,0,.45)}
.story-grid-dynamic .story-card .media{position:relative;min-height:280px}
.story-grid-dynamic .story-card .media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,6,6,.05),rgba(6,6,6,.22) 46%,rgba(6,6,6,.55));opacity:.8;transition:opacity .35s ease}
.story-grid-dynamic .story-card:hover .media:after{opacity:1}
.story-grid-dynamic .story-card .content{display:flex;flex-direction:column;gap:12px}
.story-cta-inline{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.story-cta-inline:after{content:"↗";font-size:.9rem;line-height:1}
.story-card.is-empty .story-cta-inline{display:none}
.story-archive-shell .collection-grid.story-grid{grid-template-columns:repeat(3,1fr);gap:24px}
.story-archive-shell .story-card .content h3{font-size:1.85rem}
.single-story-shell .page-hero-copy p{max-width:760px}
.single-story-shell .single-story-meta{display:flex;flex-wrap:wrap;gap:14px 24px;margin:0 0 30px;padding:20px 24px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(15,15,15,.78),rgba(8,8,8,.92));text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--muted)}
.single-story-shell .single-story-meta strong{display:block;margin-bottom:6px;color:var(--gold);font-size:.62rem;letter-spacing:.18em}
.single-story-shell .single-story-article{margin-bottom:42px}
.single-story-shell .single-story-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin:36px 0 22px}
.single-story-shell .single-story-gallery figure{margin:0;border:1px solid var(--line);background:#0a0a0a;overflow:hidden}
.single-story-shell .single-story-gallery figure.story-gallery-wide{grid-column:span 12}
.single-story-shell .single-story-gallery figure.story-gallery-half{grid-column:span 6}
.single-story-shell .single-story-gallery img{display:block;width:100%;height:auto}
.single-story-shell .single-story-nav{display:flex;justify-content:space-between;gap:16px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.single-story-shell .single-story-nav a{color:var(--text);text-decoration:none;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}
.story-taxonomy-shell .portfolio-toolbar{margin-bottom:34px}
@media (max-width: 1024px){
  .story-archive-shell .collection-grid.story-grid{grid-template-columns:repeat(2,1fr)}
  .single-story-shell .single-story-gallery figure.story-gallery-half{grid-column:span 12}
}
@media (max-width: 767px){
  .story-archive-shell .collection-grid.story-grid{grid-template-columns:1fr}
  .single-story-shell .single-story-meta{display:grid;grid-template-columns:1fr 1fr}
  .single-story-shell .single-story-nav{flex-direction:column}
}


/* =========================
   V64 — CART RETURN + MINI CART THUMB
========================= */
.sabino-back-to-gallery-wrap{
  display:flex;
  align-items:center;
  margin:0 0 1.35rem 0;
}
.sabino-back-to-gallery{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.82rem 1.08rem;
  border:1px solid rgba(200,169,106,.34);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(20,20,20,.92),rgba(10,10,10,.96));
  box-shadow:0 18px 40px rgba(0,0,0,.24);
  color:#efe7d8;
  text-decoration:none;
  letter-spacing:.04em;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease;
}
.sabino-back-to-gallery:hover{
  color:#c8a96a;
  border-color:rgba(200,169,106,.72);
  box-shadow:0 22px 55px rgba(0,0,0,.34);
  transform:translateY(-1px);
}
.sabino-back-to-gallery-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.35rem;
}
.work-mini-cart-media{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:.95rem;
  align-items:center;
}
.work-mini-cart-thumb{
  width:72px;
  height:72px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(200,169,106,.12),rgba(255,255,255,.03));
  border:1px solid rgba(200,169,106,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}
.work-mini-cart-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.work-mini-cart-copy h3{margin:0 0 .24rem}
.work-mini-cart-photo-label{
  margin-top:.45rem;
  font-size:.74rem;
  line-height:1.45;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#c8a96a;
}
@media (max-width: 767px){
  .work-mini-cart-media{grid-template-columns:58px minmax(0,1fr);gap:.78rem}
  .work-mini-cart-thumb{width:58px;height:58px;border-radius:14px}
  .sabino-back-to-gallery{width:100%;justify-content:center}
}


/* =========================
   V65 — DRAWER SELECTION LIST + LICENSE POLISH
========================= */
.work-license-pill{
  display:inline-flex;
  align-items:center;
  padding:.34rem .62rem;
  margin-right:.45rem;
  border-radius:999px;
  border:1px solid rgba(200,169,106,.26);
  background:rgba(200,169,106,.10);
  color:#c8a96a;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.66rem;
  vertical-align:middle;
}
.work-mini-cart-license{
  margin-top:.48rem;
  color:#d8c9ab;
  font-size:.74rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.work-mini-cart-license span{color:rgba(255,255,255,.54)}
.work-mini-cart-selection-list-wrap{
  margin-top:.95rem;
  padding:.85rem .95rem;
  border-radius:16px;
  background:rgba(255,255,255,.028);
  border:1px solid rgba(255,255,255,.05);
}
.work-mini-cart-selection-title{
  margin-bottom:.7rem;
  color:#c8a96a;
  font-size:.68rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.work-mini-cart-selection-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.55rem;
}
.work-mini-cart-selection-list li{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:.7rem;
  align-items:center;
}
.work-mini-cart-selection-list li.is-empty{
  grid-template-columns:1fr;
  color:#b9af9e;
  font-size:.9rem;
}
.work-mini-cart-selection-list .selection-thumb{
  width:38px;
  height:38px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(200,169,106,.18);
  background:rgba(255,255,255,.04);
}
.work-mini-cart-selection-list .selection-thumb.is-placeholder{
  background:linear-gradient(180deg,rgba(200,169,106,.12),rgba(255,255,255,.04));
}
.work-mini-cart-selection-list .selection-thumb img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.work-mini-cart-selection-list .selection-copy{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#f1ece2;
  font-size:.88rem;
}
.work-mini-cart-selection-more{
  margin-top:.7rem;
  color:#b9af9e;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
@media (max-width:767px){
  .work-mini-cart-selection-list li{grid-template-columns:34px minmax(0,1fr);gap:.6rem}
  .work-mini-cart-selection-list .selection-thumb{width:34px;height:34px;border-radius:10px}
}


/* =========================
   V67 — HOMEPAGE COMPLETE
========================= */
.sabino-manifesto-section{position:relative;overflow:hidden}
.sabino-manifesto-shell{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:34px;align-items:stretch}
.sabino-manifesto-main,.sabino-manifesto-side{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.sabino-manifesto-main{padding:38px 38px 34px;position:relative}
.sabino-manifesto-main:before{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at top left,rgba(200,169,106,.12),transparent 38%);pointer-events:none}
.sabino-manifesto-title{margin:0 0 16px;font-family:var(--serif);font-size:clamp(2.6rem,5.2vw,4.8rem);line-height:.92;letter-spacing:-.03em;max-width:12ch}
.sabino-manifesto-copy{max-width:56ch;color:var(--muted);font-size:1.04rem;line-height:1.8;margin:0}
.sabino-manifesto-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.sabino-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.sabino-pill-row span{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;border:1px solid rgba(200,169,106,.22);background:rgba(200,169,106,.08);color:#efe3c7;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}
.sabino-manifesto-side{padding:20px;display:grid;grid-template-columns:1fr;gap:14px}
.sabino-manifesto-card{padding:20px 18px;border-radius:22px;border:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.02)}
.sabino-manifesto-card .meta{display:block;margin-bottom:10px;color:var(--gold);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.sabino-manifesto-card h3{margin:0 0 8px;font-size:1.1rem;line-height:1.15}
.sabino-manifesto-card p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.7}
.sabino-home-signature{padding-top:0}
.sabino-home-signature .section-head{margin-bottom:28px}
.sabino-home-signature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sabino-home-signature-card{padding:24px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.sabino-home-signature-card .kicker{display:block;margin-bottom:12px;color:var(--gold);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.sabino-home-signature-card h3{margin:0 0 8px}
.sabino-home-signature-card p{margin:0;color:var(--muted);line-height:1.7}
@media (max-width:1100px){
  .sabino-manifesto-shell{grid-template-columns:1fr}
  .sabino-home-signature-grid{grid-template-columns:1fr}
}
@media (max-width:720px){
  .sabino-manifesto-main{padding:26px 22px}
  .sabino-manifesto-side{padding:14px}
  .sabino-manifesto-title{font-size:clamp(2.1rem,11vw,3.2rem)}
}


/* =========================
   V68 — HOME ART DIRECTION
========================= */
.sabino-home-intro-section{padding-top:38px}
.sabino-home-intro-shell{display:grid;grid-template-columns:1.06fr .94fr;gap:28px;align-items:start;background:linear-gradient(180deg,rgba(13,13,13,.92),rgba(8,8,8,.98));border:1px solid var(--line);box-shadow:var(--shadow);padding:38px}
.sabino-home-intro-title{margin:0;font-family:var(--serif);font-size:clamp(2.9rem,5vw,5.6rem);line-height:.9;font-weight:500;max-width:12ch}
.sabino-home-intro-text{max-width:720px;color:var(--muted);font-size:1.02rem;margin:18px 0 0}
.sabino-home-intro-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.sabino-home-intro-note{display:inline-flex;border:1px solid rgba(200,169,106,.26);padding:11px 16px;text-transform:uppercase;letter-spacing:.18em;font-size:.64rem;color:var(--gold);margin-bottom:18px}
.sabino-home-intro-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.sabino-home-intro-card,.sabino-signature-card,.sabino-spotlight-card{background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012));border:1px solid var(--line);padding:24px;box-shadow:var(--shadow)}
.sabino-home-intro-card span,.sabino-signature-card .meta,.sabino-spotlight-meta{display:block;text-transform:uppercase;letter-spacing:.22em;font-size:.62rem;color:var(--gold);margin-bottom:12px}
.sabino-home-intro-card strong{display:block;font-family:var(--serif);font-size:1.42rem;font-weight:500;line-height:1.05;margin-bottom:10px}
.sabino-home-intro-card p,.sabino-signature-card p,.sabino-spotlight-card p{margin:0;color:var(--muted)}
.sabino-manifesto-shell{grid-template-columns:1.05fr .95fr;gap:28px}
.sabino-manifesto-main,.sabino-manifesto-side{background:linear-gradient(180deg,rgba(12,12,12,.88),rgba(8,8,8,.96));border:1px solid var(--line);box-shadow:var(--shadow)}
.sabino-manifesto-main{padding:40px}
.sabino-manifesto-side{padding:18px;display:grid;gap:16px}
.sabino-manifesto-card{padding:22px;background:rgba(255,255,255,.015);border:1px solid rgba(255,255,255,.06)}
.sabino-manifesto-card h3{margin:0 0 10px;font-family:var(--serif);font-size:1.75rem;font-weight:500;line-height:1}
.sabino-manifesto-card p{margin:0;color:var(--muted)}
.sabino-pill-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.sabino-pill-row span{border:1px solid rgba(255,255,255,.08);padding:9px 13px;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(244,237,225,.7)}
.sabino-spotlight-shell{display:grid;grid-template-columns:1.12fr .88fr;gap:28px;align-items:stretch}
.sabino-spotlight-media a,.sabino-spotlight-media span{display:block;height:100%}
.sabino-spotlight-media a{min-height:640px;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.sabino-spotlight-media span{background-size:cover;background-position:center;transform:scale(1.001);transition:transform 1.6s ease}
.sabino-spotlight-media a:hover span{transform:scale(1.04)}
.sabino-spotlight-copy{display:grid;grid-template-rows:auto 1fr;gap:22px}
.sabino-spotlight-card h3{margin:0 0 12px;font-family:var(--serif);font-size:2.1rem;font-weight:500;line-height:.96}
.sabino-spotlight-card .btn-ghost{margin-top:18px}
.story-grid-dynamic{grid-template-columns:repeat(3,1fr);gap:28px}
.story-grid-dynamic .story-card,.works-showcase .work-card{background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008));border:1px solid var(--line);box-shadow:var(--shadow)}
.story-grid-dynamic .story-card .media{aspect-ratio:4/5}
.story-grid-dynamic .story-card .content{padding:20px 24px 24px}
.story-grid-dynamic .story-card h3{margin:0 0 10px;font-family:var(--serif);font-size:1.7rem;font-weight:500;line-height:1}
.story-grid-dynamic .story-card p{margin:0;color:var(--muted)}
.story-grid-dynamic .story-card .story-cta{display:inline-flex;align-items:center;gap:10px;margin-top:16px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.sabino-signature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sabino-signature-card h3{margin:0 0 10px;font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.02}
.works-showcase .works-grid{gap:22px}
.works-showcase .work-card-media{aspect-ratio:4/5}
.works-showcase .work-card-content{padding:20px 22px 22px}
.works-showcase .work-card h3{margin:0;font-family:var(--serif);font-size:1.65rem;font-weight:500;line-height:1}
.sabino-instagram-section .instagram-grid{grid-template-columns:repeat(6,1fr);gap:16px}
.sabino-instagram-section .instagram-card{border:1px solid var(--line);background:rgba(255,255,255,.01);padding:12px}
.sabino-instagram-section .instagram-card-media{aspect-ratio:1/1;display:block;background-size:cover;background-position:center}
.sabino-instagram-section .instagram-card-caption{display:block;padding-top:10px;text-transform:uppercase;letter-spacing:.18em;font-size:.62rem;color:rgba(244,237,225,.48)}
@media (max-width:1200px){
  .sabino-home-intro-shell,.sabino-spotlight-shell,.sabino-manifesto-shell,.sabino-signature-grid{grid-template-columns:1fr}
  .sabino-home-intro-grid{grid-template-columns:repeat(2,1fr)}
  .sabino-instagram-section .instagram-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:820px){
  .sabino-home-intro-shell,.sabino-manifesto-main,.sabino-manifesto-side{padding:22px}
  .sabino-home-intro-grid,.sabino-signature-grid,.story-grid-dynamic,.sabino-instagram-section .instagram-grid{grid-template-columns:1fr}
  .sabino-spotlight-media a{min-height:420px}
  .sabino-home-intro-title{font-size:3rem}
}

/* =========================
   V69 — backend home controls + top horizontal menu
========================= */
.site-header.site-header-v69{pointer-events:auto;background:rgba(6,6,6,.58);backdrop-filter:blur(10px);border-bottom:1px solid rgba(244,237,225,.08)}
.header-inner.header-inner-v69{width:min(100%,var(--max));margin:0 auto;padding:14px 28px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px}
.top-nav{display:flex;justify-content:flex-end;pointer-events:auto}
.top-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.top-nav li{position:relative}
.top-nav a{display:block;padding:10px 14px;border-radius:999px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;color:rgba(244,237,225,.84)}
.top-nav a:hover,.top-nav li:hover>a{border-color:rgba(200,169,106,.28);background:rgba(200,169,106,.06);color:var(--text)}
.top-nav .sub-menu{display:none;position:absolute;top:calc(100% + 10px);left:0;min-width:220px;background:rgba(8,8,8,.96);border:1px solid rgba(244,237,225,.10);border-radius:18px;padding:10px;box-shadow:0 24px 60px rgba(0,0,0,.42)}
.top-nav .sub-menu li{width:100%}
.top-nav .sub-menu a{border-radius:12px;padding:10px 12px;font-size:.64rem;white-space:nowrap}
.top-nav li:hover>.sub-menu,.top-nav li:focus-within>.sub-menu{display:block}
.site-header-v69 .branding-wrap{min-width:0}
.site-header-v69 .branding{padding:0;background:none;border:0}
.site-header-v69 .branding a{gap:12px}
.site-header-v69 .branding-overlay,.site-header-v69 .side-label{display:none}
.site-header-v69 + .side-nav{display:none !important}
body.admin-bar .site-header.site-header-v69{top:32px}
main#top{padding-top:88px}
@media (max-width:980px){
  .header-inner.header-inner-v69{grid-template-columns:1fr auto;padding:14px 16px}
  .top-nav{display:none}
  .site-header-v69 + .side-nav{display:block !important}
  main#top{padding-top:84px}
}


/* =========================
   V70 — deeper home builder + cleaner mobile toggle
========================= */
.screen-reader-text{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.site-header.site-header-v69{background:rgba(6,6,6,.72)}
.header-inner.header-inner-v69{grid-template-columns:auto 1fr auto}
.mobile-toggle.menu-toggle-visible{
  display:none !important;
  min-width:44px !important;
  width:44px;
  height:44px;
  padding:0 !important;
  border-radius:999px;
  font-size:0 !important;
  line-height:0 !important;
}
.mobile-toggle-icon,
.mobile-toggle-icon::before,
.mobile-toggle-icon::after{
  display:block;
  width:16px;
  height:1.5px;
  background:var(--text);
  border-radius:999px;
  transition:transform .25s ease, opacity .25s ease, background .25s ease;
  content:"";
}
.mobile-toggle-icon{position:relative}
.mobile-toggle-icon::before{position:absolute;left:0;top:-5px}
.mobile-toggle-icon::after{position:absolute;left:0;top:5px}
.mobile-toggle[aria-expanded="true"] .mobile-toggle-icon{background:transparent}
.mobile-toggle[aria-expanded="true"] .mobile-toggle-icon::before{top:0;transform:rotate(45deg)}
.mobile-toggle[aria-expanded="true"] .mobile-toggle-icon::after{top:0;transform:rotate(-45deg)}
@media (min-width:981px){
  .mobile-toggle.menu-toggle-visible{display:none !important}
  .top-nav{display:flex !important}
}
@media (max-width:980px){
  .mobile-toggle.menu-toggle-visible{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    position:static;
    margin-left:auto;
    pointer-events:auto;
  }
  .header-inner.header-inner-v69{grid-template-columns:minmax(0,1fr) auto}
  .branding .brand-copy .brand-sub{display:none}
}

/* V70 home builder polish */
.customize-control textarea#_customize-input-sabino_noir_v70_home_order{
  min-height:240px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}


/* =========================
   V72 — HOME PHOTO-FIRST REFINEMENT
========================= */
.home main#top > .page-shell.sabino-home-shell{padding-top:14px;}
.sabino-home-shell > .section:first-child,
.sabino-home-content > .section:first-child{padding-top:28px;}
.section#portfolio .container,
.sabino-stories-section .container,
.works-showcase .container,
.sabino-featured-story .container{width:min(100%,1740px);}
.section#portfolio .section-head.compact-head,
.works-showcase .section-head.compact-head{margin-bottom:20px;}
.section#portfolio .section-title,
.sabino-stories-section .section-title,
.works-showcase .section-title{max-width:16ch;}

.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:34px;
  align-items:start;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card{
  grid-column:auto!important;
  margin:0;
  border-radius:0;
  box-shadow:0 26px 80px rgba(0,0,0,.20);
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .media{
  min-height:0!important;
  height:420px!important;
  aspect-ratio:auto!important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-s .media{height:430px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-m .media{height:520px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-tall .media{height:700px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 2!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide .media{height:390px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .content{
  padding:24px 22px 22px!important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card h3{
  font-size:clamp(1.55rem,2vw,2.2rem)!important;
  max-width:13ch!important;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card p{
  font-size:.92rem!important;
  line-height:1.58!important;
}

.sabino-stories-section .story-grid-dynamic{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:34px;
}
.sabino-stories-section .story-grid-dynamic .story-card:first-child{
  grid-column:span 2;
}
.sabino-stories-section .story-grid-dynamic .story-card .media{
  aspect-ratio:4/3;
  min-height:360px;
}
.sabino-stories-section .story-grid-dynamic .story-card:first-child .media{
  aspect-ratio:16/8;
  min-height:500px;
}
.sabino-stories-section .story-grid-dynamic .story-card h3{
  font-size:clamp(1.8rem,2.1vw,2.5rem);
}

.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:30px!important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .work-card{
  border-radius:0;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .work-card-media{
  height:420px;
  aspect-ratio:auto!important;
}
.works-showcase .works-grid .portfolio-card:nth-child(3n+2) .media,
.works-showcase .work-card:nth-child(3n+2) .work-card-media{height:520px;}
.works-showcase .works-grid .portfolio-card:nth-child(3n) .media,
.works-showcase .work-card:nth-child(3n) .work-card-media{height:360px;}

@media (max-width:1200px){
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29{grid-template-columns:repeat(2,minmax(0,1fr));}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 1!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide .media{height:430px!important;}
  .sabino-stories-section .story-grid-dynamic .story-card:first-child{grid-column:auto;}
  .sabino-stories-section .story-grid-dynamic .story-card:first-child .media{aspect-ratio:4/3;min-height:380px;}
}
@media (max-width:820px){
  .section#portfolio .container,
  .sabino-stories-section .container,
  .works-showcase .container,
  .sabino-featured-story .container{width:min(100%,calc(100% - 28px));}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29{grid-template-columns:1fr;gap:22px;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .media,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card:nth-child(n) .media{height:340px!important;}
  .sabino-stories-section .story-grid-dynamic{grid-template-columns:1fr;gap:22px;}
  .sabino-stories-section .story-grid-dynamic .story-card .media,
  .sabino-stories-section .story-grid-dynamic .story-card:first-child .media{aspect-ratio:4/3;min-height:280px;}
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:1fr!important;gap:22px!important;}
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .work-card-media,
  .works-showcase .works-grid .portfolio-card:nth-child(n) .media,
  .works-showcase .work-card:nth-child(n) .work-card-media{height:320px;}
}


/* =========================
   V73 — LEICA / MONOCLE HOME REFINEMENT
========================= */
:root{
  --home-max:1880px;
}
.home main#top > .page-shell.sabino-home-shell{padding-top:8px;}
.section#portfolio,
.sabino-manifesto-section,
.sabino-stories-section,
.works-showcase{position:relative;}
.section#portfolio .container,
.sabino-manifesto-section .container,
.sabino-stories-section .container,
.works-showcase .container,
.sabino-featured-story .container{width:min(100%,var(--home-max));}
.section#portfolio .section-head.compact-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;margin-bottom:24px;}
.section#portfolio .section-head .section-title{font-size:clamp(2.3rem,4.4vw,4.9rem);line-height:.88;letter-spacing:-.04em;max-width:9ch;}
.section#portfolio .section-head .eyebrow,
.sabino-stories-section .eyebrow,
.works-showcase .eyebrow,
.sabino-manifesto-section .eyebrow{color:rgba(244,237,225,.54);letter-spacing:.24em;}
.section#portfolio .portfolio-toolbar{justify-content:flex-end;gap:10px;margin-bottom:18px;}
.section#portfolio .filter-chip{padding:11px 16px;border-radius:999px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);}
.section#portfolio .filter-chip.active{background:rgba(200,169,106,.1);border-color:rgba(200,169,106,.25);}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29{
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:36px;
}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card{grid-column:span 4!important;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008));}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide{grid-column:span 8!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-s .media{height:460px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-m .media{height:580px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-tall .media{height:760px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide .media{height:430px!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .portfolio-overlay,
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .content{background:linear-gradient(180deg,transparent 8%,rgba(5,5,5,.16) 42%,rgba(5,5,5,.88) 100%);}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card h3{font-size:clamp(1.7rem,2vw,2.55rem)!important;max-width:11ch!important;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card p{max-width:40ch;}
.section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card:hover .media{transform:scale(1.03);}

.sabino-manifesto-section{padding-top:56px;}
.sabino-manifesto-shell{grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);gap:34px;}
.sabino-manifesto-main{padding:46px 48px 42px;border-radius:0;position:relative;overflow:hidden;}
.sabino-manifesto-main:after{content:'';position:absolute;right:-12%;top:-14%;width:44%;height:140%;background:radial-gradient(circle,rgba(200,169,106,.12),transparent 60%);pointer-events:none;}
.sabino-manifesto-title{font-size:clamp(3rem,4.8vw,5.7rem);max-width:10ch;}
.sabino-manifesto-copy{font-size:1.08rem;line-height:1.92;max-width:60ch;}
.sabino-manifesto-side{border-radius:0;gap:18px;padding:22px;}
.sabino-manifesto-card{border-radius:0;padding:26px 24px;}
.sabino-manifesto-card h3{font-size:1.95rem;}
.sabino-manifesto-actions .btn,.sabino-manifesto-actions .btn-ghost{min-width:180px;justify-content:center;}

.sabino-stories-section{padding-top:64px;}
.sabino-stories-section .section-head{margin-bottom:28px;}
.sabino-stories-section .section-title{font-size:clamp(2.2rem,4vw,4.2rem);line-height:.92;max-width:10ch;}
.sabino-stories-section .story-grid-dynamic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:34px;}
.sabino-stories-section .story-grid-dynamic .story-card{grid-column:span 4;background:linear-gradient(180deg,rgba(255,255,255,.014),rgba(255,255,255,.006));border-radius:0;overflow:hidden;}
.sabino-stories-section .story-grid-dynamic .story-card:first-child{grid-column:span 8;}
.sabino-stories-section .story-grid-dynamic .story-card:first-child .media{aspect-ratio:16/9;min-height:560px;}
.sabino-stories-section .story-grid-dynamic .story-card:not(:first-child) .media{aspect-ratio:4/5;min-height:360px;}
.sabino-stories-section .story-grid-dynamic .story-card h3{font-size:clamp(1.6rem,2vw,2.55rem);max-width:12ch;}
.sabino-stories-section .story-grid-dynamic .story-card p{line-height:1.78;max-width:48ch;}
.sabino-stories-section .story-grid-dynamic .story-card .content{padding:22px 24px 26px;}

.works-showcase{padding-top:64px;}
.works-showcase .section-head{margin-bottom:28px;}
.works-showcase .section-title{font-size:clamp(2.15rem,4.2vw,4.8rem);line-height:.9;max-width:8ch;}
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:32px!important;
}
.works-showcase .works-grid .portfolio-card{grid-column:span 4!important;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.016),rgba(255,255,255,.006));}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1),
.works-showcase .works-grid .portfolio-card.wide{grid-column:span 8!important;}
.works-showcase .works-grid .portfolio-card .media{height:440px!important;}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1) .media{height:420px!important;}
.works-showcase .works-grid .portfolio-card:nth-child(3n+2) .media{height:560px!important;}
.works-showcase .works-grid .portfolio-card .content{padding:22px 22px 24px;}
.works-showcase .works-grid .portfolio-card h3{font-size:clamp(1.35rem,1.9vw,2.05rem);line-height:1;}
.works-showcase .works-grid .portfolio-card p{line-height:1.72;}

.site-header.site-header-v69{background:rgba(6,6,6,.78);backdrop-filter:blur(14px);}
.site-header-v69 .top-nav ul{gap:26px;}
.site-header-v69 .top-nav a{font-size:.77rem;letter-spacing:.2em;}
.site-header-v69 .branding a{gap:14px;}

@media (max-width:1380px){
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29,
  .sabino-stories-section .story-grid-dynamic,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card,
  .sabino-stories-section .story-grid-dynamic .story-card,
  .works-showcase .works-grid .portfolio-card{grid-column:span 3!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide,
  .sabino-stories-section .story-grid-dynamic .story-card:first-child,
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 6!important;}
}
@media (max-width:980px){
  .section#portfolio .section-head.compact-head{grid-template-columns:1fr;}
  .section#portfolio .portfolio-toolbar{justify-content:flex-start;overflow:auto;padding-bottom:4px;}
  .sabino-manifesto-shell{grid-template-columns:1fr;}
  .sabino-manifesto-main,.sabino-manifesto-side{border-radius:24px;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29,
  .sabino-stories-section .story-grid-dynamic,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card,
  .sabino-stories-section .story-grid-dynamic .story-card,
  .works-showcase .works-grid .portfolio-card{grid-column:span 1!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide,
  .sabino-stories-section .story-grid-dynamic .story-card:first-child,
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 2!important;}
  .sabino-stories-section .story-grid-dynamic .story-card:first-child .media{min-height:420px;}
}
@media (max-width:720px){
  .section#portfolio .container,
  .sabino-manifesto-section .container,
  .sabino-stories-section .container,
  .works-showcase .container,
  .sabino-featured-story .container{width:min(100%,calc(100% - 22px));}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29,
  .sabino-stories-section .story-grid-dynamic,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:1fr!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card.tile-wide,
  .sabino-stories-section .story-grid-dynamic .story-card,
  .sabino-stories-section .story-grid-dynamic .story-card:first-child,
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 1!important;}
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card .media,
  .section#portfolio .portfolio-grid.dynamic-grid.portfolio-masonry-v29 .portfolio-card:nth-child(n) .media{height:340px!important;}
  .sabino-manifesto-main{padding:30px 24px 28px;}
  .sabino-manifesto-title{font-size:clamp(2.4rem,11vw,3.5rem);}
  .sabino-stories-section .story-grid-dynamic .story-card:first-child .media,
  .sabino-stories-section .story-grid-dynamic .story-card:not(:first-child) .media,
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .works-grid .portfolio-card:nth-child(n) .media{min-height:0;height:320px!important;}
}


/* =========================
   V74 — NAV / HOME / HERO / WORKS
========================= */
.section#portfolio .filter-chip,
.section#portfolio .filter-chip.active,
.section#portfolio .filter-chip:hover{color:#fff!important}
.section#portfolio .filter-chip.active{background:rgba(200,169,106,.12)!important;border-color:rgba(200,169,106,.34)!important}
.section-head-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;max-width:520px}
.section-link-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid rgba(255,255,255,.14);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;border-radius:999px;transition:all .28s ease;background:rgba(255,255,255,.02)}
.section-link-button:hover{border-color:rgba(200,169,106,.45);background:rgba(200,169,106,.1);color:#fff;transform:translateY(-1px)}
.sabino-stories-section .section-head{align-items:end}
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:26px!important}
.works-showcase .works-grid .portfolio-card{grid-column:span 4!important}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1),
.works-showcase .works-grid .portfolio-card.wide{grid-column:span 8!important}
.works-showcase .works-grid .portfolio-card .media{height:360px!important}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1) .media,
.works-showcase .works-grid .portfolio-card:nth-child(3n+2) .media,
.works-showcase .works-grid .portfolio-card:nth-child(3n) .media{height:360px!important}
.works-showcase .work-date-pill{color:#fff;border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.08)}
.footer-cta{padding-top:72px}
.hero{min-height:78svh}
.hero-slider,.hero-media{background:#060606}
.hero-slide img,.hero-media img{object-fit:cover!important;object-position:center 38%!important;filter:brightness(1.02) contrast(1.01) saturate(1.01)!important}
.hero.has-slider .hero-slide img{object-position:center 34%!important}
.hero-inner{padding-top:clamp(112px,14vh,160px)}
.hero-copy{max-width:720px}
@media (min-width:1200px){
  .hero{min-height:80svh}
}
@media (max-width:1100px){
  .section-head-actions{max-width:none}
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .works-showcase .works-grid .portfolio-card{grid-column:span 3!important}
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1),
  .works-showcase .works-grid .portfolio-card.wide{grid-column:span 6!important}
}
@media (max-width:767px){
  .sabino-stories-section .section-head{align-items:start}
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:1fr!important}
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1),
  .works-showcase .works-grid .portfolio-card.wide{grid-column:span 1!important}
  .works-showcase .works-grid .portfolio-card .media{height:300px!important}
  .hero{min-height:72svh}
  .hero-slide img,.hero-media img,.hero.has-slider .hero-slide img{object-position:center 32%!important}
}


/* =========================
   V76 — WORKS LANDSCAPE 3:2
========================= */
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:28px!important;
}
.works-showcase .works-grid .portfolio-card{
  grid-column:span 4!important;
  border-radius:18px;
  overflow:hidden;
}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1),
.works-showcase .works-grid .portfolio-card.wide{
  grid-column:span 6!important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card:nth-child(5n+1) .media,
.works-showcase .works-grid .portfolio-card:nth-child(3n+2) .media,
.works-showcase .works-grid .portfolio-card:nth-child(3n) .media{
  height:auto!important;
  aspect-ratio:3/2!important;
  background-size:cover!important;
  background-position:center center!important;
}
.works-showcase .works-grid .portfolio-card .content{
  padding:20px 22px 22px;
}
.works-showcase .works-grid .portfolio-card h3{
  font-size:clamp(1.3rem,1.6vw,1.9rem);
  line-height:1.02;
}
.works-showcase .works-grid .portfolio-card p{
  line-height:1.6;
}
@media (max-width: 1100px){
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  .works-showcase .works-grid .portfolio-card{grid-column:span 3!important;}
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1),
  .works-showcase .works-grid .portfolio-card.wide{grid-column:span 6!important;}
}
@media (max-width: 767px){
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card:nth-child(5n+1),
  .works-showcase .works-grid .portfolio-card.wide{grid-column:span 1!important;}
  .works-showcase .works-grid .portfolio-card .media{aspect-ratio:3/2!important;}
}


/* =========================
   V77 — WORKS FEATURED LANDSCAPE
========================= */
.works-showcase .works-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:stretch}
.works-showcase .works-grid .portfolio-card{grid-column:span 4;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);overflow:hidden}
.works-showcase .works-grid .portfolio-card:first-child{grid-column:span 8}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link{aspect-ratio:3/2 !important;min-height:0 !important;background-position:center center}
.works-showcase .works-grid .portfolio-card .content{padding:22px 22px 20px}
.works-showcase .works-grid .portfolio-card h3{font-size:clamp(1.55rem,2vw,2.3rem);line-height:.95;max-width:12ch}
.works-showcase .works-grid .portfolio-card p{font-size:.98rem;line-height:1.45;max-width:40ch}
.works-showcase .works-grid .portfolio-card .work-card-topline{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.works-showcase .works-grid .portfolio-card .work-card-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.works-showcase .works-grid .portfolio-card .work-date-pill{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid rgba(200,169,106,.28);border-radius:999px;background:rgba(200,169,106,.12);color:#f3e6c5;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase}
@media (max-width:1100px){.works-showcase .works-grid .portfolio-card,.works-showcase .works-grid .portfolio-card:first-child{grid-column:span 6}}
@media (max-width:760px){.works-showcase .works-grid{grid-template-columns:1fr;gap:20px}.works-showcase .works-grid .portfolio-card,.works-showcase .works-grid .portfolio-card:first-child{grid-column:span 1}.works-showcase .works-grid .portfolio-card .content{padding:18px 18px 16px}}


/* =========================
   V78 — HOME COMPLETION + WORKS LANDSCAPE
========================= */
body.home #footer-cta{display:none;}

/* Keep a single contact section on the home via the builder */
.home .contact-cta.section,
.home .contact-cta{display:block;}

/* Works showcase: larger, horizontal 3:2 cards */
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:30px!important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .works-grid .portfolio-card.small,
.works-showcase .works-grid .portfolio-card.medium,
.works-showcase .works-grid .portfolio-card.tall,
.works-showcase .works-grid .portfolio-card.wide{
  grid-column:span 6!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008));
}
.works-showcase .works-grid .portfolio-card:first-child{
  grid-column:1 / -1!important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card:nth-child(n) .media{
  height:auto!important;
  aspect-ratio:3 / 2!important;
  min-height:0!important;
  background-size:cover!important;
  background-position:center center!important;
}
.works-showcase .works-grid .portfolio-card:first-child .media{
  aspect-ratio:16 / 7!important;
}
.works-showcase .works-grid .portfolio-card .content{
  padding:20px 22px 24px!important;
}
.works-showcase .works-grid .portfolio-card h3{
  font-size:clamp(1.5rem,1.8vw,2.15rem)!important;
  line-height:.98!important;
}
.works-showcase .works-grid .portfolio-card p{
  max-width:52ch;
}
.works-showcase .work-card-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.works-showcase .work-card-tags{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.works-showcase .work-date-pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}

@media (max-width: 1100px){
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card.small,
  .works-showcase .works-grid .portfolio-card.medium,
  .works-showcase .works-grid .portfolio-card.tall,
  .works-showcase .works-grid .portfolio-card.wide,
  .works-showcase .works-grid .portfolio-card:first-child{
    grid-column:span 6!important;
  }
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .works-grid .portfolio-card:first-child .media{
    aspect-ratio:3 / 2!important;
  }
}
@media (max-width: 760px){
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card.small,
  .works-showcase .works-grid .portfolio-card.medium,
  .works-showcase .works-grid .portfolio-card.tall,
  .works-showcase .works-grid .portfolio-card.wide,
  .works-showcase .works-grid .portfolio-card:first-child{
    grid-column:span 1!important;
  }
}


/* =========================
   V79 — Full demo content + stronger works cards
========================= */
.works-showcase .works-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:30px !important;
}
.works-showcase .works-grid .portfolio-card{
  grid-column:auto !important;
  width:100% !important;
  margin:0 !important;
  break-inside:auto !important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link{
  aspect-ratio:3 / 2 !important;
  height:auto !important;
  min-height:0 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.works-showcase .works-grid .portfolio-card:first-child{
  grid-column:span 2 !important;
}
.works-showcase .works-grid .portfolio-card:first-child .media,
.works-showcase .works-grid .portfolio-card:first-child .media-link{
  aspect-ratio:16 / 9 !important;
}
.works-showcase .works-grid .portfolio-card .content{
  padding:22px 22px 20px !important;
}
.works-showcase .works-grid .portfolio-card h3{
  font-size:clamp(1.5rem,2vw,2.2rem) !important;
  line-height:.98 !important;
  max-width:15ch !important;
}
.works-showcase .works-grid .portfolio-card p{
  display:block !important;
  opacity:.9 !important;
  max-height:none !important;
}
.works-showcase .works-grid .work-date-pill{
  background:rgba(200,169,106,.22) !important;
  border:1px solid rgba(200,169,106,.35) !important;
  color:#fff !important;
}
@media (max-width: 1024px){
  .works-showcase .works-grid{grid-template-columns:1fr !important;}
  .works-showcase .works-grid .portfolio-card:first-child{grid-column:auto !important;}
  .works-showcase .works-grid .portfolio-card:first-child .media,
  .works-showcase .works-grid .portfolio-card:first-child .media-link{aspect-ratio:3 / 2 !important;}
}


/* =========================
   V80 — Hero slide backend controls
========================= */
.hero-slide img{object-position:var(--slide-position,50% 50%)!important;object-fit:var(--slide-fit,cover)!important;transform:scale(var(--slide-scale,1))!important;transform-origin:center center!important;}
.hero-slide{overflow:hidden;}
.hero-slide img[style*="--slide-fit:contain"]{background:#050505;}


/* =========================
   V82 — HARDENING + HOME / HERO / WORKS
========================= */

/* Performance-friendly rendering */
.hero-slide img,
.hero-media img,
.portfolio-card .media,
.work-card-media,
.story-card-media img{
  image-rendering:auto;
  backface-visibility:hidden;
}

/* Front page hero always present and cleaner */
.hero{
  overflow:hidden;
}
.hero-slider .hero-slide img,
.hero .hero-media img{
  width:100%;
  height:100%;
  object-fit:var(--slide-fit, cover);
  object-position:var(--slide-position, 50% 50%);
  transform:scale(var(--slide-scale, 1));
}
.hero-slider .hero-slide{
  will-change:opacity,transform;
}
.hero-inner{
  position:relative;
  z-index:4;
}

/* Works showcase — force true horizontal 3:2 cards */
.works-showcase .works-grid,
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  display:grid !important;
  grid-template-columns:repeat(12,minmax(0,1fr)) !important;
  gap:28px !important;
  align-items:stretch !important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .work-card{
  grid-column:span 6 !important;
  min-width:0 !important;
  border-radius:22px !important;
  overflow:hidden !important;
}
.works-showcase .works-grid .portfolio-card:first-child,
.works-showcase .works-grid .portfolio-card.wide{
  grid-column:span 6 !important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link,
.works-showcase .work-card-media{
  aspect-ratio:3 / 2 !important;
  height:auto !important;
  min-height:0 !important;
  background-position:center center !important;
  background-size:cover !important;
}
.works-showcase .works-grid .portfolio-card .content,
.works-showcase .work-card-content{
  padding:22px 22px 20px !important;
}
.works-showcase .works-grid .portfolio-card h3,
.works-showcase .work-card h3{
  font-size:clamp(1.35rem,1.8vw,2rem) !important;
  line-height:1 !important;
}
.works-showcase .works-grid .portfolio-card p,
.works-showcase .work-card p{
  font-size:.96rem !important;
  line-height:1.45 !important;
}
.works-showcase .work-card-topline{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  flex-wrap:wrap;
}
.works-showcase .work-date-pill,
.works-showcase .work-card-date{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border:1px solid rgba(200,169,106,.28);
  border-radius:999px;
  background:rgba(200,169,106,.12);
  color:#f3e6c5;
  font-size:.66rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}
@media (max-width: 1100px){
  .works-showcase .works-grid,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:22px !important;
  }
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .work-card,
  .works-showcase .works-grid .portfolio-card:first-child,
  .works-showcase .works-grid .portfolio-card.wide{
    grid-column:span 1 !important;
  }
}
@media (max-width: 767px){
  .works-showcase .works-grid,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .work-card,
  .works-showcase .works-grid .portfolio-card:first-child,
  .works-showcase .works-grid .portfolio-card.wide{
    grid-column:span 1 !important;
  }
  .works-showcase .works-grid .portfolio-card .content,
  .works-showcase .work-card-content{
    padding:18px 18px 16px !important;
  }
}

/* Keep footer CTA off the front page when home already contains contact CTA */
.home #footer-cta{display:none}


/* =========================
   V83 — HERO FIT + WORKS 4:3
========================= */
.hero,
.hero.has-slider,
.hero-slider,
.hero-slide,
.hero-media{
  background:#050505 !important;
}
.hero-slider .hero-slide,
.hero .hero-media{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.hero-slide img,
.hero-slider .hero-slide img,
.hero .hero-media img{
  width:100% !important;
  height:100% !important;
  object-fit:var(--slide-fit, contain) !important;
  object-position:var(--slide-position, 50% 50%) !important;
  transform:scale(var(--slide-scale, 1)) !important;
  background:#050505 !important;
}
.hero-overlay{
  background:linear-gradient(90deg,rgba(0,0,0,.50) 0%,rgba(0,0,0,.18) 34%,rgba(0,0,0,.12) 66%,rgba(0,0,0,.22) 100%),linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.08) 38%,rgba(0,0,0,.24) 100%) !important;
}

.works-showcase .works-grid,
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:30px !important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .works-grid .portfolio-card:first-child,
.works-showcase .works-grid .portfolio-card.wide,
.works-showcase .work-card{
  grid-column:span 1 !important;
  width:100% !important;
  min-width:0 !important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link,
.works-showcase .work-card-media{
  aspect-ratio:4 / 3 !important;
  height:auto !important;
  min-height:0 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.works-showcase .works-grid .portfolio-card .content,
.works-showcase .work-card-content{
  padding:20px 20px 18px !important;
}
.works-showcase .works-grid .portfolio-card h3,
.works-showcase .work-card h3{
  font-size:clamp(1.25rem,1.6vw,1.8rem) !important;
  line-height:1.04 !important;
}
.works-showcase .works-grid .portfolio-card p,
.works-showcase .work-card p{
  font-size:.92rem !important;
  line-height:1.5 !important;
}
@media (max-width: 900px){
  .works-showcase .works-grid,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
}


/* =========================
   V84 — HERO FIT + WORKS LANDSCAPE 4:3 + HI-RES DELIVERY UI
========================= */
.hero,
.hero.has-slider{min-height:clamp(620px,88vh,940px);}
.hero-slider,.hero-media{background:#050505 !important;}
.hero-slide,
.hero-slider .hero-slide{display:flex;align-items:center;justify-content:center;background:#050505;}
.hero-slide img,
.hero-slider .hero-slide img,
.hero .hero-media img,
.hero-slide-image{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:var(--slide-position,50% 50%) !important;
  transform:scale(var(--slide-scale,1)) !important;
  background:#050505 !important;
  filter:brightness(1.01) contrast(1.01) saturate(1.01) !important;
}
@media (max-width:900px){
  .hero,.hero.has-slider{min-height:72vh;}
}
.works-showcase .works-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:30px !important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .works-grid .portfolio-card.small,
.works-showcase .works-grid .portfolio-card.medium,
.works-showcase .works-grid .portfolio-card.wide,
.works-showcase .works-grid .portfolio-card.tall{
  grid-column:auto !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  background:#0b0b0b !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  min-height:0 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.works-showcase .works-grid .portfolio-card .content{
  position:relative !important;
  inset:auto !important;
  padding:18px 18px 20px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.08) 100%) !important;
  transform:none !important;
  opacity:1 !important;
}
.works-showcase .works-grid .portfolio-card h3{font-size:clamp(1.55rem,2vw,2.15rem) !important;line-height:.98 !important;max-width:none !important;}
.works-showcase .works-grid .portfolio-card p{display:block !important;opacity:.84 !important;max-height:none !important;}
.works-showcase .works-grid .portfolio-card:first-child{grid-column:span 2 !important;}
.works-showcase .works-grid .portfolio-card:first-child .media,
.works-showcase .works-grid .portfolio-card:first-child .media-link{aspect-ratio:16 / 9 !important;}
@media (max-width:980px){
  .works-showcase .works-grid{grid-template-columns:1fr !important;gap:22px !important;}
  .works-showcase .works-grid .portfolio-card:first-child{grid-column:auto !important;}
  .works-showcase .works-grid .portfolio-card:first-child .media,
  .works-showcase .works-grid .portfolio-card:first-child .media-link,
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .works-grid .portfolio-card .media-link{aspect-ratio:4 / 3 !important;}
}


/* =========================
   V85 — HERO FULL-WIDTH ART DIRECTION
========================= */
.site-header.site-header-v69{
  top:0;
  left:0;
  right:0;
  padding:20px 28px 0;
  background:linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,0) 100%);
}
.header-inner.header-inner-v69{
  width:100%;
  max-width:none;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
}
.branding-wrap{flex:0 0 auto;}
.branding a{display:flex;align-items:flex-start;gap:10px;text-decoration:none;}
.brand-copy{display:flex;flex-direction:column;align-items:flex-start;}
.brand-main{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;line-height:1.15;}
.brand-sub{font-size:.48rem;letter-spacing:.28em;text-transform:uppercase;opacity:.75;margin-top:2px;}
.top-nav{margin-left:auto;}
.top-nav > ul{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap;}
.top-nav > ul > li > a{font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;padding:6px 0;color:rgba(244,237,225,.84);}
.hero,
.hero.has-slider{
  min-height:100svh !important;
  background:#050505;
}
.hero-slider,
.hero-media,
.hero-slide,
.hero-slider .hero-slide{
  position:absolute;
  inset:0;
  background:#050505;
}
.hero-slide img,
.hero-slider .hero-slide img,
.hero .hero-media img,
.hero-slide-image{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:var(--slide-position,50% 50%) !important;
  transform:scale(var(--slide-scale,1)) !important;
  background:#050505 !important;
}
.hero-overlay{
  background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.38) 18%,rgba(0,0,0,.10) 44%,rgba(0,0,0,.12) 100%) !important;
}
.hero-vignette{box-shadow:inset 0 0 140px rgba(0,0,0,.20), inset 0 0 16px rgba(0,0,0,.14) !important;}
.hero-noise,.side-label,.hero-progress,.hero-social,.scroll-indicator{display:none !important;}
.hero-inner,
.page-hero-inner{
  width:100%;
  max-width:none;
  margin:0;
  padding:128px 34px 38px;
  min-height:100svh;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.hero-copy{
  max-width:280px;
  padding:0;
  margin-top:4vh;
}
.hero-kicker{
  margin-bottom:16px;
  font-size:.48rem;
  letter-spacing:.26em;
  color:rgba(198,151,61,.88);
}
.hero-kicker:before{width:18px;}
.hero-copy h1,
.page-hero-inner h1{
  font-size:clamp(2.7rem,4vw,4.3rem);
  line-height:.9;
  letter-spacing:-.035em;
  max-width:5ch;
}
.hero-copy h2{
  margin-top:10px;
  font-size:clamp(2.3rem,3.5vw,3.6rem);
  line-height:.9;
  letter-spacing:-.03em;
  max-width:5ch;
}
.hero-taxonomy{
  margin-top:16px;
  font-size:.5rem;
  letter-spacing:.22em;
  color:rgba(198,151,61,.82);
  max-width:220px;
}
.hero-actions{margin-top:18px;gap:12px;align-items:center;}
.hero-actions .btn,
.hero-actions .btn-ghost{
  padding:10px 14px;
  font-size:.58rem;
  letter-spacing:.24em;
}
.hero-side-note.no-label{align-self:flex-end;padding-bottom:8px;}
.hero-dots{gap:6px;}
.hero-dot{width:18px;height:2px;}
.hero-arrow{width:34px;height:34px;background:rgba(5,5,5,.26);}
@media (max-width: 980px){
  .site-header.site-header-v69{padding:18px 18px 0;}
  .top-nav{display:none;}
  .mobile-toggle{display:grid !important;}
  .hero-inner,.page-hero-inner{padding:104px 18px 28px;align-items:flex-end;}
  .hero-copy{max-width:220px;margin-top:0;padding-bottom:8vh;}
  .hero-copy h1,.page-hero-inner h1{font-size:clamp(2.2rem,11vw,3rem);}
  .hero-copy h2{font-size:clamp(2rem,10vw,2.7rem);}
  .hero-side-note.no-label{display:none;}
}


/* =========================
   V86 — HERO REFINEMENT + ABOUT MANIFESTO
========================= */
.site-header,.site-header-v69{left:0;right:0;width:100%;padding:0 24px;background:linear-gradient(180deg,rgba(4,4,4,.55),rgba(4,4,4,0));}
.header-inner,.header-inner-v69{width:min(100%,1560px);margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:24px;padding-top:22px;}
.branding-wrap{justify-self:start}.top-nav{justify-self:end;align-self:start}.top-nav ul{justify-content:flex-end;gap:24px}
.branding a{align-items:flex-start}.brand-main{font-size:.78rem;letter-spacing:.18em}.brand-sub{font-size:.5rem;letter-spacing:.28em;color:var(--gold)}
.hero,.page-hero{min-height:100svh;background:#050505;}
.hero-slider,.hero-slide,.hero-media{inset:0;width:100%;height:100%;}
.hero-slide img,.hero-media img,.page-hero-media img{width:100%;height:100%;object-fit:cover!important;object-position:center center!important;filter:brightness(.92) contrast(1.02) saturate(.97)!important;}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.34) 18%,rgba(0,0,0,.10) 46%,rgba(0,0,0,.18) 100%),linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.08) 28%,rgba(0,0,0,.28) 100%)!important;}
.hero-vignette{box-shadow:inset 0 0 120px rgba(0,0,0,.18), inset 0 0 20px rgba(0,0,0,.08)!important;}
.hero-inner,.page-hero-inner{width:min(100%,1560px);padding:126px 28px 42px;align-items:center;justify-content:space-between;}
.hero-copy{max-width:360px!important;padding-bottom:0!important;padding-left:8px;}
.hero-kicker{font-size:.46rem!important;letter-spacing:.28em!important;margin-bottom:12px!important;opacity:.88}
.hero-kicker:before{width:16px}
.hero-copy h1{font-size:clamp(2.5rem,4.5vw,4.3rem)!important;line-height:.92!important;letter-spacing:-.03em!important;max-width:7ch!important;}
.hero-copy h2{font-size:clamp(2.2rem,4vw,3.9rem)!important;line-height:.92!important;margin-top:12px!important;max-width:6ch!important;}
.hero-taxonomy{margin-top:12px!important;font-size:.56rem!important;letter-spacing:.18em!important;max-width:28ch;color:rgba(206,163,72,.92)!important;}
.hero-actions{margin-top:18px!important;gap:12px!important}.hero-actions .btn,.hero-actions .btn-ghost{padding:10px 14px;font-size:.62rem;letter-spacing:.18em}
.hero-side-note.no-label,.scroll-indicator,.side-label,.hero-progress,.hero-social{display:none!important;}
.about-manifesto-box{margin-top:34px;padding:30px 28px;border:1px solid rgba(200,169,106,.22);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012));box-shadow:0 18px 40px rgba(0,0,0,.18)}
.about-manifesto-box .manifesto-eyebrow{margin-bottom:14px}
.about-manifesto-title{margin:0 0 18px;font-family:var(--serif);font-size:clamp(2rem,3vw,3rem);line-height:.92;font-weight:500;letter-spacing:-.02em}
.about-manifesto-text p{margin:0 0 16px;color:rgba(244,237,225,.84);max-width:72ch;font-size:1rem;line-height:1.78}
.about-manifesto-text p:last-child{margin-bottom:0}
@media (max-width:1100px){
  .header-inner,.header-inner-v69{grid-template-columns:auto 1fr auto;padding-top:18px}
  .top-nav ul{gap:16px}
  .hero-inner,.page-hero-inner{padding:118px 22px 34px;align-items:end}
  .hero-copy{max-width:300px!important}
  .hero-copy h1{font-size:clamp(2rem,6vw,3rem)!important}
  .hero-copy h2{font-size:clamp(1.8rem,5.4vw,2.6rem)!important}
}
@media (max-width:820px){
  .site-header,.site-header-v69{padding:0 14px}
  .header-inner,.header-inner-v69{padding-top:16px;display:flex;justify-content:space-between;align-items:flex-start}
  .top-nav{display:none}
  .hero-slide img,.hero-media img,.page-hero-media img{object-position:center center!important}
  .hero-inner,.page-hero-inner{padding:108px 20px 30px;align-items:end}
  .hero-copy{max-width:210px!important;padding-left:0}
  .hero-kicker{font-size:.42rem!important}
  .hero-copy h1{font-size:clamp(1.8rem,10vw,2.45rem)!important;max-width:6ch!important}
  .hero-copy h2{font-size:clamp(1.65rem,9vw,2.2rem)!important;max-width:6ch!important}
  .hero-taxonomy{font-size:.48rem!important;max-width:18ch}
  .about-manifesto-box{padding:24px 20px}
}

/* =========================
   V87 — HEADER / HERO / ADMIN PERF
========================= */

/* Desktop header: bigger brand, visible horizontal menu */
@media (min-width: 980px){
  .site-header.site-header-v69,
  .site-header-v69{
    pointer-events:auto !important;
    padding:0 28px !important;
    background:linear-gradient(180deg, rgba(4,4,4,.72) 0%, rgba(4,4,4,.38) 58%, rgba(4,4,4,0) 100%) !important;
    backdrop-filter:blur(10px);
  }
  .header-inner.header-inner-v69{
    width:100%;
    display:grid !important;
    grid-template-columns:minmax(240px, 1fr) auto;
    align-items:start;
    gap:24px;
    padding:20px 0 0 !important;
  }
  .site-header-v69 .branding-wrap,
  .site-header-v69 .branding,
  .site-header-v69 .branding a{
    display:flex !important;
    align-items:flex-start !important;
  }
  .site-header-v69 .branding a{
    gap:14px !important;
  }
  .site-header-v69 .brand-logo img{
    width:clamp(54px, 4.8vw, 72px) !important;
  }
  .site-header-v69 .brand-main{
    font-size:clamp(.96rem, 1.15vw, 1.12rem) !important;
    letter-spacing:.26em !important;
    line-height:1.05 !important;
    color:#f4ede1 !important;
  }
  .site-header-v69 .brand-sub{
    display:block !important;
    margin-top:4px !important;
    font-size:.58rem !important;
    letter-spacing:.34em !important;
    color:var(--gold) !important;
    opacity:.92 !important;
  }
  .site-header-v69 .top-nav{
    display:flex !important;
    justify-content:flex-end !important;
    align-items:flex-start !important;
    pointer-events:auto !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .site-header-v69 .top-nav ul{
    display:flex !important;
    flex-wrap:wrap;
    justify-content:flex-end !important;
    align-items:center;
    gap:22px !important;
    list-style:none;
    margin:10px 0 0 !important;
    padding:0 !important;
  }
  .site-header-v69 .top-nav li{position:relative;display:block !important;}
  .site-header-v69 .top-nav a{
    display:inline-block !important;
    font-size:.8rem !important;
    letter-spacing:.22em !important;
    text-transform:uppercase;
    color:rgba(244,237,225,.88) !important;
    text-decoration:none;
    padding:8px 0;
  }
  .site-header-v69 .top-nav a:hover,
  .site-header-v69 .top-nav .current-menu-item > a,
  .site-header-v69 .top-nav .current_page_item > a{
    color:#fff !important;
  }
  .site-header-v69 .mobile-toggle{display:none !important;}
}

/* Hero copy: a bit larger but still refined */
.hero .hero-inner{
  align-items:end;
}
.hero .hero-copy{
  max-width:min(440px, 42vw) !important;
  padding:0 0 6.5vh 0 !important;
}
.hero .hero-kicker{
  font-size:.66rem !important;
  letter-spacing:.26em !important;
  margin-bottom:14px !important;
}
.hero .hero-copy h1{
  font-size:clamp(3.2rem, 7.6vw, 5.8rem) !important;
  line-height:.92 !important;
  margin:0 0 .14em !important;
}
.hero .hero-copy h2{
  font-size:clamp(2rem, 5.8vw, 4rem) !important;
  line-height:.96 !important;
  margin:0 0 .32em !important;
}
.hero .hero-taxonomy{
  max-width:32rem;
  font-size:.62rem !important;
  letter-spacing:.24em !important;
  color:rgba(244,237,225,.72) !important;
}
.hero .hero-actions{margin-top:20px !important;}
.hero .hero-actions .btn,
.hero .hero-actions .btn-ghost{font-size:.68rem !important;letter-spacing:.18em !important;}

@media (min-width: 980px){
  .hero .hero-inner{
    grid-template-columns:minmax(320px, 420px) 1fr !important;
    padding:0 34px 38px !important;
  }
}

@media (max-width: 979px){
  .site-header.site-header-v69{padding:0 16px !important;}
  .site-header-v69 .top-nav{display:none !important;}
  .site-header-v69 .mobile-toggle{display:inline-flex !important;}
  .site-header-v69 .brand-logo img{width:44px !important;}
  .site-header-v69 .brand-main{font-size:.88rem !important;letter-spacing:.18em !important;}
  .site-header-v69 .brand-sub{display:block !important;font-size:.52rem !important;letter-spacing:.22em !important;}
  .hero .hero-copy{max-width:78vw !important;padding-bottom:5vh !important;}
  .hero .hero-copy h1{font-size:clamp(2.3rem, 11vw, 4rem) !important;}
  .hero .hero-copy h2{font-size:clamp(1.5rem, 7vw, 2.6rem) !important;}
}


/* =========================
   V88 — HERO TYPOGRAPHY + DESKTOP PORTFOLIO SUBMENU
========================= */
@media (min-width: 981px){
  .top-nav{display:flex !important; margin-left:auto; align-self:flex-start;}
  .top-nav > ul{display:flex !important; align-items:flex-start; justify-content:flex-end; gap:22px; flex-wrap:nowrap;}
  .top-nav > ul > li{position:relative;}
  .top-nav > ul > li > a{
    display:block;
    padding:8px 0;
    font-size:.74rem;
    letter-spacing:.2em;
    color:rgba(244,237,225,.9);
    border:none !important;
    background:transparent !important;
  }
  .top-nav > ul > li > a:hover,
  .top-nav > ul > li:hover > a,
  .top-nav > ul > li:focus-within > a{color:var(--text);}

  .top-nav .sub-menu{
    display:block !important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(10px);
    transition:opacity .28s ease, transform .34s cubic-bezier(.22,.61,.36,1), visibility .28s ease;
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    min-width:230px;
    margin:0;
    padding:10px;
    border-radius:18px;
    background:rgba(8,8,8,.94);
    border:1px solid rgba(244,237,225,.10);
    box-shadow:0 24px 60px rgba(0,0,0,.42);
  }
  .top-nav li.menu-item-has-children:hover > .sub-menu,
  .top-nav li.menu-item-has-children:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .top-nav .sub-menu li{display:block; width:100%;}
  .top-nav .sub-menu a{
    display:block;
    padding:10px 12px;
    font-size:.64rem;
    letter-spacing:.16em;
    color:rgba(244,237,225,.82);
    border-radius:12px;
  }
  .top-nav .sub-menu a:hover{background:rgba(200,169,106,.08) !important; color:var(--text);}

  .site-header.site-header-v69{padding:24px 34px 0;}
  .brand-main{font-size:.88rem; letter-spacing:.24em;}
  .brand-sub{font-size:.54rem; letter-spacing:.28em;}

  .hero-inner,
  .page-hero-inner{
    padding:132px 46px 42px 52px;
    justify-content:space-between;
  }
  .hero-copy{
    max-width:360px;
    margin-top:3vh;
    margin-left:0;
  }
  .hero-kicker{
    margin-bottom:18px;
    font-size:.56rem;
    letter-spacing:.28em;
  }
  .hero-copy h1,
  .page-hero-inner h1{
    font-size:clamp(3.15rem,4.6vw,5rem);
    line-height:.9;
    max-width:6ch;
  }
  .hero-copy h2{
    margin-top:12px;
    font-size:clamp(2.75rem,4vw,4.2rem);
    line-height:.9;
    max-width:6ch;
  }
  .hero-taxonomy{
    margin-top:18px;
    font-size:.56rem;
    letter-spacing:.22em;
    max-width:280px;
  }
  .hero-actions{margin-top:20px;}
}


/* =========================
   V89 — HEADER + NAV REFINEMENT
========================= */
.top-nav ul{gap:10px !important;flex-wrap:nowrap !important;}
.top-nav li{position:relative;}
.top-nav .menu-link-row{display:flex;align-items:center;gap:8px;position:relative;}
.top-nav .menu-link-row > a{padding-right:10px !important;}
.top-nav .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid rgba(200,169,106,.22);border-radius:999px;background:rgba(200,169,106,.06);color:var(--gold);cursor:pointer;transition:transform .28s ease,background .28s ease,border-color .28s ease,color .28s ease;flex:0 0 auto;}
.top-nav .submenu-toggle:hover{background:rgba(200,169,106,.12);border-color:rgba(200,169,106,.4);color:#f3d08a;}
.top-nav .submenu-toggle span{font-size:18px;line-height:1;transform:translateY(-1px);display:block;}
.top-nav .menu-item-has-children.is-open > .menu-link-row .submenu-toggle span{transform:translateY(-1px) rotate(45deg);}
.top-nav .sub-menu{display:block !important;position:absolute;top:calc(100% + 2px);left:0;min-width:200px;padding:8px !important;margin:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.98);transform-origin:top left;transition:opacity .24s ease,transform .28s cubic-bezier(.22,.61,.36,1),visibility .24s ease;z-index:1400;border-radius:16px !important;background:rgba(8,8,8,.98) !important;border:1px solid rgba(244,237,225,.10) !important;box-shadow:0 18px 40px rgba(0,0,0,.32);}
.top-nav .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px;}
.top-nav li:hover > .sub-menu,.top-nav li:focus-within > .sub-menu,.top-nav li.is-open > .sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);}
.top-nav .sub-menu li{width:100%;}
.top-nav .sub-menu a{display:block;padding:9px 12px !important;border-radius:10px;font-size:.62rem !important;letter-spacing:.16em !important;white-space:nowrap;color:rgba(244,237,225,.82) !important;}
.top-nav .sub-menu a:hover{background:rgba(200,169,106,.08) !important;color:var(--text) !important;}
.top-nav .menu-item-has-children > a::after{display:none !important;}
@media (min-width:981px){
  .top-nav .sub-menu{left:0;}
}

@media (max-width:980px){
  .mobile-toggle.menu-toggle-visible{display:inline-flex !important;align-items:center;justify-content:center;min-width:94px !important;padding:.65rem 1rem !important;border-radius:999px !important;}
  .mobile-toggle-label{display:inline-block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text);}
  .top-nav{display:none !important;}
  .site-header-v69 + .side-nav{display:block !important;}
  .side-nav{top:70px !important;right:16px !important;width:min(320px,calc(100vw - 24px)) !important;border-radius:18px !important;}
  .side-nav ul{padding:14px !important;}
  .side-nav li+li{margin-top:4px !important;}
  .side-nav .menu-link-row{display:flex;align-items:center;gap:10px;}
  .side-nav .menu-link-row > a{flex:1 1 auto;}
  .side-nav .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(200,169,106,.22);background:rgba(200,169,106,.05);color:var(--gold);padding:0;flex:0 0 auto;}
  .side-nav .submenu-toggle span{font-size:18px;line-height:1;display:block;transform:translateY(-1px);transition:transform .28s ease;}
  .side-nav li.menu-item-has-children.is-open > .menu-link-row .submenu-toggle span{transform:translateY(-1px) rotate(45deg);}
  .side-nav .sub-menu{display:block !important;position:static !important;min-width:0 !important;padding:0 0 0 8px !important;margin:4px 0 0 !important;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-4px);transition:max-height .34s cubic-bezier(.22,.61,.36,1),opacity .24s ease,transform .24s ease,visibility .24s ease;box-shadow:none !important;border:0 !important;background:transparent !important;}
  .side-nav li.menu-item-has-children.is-open > .sub-menu{max-height:260px;opacity:1;visibility:visible;transform:translateY(0);}
  .side-nav .sub-menu a{padding:8px 10px !important;font-size:.64rem !important;letter-spacing:.14em !important;border-radius:10px;}
}


/* =========================
   V90 — HERO SETTINGS + HOME BUILDER + NAV CLEANUP
========================= */
.top-nav .menu-link-row{display:flex;align-items:center}
.top-nav .submenu-toggle,.side-nav .submenu-toggle{display:none !important}
.top-nav li.menu-item-has-children > .menu-link-row > a{padding-right:14px}
.top-nav .sub-menu{top:calc(100% + 6px);min-width:200px;padding:8px;border-radius:16px}
.top-nav .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.top-nav .sub-menu a{padding:9px 12px;font-size:.63rem;letter-spacing:.16em}
.top-nav li.menu-item-has-children:hover > .sub-menu,
.top-nav li.menu-item-has-children:focus-within > .sub-menu{display:block}

.hero{overflow:hidden}
.hero-slider,.hero-slide,.hero-slide-image{width:100%;height:100%}
.hero-slide-image{object-position:var(--slide-position,50% 50%);object-fit:var(--slide-fit,cover);transform:scale(var(--slide-scale,1));}
.hero-inner{padding-left:clamp(72px,8vw,128px) !important;padding-right:40px !important}
.hero-copy{max-width:min(720px,46vw)}

/* Mobile menu stays compact with only Menu label */
@media (max-width: 980px){
  .mobile-toggle.menu-toggle-visible{display:inline-flex !important}
  .top-nav{display:none !important}
  .side-nav .sub-menu{max-height:0;opacity:0;overflow:hidden;transition:max-height .34s cubic-bezier(.22,.61,.36,1),opacity .22s ease,transform .22s ease;transform:translateY(-4px);padding:0 0 0 14px !important}
  .side-nav li.menu-item-has-children.is-open > .sub-menu{max-height:320px;opacity:1;transform:translateY(0);padding-top:6px !important}
  .side-nav li.menu-item-has-children > a{display:flex;align-items:center;justify-content:space-between}
}

/* WPBakery-managed home can place its own hero */
.sabino-home-builder-shell > .sabino-home-content > .hero:first-child{margin-top:0}

/* =========================
   V91 — MOBILE MENU FIX + DESKTOP PORTFOLIO SUBMENU
========================= */
@media (min-width: 981px){
  .site-header-v69 .top-nav > ul{gap:28px !important; align-items:flex-start !important;}
  .site-header-v69 .top-nav > ul > li{position:relative; padding-bottom:0 !important;}
  .site-header-v69 .top-nav > ul > li > a{
    display:block;
    padding:10px 0 16px !important;
    position:relative;
  }
  .site-header-v69 .top-nav .sub-menu{
    top:100% !important;
    left:0 !important;
    min-width:220px !important;
    max-width:260px;
    max-height:240px;
    overflow-y:auto;
    overflow-x:hidden;
    padding:10px 8px !important;
    margin-top:0 !important;
    border-radius:14px !important;
    transform:translateY(6px) scale(.985) !important;
    scrollbar-width:thin;
    scrollbar-color:rgba(200,169,106,.45) rgba(255,255,255,.04);
  }
  .site-header-v69 .top-nav .sub-menu::-webkit-scrollbar{width:8px;}
  .site-header-v69 .top-nav .sub-menu::-webkit-scrollbar-track{background:rgba(255,255,255,.04); border-radius:999px;}
  .site-header-v69 .top-nav .sub-menu::-webkit-scrollbar-thumb{background:rgba(200,169,106,.42); border-radius:999px;}
  .site-header-v69 .top-nav li.menu-item-has-children:hover > .sub-menu,
  .site-header-v69 .top-nav li.menu-item-has-children:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1) !important;
  }
  .site-header-v69 .top-nav .sub-menu::before{display:none !important;}
  .site-header-v69 .top-nav .sub-menu li+li{margin-top:2px;}
  .site-header-v69 .top-nav .sub-menu a{
    padding:9px 12px !important;
    font-size:.61rem !important;
    letter-spacing:.15em !important;
    line-height:1.3;
  }
}

@media (max-width: 980px){
  .site-header.site-header-v69{padding:0 14px !important;}
  .site-header-v69 .header-inner{min-height:72px;}
  .site-header-v69 .top-nav{display:none !important;}
  .site-header-v69 .mobile-toggle,
  .site-header-v69 .mobile-toggle.menu-toggle-visible{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-width:96px !important;
    min-height:42px !important;
    padding:.65rem 1rem !important;
    border:1px solid rgba(244,237,225,.12) !important;
    background:rgba(8,8,8,.78) !important;
    color:var(--text) !important;
    border-radius:999px !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  .site-header-v69 .mobile-toggle-label{
    display:inline-block !important;
    font-size:.68rem !important;
    letter-spacing:.18em !important;
    text-transform:uppercase;
  }
  .site-header-v69 + .side-nav{
    display:block !important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:opacity .24s ease, transform .28s cubic-bezier(.22,.61,.36,1), visibility .24s ease;
  }
  .site-header-v69 + .side-nav.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .side-nav{
    top:74px !important;
    right:14px !important;
    left:auto !important;
    width:min(320px, calc(100vw - 28px)) !important;
    max-width:min(320px, calc(100vw - 28px)) !important;
    border-radius:18px !important;
    background:rgba(8,8,8,.96) !important;
    border:1px solid rgba(244,237,225,.08) !important;
    box-shadow:0 22px 46px rgba(0,0,0,.34) !important;
  }
  .side-nav ul{padding:14px !important;}
  .side-nav li+li{margin-top:4px !important;}
  .side-nav .menu-link-row{display:flex !important; align-items:center !important; gap:10px !important;}
  .side-nav .menu-link-row > a{flex:1 1 auto; display:block;}
  .side-nav .submenu-toggle{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border-radius:999px;
    border:1px solid rgba(200,169,106,.22);
    background:rgba(200,169,106,.05);
    color:var(--gold);
    padding:0;
    flex:0 0 auto;
  }
  .side-nav .submenu-toggle span{font-size:18px; line-height:1; display:block; transform:translateY(-1px); transition:transform .28s ease;}
  .side-nav li.menu-item-has-children.is-open > .menu-link-row .submenu-toggle span{transform:translateY(-1px) rotate(45deg);}
  .side-nav .sub-menu{
    display:block !important;
    position:static !important;
    min-width:0 !important;
    margin:4px 0 0 !important;
    padding:0 0 0 8px !important;
    max-height:0;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transform:translateY(-4px);
    transition:max-height .34s cubic-bezier(.22,.61,.36,1), opacity .24s ease, transform .24s ease, visibility .24s ease;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .side-nav li.menu-item-has-children.is-open > .sub-menu{
    max-height:260px;
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
}


/* =========================
   V92 — navigation + about manifesto layout
========================= */
@media (min-width: 981px){
  .top-nav > ul > li{position:relative;padding-bottom:0}
  .top-nav .sub-menu{
    display:block !important;
    position:absolute;
    top:100%;
    left:0;
    right:auto;
    min-width:240px;
    max-height:min(56vh, 420px);
    overflow:auto;
    padding:12px;
    margin-top:10px;
    border-radius:18px;
    background:rgba(9,9,9,.97);
    border:1px solid rgba(244,237,225,.12);
    box-shadow:0 24px 70px rgba(0,0,0,.42);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:opacity .26s ease, transform .26s ease, visibility .26s ease;
    white-space:normal;
  }
  .top-nav li.menu-item-has-children:hover > .sub-menu,
  .top-nav li.menu-item-has-children:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .top-nav .sub-menu li{display:block;width:100%;margin:0}
  .top-nav .sub-menu li + li{margin-top:4px}
  .top-nav .sub-menu a{
    display:block;
    width:100%;
    padding:10px 12px;
    border-radius:12px;
    font-size:.64rem;
    line-height:1.35;
    letter-spacing:.16em;
    white-space:normal;
  }
}

@media (max-width: 980px){
  .mobile-toggle.menu-toggle-visible{
    left:12px !important;
    right:auto !important;
  }
  .site-header-v69 + .side-nav,
  .side-nav{
    left:12px !important;
    right:auto !important;
    width:min(320px, calc(100vw - 24px)) !important;
  }
}

.about-premium-image{display:flex;flex-direction:column;gap:24px}
.about-manifesto-box-below-image{
  margin-top:0;
  padding:28px 30px;
  border:1px solid rgba(244,237,225,.1);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}
.about-manifesto-box-below-image .about-manifesto-title{
  margin:8px 0 16px;
  font-size:1.55rem;
  line-height:1.15;
}
.about-manifesto-box-below-image .about-manifesto-text p{
  margin:0 0 1rem;
}
@media (min-width: 981px){
  .about-premium-grid{
    align-items:start;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:48px;
  }
}

/* =========================
   V93 — REAL MENU + HERO BUGFIXES
========================= */

/* Desktop dropdown: compact vertical column directly under Portfolio */
@media (min-width: 981px){
  .site-header-v69 .top-nav,
  .site-header-v69 .top-nav > ul,
  .site-header-v69 .top-nav > ul > li{overflow:visible !important;}

  .site-header-v69 .top-nav > ul > li{
    position:relative !important;
    padding-bottom:0 !important;
  }

  .site-header-v69 .top-nav > ul > li.menu-item-has-children > .sub-menu,
  .top-nav > ul > li.menu-item-has-children > .sub-menu{
    position:absolute !important;
    top:calc(100% + 6px) !important;
    left:0 !important;
    right:auto !important;
    min-width:220px !important;
    max-width:260px !important;
    max-height:320px !important;
    overflow-y:auto !important;
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    gap:4px !important;
    padding:10px !important;
    margin:0 !important;
    border-radius:18px !important;
    background:rgba(7,7,7,.98) !important;
    border:1px solid rgba(244,237,225,.12) !important;
    box-shadow:0 24px 64px rgba(0,0,0,.42) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(8px) !important;
    transition:opacity .24s ease, transform .28s cubic-bezier(.22,.61,.36,1), visibility .24s ease !important;
    z-index:2500 !important;
  }

  .site-header-v69 .top-nav > ul > li.menu-item-has-children:hover > .sub-menu,
  .site-header-v69 .top-nav > ul > li.menu-item-has-children:focus-within > .sub-menu,
  .top-nav > ul > li.menu-item-has-children:hover > .sub-menu,
  .top-nav > ul > li.menu-item-has-children:focus-within > .sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }

  .site-header-v69 .top-nav .sub-menu li,
  .top-nav .sub-menu li{
    display:block !important;
    width:100% !important;
    margin:0 !important;
  }

  .site-header-v69 .top-nav .sub-menu a,
  .top-nav .sub-menu a{
    display:block !important;
    width:100% !important;
    padding:10px 14px !important;
    border-radius:12px !important;
    font-size:.64rem !important;
    letter-spacing:.16em !important;
    white-space:normal !important;
    line-height:1.35 !important;
    color:rgba(244,237,225,.84) !important;
    background:transparent !important;
    border:0 !important;
    text-align:left !important;
  }

  .site-header-v69 .top-nav .sub-menu a:hover,
  .top-nav .sub-menu a:hover{
    background:rgba(200,169,106,.08) !important;
    color:var(--text) !important;
  }
}

/* Mobile menu button: always visible and moved left */
@media (max-width: 980px){
  .site-header-v69 .top-nav{display:none !important;}

  .site-header-v69 .mobile-toggle,
  .site-header-v69 .mobile-toggle.menu-toggle-visible,
  .mobile-toggle,
  .mobile-toggle.menu-toggle-visible{
    display:inline-flex !important;
    position:fixed !important;
    top:16px !important;
    left:16px !important;
    right:auto !important;
    min-width:92px !important;
    min-height:40px !important;
    padding:.62rem .9rem !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:4000 !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  .site-header-v69 .mobile-toggle-label,
  .mobile-toggle-label{
    display:inline-block !important;
    font-size:.72rem !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    color:var(--text) !important;
  }

  .site-header-v69 + .side-nav,
  .side-nav{
    left:16px !important;
    right:auto !important;
    top:66px !important;
    width:min(320px, calc(100vw - 24px)) !important;
    z-index:3999 !important;
  }
}

/* Hero slider controls visible again */
.hero{overflow:hidden;}
.hero-inner,
.hero-side-note,
.hero-mini-controls,
.hero-dots{position:relative;z-index:12;}
.hero-side-note{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  justify-content:flex-end !important;
  gap:12px !important;
}
.hero-mini-controls{display:flex !important;gap:10px !important;align-items:center !important;}
.hero-arrow{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  border:1px solid rgba(244,237,225,.24) !important;
  background:rgba(5,5,5,.52) !important;
  color:var(--text) !important;
  opacity:1 !important;
  visibility:visible !important;
}
.hero-arrow svg{width:18px !important;height:18px !important;display:block !important;fill:none;stroke:currentColor;stroke-width:1.8;}
.hero-dots{display:flex !important;gap:8px !important;align-items:center !important;justify-content:flex-end !important;}
.hero-dot{
  display:inline-block !important;
  width:10px !important;
  height:10px !important;
  border-radius:999px !important;
  border:1px solid rgba(244,237,225,.46) !important;
  background:rgba(244,237,225,.18) !important;
  opacity:1 !important;
  visibility:visible !important;
}
.hero-dot.is-active{background:var(--gold) !important;border-color:var(--gold) !important;transform:scale(1.06);}



/* =========================
   V94 — MOBILE HEADER + DESKTOP SUBMENU + HERO CONTROLS + ABOUT MANIFESTO
========================= */

/* Mobile: branding left, Menu right, no overlap */
@media (max-width: 980px){
  .site-header{pointer-events:none;}
  .site-header .header-inner,
  .site-header-v69 .header-inner,
  .header-inner-v69{
    width:100% !important;
    padding:16px 18px 0 !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:14px !important;
  }
  .site-header-v69 .branding-wrap,
  .branding-wrap{
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:calc(100% - 112px) !important;
    pointer-events:auto !important;
  }
  .site-header-v69 .branding,
  .branding,
  .site-header-v69 .branding a,
  .branding a{
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
  .site-header-v69 .brand-logo img,
  .brand-logo img{width:40px !important; height:auto !important;}
  .site-header-v69 .brand-main,
  .brand-main{font-size:14px !important; letter-spacing:.22em !important; line-height:1.05 !important;}
  .site-header-v69 .brand-sub,
  .brand-sub{font-size:9px !important; letter-spacing:.24em !important; line-height:1.2 !important;}
  .site-header-v69 .mobile-toggle,
  .site-header-v69 .mobile-toggle.menu-toggle-visible,
  .mobile-toggle,
  .mobile-toggle.menu-toggle-visible{
    position:fixed !important;
    top:14px !important;
    right:16px !important;
    left:auto !important;
    margin:0 !important;
    min-width:84px !important;
    min-height:38px !important;
    padding:.58rem .82rem !important;
    z-index:5000 !important;
    pointer-events:auto !important;
  }
  .site-header-v69 + .side-nav,
  .side-nav{
    top:62px !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    max-width:none !important;
  }
}

/* Desktop submenu: elegant vertical dropdown, no hover gap */
@media (min-width: 981px){
  .site-header-v69 .top-nav > ul > li.menu-item-has-children,
  .top-nav > ul > li.menu-item-has-children{
    position:relative !important;
    padding-bottom:18px !important;
    margin-bottom:-18px !important;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children > a,
  .top-nav > ul > li.menu-item-has-children > a{
    position:relative !important;
    z-index:2600 !important;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children::after,
  .top-nav > ul > li.menu-item-has-children::after{
    content:"";
    position:absolute;
    left:-14px;
    right:-14px;
    top:100%;
    height:20px;
    background:transparent;
    z-index:2590;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children > .sub-menu,
  .top-nav > ul > li.menu-item-has-children > .sub-menu{
    top:calc(100% + 2px) !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) translateY(8px) !important;
    min-width:240px !important;
    max-width:280px !important;
    padding:12px !important;
    gap:6px !important;
    border-radius:16px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    white-space:normal !important;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children:hover > .sub-menu,
  .site-header-v69 .top-nav > ul > li.menu-item-has-children:focus-within > .sub-menu,
  .top-nav > ul > li.menu-item-has-children:hover > .sub-menu,
  .top-nav > ul > li.menu-item-has-children:focus-within > .sub-menu{
    transform:translateX(-50%) translateY(0) !important;
  }
  .site-header-v69 .top-nav .sub-menu li,
  .top-nav .sub-menu li{
    display:block !important;
    width:100% !important;
    flex:0 0 auto !important;
  }
  .site-header-v69 .top-nav .sub-menu a,
  .top-nav .sub-menu a{
    display:block !important;
    width:100% !important;
    padding:11px 14px !important;
    border-radius:10px !important;
    text-align:left !important;
    font-size:.7rem !important;
    letter-spacing:.14em !important;
    line-height:1.3 !important;
  }
}

/* Hero controls: explicitly visible on top of image */
.hero .hero-side-note,
.hero .hero-mini-controls,
.hero .hero-dots{
  display:flex !important;
}
.hero .hero-side-note{
  position:absolute !important;
  right:28px !important;
  bottom:24px !important;
  z-index:40 !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:12px !important;
  pointer-events:auto !important;
}
.hero .hero-mini-controls{gap:10px !important;}
.hero .hero-arrow,
.hero .hero-dot{
  pointer-events:auto !important;
}
.hero .hero-arrow{
  box-shadow:0 10px 30px rgba(0,0,0,.22) !important;
}
.hero .hero-dots{
  display:flex !important;
  gap:10px !important;
  justify-content:flex-end !important;
  align-items:center !important;
}
.hero .hero-dot{
  width:10px !important;
  height:10px !important;
  border-radius:999px !important;
}
@media (max-width: 980px){
  .hero .hero-side-note{
    right:18px !important;
    bottom:18px !important;
  }
  .hero .hero-arrow{
    width:40px !important;
    height:40px !important;
  }
}

/* About manifesto in Leica gold */
.about-manifesto-box-below-image,
.about-manifesto-box{
  background:linear-gradient(180deg, #d6a847 0%, #c6973d 100%) !important;
  border:1px solid rgba(0,0,0,.12) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.16) !important;
}
.about-manifesto-box-below-image *,
.about-manifesto-box *{
  color:#050505 !important;
}
.about-manifesto-box-below-image .manifesto-eyebrow,
.about-manifesto-box .manifesto-eyebrow,
.about-manifesto-box-below-image .about-manifesto-title,
.about-manifesto-box .about-manifesto-title{
  color:#050505 !important;
}


/* =========================
   V95 — stability + final navigation/hero pass
========================= */

/* Desktop submenu: anchored directly below Portfolio with no hover gap */
@media (min-width: 981px){
  .site-header-v69,
  .site-header-v69 .header-inner,
  .site-header-v69 .top-nav,
  .site-header-v69 .top-nav > ul,
  .site-header-v69 .top-nav > ul > li{
    overflow: visible !important;
  }
  .site-header-v69 .top-nav > ul{
    align-items:center !important;
    gap:20px !important;
  }
  .site-header-v69 .top-nav > ul > li{
    position:relative !important;
    padding-bottom:0 !important;
    margin-bottom:0 !important;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children::after,
  .site-header-v69 .top-nav > ul > li.menu-item-has-children > a::after{
    display:none !important;
    content:none !important;
  }
  .site-header-v69 .top-nav > ul > li > a{
    position:relative !important;
    z-index:4100 !important;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children > .sub-menu{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:auto !important;
    transform:translateY(0) !important;
    min-width:240px !important;
    max-width:320px !important;
    margin:0 !important;
    padding:10px !important;
    border-radius:16px !important;
    background:rgba(7,7,7,.97) !important;
    border:1px solid rgba(244,237,225,.10) !important;
    box-shadow:0 24px 60px rgba(0,0,0,.45) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    white-space:normal !important;
    z-index:4090 !important;
    max-height:min(62vh,420px) !important;
    overflow:auto !important;
    scrollbar-width:thin;
  }
  .site-header-v69 .top-nav > ul > li.menu-item-has-children:hover > .sub-menu,
  .site-header-v69 .top-nav > ul > li.menu-item-has-children:focus-within > .sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  .site-header-v69 .top-nav .sub-menu li{
    width:100% !important;
    margin:0 !important;
    display:block !important;
  }
  .site-header-v69 .top-nav .sub-menu a{
    display:block !important;
    width:100% !important;
    padding:11px 14px !important;
    border-radius:10px !important;
    text-align:left !important;
    font-size:.68rem !important;
    letter-spacing:.16em !important;
    line-height:1.35 !important;
    white-space:normal !important;
  }
}

/* Mobile header: brand left, Menu button right, always visible */
@media (max-width: 980px){
  .site-header-v69 .header-inner.header-inner-v69{
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:12px !important;
    padding:14px 14px !important;
  }
  .site-header-v69 .branding-wrap,
  .site-header-v69 .branding,
  .site-header-v69 .branding a{
    min-width:0 !important;
    max-width:none !important;
  }
  .site-header-v69 .branding a{
    justify-content:flex-start !important;
    gap:12px !important;
    padding:0 !important;
  }
  .site-header-v69 .brand-logo img{
    width:42px !important;
    height:42px !important;
    object-fit:contain !important;
  }
  .site-header-v69 .brand-copy{
    min-width:0 !important;
  }
  .site-header-v69 .brand-main{
    font-size:13px !important;
    letter-spacing:.24em !important;
  }
  .site-header-v69 .brand-sub{
    display:block !important;
    font-size:8px !important;
    letter-spacing:.22em !important;
  }
  .site-header-v69 .top-nav{
    display:none !important;
  }
  .site-header-v69 .mobile-toggle,
  .site-header-v69 .mobile-toggle.menu-toggle-visible,
  .mobile-toggle,
  .mobile-toggle.menu-toggle-visible{
    display:inline-flex !important;
    position:relative !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    margin-left:auto !important;
    min-width:84px !important;
    min-height:40px !important;
    padding:.62rem .92rem !important;
    border-radius:999px !important;
    z-index:5005 !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(5,5,5,.88) !important;
    border:1px solid rgba(244,237,225,.16) !important;
    box-shadow:0 12px 36px rgba(0,0,0,.28) !important;
  }
  .site-header-v69 .mobile-toggle-label,
  .mobile-toggle-label{
    display:inline-block !important;
    font-size:.72rem !important;
    letter-spacing:.18em !important;
    color:var(--text) !important;
  }
  .site-header-v69 + .side-nav,
  .side-nav{
    display:block !important;
    left:12px !important;
    right:12px !important;
    top:70px !important;
    width:auto !important;
    max-width:none !important;
    z-index:5004 !important;
  }
}

/* Hero controls: force visibility and legibility */
.hero .hero-side-note{
  position:absolute !important;
  right:24px !important;
  bottom:22px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:12px !important;
  z-index:60 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.hero .hero-mini-controls,
.hero .hero-dots{
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.hero .hero-mini-controls{gap:10px !important;}
.hero .hero-arrow{
  width:44px !important;
  height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:rgba(5,5,5,.68) !important;
  border:1px solid rgba(244,237,225,.24) !important;
  color:#fff !important;
  box-shadow:0 10px 30px rgba(0,0,0,.28) !important;
}
.hero .hero-arrow svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
  stroke:currentColor !important;
  fill:none !important;
}
.hero .hero-dots{
  gap:10px !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
.hero .hero-dot{
  width:10px !important;
  height:10px !important;
  border-radius:999px !important;
  display:inline-block !important;
  background:rgba(255,255,255,.26) !important;
  border:1px solid rgba(255,255,255,.34) !important;
}
.hero .hero-dot.is-active{
  background:var(--gold) !important;
  border-color:var(--gold) !important;
}
@media (max-width:980px){
  .hero .hero-side-note{
    right:14px !important;
    bottom:14px !important;
  }
  .hero .hero-arrow{
    width:38px !important;
    height:38px !important;
  }
}


/* =========================
   V96 — HERO DOTS ONLY
========================= */
.hero-arrow,
.hero-prev,
.hero-next,
.hero-mini-controls .hero-arrow{
  display:none !important;
}
.hero-mini-controls{
  display:flex !important;
  justify-content:flex-end;
  align-items:center;
  gap:0 !important;
}
.hero-dots{
  display:flex !important;
  justify-content:flex-end;
  align-items:center;
  gap:10px !important;
  margin-top:0 !important;
}
.hero-dot{
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  border-radius:999px !important;
  padding:0 !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  background:rgba(244,237,225,.38) !important;
  opacity:1 !important;
}
.hero-dot:hover,
.hero-dot:focus,
.hero-dot:focus-visible{
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  background:rgba(244,237,225,.62) !important;
}
.hero-dot.is-active,
.hero-dot[aria-current="true"],
.hero-dot[aria-selected="true"]{
  background:var(--gold) !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
}


/* =========================
   V98 — PORTFOLIO VITRINE COMPACT
========================= */
.sabino-portfolio-vitrine .portfolio-vitrine-shell{max-width:min(1520px,92vw)}
.sabino-portfolio-vitrine .vitrine-head{align-items:end;gap:1.5rem 3rem;margin-bottom:1.6rem}
.sabino-portfolio-vitrine .section-title{max-width:16ch}
.sabino-portfolio-vitrine .vitrine-intro-copy{max-width:32rem}
.sabino-portfolio-vitrine .vitrine-top-cta{margin:0 0 .9rem}
.sabino-portfolio-vitrine .section-copy{margin:0;color:rgba(255,255,255,.72);font-size:.97rem;line-height:1.6}
.sabino-portfolio-vitrine .portfolio-vitrine-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.sabino-portfolio-vitrine .portfolio-card.vitrine-card{min-height:0;aspect-ratio:4/5;border-radius:2px;overflow:hidden}
.sabino-portfolio-vitrine .portfolio-card.vitrine-card .media{height:100%;background-size:cover;background-position:center center;transition:transform .7s ease}
.sabino-portfolio-vitrine .portfolio-card.vitrine-card:hover .media{transform:scale(1.04)}
.sabino-portfolio-vitrine .portfolio-overlay{background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,.16) 48%,rgba(0,0,0,0));padding:1rem}
.sabino-portfolio-vitrine .portfolio-overlay h3{font-size:clamp(1rem,.75vw + .82rem,1.35rem);line-height:1.18;margin:0}
.sabino-portfolio-vitrine .portfolio-overlay .selected-meta{font-size:.66rem;letter-spacing:.18em;margin-bottom:.45rem}
@media (max-width: 1200px){
  .sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 900px){
  .sabino-portfolio-vitrine .vitrine-head{grid-template-columns:1fr}
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 640px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sabino-portfolio-vitrine .portfolio-card.vitrine-card{aspect-ratio:4/5}
  .sabino-portfolio-vitrine .portfolio-overlay{padding:.8rem}
}


/* =========================
   V99 — Portfolio Vitrine + Archive layout
========================= */
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
.sabino-portfolio-vitrine .portfolio-vitrine-grid{
  display:grid !important;
  gap:12px !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.home .sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid,.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.home .sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid,.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
.home .sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid,.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.home .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid,.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
.home .sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid,.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{grid-template-columns:repeat(6,minmax(0,1fr)) !important}
.sabino-portfolio-vitrine .portfolio-vitrine-shell{max-width:min(1680px,94vw) !important}
.sabino-portfolio-vitrine .portfolio-card.vitrine-card{display:block !important;position:relative;grid-column:auto !important;min-height:0 !important;aspect-ratio:4/5 !important;background:#0d0d0d;border:1px solid rgba(255,255,255,.06);overflow:hidden}
.sabino-portfolio-vitrine .portfolio-card.vitrine-card .media{display:block;height:100%;min-height:0 !important;background-size:cover;background-position:center center}
.sabino-portfolio-vitrine .portfolio-overlay{position:absolute;left:0;right:0;bottom:0;padding:.8rem .9rem;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.72));}
.sabino-portfolio-vitrine .portfolio-overlay p{margin:0;color:rgba(255,255,255,.8);font-size:.82rem;line-height:1.45}
@media (max-width:1100px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width:820px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
}
@media (max-width:560px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:1fr !important}
}
.archive-portfolio .sabino-portfolio-archive-grid{display:grid !important;gap:20px !important}
.archive-portfolio .sabino-portfolio-archive-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.archive-portfolio .sabino-portfolio-archive-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
.archive-portfolio .sabino-portfolio-archive-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.archive-portfolio .sabino-portfolio-archive-grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
.archive-portfolio .sabino-portfolio-archive-grid.cols-6{grid-template-columns:repeat(6,minmax(0,1fr)) !important}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card{grid-column:auto !important}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card.size-wide{grid-column:span 2 !important}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+2) .media{aspect-ratio:.82/1}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+3) .media{aspect-ratio:1/1}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+4){grid-column:span 2 !important}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+4) .media{aspect-ratio:1.55/1}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+6) .media{aspect-ratio:.75/1}
.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card .media{aspect-ratio:1.05/1;min-height:0 !important}
@media (max-width:1100px){.archive-portfolio .sabino-portfolio-archive-grid.cols-4,.archive-portfolio .sabino-portfolio-archive-grid.cols-5,.archive-portfolio .sabino-portfolio-archive-grid.cols-6{grid-template-columns:repeat(3,minmax(0,1fr)) !important}.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+4){grid-column:auto !important}}
@media (max-width:780px){.archive-portfolio .sabino-portfolio-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card,.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card.size-wide,.archive-portfolio .sabino-portfolio-archive-grid .portfolio-card:nth-child(7n+4){grid-column:auto !important}}
@media (max-width:560px){.archive-portfolio .sabino-portfolio-archive-grid{grid-template-columns:1fr !important}}


/* =========================
   V101 — stable, light, compact vitrine
========================= */
.sabino-portfolio-vitrine .portfolio-vitrine-shell{width:min(100%,1680px);max-width:none}
.sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start;
}
.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{grid-template-columns:repeat(6,minmax(0,1fr)) !important;}
.sabino-portfolio-vitrine .vitrine-card{display:block !important;grid-column:auto !important;margin:0 !important;border:0 !important;box-shadow:none !important;background:transparent !important;overflow:hidden}
.sabino-portfolio-vitrine .vitrine-card .media{display:block;aspect-ratio:4/5;min-height:auto !important;background-size:cover;background-position:center center;border-radius:2px}
.sabino-portfolio-vitrine .vitrine-card:nth-child(5n) .media{aspect-ratio:1/1}
.sabino-portfolio-vitrine .vitrine-card:nth-child(7n) .media{aspect-ratio:3/4}
.sabino-portfolio-vitrine .portfolio-overlay{display:none !important}
.sabino-portfolio-vitrine .section-head{margin-bottom:24px}
.sabino-portfolio-vitrine .section-title{max-width:12ch}

.sabino-portfolio-archive-grid.portfolio-masonry-pinterest{
  display:block !important;
  column-gap:18px;
  column-fill:balance;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-2{column-count:2}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-3{column-count:3}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-4{column-count:4}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-5{column-count:5}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-6{column-count:6}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card{
  display:inline-block !important;
  width:100%;
  margin:0 0 18px !important;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  background:#0a0a0a;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:none;
  transform:none !important;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media-link{
  display:block;
  height:auto !important;
  min-height:220px !important;
  aspect-ratio:auto !important;
  background-size:cover;
  background-position:center center;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n+1) .media{min-height:280px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n+2) .media{min-height:420px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n+3) .media{min-height:340px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n+4) .media{min-height:260px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n+5) .media{min-height:380px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:nth-child(6n) .media{min-height:300px !important;}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .content{
  position:absolute;left:0;right:0;bottom:0;padding:18px 16px 16px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.72) 100%) !important;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card p{display:none !important}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card h3{font-size:1.2rem !important;line-height:1 !important;max-width:12ch}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .media{transform:scale(1.02)}

@media (max-width: 1200px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-4,
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-5,
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest.cols-6{column-count:3}
}
@media (max-width: 820px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:2 !important;column-gap:12px}
}
@media (max-width: 560px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid{grid-template-columns:1fr !important;}
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:1 !important;}
}


/* =========================
   V102 — Portfolio Vitrine masonry like Portfolio archive
========================= */
.sabino-portfolio-vitrine .portfolio-vitrine-shell{width:min(100%,1680px);max-width:none}
.sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid{
  column-count:4 !important;
  column-gap:18px !important;
  display:block !important;
}
.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{column-count:2 !important}
.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{column-count:3 !important}
.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{column-count:4 !important}
.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid{column-count:5 !important}
.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{column-count:6 !important}
.sabino-portfolio-vitrine .vitrine-card{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 18px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  position:relative;
  overflow:hidden;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.sabino-portfolio-vitrine .vitrine-card .vitrine-media-link,
.sabino-portfolio-vitrine .vitrine-card .vitrine-media-link:visited{display:block;color:inherit;text-decoration:none}
.sabino-portfolio-vitrine .vitrine-card .media,
.sabino-portfolio-vitrine .vitrine-card .media-link{display:block !important;position:relative !important;height:auto !important;min-height:0 !important;background:none !important;overflow:hidden;border-radius:2px}
.sabino-portfolio-vitrine .vitrine-card img.vitrine-image{display:block;width:100%;height:auto;border-radius:2px;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .5s ease;box-shadow:0 22px 60px rgba(0,0,0,.18)}
.sabino-portfolio-vitrine .vitrine-card:hover img.vitrine-image{transform:scale(1.025);filter:brightness(1.02)}
.sabino-portfolio-vitrine .portfolio-overlay{position:absolute;left:0;right:0;bottom:0;padding:14px 14px 12px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.16) 30%,rgba(0,0,0,.68) 100%);opacity:0;transform:translateY(8px);transition:opacity .3s ease, transform .3s ease;display:block !important}
.sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay{opacity:1;transform:translateY(0)}
.sabino-portfolio-vitrine .portfolio-overlay p{margin:0;color:rgba(255,255,255,.88);font-size:.82rem;line-height:1.45}
@media (max-width:1280px){
  .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid{column-count:4 !important}
}
@media (max-width:1024px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:3 !important;column-gap:14px !important}
  .sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{column-count:2 !important}
  .sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{column-count:3 !important}
  .sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{column-count:3 !important}
}
@media (max-width:680px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:2 !important;column-gap:10px !important}
  .sabino-portfolio-vitrine .vitrine-card{margin-bottom:10px !important}
}
@media (max-width:480px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:1 !important}
}


/* =========================
   V103 — refined masonry polish
========================= */
.sabino-portfolio-vitrine{padding-top:56px}
.sabino-portfolio-vitrine .vitrine-head{align-items:end;gap:24px}
.sabino-portfolio-vitrine .section-kicker{margin-bottom:10px}
.sabino-portfolio-vitrine .section-title{font-size:clamp(2rem,4vw,3.8rem);line-height:.92;max-width:11ch}
.sabino-portfolio-vitrine .section-copy{max-width:34rem;color:rgba(244,237,225,.7)}
.sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v103{
  column-gap:16px !important;
  column-fill:balance;
}
.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid-v103{column-count:2 !important}
.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid-v103{column-count:3 !important}
.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid-v103{column-count:4 !important}
.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid-v103{column-count:5 !important}
.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid-v103{column-count:6 !important}
.sabino-portfolio-vitrine .vitrine-card{
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  margin:0 0 16px !important;
  position:relative;
}
.sabino-portfolio-vitrine .vitrine-card .media-figure{margin:0;position:relative}
.sabino-portfolio-vitrine .vitrine-card img.vitrine-image{
  width:100%;
  height:auto;
  display:block;
  border-radius:2px;
  box-shadow:0 18px 50px rgba(0,0,0,.16);
}
.sabino-portfolio-vitrine .vitrine-card .portfolio-overlay{
  position:absolute;
  inset:auto 0 0 0;
  padding:14px 14px 12px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 30%, rgba(0,0,0,.68) 100%);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .28s ease, transform .28s ease;
}
.sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay{opacity:1;transform:translateY(0)}
.sabino-portfolio-vitrine .vitrine-card .portfolio-overlay p{margin:0;color:#fff;font-size:.78rem;letter-spacing:.02em}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{
  column-gap:18px !important;
  column-fill:balance;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card{
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  margin:0 0 18px !important;
  width:100%;
  display:inline-block;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media-link{
  min-height:auto !important;
  aspect-ratio:auto !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media{display:block;overflow:hidden}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media img,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .media-link img{
  width:100%;height:auto;display:block;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card .content{
  padding:14px 14px 12px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.08) 24%, rgba(0,0,0,.72) 100%) !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card h3{font-size:1.12rem !important;max-width:14ch}
@media (max-width:1180px){
  .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid-v103,
  .sabino-portfolio-vitrine.cols-6 .portfolio-vitrine-grid-v103{column-count:4 !important}
}
@media (max-width:980px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v103{column-count:3 !important;column-gap:14px !important}
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:3 !important;column-gap:14px !important}
}
@media (max-width:720px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v103{column-count:2 !important;column-gap:10px !important}
  .sabino-portfolio-vitrine .vitrine-card{margin-bottom:10px !important}
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:2 !important;column-gap:12px !important}
}
@media (max-width:480px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v103,
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:1 !important}
}


/* =========================
   V104 — masonry refinement
========================= */
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest{
  column-count:var(--sabino-vitrine-cols,4);
  column-gap:22px;
  align-items:initial!important;
  display:block!important;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:var(--sabino-archive-cols,4)}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-card,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card{
  display:inline-block!important;
  width:100%!important;
  margin:0 0 22px!important;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  background:transparent!important;
  border:0!important;
  overflow:hidden;
  vertical-align:top;
}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .media-figure-v104,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .media-link-v104{
  position:relative;
  display:block;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.07);
  background:#080808;
}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .vitrine-image-v104,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-cover-image-v104{
  display:block;
  width:100%;
  height:auto!important;
  aspect-ratio:auto!important;
  min-height:0!important;
  object-fit:contain!important;
  background:#080808;
}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-card:hover .vitrine-image-v104,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .portfolio-cover-image-v104{
  transform:scale(1.02);
  transition:transform .6s cubic-bezier(.22,1,.36,1);
}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-overlay-v104,
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104{
  margin-top:10px;
}
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-overlay-v104 p{
  margin:0;
  color:rgba(244,237,225,.82);
  font-size:.84rem;
  line-height:1.45;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104{
  padding:0 2px 4px;
  background:transparent!important;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 .selected-meta{
  margin:0 0 8px;
  font-size:.66rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--gold);
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 h3{
  margin:0 0 8px;
  font-size:clamp(1.5rem,1.7vw,2rem);
  line-height:.95;
}
.sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 p{
  margin:0;
  color:rgba(244,237,225,.7);
  font-size:.95rem;
  line-height:1.55;
}
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest.sabino-portfolio-archive-grid.cols-2{--sabino-archive-cols:2}
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest.sabino-portfolio-archive-grid.cols-3{--sabino-archive-cols:3}
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest.sabino-portfolio-archive-grid.cols-4{--sabino-archive-cols:4}
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest.sabino-portfolio-archive-grid.cols-5{--sabino-archive-cols:5}
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest.sabino-portfolio-archive-grid.cols-6{--sabino-archive-cols:6}
@media (max-width:1280px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104{column-count:3!important}
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:max(2,var(--sabino-archive-cols,4) - 1)}
}
@media (max-width:900px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104,
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:2!important;column-gap:18px}
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-card,
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card{margin:0 0 18px!important}
}
@media (max-width:560px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104,
  .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:1!important}
}


/* =========================
   V105 — true editorial masonry + hover-only copy
========================= */
.sabino-portfolio-vitrine .portfolio-vitrine-shell{max-width:min(1680px,94vw);}
.sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104{
  display:block !important;
  column-count:var(--sabino-vitrine-cols,4) !important;
  column-gap:16px !important;
  column-fill:auto;
}
.sabino-portfolio-vitrine .vitrine-card,
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104 .portfolio-card{
  position:relative !important;
  display:inline-block !important;
  width:100% !important;
  margin:0 0 16px !important;
  padding:0 !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  overflow:hidden !important;
  vertical-align:top !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.sabino-portfolio-vitrine .media-figure-v104,
.sabino-portfolio-vitrine .vitrine-card .media,
.sabino-portfolio-vitrine .vitrine-card .media-figure{
  margin:0 !important;
  display:block !important;
  position:relative !important;
  overflow:hidden !important;
  border-radius:2px !important;
  background:#0a0a0a !important;
}
.sabino-portfolio-vitrine .vitrine-image,
.sabino-portfolio-vitrine .vitrine-image-v104{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  border-radius:2px !important;
  transform:translateZ(0);
  transition:transform .8s cubic-bezier(.22,1,.36,1), filter .35s ease !important;
}
.sabino-portfolio-vitrine .vitrine-card:hover .vitrine-image,
.sabino-portfolio-vitrine .vitrine-card:hover .vitrine-image-v104{
  transform:scale(1.028);
  filter:brightness(1.02);
}
.sabino-portfolio-vitrine .portfolio-overlay,
.sabino-portfolio-vitrine .portfolio-overlay-v104{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  margin:0 !important;
  padding:18px 16px 14px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.10) 28%, rgba(0,0,0,.82) 100%) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(8px) !important;
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease !important;
}
.sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay,
.sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay-v104{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) !important;
}
.sabino-portfolio-vitrine .portfolio-overlay p,
.sabino-portfolio-vitrine .portfolio-overlay-v104 p{
  margin:0 !important;
  color:#f4ede1 !important;
  font-size:.82rem !important;
  line-height:1.5 !important;
  letter-spacing:.01em !important;
}

.archive-portfolio .portfolio-archive-hero .page-hero-media,
.archive-portfolio .portfolio-archive-hero .page-hero-media img{
  display:block;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{
  display:block !important;
  column-count:var(--sabino-archive-cols,4) !important;
  column-gap:18px !important;
  column-fill:auto;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card-v104{
  position:relative !important;
  display:inline-block !important;
  width:100% !important;
  margin:0 0 18px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  vertical-align:top !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .media-link-v104,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .media-link,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .media{
  position:relative !important;
  display:block !important;
  overflow:hidden !important;
  border-radius:2px !important;
  background:#0a0a0a !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-cover-image-v104,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .media img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  border-radius:2px !important;
  transform:translateZ(0);
  transition:transform .85s cubic-bezier(.22,1,.36,1), filter .35s ease !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .portfolio-cover-image-v104,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .media img{
  transform:scale(1.03);
  filter:brightness(1.02);
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  padding:22px 18px 16px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.14) 28%, rgba(0,0,0,.86) 100%) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(10px) !important;
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .content,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .portfolio-card:hover .content-v104{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content .selected-meta,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 .selected-meta{
  color:#c8a96a !important;
  font-size:.66rem !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
  margin:0 0 10px !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content h3,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 h3{
  margin:0 0 8px !important;
  font-size:clamp(1.2rem,1.4vw,1.9rem) !important;
  line-height:.95 !important;
  max-width:12ch !important;
  color:#f4ede1 !important;
}
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content p,
.archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest .content-v104 p{
  display:block !important;
  margin:0 !important;
  color:rgba(244,237,225,.82) !important;
  font-size:.87rem !important;
  line-height:1.5 !important;
}
@media (max-width:1180px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104{column-count:3 !important;column-gap:14px !important;}
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:3 !important;column-gap:14px !important;}
}
@media (max-width:760px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104{column-count:2 !important;column-gap:10px !important;}
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:2 !important;column-gap:10px !important;}
}
@media (max-width:480px){
  .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .sabino-portfolio-vitrine .portfolio-vitrine-grid-v104,
  .archive-portfolio .sabino-portfolio-archive-grid.portfolio-masonry-pinterest{column-count:1 !important;}
}

/* =========================
   V106 — clean Pinterest-style masonry for Home Vitrine + Portfolio archive
========================= */
.sabino-waterfall{
  column-count: var(--sabino-waterfall-cols, 4);
  column-gap: 16px;
  column-fill: balance;
  display: block !important;
}
.sabino-waterfall.cols-2{--sabino-waterfall-cols:2}
.sabino-waterfall.cols-3{--sabino-waterfall-cols:3}
.sabino-waterfall.cols-4{--sabino-waterfall-cols:4}
.sabino-waterfall.cols-5{--sabino-waterfall-cols:5}
.sabino-waterfall.cols-6{--sabino-waterfall-cols:6}

.sabino-waterfall-card{
  display: inline-block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  page-break-inside: avoid !important;
  vertical-align: top !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.sabino-waterfall-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.sabino-waterfall-figure{
  position: relative;
  margin: 0 !important;
  overflow: hidden;
  border-radius: 2px;
  background: #0a0a0a;
}

.sabino-waterfall-image{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  transform: translateZ(0);
  transition: transform .7s cubic-bezier(.22,1,.36,1), filter .35s ease;
}

.sabino-waterfall-card:hover .sabino-waterfall-image{
  transform: scale(1.025);
  filter: brightness(1.02);
}

.sabino-waterfall-overlay{
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 18px 16px 14px;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 28%, rgba(0,0,0,.84) 100%);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .28s ease, transform .28s ease, visibility .28s ease;
  z-index: 2;
}

.sabino-waterfall-card:hover .sabino-waterfall-overlay,
.sabino-waterfall-card:focus-within .sabino-waterfall-overlay{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.sabino-waterfall-overlay p,
.sabino-waterfall-overlay h3,
.sabino-waterfall-overlay .selected-meta{
  margin: 0;
}

.sabino-portfolio-vitrine .portfolio-vitrine-grid,
.sabino-portfolio-vitrine .portfolio-vitrine-grid-v104,
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid{
  display: none !important;
}
.sabino-portfolio-vitrine .sabino-vitrine-waterfall{
  display:block !important;
}
.sabino-portfolio-vitrine .sabino-waterfall-overlay p{
  color: rgba(244,237,225,.92);
  font-size: .84rem;
  line-height: 1.5;
  letter-spacing: .01em;
}
.sabino-portfolio-vitrine .section-head{margin-bottom:22px}
.sabino-portfolio-vitrine .portfolio-vitrine-shell{max-width:min(1660px,94vw)}

.archive-portfolio .collection-grid,
.archive-portfolio .sabino-portfolio-archive-grid,
.archive-portfolio .portfolio-masonry-pinterest{
  display: none !important;
}
.archive-portfolio .sabino-portfolio-waterfall{
  display:block !important;
}
.archive-portfolio .sabino-waterfall-overlay .selected-meta{
  color: var(--gold);
  font-size: .66rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.archive-portfolio .sabino-waterfall-overlay h3{
  color: #f4ede1;
  font-size: clamp(1.15rem, 1.2vw + .9rem, 1.85rem);
  line-height: .96;
  margin-bottom: 8px;
  max-width: 13ch;
}
.archive-portfolio .sabino-waterfall-overlay p{
  color: rgba(244,237,225,.82);
  font-size: .88rem;
  line-height: 1.5;
}
.archive-portfolio .portfolio-archive-hero .page-hero-media,
.archive-portfolio .portfolio-archive-hero .page-hero-media img{
  display:block !important;
}

@media (max-width: 1180px){
  .sabino-waterfall{column-count:3 !important; column-gap:14px}
  .sabino-waterfall.cols-2{column-count:2 !important}
  .sabino-waterfall.cols-3{column-count:3 !important}
}
@media (max-width: 760px){
  .sabino-waterfall{column-count:2 !important; column-gap:10px}
  .sabino-waterfall-card{margin-bottom:10px !important}
}
@media (max-width: 480px){
  .sabino-waterfall{column-count:1 !important}
}


/* =========================
   V107 — Editorial masonry refinement
========================= */
body.home #signature-portfolio .portfolio-vitrine-shell,
body.home .sabino-portfolio-vitrine .portfolio-vitrine-shell{
  max-width:min(1700px, calc(100vw - 64px)) !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall,
body.home .sabino-portfolio-vitrine .sabino-vitrine-waterfall{
  display:block !important;
  column-count:4 !important;
  column-gap:18px !important;
  column-fill:auto !important;
  width:100% !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall .sabino-waterfall-card,
body.home .sabino-portfolio-vitrine .sabino-vitrine-waterfall .sabino-waterfall-card,
.archive-portfolio .sabino-portfolio-waterfall .sabino-waterfall-card{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 18px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall .sabino-waterfall-figure,
.archive-portfolio .sabino-portfolio-waterfall .sabino-waterfall-figure{
  margin:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border-radius:2px !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall .sabino-waterfall-image,
.archive-portfolio .sabino-portfolio-waterfall .sabino-waterfall-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:cover !important;
  background:transparent !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall .sabino-waterfall-overlay,
.archive-portfolio .sabino-portfolio-waterfall .sabino-waterfall-overlay{
  padding:22px 18px 18px !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.16) 36%, rgba(0,0,0,.88) 100%) !important;
}
.archive-portfolio .sabino-portfolio-waterfall{
  display:block !important;
  column-count:var(--sabino-waterfall-cols, 4) !important;
  column-gap:18px !important;
  column-fill:auto !important;
}
.archive-portfolio .portfolio-archive-shell{
  max-width:min(1720px, calc(100vw - 64px)) !important;
}
.archive-portfolio .portfolio-archive-lead,
.archive-portfolio .portfolio-archive-intro{
  max-width:760px;
}
.archive-portfolio .sabino-portfolio-waterfall .selected-meta,
body.home #signature-portfolio .sabino-vitrine-waterfall .selected-meta{
  letter-spacing:.22em !important;
}
.archive-portfolio .sabino-portfolio-waterfall h3,
body.home #signature-portfolio .sabino-vitrine-waterfall h3{
  font-size:clamp(1.1rem,1vw + .9rem,1.8rem) !important;
  line-height:.94 !important;
}
.archive-portfolio .sabino-portfolio-waterfall p,
body.home #signature-portfolio .sabino-vitrine-waterfall p{
  font-size:.88rem !important;
  line-height:1.45 !important;
}
@media (max-width: 1180px){
  body.home #signature-portfolio .sabino-vitrine-waterfall,
  .archive-portfolio .sabino-portfolio-waterfall{
    column-count:3 !important;
    column-gap:14px !important;
  }
}
@media (max-width: 840px){
  body.home #signature-portfolio .portfolio-vitrine-shell,
  .archive-portfolio .portfolio-archive-shell{
    max-width:min(100vw - 32px, 100%) !important;
  }
  body.home #signature-portfolio .sabino-vitrine-waterfall,
  .archive-portfolio .sabino-portfolio-waterfall{
    column-count:2 !important;
    column-gap:12px !important;
  }
  body.home #signature-portfolio .sabino-vitrine-waterfall .sabino-waterfall-card,
  .archive-portfolio .sabino-portfolio-waterfall .sabino-waterfall-card{margin-bottom:12px !important;}
}
@media (max-width: 520px){
  body.home #signature-portfolio .sabino-vitrine-waterfall,
  .archive-portfolio .sabino-portfolio-waterfall{
    column-count:1 !important;
    column-gap:0 !important;
  }
}


/* =========================
   V108 — Robust masonry fix for Home Vitrine + Portfolio archive
========================= */
.sabino-waterfall.js-masonry-ready{
  column-count: initial !important;
  display: grid !important;
  grid-template-columns: repeat(var(--sabino-cols-current, 4), minmax(0, 1fr)) !important;
  gap: var(--sabino-waterfall-gap, 18px) !important;
  align-items: start !important;
}
.sabino-waterfall.js-masonry-ready::before,
.sabino-waterfall.js-masonry-ready::after{content:none !important; display:none !important;}
.sabino-waterfall.js-masonry-ready .sabino-masonry-col{
  display:flex !important;
  flex-direction:column !important;
  gap: var(--sabino-waterfall-gap, 18px) !important;
  min-width:0 !important;
}
.sabino-waterfall.js-masonry-ready .sabino-waterfall-card{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  break-inside:auto !important;
  -webkit-column-break-inside:auto !important;
  page-break-inside:auto !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall.js-masonry-ready,
.archive-portfolio .sabino-portfolio-waterfall.js-masonry-ready{
  column-count: initial !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall.js-masonry-ready .sabino-waterfall-figure,
.archive-portfolio .sabino-portfolio-waterfall.js-masonry-ready .sabino-waterfall-figure{
  background: transparent !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall.js-masonry-ready .sabino-waterfall-image,
.archive-portfolio .sabino-portfolio-waterfall.js-masonry-ready .sabino-waterfall-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
}
body.home #signature-portfolio .sabino-vitrine-waterfall.js-masonry-ready .sabino-waterfall-overlay,
.archive-portfolio .sabino-portfolio-waterfall.js-masonry-ready .sabino-waterfall-overlay{
  left:0; right:0; bottom:0;
}
body.home #signature-portfolio .sabino-vitrine-waterfall.js-masonry-ready .sabino-waterfall-card,
.archive-portfolio .sabino-portfolio-waterfall.js-masonry-ready .sabino-waterfall-card{
  opacity:1 !important;
  visibility:visible !important;
}
@media (max-width:1180px){
  .sabino-waterfall.js-masonry-ready{grid-template-columns: repeat(var(--sabino-cols-current, 3), minmax(0, 1fr)) !important;}
}
@media (max-width:840px){
  .sabino-waterfall.js-masonry-ready{grid-template-columns: repeat(var(--sabino-cols-current, 2), minmax(0, 1fr)) !important; gap:12px !important;}
  .sabino-waterfall.js-masonry-ready .sabino-masonry-col{gap:12px !important;}
}
@media (max-width:520px){
  .sabino-waterfall.js-masonry-ready{grid-template-columns:1fr !important; gap:12px !important;}
}


/* =========================
   V109 — PORTFOLIO MASONRY RESET
========================= */
.home .sabino-portfolio-vitrine,
.archive-portfolio{
  --sabino-masonry-gap: 16px;
}

.home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .sabino-v109-masonry,
.archive-portfolio .sabino-v109-masonry,
.archive-portfolio .sabino-portfolio-archive-grid{
  display:block !important;
  column-count:3 !important;
  column-gap:var(--sabino-masonry-gap) !important;
  grid-template-columns:none !important;
  gap:0 !important;
}

.home .sabino-portfolio-vitrine .portfolio-vitrine-grid > *,
.home .sabino-portfolio-vitrine .sabino-v109-masonry > *,
.archive-portfolio .sabino-v109-masonry > *,
.archive-portfolio .sabino-portfolio-archive-grid > *{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 var(--sabino-masonry-gap) !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
}

.home .sabino-portfolio-vitrine .vitrine-card,
.archive-portfolio .sabino-archive-card{
  position:relative !important;
  background:#0b0b0b !important;
  border:1px solid rgba(255,255,255,.06) !important;
  border-radius:0 !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

.home .sabino-portfolio-vitrine .portfolio-card-link,
.archive-portfolio .sabino-waterfall-link{
  display:block !important;
  position:relative !important;
  opacity:1 !important;
}

.home .sabino-portfolio-vitrine .media,
.archive-portfolio .sabino-waterfall-figure{
  position:relative !important;
  display:block !important;
  margin:0 !important;
  background:none !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:auto !important;
}

.home .sabino-portfolio-vitrine .media img,
.home .sabino-portfolio-vitrine img.sabino-waterfall-image,
.archive-portfolio img.sabino-waterfall-image,
.archive-portfolio img.sabino-archive-image,
.archive-portfolio .portfolio-cover-image,
.home .sabino-portfolio-vitrine img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  background:#0b0b0b !important;
}

.home .sabino-portfolio-vitrine .portfolio-overlay,
.archive-portfolio .sabino-waterfall-overlay{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  padding:16px 16px 14px !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 34%, rgba(0,0,0,.82) 100%) !important;
  opacity:0 !important;
  transform:translateY(10px) !important;
  transition:opacity .28s ease, transform .28s ease !important;
  display:block !important;
}
.home .sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay,
.home .sabino-portfolio-vitrine .vitrine-card:focus-within .portfolio-overlay,
.archive-portfolio .sabino-archive-card:hover .sabino-waterfall-overlay,
.archive-portfolio .sabino-archive-card:focus-within .sabino-waterfall-overlay{
  opacity:1 !important;
  transform:translateY(0) !important;
}
.home .sabino-portfolio-vitrine .portfolio-overlay h3,
.archive-portfolio .sabino-waterfall-overlay h3{
  margin:0 !important;
  color:#fff !important;
  font-family:var(--serif) !important;
  font-size:clamp(1.05rem,1vw + .75rem,1.7rem) !important;
  line-height:1.02 !important;
}
.home .sabino-portfolio-vitrine .portfolio-overlay p,
.archive-portfolio .sabino-waterfall-overlay p{
  margin:.35rem 0 0 !important;
  color:rgba(255,255,255,.84) !important;
  font-size:.9rem !important;
  line-height:1.45 !important;
}
.home .sabino-portfolio-vitrine .portfolio-overlay .selected-meta,
.archive-portfolio .sabino-waterfall-overlay .selected-meta{
  margin:0 0 .45rem !important;
  color:var(--gold) !important;
  font-size:.67rem !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}

.home .sabino-portfolio-vitrine .vitrine-head,
.archive-portfolio .portfolio-toolbar{
  margin-bottom:22px !important;
}

@media (max-width: 1200px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .sabino-v109-masonry,
  .archive-portfolio .sabino-v109-masonry,
  .archive-portfolio .sabino-portfolio-archive-grid{column-count:3 !important;}
}
@media (max-width: 900px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .sabino-v109-masonry,
  .archive-portfolio .sabino-v109-masonry,
  .archive-portfolio .sabino-portfolio-archive-grid{column-count:2 !important; column-gap:12px !important;}
}
@media (max-width: 620px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
  .home .sabino-portfolio-vitrine .sabino-v109-masonry,
  .archive-portfolio .sabino-v109-masonry,
  .archive-portfolio .sabino-portfolio-archive-grid{column-count:1 !important; column-gap:0 !important;}
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid > *,
  .home .sabino-portfolio-vitrine .sabino-v109-masonry > *,
  .archive-portfolio .sabino-v109-masonry > *,
  .archive-portfolio .sabino-portfolio-archive-grid > *{margin-bottom:12px !important;}
}


/* =========================
   V110 — SIMPLE VITRINE + PORTFOLIO GRID
========================= */
.home .sabino-v110-vitrine-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start !important;
}
.home .sabino-v110-vitrine-card{
  display:block !important;
  margin:0 !important;
}
.home .sabino-v110-vitrine-figure{
  position:relative;
  margin:0;
  overflow:hidden;
  background:#0b0b0b;
  border:1px solid rgba(255,255,255,.06);
}
.home .sabino-v110-vitrine-image{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.home .sabino-v110-vitrine-overlay,
.archive-portfolio .sabino-v110-portfolio-overlay{
  position:absolute;
  inset:auto 0 0 0;
  padding:14px 14px 12px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.2) 35%,rgba(0,0,0,.82) 100%);
  opacity:0;
  transform:translateY(10px);
  transition:opacity .25s ease,transform .25s ease;
}
.home .sabino-v110-vitrine-card:hover .sabino-v110-vitrine-overlay,
.home .sabino-v110-vitrine-card:focus-within .sabino-v110-vitrine-overlay,
.archive-portfolio .portfolio-collection-card:hover .sabino-v110-portfolio-overlay,
.archive-portfolio .portfolio-collection-card:focus-within .sabino-v110-portfolio-overlay{
  opacity:1;
  transform:translateY(0);
}
.home .sabino-v110-vitrine-overlay p,
.archive-portfolio .sabino-v110-portfolio-overlay p{
  margin:.35rem 0 0;
  color:rgba(255,255,255,.86);
  font-size:.92rem;
  line-height:1.45;
}
.archive-portfolio .portfolio-collection-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
.archive-portfolio .portfolio-collection-card{
  overflow:hidden;
  background:linear-gradient(180deg,rgba(15,15,15,.82),rgba(9,9,9,.88));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.archive-portfolio .sabino-v110-portfolio-media{
  position:relative;
  background:#0b0b0b;
  min-height:280px;
}
.archive-portfolio .sabino-v110-portfolio-media img,
.archive-portfolio .sabino-v110-portfolio-image,
.archive-portfolio .portfolio-cover-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
}
.archive-portfolio .sabino-v110-portfolio-overlay .collection-meta{
  padding:0;
  margin:0 0 .45rem;
  color:var(--gold);
  letter-spacing:.18em;
  font-size:.67rem;
  text-transform:uppercase;
}
.archive-portfolio .sabino-v110-portfolio-overlay .content{
  padding:0;
}
.archive-portfolio .sabino-v110-portfolio-overlay h3{
  margin:0;
  color:#fff;
  font-family:var(--serif);
  font-size:clamp(1.2rem,1vw + .95rem,1.9rem);
  line-height:1.02;
}
/* neutralize legacy masonry rules */
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid,
.home .sabino-portfolio-vitrine .sabino-v109-masonry,
.archive-portfolio .sabino-v109-masonry,
.archive-portfolio .sabino-portfolio-archive-grid,
.archive-portfolio .collection-grid.dynamic-grid.portfolio-masonry-pinterest{
  column-count:unset !important;
  display:unset;
}
@media (max-width: 1100px){
  .home .sabino-v110-vitrine-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .archive-portfolio .portfolio-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width: 700px){
  .home .sabino-v110-vitrine-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important;}
  .archive-portfolio .portfolio-collection-grid{grid-template-columns:1fr !important; gap:18px !important;}
}


/* =========================
   V114 — HOME PORTFOLIO VITRINE REBUILT
========================= */
.home .sabino-v114-vitrine-section{padding-top:clamp(32px,4vw,54px);}
.home .sabino-v114-shell{max-width:min(1680px,94vw) !important;}
.home .sabino-v114-vitrine-head{margin-bottom:24px;}
.home .sabino-v114-vitrine-grid{
  column-count:4 !important;
  column-gap:20px !important;
  padding:20px !important;
  background:transparent !important;
}
.home .sabino-v114-vitrine-item{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 20px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  transform:none !important;
}
.home .sabino-v114-vitrine-figure{
  display:block !important;
  margin:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.home .sabino-v114-vitrine-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  aspect-ratio:auto !important;
  border:0 !important;
}
.home .sabino-v114-vitrine-item::before,
.home .sabino-v114-vitrine-item::after,
.home .sabino-v114-vitrine-figure::before,
.home .sabino-v114-vitrine-figure::after,
.home .sabino-v114-vitrine-item .sabino-v110-vitrine-overlay,
.home .sabino-v114-vitrine-item figcaption,
.home .sabino-v114-vitrine-item .portfolio-overlay{display:none !important;content:none !important;}
.home .sabino-v114-vitrine-grid > *{float:none !important; clear:none !important;}
/* neutralize legacy vitrine layouts */
.home #signature-portfolio .portfolio-grid,
.home #signature-portfolio .dynamic-grid,
.home #signature-portfolio .portfolio-vitrine-grid,
.home #signature-portfolio .sabino-v110-vitrine-grid,
.home #signature-portfolio .sabino-v109-masonry,
.home #signature-portfolio .sabino-waterfall,
.home #signature-portfolio .sabino-v109-vitrine-grid{
  display:block !important;
  grid-template-columns:none !important;
  column-count:unset !important;
}
@media (max-width: 1180px){
  .home .sabino-v114-vitrine-grid{column-count:3 !important;}
}
@media (max-width: 860px){
  .home .sabino-v114-vitrine-grid{column-count:2 !important; padding:16px !important; column-gap:16px !important;}
  .home .sabino-v114-vitrine-item{margin-bottom:16px !important;}
}
@media (max-width: 560px){
  .home .sabino-v114-vitrine-grid{column-count:1 !important; padding:12px !important; column-gap:0 !important;}
  .home .sabino-v114-vitrine-item{margin-bottom:12px !important;}
}


/* ===============================
   V116 — CLEAN PORTFOLIO VITRINE
   =============================== */
.home .sabino-portfolio-vitrine-v116,
.sabino-portfolio-vitrine-v116{padding-top:32px !important;padding-bottom:32px !important;}
.sabino-portfolio-vitrine-v116 .portfolio-vitrine-shell{max-width:min(1520px,94vw) !important;width:min(1520px,94vw) !important;padding:0 !important;}
.sabino-portfolio-vitrine-v116 .vitrine-grid-clean{column-count:4 !important;column-gap:20px !important;padding:20px !important;margin:0 !important;}
.sabino-portfolio-vitrine-v116 .vitrine-item{display:block !important;break-inside:avoid !important;-webkit-column-break-inside:avoid !important;page-break-inside:avoid !important;margin:0 0 20px !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;overflow:visible !important;}
.sabino-portfolio-vitrine-v116 .vitrine-item,
.sabino-portfolio-vitrine-v116 .vitrine-item *{height:auto !important;min-height:0 !important;max-height:none !important;aspect-ratio:auto !important;}
.sabino-portfolio-vitrine-v116 .vitrine-item img.vitrine-image,
.sabino-portfolio-vitrine-v116 .vitrine-item img{display:block !important;width:100% !important;height:auto !important;max-width:100% !important;object-fit:contain !important;background:transparent !important;border-radius:0 !important;box-shadow:none !important;}
.sabino-portfolio-vitrine-v116 .vitrine-item::before,
.sabino-portfolio-vitrine-v116 .vitrine-item::after,
.sabino-portfolio-vitrine-v116 .portfolio-overlay,
.sabino-portfolio-vitrine-v116 .section-head,
.sabino-portfolio-vitrine-v116 .vitrine-head,
.sabino-portfolio-vitrine-v116 .vitrine-intro-copy{display:none !important;}
.sabino-portfolio-vitrine-v116 .vitrine-empty-note{padding:20px;color:rgba(255,255,255,.72);border:1px dashed rgba(255,255,255,.16);}
@media (max-width:1200px){
  .sabino-portfolio-vitrine-v116 .vitrine-grid-clean{column-count:3 !important;}
}
@media (max-width:860px){
  .sabino-portfolio-vitrine-v116 .vitrine-grid-clean{column-count:2 !important;column-gap:16px !important;padding:16px !important;}
  .sabino-portfolio-vitrine-v116 .vitrine-item{margin-bottom:16px !important;}
}
@media (max-width:560px){
  .sabino-portfolio-vitrine-v116 .vitrine-grid-clean{column-count:1 !important;column-gap:12px !important;padding:12px !important;}
  .sabino-portfolio-vitrine-v116 .vitrine-item{margin-bottom:12px !important;}
}


/* ==========================================
   V117 — COMPLETE RESET PORTFOLIO VITRINE
   ========================================== */
.home .sabino-portfolio-vitrine-v117,
.sabino-portfolio-vitrine-v117 {
  --snpv-gap: 20px;
}
.home .sabino-portfolio-vitrine-v117 .snpv117-shell,
.sabino-portfolio-vitrine-v117 .snpv117-shell {
  width: min(100%, 1680px) !important;
  max-width: none !important;
}
.home .sabino-portfolio-vitrine-v117 .snpv117-grid,
.sabino-portfolio-vitrine-v117 .snpv117-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--snpv-gap) !important;
  padding: var(--snpv-gap) !important;
  align-items: start !important;
}
.home .sabino-portfolio-vitrine-v117 .snpv117-item,
.sabino-portfolio-vitrine-v117 .snpv117-item {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
  text-decoration: none !important;
  aspect-ratio: auto !important;
}
.home .sabino-portfolio-vitrine-v117 .snpv117-item::before,
.home .sabino-portfolio-vitrine-v117 .snpv117-item::after,
.sabino-portfolio-vitrine-v117 .snpv117-item::before,
.sabino-portfolio-vitrine-v117 .snpv117-item::after {
  content: none !important;
  display: none !important;
}
.home .sabino-portfolio-vitrine-v117 .snpv117-image,
.sabino-portfolio-vitrine-v117 .snpv117-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  aspect-ratio: auto !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.home .sabino-portfolio-vitrine-v117 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v117 .portfolio-card,
.home .sabino-portfolio-vitrine-v117 .media,
.home .sabino-portfolio-vitrine-v117 .media-link,
.sabino-portfolio-vitrine-v117 .portfolio-overlay,
.sabino-portfolio-vitrine-v117 .portfolio-card,
.sabino-portfolio-vitrine-v117 .media,
.sabino-portfolio-vitrine-v117 .media-link {
  display: none !important;
}
@media (max-width: 1199px) {
  .home .sabino-portfolio-vitrine-v117 .snpv117-grid,
  .sabino-portfolio-vitrine-v117 .snpv117-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 860px) {
  .home .sabino-portfolio-vitrine-v117 .snpv117-grid,
  .sabino-portfolio-vitrine-v117 .snpv117-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    padding: 14px !important;
  }
}
@media (max-width: 560px) {
  .home .sabino-portfolio-vitrine-v117 .snpv117-grid,
  .sabino-portfolio-vitrine-v117 .snpv117-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ===============================
   V118 — PORTFOLIO VITRINE RESET
   =============================== */
.sabino-portfolio-vitrine-v118 .portfolio-vitrine-shell{
  width:min(100%,1680px) !important;
  max-width:none !important;
}
.sabino-portfolio-vitrine-v118 .sp-vitrine-grid{
  column-count:4 !important;
  column-gap:20px !important;
  padding:20px !important;
  margin:0 !important;
}
.sabino-portfolio-vitrine-v118 .sp-vitrine-item{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 20px !important;
  padding:0 !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  min-height:0 !important;
  height:auto !important;
  overflow:hidden !important;
  text-decoration:none !important;
}
.sabino-portfolio-vitrine-v118 .sp-vitrine-item img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.sabino-portfolio-vitrine-v118 .sp-vitrine-item::before,
.sabino-portfolio-vitrine-v118 .sp-vitrine-item::after,
.sabino-portfolio-vitrine-v118 .sp-vitrine-item img::before,
.sabino-portfolio-vitrine-v118 .sp-vitrine-item img::after{display:none !important;content:none !important;}
.sabino-portfolio-vitrine-v118 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine-v118 .portfolio-card,
.sabino-portfolio-vitrine-v118 .vitrine-card,
.sabino-portfolio-vitrine-v118 .portfolio-overlay{all:unset;}
@media (max-width:1200px){
  .sabino-portfolio-vitrine-v118 .sp-vitrine-grid{column-count:3 !important;}
}
@media (max-width:900px){
  .sabino-portfolio-vitrine-v118 .sp-vitrine-grid{column-count:2 !important;column-gap:14px !important;padding:14px !important;}
  .sabino-portfolio-vitrine-v118 .sp-vitrine-item{margin-bottom:14px !important;}
}
@media (max-width:560px){
  .sabino-portfolio-vitrine-v118 .sp-vitrine-grid{column-count:1 !important;}
}


/* =========================
   V119 — Featured portfolio vitrine
========================= */
.sabino-portfolio-vitrine-v119 .sp-vitrine-grid-v119{
  column-count: 4 !important;
  column-gap: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
}
.sabino-portfolio-vitrine-v119 .sp-vitrine-item-v119{
  display:block !important;
  break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  page-break-inside: avoid !important;
  margin:0 0 18px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.sabino-portfolio-vitrine-v119 .sp-vitrine-item-v119,
.sabino-portfolio-vitrine-v119 .sp-vitrine-item-v119 *{
  min-height:0 !important;
  max-height:none !important;
}
.sabino-portfolio-vitrine-v119 .sp-vitrine-image-v119{
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  background:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.sabino-portfolio-vitrine-v119 .portfolio-card,
.sabino-portfolio-vitrine-v119 .portfolio-overlay,
.sabino-portfolio-vitrine-v119 [class*="overlay"]{
  display:none !important;
}
@media (max-width: 1200px){
  .sabino-portfolio-vitrine-v119 .sp-vitrine-grid-v119{column-count:3 !important;column-gap:16px !important;}
  .sabino-portfolio-vitrine-v119 .sp-vitrine-item-v119{margin-bottom:16px !important;}
}
@media (max-width: 767px){
  .sabino-portfolio-vitrine-v119 .sp-vitrine-grid-v119{column-count:2 !important;column-gap:12px !important;}
  .sabino-portfolio-vitrine-v119 .sp-vitrine-item-v119{margin-bottom:12px !important;}
}


/* ===============================
   V120 — PORTFOLIO VITRINE RESET
   =============================== */
.home .sabino-portfolio-vitrine-v120,
.sabino-portfolio-vitrine-v120{padding:32px 0 !important;}
.home .sabino-portfolio-vitrine-v120 .portfolio-vitrine-shell,
.sabino-portfolio-vitrine-v120 .portfolio-vitrine-shell{max-width:min(1560px,96vw) !important;width:min(1560px,96vw) !important;margin:0 auto !important;padding:0 !important;}
.home .sabino-portfolio-vitrine-v120 .section-head,
.sabino-portfolio-vitrine-v120 .section-head{margin-bottom:24px !important;}
.home .sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120,
.sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120{column-count:4 !important;column-gap:20px !important;padding:0 !important;margin:0 !important;line-height:0 !important;}
.home .sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120,
.sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120{display:block !important;break-inside:avoid !important;-webkit-column-break-inside:avoid !important;page-break-inside:avoid !important;margin:0 0 20px !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;overflow:visible !important;line-height:0 !important;}
.home .sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120,
.home .sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120 *,
.sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120,
.sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120 *{min-height:0 !important;max-height:none !important;height:auto !important;aspect-ratio:auto !important;}
.home .sabino-portfolio-vitrine-v120 .sp-vitrine-image-v120,
.sabino-portfolio-vitrine-v120 .sp-vitrine-image-v120{display:block !important;width:100% !important;height:auto !important;max-width:100% !important;object-fit:contain !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}
.home .sabino-portfolio-vitrine-v120 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v120 [class*="overlay"],
.home .sabino-portfolio-vitrine-v120 [class*="media"],
.sabino-portfolio-vitrine-v120 .portfolio-overlay,
.sabino-portfolio-vitrine-v120 [class*="overlay"],
.sabino-portfolio-vitrine-v120 [class*="media"]{display:none !important;content:none !important;}
.home .sabino-portfolio-vitrine-v120 .vitrine-empty-note,
.sabino-portfolio-vitrine-v120 .vitrine-empty-note{padding:20px;border:1px dashed rgba(255,255,255,.14);color:rgba(255,255,255,.72);line-height:1.5 !important;}
@media (max-width: 1199px){
  .home .sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120,
  .sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120{column-count:3 !important;}
}
@media (max-width: 767px){
  .home .sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120,
  .sabino-portfolio-vitrine-v120 .sp-vitrine-grid-v120{column-count:2 !important;column-gap:14px !important;}
  .home .sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120,
  .sabino-portfolio-vitrine-v120 .sp-vitrine-item-v120{margin-bottom:14px !important;}
}


/* V121 — Portfolio archive refined to match Stories */
.portfolio-v121-shell .portfolio-v121-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.portfolio-v121-shell .portfolio-story-card{background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008));border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;}
.portfolio-v121-shell .portfolio-story-card .story-card-link{display:block;height:100%;}
.portfolio-v121-shell .portfolio-story-card .media{aspect-ratio:4/5;min-height:320px;background-size:cover;background-position:center;}
.portfolio-v121-shell .portfolio-story-card .content{padding:20px 24px 24px;display:flex;flex-direction:column;gap:10px;}
.portfolio-v121-shell .portfolio-story-card h3{margin:0;font-family:var(--serif);font-size:1.7rem;font-weight:500;line-height:1.02;}
.portfolio-v121-shell .portfolio-story-card p{margin:0;color:var(--muted);line-height:1.7;}
.portfolio-v121-shell .portfolio-story-card .meta{margin:18px 24px 0;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);}
.portfolio-v121-shell .portfolio-story-card .story-cta-inline{display:inline-flex;align-items:center;gap:10px;margin-top:8px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);}
.portfolio-v121-shell .portfolio-story-card:hover{transform:translateY(-6px);border-color:rgba(200,169,106,.35);box-shadow:0 40px 120px rgba(0,0,0,.45);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;}
@media (max-width: 980px){.portfolio-v121-shell .portfolio-v121-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width: 680px){.portfolio-v121-shell .portfolio-v121-grid{grid-template-columns:1fr;}}


/* =========================
   V122 — Portfolio Vitrine CSS Columns masonry
   ========================= */
.sabino-portfolio-vitrine-v122 .sp-vitrine-grid-v122{
  column-count:4;
  column-gap:20px;
  width:100%;
}
.sabino-portfolio-vitrine-v122 .sp-vitrine-item-v122{
  display:block;
  width:100%;
  margin:0 0 20px;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  overflow:hidden;
  background:transparent;
}
.sabino-portfolio-vitrine-v122 .sp-vitrine-item-v122 img.sp-vitrine-image-v122{
  display:block;
  width:100%;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:cover;
  object-position:center center;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.sabino-portfolio-vitrine-v122 .sp-vitrine-item-v122,
.sabino-portfolio-vitrine-v122 .sp-vitrine-item-v122 *{
  aspect-ratio:auto !important;
}
@media (max-width: 1024px){
  .sabino-portfolio-vitrine-v122 .sp-vitrine-grid-v122{column-count:2;}
}
@media (max-width: 767px){
  .sabino-portfolio-vitrine-v122 .sp-vitrine-grid-v122{column-count:1;}
}


/* ===============================
   V123 — Portfolio Vitrine CSS Grid Masonry
   =============================== */
.home .sabino-portfolio-vitrine-v123 .portfolio-vitrine-shell,
.sabino-portfolio-vitrine-v123 .portfolio-vitrine-shell{
  max-width: 1600px;
}

.home .sabino-portfolio-vitrine-v123 .masonry-grid,
.sabino-portfolio-vitrine-v123 .masonry-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px !important;
  align-items:start;
  grid-auto-flow:dense;
  grid-auto-rows:10px;
  margin-top:24px;
}

.home .sabino-portfolio-vitrine-v123 .grid-item,
.sabino-portfolio-vitrine-v123 .grid-item{
  position:relative;
  display:block;
  overflow:hidden;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  min-height:0 !important;
  height:auto !important;
  border-radius:2px;
}

.home .sabino-portfolio-vitrine-v123 .grid-item.is-sm,
.sabino-portfolio-vitrine-v123 .grid-item.is-sm{ grid-row:span 22; }
.home .sabino-portfolio-vitrine-v123 .grid-item.is-md,
.sabino-portfolio-vitrine-v123 .grid-item.is-md{ grid-row:span 28; }
.home .sabino-portfolio-vitrine-v123 .grid-item.is-lg,
.sabino-portfolio-vitrine-v123 .grid-item.is-lg{ grid-row:span 34; }
.home .sabino-portfolio-vitrine-v123 .grid-item.is-tall,
.sabino-portfolio-vitrine-v123 .grid-item.is-tall{ grid-row:span 40; }

.home .sabino-portfolio-vitrine-v123 .grid-item img,
.sabino-portfolio-vitrine-v123 .grid-item img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  min-height:100%;
  max-height:none !important;
}

.home .sabino-portfolio-vitrine-v123 .grid-item::after,
.sabino-portfolio-vitrine-v123 .grid-item::after,
.home .sabino-portfolio-vitrine-v123 .portfolio-overlay,
.sabino-portfolio-vitrine-v123 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v123 figcaption,
.sabino-portfolio-vitrine-v123 figcaption{
  display:none !important;
}

@media (max-width: 1024px){
  .home .sabino-portfolio-vitrine-v123 .masonry-grid,
  .sabino-portfolio-vitrine-v123 .masonry-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 767px){
  .home .sabino-portfolio-vitrine-v123 .masonry-grid,
  .sabino-portfolio-vitrine-v123 .masonry-grid{
    grid-template-columns:1fr;
  }
}


/* =========================
   V124 — rebuilt Home Vitrine + Portfolio archive grid
========================= */
.home .sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid,
.sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  grid-auto-rows:10px !important;
  grid-auto-flow:dense !important;
  gap:20px !important;
  margin:0 !important;
  padding:0 !important;
}
.home .sabino-portfolio-vitrine-v124 .grid-item,
.sabino-portfolio-vitrine-v124 .grid-item{
  position:relative !important;
  grid-row:span var(--item-span,30) !important;
  display:block !important;
  margin:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
  background:#0a0a0a !important;
  border-radius:2px !important;
}
.home .sabino-portfolio-vitrine-v124 .grid-item::before,
.sabino-portfolio-vitrine-v124 .grid-item::before,
.home .sabino-portfolio-vitrine-v124 .grid-item::after,
.sabino-portfolio-vitrine-v124 .grid-item::after{content:none !important;display:none !important;}
.home .sabino-portfolio-vitrine-v124 .grid-image,
.sabino-portfolio-vitrine-v124 .grid-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
}
.home .sabino-portfolio-vitrine-v124 .grid-item,
.sabino-portfolio-vitrine-v124 .grid-item{box-shadow:none !important;border:0 !important;}
.home .sabino-portfolio-vitrine-v124 .section-head{margin-bottom:22px !important;}
.home .sabino-portfolio-vitrine-v124 .portfolio-vitrine-shell,
.sabino-portfolio-vitrine-v124 .portfolio-vitrine-shell{max-width:min(1600px,94vw) !important;}
.home .sabino-portfolio-vitrine-v124 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v124 .content,
.home .sabino-portfolio-vitrine-v124 .selected-meta,
.home .sabino-portfolio-vitrine-v124 .grid-overlay,
.sabino-portfolio-vitrine-v124 .portfolio-overlay,
.sabino-portfolio-vitrine-v124 .content,
.sabino-portfolio-vitrine-v124 .selected-meta,
.sabino-portfolio-vitrine-v124 .grid-overlay{display:none !important;}

.archive-portfolio .portfolio-v124-grid.masonry-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  grid-auto-rows:10px !important;
  grid-auto-flow:dense !important;
  gap:20px !important;
  margin:0 !important;
  padding:0 !important;
}
.archive-portfolio .portfolio-v124-grid .portfolio-grid-item{
  position:relative !important;
  grid-row:span var(--item-span,30) !important;
  margin:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
  border-radius:2px !important;
  background:#0a0a0a !important;
}
.archive-portfolio .portfolio-v124-grid .grid-link{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  color:inherit !important;
  text-decoration:none !important;
}
.archive-portfolio .portfolio-v124-grid .grid-media{
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
}
.archive-portfolio .portfolio-v124-grid .grid-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  transition:transform .75s cubic-bezier(.22,1,.36,1), filter .3s ease !important;
}
.archive-portfolio .portfolio-v124-grid .grid-link:hover .grid-image,
.archive-portfolio .portfolio-v124-grid .grid-link:focus-visible .grid-image{transform:scale(1.03) !important;filter:brightness(1.02) !important;}
.archive-portfolio .portfolio-v124-grid .grid-overlay{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  padding:22px 18px 16px !important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.14) 28%, rgba(0,0,0,.86) 100%) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(10px) !important;
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease !important;
}
.archive-portfolio .portfolio-v124-grid .grid-link:hover .grid-overlay,
.archive-portfolio .portfolio-v124-grid .grid-link:focus-visible .grid-overlay{
  opacity:1 !important; visibility:visible !important; transform:translateY(0) !important;
}
.archive-portfolio .portfolio-v124-grid .selected-meta{
  color:#c8a96a !important; font-size:.66rem !important; letter-spacing:.22em !important; text-transform:uppercase !important; margin:0 0 10px !important;
}
.archive-portfolio .portfolio-v124-grid h3{
  margin:0 0 8px !important; color:#f4ede1 !important; font-size:clamp(1.18rem,1vw + .95rem,1.85rem) !important; line-height:.96 !important; max-width:13ch !important;
}
.archive-portfolio .portfolio-v124-grid p{
  margin:0 !important; color:rgba(244,237,225,.82) !important; font-size:.88rem !important; line-height:1.5 !important;
}
.archive-portfolio .portfolio-archive-hero,
.archive-portfolio .portfolio-archive-hero .page-hero-media,
.archive-portfolio .portfolio-archive-hero .page-hero-media img{
  display:block !important; visibility:visible !important; opacity:1 !important;
}
.archive-portfolio .portfolio-archive-hero{min-height:64svh !important;}
.archive-portfolio .portfolio-v121-grid,
.archive-portfolio .story-grid-dynamic,
.archive-portfolio .collection-grid.story-grid{display:none !important;}

@media (max-width: 1100px){
  .home .sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid,
  .sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid,
  .archive-portfolio .portfolio-v124-grid.masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width: 767px){
  .home .sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid,
  .sabino-portfolio-vitrine-v124 .masonry-grid.sabino-v124-vitrine-grid,
  .archive-portfolio .portfolio-v124-grid.masonry-grid{grid-template-columns:1fr !important; gap:16px !important;}
}


/* ===============================
   V125 — Vitrine + Portfolio reset
   =============================== */
.sabino-portfolio-vitrine-v125 .portfolio-vitrine-shell{max-width:min(1320px,calc(100vw - 40px));}
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-grid{
  column-count:4;
  column-gap:20px;
  margin:20px 0 0;
}
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-item{
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  margin:0 0 20px;
  padding:0;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
}
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-item img,
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-image{
  width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  aspect-ratio:auto !important;
  min-height:0 !important;
  max-height:none !important;
  border-radius:0;
  background:none !important;
}
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-item,
.sabino-portfolio-vitrine-v125 .sp-v125-vitrine-item *{
  min-height:0 !important;
  max-height:none !important;
}
.sabino-portfolio-vitrine-v125 .portfolio-overlay,
.sabino-portfolio-vitrine-v125 .selected-meta,
.sabino-portfolio-vitrine-v125 h3,
.sabino-portfolio-vitrine-v125 p{display:none !important;}

.sp-v125-portfolio-hero{min-height:58svh;}
.sp-v125-portfolio-hero .page-hero-media,
.sp-v125-portfolio-hero .page-hero-media img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:50% 35%;
}
.sp-v125-portfolio-archive-wrap{padding-top:34px;}
.sp-v125-portfolio-grid{
  column-count:3;
  column-gap:20px;
}
.sp-v125-portfolio-card{
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  display:block;
  margin:0 0 20px;
  position:relative;
}
.sp-v125-portfolio-link{display:block;position:relative;color:inherit;text-decoration:none;overflow:hidden;background:#0a0a0a;}
.sp-v125-portfolio-media,
.sp-v125-portfolio-media img{
  display:block;
  width:100%;
  height:auto !important;
  object-fit:contain;
  aspect-ratio:auto !important;
  min-height:0 !important;
}
.sp-v125-portfolio-overlay{
  position:absolute;inset:auto 0 0 0;
  padding:18px 18px 20px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.72) 100%);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .28s ease,transform .28s ease;
}
.sp-v125-portfolio-link:hover .sp-v125-portfolio-overlay,
.sp-v125-portfolio-link:focus-visible .sp-v125-portfolio-overlay{opacity:1;transform:translateY(0);}
.sp-v125-portfolio-overlay .selected-meta{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold,#c8a96a);margin-bottom:8px;}
.sp-v125-portfolio-overlay h3{font-size:clamp(1.25rem,2vw,2rem);line-height:1.05;margin:0;color:#fff;}
.sp-v125-portfolio-overlay p{margin:10px 0 0;color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.45;}

/* hard resets against legacy layouts */
.sabino-portfolio-vitrine-v125 .masonry-grid,
.sabino-portfolio-vitrine-v125 .portfolio-grid,
.sabino-portfolio-vitrine-v125 .dynamic-grid{display:block !important;grid-template-columns:none !important;}
.sabino-portfolio-vitrine-v125 .grid-item{height:auto !important;}
.archive-portfolio .masonry-grid,
.archive-portfolio .portfolio-v124-grid,
.archive-portfolio .sabino-portfolio-archive-grid,
.archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid{display:block !important;grid-template-columns:none !important;column-count:initial !important;}

@media (max-width: 1100px){
  .sabino-portfolio-vitrine-v125 .sp-v125-vitrine-grid{column-count:3;}
  .sp-v125-portfolio-grid{column-count:2;}
}
@media (max-width: 820px){
  .sabino-portfolio-vitrine-v125 .sp-v125-vitrine-grid{column-count:2;column-gap:16px;}
  .sabino-portfolio-vitrine-v125 .sp-v125-vitrine-item{margin-bottom:16px;}
  .sp-v125-portfolio-grid{column-count:1;column-gap:16px;}
  .sp-v125-portfolio-card{margin-bottom:16px;}
}
@media (max-width: 560px){
  .sabino-portfolio-vitrine-v125 .sp-v125-vitrine-grid{column-count:1;}
}


/* ===============================
   V127 — ULTRA PREMIUM FINISH
   =============================== */
.home .sabino-portfolio-vitrine{position:relative}
.home .sabino-portfolio-vitrine .portfolio-vitrine-shell{width:min(100%,1760px);max-width:none;padding-inline:clamp(18px,2vw,34px)}
.home .sabino-portfolio-vitrine .vitrine-head{margin-bottom:28px}
.home .sabino-portfolio-vitrine .section-title{max-width:11ch;letter-spacing:-.02em}
.home .sabino-portfolio-vitrine .section-copy{max-width:42rem;color:rgba(244,237,225,.68)}
.home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:4 !important;column-gap:18px !important;padding:0 !important}
.home .sabino-portfolio-vitrine.cols-2 .portfolio-vitrine-grid{column-count:2 !important}
.home .sabino-portfolio-vitrine.cols-3 .portfolio-vitrine-grid{column-count:3 !important}
.home .sabino-portfolio-vitrine.cols-4 .portfolio-vitrine-grid{column-count:4 !important}
.home .sabino-portfolio-vitrine.cols-5 .portfolio-vitrine-grid{column-count:5 !important}
.home .sabino-portfolio-vitrine .vitrine-card{display:inline-block !important;width:100% !important;margin:0 0 18px !important;break-inside:avoid !important;overflow:hidden !important;background:transparent !important;border:0 !important;box-shadow:none !important;transform:translateZ(0)}
.home .sabino-portfolio-vitrine .vitrine-card .vitrine-media-link,
.home .sabino-portfolio-vitrine .vitrine-card .vitrine-media-link:visited{display:block;text-decoration:none;color:inherit}
.home .sabino-portfolio-vitrine .vitrine-card .media,
.home .sabino-portfolio-vitrine .vitrine-card .media-link{display:block !important;position:relative !important;background:none !important;height:auto !important;min-height:0 !important;border-radius:3px !important;overflow:hidden !important}
.home .sabino-portfolio-vitrine .vitrine-card img.vitrine-image{display:block !important;width:100% !important;height:auto !important;min-height:0 !important;max-height:none !important;object-fit:contain !important;border-radius:3px !important;box-shadow:0 24px 70px rgba(0,0,0,.14);transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s ease,box-shadow .5s ease}
.home .sabino-portfolio-vitrine .vitrine-card:hover img.vitrine-image{transform:translateY(-2px) scale(1.012);filter:brightness(1.03);box-shadow:0 32px 90px rgba(0,0,0,.22)}
.home .sabino-portfolio-vitrine .portfolio-overlay{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:2px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.14) 28%,rgba(0,0,0,.74) 100%);opacity:0;transform:translateY(8px);transition:opacity .28s ease,transform .28s ease;display:block !important}
.home .sabino-portfolio-vitrine .vitrine-card:hover .portfolio-overlay{opacity:1;transform:translateY(0)}
.home .sabino-portfolio-vitrine .portfolio-overlay .selected-meta{font-size:.64rem;letter-spacing:.22em;color:rgba(200,169,106,.94);margin-bottom:.36rem}
.home .sabino-portfolio-vitrine .portfolio-overlay h3{font-size:clamp(1rem,.6vw + .84rem,1.28rem);line-height:1.08;margin:0 0 .15rem}
.home .sabino-portfolio-vitrine .portfolio-overlay p{margin:0;color:rgba(244,237,225,.84);font-size:.8rem;line-height:1.42}

.post-type-archive-portfolio .archive-portfolio-shell,
.post-type-archive-portfolio .portfolio-archive-shell{width:min(100%,1680px);max-width:none;padding-inline:clamp(18px,2vw,34px)}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:20px !important;column-count:auto !important}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card{display:flex !important;flex-direction:column !important;margin:0 !important;min-height:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;overflow:hidden !important}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card .media,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .media{position:relative;display:block !important;min-height:clamp(280px,24vw,420px) !important;background-size:cover !important;background-position:center center !important;border-radius:3px 3px 0 0;overflow:hidden;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .45s ease}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card:nth-child(3n) .media,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card:nth-child(3n) .media{min-height:clamp(360px,30vw,520px) !important}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card:nth-child(4n) .media,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card:nth-child(4n) .media{min-height:clamp(320px,27vw,470px) !important}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card:hover .media,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card:hover .media{transform:translateY(-2px) scale(1.01);filter:brightness(1.03)}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card .content,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .content{padding:16px 4px 6px !important;background:transparent !important}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card h3,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card h3{font-size:clamp(1.18rem,.68vw + 1rem,1.72rem);line-height:1.08;margin:0 0 .42rem;letter-spacing:-.015em}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card p,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card p{margin:0;color:rgba(244,237,225,.7);font-size:.92rem;line-height:1.55;opacity:0;max-height:0;overflow:hidden;transition:opacity .25s ease,max-height .25s ease}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card:hover p,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card:hover p{opacity:1;max-height:7em}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card .selected-meta,
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card .selected-meta{font-size:.66rem;letter-spacing:.22em;color:rgba(200,169,106,.94);margin-bottom:.45rem}
.post-type-archive-portfolio .portfolio-grid.dynamic-grid .portfolio-card[data-hidden="true"],
.post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid .portfolio-card[data-hidden="true"]{display:none !important}

@media (max-width:1180px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:3 !important;column-gap:16px !important}
  .post-type-archive-portfolio .portfolio-grid.dynamic-grid,
  .post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:820px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:2 !important;column-gap:12px !important}
  .home .sabino-portfolio-vitrine .vitrine-card{margin-bottom:12px !important}
  .post-type-archive-portfolio .portfolio-grid.dynamic-grid,
  .post-type-archive-portfolio .portfolio-grid.dynamic-grid.masonry-grid{grid-template-columns:1fr !important;gap:16px !important}
}
@media (max-width:580px){
  .home .sabino-portfolio-vitrine .portfolio-vitrine-grid{column-count:1 !important}
}


/* =========================
   V128 — CLEAN VITRINE + PORTFOLIO
   ========================= */
.home .sabino-portfolio-vitrine-v128 .portfolio-vitrine-shell{
  width:min(100%,1760px);
  max-width:none;
  padding-inline:clamp(20px,2vw,32px);
}
.home .sabino-portfolio-vitrine-v128 .vitrine-head{margin-bottom:28px;align-items:end;gap:20px}
.home .sabino-portfolio-vitrine-v128 .section-title{max-width:12ch}
.home .sabino-portfolio-vitrine-v128 .section-copy{max-width:38rem;color:rgba(244,237,225,.72)}
.home .sabino-portfolio-vitrine-v128 .v128-vitrine-grid,
.home .sabino-portfolio-vitrine-v128 .portfolio-vitrine-grid{
  column-count:3 !important;
  column-gap:20px !important;
  padding:0 !important;
  margin:0 !important;
}
.home .sabino-portfolio-vitrine-v128 .v128-vitrine-item{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 20px !important;
  padding:0 !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
  vertical-align:top !important;
}
.home .sabino-portfolio-vitrine-v128 .v128-vitrine-item img,
.home .sabino-portfolio-vitrine-v128 img.v128-vitrine-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  background:transparent !important;
  border-radius:2px !important;
  margin:0 !important;
}
.home .sabino-portfolio-vitrine-v128 .v128-vitrine-item,
.home .sabino-portfolio-vitrine-v128 .v128-vitrine-item *{
  aspect-ratio:auto !important;
}
.home .sabino-portfolio-vitrine-v128 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v128 .selected-meta,
.home .sabino-portfolio-vitrine-v128 h3,
.home .sabino-portfolio-vitrine-v128 p{display:none !important;}
@media (max-width: 1024px){
  .home .sabino-portfolio-vitrine-v128 .v128-vitrine-grid,
  .home .sabino-portfolio-vitrine-v128 .portfolio-vitrine-grid{column-count:2 !important;column-gap:20px !important;}
}
@media (max-width: 767px){
  .home .sabino-portfolio-vitrine-v128 .v128-vitrine-grid,
  .home .sabino-portfolio-vitrine-v128 .portfolio-vitrine-grid{column-count:1 !important;column-gap:16px !important;}
  .home .sabino-portfolio-vitrine-v128 .v128-vitrine-item{margin-bottom:16px !important;}
}

/* Portfolio archive mirrors Stories */
.portfolio-v128-shell .sp-v128-portfolio-hero .page-hero-media,
.portfolio-v128-shell .sp-v128-portfolio-hero .page-hero-media img{display:block !important;}
.portfolio-v128-shell .sp-v128-portfolio-hero .page-hero-media img{
  width:100% !important;
  height:100% !important;
  min-height:clamp(420px,60vh,720px) !important;
  object-fit:cover !important;
}
.portfolio-v128-shell .portfolio-grid-like-stories{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  margin-top:10px !important;
}
.portfolio-v128-shell .portfolio-story-card,
.portfolio-v128-shell .portfolio-grid-like-stories .story-card{
  margin:0 !important;
  width:100% !important;
  height:100% !important;
}
.portfolio-v128-shell .portfolio-story-card .story-card-link,
.portfolio-v128-shell .portfolio-grid-like-stories .story-card-link{display:flex;flex-direction:column;height:100%;}
.portfolio-v128-shell .portfolio-story-card .media,
.portfolio-v128-shell .portfolio-grid-like-stories .story-card .media{
  aspect-ratio:4/5 !important;
  min-height:0 !important;
  background-size:cover !important;
  background-position:center center !important;
  border-radius:3px 3px 0 0;
}
.portfolio-v128-shell .portfolio-story-card .content,
.portfolio-v128-shell .portfolio-grid-like-stories .story-card .content{padding:20px 22px 24px !important;}
.portfolio-v128-shell .portfolio-story-card p,
.portfolio-v128-shell .portfolio-grid-like-stories .story-card p{color:rgba(244,237,225,.74) !important;}
.portfolio-v128-shell .portfolio-toolbar{margin-bottom:24px !important;}
@media (max-width:1024px){
  .portfolio-v128-shell .portfolio-grid-like-stories{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:767px){
  .portfolio-v128-shell .portfolio-grid-like-stories{grid-template-columns:1fr !important;gap:16px !important;}
}


/* ===============================
   V129 — Portfolio Vitrine + Archive reset
   =============================== */
.home .sabino-portfolio-vitrine-v129 .portfolio-vitrine-shell,
.sabino-portfolio-vitrine-v129 .portfolio-vitrine-shell{max-width:min(1520px,94vw) !important;}
.home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid,
.sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid{
  column-count:3 !important;
  column-gap:20px !important;
  margin:0 !important;
  padding:0 !important;
}
.home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item,
.sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item{
  display:block !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  margin:0 0 20px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item img,
.sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
.home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item::before,
.home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item::after,
.sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item::before,
.sabino-portfolio-vitrine-v129 .sp-v129-vitrine-item::after{content:none !important;display:none !important;}
@media (max-width:1024px){
  .home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid,
  .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid{column-count:2 !important;}
}
@media (max-width:640px){
  .home .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid,
  .sabino-portfolio-vitrine-v129 .sp-v129-vitrine-grid{column-count:1 !important;}
}

.archive-portfolio .sp-v129-portfolio-hero .page-hero-media,
.archive-portfolio .sp-v129-portfolio-hero .page-hero-media img{display:block !important;visibility:visible !important;opacity:1 !important;}
.archive-portfolio .portfolio-grid-like-stories{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:0 !important;
}
.archive-portfolio .portfolio-grid-like-stories .portfolio-story-card{
  display:block !important;
  margin:0 !important;
}
.archive-portfolio .portfolio-grid-like-stories .portfolio-story-card .story-card-link{
  display:block !important;
  height:100% !important;
}
.archive-portfolio .portfolio-grid-like-stories .portfolio-story-card .media{
  width:100% !important;
  min-height:0 !important;
  aspect-ratio:4/5 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.archive-portfolio .portfolio-grid-like-stories .portfolio-story-card .content{padding-top:14px !important;}
@media (max-width:1024px){
  .archive-portfolio .portfolio-grid-like-stories{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:640px){
  .archive-portfolio .portfolio-grid-like-stories{grid-template-columns:1fr !important;}
}


/* =========================
   V130 — stable desktop vitrine + portfolio archive + WPBakery archive support
   ========================= */
.home .sabino-portfolio-vitrine-v130 .portfolio-vitrine-shell,
.sabino-portfolio-vitrine-v130 .portfolio-vitrine-shell{
  width:min(100%,1540px) !important;
  max-width:none !important;
  padding-inline:20px !important;
}
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  column-count:3 !important;
  column-gap:20px !important;
  column-fill:balance !important;
  padding:0 !important;
  margin:0 !important;
}
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item{
  display:inline-block !important;
  vertical-align:top !important;
  width:100% !important;
  margin:0 0 20px !important;
  padding:0 !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item::before,
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item::after,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item::before,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item::after{
  content:none !important;
  display:none !important;
}
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item img,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item img,
.home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-image,
.sabino-portfolio-vitrine-v130 .sp-v130-vitrine-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  background:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.home .sabino-portfolio-vitrine-v130 .portfolio-overlay,
.home .sabino-portfolio-vitrine-v130 .content,
.home .sabino-portfolio-vitrine-v130 .selected-meta,
.sabino-portfolio-vitrine-v130 .portfolio-overlay,
.sabino-portfolio-vitrine-v130 .content,
.sabino-portfolio-vitrine-v130 .selected-meta{display:none !important;}
@media (max-width: 1024px){
  .home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid,
  .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid{column-count:2 !important; column-gap:18px !important;}
  .home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item,
  .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-item{margin-bottom:18px !important;}
}
@media (max-width: 680px){
  .home .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid,
  .sabino-portfolio-vitrine-v130 .sp-v130-vitrine-grid{column-count:1 !important; column-gap:0 !important;}
}

.archive-portfolio .sp-v130-portfolio-hero,
.portfolio-v130-shell .sp-v130-portfolio-hero{display:block !important; margin-bottom:56px !important;}
.archive-portfolio .sp-v130-portfolio-hero .page-hero-media,
.portfolio-v130-shell .sp-v130-portfolio-hero .page-hero-media{display:block !important;}
.archive-portfolio .sp-v130-portfolio-hero .page-hero-media img,
.portfolio-v130-shell .sp-v130-portfolio-hero .page-hero-media img{display:block !important; width:100% !important; height:100% !important; object-fit:cover !important;}
.archive-portfolio .portfolio-v130-content .container,
.portfolio-v130-shell .portfolio-v130-content .container{max-width:min(1480px, calc(100vw - 40px)) !important;}
.archive-portfolio .portfolio-grid-v130,
.portfolio-v130-shell .portfolio-grid-v130,
.archive-portfolio .portfolio-archive-builder .portfolio-grid-v130,
.portfolio-v130-shell .portfolio-archive-builder .portfolio-grid-v130{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:start !important;
  margin:0 !important;
}
.archive-portfolio .portfolio-grid-v130 .story-card,
.portfolio-v130-shell .portfolio-grid-v130 .story-card{
  margin:0 !important;
  width:100% !important;
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.archive-portfolio .portfolio-grid-v130 .story-card .media,
.portfolio-v130-shell .portfolio-grid-v130 .story-card .media{
  display:block !important;
  width:100% !important;
  aspect-ratio:4 / 5 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.archive-portfolio .portfolio-grid-v130 .story-card .content,
.portfolio-v130-shell .portfolio-grid-v130 .story-card .content{padding:18px 0 0 !important;}
@media (max-width: 1024px){
  .archive-portfolio .portfolio-grid-v130,
  .portfolio-v130-shell .portfolio-grid-v130,
  .archive-portfolio .portfolio-archive-builder .portfolio-grid-v130,
  .portfolio-v130-shell .portfolio-archive-builder .portfolio-grid-v130{grid-template-columns:repeat(2, minmax(0,1fr)) !important;}
}
@media (max-width: 680px){
  .archive-portfolio .portfolio-grid-v130,
  .portfolio-v130-shell .portfolio-grid-v130,
  .archive-portfolio .portfolio-archive-builder .portfolio-grid-v130,
  .portfolio-v130-shell .portfolio-archive-builder .portfolio-grid-v130{grid-template-columns:minmax(0,1fr) !important;}
}


/* =====================================================
   V131 — Portfolio stabilization, premium masonry reset
   ===================================================== */

/* Keep only the latest portfolio vitrine/archive rules active */
.home .sabino-portfolio-vitrine-v131,
.archive-portfolio .portfolio-v131-shell{position:relative;z-index:2;}

/* Section shell */
.sabino-portfolio-vitrine-v131 .portfolio-vitrine-shell{max-width:1400px;}
.sabino-portfolio-vitrine-v131 .vitrine-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:32px;align-items:end;margin-bottom:36px;}
.sabino-portfolio-vitrine-v131 .section-title{max-width:14ch;}
.sabino-portfolio-vitrine-v131 .section-copy{max-width:46ch;}
@media (max-width: 900px){
  .sabino-portfolio-vitrine-v131 .vitrine-head{grid-template-columns:1fr;gap:18px;}
}

/* Home vitrine masonry using CSS columns for Chrome/macOS stability */
.sp-v131-vitrine-masonry{
  -webkit-column-count:3;
  -moz-column-count:3;
  column-count:3;
  -webkit-column-gap:20px;
  -moz-column-gap:20px;
  column-gap:20px;
  width:100%;
  padding:0;
  margin:0;
}
.sp-v131-vitrine-masonry > *{margin:0 !important;}
.sp-v131-vitrine-item{
  -webkit-column-break-inside:avoid;
  break-inside:avoid;
  page-break-inside:avoid;
  display:inline-block;
  vertical-align:top;
  width:100%;
  margin:0 0 20px 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden;
  border-radius:2px;
}
.sp-v131-vitrine-item img,
.sp-v131-vitrine-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
}
.sp-v131-vitrine-item:hover img{transform:translateY(-1px) scale(1.008);transition:transform .45s ease;}

@media (max-width: 1024px){
  .sp-v131-vitrine-masonry{-webkit-column-count:2;-moz-column-count:2;column-count:2;}
}
@media (max-width: 640px){
  .sp-v131-vitrine-masonry{-webkit-column-count:1;-moz-column-count:1;column-count:1;}
}

/* Neutralize legacy vitrine/gallery rules that create single-column or tall boxes on desktop Chrome */
.sabino-portfolio-vitrine-v131 .portfolio-grid,
.sabino-portfolio-vitrine-v131 .dynamic-grid,
.sabino-portfolio-vitrine-v131 .portfolio-vitrine-grid,
.sabino-portfolio-vitrine-v131 .sabino-waterfall,
.sabino-portfolio-vitrine-v131 .masonry-grid,
.sabino-portfolio-vitrine-v131 .sp-v130-vitrine-grid,
.sabino-portfolio-vitrine-v131 .sp-v122-vitrine-grid{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
}
.sabino-portfolio-vitrine-v131 .portfolio-card,
.sabino-portfolio-vitrine-v131 .vitrine-card,
.sabino-portfolio-vitrine-v131 .sabino-waterfall-card,
.sabino-portfolio-vitrine-v131 .grid-item,
.sabino-portfolio-vitrine-v131 figure{height:auto !important;min-height:0 !important;max-height:none !important;}
.sabino-portfolio-vitrine-v131 .portfolio-overlay,
.sabino-portfolio-vitrine-v131 figcaption{display:none !important;}

/* Portfolio archive hero */
.sp-v131-portfolio-hero .page-hero-media,
.sp-v131-portfolio-hero .page-hero-media img{display:block;width:100%;height:100%;}
.sp-v131-portfolio-hero .page-hero-media img{object-fit:cover;object-position:center center;}

/* Portfolio archive masonry (cards like stories, but compact and gap-safe) */
.portfolio-v131-grid{
  -webkit-column-count:3;
  -moz-column-count:3;
  column-count:3;
  -webkit-column-gap:20px;
  -moz-column-gap:20px;
  column-gap:20px;
  width:100%;
}
.portfolio-v131-grid > *{margin:0 !important;}
.portfolio-v131-card{
  -webkit-column-break-inside:avoid;
  break-inside:avoid;
  page-break-inside:avoid;
  display:inline-block;
  vertical-align:top;
  width:100%;
  margin:0 0 20px 0 !important;
  overflow:hidden;
  border:1px solid rgba(200,169,106,.14);
  background:linear-gradient(180deg,rgba(13,13,13,.94),rgba(8,8,8,.96));
  box-shadow:0 20px 60px rgba(0,0,0,.28);
  border-radius:2px;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.portfolio-v131-card:hover{transform:translateY(-4px);border-color:rgba(200,169,106,.38);box-shadow:0 34px 90px rgba(0,0,0,.38);}
.portfolio-v131-card-link{display:block;color:inherit;text-decoration:none;}
.portfolio-v131-media{position:relative;display:block;overflow:hidden;background:#0a0a0a;}
.portfolio-v131-media img{
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center center;
  transition:transform .55s ease,filter .55s ease;
}
.portfolio-v131-card:hover .portfolio-v131-media img{transform:scale(1.02);filter:saturate(1.02);}
.portfolio-v131-content{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;}
.portfolio-v131-meta{font-size:.66rem;line-height:1.2;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);opacity:.95;}
.portfolio-v131-content h3{margin:0;font-family:var(--serif);font-size:1.45rem;line-height:1.02;font-weight:500;letter-spacing:-.01em;}
.portfolio-v131-content p{margin:0;color:rgba(244,237,225,.72);line-height:1.68;font-size:.92rem;}
.portfolio-v131-cta{display:inline-flex;align-items:center;gap:8px;margin-top:2px;color:var(--gold);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;}

@media (max-width: 1024px){
  .portfolio-v131-grid{-webkit-column-count:2;-moz-column-count:2;column-count:2;}
}
@media (max-width: 640px){
  .portfolio-v131-grid{-webkit-column-count:1;-moz-column-count:1;column-count:1;}
}

/* Make sure the portfolio archive gallery is never hidden by legacy rules */
.archive-portfolio .portfolio-archive-builder + .portfolio-v131-grid,
.archive-portfolio .portfolio-v131-grid,
.portfolio-v131-shell .portfolio-v131-grid{display:block !important;}
.archive-portfolio .story-grid-dynamic,
.archive-portfolio .collection-grid.story-grid,
.archive-portfolio .collection-grid.dynamic-grid.portfolio-grid-v130,
.archive-portfolio .portfolio-grid-like-stories{display:none !important;}

/* Toolbar and premium polish */
.portfolio-v131-shell .portfolio-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 28px;}
.portfolio-v131-shell .filter-chip{transition:all .25s ease;}
.portfolio-v131-shell .filter-chip:hover,
.portfolio-v131-shell .filter-chip.active{border-color:rgba(200,169,106,.45);color:#fff;background:rgba(200,169,106,.12);}


/* =========================
   V132 — portfolio reset
========================= */
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-grid{
  display:block !important;
  width:100%;
  column-count:3;
  -webkit-column-count:3;
  column-gap:20px;
  -webkit-column-gap:20px;
  padding:0;
  margin:0;
}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item{
  display:inline-block;
  width:100%;
  margin:0 0 20px;
  padding:0;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  overflow:hidden;
  background:transparent;
  border:0;
  box-shadow:none;
}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item img,
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-image{
  display:block;
  width:100%;
  height:auto !important;
  max-width:100%;
  object-fit:contain;
  background:transparent;
}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item::before,
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item::after{display:none!important;content:none!important;}
@media (max-width: 1024px){
  .sabino-portfolio-vitrine-v132 .sp-v132-vitrine-grid{column-count:2;-webkit-column-count:2;}
}
@media (max-width: 680px){
  .sabino-portfolio-vitrine-v132 .sp-v132-vitrine-grid{column-count:1;-webkit-column-count:1;}
}

.portfolio-v132-shell .portfolio-v132-builder:empty{display:none;}
.portfolio-v132-shell .portfolio-v132-toolbar{margin-bottom:28px;}
.portfolio-v132-shell .portfolio-v132-grid{
  display:block !important;
  width:100%;
  column-count:4;
  -webkit-column-count:4;
  column-gap:20px;
  -webkit-column-gap:20px;
  padding:0;
  margin:0;
}
.portfolio-v132-shell .portfolio-v132-card{
  display:inline-block;
  width:100%;
  margin:0 0 20px;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  position:relative;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:hidden;
  transform:translateY(0);
  transition:transform .38s cubic-bezier(.22,.61,.36,1);
}
.portfolio-v132-shell .portfolio-v132-card-link{display:block; color:inherit; text-decoration:none;}
.portfolio-v132-shell .portfolio-v132-media{position:relative; margin:0; overflow:hidden; background:#0b0b0b;}
.portfolio-v132-shell .portfolio-v132-media img,
.portfolio-v132-shell .portfolio-v132-image,
.portfolio-v132-shell .portfolio-v132-media .media,
.portfolio-v132-shell .portfolio-v132-media .media img{
  display:block;
  width:100%;
  height:auto !important;
  max-width:100%;
  object-fit:contain;
  transition:transform .7s cubic-bezier(.22,.61,.36,1);
}
.portfolio-v132-shell .portfolio-v132-content{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:20px 18px 18px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.22) 24%,rgba(0,0,0,.82) 100%);
  color:#f4ede1;
}
.portfolio-v132-shell .portfolio-v132-meta{
  margin-bottom:10px;
  font-size:.68rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.portfolio-v132-shell .portfolio-v132-content h3{
  margin:0 0 10px;
  font-family:var(--serif);
  font-size:clamp(1.25rem,1.6vw,1.9rem);
  line-height:1.02;
}
.portfolio-v132-shell .portfolio-v132-content p{
  margin:0;
  font-size:.92rem;
  line-height:1.6;
  color:rgba(244,237,225,.88);
  opacity:0;
  max-height:0;
  overflow:hidden;
  transition:opacity .35s ease,max-height .35s ease;
}
.portfolio-v132-shell .portfolio-v132-card:hover{transform:translateY(-6px);}
.portfolio-v132-shell .portfolio-v132-card:hover .portfolio-v132-media img,
.portfolio-v132-shell .portfolio-v132-card:hover .portfolio-v132-image{transform:scale(1.035);}
.portfolio-v132-shell .portfolio-v132-card:hover .portfolio-v132-content p{opacity:1;max-height:8rem;}
@media (max-width: 1200px){
  .portfolio-v132-shell .portfolio-v132-grid{column-count:3;-webkit-column-count:3;}
}
@media (max-width: 900px){
  .portfolio-v132-shell .portfolio-v132-grid{column-count:2;-webkit-column-count:2;}
}
@media (max-width: 640px){
  .portfolio-v132-shell .portfolio-v132-grid{column-count:1;-webkit-column-count:1;}
}


/* =========================
   V133 — premium portfolio finish
========================= */
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-grid{max-width:100%;}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item{transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .25s ease,filter .45s ease;will-change:transform;}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item:hover{transform:translateY(-4px);}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item img,.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-image{transition:transform .7s cubic-bezier(.22,.61,.36,1),filter .45s ease;filter:saturate(.98) contrast(1.01);}
.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item:hover img,.sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item:hover .sp-v132-vitrine-image{transform:scale(1.018);filter:saturate(1.04) contrast(1.03);}
.portfolio-v132-shell .portfolio-v132-card{transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .35s ease;}
.portfolio-v132-shell .portfolio-v132-card:hover{transform:translateY(-5px);box-shadow:0 26px 60px rgba(0,0,0,.26);}
.portfolio-v132-shell .portfolio-v132-content{backdrop-filter:blur(2px);}
.portfolio-v132-shell .portfolio-v132-content h3{letter-spacing:-.02em;}
.portfolio-v132-shell .portfolio-v132-card:hover .portfolio-v132-content p{opacity:1;max-height:9rem;}
@media (prefers-reduced-motion: reduce){
  .sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item,
  .sabino-portfolio-vitrine-v132 .sp-v132-vitrine-item img,
  .portfolio-v132-shell .portfolio-v132-card,
  .portfolio-v132-shell .portfolio-v132-media img,
  .portfolio-v132-shell .portfolio-v132-image{transition:none !important;transform:none !important;}
}


/* =========================
   V134 — portfolio rebuild
========================= */
.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-grid{display:block !important;width:100% !important;max-width:100%;column-count:4;-webkit-column-count:4;column-gap:20px;-webkit-column-gap:20px;padding:0;margin:0;font-size:0;line-height:0;}
.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-item{display:inline-block;width:100%;margin:0 0 20px;padding:0;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;overflow:hidden;border:0;background:transparent;box-shadow:none;vertical-align:top;transform:translateZ(0);}
.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-item img,.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-image{display:block;width:100%;height:auto !important;max-width:100%;object-fit:contain;background:transparent;border:0;}
@media (max-width:1200px){.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-grid{column-count:3;-webkit-column-count:3;}}
@media (max-width:992px){.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-grid{column-count:2;-webkit-column-count:2;}}
@media (max-width:640px){.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-grid{column-count:1;-webkit-column-count:1;}}
.portfolio-v134-shell .portfolio-v134-builder:empty{display:none;}
.portfolio-v134-shell .portfolio-v134-toolbar{margin-bottom:28px;}
.portfolio-v134-shell .portfolio-v134-grid{display:block !important;width:100% !important;max-width:100%;column-count:4;-webkit-column-count:4;column-gap:var(--sabino-portfolio-gap,20px);-webkit-column-gap:var(--sabino-portfolio-gap,20px);padding:0;margin:0;}
.portfolio-v134-shell .portfolio-v134-card{display:inline-block;width:100%;margin:0 0 var(--sabino-portfolio-gap,20px);break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;position:relative;overflow:hidden;border-radius:0;background:#121212;box-shadow:0 14px 32px rgba(0,0,0,.16);transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .35s ease;}
.portfolio-v134-shell .portfolio-v134-card-link{display:block;color:inherit;text-decoration:none;}
.portfolio-v134-shell .portfolio-v134-media{position:relative;margin:0;overflow:hidden;background:#0b0b0b;}
.portfolio-v134-shell .portfolio-v134-media img,.portfolio-v134-shell .portfolio-v134-image{display:block;width:100%;height:auto !important;max-width:100%;object-fit:contain;transition:transform .75s cubic-bezier(.22,.61,.36,1);}
.portfolio-v134-shell .portfolio-v134-content{position:absolute;left:0;right:0;bottom:0;padding:22px 18px 18px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 28%,rgba(0,0,0,.82) 100%);color:#f3ede1;}
.portfolio-v134-shell .portfolio-v134-meta{margin:0 0 10px;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);}
.portfolio-v134-shell .portfolio-v134-content h3{margin:0 0 10px;font-family:var(--serif);font-size:clamp(1.2rem,1.5vw,1.8rem);line-height:1.02;letter-spacing:-.02em;}
.portfolio-v134-shell .portfolio-v134-content p{margin:0;font-size:.92rem;line-height:1.6;color:rgba(243,237,225,.88);opacity:0;max-height:0;overflow:hidden;transition:opacity .35s ease,max-height .35s ease;}
.portfolio-v134-shell .portfolio-v134-card:hover{transform:translateY(-5px);box-shadow:0 26px 60px rgba(0,0,0,.26);}
.portfolio-v134-shell .portfolio-v134-card:hover .portfolio-v134-media img,.portfolio-v134-shell .portfolio-v134-card:hover .portfolio-v134-image{transform:scale(1.028);}
.portfolio-v134-shell .portfolio-v134-card:hover .portfolio-v134-content p{opacity:1;max-height:9rem;}
.portfolio-v134-shell .sp-v134-portfolio-hero .page-hero-media img{display:block;width:100%;height:100%;object-fit:cover;}
@media (max-width:1200px){.portfolio-v134-shell .portfolio-v134-grid{column-count:3;-webkit-column-count:3;}}
@media (max-width:992px){.portfolio-v134-shell .portfolio-v134-grid{column-count:2;-webkit-column-count:2;}}
@media (max-width:640px){.portfolio-v134-shell .portfolio-v134-grid{column-count:1;-webkit-column-count:1;}}
@media (prefers-reduced-motion: reduce){.portfolio-v134-shell .portfolio-v134-card,.portfolio-v134-shell .portfolio-v134-media img,.portfolio-v134-shell .portfolio-v134-image,.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-item,.sabino-portfolio-vitrine-v134 .sp-v134-vitrine-item img{transition:none !important;transform:none !important;}}


/* =========================
   V135 — portfolio hard reset
========================= */
body.home .sabino-portfolio-vitrine-v135 .portfolio-vitrine-shell{max-width:1400px;width:min(1400px,calc(100vw - 40px));padding:0;margin:0 auto;}
body.home .sabino-portfolio-vitrine-v135 .vitrine-head{margin-bottom:26px;align-items:end;}
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-grid{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  column-count:3 !important;
  -webkit-column-count:3 !important;
  column-gap:20px !important;
  -webkit-column-gap:20px !important;
  padding:0 !important;
  margin:0 !important;
  font-size:0 !important;
  line-height:0 !important;
}
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-grid,
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-grid *{box-sizing:border-box;}
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-item{
  all: unset;
  display:block !important;
  width:100% !important;
  margin:0 0 20px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  border:0 !important;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-item img,
body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
@media (max-width: 991px){body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-grid{column-count:2 !important;-webkit-column-count:2 !important;}}
@media (max-width: 640px){body.home .sabino-portfolio-vitrine-v135 .sp-v135-vitrine-grid{column-count:1 !important;-webkit-column-count:1 !important;}}

.portfolio-v135-shell .sp-v135-portfolio-hero{position:relative;min-height:70vh;background:#070707;overflow:hidden;}
.portfolio-v135-shell .sp-v135-portfolio-hero .page-hero-media,
.portfolio-v135-shell .sp-v135-portfolio-hero .page-hero-media img{display:block;width:100%;height:100%;}
.portfolio-v135-shell .sp-v135-portfolio-hero .page-hero-media{position:absolute;inset:0;}
.portfolio-v135-shell .sp-v135-portfolio-hero .page-hero-media img{object-fit:cover;object-position:center center;}
.portfolio-v135-shell .page-hero-inner{position:relative;z-index:2;}
.portfolio-v135-shell .portfolio-v135-content{padding-top:42px;}
.portfolio-v135-shell .portfolio-v135-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 28px;}
.portfolio-v135-shell .portfolio-v135-grid{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  column-count:4 !important;
  -webkit-column-count:4 !important;
  column-gap:var(--sabino-portfolio-gap,20px) !important;
  -webkit-column-gap:var(--sabino-portfolio-gap,20px) !important;
  margin:0 !important;
  padding:0 !important;
}
.portfolio-v135-shell .portfolio-v135-grid,
.portfolio-v135-shell .portfolio-v135-grid *{box-sizing:border-box;}
.portfolio-v135-shell .portfolio-v135-card{
  all: unset;
  display:block !important;
  width:100% !important;
  margin:0 0 var(--sabino-portfolio-gap,20px) !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  background:#0b0b0b !important;
  overflow:hidden !important;
  box-shadow:0 18px 40px rgba(0,0,0,.16) !important;
  transition:transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .35s ease !important;
}
.portfolio-v135-shell .portfolio-v135-card-link{display:block !important;color:inherit !important;text-decoration:none !important;}
.portfolio-v135-shell .portfolio-v135-media{margin:0 !important;display:block !important;overflow:hidden !important;background:#0b0b0b !important;}
.portfolio-v135-shell .portfolio-v135-media img,
.portfolio-v135-shell .portfolio-v135-image{display:block !important;width:100% !important;height:auto !important;min-height:0 !important;max-height:none !important;object-fit:contain !important;transition:transform .75s cubic-bezier(.22,.61,.36,1) !important;}
.portfolio-v135-shell .portfolio-v135-content{position:relative !important;padding:16px 16px 18px !important;background:#0b0b0b !important;color:#f3ede1 !important;}
.portfolio-v135-shell .portfolio-v135-meta{margin:0 0 8px !important;font-size:.7rem !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--gold) !important;}
.portfolio-v135-shell .portfolio-v135-content h3{margin:0 0 8px !important;font-family:var(--serif) !important;font-size:clamp(1.18rem,1.4vw,1.75rem) !important;line-height:1.04 !important;letter-spacing:-.02em !important;}
.portfolio-v135-shell .portfolio-v135-content p{margin:0 !important;font-size:.92rem !important;line-height:1.6 !important;color:rgba(243,237,225,.82) !important;}
.portfolio-v135-shell .portfolio-v135-grid.has-hover-zoom .portfolio-v135-card:hover{transform:translateY(-3px) !important;box-shadow:0 26px 60px rgba(0,0,0,.22) !important;}
.portfolio-v135-shell .portfolio-v135-grid.has-hover-zoom .portfolio-v135-card:hover .portfolio-v135-media img{transform:scale(1.03) !important;}
@media (max-width: 1180px){.portfolio-v135-shell .portfolio-v135-grid{column-count:3 !important;-webkit-column-count:3 !important;}}
@media (max-width: 991px){.portfolio-v135-shell .portfolio-v135-grid{column-count:2 !important;-webkit-column-count:2 !important;}}
@media (max-width: 640px){.portfolio-v135-shell .portfolio-v135-grid{column-count:1 !important;-webkit-column-count:1 !important;}}

/* Neutralize legacy portfolio/vitrine layouts */
body.home .sabino-portfolio-vitrine-v135 .portfolio-grid,
body.home .sabino-portfolio-vitrine-v135 .dynamic-grid,
body.home .sabino-portfolio-vitrine-v135 .portfolio-card,
.portfolio-v135-shell .portfolio-grid,
.portfolio-v135-shell .dynamic-grid,
.portfolio-v135-shell .portfolio-card{display:unset !important;}


/* =========================
   V138 — NEXT LEVEL PREMIUM FINISH
   ========================= */
:root{
  --sn-premium-ease:cubic-bezier(.22,.61,.36,1);
  --sn-premium-shadow:0 24px 56px rgba(0,0,0,.28);
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.hero-copy{max-width:min(40rem,42vw)}
.hero-copy h1,.hero-copy .hero-title{letter-spacing:-.03em;text-wrap:balance}
.hero-copy p,.hero-copy .hero-subtitle{max-width:38ch}
.portfolio-card,.story-card,.work-card,.feature-card,.collection-card,.vitrine-item,.selected-card{
  backface-visibility:hidden;
  transform:translateZ(0);
}
.portfolio-card .media,.story-card .media,.work-card .media,.feature-card .media,.collection-card .media,.selected-card .media,
.portfolio-card .media-link,.story-card .media-link,.work-card .media-link,.feature-card .media-link,.collection-card .media-link{
  overflow:hidden;
}
.portfolio-card .media::after,.story-card .media::after,.work-card .media::after,.feature-card .media::after,.collection-card .media::after,.selected-card .media::after,
.portfolio-card .media-link::after,.story-card .media-link::after,.work-card .media-link::after,.feature-card .media-link::after,.collection-card .media-link::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 22%,rgba(0,0,0,.08) 54%,rgba(0,0,0,.34) 100%);
  opacity:.78;transition:opacity .45s var(--sn-premium-ease);
}
.portfolio-card:hover .media::after,.story-card:hover .media::after,.work-card:hover .media::after,.feature-card:hover .media::after,.collection-card:hover .media::after,.selected-card:hover .media::after,
.portfolio-card:hover .media-link::after,.story-card:hover .media-link::after,.work-card:hover .media-link::after,.feature-card:hover .media-link::after,.collection-card:hover .media-link::after{
  opacity:1;
}
.portfolio-card:hover,.story-card:hover,.work-card:hover,.feature-card:hover,.collection-card:hover,.selected-card:hover{
  box-shadow:var(--sn-premium-shadow);
}
.portfolio-card img,.story-card img,.work-card img,.feature-card img,.collection-card img,.selected-card img,.hero-slide img,.vitrine-item img{
  transition:transform .9s var(--sn-premium-ease),filter .45s ease;
}
.portfolio-card:hover img,.story-card:hover img,.work-card:hover img,.feature-card:hover img,.collection-card:hover img,.selected-card:hover img,.vitrine-item:hover img{
  transform:scale(1.03);
  filter:saturate(1.02);
}
.vitrine-grid,.masonry-grid,.portfolio-grid,.stories-grid,.works-grid{content-visibility:auto;contain-intrinsic-size:1px 1200px}
.fade-up,.reveal-item{opacity:0;transform:translateY(18px);transition:opacity .7s var(--sn-premium-ease),transform .7s var(--sn-premium-ease)}
.fade-up.is-visible,.reveal-item.is-visible{opacity:1;transform:none}
.vitrine-grid .vitrine-item{margin-bottom:20px;break-inside:avoid;position:relative}
.vitrine-grid .vitrine-item img{display:block;width:100%;height:auto}
.portfolio-filter button,.filter-chip{transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease}
.portfolio-filter button:hover,.filter-chip:hover{transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){
  .fade-up,.reveal-item,.portfolio-card img,.story-card img,.work-card img,.feature-card img,.collection-card img,.selected-card img,.hero-slide img,.vitrine-item img,.portfolio-filter button,.filter-chip{transition:none!important}
}


/* ===============================
   V141 — stable portfolio fixes
   =============================== */
.sabino-portfolio-vitrine-v141 .vitrine-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-bottom:32px}
.sabino-portfolio-vitrine-v141 .vitrine-head .eyebrow{margin-bottom:14px}
.sabino-portfolio-vitrine-v141 .vitrine-head h2{margin:0;font-size:clamp(3.4rem,6vw,7rem);line-height:.92;letter-spacing:-.03em}
.sabino-portfolio-vitrine-v141 .vitrine-head p{margin:18px 0 0;max-width:760px;color:rgba(245,245,245,.82);font-size:1.9rem;line-height:1.6}
.sabino-portfolio-vitrine-v141 .vitrine-top-cta{justify-self:end;align-self:center}
.sabino-portfolio-vitrine-v141 .vitrine-grid{column-count:3;column-gap:20px}
.sabino-portfolio-vitrine-v141 .vitrine-item{break-inside:avoid;display:block;margin:0 0 20px;padding:0;background:transparent;border:0;box-shadow:none}
.sabino-portfolio-vitrine-v141 .vitrine-item img{display:block;width:100%;height:auto;background:transparent;object-fit:contain;border-radius:0;box-shadow:none;filter:none!important;opacity:1!important;transform:none!important}
@media (max-width: 1024px){.sabino-portfolio-vitrine-v141 .vitrine-grid{column-count:2}.sabino-portfolio-vitrine-v141 .vitrine-head{grid-template-columns:1fr;gap:20px}.sabino-portfolio-vitrine-v141 .vitrine-top-cta{justify-self:start}}
@media (max-width: 680px){.sabino-portfolio-vitrine-v141 .vitrine-grid{column-count:1}.sabino-portfolio-vitrine-v141 .vitrine-head h2{font-size:clamp(2.8rem,10vw,4.6rem)}.sabino-portfolio-vitrine-v141 .vitrine-head p{font-size:1.6rem}}

.post-type-archive-portfolio .portfolio-v135-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 32px}
.post-type-archive-portfolio .portfolio-v135-card{transition:opacity .22s ease, transform .22s ease}
.post-type-archive-portfolio .portfolio-v135-card.is-filtered-out{opacity:0;transform:translateY(10px) scale(.985);pointer-events:none}
.post-type-archive-portfolio .portfolio-v135-card[hidden]{display:none!important}
.post-type-archive-portfolio .portfolio-v135-card .portfolio-v135-media{overflow:hidden}
.post-type-archive-portfolio .portfolio-v135-card .portfolio-v135-media img{transition:transform .5s ease}
.post-type-archive-portfolio .portfolio-v135-card:hover .portfolio-v135-media img{transform:scale(1.03)}

/* ===============================
   V142 — vitrine text + smoother portfolio filter
   =============================== */
.sabino-portfolio-vitrine-v141 .vitrine-head-v142{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-bottom:32px!important}
.sabino-portfolio-vitrine-v141 .vitrine-copy-block{display:block;min-width:0}
.sabino-portfolio-vitrine-v141 .vitrine-copy-block .eyebrow{display:block;margin:0 0 14px!important;color:#c8a96a;letter-spacing:.28em;text-transform:uppercase;font-size:1.1rem}
.sabino-portfolio-vitrine-v141 .vitrine-section-title{display:block!important;margin:0!important;color:#f5f1e8!important;font-size:clamp(3.4rem,6vw,7rem)!important;line-height:.92!important;letter-spacing:-.03em!important;max-width:8ch}
.sabino-portfolio-vitrine-v141 .vitrine-section-copy{display:block!important;margin:18px 0 0!important;max-width:760px!important;color:rgba(245,245,245,.82)!important;font-size:1.9rem!important;line-height:1.6!important;opacity:1!important;visibility:visible!important}
.sabino-portfolio-vitrine-v141 .vitrine-top-cta{justify-self:end;align-self:center}
@media (max-width:1024px){.sabino-portfolio-vitrine-v141 .vitrine-head-v142{grid-template-columns:1fr!important;gap:20px}.sabino-portfolio-vitrine-v141 .vitrine-top-cta{justify-self:start}}
@media (max-width:680px){.sabino-portfolio-vitrine-v141 .vitrine-section-title{font-size:clamp(2.8rem,10vw,4.6rem)!important}.sabino-portfolio-vitrine-v141 .vitrine-section-copy{font-size:1.6rem!important}}

.post-type-archive-portfolio .portfolio-v135-card{transition:opacity .32s ease,transform .32s ease,filter .32s ease;will-change:opacity,transform,filter}
.post-type-archive-portfolio .portfolio-v135-card.is-fading{opacity:0;transform:translateY(14px) scale(.985);filter:blur(3px);pointer-events:none}
.post-type-archive-portfolio .portfolio-v135-card.is-filtered-out{opacity:0;transform:translateY(18px) scale(.975);filter:blur(4px);pointer-events:none}
.post-type-archive-portfolio .portfolio-v135-card.is-filtered-in{animation:sabinoPortfolioFadeIn .42s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--stagger-delay,0ms)}
@keyframes sabinoPortfolioFadeIn{from{opacity:0;transform:translateY(14px) scale(.985);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}


/* =========================
   V143 — Vitrine title/copy visibility fix
========================= */
.sabino-portfolio-vitrine-v143 .vitrine-head-v143{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:48px!important;
}
.sabino-portfolio-vitrine-v143 .vitrine-heading-col,
.sabino-portfolio-vitrine-v143 .vitrine-intro-copy-v143{display:block!important;opacity:1!important;visibility:visible!important}
.sabino-portfolio-vitrine-v143 .vitrine-section-title{
  display:block!important;
  margin:14px 0 0!important;
  color:#f4ede1!important;
  opacity:1!important;
  visibility:visible!important;
}
.sabino-portfolio-vitrine-v143 .vitrine-section-copy{
  display:block!important;
  margin:18px 0 0!important;
  max-width:760px!important;
  color:rgba(245,245,245,.82)!important;
  font-size:1.9rem!important;
  line-height:1.6!important;
  opacity:1!important;
  visibility:visible!important;
}
@media (max-width: 991px){
  .sabino-portfolio-vitrine-v143 .vitrine-head-v143{flex-direction:column!important;align-items:flex-start!important;gap:18px!important}
  .sabino-portfolio-vitrine-v143 .vitrine-section-copy{font-size:1.5rem!important;max-width:100%!important}
}


/* =========================
   V144 — restore v135 masonry + backend text visibility
========================= */
body.home .sabino-portfolio-vitrine-v144 .vitrine-head-v144{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:48px!important;
  margin-bottom:26px!important;
}
body.home .sabino-portfolio-vitrine-v144 .vitrine-heading-col,
body.home .sabino-portfolio-vitrine-v144 .vitrine-intro-copy-v144{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}
body.home .sabino-portfolio-vitrine-v144 .vitrine-section-title{
  display:block!important;
  margin:14px 0 0!important;
  color:#f4ede1!important;
  font-size:clamp(3.2rem,6vw,6.8rem)!important;
  line-height:.92!important;
  letter-spacing:-.03em!important;
}
body.home .sabino-portfolio-vitrine-v144 .vitrine-section-copy{
  display:block!important;
  margin:18px 0 0!important;
  max-width:760px!important;
  color:rgba(245,245,245,.82)!important;
  font-size:1.9rem!important;
  line-height:1.6!important;
}
body.home .sabino-portfolio-vitrine-v144 .sp-v135-vitrine-grid{
  display:block!important;
  width:100%!important;
  column-count:3!important;
  -webkit-column-count:3!important;
  column-gap:20px!important;
  -webkit-column-gap:20px!important;
  font-size:0!important;
  line-height:0!important;
}
body.home .sabino-portfolio-vitrine-v144 .sp-v135-vitrine-item{
  all:unset;
  display:block!important;
  width:100%!important;
  margin:0 0 20px!important;
  break-inside:avoid!important;
  -webkit-column-break-inside:avoid!important;
  page-break-inside:avoid!important;
  overflow:hidden!important;
}
body.home .sabino-portfolio-vitrine-v144 .sp-v135-vitrine-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}
@media (max-width: 991px){
  body.home .sabino-portfolio-vitrine-v144 .vitrine-head-v144{flex-direction:column!important;align-items:flex-start!important;gap:18px!important;}
  body.home .sabino-portfolio-vitrine-v144 .sp-v135-vitrine-grid{column-count:2!important;-webkit-column-count:2!important;}
}
@media (max-width: 640px){
  body.home .sabino-portfolio-vitrine-v144 .sp-v135-vitrine-grid{column-count:1!important;-webkit-column-count:1!important;}
}


/* =========================
   V146 — Works overlay + gallery fixes
========================= */
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:24px!important}
.works-showcase .works-grid .portfolio-card{position:relative!important;grid-column:span 4!important;overflow:hidden!important;border-radius:18px!important;background:#0f0f0f!important;border:1px solid rgba(255,255,255,.06)!important;min-height:0!important}
.works-showcase .works-grid .portfolio-card.wide,
.works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 8!important}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card:nth-child(n) .media{display:block!important;height:0!important;padding-top:66.6667%!important;background-size:cover!important;background-position:center center!important}
.works-showcase .works-grid .portfolio-card .content.work-card-overlay{position:absolute!important;left:0;right:0;bottom:0;z-index:3;padding:20px 18px 18px!important;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.16) 18%,rgba(0,0,0,.85) 100%)!important;transform:none!important;opacity:1!important}
.works-showcase .works-grid .portfolio-card h3,
.works-showcase .works-grid .portfolio-card h3 a{color:#fff!important;font-size:1.18rem!important;line-height:1.1!important;margin:.35rem 0 .25rem!important;text-decoration:none!important}
.works-showcase .works-grid .portfolio-card .work-card-client-line{margin:0!important;color:rgba(255,255,255,.78)!important;font-size:.92rem!important;line-height:1.35!important}
.works-showcase .works-grid .portfolio-card .selected-meta{color:rgba(255,255,255,.78)!important}
.works-showcase .works-grid .portfolio-card .work-date-pill{background:rgba(200,169,106,.92)!important;color:#111!important;border:0!important}
.works-showcase .works-grid .portfolio-card:hover .media{transform:scale(1.035)!important}
@media (max-width:1100px){.works-showcase .works-grid .portfolio-card,.works-showcase .works-grid .portfolio-card.wide,.works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 6!important}}
@media (max-width:767px){.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:1fr!important;gap:18px!important}.works-showcase .works-grid .portfolio-card,.works-showcase .works-grid .portfolio-card.wide,.works-showcase .works-grid .portfolio-card:nth-child(5n+1){grid-column:span 1!important}.works-showcase .works-grid .portfolio-card .content.work-card-overlay{padding:16px 15px 14px!important}}

.single-work-shell .sabino-portfolio-gallery-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.single-work-shell .sabino-portfolio-gallery-item{position:relative!important;overflow:hidden!important;border-radius:16px!important;background:#0d0d0d!important;border:1px solid rgba(255,255,255,.06)!important}
.single-work-shell .sabino-portfolio-gallery-item img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain!important;background:#0d0d0d}
.single-work-shell .sabino-portfolio-gallery-item .work-file-label{position:absolute!important;left:14px!important;right:14px!important;bottom:12px!important;margin:0!important;padding:0!important;background:none!important;color:#fff!important;font-size:.82rem!important;line-height:1.25!important;text-shadow:0 2px 8px rgba(0,0,0,.55)!important;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}
.single-work-shell .sabino-portfolio-gallery-item:after{content:'';position:absolute;left:0;right:0;bottom:0;height:38%;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.72) 100%);opacity:0;transition:opacity .25s ease;pointer-events:none}
.single-work-shell .sabino-portfolio-gallery-item:hover:after,.single-work-shell .sabino-portfolio-gallery-item:hover .work-file-label{opacity:1;transform:translateY(0)}
@media (max-width:1000px){.single-work-shell .sabino-portfolio-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:640px){.single-work-shell .sabino-portfolio-gallery-grid{grid-template-columns:1fr!important}}


/* ==================================================
   V147 — Works / Vitrine final refinements
   ================================================== */
.sn-work-back{margin:4px 0 28px}
.sn-btn-outline{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:1px solid rgba(200,169,106,.65);color:#c8a96a;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;line-height:1;background:rgba(200,169,106,.05);transition:background .28s ease,color .28s ease,border-color .28s ease,transform .28s ease}
.sn-btn-outline:hover{background:#c8a96a;color:#111;border-color:#c8a96a;transform:translateY(-1px)}

/* Restore larger Works cards */
.works-showcase .works-grid{display:grid !important;grid-template-columns:repeat(12,minmax(0,1fr)) !important;gap:30px !important;align-items:stretch}
.works-showcase .works-grid .portfolio-card,
.works-showcase .work-card{grid-column:span 4 !important;overflow:hidden;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08)}
.works-showcase .works-grid .portfolio-card:first-child,
.works-showcase .work-card:first-child{grid-column:span 8 !important}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media-link,
.works-showcase .work-card-media{aspect-ratio:3/2 !important;min-height:0 !important;height:auto !important;background-position:center center !important}
.works-showcase .work-card-content,
.works-showcase .works-grid .portfolio-card .content{padding:24px 24px 22px !important}
.works-showcase .work-card h3,
.works-showcase .works-grid .portfolio-card h3{font-size:clamp(1.4rem,1.9vw,2.05rem) !important;line-height:1.02 !important;max-width:14ch}
.works-showcase .work-card-date,
.works-showcase .work-date-pill{font-size:.68rem !important;letter-spacing:.18em !important}
.works-showcase .works-grid .portfolio-card p{font-size:.96rem !important;line-height:1.5 !important;max-width:40ch}
@media (max-width: 1024px){
  .works-showcase .works-grid{grid-template-columns:repeat(6,minmax(0,1fr)) !important;gap:24px !important}
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .work-card{grid-column:span 3 !important}
  .works-showcase .works-grid .portfolio-card:first-child,
  .works-showcase .work-card:first-child{grid-column:span 6 !important}
}
@media (max-width: 680px){
  .works-showcase .works-grid{grid-template-columns:1fr !important;gap:20px !important}
  .works-showcase .works-grid .portfolio-card,
  .works-showcase .works-grid .portfolio-card:first-child,
  .works-showcase .work-card,
  .works-showcase .work-card:first-child{grid-column:span 1 !important}
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .works-grid .portfolio-card .media-link,
  .works-showcase .work-card-media{aspect-ratio:3/2 !important}
}

/* Portfolio Vitrine typography refinement */
body.home .sabino-portfolio-vitrine-v144 .vitrine-section-title,
.sabino-portfolio-vitrine-v141 .vitrine-section-title,
.sabino-portfolio-vitrine-v143 .vitrine-section-title{font-family:var(--serif) !important;font-size:clamp(2rem,3.2vw,3.2rem) !important;line-height:1.02 !important;letter-spacing:-.02em !important;max-width:14ch !important;margin:0 !important}
body.home .sabino-portfolio-vitrine-v144 .vitrine-section-copy,
.sabino-portfolio-vitrine-v141 .vitrine-section-copy,
.sabino-portfolio-vitrine-v143 .vitrine-section-copy{font-family:var(--sans,inherit) !important;font-size:1rem !important;line-height:1.7 !important;color:rgba(245,245,245,.76) !important;max-width:34rem !important;margin:14px 0 0 !important}
body.home .sabino-portfolio-vitrine-v144 .vitrine-head-v144{margin-bottom:22px !important;align-items:end !important}
body.home .sabino-portfolio-vitrine-v144 .vitrine-intro-copy-v144{padding-top:2px}
@media (max-width: 768px){
  body.home .sabino-portfolio-vitrine-v144 .vitrine-section-title,
  .sabino-portfolio-vitrine-v141 .vitrine-section-title,
  .sabino-portfolio-vitrine-v143 .vitrine-section-title{font-size:clamp(1.65rem,7vw,2.4rem) !important}
  body.home .sabino-portfolio-vitrine-v144 .vitrine-section-copy,
  .sabino-portfolio-vitrine-v141 .vitrine-section-copy,
  .sabino-portfolio-vitrine-v143 .vitrine-section-copy{font-size:.95rem !important;line-height:1.65 !important}
}


/* =========================
   V148 — Works cards + single portfolio gallery reset
========================= */
.archive-work .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid,
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
}
.archive-work .works-showcase .works-grid .portfolio-card,
.works-showcase .works-grid .portfolio-card,
.archive-work .works-showcase .work-card,
.works-showcase .work-card{
  grid-column:span 1 !important;
  border-radius:20px !important;
  overflow:hidden !important;
}
.archive-work .works-showcase .works-grid .portfolio-card .media,
.works-showcase .works-grid .portfolio-card .media,
.archive-work .works-showcase .work-card-media,
.works-showcase .work-card-media{
  height:360px !important;
  min-height:360px !important;
  aspect-ratio:3 / 2 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.archive-work .works-showcase .works-grid .portfolio-card:nth-child(n) .media,
.works-showcase .works-grid .portfolio-card:nth-child(n) .media,
.archive-work .works-showcase .work-card:nth-child(n) .work-card-media,
.works-showcase .work-card:nth-child(n) .work-card-media{
  height:360px !important;
}
.archive-work .works-showcase .works-grid .portfolio-card .content,
.works-showcase .works-grid .portfolio-card .content,
.archive-work .works-showcase .work-card-content,
.works-showcase .work-card-content{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  padding:22px 22px 20px !important;
  background:linear-gradient(180deg,rgba(4,4,4,0) 0%,rgba(4,4,4,.68) 34%,rgba(4,4,4,.94) 100%) !important;
}
.archive-work .works-showcase .works-grid .portfolio-card h3,
.works-showcase .works-grid .portfolio-card h3,
.archive-work .works-showcase .work-card h3,
.works-showcase .work-card h3{
  font-size:1.55rem !important;
  line-height:1.02 !important;
}
.archive-work .works-showcase .works-grid .portfolio-card p,
.works-showcase .works-grid .portfolio-card p,
.archive-work .works-showcase .work-card p,
.works-showcase .work-card p{
  font-size:.95rem !important;
  line-height:1.45 !important;
}
@media (max-width: 900px){
  .archive-work .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid,
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .archive-work .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .works-grid .portfolio-card .media,
  .archive-work .works-showcase .work-card-media,
  .works-showcase .work-card-media{
    height:300px !important;
    min-height:300px !important;
  }
}

.single-portfolio-page .sabino-portfolio-gallery-grid{
  display:block !important;
  column-count:3 !important;
  -webkit-column-count:3 !important;
  column-gap:20px !important;
  -webkit-column-gap:20px !important;
  gap:0 !important;
  margin:0 0 34px !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item{
  display:block !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  background:transparent !important;
}
@media (max-width: 1024px){
  .single-portfolio-page .sabino-portfolio-gallery-grid{
    column-count:2 !important;
    -webkit-column-count:2 !important;
  }
}
@media (max-width: 640px){
  .single-portfolio-page .sabino-portfolio-gallery-grid{
    column-count:1 !important;
    -webkit-column-count:1 !important;
  }
}


/* =========================
   V150 — FORCE WORKS + SINGLE GALLERIES
========================= */
.works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}
.works-showcase .works-grid .portfolio-card,
.works-showcase .work-card{
  grid-column:span 1 !important;
  border-radius:18px !important;
}
.works-showcase .works-grid .portfolio-card:nth-child(5n+1),
.works-showcase .works-grid .portfolio-card.wide,
.works-showcase .works-grid .portfolio-card:nth-child(3n+2),
.works-showcase .works-grid .portfolio-card:nth-child(3n){
  grid-column:span 1 !important;
}
.works-showcase .works-grid .portfolio-card .media,
.works-showcase .work-card-media,
.works-showcase .works-grid .portfolio-card:nth-child(n) .media{
  height:250px !important;
  min-height:250px !important;
  aspect-ratio:3 / 2 !important;
  background-size:cover !important;
  background-position:center center !important;
}
.works-showcase .works-grid .portfolio-card .content,
.works-showcase .work-card-content{
  padding:16px 16px 18px !important;
}
.works-showcase .works-grid .portfolio-card h3,
.works-showcase .work-card h3{
  font-size:1.18rem !important;
}
.works-showcase .works-grid .portfolio-card p,
.works-showcase .work-card p{
  font-size:.86rem !important;
}
@media (max-width:900px){
  .works-showcase .portfolio-grid.dynamic-grid.works-grid.portfolio-compact-grid{grid-template-columns:1fr !important;gap:16px !important;}
  .works-showcase .works-grid .portfolio-card .media,
  .works-showcase .work-card-media,
  .works-showcase .works-grid .portfolio-card:nth-child(n) .media{height:220px !important;min-height:220px !important;}
}

.single-portfolio-page .container.narrow-content{
  max-width:min(1280px, calc(100vw - 48px)) !important;
}
.single-portfolio-page .sabino-portfolio-gallery-grid{
  display:block !important;
  column-count:3 !important;
  -webkit-column-count:3 !important;
  column-gap:20px !important;
  -webkit-column-gap:20px !important;
  margin:20px 0 34px !important;
  padding:0 !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item{
  display:block !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:14px !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  aspect-ratio:auto !important;
  background:transparent !important;
  border-radius:14px !important;
}
@media (max-width:1024px){
  .single-portfolio-page .sabino-portfolio-gallery-grid{column-count:2 !important;-webkit-column-count:2 !important;}
}
@media (max-width:640px){
  .single-portfolio-page .sabino-portfolio-gallery-grid{column-count:1 !important;-webkit-column-count:1 !important;}
}

.single-work-shell .sabino-portfolio-gallery-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
}
.single-work-shell .sabino-portfolio-gallery-item img{
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
}
@media (max-width:1000px){
  .single-work-shell .sabino-portfolio-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:640px){
  .single-work-shell .sabino-portfolio-gallery-grid{grid-template-columns:1fr !important;}
}


/* =========================
   V151 — Chrome-safe single portfolio gallery
========================= */
.single-portfolio-page .sabino-portfolio-gallery-grid-force-visible,
.single-portfolio-page .sabino-portfolio-gallery-grid{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  display:block !important;
  column-count:3 !important;
  -webkit-column-count:3 !important;
  column-gap:20px !important;
  -webkit-column-gap:20px !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item{
  display:block !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  margin:0 0 20px !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
.single-portfolio-page .sabino-portfolio-gallery-item .sabino-portfolio-image,
.single-portfolio-page .sabino-portfolio-gallery-item img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translateZ(0) !important;
  -webkit-transform:translateZ(0) !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
@media (max-width: 1024px){
  .single-portfolio-page .sabino-portfolio-gallery-grid-force-visible,
  .single-portfolio-page .sabino-portfolio-gallery-grid{
    column-count:2 !important;
    -webkit-column-count:2 !important;
  }
}
@media (max-width: 640px){
  .single-portfolio-page .sabino-portfolio-gallery-grid-force-visible,
  .single-portfolio-page .sabino-portfolio-gallery-grid{
    column-count:1 !important;
    -webkit-column-count:1 !important;
  }
}


/* =========================
   V152 — single portfolio story-style gallery + mobile work fix
========================= */
.single-portfolio-page .portfolio-storylike-gallery{
  display:grid !important;
  grid-template-columns:repeat(12,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:20px 0 32px !important;
}
.single-portfolio-page .portfolio-storylike-gallery figure{
  margin:0 !important;
  grid-column:span 6;
  overflow:hidden !important;
  border-radius:14px !important;
  background:#0a0a0a !important;
}
.single-portfolio-page .portfolio-storylike-gallery figure.is-wide{grid-column:span 12;}
.single-portfolio-page .portfolio-storylike-gallery img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translateZ(0) !important;
  -webkit-transform:translateZ(0) !important;
}
@media (max-width: 900px){
  .single-portfolio-page .portfolio-storylike-gallery{grid-template-columns:repeat(12,minmax(0,1fr)) !important; gap:18px !important;}
  .single-portfolio-page .portfolio-storylike-gallery figure{grid-column:span 12 !important;}
}

.single-work-shell .sabino-portfolio-gallery-grid,
.single-work-shell .sabino-portfolio-gallery-item,
.single-work-shell .sabino-portfolio-gallery-item img{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
.single-work-shell .sabino-portfolio-gallery-item img,
.single-work-shell .work-gallery-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
@media (max-width: 640px){
  .single-work-shell .sabino-portfolio-gallery-grid{display:grid !important; grid-template-columns:1fr !important; gap:16px !important;}
  .single-work-shell .sabino-portfolio-gallery-item{display:block !important; margin:0 !important;}
}


/* =========================
   V153 — portfolio/story gallery + work tablet fix + about mini cards
========================= */
.single-portfolio-page .portfolio-story-gallery,
.single-portfolio-page .single-story-gallery.portfolio-story-gallery{
  display:grid !important;
  grid-template-columns:repeat(12,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:24px 0 34px !important;
}
.single-portfolio-page .portfolio-story-gallery figure,
.single-portfolio-page .single-story-gallery.portfolio-story-gallery figure{
  margin:0 !important;
  border:1px solid var(--line) !important;
  background:#0a0a0a !important;
  overflow:hidden !important;
  grid-column:span 6 !important;
  border-radius:0 !important;
}
.single-portfolio-page .portfolio-story-gallery figure.story-gallery-wide,
.single-portfolio-page .single-story-gallery.portfolio-story-gallery figure.story-gallery-wide{
  grid-column:span 12 !important;
}
.single-portfolio-page .portfolio-story-gallery img,
.single-portfolio-page .single-story-gallery.portfolio-story-gallery img,
.single-portfolio-page .portfolio-story-gallery-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  -webkit-transform:translateZ(0) !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
@media (max-width: 900px){
  .single-portfolio-page .portfolio-story-gallery figure,
  .single-portfolio-page .single-story-gallery.portfolio-story-gallery figure,
  .single-portfolio-page .portfolio-story-gallery figure.story-gallery-wide,
  .single-portfolio-page .single-story-gallery.portfolio-story-gallery figure.story-gallery-wide{
    grid-column:span 12 !important;
  }
}

.single-work-shell .sabino-portfolio-gallery-grid,
.single-work-shell .sabino-portfolio-gallery-item,
.single-work-shell .sabino-portfolio-gallery-item img,
.single-work-shell .work-gallery-image{
  opacity:1 !important;
  visibility:visible !important;
  display:block !important;
}
.single-work-shell .sabino-portfolio-gallery-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}
@media (max-width: 1024px){
  .single-work-shell .sabino-portfolio-gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
  .single-work-shell .sabino-portfolio-gallery-item img,
  .single-work-shell .work-gallery-image{
    min-height:0 !important;
    height:auto !important;
    object-fit:contain !important;
  }
}
@media (max-width: 640px){
  .single-work-shell .sabino-portfolio-gallery-grid{
    grid-template-columns:1fr !important;
  }
}

.about-mini-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
}
.about-mini-card{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:10px !important;
  min-height:0 !important;
  padding:24px 22px !important;
}
.about-mini-card h4{
  font-size:clamp(1.5rem,2vw,2rem) !important;
  line-height:1.05 !important;
  margin:0 !important;
}
.about-mini-card p{
  font-size:.95rem !important;
  line-height:1.55 !important;
  margin:0 !important;
}
@media (max-width: 1100px){
  .about-mini-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 767px){
  .about-mini-grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================
   V155 — STORY GALLERY MOBILE/TABLET FIX
========================= */
.single-story-shell .single-story-gallery,
.single-story-shell .single-story-gallery.is-visible{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
.single-story-shell .single-story-gallery figure,
.single-story-shell .single-story-gallery img{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
@media (max-width: 1024px){
  .single-story-shell .single-story-gallery{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .single-story-shell .single-story-gallery figure,
  .single-story-shell .single-story-gallery figure.story-gallery-wide,
  .single-story-shell .single-story-gallery figure.story-gallery-half{
    grid-column:span 1 !important;
    margin:0 !important;
  }
  .single-story-shell .single-story-gallery img{
    width:100% !important;
    height:auto !important;
    display:block !important;
  }
}


/* =========================
   V156 — FINAL CROSS-DEVICE HARDENING
   ========================= */
.single-story-shell .single-story-gallery,
.single-work-shell .work-gallery-grid,
.single-portfolio-shell .single-portfolio-gallery,
.single-portfolio-page .single-portfolio-gallery,
.single-work-page .work-gallery-grid,
.single-story-page .single-story-gallery{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

.single-story-shell .single-story-gallery img,
.single-work-shell .work-gallery-grid img,
.single-portfolio-shell .single-portfolio-gallery img,
.single-portfolio-page .single-portfolio-gallery img,
.single-work-page .work-gallery-grid img,
.single-story-page .single-story-gallery img{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  translate:0 0;
}

/* keep galleries stable on iPad / iPhone / touch devices */
@media (hover:none), (pointer:coarse){
  .single-story-shell .single-story-gallery,
  .single-work-shell .work-gallery-grid,
  .single-portfolio-shell .single-portfolio-gallery,
  .single-portfolio-page .single-portfolio-gallery,
  .single-work-page .work-gallery-grid,
  .single-story-page .single-story-gallery{
    display:block !important;
  }
  .single-story-shell .single-story-gallery figure,
  .single-work-shell .work-gallery-grid > *,
  .single-portfolio-shell .single-portfolio-gallery > *,
  .single-portfolio-page .single-portfolio-gallery > *,
  .single-work-page .work-gallery-grid > *,
  .single-story-page .single-story-gallery figure{
    display:block !important;
    width:100% !important;
    margin:0 0 20px !important;
    break-inside:avoid !important;
    -webkit-column-break-inside:avoid !important;
    page-break-inside:avoid !important;
  }
}

/* cross-browser paint stability */
.single-story-shell .single-story-gallery,
.single-work-shell .work-gallery-grid,
.single-portfolio-shell .single-portfolio-gallery,
.single-portfolio-page .single-portfolio-gallery,
.single-work-page .work-gallery-grid,
.single-story-page .single-story-gallery,
.single-story-shell .single-story-gallery figure,
.single-work-shell .work-gallery-grid > *,
.single-portfolio-shell .single-portfolio-gallery > *,
.single-portfolio-page .single-portfolio-gallery > *{
  will-change:auto;
  contain:layout paint;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
}

/* keep premium effects but respect accessibility */
@media (prefers-reduced-motion:reduce){
  .single-story-shell .single-story-gallery *,
  .single-work-shell .work-gallery-grid *,
  .single-portfolio-shell .single-portfolio-gallery *,
  .single-portfolio-page .single-portfolio-gallery *,
  .work-card *,
  .portfolio-card *{
    transition:none !important;
    animation:none !important;
  }
}
