
/* Fix double navigation and excessive empty space in the session editor */
body.spr-root main.szt-gallery-shell{align-content:start!important;grid-template-rows:auto auto!important;row-gap:0!important;min-height:0!important}
body.spr-root main.szt-gallery-shell>.szt-primary-nav,body.spr-root main.szt-gallery-shell>.zgd-sidebar{display:none!important}
body.spr-root main.szt-gallery-shell>.szt-gallery-sidebar{grid-column:1!important;grid-row:1 / span 2!important;align-self:start!important;max-height:calc(100dvh - 34px);overflow:auto;scrollbar-width:thin}
body.spr-root main.szt-gallery-shell>.szt-wizard-heading{grid-column:2!important;grid-row:1!important;margin:0 0 17px!important}
body.spr-root main.szt-gallery-shell>.szt-step-panel{grid-column:2!important;grid-row:2!important;align-self:start!important;margin:0!important}
body.spr-root main.szt-gallery-shell.zgd-shell{grid-template-columns:230px minmax(0,1fr)!important}
body.spr-root .zgs-save-notice{padding:12px 15px;border-radius:8px;background:#23382c;border:1px solid #73977e;color:#e0f3e1;margin:0 0 15px;font-size:13px}
@media(min-width:721px) and (max-width:950px){body.spr-root main.szt-gallery-shell.zgd-shell{grid-template-columns:190px minmax(0,1fr)!important}}
@media(max-width:720px){body.spr-root main.szt-gallery-shell{display:flex!important;flex-direction:column!important}body.spr-root main.szt-gallery-shell>.szt-gallery-sidebar{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important;width:100%!important}body.spr-root main.szt-gallery-shell>.szt-wizard-heading,body.spr-root main.szt-gallery-shell>.szt-step-panel{width:100%!important}}
/* All customer banners, counters and UI controls inherit the selected template */
body.spr-root.zgs-client:not(.zgs-template-classic) :is(.spr-view-controls,.spr-client-help,.spr-success,.spr-status,.spr-sticky,.spr-selected-panel,.szt-client-folder-tabs,.spr-filters,.spr-stat-grid>div,.spr-cost,.spr-finish,.spr-client .spr-stat-grid>div){background:var(--zg-panel)!important;border-color:var(--zg-edge)!important;color:var(--zg-text)!important;box-shadow:none!important}
body.spr-root.zgs-client:not(.zgs-template-classic) :is(.spr-client-help,.spr-client-help p,.spr-client-help span,.spr-client-help strong,.spr-client-help h2,.spr-client-help h3,.spr-status,.spr-cost,.spr-finish-summary span,.spr-stat-grid strong,.spr-stat-grid span,.spr-client .spr-stat-grid strong,.spr-client .spr-stat-grid span){color:var(--zg-text)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) :is(.spr-hint,.spr-kicker,.spr-photo-info>span,.spr-client-help p,.spr-client-help span,.spr-stat-grid span,.spr-client .spr-stat-grid span){color:var(--zg-muted)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) :is(.spr-view-controls select,.spr-client-help input,.spr-client-help select,.spr-submit-form textarea,.spr-submit-form input,.spr-photo-note textarea,.spr-lightbox-side textarea,.szt-client-folder-tabs button,.spr-filter,.spr-photo-info,.spr-image-open,.spr-photo-note){background:var(--zg-panel)!important;color:var(--zg-text)!important;border-color:var(--zg-edge)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) :is(.szt-client-folder-tabs button.active,.spr-filter.active,.spr-pick.selected,.spr-button,.spr-submit-form button[type=submit]){background:var(--zg-accent)!important;color:var(--zg-on)!important;border-color:var(--zg-accent)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) .spr-client .spr-stat-grid>div{border-radius:var(--zg-radius)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) .spr-client .spr-stat-grid :is(svg,i){color:var(--zg-accent)!important;stroke:var(--zg-accent)!important}
body.spr-root.zgs-client:not(.zgs-template-classic) .spr-view-controls:has([data-set-theme],[data-set-layout]){display:none!important}
/* Cover photo and editorial introduction use real previews from each private gallery */
body.spr-root.zgs-client:not(.zgs-template-classic) .zgs-hero{position:relative;isolation:isolate;overflow:hidden;margin:5px 0 24px;min-height:410px;border:1px solid var(--zg-edge);border-radius:var(--zg-radius);background:var(--zg-panel);color:var(--zg-text);display:flex;align-items:center}
body.spr-root.zgs-client .zgs-hero-photo{position:absolute;z-index:-1;inset:0;overflow:hidden}
body.spr-root.zgs-client .zgs-hero-photo img{height:100%;width:100%;object-fit:cover;display:block;filter:brightness(.43) saturate(.76)}
body.spr-root.zgs-client .zgs-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090807dd,#08070620)}
body.spr-root.zgs-client .zgs-hero-copy{padding:clamp(27px,5vw,75px);max-width:720px}
body.spr-root.zgs-client .zgs-hero-eyebrow{font:600 11px/1.5 Arial,sans-serif;letter-spacing:.27em;text-transform:uppercase;color:var(--zg-accent)}
body.spr-root.zgs-client .zgs-hero-title{font:400 clamp(37px,5.2vw,78px)/1.09 Georgia,serif;letter-spacing:-.035em;color:#fff9ed!important;margin:17px 0 20px;text-wrap:balance;overflow-wrap:anywhere}
body.spr-root.zgs-client .zgs-hero-subtitle{font-size:clamp(14px,1.3vw,18px);line-height:1.7;color:#f3e9df;max-width:490px;margin:0 0 26px}
body.spr-root.zgs-client .zgs-hero-jump{display:inline-flex;align-items:center;color:#fff;border:1px solid #ffffff90;padding:12px 20px;border-radius:4px;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.05em}
body.spr-root.zgs-client .zgs-section-heading{display:flex;align-items:center;gap:20px;justify-content:center;text-align:center;color:var(--zg-text);font:400 27px/1.3 Georgia,serif;margin:43px 0 24px;letter-spacing:.04em}
body.spr-root.zgs-client .zgs-section-heading:before,body.spr-root.zgs-client .zgs-section-heading:after{content:"";display:block;flex:1;max-width:125px;height:1px;background:var(--zg-accent);opacity:.55}
body.spr-root.zgs-client:not(.zgs-template-classic) .spr-client>.spr-heading h1{display:none!important}
body.spr-root.zgs-client:not(.zgs-template-classic) .spr-client>.spr-heading{margin-bottom:17px!important}
/* Wedding Atelier - luxurious full-width cover and varied photo rhythm */
body.spr-root.zgs-client.zgs-template-wedding{--zg-bg:#f2ede5;--zg-panel:#fffdf8;--zg-text:#403931;--zg-muted:#80766a;--zg-edge:#d8cbb9;--zg-accent:#a7885c;--zg-on:#fff;--zg-head:#f7f2e9;--zg-radius:1px;--zg-gap:17px;color-scheme:light!important}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero{min-height:min(77vh,740px);border:9px solid #fffdf8;border-radius:0!important;box-shadow:0 14px 42px #483e311f!important;justify-content:center;text-align:center}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-photo img{filter:brightness(.57) saturate(.78);object-position:center 40%}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-shade{background:linear-gradient(180deg,#241c181c,#17130e3e 55%,#100d0b79)}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-copy{max-width:820px}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-eyebrow{color:#fbefd7;letter-spacing:.37em}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-title{font-family:Georgia,serif;font-size:clamp(47px,7vw,102px);font-weight:400;font-style:italic;margin:23px 0 27px}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-subtitle{margin:0 auto 32px;color:#fff8ee}
body.spr-root.zgs-client.zgs-template-wedding .zgs-hero-jump{border-color:#e9d4bc;background:#ffffff1d}
body.spr-root.zgs-client.zgs-template-wedding .spr-client{max-width:1480px}
body.spr-root.zgs-client.zgs-template-wedding .spr-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
body.spr-root.zgs-client.zgs-template-wedding .spr-photo{grid-column:span 2;border:0!important;box-shadow:0 9px 26px #5e51461c!important}
body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(7n+1){grid-column:span 4}
body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(7n+5),body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(7n+6){grid-column:span 3}
body.spr-root.zgs-client.zgs-template-wedding .spr-image-open img{aspect-ratio:4/5;max-height:650px;object-fit:contain}
body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(7n+1) .spr-image-open img{aspect-ratio:1.35;max-height:710px}
body.spr-root.zgs-client.zgs-template-wedding .zgs-section-heading{font-size:clamp(27px,3vw,39px);font-style:italic;margin-top:62px}
body.spr-root.zgs-client.zgs-template-wedding .spr-sticky{border-bottom:2px solid var(--zg-accent)!important}
/* Independent content layouts for remaining presets */
body.spr-root.zgs-client.zgs-template-studio .zgs-hero,body.spr-root.zgs-client.zgs-template-blush .zgs-hero{min-height:425px;flex-direction:row-reverse;justify-content:space-between;background:var(--zg-panel)}
body.spr-root.zgs-client.zgs-template-editorial .zgs-hero{min-height:520px;background:var(--zg-panel);flex-direction:row}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-photo,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-photo,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-photo{position:relative;z-index:0;width:52%;align-self:stretch;flex-shrink:0}
body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-photo{order:2;width:55%}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-photo img,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-photo img,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-photo img{filter:none}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-shade,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-shade,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-shade{display:none}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-copy,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-copy,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-copy{flex:1;padding:35px}
body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-copy{order:1}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-title,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-title,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-title{color:var(--zg-text)!important}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-title{font:300 clamp(39px,4vw,62px)/1.1 Arial,sans-serif}
body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-title,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-title{font-style:italic}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-subtitle,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-subtitle,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-subtitle{color:var(--zg-muted)}
body.spr-root.zgs-client.zgs-template-studio .zgs-hero-jump,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-jump,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-jump{color:var(--zg-text);border-color:var(--zg-edge)}
body.spr-root.zgs-client.zgs-template-studio .spr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.spr-root.zgs-client.zgs-template-blush .zgs-hero-photo{transform:rotate(2deg) scale(.96);box-shadow:0 8px 26px #0003}
body.spr-root.zgs-client.zgs-template-cinema .zgs-hero{min-height:500px;border:0}
body.spr-root.zgs-client.zgs-template-cinema .zgs-hero-title{font:bold clamp(38px,5vw,79px)/1.05 Arial,sans-serif;text-transform:uppercase;letter-spacing:.045em}
body.spr-root.zgs-client.zgs-template-cinema .zgs-section-heading{font:bold 23px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero{min-height:310px;border-radius:20px;background:var(--zg-panel)}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-photo{left:auto;width:36%}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-photo img{filter:none}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-shade{display:none}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-copy{max-width:64%;padding:29px}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-title{font:600 clamp(32px,3.5vw,54px)/1.08 Arial,sans-serif;color:var(--zg-text)!important}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-subtitle{color:var(--zg-muted)}
body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-jump{color:var(--zg-text);border-color:var(--zg-edge)}
@media(max-width:850px){body.spr-root.zgs-client.zgs-template-wedding .spr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(n){grid-column:span 1}body.spr-root.zgs-client.zgs-template-wedding .spr-photo:nth-child(7n+1){grid-column:span 2}}
@media(max-width:660px){
 body.spr-root.zgs-client:not(.zgs-template-classic) .zgs-hero{min-height:350px;margin:0 0 19px}
 body.spr-root.zgs-client.zgs-template-wedding .zgs-hero{min-height:60vh;border-width:5px}
 body.spr-root.zgs-client .zgs-hero-copy{padding:22px!important}
 body.spr-root.zgs-client .zgs-hero-title{font-size:clamp(31px,8vw,52px)!important}
 body.spr-root.zgs-client.zgs-template-studio .zgs-hero,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero,body.spr-root.zgs-client.zgs-template-blush .zgs-hero{flex-direction:column}
 body.spr-root.zgs-client.zgs-template-studio .zgs-hero-photo,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-photo,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-photo{width:100%;height:220px;min-height:220px;transform:none;order:0}
 body.spr-root.zgs-client.zgs-template-studio .zgs-hero-copy,body.spr-root.zgs-client.zgs-template-editorial .zgs-hero-copy,body.spr-root.zgs-client.zgs-template-blush .zgs-hero-copy{max-width:100%;order:1}
 body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-photo{opacity:.17;width:75%}
 body.spr-root.zgs-client.zgs-template-ocean .zgs-hero-copy{max-width:100%}
}


body.spr-root .zgs-cover-settings{padding:19px;margin:21px 0 14px;border:1px solid #65523c;border-radius:9px;background:#221d18}
body.spr-root .zgs-cover-settings h3{font:400 21px/1.3 Georgia,serif;color:#f4e3cb;margin:0 0 8px}
body.spr-root .zgs-cover-settings p{font-size:12px;color:#c5b5a1;margin:0 0 15px;line-height:1.6}
body.spr-root .zgs-cover-form{display:flex;flex-wrap:wrap;gap:13px;align-items:end}
body.spr-root .zgs-cover-form label{flex:1;min-width:200px;display:flex;flex-direction:column;gap:7px;color:#e9ddce;font-size:12px}
body.spr-root .zgs-cover-form select{width:100%;background:#16130f;border:1px solid #655443;color:#fff5e7;border-radius:6px;min-height:42px;padding:8px}
body.spr-root .zgs-cover-form button{min-height:42px}
@media(max-width:650px){body.spr-root .zgs-cover-form{flex-direction:column;align-items:stretch}body.spr-root .zgs-cover-form label{width:100%;min-width:0}}
