/* ===== Inner-page styles (Milan, Portfolio, Wedding, Contact form, portfolio pieces) ===== */
.cf-input{width:100%;border:1.5px solid #C4A882;background:transparent;padding:12px 16px;font-family:Jost,sans-serif;font-size:.92rem;color:#2C2C2C;outline:none;transition:border-color .25s;border-radius:10px}
.cf-input:focus{border-color:#8B7355}
.cf-select{width:100%;border:1.5px solid #C4A882;background:transparent;padding:12px 16px;font-family:Jost,sans-serif;font-size:.92rem;color:#2C2C2C;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;border-radius:10px}
.cf-btn{background:transparent;border:1px solid #C4A882;color:#8B7355;padding:16px 52px;font-family:Jost,sans-serif;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:all .3s}
.cf-btn:hover{background:#C4A882;color:#FAF8F4}
.pi-hero{width:100%;max-height:480px;object-fit:cover;display:block;}
.pi-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:36px 0;}
.pi-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px;cursor:zoom-in;transition:transform .3s;}
.pi-gallery img:hover{transform:scale(1.02);}
.pi-meta{display:flex;gap:28px;flex-wrap:wrap;margin:20px 0;border-top:1px solid #E8E0D4;border-bottom:1px solid #E8E0D4;padding:18px 0;}
.pi-meta-item{display:flex;flex-direction:column;gap:3px;}
.pi-meta-label{font-size:.67rem;letter-spacing:.15em;text-transform:uppercase;color:#8B7355;}
.pi-meta-value{font-family:"Cormorant Garamond",serif;font-size:1.02rem;color:#2C2C2C;}
.pi-video{width:100%;max-width:780px;margin:32px auto;display:block;border-radius:4px;}
.pi-back{display:inline-flex;align-items:center;gap:8px;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#8B7355;text-decoration:none;margin-bottom:28px;transition:color .2s;}
.pi-back:hover{color:#2C2C2C;}
.nav-active{color:#8B7355 !important;font-weight:500;}
.mp-poster-strip{background:#0B0A09;padding:0}
.mp-poster-strip-head{text-align:center;padding:72px 24px 44px}
.mp-poster-strip-head .mp-ps-eyebrow{font-family:Jost,sans-serif;font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:#C4A882;margin-bottom:12px}
.mp-poster-strip-head h2{font-family:Flamenco,serif;font-weight:300;font-size:clamp(1.8rem,4vw,2.8rem);color:#FAF8F4;line-height:1.1;margin-bottom:14px}
.mp-poster-strip-head p{font-family:Cormorant Garamond,serif;font-size:1.05rem;color:rgba(250,248,244,.6);max-width:500px;margin:0 auto;line-height:1.85}
.mp-poster-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;max-width:1100px;margin:0 auto;padding:0 24px 72px}
.mp-poster-row img{width:100%;display:block;object-fit:cover;aspect-ratio:226/300}
@media(max-width:600px){.mp-poster-row{grid-template-columns:1fr;max-width:300px}}
.mp-hero{background:#1C1612;padding:180px 0 100px;text-align:center;color:#FAF8F4}
.mp-hero-eyebrow{font-family:Jost,sans-serif;font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:#C4A882;margin-bottom:16px}
.mp-hero h1{font-family:Flamenco,serif;font-weight:300;font-size:clamp(2.8rem,6vw,5.2rem);line-height:1.1;margin-bottom:20px}
.mp-hero-sub{font-family:Jost,sans-serif;font-size:.82rem;letter-spacing:.15em;color:rgba(250,248,244,.6)}
.mp-intro{max-width:680px;margin:0 auto;padding:72px 24px;text-align:center}
.mp-intro p{font-family:Cormorant Garamond,serif;font-size:1.2rem;line-height:1.9;color:#3C3530}
.mp-piece-inner{display:grid;grid-template-columns:1fr 1fr;min-height:580px}
.mp-piece-img{overflow:hidden;background:#E8E0D4}
.mp-piece-img img{width:100%;height:100%;object-fit:cover;display:block}
.mp-piece-text{padding:72px 60px;display:flex;flex-direction:column;justify-content:center}
.mp-piece-num{font-family:Jost,sans-serif;font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:#C4A882;margin-bottom:14px}
.mp-piece-title{font-family:Flamenco,serif;font-weight:300;font-size:2.8rem;line-height:1.1;margin-bottom:14px}
.mp-piece-meta{font-family:Jost,sans-serif;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#8B7355;margin-bottom:6px}
.mp-piece-note{font-family:Jost,sans-serif;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:#C4A882;margin-bottom:24px}
.mp-piece-desc{font-family:Cormorant Garamond,serif;font-size:1.08rem;line-height:1.88;opacity:.85}
.mp-gallery-wrap{max-width:960px;margin:0 auto;padding:8px 24px 48px}
.mp-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.mp-gallery img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;cursor:pointer;transition:transform .3s}
.mp-gallery img:hover{transform:scale(1.02)}
.mp-lb-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:9999;flex-direction:column;align-items:center;justify-content:center}
.mp-lb-overlay.active{display:flex}
.mp-lb-img{max-width:90vw;max-height:80vh;object-fit:contain;display:block}
.mp-lb-title{position:fixed;bottom:28px;left:0;width:100%;text-align:center;font-family:Flamenco,serif;font-weight:400;font-size:1.25rem;color:#fff;letter-spacing:.07em;padding:0 24px;-webkit-font-smoothing:antialiased;text-shadow:0 1px 6px rgba(0,0,0,.7)}
.mp-lb-close{position:fixed;top:20px;right:28px;font-size:2.4rem;color:#FAF8F4;cursor:pointer;background:none;border:none;padding:8px;opacity:.8}
.mp-lb-close:hover{opacity:1}
.mp-lb-arrow{position:fixed;top:50%;transform:translateY(-50%);font-size:3rem;color:#FAF8F4;cursor:pointer;background:none;border:none;padding:16px 22px;opacity:.6;transition:opacity .2s}
.mp-lb-arrow:hover{opacity:1}
.mp-lb-prev{left:8px}
.mp-lb-next{right:8px}
.mp-sq .mp-gallery{grid-template-columns:repeat(auto-fit,130px);justify-content:center;gap:8px}
.mp-sq .mp-gallery img{aspect-ratio:1/1}
.wj-section{max-width:960px;margin:0 auto;padding:60px 24px}
.wj-h2{font-family:Flamenco,serif;font-weight:300;font-size:2.2rem;margin-bottom:8px;color:#1C1612}
.wj-eyebrow{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#8B7355;margin-bottom:10px}
.wj-sub{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#8B7355;margin-bottom:18px}
.wj-body{font-family:Cormorant Garamond,serif;font-size:1.1rem;line-height:1.85;color:#3C3530;margin:16px 0 28px}
.wj-hero{width:100%;max-height:520px;object-fit:cover;display:block;border-radius:2px;margin-bottom:24px}
.wj-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:24px}
.wj-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px;transition:transform .3s}
.wj-gallery img:hover{transform:scale(1.02)}
.wj-gallery img{cursor:pointer}
.wj-divider{border:none;border-top:1px solid #E8E0D4;margin:64px auto;max-width:960px}
.lb-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:9999;flex-direction:column;align-items:center;justify-content:center}
.lb-overlay.active{display:flex}
.lb-img{max-width:90vw;max-height:80vh;object-fit:contain;display:block}
.lb-title{position:fixed;bottom:28px;left:0;width:100%;text-align:center;font-family:Flamenco,serif;font-weight:400;font-size:1.25rem;color:#fff;letter-spacing:.07em;padding:0 24px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 1px 6px rgba(0,0,0,.7)}
.lb-close{position:fixed;top:20px;right:28px;font-size:2.4rem;color:#FAF8F4;cursor:pointer;background:none;border:none;padding:8px;opacity:.8}
.lb-close:hover{opacity:1}
.lb-arrow{position:fixed;top:50%;transform:translateY(-50%);font-size:3rem;color:#FAF8F4;cursor:pointer;background:none;border:none;padding:16px 22px;opacity:.6;transition:opacity .2s}
.lb-arrow:hover{opacity:1}
.lb-prev{left:8px}
.lb-next{right:8px}

/* ===== Phones and small tablets: stack the two-column page layouts ===== */
@media(max-width:900px){
 div[style*="grid-template-columns:360px 1fr"],
 div[style*="grid-template-columns:300px 1fr"],
 div[style*="grid-template-columns:440px 1fr"],
 div[style*="grid-template-columns:320px 1fr"]{grid-template-columns:1fr !important;gap:32px !important}
 div[style*="grid-template-columns:320px 1fr"]{padding:0}
 div[style*="position:sticky"]{position:static !important;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
 div[style*="position:sticky"] img{margin-bottom:0 !important;aspect-ratio:3/4;object-fit:cover}
 .inner-hero blockquote{white-space:normal !important;font-size:1rem;line-height:1.5}
 .inner-hero-inner h1{font-size:clamp(2rem,9vw,3rem)}
 .container[style*="padding:60px"]{padding-top:40px !important;padding-bottom:56px !important}
}
@media(max-width:600px){
 .locations-grid{grid-template-columns:1fr !important}
 .cf-btn{width:100%;padding:16px 20px}
 div[style*="background:#F5F1EA"]{padding:26px 20px !important}
}

/* ===== Cart, checkout and account: brand look ===== */
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none !important}
.woocommerce-message,.woocommerce-info,.woocommerce-error{padding:16px 20px !important;border-top:0 !important}
.woocommerce-message .button,.woocommerce-info .button{float:right;margin-left:14px}
.rb-shop-page .rb-content{max-width:1120px}
.rb-shop-page h2,.rb-shop-page .wp-block-heading{font-family:Flamenco,serif;font-weight:300;color:#1C1612}
.rb-shop-page .wc-block-cart__totals-title,.rb-shop-page .wc-block-components-checkout-order-summary__title-text{font-family:Jost,sans-serif;font-size:.7rem !important;letter-spacing:.2em;text-transform:uppercase;color:#8B7355;font-weight:500}
.rb-shop-page .wc-block-components-product-name{color:#1C1612;font-family:Jost,sans-serif;text-decoration:none;border-bottom:0}
.rb-shop-page .wc-block-components-product-price,.rb-shop-page .wc-block-components-totals-item__value{font-family:Jost,sans-serif;color:#1C1612}
.rb-shop-page .wc-block-cart-items th{font-family:Jost,sans-serif;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#8B7355;font-weight:500}
.rb-shop-page .wc-block-components-button:not(.is-link){background:#8B7355 !important;color:#FAF8F4 !important;border:0 !important;border-radius:0 !important;font-family:Jost,sans-serif;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;min-height:52px;font-weight:400}
.rb-shop-page .wc-block-components-button:not(.is-link):hover{background:#6f5c43 !important}
.rb-shop-page .wc-block-components-text-input input,.rb-shop-page .wc-block-components-select-input select,.rb-shop-page .wc-block-components-form .wc-block-components-text-input input{border-radius:3px;border-color:#E8DED2;background:#FAF8F4}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit{background:#8B7355 !important;color:#FAF8F4 !important;border:0 !important;border-radius:0 !important;font-family:Jost,sans-serif;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:14px 28px;font-weight:400}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:#6f5c43 !important}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea{border:1px solid #E8DED2;border-radius:3px;padding:12px;background:#FAF8F4;font-family:Jost,sans-serif}
.woocommerce form .form-row label{font-family:Jost,sans-serif;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#8B7355}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0 0 28px}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:12px 0;border-bottom:1px solid #E8E0D4;font-family:Jost,sans-serif;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#2C2C2C}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{color:#8B7355}
@media(min-width:900px){.woocommerce-account .woocommerce-MyAccount-navigation{float:left;width:24%}.woocommerce-account .woocommerce-MyAccount-content{float:right;width:70%}}
