/* Public components only. Global design values live in design-tokens.css. */
.ps-gallery,.ps-single-photo,.ps-cart-page,.ps-checkout-page,.ps-order-success{box-sizing:border-box;color:var(--ps-ink,#171512);font-family:var(--ps-font-body,inherit);font-size:16px;line-height:1.5}
.ps-gallery{width:min(1480px,calc(100% - 48px));margin:0 auto;padding:clamp(36px,5vw,76px) 0 clamp(72px,8vw,128px)}
.ps-gallery-filters{display:flex;gap:10px clamp(18px,2.3vw,36px);flex-wrap:wrap;margin:0 0 clamp(34px,5vw,68px);align-items:center;border-bottom:1px solid var(--ps-line,rgba(23,21,18,.16));padding-bottom:13px}
.ps-gallery-filters a{color:var(--ps-muted,#706a62);text-decoration:none;font-size:11px;line-height:1;letter-spacing:.13em;text-transform:uppercase;padding:7px 0 10px;border-bottom:1px solid transparent;margin-bottom:-14px;transition:color var(--ps-motion-fast,180ms) ease,border-color var(--ps-motion-fast,180ms) ease}
.ps-gallery-filters a:hover,.ps-gallery-filters a[aria-current="true"],.ps-gallery-filters a:focus-visible{color:var(--ps-ink,#171512);border-color:currentColor;outline:none}
.ps-gallery-grid{columns:3 330px;column-gap:14px}
.ps-photo-card{display:inline-block;width:100%;margin:0 0 14px;break-inside:avoid;position:relative;overflow:hidden;background:var(--ps-paper-strong,#eee9e0)}
.ps-photo-card-link{display:block;position:relative;color:#fff;text-decoration:none;overflow:hidden}
.ps-photo-card-media,.ps-photo-card-media img{display:block;width:100%}
.ps-photo-card-media img{height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform 620ms var(--ps-ease,cubic-bezier(.2,.65,.25,1)),filter var(--ps-motion-base,320ms) ease}
.ps-photo-card:nth-child(3n+2) .ps-photo-card-media img{aspect-ratio:3/2}
.ps-photo-card-meta{position:absolute;inset:auto 0 0;padding:88px 22px 21px;display:grid;grid-template-columns:1fr auto;gap:6px 18px;align-items:end;background:linear-gradient(transparent,rgba(0,0,0,.62));opacity:0;transform:translateY(8px);transition:opacity var(--ps-motion-base,320ms) ease,transform var(--ps-motion-base,320ms) var(--ps-ease,cubic-bezier(.2,.65,.25,1))}
.ps-photo-card-title{font-family:var(--ps-font-display,serif);font-size:21px;line-height:1.08;letter-spacing:-.015em}.ps-photo-card-price{font-size:11px;letter-spacing:.06em;opacity:.82}.ps-photo-card-view{grid-column:1/-1;font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.92}
.ps-photo-card-link:hover .ps-photo-card-meta,.ps-photo-card-link:focus-visible .ps-photo-card-meta{opacity:1;transform:none}.ps-photo-card-link:hover img{transform:scale(1.018);filter:saturate(.96)}
.ps-photo-card-link:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
.ps-gallery-empty{font-family:var(--ps-font-display,serif);font-size:clamp(24px,3vw,42px);font-weight:400;color:var(--ps-muted,#706a62)}
@media(max-width:767px){.ps-gallery{width:min(100% - 28px,720px);padding-top:30px}.ps-gallery-grid{columns:1}.ps-gallery-filters{overflow:auto;flex-wrap:nowrap;white-space:nowrap;padding-bottom:12px;margin-bottom:30px}.ps-photo-card-media img,.ps-photo-card:nth-child(3n+2) .ps-photo-card-media img{aspect-ratio:auto;max-height:none}}
@media(hover:none),(pointer:coarse){.ps-photo-card-meta{position:relative;opacity:1;transform:none;background:transparent;color:var(--ps-ink,#171512);padding:13px 1px 4px}.ps-photo-card-price{color:var(--ps-muted,#706a62)}.ps-photo-card-view{display:none}}

.ps-single-photo{width:min(1480px,calc(100% - 48px));margin:0 auto;padding:clamp(30px,4vw,62px) 0 clamp(80px,9vw,140px);display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,.58fr);gap:clamp(34px,7vw,118px);align-items:start}.ps-single-photo-media{position:relative}.ps-protected-preview{position:relative;user-select:none}.ps-protected-preview:after{content:"";position:absolute;inset:0}.ps-single-photo-preview{display:block;width:100%;height:auto;max-height:86vh;object-fit:contain;object-position:center top;background:var(--ps-paper-strong,#eee9e0)}.ps-single-photo-info{position:sticky;top:clamp(88px,10vw,132px);padding-top:6px}.ps-eyebrow{font-size:10px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:var(--ps-muted,#706a62);margin:0 0 18px}.ps-single-photo h1{font-family:var(--ps-font-display,serif);font-size:clamp(38px,4.5vw,68px);font-weight:400;letter-spacing:-.04em;line-height:.94;margin:0 0 22px}.ps-single-photo-description{color:var(--ps-muted,#706a62);line-height:1.72;margin:0;max-width:42ch}.ps-purchase-panel{margin-top:36px;padding-top:25px;border-top:1px solid var(--ps-line,rgba(23,21,18,.16))}.ps-purchase-field{margin:0 0 17px}.ps-purchase-field label{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px}.ps-purchase-field select{width:100%;min-height:48px;border:1px solid var(--ps-line-strong,rgba(23,21,18,.3));border-radius:0;background:transparent;color:var(--ps-ink,#171512);padding:0 13px;font:inherit}.ps-purchase-field select:focus-visible{outline:1px solid var(--ps-ink,#171512);outline-offset:2px}.ps-purchase-price{font-family:var(--ps-font-display,serif);font-size:28px;margin:24px 0}.ps-purchase-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ps-button{min-height:50px;padding:0 18px;border:1px solid var(--ps-ink,#171512);border-radius:0;background:transparent;color:var(--ps-ink,#171512);font:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--ps-motion-fast,180ms) ease,color var(--ps-motion-fast,180ms) ease}.ps-button:hover{background:var(--ps-paper,#f6f3ed)}.ps-button:focus-visible{outline:2px solid var(--ps-ink,#171512);outline-offset:3px}.ps-button-primary{background:var(--ps-ink,#171512);color:#fff}.ps-button-primary:hover{background:var(--ps-ink-soft,#36322d)}.ps-purchase-error{font-size:13px;color:var(--ps-danger,#8d2d2d)}.ps-related-photos{grid-column:1/-1;margin-top:clamp(50px,8vw,120px);border-top:1px solid var(--ps-line,rgba(23,21,18,.16));padding-top:28px}.ps-related-photos>h2{font-family:var(--ps-font-display,serif);font-weight:400;font-size:clamp(28px,3vw,46px);letter-spacing:-.025em;margin:0 0 28px}.ps-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,26px)}
@media(max-width:900px){.ps-single-photo{grid-template-columns:1fr;gap:30px}.ps-single-photo-info{position:static;max-width:680px}.ps-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.ps-single-photo{width:calc(100% - 28px);padding-top:20px}.ps-purchase-actions{grid-template-columns:1fr}.ps-related-grid{grid-template-columns:1fr}}

.ps-cart-overlay{position:fixed;inset:0;background:rgba(17,15,13,.38);backdrop-filter:blur(2px);z-index:2147483600;opacity:0;transition:opacity var(--ps-motion-base,320ms) ease}.ps-cart-overlay.is-open{opacity:1}.ps-cart-drawer{position:fixed;z-index:2147483601;right:0;top:0;width:min(450px,94vw);height:100dvh;background:var(--ps-white,#fff);color:var(--ps-ink,#171512);font-family:var(--ps-font-body,inherit);display:grid;grid-template-rows:auto 1fr auto;transform:translateX(103%);transition:transform var(--ps-motion-base,320ms) var(--ps-ease,cubic-bezier(.2,.65,.25,1));box-shadow:-20px 0 65px rgba(0,0,0,.12);padding:28px}.ps-cart-drawer.is-open{transform:none}.ps-cart-drawer:focus{outline:none}.ps-cart-drawer-head{display:flex;justify-content:space-between;align-items:start;padding-bottom:20px;border-bottom:1px solid var(--ps-line,rgba(23,21,18,.16))}.ps-cart-drawer-head h2{font-family:var(--ps-font-display,serif);font-size:34px;font-weight:400;letter-spacing:-.025em;margin:2px 0 0}.ps-cart-close{border:0;background:transparent;color:inherit;font-size:30px;line-height:1;cursor:pointer;min-width:44px;min-height:44px}.ps-cart-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}.ps-cart-items{overflow:auto;padding:10px 0}.ps-cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:15px;padding:15px 0;border-bottom:1px solid var(--ps-line,rgba(23,21,18,.16));align-items:start}.ps-cart-item img{width:72px;height:90px;object-fit:cover}.ps-cart-item div{display:grid;gap:5px}.ps-cart-item span{font-size:11px;color:var(--ps-muted,#706a62)}.ps-cart-item button{border:0;background:transparent;color:inherit;font-size:22px;cursor:pointer}.ps-cart-drawer-empty{color:var(--ps-muted,#706a62);padding:34px 0}.ps-cart-drawer-foot{padding-top:20px;border-top:1px solid var(--ps-line,rgba(23,21,18,.16))}.ps-cart-subtotal{display:flex;justify-content:space-between;margin-bottom:18px;font-size:13px}.ps-cart-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ps-cart-drawer-actions .ps-button{text-decoration:none;display:grid;place-items:center}.ps-cart-error{padding:9px 0;color:var(--ps-danger,#8d2d2d);font-size:13px}.ps-cart-open{overflow:hidden}
@media(max-width:520px){.ps-cart-drawer{width:100%;padding:20px}.ps-cart-drawer-actions{grid-template-columns:1fr}}

.ps-page-head{margin-bottom:clamp(36px,5vw,70px)}.ps-page-head h1,.ps-order-success>h1{font-family:var(--ps-font-display,serif);font-size:clamp(48px,7.2vw,104px);font-weight:400;letter-spacing:-.055em;line-height:.88;margin:0}.ps-cart-page,.ps-checkout-page,.ps-order-success{width:min(1280px,calc(100% - 48px));margin:0 auto;padding:clamp(44px,6vw,86px) 0 clamp(84px,9vw,140px)}.ps-cart-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.62fr);gap:clamp(40px,8vw,120px)}.ps-cart-row{display:grid;grid-template-columns:124px 1fr auto;gap:22px;padding:20px 0;border-top:1px solid var(--ps-line,rgba(23,21,18,.16));align-items:start}.ps-cart-row img{width:124px;height:156px;object-fit:cover}.ps-cart-row-copy h2{font-family:var(--ps-font-display,serif);font-size:25px;font-weight:400;margin:0 0 8px}.ps-cart-row-copy p{color:var(--ps-muted,#706a62);margin:0 0 9px;font-size:13px}.ps-cart-row>button{border:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:12px}.ps-cart-summary{align-self:start;position:sticky;top:110px;padding:28px;background:var(--ps-paper,#f6f3ed)}.ps-cart-summary form{padding-bottom:21px;border-bottom:1px solid var(--ps-line,rgba(23,21,18,.16))}.ps-cart-summary form label{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.ps-cart-summary form div{display:grid;grid-template-columns:1fr auto}.ps-cart-summary input{min-width:0;height:44px;border:1px solid var(--ps-line-strong,rgba(23,21,18,.3));border-radius:0;background:#fff;padding:0 12px;font:inherit}.ps-cart-summary form button{border:1px solid var(--ps-ink,#171512);background:var(--ps-ink,#171512);color:#fff;padding:0 16px;font:inherit;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.ps-cart-summary dl{margin:18px 0}.ps-cart-summary dl div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;font-size:13px}.ps-cart-total{font-family:var(--ps-font-display,serif);font-size:21px;border-top:1px solid var(--ps-line,rgba(23,21,18,.16));margin-top:10px;padding-top:14px!important}.ps-checkout-link{display:grid;text-decoration:none;place-items:center}.ps-checkout-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.58fr);gap:clamp(40px,8vw,120px)}.ps-checkout-form{display:grid;gap:20px}.ps-checkout-form>label{display:grid;gap:8px;font-size:10px;letter-spacing:.11em;text-transform:uppercase}.ps-checkout-form input,.ps-checkout-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--ps-line-strong,rgba(23,21,18,.3));border-radius:0;padding:14px;background:#fff;color:var(--ps-ink,#171512);font:inherit;text-transform:none;letter-spacing:normal}.ps-checkout-form input:focus-visible,.ps-checkout-form textarea:focus-visible{outline:1px solid var(--ps-ink,#171512);outline-offset:2px}.ps-checkout-form textarea{min-height:94px}.ps-payment-mount{min-height:94px;padding:20px;border:1px solid var(--ps-line,rgba(23,21,18,.16));background:var(--ps-paper,#f6f3ed)}.ps-checkout-summary{align-self:start;padding:28px 0;border-top:1px solid var(--ps-line,rgba(23,21,18,.16));border-bottom:1px solid var(--ps-line,rgba(23,21,18,.16))}.ps-checkout-summary h2{font-family:var(--ps-font-display,serif);font-size:26px;font-weight:400;margin:0 0 10px}.ps-order-success{max-width:1020px}.ps-order-success>p:not(.ps-eyebrow){color:var(--ps-muted,#706a62)}.ps-success-items{margin:48px 0}.ps-success-item{display:flex;justify-content:space-between;gap:32px;border-top:1px solid var(--ps-line,rgba(23,21,18,.16));padding:24px 0}.ps-success-item h2{font-family:var(--ps-font-display,serif);font-size:25px;font-weight:400;margin:0}.ps-success-item p{color:var(--ps-muted,#706a62);font-size:13px}.ps-success-actions{display:flex;gap:9px;flex-wrap:wrap}.ps-success-actions .ps-button{text-decoration:none;display:grid;place-items:center}.ps-text-link{color:var(--ps-ink,#171512);text-underline-offset:4px}
@media(max-width:800px){.ps-cart-layout,.ps-checkout-layout{grid-template-columns:1fr}.ps-cart-summary{position:static}.ps-cart-row{grid-template-columns:88px 1fr}.ps-cart-row img{width:88px;height:110px}.ps-cart-row>button{grid-column:2}.ps-success-item{display:block}.ps-success-actions{margin-top:15px}}@media(max-width:520px){.ps-cart-page,.ps-checkout-page,.ps-order-success{width:calc(100% - 28px);padding-top:34px}.ps-success-actions{display:grid}}

.ps-header-cart{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;border-radius:999px;transition:background var(--ps-motion-fast,180ms) ease}.ps-header-cart:hover{background:rgba(17,17,17,.06)}.ps-header-cart:focus-visible{outline:2px solid currentColor;outline-offset:3px}.ps-header-cart-icon{display:block;width:20px;height:20px}.ps-header-cart-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.ps-header-cart-count{position:absolute;right:1px;top:1px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:currentColor;color:#fff;font-size:10px;line-height:1;font-variant-numeric:tabular-nums}.ps-header-cart--mobile{width:100%;height:auto;min-height:48px;grid-template-columns:auto 1fr;justify-content:start;justify-items:start;gap:12px;padding:10px 0;border-radius:0}.ps-header-cart--mobile:after{content:"Cart";font-size:11px;letter-spacing:.13em;text-transform:uppercase}.ps-header-cart--mobile .ps-header-cart-count{position:static;grid-column:2;grid-row:1;justify-self:end;align-self:center;background:var(--ps-ink,#171512);color:#fff}

@media(prefers-reduced-motion:reduce){.ps-photo-card-media img,.ps-photo-card-meta,.ps-cart-overlay,.ps-cart-drawer,.ps-button,.ps-header-cart{transition:none!important;scroll-behavior:auto!important}}

/* v0.4.5 mixed gallery + sellable catalog */
.ps-photo-card-lightbox{width:100%;padding:0;border:0;background:transparent;text-align:inherit;font:inherit;cursor:zoom-in}
.ps-photo-card-lightbox .ps-photo-card-meta{pointer-events:none}.ps-photo-card--gallery .ps-photo-card-price{text-transform:uppercase;letter-spacing:.12em;font-size:10px}
.ps-lightbox{position:fixed;inset:0;z-index:2147483646;background:rgba(10,9,8,.96);color:#fff;display:grid;grid-template-columns:minmax(44px,80px) minmax(0,1fr) minmax(44px,80px);align-items:center;opacity:0;transition:opacity 180ms ease;padding:clamp(18px,3vw,42px)}
.ps-lightbox[hidden]{display:none}.ps-lightbox.is-open{opacity:1}.ps-lightbox-open{overflow:hidden}
.ps-lightbox-figure{margin:0;min-width:0;height:min(86vh,980px);display:grid;grid-template-rows:minmax(0,1fr) auto;gap:16px;align-items:center;justify-items:center}
.ps-lightbox-figure img{display:block;max-width:100%;max-height:calc(86vh - 76px);width:auto;height:auto;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.28);user-select:none}
.ps-lightbox-caption{width:min(860px,100%);display:grid;grid-template-columns:auto 1fr;gap:8px 20px;align-items:baseline}.ps-lightbox-caption strong{font-family:var(--ps-font-display,serif);font-size:clamp(20px,2vw,30px);font-weight:400}.ps-lightbox-caption span{font-size:12px;line-height:1.55;color:rgba(255,255,255,.7)}
.ps-lightbox-close,.ps-lightbox-nav{border:0;background:transparent;color:#fff;cursor:pointer;font:inherit;display:grid;place-items:center}.ps-lightbox-close{position:absolute;right:clamp(12px,2vw,30px);top:clamp(12px,2vw,26px);width:48px;height:48px;font-size:34px;line-height:1}.ps-lightbox-nav{width:100%;min-height:80px;font-size:28px;opacity:.72;transition:opacity 180ms ease}.ps-lightbox-nav:hover{opacity:1}.ps-lightbox-close:focus-visible,.ps-lightbox-nav:focus-visible{outline:2px solid #fff;outline-offset:3px}
.ps-single-photo-category{margin:0 0 12px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ps-muted,#706a62)}.ps-single-photo-story{margin-top:24px;color:var(--ps-muted,#706a62);line-height:1.75;max-width:48ch}.ps-single-photo-story p{margin:0 0 1em}.ps-gallery-only-note{margin-top:28px;padding-top:22px;border-top:1px solid var(--ps-line,rgba(23,21,18,.16));color:var(--ps-muted,#706a62);font-size:13px}
@media(max-width:700px){.ps-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:54px 8px 18px}.ps-lightbox-figure{height:82vh}.ps-lightbox-caption{grid-template-columns:1fr;text-align:center;gap:4px}.ps-lightbox-caption span{font-size:11px}.ps-lightbox-nav{font-size:22px}}
@media(prefers-reduced-motion:reduce){.ps-lightbox{transition:none}}

/* v0.4.6 — split gallery/shop presentation + neutral modern lightbox. */
.ps-gallery--gallery-only .ps-photo-card-meta{display:none}
.ps-gallery--gallery-only .ps-photo-card{background:transparent}
.ps-photo-card-lightbox{appearance:none!important;-webkit-appearance:none!important;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:inherit!important}
.ps-photo-card-lightbox:hover,.ps-photo-card-lightbox:focus,.ps-photo-card-lightbox:active{border:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.ps-photo-card--sellable{background:#efe9df;border:0!important;box-shadow:none}
.ps-photo-card--sellable .ps-photo-card-link{display:block!important;position:relative!important;border:0!important;background:transparent!important;color:#fff!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer}
.ps-photo-card--sellable .ps-photo-card-link:visited{color:#fff!important}
.ps-photo-card--sellable .ps-photo-card-meta{color:#fff!important;background:linear-gradient(180deg,rgba(13,10,9,0) 0%,rgba(13,10,9,.22) 33%,rgba(13,10,9,.86) 100%);pointer-events:none}
.ps-photo-card--sellable .ps-photo-card-title{color:#fff!important;text-shadow:0 1px 14px rgba(0,0,0,.34);font-weight:500}
.ps-photo-card--sellable .ps-photo-card-price,.ps-photo-card--sellable .ps-photo-card-view{color:rgba(255,255,255,.9)!important;text-shadow:0 1px 10px rgba(0,0,0,.28)}
.ps-photo-card--sellable .ps-photo-card-link:hover .ps-photo-card-meta,.ps-photo-card--sellable .ps-photo-card-link:focus-visible .ps-photo-card-meta{opacity:1;transform:none}
.ps-photo-card--sellable .ps-photo-card-link:focus-visible{outline:2px solid #f4e8dc!important;outline-offset:-5px!important}

.ps-lightbox{background:rgba(20,15,13,.91)!important;backdrop-filter:blur(14px) saturate(.82);-webkit-backdrop-filter:blur(14px) saturate(.82);grid-template-columns:minmax(56px,84px) minmax(0,1fr) minmax(56px,84px);padding:clamp(18px,3vw,44px);color:#f9f2e8!important}
.ps-lightbox-figure{position:relative;padding:clamp(6px,1vw,12px)}
.ps-lightbox-figure img{border-radius:10px;box-shadow:0 28px 90px rgba(0,0,0,.42),0 0 0 1px rgba(255,244,235,.12)}
.ps-lightbox-caption{padding:3px 4px;color:#f9f2e8}
.ps-lightbox-caption strong{color:#fff5ea!important}
.ps-lightbox-caption span{color:rgba(255,245,234,.72)!important}
.ps-lightbox-close,.ps-lightbox-nav{appearance:none!important;-webkit-appearance:none!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;border:1px solid rgba(117,57,49,.22)!important;border-radius:50%!important;background:rgba(249,241,231,.94)!important;color:#6f211d!important;box-shadow:0 16px 44px rgba(0,0,0,.20),0 0 0 1px rgba(255,255,255,.2) inset!important;cursor:pointer!important;display:grid!important;place-items:center!important;line-height:1!important;transition:transform 180ms ease,background 180ms ease,color 180ms ease,box-shadow 180ms ease!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ps-lightbox-close{position:absolute!important;right:clamp(14px,2.2vw,34px)!important;top:clamp(14px,2.2vw,30px)!important;z-index:4;font-size:28px!important}
.ps-lightbox-nav{justify-self:center!important;font-size:22px!important;opacity:1!important;padding:0!important}
.ps-lightbox-close:hover,.ps-lightbox-nav:hover{transform:translateY(-2px) scale(1.03);background:#42101E!important;color:#fff8f1!important;border-color:#42101E!important;box-shadow:0 20px 48px rgba(0,0,0,.28)!important}
.ps-lightbox-close:focus-visible,.ps-lightbox-nav:focus-visible{outline:3px solid rgba(248,226,207,.86)!important;outline-offset:4px!important}
.ps-lightbox-close span,.ps-lightbox-nav span{display:block;line-height:1;transform:translateY(-1px)}
@media(max-width:700px){.ps-lightbox{grid-template-columns:48px minmax(0,1fr) 48px;padding:64px 8px 22px}.ps-lightbox-close,.ps-lightbox-nav{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}.ps-lightbox-close{right:12px!important;top:12px!important}.ps-lightbox-nav{font-size:19px!important}.ps-lightbox-figure img{border-radius:7px}}

/* v0.4.7 — live Elementor canvas previews + tighter editorial rhythm. */
.ps-editor-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:10px;background:#f8f4ec}
.ps-editor-preview-card{position:relative;overflow:hidden;background:#eee7dc;min-width:0}
.ps-editor-preview-media,.ps-editor-preview-media img{display:block;width:100%}.ps-editor-preview-image{width:100%!important;height:clamp(180px,24vw,360px)!important;object-fit:cover!important;display:block!important}
.ps-editor-preview-card:nth-child(3n+2) .ps-editor-preview-image{height:clamp(150px,19vw,280px)!important}
.ps-editor-preview-meta{position:absolute;inset:auto 0 0;padding:42px 14px 12px;background:linear-gradient(transparent,rgba(22,15,12,.78));color:#fff;display:grid;gap:2px;pointer-events:none}
.ps-editor-preview-meta strong{font:500 17px/1.05 var(--ps-font-display,serif);color:#fff}.ps-editor-preview-meta span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.76)}
.ps-editor-preview-single{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.65fr);gap:28px;padding:12px;background:#f8f4ec;align-items:center}.ps-editor-preview-single-media img{display:block;width:100%;max-height:520px;object-fit:contain}.ps-editor-preview-single-copy{display:grid;gap:8px;color:#211612}.ps-editor-preview-single-copy>span,.ps-editor-preview-single-copy>small{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#765f56}.ps-editor-preview-single-copy>strong{font:400 clamp(28px,4vw,54px)/.95 var(--ps-font-display,serif)}
.ps-editor-preview-empty{padding:34px;text-align:center;background:#f8f4ec;border:1px solid #e2d7c8;color:#211612;display:grid;gap:8px}.ps-editor-preview-empty span{font-size:12px;color:#765f56}
@media(max-width:767px){.ps-gallery-grid{column-gap:10px}.ps-photo-card{margin-bottom:10px}.ps-editor-preview-grid{grid-template-columns:1fr 1fr;gap:8px}.ps-editor-preview-single{grid-template-columns:1fr}}

/* v0.4.8 — premium 10px rhythm, live category filters, modern single purchase page. */
.ps-gallery{width:min(1500px,calc(100% - 40px));padding-top:clamp(34px,4vw,64px)}
.ps-gallery-filters{gap:10px;margin-bottom:40px;padding:0 0 12px;overflow-x:auto;scrollbar-width:none}.ps-gallery-filters::-webkit-scrollbar{display:none}.ps-gallery-filters a{border-radius:999px;padding:9px 12px;margin:0;border:1px solid transparent;transition:background 180ms ease,color 180ms ease,border-color 180ms ease}.ps-gallery-filters a:hover,.ps-gallery-filters a[aria-current="true"],.ps-gallery-filters a:focus-visible{background:#f4eee7;border-color:#d9c9bc;color:#5f211c;outline:none}
.ps-gallery-grid{columns:3 320px;column-gap:10px!important}.ps-photo-card{margin:0 0 10px!important;border-radius:10px!important;overflow:hidden!important;background:#f1ece5}.ps-photo-card-link,.ps-photo-card-media,.ps-photo-card-media img{border-radius:10px}.ps-photo-card-media img{transition:transform 520ms cubic-bezier(.2,.65,.25,1),filter 240ms ease}.ps-photo-card-link:hover img{transform:scale(1.015)}.ps-photo-card.is-filtered-out{display:none!important}.ps-gallery-filter-empty{margin-top:24px}.ps-photo-card-lightbox{border-radius:10px!important;overflow:hidden!important}
.ps-photo-card--sellable .ps-photo-card-meta{border-radius:0 0 10px 10px;padding:70px 18px 17px}.ps-photo-card--sellable .ps-photo-card-title{font-size:19px}.ps-photo-card--sellable .ps-photo-card-view{font-size:9px}

.ps-single-photo{width:min(1500px,calc(100% - 40px));margin:0 auto;padding:0 0 clamp(82px,9vw,140px);padding-top:calc(var(--mshf-live-header-height, 96px) + 20px);display:block}.ps-single-photo-main{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.62fr);gap:clamp(34px,5vw,76px);align-items:start}.ps-single-photo-left{min-width:0}.ps-single-photo-media{margin:0}.ps-protected-preview,.ps-single-photo-preview{border-radius:10px;overflow:hidden}.ps-single-photo-preview{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:#f0ebe4;box-shadow:0 18px 52px rgba(36,23,18,.08)}
.ps-single-photo-description-block{margin-top:10px;padding:26px 28px 28px;border:1px solid #e3d8ce;border-radius:10px;background:#fbf8f3;box-shadow:0 14px 44px rgba(46,29,22,.045)}.ps-single-photo-description{font-size:15px;line-height:1.75;color:#5f5750;margin:0 0 14px;max-width:72ch}.ps-single-photo-story{margin:0;color:#6b625a;line-height:1.78;max-width:78ch}.ps-single-photo-story p:last-child{margin-bottom:0}
.ps-single-photo-purchase-column{min-width:0}.ps-single-photo-info{position:sticky;top:clamp(92px,9vw,122px);padding:26px;border:1px solid #e3d8ce;border-radius:10px;background:#fbf8f3;box-shadow:0 18px 52px rgba(46,29,22,.055)}.ps-eyebrow{margin-bottom:12px}.ps-single-photo h1{font-size:clamp(30px,3.25vw,52px)!important;line-height:.98;letter-spacing:-.035em;margin:0 0 16px}.ps-single-photo-category{margin-bottom:18px}.ps-purchase-panel{margin-top:22px;padding-top:22px}.ps-purchase-field select{border-radius:8px;background:#fff}.ps-purchase-actions{gap:10px}.ps-button{border-radius:8px}.ps-purchase-price{font-size:26px}
.ps-related-photos{margin-top:clamp(54px,7vw,96px);padding-top:28px;border-top:1px solid #e3d8ce}.ps-related-heading>p{margin:0 0 8px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#765f56}.ps-related-heading>h2{margin:0 0 24px;font-family:var(--ps-font-display,serif);font-size:clamp(28px,3vw,44px);font-weight:400;letter-spacing:-.025em}.ps-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important}.ps-related-grid .ps-photo-card{margin:0!important}.ps-related-grid .ps-photo-card-media img{aspect-ratio:4/5;object-fit:cover}.ps-related-grid .ps-photo-card-meta{opacity:1;transform:none}

.ps-editor-preview-grid{gap:10px!important;padding:10px}.ps-editor-preview-card{border-radius:10px;overflow:hidden}.ps-editor-preview-media,.ps-editor-preview-image{border-radius:10px}.ps-editor-preview-meta{border-radius:0 0 10px 10px}.ps-editor-preview-single{gap:10px;border-radius:10px}.ps-editor-preview-single-media img{border-radius:10px}
@media(max-width:900px){.ps-single-photo{padding-top:calc(var(--mshf-live-header-height, 72px) + 16px)}.ps-single-photo-main{grid-template-columns:1fr;gap:10px}.ps-single-photo-info{position:static}.ps-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}}
@media(max-width:767px){.ps-gallery{width:calc(100% - 20px);padding-top:26px}.ps-gallery-grid{columns:1;column-gap:10px!important}.ps-photo-card{margin-bottom:10px!important}.ps-gallery-filters{gap:8px;margin-bottom:20px}.ps-single-photo{width:calc(100% - 20px);padding-top:calc(var(--mshf-live-header-height, 64px) + 12px)}.ps-single-photo-description-block,.ps-single-photo-info{padding:20px}.ps-related-grid{grid-template-columns:1fr;gap:10px!important}}

/* v0.4.9 — hard-locked premium masonry rhythm + wide editorial single-photo canvas. */
.ps-gallery-grid{column-count:3!important;column-width:auto!important;column-gap:10px!important;font-size:0!important;line-height:0!important}
.ps-photo-card{display:block!important;width:100%!important;margin:0 0 10px!important;break-inside:avoid!important;-webkit-column-break-inside:avoid!important;page-break-inside:avoid!important;border-radius:10px!important;overflow:hidden!important;line-height:1.5;font-size:16px;background:#f1ece5}
.ps-photo-card,.ps-photo-card-link,.ps-photo-card-media,.ps-photo-card-media img,.ps-photo-card-lightbox{border-radius:10px!important}
.ps-photo-card-link,.ps-photo-card-lightbox{overflow:hidden!important}
.ps-photo-card-media{overflow:hidden!important;background:#efeae3}
.ps-photo-card-media img{width:100%!important;height:auto;display:block!important;transform:translateZ(0);transition:transform 420ms cubic-bezier(.2,.65,.25,1),filter 220ms ease,box-shadow 220ms ease}
.ps-photo-card-link:hover img,.ps-photo-card-lightbox:hover img{transform:scale(1.012);filter:contrast(1.015) saturate(.98)}
.ps-gallery--gallery-only .ps-photo-card{background:transparent;box-shadow:0 12px 34px rgba(42,28,22,.035)}
.ps-gallery--sellable .ps-photo-card{box-shadow:0 14px 38px rgba(42,28,22,.05)}
.ps-photo-card--sellable .ps-photo-card-meta{border-radius:0 0 10px 10px!important}

/* Break out of narrow theme/Elementor content containers while staying centered and premium. */
.ps-single-photo{width:min(1500px,calc(100vw - 40px))!important;max-width:none!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)!important;padding-bottom:clamp(86px,8vw,138px)!important}
.ps-single-photo-main{gap:clamp(34px,4.5vw,68px)!important}
.ps-single-photo-preview,.ps-protected-preview,.ps-single-photo-description-block,.ps-single-photo-info{border-radius:10px!important}
.ps-single-photo-info{box-shadow:0 20px 58px rgba(46,29,22,.065)!important}
.ps-single-photo-description-block{box-shadow:0 16px 48px rgba(46,29,22,.05)!important}

/* Larger related photographs: 3 desktop, 2 tablet, 1 mobile. */
.ps-related-photos{margin-top:clamp(58px,6vw,94px)!important;padding-top:30px!important}
.ps-related-heading>h2{font-size:clamp(32px,3vw,46px)!important;margin-bottom:26px!important}
.ps-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px!important}
.ps-related-grid .ps-photo-card{margin:0!important;border-radius:10px!important;box-shadow:0 16px 40px rgba(42,28,22,.055)}
.ps-related-grid .ps-photo-card-media,.ps-related-grid .ps-photo-card-media img{border-radius:10px!important}
.ps-related-grid .ps-photo-card-media img{aspect-ratio:4/5!important;object-fit:cover!important}
.ps-related-grid .ps-photo-card-meta{opacity:1!important;transform:none!important;border-radius:0 0 10px 10px!important;padding:80px 20px 18px!important}
.ps-related-grid .ps-photo-card-title{font-size:20px!important}

@media(max-width:1100px){.ps-gallery-grid{column-count:2!important}}
@media(max-width:900px){.ps-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ps-single-photo{width:min(100% - 24px,1500px)!important}.ps-single-photo-main{gap:18px!important}}
@media(max-width:620px){.ps-related-grid{grid-template-columns:1fr!important}.ps-gallery-grid{column-count:1!important}.ps-single-photo{width:calc(100vw - 20px)!important}.ps-related-grid .ps-photo-card-media img{aspect-ratio:4/5!important}}


/* v0.4.10 — isolate purchase buttons from Elementor/theme default button colors. */
.ps-purchase-actions .ps-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.ps-purchase-actions .ps-button-secondary{
  background:transparent!important;
  background-color:transparent!important;
  border-color:var(--ps-ink,#171512)!important;
  color:var(--ps-ink,#171512)!important;
}
.ps-purchase-actions .ps-button-secondary:hover,
.ps-purchase-actions .ps-button-secondary:focus-visible{
  background:var(--ps-ink,#171512)!important;
  background-color:var(--ps-ink,#171512)!important;
  border-color:var(--ps-ink,#171512)!important;
  color:#fff!important;
}
.ps-purchase-actions .ps-button-primary{
  background:var(--ps-ink,#171512)!important;
  background-color:var(--ps-ink,#171512)!important;
  border-color:var(--ps-ink,#171512)!important;
  color:#fff!important;
}
.ps-purchase-actions .ps-button-primary:hover,
.ps-purchase-actions .ps-button-primary:focus-visible{
  background:var(--ps-ink-soft,#36322d)!important;
  background-color:var(--ps-ink-soft,#36322d)!important;
  border-color:var(--ps-ink-soft,#36322d)!important;
  color:#fff!important;
}


/* v0.4.11 — live-site brand palette + reliable cart / Buy Now presentation. */
.photographer-site .ps-button,
.ps-cart-drawer .ps-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
  text-decoration:none!important;
  text-shadow:none!important;
  font-family:var(--ps-font-body,inherit)!important;
  font-weight:500!important;
  line-height:1.2!important;
}
.photographer-site .ps-button-primary,
.ps-cart-drawer .ps-button-primary{
  background:var(--ps-brand,#5D132A)!important;
  background-color:var(--ps-brand,#5D132A)!important;
  border-color:var(--ps-brand,#5D132A)!important;
  color:#fff!important;
}
.photographer-site .ps-button-primary:hover,
.photographer-site .ps-button-primary:focus-visible,
.ps-cart-drawer .ps-button-primary:hover,
.ps-cart-drawer .ps-button-primary:focus-visible{
  background:var(--ps-brand-strong,#173D32)!important;
  background-color:var(--ps-brand-strong,#173D32)!important;
  border-color:var(--ps-brand-strong,#173D32)!important;
  color:#fff!important;
}
.photographer-site .ps-button-secondary,
.ps-cart-drawer .ps-button-secondary{
  background:#fff!important;
  background-color:#fff!important;
  border-color:var(--ps-brand,#5D132A)!important;
  color:var(--ps-brand,#5D132A)!important;
}
.photographer-site .ps-button-secondary:hover,
.photographer-site .ps-button-secondary:focus-visible,
.ps-cart-drawer .ps-button-secondary:hover,
.ps-cart-drawer .ps-button-secondary:focus-visible{
  background:var(--ps-brand,#5D132A)!important;
  background-color:var(--ps-brand,#5D132A)!important;
  border-color:var(--ps-brand,#5D132A)!important;
  color:#fff!important;
}
.photographer-site .ps-button:focus-visible,
.ps-cart-drawer .ps-button:focus-visible{
  outline:2px solid var(--ps-brand-accent,#173D32)!important;
  outline-offset:3px!important;
}
.photographer-site .ps-button:disabled{
  opacity:.62!important;
  cursor:wait!important;
}

/* Purchase buttons: preserve the approved layout, only replace leaked theme pink. */
.ps-purchase-actions .ps-button{min-width:0!important;width:100%!important;white-space:nowrap!important;overflow:visible!important}
.ps-purchase-actions .ps-button-secondary{background:#fff!important;color:var(--ps-brand,#5D132A)!important;border-color:var(--ps-brand,#5D132A)!important}
.ps-purchase-actions .ps-button-primary{background:var(--ps-brand,#5D132A)!important;color:#fff!important;border-color:var(--ps-brand,#5D132A)!important}

/* Cart drawer: keep labels readable, actions visible, and close control circular. */
.ps-cart-drawer{
  border-left:1px solid rgba(93,19,42,.14)!important;
  background:#fffdfa!important;
}
.ps-cart-drawer-head{align-items:center!important}
.ps-cart-drawer-head h2{color:var(--ps-brand,#5D132A)!important;line-height:1.05!important}
.ps-cart-drawer .ps-eyebrow{color:#80645f!important}
.ps-cart-close{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(93,19,42,.24)!important;
  border-radius:50%!important;
  background:#fff7f3!important;
  color:var(--ps-brand,#5D132A)!important;
  font-size:25px!important;
  font-weight:400!important;
  line-height:1!important;
  text-shadow:none!important;
}
.ps-cart-close:hover,.ps-cart-close:focus-visible{
  background:var(--ps-brand,#5D132A)!important;
  border-color:var(--ps-brand,#5D132A)!important;
  color:#fff!important;
}
.ps-cart-close:focus-visible{outline:2px solid var(--ps-brand-accent,#173D32)!important;outline-offset:3px!important}
.ps-cart-items{min-height:0!important}
.ps-cart-item{
  grid-template-columns:72px minmax(0,1fr) 36px!important;
  gap:14px!important;
  align-items:center!important;
}
.ps-cart-item--no-image{grid-template-columns:minmax(0,1fr) 36px!important}
.ps-cart-item img{border-radius:8px!important;background:#f4eee8!important}
.ps-cart-item div{min-width:0!important;gap:5px!important}
.ps-cart-item strong{
  min-width:0!important;
  color:#2a1d19!important;
  font-size:13px!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  text-overflow:clip!important;
}
.ps-cart-item span{white-space:normal!important;line-height:1.35!important;overflow-wrap:anywhere!important}
.ps-cart-item button[data-ps-cart-remove]{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(93,19,42,.16)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--ps-brand,#5D132A)!important;
  line-height:1!important;
}
.ps-cart-item button[data-ps-cart-remove]:hover{background:#fff3ed!important;border-color:rgba(93,19,42,.34)!important}
.ps-cart-drawer-foot{background:#fffdfa!important}
.ps-cart-subtotal strong{color:var(--ps-brand,#5D132A)!important}
.ps-cart-drawer-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:10px!important;
  width:100%!important;
}
.ps-cart-drawer-actions .ps-button{
  width:100%!important;
  min-width:0!important;
  min-height:50px!important;
  padding:12px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  border-radius:10px!important;
  font-size:11px!important;
  letter-spacing:.07em!important;
}
@media(max-width:520px){
  .ps-cart-drawer{padding:20px 18px!important}
  .ps-cart-drawer-actions{grid-template-columns:1fr!important}
  .ps-cart-drawer-actions .ps-button{min-height:48px!important}
}

/* v0.4.12 — header-safe premium checkout refinement. Scoped to Checkout only. */
.ps-checkout-page{
  width:min(1300px,calc(100vw - 48px))!important;
  max-width:none!important;
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  padding-top:calc(var(--mshf-live-header-height,96px) + clamp(34px,4vw,54px))!important;
  padding-bottom:clamp(80px,8vw,128px)!important;
}
.ps-checkout-head{
  max-width:780px!important;
  margin:0 0 clamp(34px,4vw,52px)!important;
}
.ps-checkout-head .ps-eyebrow{margin-bottom:12px!important;color:#80645f!important}
.ps-checkout-head h1{
  margin:0!important;
  font-size:clamp(42px,5.1vw,68px)!important;
  line-height:.96!important;
  letter-spacing:-.04em!important;
  color:var(--ps-ink,#171512)!important;
}
.ps-checkout-intro{
  max-width:620px;
  margin:18px 0 0;
  color:#6d625c;
  font-size:14px;
  line-height:1.7;
}
.ps-checkout-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.48fr) minmax(330px,.72fr)!important;
  gap:clamp(28px,4.5vw,64px)!important;
  align-items:start!important;
}
.ps-checkout-panel,
.ps-checkout-summary{
  box-sizing:border-box!important;
  border:1px solid #e4d9d0!important;
  border-radius:14px!important;
  background:#fffdfa!important;
  box-shadow:0 24px 70px rgba(54,31,24,.07)!important;
}
.ps-checkout-panel{padding:clamp(26px,3.2vw,42px)!important}
.ps-checkout-section-head{
  display:flex;
  align-items:center;
  gap:14px;
  padding-bottom:24px;
  margin-bottom:26px;
  border-bottom:1px solid #eadfd7;
}
.ps-checkout-step{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#f6ece8;
  color:var(--ps-brand,#5D132A);
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
}
.ps-checkout-kicker{
  margin:0 0 4px!important;
  color:#8b746c!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.16em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.ps-checkout-section-head h2,
.ps-checkout-summary-head h2{
  margin:0!important;
  font-family:var(--ps-font-display,serif)!important;
  color:#241813!important;
  font-size:clamp(24px,2.4vw,32px)!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  line-height:1.05!important;
}
.ps-checkout-form{gap:18px!important}
.ps-checkout-form>label{
  gap:8px!important;
  color:#594740!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.13em!important;
}
.ps-checkout-form input,
.ps-checkout-form textarea{
  min-height:50px!important;
  padding:13px 15px!important;
  border:1px solid #d9ccc3!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#241813!important;
  box-shadow:0 1px 0 rgba(54,31,24,.02)!important;
  transition:border-color 180ms ease,box-shadow 180ms ease,background 180ms ease!important;
}
.ps-checkout-form textarea{min-height:110px!important;resize:vertical}
.ps-checkout-form input:hover,
.ps-checkout-form textarea:hover{border-color:#bfa99f!important}
.ps-checkout-form input:focus,
.ps-checkout-form input:focus-visible,
.ps-checkout-form textarea:focus,
.ps-checkout-form textarea:focus-visible{
  outline:none!important;
  border-color:var(--ps-brand,#5D132A)!important;
  box-shadow:0 0 0 3px rgba(93,19,42,.09)!important;
}
.ps-payment-mount{
  min-height:96px!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  padding:18px!important;
  border:1px solid #e3d5cc!important;
  border-radius:12px!important;
  background:#f8f2ed!important;
  color:#3a2923!important;
}
.ps-payment-placeholder-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--ps-brand,#5D132A);
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.ps-payment-mount strong{display:block;font-size:13px;line-height:1.25;margin-bottom:3px}
.ps-payment-mount p{margin:0!important;color:#7a6961!important;font-size:12px!important;line-height:1.45!important}
.ps-checkout-submit{
  min-height:54px!important;
  border-radius:10px!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.11em!important;
}
.ps-checkout-summary{
  position:sticky!important;
  top:calc(var(--mshf-live-header-height,96px) + 24px)!important;
  overflow:hidden!important;
  padding:0!important;
  border-top:1px solid #e4d9d0!important;
  border-bottom:1px solid #e4d9d0!important;
}
.ps-checkout-summary-head{
  position:relative;
  padding:28px 28px 22px;
  background:linear-gradient(180deg,#fffdfa 0%,#fbf5f0 100%);
  border-bottom:1px solid #eadfd7;
}
.ps-checkout-count{
  display:inline-flex;
  margin-top:12px;
  padding:6px 9px;
  border-radius:999px;
  background:#f1e5df;
  color:#755d54;
  font-size:10px;
  font-weight:600;
  letter-spacing:.04em;
}
.ps-checkout-summary-items{padding:6px 28px 0}
.ps-checkout-summary-item{
  display:grid;
  grid-template-columns:56px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:18px 0;
  border-bottom:1px solid #eee4dd;
}
.ps-checkout-summary-item--no-image{grid-template-columns:minmax(0,1fr) auto}
.ps-checkout-summary-item img{
  width:56px!important;
  height:68px!important;
  display:block;
  object-fit:cover;
  border-radius:8px;
  background:#f1ece5;
}
.ps-checkout-summary-copy{min-width:0;display:grid;gap:5px}
.ps-checkout-summary-copy strong{
  color:#2d201b;
  font-family:var(--ps-font-display,serif);
  font-size:15px;
  font-weight:400;
  line-height:1.15;
  overflow-wrap:anywhere;
}
.ps-checkout-summary-copy span{
  color:#806f67;
  font-size:10px;
  line-height:1.4;
  overflow-wrap:anywhere;
}
.ps-checkout-item-price{
  color:#321f19;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
}
.ps-checkout-totals{
  margin:0!important;
  padding:20px 28px 18px!important;
}
.ps-checkout-totals>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:6px 0;
  color:#77665e;
  font-size:12px;
}
.ps-checkout-totals dt,.ps-checkout-totals dd{margin:0!important}
.ps-checkout-totals dd{color:#34231d;font-weight:500}
.ps-checkout-totals .ps-checkout-total{
  margin-top:10px;
  padding-top:17px;
  border-top:1px solid #e4d9d0;
  color:#241813;
}
.ps-checkout-total dt{
  font-family:var(--ps-font-display,serif);
  font-size:19px;
  font-weight:400;
}
.ps-checkout-total dd{
  color:var(--ps-brand,#5D132A)!important;
  font-family:var(--ps-font-display,serif);
  font-size:22px;
  font-weight:400!important;
  letter-spacing:-.02em;
}
.ps-checkout-trust{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px 28px 20px;
  background:#f8f2ed;
  border-top:1px solid #e7dbd2;
}
.ps-checkout-trust>span{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#ead8d0;
  color:var(--ps-brand,#5D132A);
  font-size:10px;
  font-weight:700;
}
.ps-checkout-trust p{margin:1px 0 0!important;color:#7a6961!important;font-size:10px!important;line-height:1.5!important}
.ps-checkout-empty{
  margin:0 0 28px;
  padding:14px 16px;
  border:1px solid #e4d9d0;
  border-radius:10px;
  background:#fbf6f2;
  color:#705d55;
}
@media(max-width:900px){
  .ps-checkout-page{width:min(100% - 28px,1300px)!important;padding-top:calc(var(--mshf-live-header-height,72px) + 28px)!important}
  .ps-checkout-layout{grid-template-columns:1fr!important;gap:20px!important}
  .ps-checkout-summary{position:static!important}
}
@media(max-width:620px){
  .ps-checkout-page{width:calc(100vw - 20px)!important;padding-top:calc(var(--mshf-live-header-height,64px) + 20px)!important}
  .ps-checkout-head{margin-bottom:26px!important}
  .ps-checkout-head h1{font-size:clamp(38px,13vw,52px)!important}
  .ps-checkout-intro{font-size:13px}
  .ps-checkout-panel{padding:20px!important}
  .ps-checkout-section-head{padding-bottom:18px;margin-bottom:20px}
  .ps-checkout-summary-head,.ps-checkout-summary-items,.ps-checkout-totals,.ps-checkout-trust{padding-left:20px!important;padding-right:20px!important}
  .ps-checkout-summary-item{grid-template-columns:48px minmax(0,1fr)!important;gap:10px}
  .ps-checkout-summary-item img{width:48px!important;height:60px!important}
  .ps-checkout-item-price{grid-column:2;justify-self:start}
}

/* v0.4.13 — header-safe premium cart refinement. Scoped to Cart only. */
.ps-cart-page{
  width:min(1300px,calc(100% - 48px))!important;
  margin:0 auto!important;
  padding-top:calc(var(--mshf-live-header-height,96px) + clamp(34px,4vw,54px))!important;
  padding-bottom:clamp(80px,8vw,128px)!important;
}
.ps-cart-head{
  max-width:780px!important;
  margin:0 0 clamp(34px,4vw,52px)!important;
}
.ps-cart-head .ps-eyebrow{margin-bottom:12px!important;color:#80645f!important}
.ps-cart-head h1{
  margin:0!important;
  font-size:clamp(42px,5.1vw,68px)!important;
  line-height:.96!important;
  letter-spacing:-.04em!important;
  color:var(--ps-ink,#171512)!important;
}
.ps-cart-intro{
  max-width:620px;
  margin:18px 0 0!important;
  color:#6d625c!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.ps-cart-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.48fr) minmax(330px,.72fr)!important;
  gap:clamp(28px,4.5vw,64px)!important;
  align-items:start!important;
}
.ps-cart-panel,
.ps-cart-summary,
.ps-cart-empty-card{
  box-sizing:border-box!important;
  border:1px solid #e4d9d0!important;
  border-radius:14px!important;
  background:#fffdfa!important;
  box-shadow:0 24px 70px rgba(54,31,24,.07)!important;
}
.ps-cart-panel{overflow:hidden!important}
.ps-cart-panel-head,
.ps-cart-summary-head{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:28px 30px 22px;
  background:linear-gradient(180deg,#fffdfa 0%,#fbf5f0 100%);
  border-bottom:1px solid #eadfd7;
}
.ps-cart-summary-head{display:block!important}
.ps-cart-kicker{
  margin:0 0 5px!important;
  color:#8b746c!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.16em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.ps-cart-panel-head h2,
.ps-cart-summary-head h2{
  margin:0!important;
  font-family:var(--ps-font-display,serif)!important;
  color:#241813!important;
  font-size:clamp(24px,2.4vw,32px)!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  line-height:1.05!important;
}
.ps-cart-count-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 9px;
  border-radius:999px;
  background:#f1e5df!important;
  color:#755d54!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.04em!important;
  line-height:1.2!important;
  white-space:nowrap;
}
.ps-cart-summary-head .ps-cart-count-badge{margin-top:12px}
.ps-cart-list{padding:0 30px!important}
.ps-cart-row{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr) auto!important;
  gap:20px!important;
  align-items:center!important;
  padding:24px 0!important;
  border-top:0!important;
  border-bottom:1px solid #eee4dd!important;
}
.ps-cart-row:last-child{border-bottom:0!important}
.ps-cart-row--no-image{grid-template-columns:minmax(0,1fr) auto!important}
.ps-cart-row img{
  width:112px!important;
  height:140px!important;
  display:block!important;
  object-fit:cover!important;
  border-radius:10px!important;
  background:#f1ece5!important;
  box-shadow:0 10px 30px rgba(54,31,24,.06)!important;
}
.ps-cart-row-copy{min-width:0!important}
.ps-cart-row-copy h2{
  margin:0 0 8px!important;
  color:#2d201b!important;
  font-family:var(--ps-font-display,serif)!important;
  font-size:clamp(21px,2vw,27px)!important;
  font-weight:400!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
  overflow-wrap:anywhere!important;
}
.ps-cart-row-copy p{
  margin:0 0 11px!important;
  color:#806f67!important;
  font-size:11px!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
}
.ps-cart-row-copy strong{
  display:block!important;
  color:var(--ps-brand,#5D132A)!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.3!important;
}
.ps-cart-page .ps-cart-remove-button,
.ps-cart-page .ps-cart-row>button[data-ps-cart-remove]{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-height:36px!important;
  padding:0 12px!important;
  border:1px solid #ded1c8!important;
  border-radius:999px!important;
  background:#fff!important;
  background-color:#fff!important;
  color:#715f57!important;
  text-decoration:none!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  transition:border-color 180ms ease,background 180ms ease,color 180ms ease,transform 180ms ease!important;
}
.ps-cart-page .ps-cart-remove-button:hover,
.ps-cart-page .ps-cart-remove-button:focus-visible,
.ps-cart-page .ps-cart-row>button[data-ps-cart-remove]:hover,
.ps-cart-page .ps-cart-row>button[data-ps-cart-remove]:focus-visible{
  outline:none!important;
  border-color:rgba(93,19,42,.34)!important;
  background:#fff3ed!important;
  color:var(--ps-brand,#5D132A)!important;
}
.ps-cart-summary{
  position:sticky!important;
  top:calc(var(--mshf-live-header-height,96px) + 24px)!important;
  align-self:start!important;
  overflow:hidden!important;
  padding:0!important;
}
.ps-cart-summary-body{padding:24px 28px 26px!important}
.ps-cart-coupon{
  margin:0!important;
  padding:0 0 22px!important;
  border-bottom:1px solid #eadfd7!important;
}
.ps-cart-coupon label{
  display:block!important;
  margin:0 0 8px!important;
  color:#594740!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.13em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.ps-cart-coupon-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
}
.ps-cart-summary .ps-cart-coupon input,
.ps-cart-summary input#ps-coupon{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  padding:0 14px!important;
  border:1px solid #d9ccc3!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#241813!important;
  font:inherit!important;
  font-size:13px!important;
  box-shadow:0 1px 0 rgba(54,31,24,.02)!important;
}
.ps-cart-summary .ps-cart-coupon input:focus,
.ps-cart-summary .ps-cart-coupon input:focus-visible{
  outline:none!important;
  border-color:var(--ps-brand,#5D132A)!important;
  box-shadow:0 0 0 3px rgba(93,19,42,.09)!important;
}
.ps-cart-summary .ps-cart-coupon button,
.ps-cart-summary form[data-ps-coupon-form] button[type="submit"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-width:78px!important;
  min-height:48px!important;
  padding:0 16px!important;
  border:1px solid var(--ps-brand,#5D132A)!important;
  border-radius:9px!important;
  background:var(--ps-brand,#5D132A)!important;
  background-color:var(--ps-brand,#5D132A)!important;
  color:#fff!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background 180ms ease,border-color 180ms ease,transform 180ms ease!important;
}
.ps-cart-summary .ps-cart-coupon button:hover,
.ps-cart-summary .ps-cart-coupon button:focus-visible{
  outline:none!important;
  border-color:var(--ps-brand-strong,#173D32)!important;
  background:var(--ps-brand-strong,#173D32)!important;
  background-color:var(--ps-brand-strong,#173D32)!important;
}
.ps-cart-coupon [data-ps-coupon-status]{
  min-height:0!important;
  margin:8px 0 0!important;
  color:#765f56!important;
  font-size:10px!important;
  line-height:1.4!important;
}
.ps-cart-totals{
  margin:20px 0 22px!important;
  padding:0!important;
}
.ps-cart-totals>div{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:6px 0!important;
  color:#77665e!important;
  font-size:12px!important;
  line-height:1.4!important;
}
.ps-cart-totals dt,.ps-cart-totals dd{margin:0!important}
.ps-cart-totals dd{color:#34231d!important;font-weight:500!important;text-align:right!important}
.ps-cart-totals .ps-cart-total{
  margin-top:10px!important;
  padding-top:17px!important;
  border-top:1px solid #e4d9d0!important;
  color:#241813!important;
}
.ps-cart-totals .ps-cart-total dt{
  font-family:var(--ps-font-display,serif)!important;
  font-size:19px!important;
  font-weight:400!important;
}
.ps-cart-totals .ps-cart-total dd{
  color:var(--ps-brand,#5D132A)!important;
  font-family:var(--ps-font-display,serif)!important;
  font-size:22px!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
}
.ps-cart-page .ps-checkout-link,
.ps-cart-page a.ps-button.ps-button-primary{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  min-height:54px!important;
  box-sizing:border-box!important;
  padding:0 18px!important;
  border:1px solid var(--ps-brand,#5D132A)!important;
  border-radius:10px!important;
  background:var(--ps-brand,#5D132A)!important;
  background-color:var(--ps-brand,#5D132A)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.1em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
}
.ps-cart-page .ps-checkout-link:hover,
.ps-cart-page .ps-checkout-link:focus-visible,
.ps-cart-page a.ps-button.ps-button-primary:hover,
.ps-cart-page a.ps-button.ps-button-primary:focus-visible{
  outline:none!important;
  border-color:var(--ps-brand-strong,#173D32)!important;
  background:var(--ps-brand-strong,#173D32)!important;
  background-color:var(--ps-brand-strong,#173D32)!important;
  color:#fff!important;
}
.ps-cart-trust{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px 28px 20px;
  background:#f8f2ed;
  border-top:1px solid #e7dbd2;
}
.ps-cart-trust>span{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#ead8d0;
  color:var(--ps-brand,#5D132A);
  font-size:10px;
  font-weight:700;
}
.ps-cart-trust p{margin:1px 0 0!important;color:#7a6961!important;font-size:10px!important;line-height:1.5!important}
.ps-cart-empty-card{padding:28px 30px!important}
.ps-cart-empty{margin:0!important;color:#705d55!important;font-size:14px!important}
@media(max-width:900px){
  .ps-cart-page{width:min(100% - 28px,1300px)!important;padding-top:calc(var(--mshf-live-header-height,72px) + 28px)!important}
  .ps-cart-layout{grid-template-columns:1fr!important;gap:20px!important}
  .ps-cart-summary{position:static!important}
}
@media(max-width:620px){
  .ps-cart-page{width:calc(100vw - 20px)!important;padding-top:calc(var(--mshf-live-header-height,64px) + 20px)!important}
  .ps-cart-head{margin-bottom:26px!important}
  .ps-cart-head h1{font-size:clamp(38px,13vw,52px)!important}
  .ps-cart-intro{font-size:13px!important}
  .ps-cart-panel-head,.ps-cart-summary-head{padding:22px 20px 18px!important}
  .ps-cart-panel-head{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}
  .ps-cart-list{padding:0 20px!important}
  .ps-cart-row{grid-template-columns:78px minmax(0,1fr)!important;gap:14px!important;padding:20px 0!important;align-items:start!important}
  .ps-cart-row--no-image{grid-template-columns:minmax(0,1fr)!important}
  .ps-cart-row img{width:78px!important;height:98px!important;border-radius:8px!important}
  .ps-cart-row .ps-cart-remove-button{grid-column:2!important;justify-self:start!important}
  .ps-cart-row--no-image .ps-cart-remove-button{grid-column:1!important}
  .ps-cart-summary-body{padding:20px!important}
  .ps-cart-trust{padding:15px 20px 18px!important}
  .ps-cart-coupon-row{grid-template-columns:1fr!important}
  .ps-cart-summary .ps-cart-coupon button{width:100%!important}
}


/* v0.4.14 — live cart/checkout state is REST-hydrated; hidden states must win over cached layout CSS. */
.photographer-site [hidden]{display:none!important}
.ps-checkout-submit[disabled]{opacity:.55!important;cursor:not-allowed!important;filter:none!important}
.ps-payment-mount strong{display:block;color:#2d201b!important}
.ps-payment-mount p{margin:4px 0 0!important;color:#786961!important;font-size:12px!important;line-height:1.5!important}

/* v0.4.15 — authoritative cart quantities + premium quantity controls. */
.ps-quantity-control{
  display:inline-grid!important;
  grid-template-columns:36px minmax(34px,auto) 36px!important;
  align-items:center!important;
  width:max-content!important;
  min-height:38px!important;
  overflow:hidden!important;
  border:1px solid #ded1c8!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(54,31,24,.04)!important;
}
.ps-quantity-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  background-color:transparent!important;
  color:var(--ps-brand,#5D132A)!important;
  font-family:Arial,sans-serif!important;
  font-size:18px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background 160ms ease,color 160ms ease,opacity 160ms ease!important;
}
.ps-quantity-button:hover:not(:disabled),
.ps-quantity-button:focus-visible:not(:disabled){
  outline:none!important;
  background:#f6eae5!important;
  color:var(--ps-brand,#5D132A)!important;
}
.ps-quantity-button:focus-visible{box-shadow:inset 0 0 0 1px var(--ps-brand,#5D132A)!important}
.ps-quantity-button:disabled{opacity:.28!important;cursor:not-allowed!important}
.ps-quantity-value{
  min-width:34px!important;
  text-align:center!important;
  color:#2d201b!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
}
.ps-quantity-control--compact{
  grid-template-columns:28px minmax(26px,auto) 28px!important;
  min-height:30px!important;
  border-radius:999px!important;
}
.ps-quantity-control--compact .ps-quantity-button{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
  font-size:15px!important;
}
.ps-quantity-control--compact .ps-quantity-value{min-width:26px!important;font-size:11px!important}
.ps-cart-row-purchase{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  max-width:390px!important;
}
.ps-cart-row-price{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:3px!important;
  margin-left:auto!important;
}
.ps-cart-row-price small{
  color:#8a766d!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.25!important;
  white-space:nowrap!important;
}
.ps-cart-row-price strong{margin:0!important}
.ps-cart-item-info{min-width:0!important}
.ps-cart-item-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:3px!important;
}
.ps-cart-item-price{
  color:var(--ps-brand,#5D132A)!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:nowrap!important;
}
.ps-cart-row[aria-busy="true"],.ps-cart-item[aria-busy="true"]{opacity:.62!important;pointer-events:none!important}
.ps-checkout-summary-copy span{line-height:1.45!important}
@media(max-width:620px){
  .ps-cart-row-purchase{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}
  .ps-cart-row-price{align-items:flex-start!important;margin-left:0!important}
  .ps-cart-row .ps-cart-remove-button{margin-top:4px!important}
}


/* v0.4.20 — premium purchase-success presentation + compact responsive gallery cards. */
.ps-order-success{
  max-width:1120px!important;
  padding-top:calc(var(--mshf-live-header-height,80px) + 34px)!important;
}
.ps-success-hero{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(250px,.45fr);
  gap:34px;
  align-items:end;
  padding:38px 42px;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:linear-gradient(135deg,#fff 0%,#fbf6f1 100%);
  box-shadow:0 20px 55px rgba(54,31,24,.06);
}
.ps-order-success .ps-success-hero h1{
  max-width:760px;
  margin:0!important;
  font-family:var(--ps-font-display,serif)!important;
  font-size:clamp(44px,6vw,78px)!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
  line-height:.94!important;
  color:#1e1714!important;
}
.ps-success-intro{
  max-width:62ch;
  margin:20px 0 0!important;
  color:#75665f!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.ps-success-order{
  display:grid;
  gap:5px;
  align-self:stretch;
  padding:19px 21px;
  border:1px solid #e6d9d0;
  border-radius:14px;
  background:#fff;
}
.ps-success-order span,.ps-success-order small{
  color:#8a786f;
  font-size:10px;
  letter-spacing:.1em;
  line-height:1.45;
  text-transform:uppercase;
}
.ps-success-order strong{
  overflow-wrap:anywhere;
  color:var(--ps-brand,#5D132A);
  font-family:var(--ps-font-display,serif);
  font-size:20px;
  font-weight:400;
  line-height:1.2;
}
.ps-success-delivery{
  margin-top:24px;
  overflow:hidden;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 48px rgba(54,31,24,.045);
}
.ps-success-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding:27px 32px 22px;
  background:#fbf6f1;
  border-bottom:1px solid #eadfd7;
}
.ps-success-section-head .ps-eyebrow{margin-bottom:8px!important}
.ps-success-section-head h2{
  margin:0;
  font-family:var(--ps-font-display,serif);
  font-size:clamp(28px,3vw,38px);
  font-weight:400;
  line-height:1.05;
}
.ps-success-count{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 11px;
  border-radius:999px;
  background:#efe3dc;
  color:#6d544a;
  font-size:10px;
  font-weight:700;
}
.ps-success-items{margin:0!important;padding:0 32px!important}
.ps-success-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:24px!important;
  align-items:center!important;
  padding:24px 0!important;
  border-top:1px solid #eadfd7!important;
}
.ps-success-item:first-child{border-top:0!important}
.ps-success-item-main{
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  gap:17px;
  align-items:center;
  min-width:0;
}
.ps-success-thumb{
  width:82px;
  height:98px;
  border-radius:10px;
  object-fit:cover;
  background:#eee7e1;
  box-shadow:0 8px 22px rgba(54,31,24,.08);
}
.ps-success-item-copy{min-width:0}
.ps-success-item-copy h3{
  margin:0 0 5px!important;
  color:#241813!important;
  font-family:var(--ps-font-display,serif)!important;
  font-size:23px!important;
  font-weight:400!important;
  line-height:1.1!important;
}
.ps-success-item-copy p{margin:0!important;color:#786961!important;font-size:12px!important}
.ps-success-item-copy span{display:block;margin-top:7px;color:#9a8b84;font-size:10px;line-height:1.5}
.ps-success-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:0!important}
.ps-success-actions .ps-button{
  min-width:158px!important;
  min-height:48px!important;
  border-radius:9px!important;
  text-align:center!important;
}
.ps-success-footer{
  display:flex;
  justify-content:space-between;
  gap:28px;
  align-items:center;
  margin-top:24px;
  padding:27px 32px;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
}
.ps-success-footer .ps-eyebrow{margin-bottom:7px!important}
.ps-success-footer h2{
  margin:0;
  font-family:var(--ps-font-display,serif);
  font-size:28px;
  font-weight:400;
  line-height:1.1;
}
.ps-success-footer p:not(.ps-eyebrow){margin:7px 0 0;color:#7b6a62;font-size:12px;line-height:1.6}
.ps-success-invoice{
  flex:0 0 auto;
  display:grid!important;
  place-items:center!important;
  min-width:210px!important;
  border-radius:9px!important;
  text-decoration:none!important;
}
@media(max-width:800px){
  .ps-order-success{width:min(100% - 28px,1120px)!important;padding-top:calc(var(--mshf-live-header-height,70px) + 24px)!important}
  .ps-success-hero{grid-template-columns:1fr;padding:28px 24px}
  .ps-success-item{grid-template-columns:1fr!important}
  .ps-success-actions{grid-template-columns:1fr 1fr!important}
  .ps-success-footer{align-items:flex-start;flex-direction:column}
  .ps-success-invoice{width:100%!important}
}
@media(max-width:560px){
  .ps-order-success{width:calc(100% - 20px)!important}
  .ps-success-hero{padding:24px 20px}
  .ps-order-success .ps-success-hero h1{font-size:clamp(38px,12.5vw,52px)!important}
  .ps-success-section-head{align-items:flex-start;flex-direction:column;padding:22px 20px 18px}
  .ps-success-items{padding:0 20px!important}
  .ps-success-item-main{grid-template-columns:68px minmax(0,1fr);gap:14px}
  .ps-success-thumb{width:68px;height:82px}
  .ps-success-item-copy h3{font-size:20px!important}
  .ps-success-actions{grid-template-columns:1fr!important}
  .ps-success-actions .ps-button{width:100%!important;min-width:0!important}
  .ps-success-footer{padding:22px 20px}
}

/* Both Gallery Only and For Sale cards now use a controlled mobile frame.
   This prevents tall portrait source files from expanding to nearly a full screen. */
@media(max-width:767px){
  .ps-gallery .ps-photo-card-media{
    display:block!important;
    width:100%!important;
    aspect-ratio:4/5!important;
    overflow:hidden!important;
    background:#eee9e0!important;
  }
  .ps-gallery .ps-photo-card-media img,
  .ps-gallery .ps-photo-card:nth-child(3n+2) .ps-photo-card-media img,
  .ps-gallery .ps-photo-card--gallery .ps-photo-card-media img,
  .ps-gallery .ps-photo-card--sellable .ps-photo-card-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .ps-gallery .ps-photo-card{
    border-radius:10px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(54,31,24,.055)!important;
  }
  .ps-gallery .ps-photo-card-meta{
    padding:13px 13px 12px!important;
  }
}


/* v0.4.23 — align gallery card base/background tones with the website paper color. */
.ps-gallery .ps-photo-card,
.ps-gallery--gallery-only .ps-photo-card,
.ps-gallery--sellable .ps-photo-card{
  background:var(--ps-paper,#f6f3ed)!important;
  background-color:var(--ps-paper,#f6f3ed)!important;
  border:1px solid rgba(125,102,85,.10)!important;
  box-shadow:0 14px 38px rgba(42,28,22,.045)!important;
}
.ps-gallery .ps-photo-card-media{
  background:var(--ps-paper-strong,#eee9e0)!important;
}
@media(hover:none),(pointer:coarse){
  .ps-gallery .ps-photo-card-meta{
    background:var(--ps-paper,#f6f3ed)!important;
    background-color:var(--ps-paper,#f6f3ed)!important;
    border-top:1px solid rgba(125,102,85,.10)!important;
    padding:14px 14px 12px!important;
  }
}
@media(max-width:767px){
  .ps-gallery .ps-photo-card{
    background:var(--ps-paper,#f6f3ed)!important;
    background-color:var(--ps-paper,#f6f3ed)!important;
    border:1px solid rgba(125,102,85,.10)!important;
    box-shadow:0 12px 32px rgba(54,31,24,.05)!important;
  }
  .ps-gallery .ps-photo-card-meta{
    background:var(--ps-paper,#f6f3ed)!important;
    background-color:var(--ps-paper,#f6f3ed)!important;
    border-top:1px solid rgba(125,102,85,.10)!important;
  }
}

/* v0.4.24 — premium multi-image shop products + #173D32 photographic base. */
.ps-gallery .ps-photo-card,
.ps-gallery--gallery-only .ps-photo-card,
.ps-gallery--sellable .ps-photo-card{
  background:#173D32!important;
  background-color:#173D32!important;
  border-color:rgba(23,61,50,.18)!important;
  box-shadow:0 16px 42px rgba(64,18,10,.08)!important;
}
.ps-gallery .ps-photo-card-media{
  position:relative!important;
  overflow:hidden!important;
  background:#173D32!important;
  background-color:#173D32!important;
}
.ps-photo-card-image--primary{
  position:relative;
  z-index:1;
  opacity:1;
  transition:opacity 360ms ease,transform 620ms var(--ps-ease,cubic-bezier(.2,.65,.25,1)),filter var(--ps-motion-base,320ms) ease!important;
}
.ps-photo-card-image--hover{
  position:absolute!important;
  inset:0!important;
  z-index:2;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:0;
  pointer-events:none;
  transition:opacity 360ms ease,transform 620ms var(--ps-ease,cubic-bezier(.2,.65,.25,1)),filter var(--ps-motion-base,320ms) ease!important;
}
@media(hover:hover) and (pointer:fine){
  .ps-photo-card-media--has-hover:hover .ps-photo-card-image--primary,
  .ps-photo-card-link:hover .ps-photo-card-media--has-hover .ps-photo-card-image--primary{opacity:0!important}
  .ps-photo-card-media--has-hover:hover .ps-photo-card-image--hover,
  .ps-photo-card-link:hover .ps-photo-card-media--has-hover .ps-photo-card-image--hover{opacity:1!important}
}
@media(hover:none),(pointer:coarse){
  .ps-gallery .ps-photo-card-meta{
    background:#173D32!important;
    background-color:#173D32!important;
    border-top-color:rgba(255,255,255,.12)!important;
    color:#fff!important;
  }
  .ps-gallery .ps-photo-card-title{color:#fff!important}
  .ps-gallery .ps-photo-card-price{color:rgba(255,255,255,.72)!important}
}
@media(max-width:767px){
  .ps-gallery .ps-photo-card,
  .ps-gallery .ps-photo-card-media,
  .ps-gallery .ps-photo-card-meta{
    background:#173D32!important;
    background-color:#173D32!important;
  }
}

.ps-product-viewer{width:100%}
.ps-product-viewer__stage{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  min-height:clamp(320px,52vw,760px);
  overflow:hidden;
  border-radius:12px;
  background:#173D32;
  box-shadow:0 20px 55px rgba(64,18,10,.10);
  outline:none;
  touch-action:pan-y;
}
.ps-product-viewer__stage:focus-visible{outline:2px solid #173D32;outline-offset:4px}
.ps-product-viewer__slide{width:100%;margin:0;padding:0;place-self:center}
.ps-product-viewer__slide[hidden]{display:none!important}
.ps-product-viewer__slide.is-active{display:grid;place-items:center}
.ps-product-viewer__slide .ps-single-photo-preview{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:82vh!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#173D32!important;
}
.ps-product-viewer__nav{
  position:absolute;
  top:50%;
  z-index:6;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  margin:0;
  padding:0;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.52);
  border-radius:50%;
  background:rgba(20,10,8,.34);
  color:#fff;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(8px);
  transition:background 180ms ease,transform 180ms ease,border-color 180ms ease;
}
.ps-product-viewer__nav:hover{background:#173D32;border-color:#fff;transform:translateY(-50%) scale(1.04)}
.ps-product-viewer__nav:focus-visible{outline:2px solid #fff;outline-offset:3px}
.ps-product-viewer__nav--prev{left:16px}.ps-product-viewer__nav--next{right:16px}
.ps-product-viewer__counter{
  position:absolute;
  right:16px;
  bottom:14px;
  z-index:6;
  display:flex;
  align-items:center;
  gap:5px;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(20,10,8,.44);
  color:#fff;
  font-size:10px;
  letter-spacing:.05em;
  backdrop-filter:blur(8px);
}
.ps-product-viewer__counter strong{font-size:11px}
.ps-product-viewer__thumbs{
  display:flex;
  gap:9px;
  overflow-x:auto;
  margin-top:11px;
  padding:2px 2px 5px;
  scrollbar-width:thin;
}
.ps-product-viewer__thumb{
  flex:0 0 72px;
  width:72px;
  height:72px;
  padding:3px;
  overflow:hidden;
  border:1px solid rgba(23,61,50,.18);
  border-radius:9px;
  background:#fff;
  cursor:pointer;
  opacity:.62;
  transition:opacity 180ms ease,border-color 180ms ease,transform 180ms ease;
}
.ps-product-viewer__thumb:hover,.ps-product-viewer__thumb.is-active{opacity:1;border-color:#173D32;transform:translateY(-1px)}
.ps-product-viewer__thumb img{display:block;width:100%;height:100%;object-fit:cover;border-radius:6px}
.ps-product-viewer__thumb:focus-visible{outline:2px solid #173D32;outline-offset:2px}
@media(max-width:767px){
  .ps-product-viewer__stage{min-height:0;aspect-ratio:4/5;border-radius:10px}
  .ps-product-viewer__slide,.ps-product-viewer__slide.is-active{width:100%;height:100%}
  .ps-product-viewer__slide .ps-single-photo-preview{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important}
  .ps-product-viewer__nav{width:42px;height:42px;font-size:18px}.ps-product-viewer__nav--prev{left:10px}.ps-product-viewer__nav--next{right:10px}
  .ps-product-viewer__counter{right:10px;bottom:10px}
  .ps-product-viewer__thumb{flex-basis:62px;width:62px;height:62px}
}

/* v0.4.25 — restore the softer v0.4.23 photo/card background treatment. */
.ps-gallery .ps-photo-card,
.ps-gallery--gallery-only .ps-photo-card,
.ps-gallery--sellable .ps-photo-card{
  background:var(--ps-paper,#f6f3ed)!important;
  background-color:var(--ps-paper,#f6f3ed)!important;
  border-color:rgba(125,102,85,.10)!important;
  box-shadow:0 14px 38px rgba(42,28,22,.045)!important;
}
.ps-gallery .ps-photo-card-media{
  background:var(--ps-paper-strong,#eee9e0)!important;
  background-color:var(--ps-paper-strong,#eee9e0)!important;
}
@media(hover:none),(pointer:coarse){
  .ps-gallery .ps-photo-card-meta{
    background:var(--ps-paper,#f6f3ed)!important;
    background-color:var(--ps-paper,#f6f3ed)!important;
    border-top-color:rgba(125,102,85,.10)!important;
    color:var(--ps-ink,#171512)!important;
  }
  .ps-gallery .ps-photo-card-title{color:var(--ps-ink,#171512)!important}
  .ps-gallery .ps-photo-card-price{color:var(--ps-muted,#706a62)!important}
}
@media(max-width:767px){
  .ps-gallery .ps-photo-card,
  .ps-gallery .ps-photo-card-meta{
    background:var(--ps-paper,#f6f3ed)!important;
    background-color:var(--ps-paper,#f6f3ed)!important;
  }
  .ps-gallery .ps-photo-card-media{
    background:var(--ps-paper-strong,#eee9e0)!important;
    background-color:var(--ps-paper-strong,#eee9e0)!important;
  }
}
.ps-product-viewer__stage{
  background:var(--ps-paper-strong,#eee9e0)!important;
  box-shadow:0 20px 55px rgba(42,28,22,.07)!important;
}
.ps-product-viewer__slide .ps-single-photo-preview{
  background:var(--ps-paper-strong,#eee9e0)!important;
}


/* v0.4.27 — premium product viewer/card polish and brand-safe controls. */
.ps-product-viewer__stage{
  aspect-ratio:3/2!important;
  min-height:0!important;
  border:1px solid rgba(93,19,42,.10)!important;
  border-radius:18px!important;
  background:var(--ps-paper-strong,#eee9e0)!important;
  box-shadow:0 24px 64px rgba(45,27,20,.09)!important;
}
.ps-product-viewer__slide,
.ps-product-viewer__slide.is-active{
  width:100%!important;
  height:100%!important;
  place-self:stretch!important;
}
.ps-product-viewer__slide .ps-single-photo-preview{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:0!important;
  background:var(--ps-paper-strong,#eee9e0)!important;
}
.ps-product-viewer__nav{
  width:48px!important;
  height:48px!important;
  border:1px solid rgba(243,222,172,.82)!important;
  border-radius:999px!important;
  background:#5D132A!important;
  background-color:#5D132A!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(65,19,10,.20)!important;
}
.ps-product-viewer__nav:hover,
.ps-product-viewer__nav:focus-visible{
  background:#F3DEAC!important;
  background-color:#F3DEAC!important;
  border-color:#F3DEAC!important;
  color:#5D132A!important;
}
.ps-product-viewer__nav--prev{left:18px!important}
.ps-product-viewer__nav--next{right:18px!important}
.ps-product-viewer__counter{
  right:18px!important;
  bottom:16px!important;
  min-height:32px!important;
  padding:6px 11px!important;
  background:rgba(37,22,17,.72)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.ps-product-viewer__thumbs{gap:10px!important;margin-top:14px!important;padding:3px 2px 7px!important}
.ps-product-viewer__thumb{
  flex-basis:74px!important;
  width:74px!important;
  height:74px!important;
  padding:3px!important;
  border:1px solid rgba(93,19,42,.13)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(52,31,24,.045)!important;
  opacity:.72!important;
}
.ps-product-viewer__thumb:hover,
.ps-product-viewer__thumb.is-active{
  opacity:1!important;
  border-color:#5D132A!important;
  box-shadow:0 0 0 2px rgba(93,19,42,.10),0 9px 22px rgba(52,31,24,.07)!important;
}
.ps-product-viewer__thumb img{border-radius:8px!important;object-fit:cover!important}
.ps-product-viewer__thumb:focus-visible{outline:2px solid #F3DEAC!important;outline-offset:2px!important}
.ps-single-photo-info{
  border:1px solid rgba(93,19,42,.10)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fffdfa 0%,#fbf6f1 100%)!important;
  box-shadow:0 22px 60px rgba(46,29,22,.075)!important;
}
.ps-purchase-field select{
  border-radius:10px!important;
  border-color:rgba(93,19,42,.18)!important;
  background:#fff!important;
}
.ps-purchase-actions .ps-button{border-radius:10px!important}
.ps-purchase-actions .ps-button-secondary{
  border-color:#5D132A!important;
  color:#5D132A!important;
  background:#fff!important;
}
.ps-purchase-actions .ps-button-primary{
  border-color:#5D132A!important;
  background:#5D132A!important;
  background-color:#5D132A!important;
  color:#fff!important;
}
.ps-purchase-actions .ps-button-secondary:hover,
.ps-purchase-actions .ps-button-secondary:focus-visible{background:#F3DEAC!important;color:#5D132A!important;border-color:#F3DEAC!important}
.ps-purchase-actions .ps-button-primary:hover,
.ps-purchase-actions .ps-button-primary:focus-visible{background:#173D32!important;background-color:#173D32!important;color:#fff!important}
.ps-gallery--sellable .ps-photo-card{
  border-radius:14px!important;
  border:1px solid rgba(93,19,42,.09)!important;
  box-shadow:0 18px 46px rgba(49,31,25,.055)!important;
  overflow:hidden!important;
}
@media(max-width:767px){
  .ps-product-viewer__stage{aspect-ratio:4/5!important;border-radius:14px!important}
  .ps-product-viewer__nav{width:42px!important;height:42px!important}
  .ps-product-viewer__nav--prev{left:10px!important}.ps-product-viewer__nav--next{right:10px!important}
  .ps-product-viewer__thumb{flex-basis:62px!important;width:62px!important;height:62px!important}
  .ps-single-photo-info{border-radius:14px!important}
}

/* v0.5.0 — unified Portfolio / Projects / Shop editorial system. */
.photographer-site.ps-studio-projects,
.photographer-site.ps-studio-portfolio,
.photographer-site.ps-studio-home-shop,
.photographer-site.ps-studio-instagram,
.photographer-site.ps-studio-project-single,
.photographer-site.ps-studio-portfolio-single{
  --ps-studio-paper:#f6efdf;
  --ps-studio-brand:#5D132A;
  --ps-studio-brand-deep:#173D32;
  --ps-studio-cream:#f3deac;
  --ps-studio-ink:#241715;
  --ps-studio-line:rgba(23,61,50,.15);
  box-sizing:border-box;
  font-family:var(--ps-font-body,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
}
.ps-studio-section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin:0 auto clamp(32px,4vw,58px);max-width:1320px;padding:0 clamp(20px,4vw,56px)}
.ps-studio-section-head>div{max-width:780px}.ps-studio-eyebrow{margin:0 0 9px;font-size:10px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:var(--ps-studio-brand)}
.ps-studio-section-head h2{margin:0;color:var(--ps-studio-brand);font:600 clamp(40px,5.2vw,78px)/.92 var(--ps-font-display,Georgia,serif);letter-spacing:-.045em}
.ps-studio-section-head>div>p:last-child{margin:13px 0 0;color:#735e56;max-width:58ch;line-height:1.65}
.ps-studio-section-head--light .ps-studio-eyebrow,.ps-studio-section-head--light h2{color:var(--ps-studio-cream)}
.ps-studio-empty{max-width:1320px;margin:0 auto;padding:20px clamp(20px,4vw,56px);color:#765f58}.ps-studio-empty--light{color:rgba(255,255,255,.75)}

/* Projects: reference-inspired offset editorial composition. */
.ps-studio-projects{padding:clamp(54px,7vw,104px) 0;background:var(--ps-studio-paper);overflow:hidden}
.ps-studio-project-grid{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,5vw,82px) clamp(28px,5vw,76px);align-items:start}
.ps-studio-project-card{min-width:0}.ps-studio-project-card:nth-child(even){padding-top:clamp(34px,6vw,90px)}
.ps-studio-project-card__media{display:block;overflow:hidden;background:#e8ddcb;text-decoration:none;box-shadow:0 24px 60px rgba(65,30,20,.075)}
.ps-studio-project-card__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.25,1),filter .25s ease}
.ps-studio-project-card:nth-child(4n+2) .ps-studio-project-card__media img{aspect-ratio:4/5}.ps-studio-project-card:nth-child(4n+3) .ps-studio-project-card__media img{aspect-ratio:5/6}.ps-studio-project-card:nth-child(4n+4) .ps-studio-project-card__media img{aspect-ratio:3/2}
.ps-studio-project-card__media:hover img{transform:scale(1.018);filter:saturate(1.03)}
.ps-studio-project-card__copy{padding:18px 2px 0}.ps-studio-project-card__copy>p{margin:0 0 6px;color:#8b6c60;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.ps-studio-project-card__copy h3{margin:0;font:600 clamp(26px,3vw,44px)/1 var(--ps-font-display,Georgia,serif);letter-spacing:-.035em}.ps-studio-project-card__copy h3 a{color:var(--ps-studio-brand);text-decoration:none}.ps-studio-project-card__copy>span{display:block;margin-top:10px;color:#715e58;font-size:13px;line-height:1.65;max-width:48ch}
.ps-studio-projects--home .ps-studio-project-grid{max-width:1040px}.ps-studio-projects--home .ps-studio-project-card__copy h3{font-size:clamp(25px,2.7vw,38px)}

/* Portfolio: dense visual masonry on the branded surface. */
.ps-studio-portfolio{padding:clamp(42px,6vw,88px) 0;background:var(--ps-studio-brand-deep);color:#fff}
.ps-studio-filter-bar{width:min(1320px,calc(100% - 40px));margin:0 auto clamp(28px,4vw,54px);display:flex;gap:10px 26px;flex-wrap:wrap;justify-content:center;padding:14px 0 17px;border-top:1px solid rgba(243,222,172,.18);border-bottom:1px solid rgba(243,222,172,.18)}
.ps-studio-filter-bar button{border:0;background:transparent;color:rgba(243,222,172,.72);font:600 11px/1 var(--ps-font-body,inherit);letter-spacing:.13em;text-transform:uppercase;padding:8px 0;cursor:pointer;border-bottom:1px solid transparent}.ps-studio-filter-bar button:hover,.ps-studio-filter-bar button[aria-current="true"]{color:var(--ps-studio-cream);border-bottom-color:var(--ps-studio-cream)}
.ps-studio-portfolio-grid{width:min(1320px,calc(100% - 32px));margin:0 auto;columns:3 300px;column-gap:10px}.ps-studio-portfolio-card{display:inline-block;width:100%;margin:0 0 10px;break-inside:avoid;overflow:hidden;background:#102B24}.ps-studio-portfolio-card__button{display:block;position:relative;width:100%;padding:0;border:0;background:transparent;color:#fff;text-align:left;cursor:zoom-in;overflow:hidden}.ps-studio-portfolio-card__button img{display:block;width:100%;height:auto;min-height:220px;object-fit:cover;transition:transform .55s cubic-bezier(.2,.65,.25,1),filter .25s ease}.ps-studio-portfolio-card:nth-child(6n+2) img{aspect-ratio:4/5}.ps-studio-portfolio-card:nth-child(6n+3) img{aspect-ratio:3/4}.ps-studio-portfolio-card:nth-child(6n+4) img{aspect-ratio:1/1}.ps-studio-portfolio-card:nth-child(6n+5) img{aspect-ratio:5/4}.ps-studio-portfolio-card__button>span{position:absolute;inset:auto 0 0;padding:78px 16px 15px;background:linear-gradient(transparent,rgba(30,5,0,.74));opacity:0;transform:translateY(8px);transition:.24s ease}.ps-studio-portfolio-card__button>span strong,.ps-studio-portfolio-card__button>span small{display:block}.ps-studio-portfolio-card__button>span strong{font:600 20px/1.05 var(--ps-font-display,Georgia,serif)}.ps-studio-portfolio-card__button>span small{margin-top:5px;color:rgba(255,255,255,.7);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.ps-studio-portfolio-card__button:hover img{transform:scale(1.018)}.ps-studio-portfolio-card__button:hover>span,.ps-studio-portfolio-card__button:focus-visible>span{opacity:1;transform:none}
.ps-studio-section-link{width:min(1320px,calc(100% - 40px));margin:32px auto 0;text-align:right}.ps-studio-section-link a{display:inline-flex;align-items:center;gap:8px;color:var(--ps-studio-cream);text-decoration:none;font-size:11px;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px}
.ps-studio-portfolio--home{padding-top:clamp(54px,7vw,100px);padding-bottom:clamp(58px,7vw,104px)}.ps-studio-portfolio--home .ps-studio-portfolio-grid{width:min(1120px,calc(100% - 40px));columns:2 320px;column-gap:18px}.ps-studio-portfolio--home .ps-studio-portfolio-card{margin-bottom:18px}

/* Homepage Shop callout. */
.ps-studio-home-shop{padding:clamp(52px,7vw,100px) 0;background:var(--ps-studio-brand-deep);color:#fff}.ps-studio-home-shop__inner{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.72fr);gap:clamp(30px,6vw,90px);align-items:center}.ps-studio-home-shop__media{display:grid;grid-template-columns:1fr .72fr;gap:12px;align-items:end}.ps-studio-home-shop__image{display:block;overflow:hidden;background:#102B24;box-shadow:0 24px 64px rgba(0,0,0,.16);aspect-ratio:4/3}.ps-studio-home-shop__image img{display:block;width:100%;height:100%;object-fit:cover}.ps-studio-home-shop__image--1{aspect-ratio:4/3}.ps-studio-home-shop__image--2{aspect-ratio:3/4;transform:translateY(12%)}.ps-studio-home-shop__image:nth-child(n+3){aspect-ratio:1/1}.ps-studio-home-shop__copy .ps-studio-eyebrow{color:rgba(243,222,172,.7)}.ps-studio-home-shop__copy h2{margin:0;color:var(--ps-studio-cream);font:700 clamp(42px,5.5vw,78px)/.88 var(--ps-font-display,Georgia,serif);letter-spacing:-.045em;text-transform:uppercase}.ps-studio-home-shop__copy>a{display:inline-flex;align-items:center;gap:9px;margin-top:25px;color:#fff;text-decoration:none;font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ps-studio-cream);padding-bottom:5px}

/* Instagram graphic CTA. */
.ps-studio-instagram{position:relative;overflow:hidden;padding:clamp(48px,7vw,96px) 0;background:var(--ps-studio-paper);text-align:center}.ps-studio-instagram__marquee{display:block;width:max-content;min-width:100%;color:var(--ps-studio-brand);text-decoration:none;white-space:nowrap;transform:rotate(-2deg)}.ps-studio-instagram__marquee span{display:block;font:700 clamp(42px,6.6vw,96px)/.95 var(--ps-font-display,Georgia,serif);letter-spacing:-.045em}.ps-studio-instagram__button{display:inline-flex;margin-top:clamp(34px,4vw,56px);padding:13px 22px;border-radius:999px;background:var(--ps-studio-brand);color:#fff;text-decoration:none;font-size:10px;letter-spacing:.13em;text-transform:uppercase;box-shadow:0 14px 32px rgba(23,61,50,.14)}.ps-studio-instagram__button:hover{background:var(--ps-studio-cream);color:var(--ps-studio-brand)}

/* Single project: clean editorial story + dense branded gallery. */
.ps-studio-project-single{background:var(--ps-studio-paper);color:var(--ps-studio-ink);padding:clamp(24px,4vw,54px) 0 0}.ps-studio-project-hero{width:min(1320px,calc(100% - 40px));margin:0 auto clamp(54px,7vw,100px);display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:clamp(32px,6vw,86px);align-items:start}.ps-studio-project-hero__image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:0 24px 64px rgba(54,30,22,.09)}.ps-studio-project-hero__copy{padding-top:clamp(12px,3vw,36px)}.ps-studio-project-hero__copy h1{margin:0;color:var(--ps-studio-brand);font:700 clamp(48px,6.8vw,104px)/.86 var(--ps-font-display,Georgia,serif);letter-spacing:-.06em}.ps-studio-project-hero__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0;padding:18px 0;border-top:1px solid var(--ps-studio-line);border-bottom:1px solid var(--ps-studio-line)}.ps-studio-project-hero__meta span{display:grid;gap:3px}.ps-studio-project-hero__meta small{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#98796f}.ps-studio-project-hero__meta strong{font-size:12px;color:#4b3731}.ps-studio-project-hero__content{color:#594640;font-size:14px;line-height:1.75}.ps-studio-project-hero__content p{margin:0 0 1em}
.ps-studio-project-gallery{padding:clamp(36px,5vw,72px) max(20px,calc((100vw - 1200px)/2));background:var(--ps-studio-brand-deep);columns:2 360px;column-gap:10px}.ps-studio-project-gallery__item{display:inline-block;width:100%;margin:0 0 10px;break-inside:avoid}.ps-studio-project-gallery__item img{display:block;width:100%;height:auto;object-fit:cover}.ps-studio-project-gallery__item:nth-child(5n+2) img{aspect-ratio:4/5}.ps-studio-project-gallery__item:nth-child(5n+3) img{aspect-ratio:1/1}

/* Portfolio single fallback. */
.ps-studio-portfolio-single{padding:clamp(48px,6vw,90px) 0;background:var(--ps-studio-brand-deep);color:#fff}.ps-studio-portfolio-single>header,.ps-studio-portfolio-single__copy{width:min(1180px,calc(100% - 40px));margin-left:auto;margin-right:auto}.ps-studio-portfolio-single>header{margin-bottom:32px}.ps-studio-portfolio-single h1{margin:0;color:var(--ps-studio-cream);font:700 clamp(50px,7vw,100px)/.88 var(--ps-font-display,Georgia,serif)}.ps-studio-portfolio-single__grid{width:min(1320px,calc(100% - 28px));margin:0 auto;columns:2 360px;column-gap:10px}.ps-studio-portfolio-single__grid figure{display:inline-block;width:100%;margin:0 0 10px}.ps-studio-portfolio-single__grid img{display:block;width:100%;height:auto}.ps-studio-portfolio-single__copy{padding-top:34px;line-height:1.7;color:rgba(255,255,255,.78)}

/* Shop grid: two-column collectible catalog inspired by the supplied reference. */
.ps-gallery--sellable{width:min(1220px,calc(100% - 40px))!important;padding-top:clamp(46px,5vw,72px)!important;background:var(--ps-paper,#f6f3ed)!important;box-shadow:0 0 0 100vmax var(--ps-paper,#f6f3ed)!important;clip-path:inset(0 -100vmax)}.ps-gallery--sellable .ps-gallery-filters{justify-content:center;margin-bottom:clamp(36px,5vw,64px)!important}.ps-gallery--sellable .ps-gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(34px,5vw,74px) clamp(22px,3vw,38px)!important;columns:auto!important}.ps-gallery--sellable .ps-photo-card{display:block!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}.ps-gallery--sellable .ps-photo-card-link{overflow:visible!important;color:var(--ps-brand,#5D132A)!important}.ps-gallery--sellable .ps-photo-card-media{position:relative;overflow:hidden!important;border-radius:0!important;background:#eee5d7!important;box-shadow:0 22px 56px rgba(60,31,22,.075)}.ps-gallery--sellable .ps-photo-card-media img,.ps-gallery--sellable .ps-photo-card:nth-child(3n+2) .ps-photo-card-media img{width:100%!important;height:100%!important;aspect-ratio:1/1!important;object-fit:cover!important}.ps-gallery--sellable .ps-photo-card-meta{position:static!important;opacity:1!important;transform:none!important;background:transparent!important;color:var(--ps-brand,#5D132A)!important;padding:18px 4px 0!important;display:grid!important;grid-template-columns:1fr auto!important;gap:7px 16px!important}.ps-gallery--sellable .ps-photo-card-title{font:700 clamp(24px,2.4vw,36px)/.95 var(--ps-font-display,Georgia,serif)!important;letter-spacing:-.035em!important;color:var(--ps-brand,#5D132A)!important}.ps-gallery--sellable .ps-photo-card-price{align-self:end;color:#80675f!important;font-size:10px!important;letter-spacing:.08em!important;opacity:1!important}.ps-gallery--sellable .ps-photo-card-view{display:block!important;color:#8b7168!important;font-size:9px!important;letter-spacing:.13em!important}

/* Shop single: large full-width image story followed by title/purchase details. */
.ps-single-photo--editorial{width:min(1500px,calc(100% - 30px))!important;padding-top:clamp(18px,3vw,34px)!important;background:var(--ps-paper,#f6f3ed)!important;box-shadow:0 0 0 100vmax var(--ps-paper,#f6f3ed)!important;clip-path:inset(0 -100vmax)}.ps-single-photo-editorial-viewer{width:100%;margin:0 auto}.ps-single-photo--editorial .ps-product-viewer__stage{aspect-ratio:16/8.6!important;border-radius:0!important;border:0!important;background:#e9dfcf!important;box-shadow:none!important}.ps-single-photo--editorial .ps-product-viewer__slide .ps-single-photo-preview{object-fit:cover!important}.ps-single-photo--editorial .ps-product-viewer__thumbs{width:min(900px,100%);margin:14px auto 0!important;justify-content:center}.ps-single-photo-editorial-details{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:clamp(38px,6vw,88px);padding:clamp(42px,6vw,84px) clamp(4px,2vw,26px) 0;align-items:start}.ps-single-photo-editorial-copy h1{margin:0;color:var(--ps-brand,#5D132A);font:700 clamp(52px,6.6vw,100px)/.88 var(--ps-font-display,Georgia,serif);letter-spacing:-.06em;max-width:12ch}.ps-single-photo-editorial-copy .ps-single-photo-description,.ps-single-photo-editorial-copy .ps-single-photo-story{max-width:62ch;color:#654f48}.ps-single-photo-editorial-purchase{padding-top:8px}.ps-single-photo-editorial-purchase .ps-purchase-panel{margin:0!important;padding:22px!important;border:1px solid rgba(93,19,42,.12)!important;border-radius:16px!important;background:#fffaf2!important;box-shadow:0 20px 54px rgba(55,31,23,.07)!important}.ps-single-photo-editorial-purchase .ps-purchase-actions{grid-template-columns:1fr 1fr}

@media(max-width:900px){
  .ps-studio-project-grid{grid-template-columns:1fr;gap:34px}.ps-studio-project-card:nth-child(even){padding-top:0}.ps-studio-home-shop__inner,.ps-studio-project-hero,.ps-single-photo-editorial-details{grid-template-columns:1fr}.ps-studio-home-shop__media{grid-template-columns:1fr 1fr}.ps-studio-project-hero__meta{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-studio-portfolio-grid,.ps-studio-portfolio--home .ps-studio-portfolio-grid{columns:2 260px}.ps-gallery--sellable .ps-gallery-grid{gap:34px 18px!important}.ps-single-photo-editorial-purchase{max-width:680px}.ps-single-photo--editorial .ps-product-viewer__stage{aspect-ratio:4/3!important}
}
@media(max-width:620px){
  .ps-studio-section-head{padding:0 18px}.ps-studio-project-grid,.ps-studio-home-shop__inner,.ps-studio-project-hero{width:calc(100% - 28px)}.ps-studio-home-shop__media{grid-template-columns:1fr}.ps-studio-home-shop__image--2{display:none}.ps-studio-portfolio-grid,.ps-studio-portfolio--home .ps-studio-portfolio-grid,.ps-studio-project-gallery,.ps-studio-portfolio-single__grid{columns:1}.ps-studio-project-hero__meta{grid-template-columns:1fr 1fr}.ps-studio-instagram__marquee span{font-size:clamp(36px,13vw,60px)}.ps-gallery--sellable{width:calc(100% - 24px)!important}.ps-gallery--sellable .ps-gallery-grid{grid-template-columns:1fr!important}.ps-gallery--sellable .ps-photo-card-meta{padding-top:14px!important}.ps-single-photo--editorial{width:calc(100% - 20px)!important}.ps-single-photo--editorial .ps-product-viewer__stage{aspect-ratio:4/5!important}.ps-single-photo--editorial-details{padding-top:30px}.ps-single-photo-editorial-copy h1{font-size:clamp(42px,13vw,66px)}.ps-single-photo-editorial-purchase .ps-purchase-actions{grid-template-columns:1fr}
}

/* v0.5.3 — premium large-format visual pass + HD presentation safeguards. */
:root{
  --ps-premium-paper:#f6efdf;
  --ps-premium-paper-2:#fbf7ef;
  --ps-premium-brand:#5D132A;
  --ps-premium-brand-deep:#173D32;
  --ps-premium-cream:#f3deac;
  --ps-premium-line:rgba(23,61,50,.12);
  --ps-premium-shadow:0 24px 70px rgba(55,27,19,.10);
  --ps-premium-radius:22px;
}

/* Never soften source photography in the browser. */
.photographer-site img,
.ps-gallery img,
.ps-single-photo img{
  image-rendering:auto!important;
  filter:none;
  -webkit-font-smoothing:antialiased;
}

/* Full-bleed background, constrained content. */
.ps-studio-projects{
  background:var(--ps-premium-paper)!important;
  box-shadow:0 0 0 100vmax var(--ps-premium-paper)!important;
  clip-path:inset(0 -100vmax);
}
.ps-studio-portfolio{
  background:var(--ps-premium-brand-deep)!important;
  box-shadow:0 0 0 100vmax var(--ps-premium-brand-deep)!important;
  clip-path:inset(0 -100vmax);
}
.ps-studio-project-grid,
.ps-studio-portfolio-grid,
.ps-gallery--sellable .ps-gallery-grid,
.ps-studio-project-hero,
.ps-studio-project-gallery,
.ps-studio-portfolio-single__grid,
.ps-single-photo--editorial{
  max-width:1440px!important;
}

/* Projects: two large premium cards per row. */
.ps-studio-project-grid{
  width:min(1440px,calc(100% - 48px))!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(34px,4vw,62px) clamp(24px,3vw,42px)!important;
}
.ps-studio-project-card{
  min-width:0;
  padding:12px 12px 22px!important;
  border:1px solid var(--ps-premium-line)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.48)!important;
  box-shadow:var(--ps-premium-shadow)!important;
}
/* Keep the editorial offset independent of the reveal animation's transform. */
.ps-studio-project-card:nth-child(even){padding-top:12px!important;translate:0 clamp(18px,2.5vw,38px);}
.ps-studio-project-card__media{
  border-radius:20px!important;
  overflow:hidden!important;
  background:#e8ddcb!important;
  box-shadow:none!important;
}
.ps-studio-project-card__media img{
  width:100%!important;
  height:100%!important;
  min-height:clamp(420px,46vw,680px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
  object-position:center!important;
}
.ps-studio-project-card:nth-child(4n+2) .ps-studio-project-card__media img,
.ps-studio-project-card:nth-child(4n+3) .ps-studio-project-card__media img,
.ps-studio-project-card:nth-child(4n+4) .ps-studio-project-card__media img{aspect-ratio:4/5!important;}
.ps-studio-project-card__copy{padding:22px 10px 2px!important;}
.ps-studio-project-card__copy h3{font-size:clamp(30px,3vw,48px)!important;}
.ps-studio-project-card__copy>span{font-size:14px!important;line-height:1.7!important;}

/* Portfolio: switch dense masonry to premium two-column framed presentation. */
.ps-studio-portfolio-grid,
.ps-studio-portfolio--home .ps-studio-portfolio-grid{
  width:min(1440px,calc(100% - 48px))!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(22px,3vw,40px)!important;
  columns:auto!important;
}
.ps-studio-portfolio-card,
.ps-studio-portfolio--home .ps-studio-portfolio-card{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid rgba(243,222,172,.18)!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:0 24px 68px rgba(27,4,0,.20)!important;
  overflow:hidden!important;
}
.ps-studio-portfolio-card__button{
  border-radius:18px!important;
  overflow:hidden!important;
}
.ps-studio-portfolio-card__button img,
.ps-studio-portfolio-card:nth-child(6n+2) img,
.ps-studio-portfolio-card:nth-child(6n+3) img,
.ps-studio-portfolio-card:nth-child(6n+4) img,
.ps-studio-portfolio-card:nth-child(6n+5) img{
  width:100%!important;
  height:100%!important;
  min-height:clamp(440px,46vw,720px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
  object-position:center!important;
}
.ps-studio-portfolio-card__button>span{
  border-radius:0 0 18px 18px!important;
  padding:110px 22px 20px!important;
}
.ps-studio-portfolio-card__button>span strong{font-size:clamp(22px,2vw,32px)!important;}

/* Home callouts get the same framed editorial language. */
.ps-studio-home-shop__image{
  border-radius:22px!important;
  border:1px solid rgba(243,222,172,.18)!important;
  box-shadow:0 26px 70px rgba(20,3,0,.22)!important;
}
.ps-studio-home-shop__image img{transition:transform .8s cubic-bezier(.2,.65,.25,1)!important;}
.ps-studio-home-shop__image:hover img{transform:scale(1.025)!important;}

/* Shop: large two-up product cards, framed rather than dropped on the page. */
.ps-gallery--sellable{
  width:min(1480px,calc(100% - 42px))!important;
  background:var(--ps-premium-paper)!important;
}
.ps-gallery--sellable .ps-gallery-grid{
  width:100%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(34px,4.5vw,70px) clamp(24px,3vw,42px)!important;
}
.ps-gallery--sellable .ps-photo-card{
  padding:12px 12px 24px!important;
  border:1px solid var(--ps-premium-line)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.48)!important;
  box-shadow:var(--ps-premium-shadow)!important;
  overflow:hidden!important;
}
.ps-gallery--sellable .ps-photo-card-media{
  border-radius:20px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.ps-gallery--sellable .ps-photo-card-media img,
.ps-gallery--sellable .ps-photo-card:nth-child(3n+2) .ps-photo-card-media img{
  min-height:clamp(440px,45vw,700px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
}
.ps-gallery--sellable .ps-photo-card-meta{padding:22px 8px 0!important;}
.ps-gallery--sellable .ps-photo-card-title{font-size:clamp(28px,2.8vw,42px)!important;}

/* Single pages: clear the sticky header and use premium surface containers. */
.ps-studio-project-single,
.ps-studio-portfolio-single,
.ps-single-photo--editorial{
  padding-top:clamp(92px,8vw,132px)!important;
}
.ps-studio-project-hero{
  width:min(1440px,calc(100% - 48px))!important;
  padding:16px!important;
  border:1px solid var(--ps-premium-line)!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.50)!important;
  box-shadow:var(--ps-premium-shadow)!important;
}
.ps-studio-project-hero__image{
  border-radius:22px!important;
  overflow:hidden!important;
}
.ps-studio-project-hero__image img{
  min-height:clamp(520px,58vw,820px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
  box-shadow:none!important;
}
.ps-studio-project-hero__copy{padding:clamp(24px,3vw,46px)!important;}
.ps-studio-project-gallery{
  width:min(1440px,calc(100% - 48px))!important;
  margin:0 auto!important;
  padding:clamp(28px,4vw,52px)!important;
  columns:auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(20px,2.6vw,34px)!important;
  border-radius:30px 30px 0 0!important;
}
.ps-studio-project-gallery__item{
  display:block!important;
  width:100%!important;
  margin:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#102B24!important;
  box-shadow:0 22px 58px rgba(20,3,0,.20)!important;
}
.ps-studio-project-gallery__item img,
.ps-studio-project-gallery__item:nth-child(5n+2) img,
.ps-studio-project-gallery__item:nth-child(5n+3) img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:clamp(420px,44vw,680px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
}

.ps-studio-portfolio-single>header{
  width:min(1440px,calc(100% - 48px))!important;
  margin-bottom:38px!important;
  padding:0 10px!important;
}
.ps-studio-portfolio-single__grid{
  width:min(1440px,calc(100% - 48px))!important;
  columns:auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(20px,2.8vw,38px)!important;
}
.ps-studio-portfolio-single__grid figure{
  display:block!important;
  width:100%!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
  border:1px solid rgba(243,222,172,.16)!important;
  box-shadow:0 24px 68px rgba(20,3,0,.22)!important;
}
.ps-studio-portfolio-single__grid img{
  width:100%!important;
  height:100%!important;
  min-height:clamp(440px,46vw,720px)!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
}
.ps-studio-portfolio-single__copy{
  width:min(1200px,calc(100% - 48px))!important;
  margin-top:34px!important;
  padding:28px 32px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(243,222,172,.14)!important;
}

.ps-single-photo--editorial{
  width:min(1500px,calc(100% - 38px))!important;
}
.ps-single-photo--editorial .ps-product-viewer{
  padding:12px!important;
  border-radius:30px!important;
  border:1px solid var(--ps-premium-line)!important;
  background:rgba(255,255,255,.50)!important;
  box-shadow:var(--ps-premium-shadow)!important;
}
.ps-single-photo--editorial .ps-product-viewer__stage{
  aspect-ratio:16/9!important;
  min-height:clamp(540px,62vw,860px)!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.ps-single-photo--editorial .ps-product-viewer__slide,
.ps-single-photo--editorial .ps-product-viewer__slide .ps-single-photo-preview{
  width:100%!important;
  height:100%!important;
}
.ps-single-photo--editorial .ps-product-viewer__slide .ps-single-photo-preview{
  object-fit:cover!important;
  object-position:center!important;
}
.ps-single-photo-editorial-details{
  margin-top:34px!important;
  padding:clamp(34px,5vw,68px)!important;
  border:1px solid var(--ps-premium-line)!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.50)!important;
  box-shadow:var(--ps-premium-shadow)!important;
}
.ps-related-grid .ps-photo-card,
.ps-related-grid .ps-photo-card-media,
.ps-related-grid .ps-photo-card-media img{
  border-radius:20px!important;
}

/* Natural fade/zoom reveal while scrolling. JS only adds these classes at runtime. */
.ps-reveal-item{
  opacity:0;
  transform:translate3d(0,26px,0) scale(.985);
  transition:
    opacity .78s cubic-bezier(.22,.61,.36,1) var(--ps-reveal-delay,0ms),
    transform .9s cubic-bezier(.16,1,.3,1) var(--ps-reveal-delay,0ms);
  will-change:opacity,transform;
}
.ps-reveal-item.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}

@media (prefers-reduced-motion:reduce){
  .ps-reveal-item{opacity:1!important;transform:none!important;transition:none!important;}
  .ps-studio-project-card__media img,
  .ps-studio-portfolio-card__button img,
  .ps-studio-home-shop__image img,
  .ps-gallery--sellable .ps-photo-card-media img{transition:none!important;}
}

@media(max-width:900px){
  .ps-studio-project-grid,
  .ps-studio-portfolio-grid,
  .ps-studio-portfolio--home .ps-studio-portfolio-grid,
  .ps-gallery--sellable .ps-gallery-grid,
  .ps-studio-project-gallery,
  .ps-studio-portfolio-single__grid{
    grid-template-columns:1fr!important;
  }
  .ps-studio-project-card:nth-child(even){translate:none!important;transform:none!important;}
  .ps-studio-project-card__media img,
  .ps-studio-portfolio-card__button img,
  .ps-gallery--sellable .ps-photo-card-media img,
  .ps-studio-project-gallery__item img,
  .ps-studio-portfolio-single__grid img{
    min-height:0!important;
    aspect-ratio:4/5!important;
  }
  .ps-studio-project-hero{grid-template-columns:1fr!important;}
  .ps-studio-project-hero__image img{min-height:0!important;aspect-ratio:4/5!important;}
  .ps-single-photo--editorial .ps-product-viewer__stage{min-height:0!important;aspect-ratio:4/3!important;}
}

@media(max-width:620px){
  .ps-studio-project-single,
  .ps-studio-portfolio-single,
  .ps-single-photo--editorial{padding-top:82px!important;}
  .ps-studio-project-grid,
  .ps-studio-portfolio-grid,
  .ps-studio-portfolio--home .ps-studio-portfolio-grid,
  .ps-studio-project-hero,
  .ps-studio-project-gallery,
  .ps-studio-portfolio-single>header,
  .ps-studio-portfolio-single__grid,
  .ps-studio-portfolio-single__copy{
    width:calc(100% - 22px)!important;
  }
  .ps-studio-project-card,
  .ps-studio-portfolio-card,
  .ps-gallery--sellable .ps-photo-card,
  .ps-studio-project-hero,
  .ps-single-photo--editorial .ps-product-viewer,
  .ps-single-photo-editorial-details{border-radius:20px!important;}
  .ps-studio-project-card__media,
  .ps-studio-portfolio-card__button,
  .ps-gallery--sellable .ps-photo-card-media,
  .ps-studio-project-hero__image,
  .ps-studio-project-gallery__item,
  .ps-studio-portfolio-single__grid figure,
  .ps-single-photo--editorial .ps-product-viewer__stage{border-radius:15px!important;}
  .ps-single-photo--editorial{width:calc(100% - 16px)!important;}
  .ps-single-photo-editorial-details{padding:26px 20px!important;}
}

/* v0.5.6 — full-bleed premium Studio surfaces, working filters/lightbox, and cleaner image presentation. */
.ps-studio-projects,
.ps-studio-portfolio,
.ps-studio-home-shop,
.ps-studio-project-single,
.ps-studio-portfolio-single,
.ps-gallery--sellable,
.ps-single-photo--editorial{
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  transform:none!important;
  box-sizing:border-box!important;
}

.ps-studio-shell{
  width:min(1440px,calc(100% - 48px));
  max-width:1440px;
  margin:0 auto;
  box-sizing:border-box;
}
.ps-studio-section-head{
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Full-bleed backgrounds, boxed content. */
.ps-studio-projects,
.ps-studio-project-single,
.ps-gallery--sellable,
.ps-single-photo--editorial{
  background:var(--ps-premium-paper,#f6efdf)!important;
  box-shadow:none!important;
  clip-path:none!important;
}
.ps-studio-portfolio,
.ps-studio-portfolio-single,
.ps-studio-home-shop,
.ps-studio-project-gallery-wrap{
  background:var(--ps-premium-brand-deep,#173D32)!important;
}

.ps-gallery--sellable{
  padding:clamp(42px,5vw,76px) 0 clamp(80px,8vw,132px)!important;
}
.ps-gallery--sellable .ps-gallery-filters,
.ps-gallery--sellable .ps-gallery-grid,
.ps-gallery--sellable > .ps-gallery-empty{
  width:min(1440px,calc(100% - 48px))!important;
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Filters: no Elementor/theme pink, and only loaded categories are rendered by PHP. */
.ps-studio-filter-bar,
.ps-gallery--sellable .ps-gallery-filters{
  box-sizing:border-box!important;
}
.ps-studio-filter-bar button,
.ps-gallery--sellable .ps-gallery-filters a{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  background:transparent!important;
  background-color:transparent!important;
  border-radius:999px!important;
  border:1px solid transparent!important;
  text-decoration:none!important;
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease!important;
}
.ps-studio-portfolio .ps-studio-filter-bar button{
  color:rgba(243,222,172,.78)!important;
  padding:10px 14px!important;
}
.ps-studio-portfolio .ps-studio-filter-bar button:hover,
.ps-studio-portfolio .ps-studio-filter-bar button:focus-visible,
.ps-studio-portfolio .ps-studio-filter-bar button[aria-current="true"]{
  color:#173D32!important;
  background:#f3deac!important;
  background-color:#f3deac!important;
  border-color:#f3deac!important;
}
.ps-studio-filter-bar--projects{
  margin-top:0!important;
  border-color:rgba(23,61,50,.14)!important;
}
.ps-studio-filter-bar--projects button{
  color:#6b493f!important;
  padding:10px 14px!important;
}
.ps-studio-filter-bar--projects button:hover,
.ps-studio-filter-bar--projects button:focus-visible,
.ps-studio-filter-bar--projects button[aria-current="true"]{
  color:#f7ead0!important;
  background:#5D132A!important;
  background-color:#5D132A!important;
  border-color:#5D132A!important;
}
.ps-gallery--sellable .ps-gallery-filters a{
  color:#725a50!important;
  padding:10px 14px!important;
  margin:0!important;
}
.ps-gallery--sellable .ps-gallery-filters a:hover,
.ps-gallery--sellable .ps-gallery-filters a:focus-visible,
.ps-gallery--sellable .ps-gallery-filters a[aria-current="true"]{
  color:#f7ead0!important;
  background:#5D132A!important;
  background-color:#5D132A!important;
  border-color:#5D132A!important;
}
[data-ps-gallery-card].is-filtered-out,
[data-ps-gallery-card][hidden]{display:none!important;}
.ps-studio-filter-empty[hidden],
.ps-gallery-filter-empty[hidden]{display:none!important;}

/* Premium framed cards, consistent across Projects / Portfolio / Shop. */
.ps-studio-project-card,
.ps-studio-portfolio-card,
.ps-gallery--sellable .ps-photo-card{
  border-radius:26px!important;
  overflow:hidden!important;
  transform:translateZ(0);
}
.ps-studio-project-card__media,
.ps-studio-portfolio-card__button,
.ps-gallery--sellable .ps-photo-card-media{
  border-radius:18px!important;
  overflow:hidden!important;
  background:#eadfce!important;
}
.ps-studio-project-card__media img,
.ps-studio-portfolio-card__button img,
.ps-gallery--sellable .ps-photo-card-media img{
  image-rendering:auto!important;
  -ms-interpolation-mode:bicubic;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  filter:none!important;
}

/* Larger Home shop artwork; never leave a decorative empty tile. */
.ps-studio-home-shop__inner{
  width:min(1440px,calc(100% - 48px))!important;
  max-width:1440px!important;
  grid-template-columns:minmax(0,1.4fr) minmax(340px,.6fr)!important;
  gap:clamp(42px,6vw,100px)!important;
}
.ps-studio-home-shop__media{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;
  gap:clamp(16px,2vw,28px)!important;
  align-items:center!important;
}
.ps-studio-home-shop__media--single{grid-template-columns:1fr!important;}
.ps-studio-home-shop__image,
.ps-studio-home-shop__image--1,
.ps-studio-home-shop__image--2{
  min-height:clamp(420px,46vw,720px)!important;
  aspect-ratio:4/3!important;
  transform:none!important;
  border-radius:24px!important;
}
.ps-studio-home-shop__image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.ps-studio-home-shop__media--single .ps-studio-home-shop__image{max-width:920px!important;}

/* Single project: paper hero + true full-width burgundy gallery band with boxed images. */
.ps-studio-project-single,
.ps-studio-portfolio-single,
.ps-single-photo--editorial{
  padding-top:clamp(132px,10vw,176px)!important;
}
.ps-studio-shell--single{width:min(1440px,calc(100% - 48px))!important;}
.ps-studio-project-hero{
  width:100%!important;
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ps-studio-project-gallery-wrap{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:clamp(52px,6vw,92px) 0!important;
}
.ps-studio-project-gallery{
  width:min(1440px,calc(100% - 48px))!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.ps-studio-project-hero__image,
.ps-studio-image-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  cursor:zoom-in!important;
  color:inherit!important;
  text-align:inherit!important;
}
.ps-studio-project-gallery__item .ps-studio-image-button,
.ps-studio-portfolio-single__grid .ps-studio-image-button{
  height:100%!important;
}
.ps-studio-project-gallery__item .ps-studio-image-button img,
.ps-studio-portfolio-single__grid .ps-studio-image-button img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Portfolio single keeps the full burgundy page while the actual content stays boxed. */
.ps-studio-portfolio-single .ps-studio-shell--portfolio-single{
  width:min(1440px,calc(100% - 48px))!important;
}
.ps-studio-portfolio-single>header{width:auto!important;}
.ps-studio-portfolio-single__grid,
.ps-studio-portfolio-single__copy{
  width:100%!important;
  max-width:none!important;
}

/* Shop single is full-bleed paper with a boxed gallery/details canvas. */
.ps-single-photo--editorial{
  padding-left:0!important;
  padding-right:0!important;
  padding-bottom:clamp(86px,8vw,138px)!important;
}
.ps-single-photo--editorial .ps-single-photo-editorial-viewer,
.ps-single-photo--editorial .ps-single-photo-editorial-details,
.ps-single-photo--editorial .ps-related-photos{
  width:min(1500px,calc(100% - 48px))!important;
  max-width:1500px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ps-single-photo--editorial .ps-product-viewer__stage{
  min-height:clamp(620px,64vw,920px)!important;
}

/* Fullscreen Studio viewer always sits above the sticky header and uses the viewport. */
.ps-lightbox--studio,
.ps-lightbox{
  z-index:2147483647!important;
}
html.ps-lightbox-open .mshf-header,
html.ps-lightbox-open .elementor-location-header,
html.ps-lightbox-open header.site-header{
  z-index:2147483000!important;
  pointer-events:none!important;
}
.ps-lightbox--studio{
  grid-template-columns:clamp(48px,5vw,76px) minmax(0,1fr) clamp(48px,5vw,76px)!important;
  padding:clamp(14px,2vw,28px)!important;
}
.ps-lightbox--studio .ps-lightbox-figure{
  width:min(92vw,1700px)!important;
  height:min(92vh,1120px)!important;
  max-width:100%!important;
  margin:0 auto!important;
  grid-template-rows:minmax(0,1fr) auto!important;
}
.ps-lightbox--studio .ps-lightbox-figure img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:calc(92vh - 72px)!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
  border-radius:14px!important;
}

@media(max-width:900px){
  .ps-studio-shell,
  .ps-gallery--sellable .ps-gallery-filters,
  .ps-gallery--sellable .ps-gallery-grid,
  .ps-gallery--sellable > .ps-gallery-empty,
  .ps-studio-home-shop__inner,
  .ps-studio-shell--single,
  .ps-studio-project-gallery,
  .ps-studio-portfolio-single .ps-studio-shell--portfolio-single,
  .ps-single-photo--editorial .ps-single-photo-editorial-viewer,
  .ps-single-photo--editorial .ps-single-photo-editorial-details,
  .ps-single-photo--editorial .ps-related-photos{
    width:calc(100% - 28px)!important;
  }
  .ps-studio-home-shop__inner{grid-template-columns:1fr!important;}
  .ps-studio-home-shop__media{grid-template-columns:1fr!important;}
  .ps-studio-home-shop__image,
  .ps-studio-home-shop__image--1,
  .ps-studio-home-shop__image--2{min-height:0!important;aspect-ratio:4/3!important;}
  .ps-studio-project-single,
  .ps-studio-portfolio-single,
  .ps-single-photo--editorial{padding-top:110px!important;}
}
@media(max-width:620px){
  .ps-studio-shell,
  .ps-gallery--sellable .ps-gallery-filters,
  .ps-gallery--sellable .ps-gallery-grid,
  .ps-gallery--sellable > .ps-gallery-empty,
  .ps-studio-home-shop__inner,
  .ps-studio-shell--single,
  .ps-studio-project-gallery,
  .ps-studio-portfolio-single .ps-studio-shell--portfolio-single,
  .ps-single-photo--editorial .ps-single-photo-editorial-viewer,
  .ps-single-photo--editorial .ps-single-photo-editorial-details,
  .ps-single-photo--editorial .ps-related-photos{
    width:calc(100% - 20px)!important;
  }
  .ps-studio-filter-bar{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;white-space:nowrap!important;padding-bottom:14px!important;}
  .ps-studio-project-single,
  .ps-studio-portfolio-single,
  .ps-single-photo--editorial{padding-top:92px!important;}
  .ps-lightbox--studio{grid-template-columns:42px minmax(0,1fr) 42px!important;padding:58px 6px 12px!important;}
  .ps-lightbox--studio .ps-lightbox-figure{height:86vh!important;width:100%!important;}
  .ps-lightbox--studio .ps-lightbox-figure img{max-height:calc(86vh - 68px)!important;}
}


/* v0.5.7 — final premium polish: visible Home Shop copy, brand-safe project cards,
 * true fullscreen lightbox, and video-reference Instagram floating visual. */
:root{
  --ps-studio-pink-kill:#5D132A;
  --ps-studio-soft-cream:#f3deac;
}

/* Home shop: keep the copy visible beside a composed two-image editorial collage. */
.ps-studio-home-shop{padding:clamp(70px,8vw,126px) 0!important;}
.ps-studio-home-shop__inner{
  width:min(1440px,calc(100% - 48px))!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.72fr)!important;
  gap:clamp(48px,6vw,108px)!important;
  align-items:center!important;
}
.ps-studio-home-shop__media{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.76fr)!important;
  gap:clamp(16px,2vw,28px)!important;
  align-items:center!important;
  min-width:0!important;
}
.ps-studio-home-shop__image,
.ps-studio-home-shop__image--1,
.ps-studio-home-shop__image--2{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  border-radius:26px!important;
  border:1px solid rgba(243,222,172,.30)!important;
  overflow:hidden!important;
  background:#102B24!important;
  box-shadow:0 28px 76px rgba(27,4,0,.24)!important;
}
.ps-studio-home-shop__image--2{
  aspect-ratio:4/5!important;
  transform:translateY(-7%)!important;
}
.ps-studio-home-shop__image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important;}
.ps-studio-home-shop__copy{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:2!important;max-width:520px!important;}
.ps-studio-home-shop__copy .ps-studio-eyebrow{color:rgba(243,222,172,.78)!important;}
.ps-studio-home-shop__copy h2{display:block!important;color:#f3deac!important;font-size:clamp(54px,5.8vw,92px)!important;line-height:.86!important;text-wrap:balance;}
.ps-studio-home-shop__copy>a{color:#fff!important;border-color:#f3deac!important;font-weight:700!important;}
.ps-studio-home-shop__copy>a:hover,.ps-studio-home-shop__copy>a:focus-visible{color:#f3deac!important;}

/* Projects: remove any theme/Elementor pink and make the title a white editorial overlay. */
.ps-studio-projects{background:var(--ps-premium-brand-deep,#173D32)!important;color:#fff!important;}
.ps-studio-projects .ps-studio-section-head .ps-studio-eyebrow,
.ps-studio-projects .ps-studio-section-head h2{color:#f3deac!important;}
.ps-studio-projects .ps-studio-section-head>div>p:last-child{color:rgba(255,255,255,.72)!important;}
.ps-studio-project-card{
  position:relative!important;
  padding:10px!important;
  border:1px solid rgba(243,222,172,.22)!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:0 24px 68px rgba(25,3,0,.22)!important;
  border-radius:28px!important;
  overflow:hidden!important;
}
.ps-studio-project-card__media{border-radius:20px!important;border:0!important;overflow:hidden!important;}
.ps-studio-project-card__media img{border-radius:20px!important;}
.ps-studio-project-card__copy{
  position:absolute!important;
  left:10px!important;right:10px!important;bottom:10px!important;
  z-index:2!important;
  padding:105px 24px 22px!important;
  border-radius:0 0 20px 20px!important;
  background:linear-gradient(180deg,rgba(28,3,0,0),rgba(28,3,0,.84))!important;
  pointer-events:none!important;
}
.ps-studio-project-card__copy>p{color:#f3deac!important;margin-bottom:7px!important;}
.ps-studio-project-card__copy h3,.ps-studio-project-card__copy h3 a{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.28)!important;}
.ps-studio-project-card__copy>span{color:rgba(255,255,255,.78)!important;}
.ps-studio-project-card:focus-within{outline:2px solid #f3deac!important;outline-offset:4px!important;}
.ps-studio-project-card__media:focus-visible{outline:2px solid #f3deac!important;outline-offset:-5px!important;}

/* Never allow the old pink accent to leak into Studio filters/cards. */
.ps-studio-projects button,
.ps-studio-portfolio button,
.ps-studio-filter-bar button{
  accent-color:#5D132A!important;
}
.ps-studio-filter-bar button:focus-visible{outline:2px solid #f3deac!important;outline-offset:3px!important;}
.ps-studio-projects .ps-studio-filter-bar--projects{border-color:rgba(243,222,172,.20)!important;}
.ps-studio-projects .ps-studio-filter-bar--projects button{color:rgba(243,222,172,.78)!important;}
.ps-studio-projects .ps-studio-filter-bar--projects button:hover,
.ps-studio-projects .ps-studio-filter-bar--projects button:focus-visible,
.ps-studio-projects .ps-studio-filter-bar--projects button[aria-current="true"]{
  color:#173D32!important;background:#f3deac!important;border-color:#f3deac!important;
}

/* Studio lightbox: portal to body + fixed viewport guarantees it can never sit under sticky headers. */
body.ps-lightbox-open{overflow:hidden!important;}
body>.ps-lightbox--studio{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  margin:0!important;
  z-index:2147483647!important;
  isolation:isolate!important;
  background:rgba(13,8,7,.96)!important;
  backdrop-filter:blur(18px) saturate(.84)!important;
  -webkit-backdrop-filter:blur(18px) saturate(.84)!important;
  grid-template-columns:clamp(52px,5vw,82px) minmax(0,1fr) clamp(52px,5vw,82px)!important;
  padding:clamp(18px,2.4vw,34px)!important;
}
body>.ps-lightbox--studio .ps-lightbox-close{
  position:fixed!important;
  top:max(20px,env(safe-area-inset-top))!important;
  right:max(20px,env(safe-area-inset-right))!important;
  z-index:2147483647!important;
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  background:#f6efdf!important;
  color:#173D32!important;
  border:1px solid rgba(243,222,172,.58)!important;
}
body>.ps-lightbox--studio .ps-lightbox-figure{
  width:min(90vw,1680px)!important;
  height:min(90dvh,1080px)!important;
  margin:auto!important;
  padding:0!important;
}
body>.ps-lightbox--studio .ps-lightbox-figure img{
  width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;border-radius:18px!important;
}
body>.ps-lightbox--studio .ps-lightbox-nav{z-index:5!important;background:#f6efdf!important;color:#173D32!important;border-color:rgba(243,222,172,.45)!important;}

/* Instagram visual inspired by the supplied motion reference: central CTA, floating circular photos. */
.ps-studio-instagram--floating{
  position:relative!important;
  min-height:clamp(560px,58vw,760px)!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  padding:clamp(76px,9vw,132px) 24px!important;
  background:var(--ps-premium-paper,#f6efdf)!important;
  isolation:isolate!important;
}
.ps-studio-instagram__content{position:relative;z-index:4;width:min(720px,72vw);margin:auto;text-align:center;}
.ps-studio-instagram__content .ps-studio-eyebrow{color:#8c665c!important;margin-bottom:14px!important;}
.ps-studio-instagram__content h2{margin:0;color:#5D132A!important;font:700 clamp(48px,6vw,88px)/.92 var(--ps-font-display,Georgia,serif);letter-spacing:-.05em;text-wrap:balance;}
.ps-studio-instagram--floating .ps-studio-instagram__button{margin-top:28px!important;background:#5D132A!important;color:#fff!important;padding:15px 24px!important;}
.ps-studio-instagram--floating .ps-studio-instagram__button:hover,.ps-studio-instagram--floating .ps-studio-instagram__button:focus-visible{background:#f3deac!important;color:#173D32!important;}
.ps-studio-instagram__orbit{position:absolute;inset:0;z-index:2;pointer-events:none;}
.ps-studio-instagram__bubble{position:absolute;display:block;width:clamp(92px,10vw,150px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:6px solid rgba(255,255,255,.78);box-shadow:0 22px 52px rgba(62,25,17,.18);animation:psStudioFloat 7s ease-in-out infinite;will-change:transform;}
.ps-studio-instagram__bubble img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;}
.ps-studio-instagram__bubble--1{left:8%;top:19%;animation-delay:-.5s;}
.ps-studio-instagram__bubble--2{left:17%;bottom:15%;width:clamp(78px,8vw,122px);animation-delay:-2.1s;}
.ps-studio-instagram__bubble--3{left:4%;top:51%;width:clamp(74px,7.8vw,116px);animation-delay:-4.2s;}
.ps-studio-instagram__bubble--4{right:8%;top:18%;animation-delay:-1.4s;}
.ps-studio-instagram__bubble--5{right:17%;bottom:14%;width:clamp(82px,8.5vw,128px);animation-delay:-3.3s;}
.ps-studio-instagram__bubble--6{right:4%;top:51%;width:clamp(74px,7.8vw,116px);animation-delay:-5.1s;}
.ps-studio-instagram__ambient{position:absolute;inset:0;z-index:1;pointer-events:none;}
.ps-studio-instagram__spark{position:absolute;color:#5D132A;font-size:18px;animation:psStudioSpark 4.8s ease-in-out infinite;}
.ps-studio-instagram__spark--1{left:12%;top:11%;}.ps-studio-instagram__spark--2{right:14%;top:12%;animation-delay:-1.7s}.ps-studio-instagram__spark--3{left:50%;bottom:13%;animation-delay:-3.1s}
@keyframes psStudioFloat{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(0,-14px,0) rotate(1deg)}}
@keyframes psStudioSpark{0%,100%{transform:scale(.72) rotate(0);opacity:.4}50%{transform:scale(1.16) rotate(22deg);opacity:1}}

@media(max-width:900px){
  .ps-studio-home-shop__inner{grid-template-columns:1fr!important;}
  .ps-studio-home-shop__copy{max-width:760px!important;padding-top:10px!important;}
  .ps-studio-home-shop__copy h2{font-size:clamp(48px,10vw,76px)!important;}
  .ps-studio-instagram--floating{min-height:620px!important;}
  .ps-studio-instagram__content{width:min(680px,82vw);}
  .ps-studio-instagram__bubble--1{left:3%;top:12%}.ps-studio-instagram__bubble--4{right:3%;top:12%}
  .ps-studio-instagram__bubble--2{left:5%;bottom:10%}.ps-studio-instagram__bubble--5{right:5%;bottom:10%}
  .ps-studio-instagram__bubble--3,.ps-studio-instagram__bubble--6{display:none;}
}
@media(max-width:620px){
  .ps-studio-home-shop__media{grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .ps-studio-home-shop__image--2{transform:none!important;}
  .ps-studio-home-shop__copy h2{font-size:clamp(42px,13vw,62px)!important;}
  .ps-studio-project-card__copy{padding:80px 18px 17px!important;}
  .ps-studio-project-card__copy>span{display:none!important;}
  body>.ps-lightbox--studio{grid-template-columns:42px minmax(0,1fr) 42px!important;padding:68px 4px 12px!important;}
  body>.ps-lightbox--studio .ps-lightbox-close{top:12px!important;right:12px!important;}
  body>.ps-lightbox--studio .ps-lightbox-figure{width:100%!important;height:82dvh!important;}
  .ps-studio-instagram--floating{min-height:560px!important;padding:78px 12px!important;}
  .ps-studio-instagram__content{width:90vw;}
  .ps-studio-instagram__content h2{font-size:clamp(39px,12.5vw,56px)!important;}
  .ps-studio-instagram__bubble{width:82px;border-width:4px;}
  .ps-studio-instagram__bubble--1{left:2%;top:10%}.ps-studio-instagram__bubble--4{right:2%;top:10%}
  .ps-studio-instagram__bubble--2{left:3%;bottom:8%}.ps-studio-instagram__bubble--5{right:3%;bottom:8%}
}
@media(prefers-reduced-motion:reduce){.ps-studio-instagram__bubble,.ps-studio-instagram__spark{animation:none!important;}}


/* v0.5.8 — targeted visual corrections from client review.
 * 1) Home Shop uses a softer cream full-width background with dark brand copy.
 * 2) Portfolio hover copy is always white.
 * 3) Portfolio/project cards keep premium rounded frames with zero pink leakage. */
:root{
  --ps-review-paper:#f7ead0;
  --ps-review-paper-soft:#fbf2df;
  --ps-review-ink:#5D132A;
  --ps-review-ink-deep:#173D32;
  --ps-review-cream:#f3deac;
}

/* Home shop callout: light editorial field, full width; content remains boxed. */
.photographer-site.ps-studio-home-shop,
.ps-studio-home-shop{
  background:var(--ps-review-paper)!important;
  background-color:var(--ps-review-paper)!important;
  color:var(--ps-review-ink)!important;
}
.ps-studio-home-shop::before,
.ps-studio-home-shop::after{background:transparent!important;}
.ps-studio-home-shop__copy,
.ps-studio-home-shop__copy p,
.ps-studio-home-shop__copy .ps-studio-eyebrow{
  color:var(--ps-review-ink)!important;
}
.ps-studio-home-shop__copy .ps-studio-eyebrow{
  opacity:.72!important;
}
.ps-studio-home-shop__copy h2{
  color:var(--ps-review-ink-deep)!important;
  text-shadow:none!important;
}
.ps-studio-home-shop__copy>a{
  color:var(--ps-review-ink-deep)!important;
  border-color:var(--ps-review-ink-deep)!important;
}
.ps-studio-home-shop__copy>a:hover,
.ps-studio-home-shop__copy>a:focus-visible{
  color:#fff!important;
  background:var(--ps-review-ink-deep)!important;
  border-color:var(--ps-review-ink-deep)!important;
  border-radius:999px!important;
  padding:10px 15px!important;
  transform:translateY(-1px)!important;
}
.ps-studio-home-shop__image,
.ps-studio-home-shop__image--1,
.ps-studio-home-shop__image--2{
  border-color:rgba(23,61,50,.16)!important;
  box-shadow:0 26px 70px rgba(23,61,50,.10)!important;
  background:#eee3cf!important;
}

/* Portfolio overlay copy must stay white on hover/focus regardless of theme link colors. */
.ps-studio-portfolio-card__button,
.ps-studio-portfolio-card__button:link,
.ps-studio-portfolio-card__button:visited,
.ps-studio-portfolio-card__button:hover,
.ps-studio-portfolio-card__button:focus,
.ps-studio-portfolio-card__button:focus-visible,
.ps-studio-portfolio-card__button:active{
  color:#fff!important;
}
.ps-studio-portfolio-card__button>span,
.ps-studio-portfolio-card__button>span strong,
.ps-studio-portfolio-card__button>span small,
.ps-studio-portfolio-card__button:hover>span,
.ps-studio-portfolio-card__button:hover>span strong,
.ps-studio-portfolio-card__button:hover>span small,
.ps-studio-portfolio-card__button:focus-visible>span,
.ps-studio-portfolio-card__button:focus-visible>span strong,
.ps-studio-portfolio-card__button:focus-visible>span small{
  color:#fff!important;
}
.ps-studio-portfolio-card__button>span small{color:rgba(255,255,255,.78)!important;}

/* Premium frame + no default/theme pink in any card state. */
.ps-studio-portfolio-card,
.ps-studio-project-card{
  border-radius:28px!important;
  border:1px solid rgba(243,222,172,.28)!important;
  background:rgba(255,255,255,.045)!important;
  box-shadow:0 24px 68px rgba(35,5,0,.20)!important;
  overflow:hidden!important;
  outline:none!important;
}
.ps-studio-portfolio-card__button,
.ps-studio-project-card__media{
  border-radius:20px!important;
  border:1px solid rgba(243,222,172,.18)!important;
  overflow:hidden!important;
  outline:none!important;
  box-shadow:none!important;
}
.ps-studio-portfolio-card__button img,
.ps-studio-project-card__media img{
  border-radius:19px!important;
  overflow:hidden!important;
}
.ps-studio-portfolio-card:hover,
.ps-studio-portfolio-card:focus-within,
.ps-studio-project-card:hover,
.ps-studio-project-card:focus-within{
  border-color:rgba(243,222,172,.58)!important;
  outline:none!important;
  box-shadow:0 28px 78px rgba(35,5,0,.25)!important;
}
.ps-studio-portfolio-card__button:hover,
.ps-studio-portfolio-card__button:focus,
.ps-studio-portfolio-card__button:focus-visible,
.ps-studio-portfolio-card__button:active,
.ps-studio-project-card__media:hover,
.ps-studio-project-card__media:focus,
.ps-studio-project-card__media:focus-visible,
.ps-studio-project-card__media:active{
  border-color:rgba(243,222,172,.50)!important;
  outline:none!important;
  box-shadow:none!important;
}

/* Filter chips: brand-safe in default, hover, active and keyboard states. */
.ps-studio-filter-bar button,
.ps-studio-filter-bar button:hover,
.ps-studio-filter-bar button:focus,
.ps-studio-filter-bar button:focus-visible,
.ps-studio-filter-bar button:active,
.ps-studio-filter-bar button[aria-current="true"],
.ps-studio-filter-bar button.is-active,
.ps-studio-portfolio .ps-studio-filter-bar button,
.ps-studio-projects .ps-studio-filter-bar button{
  accent-color:var(--ps-review-ink)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.ps-studio-portfolio .ps-studio-filter-bar button,
.ps-studio-projects .ps-studio-filter-bar button{
  color:rgba(243,222,172,.84)!important;
  background:transparent!important;
  border-color:transparent!important;
}
.ps-studio-portfolio .ps-studio-filter-bar button:hover,
.ps-studio-portfolio .ps-studio-filter-bar button:focus-visible,
.ps-studio-portfolio .ps-studio-filter-bar button[aria-current="true"],
.ps-studio-projects .ps-studio-filter-bar button:hover,
.ps-studio-projects .ps-studio-filter-bar button:focus-visible,
.ps-studio-projects .ps-studio-filter-bar button[aria-current="true"]{
  color:var(--ps-review-ink-deep)!important;
  background:var(--ps-review-cream)!important;
  background-color:var(--ps-review-cream)!important;
  border-color:var(--ps-review-cream)!important;
  outline:none!important;
}

@media(max-width:767px){
  .ps-studio-home-shop{background:var(--ps-review-paper-soft)!important;}
  .ps-studio-home-shop__copy h2{font-size:clamp(42px,13vw,62px)!important;}
}

/* v0.5.10 — compact cards; photos always fill their frames on every device. */
@media(min-width:901px){
  .photographer-site .ps-studio-project-grid,
  .photographer-site .ps-studio-portfolio-grid,
  .ps-gallery--sellable .ps-gallery-grid,
  .ps-gallery--gallery-only .ps-gallery-grid,
  .photographer-site .ps-studio-project-gallery,
  .photographer-site .ps-studio-portfolio-single__grid{
    width:min(1040px,88%)!important;
    max-width:1040px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .photographer-site .ps-studio-home-shop__media{
    width:88%!important;
    justify-self:center;
  }
  .ps-single-photo--editorial .ps-single-photo-editorial-viewer{
    width:min(1040px,88%)!important;
    max-width:1040px!important;
  }
  .photographer-site .ps-studio-project-hero{
    max-width:1200px!important;
  }

  .photographer-site .ps-studio-project-card__media:hover img,
  .photographer-site .ps-studio-portfolio-card__button:hover img,
  .photographer-site .ps-studio-home-shop__image:hover img,
  .photographer-site .ps-photo-card-link:hover img{
    transform:none!important;
  }
}

/* A sized frame plus an inset image prevents letterboxing for mixed photo ratios.
 * These rules apply to cards and purchase-page media, never the fullscreen viewer. */
.photographer-site .ps-studio-project-card__media,
.photographer-site .ps-studio-portfolio-card__button,
.photographer-site.ps-gallery .ps-photo-card .ps-photo-card-media,
.photographer-site .ps-related-grid .ps-photo-card-media,
.photographer-site .ps-studio-project-hero__image,
.photographer-site .ps-studio-project-gallery__item,
.photographer-site .ps-studio-portfolio-single__grid figure{
  position:relative!important;
  display:block!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/5!important;
  overflow:hidden!important;
}
.photographer-site.ps-gallery--gallery-only .ps-photo-card:nth-child(3n+2) .ps-photo-card-media,
.photographer-site.ps-gallery--mixed .ps-photo-card:nth-child(3n+2) .ps-photo-card-media{
  aspect-ratio:3/2!important;
}
.photographer-site .ps-studio-home-shop__image{
  position:relative!important;
  overflow:hidden!important;
}
.photographer-site .ps-studio-project-gallery__item .ps-studio-image-button,
.photographer-site .ps-studio-portfolio-single__grid figure .ps-studio-image-button,
.ps-single-photo--editorial .ps-product-viewer__slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}
.photographer-site .ps-studio-project-hero__image{
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
/* Theme button sizing must not shrink an absolute-image card to a thumbnail. */
.photographer-site .ps-studio-project-card__media,
.photographer-site .ps-studio-portfolio-card__button{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
  padding:0!important;
}
.photographer-site .ps-studio-portfolio-card__button{
  appearance:none!important;
}
.ps-single-photo--editorial .ps-product-viewer__stage{
  min-height:0!important;
}
.photographer-site .ps-studio-project-card .ps-studio-project-card__media img,
.photographer-site .ps-studio-portfolio-card .ps-studio-portfolio-card__button img,
.photographer-site .ps-studio-home-shop__image img,
.photographer-site .ps-studio-project-hero__image img,
.photographer-site .ps-studio-project-gallery__item img,
.photographer-site .ps-studio-portfolio-single__grid img,
.photographer-site.ps-gallery .ps-photo-card .ps-photo-card-media img,
.photographer-site .ps-related-grid .ps-photo-card-media img,
.ps-single-photo--editorial .ps-product-viewer__slide .ps-single-photo-preview{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* v0.5.11 — a smaller, readable single-project title. */
.photographer-site .ps-studio-project-hero__copy h1{
  font-size:clamp(34px,4.2vw,62px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
  overflow-wrap:anywhere;
}

/* Section-specific gradients retain the client's green/burgundy palette.
 * Only surface colors change; section structure, typography and controls stay intact. */
.photographer-site.ps-studio-projects{
  background:radial-gradient(ellipse at 8% 0%,rgba(47,97,75,.42),transparent 58%),linear-gradient(135deg,#32131F 0%,#5D132A 54%,#243C31 100%)!important;
}
.photographer-site.ps-studio-projects--home{
  background:radial-gradient(ellipse at 100% 0%,rgba(93,19,42,.28),transparent 56%),linear-gradient(140deg,#12382F 0%,#245348 52%,#163C32 100%)!important;
}
.photographer-site.ps-studio-portfolio{
  background:radial-gradient(ellipse at 0% 100%,rgba(40,87,69,.40),transparent 58%),linear-gradient(135deg,#3F1728 0%,#5D132A 46%,#193C33 100%)!important;
  box-shadow:none!important;
}
.photographer-site.ps-studio-home-shop{
  background:radial-gradient(ellipse at 10% 20%,rgba(23,61,50,.08),transparent 52%),linear-gradient(115deg,#FAF1E4 0%,#ECEEE0 58%,#F4E0DA 100%)!important;
}
.photographer-site.ps-studio-instagram--floating{
  background:radial-gradient(ellipse at 80% 15%,rgba(93,19,42,.07),transparent 50%),linear-gradient(145deg,#F9F4E8 0%,#EFE4DF 48%,#E6EDE4 100%)!important;
}
.photographer-site.ps-gallery--sellable{
  background:radial-gradient(ellipse at 0% 0%,rgba(93,19,42,.065),transparent 42%),linear-gradient(160deg,#F8F0E1 0%,#F1EADB 48%,#E8EDE2 100%)!important;
}
.photographer-site.ps-studio-project-single{
  background:linear-gradient(145deg,#FAF2E5 0%,#EAEDE0 58%,#F4E5DC 100%)!important;
}
.photographer-site .ps-studio-project-hero{
  background:linear-gradient(120deg,#FFFAF0 0%,#EDF0E5 100%)!important;
}
.photographer-site .ps-studio-project-gallery-wrap{
  background:radial-gradient(ellipse at 100% 0%,rgba(93,19,42,.38),transparent 60%),linear-gradient(135deg,#102F27 0%,#245046 52%,#3B1828 100%)!important;
}
.photographer-site.ps-studio-portfolio-single{
  background:linear-gradient(150deg,#391321 0%,#5D132A 40%,#193E32 100%)!important;
}
.photographer-site .ps-studio-portfolio-single__copy{
  background:linear-gradient(120deg,rgba(23,61,50,.78),rgba(93,19,42,.76))!important;
}
.photographer-site.ps-single-photo--editorial{
  background:linear-gradient(145deg,#FAF1E4 0%,#F0E8DA 52%,#E6ECE0 100%)!important;
}
.ps-single-photo--editorial .ps-product-viewer{
  background:linear-gradient(125deg,#FFFAF2 0%,#F0EFDF 100%)!important;
}
.ps-single-photo--editorial .ps-single-photo-editorial-details{
  background:linear-gradient(120deg,#F8F6EC 0%,#E5EBDF 100%)!important;
}
.ps-single-photo--editorial .ps-related-photos{
  background:linear-gradient(130deg,#EEE3D7 0%,#E5EADB 100%)!important;
}
