:root{
  --bg:#f5f2eb;--ink:#151515;--muted:#69645c;--accent:#c8ff3d;--panel:#fff;
  --line:#ded8cd;--danger:#a73333;--success:#2e6c3f;--success-bg:#e8f6eb;--soft:#ebe6dc;
  --shadow:0 24px 70px rgba(0,0,0,.24)
}
*{box-sizing:border-box}
html{scroll-behavior:auto;scrollbar-gutter:stable}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
button,input,select{font:inherit}
button{appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:.75rem 1rem;font-weight:800;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button:hover:not(:disabled){border-color:#aaa39a}
button:disabled{opacity:.38;cursor:not-allowed;pointer-events:none}
button:focus{outline:none}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #1677ff;outline-offset:2px}
.modal-panel:focus,.lightbox-panel:focus{outline:none}
button:active:not(:disabled){transform:none}
input,select{width:100%;border:1px solid var(--line);border-radius:13px;padding:.85rem .95rem;background:#fff;color:var(--ink);font-weight:650}
label{font-size:.82rem;color:var(--muted);font-weight:800}
label input,label select{margin-top:.42rem}
a{color:inherit}
.hidden{display:none!important}
.primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.primary-small{background:var(--ink);color:#fff;border-color:var(--ink);padding:.65rem .92rem}
.secondary{background:#fff}
.ghost{background:transparent;border-color:var(--ink)}
.compact{padding:.58rem .85rem}
.full-width{width:100%}
.text-button{border:0;padding:0;background:transparent;text-decoration:underline;border-radius:0}
.icon{width:44px;height:44px;padding:0;display:grid;place-items:center;border:0;background:var(--soft);font-size:1.65rem;line-height:1}
.subtle{margin:.25rem 0 0;color:var(--muted);font-size:.9rem}
.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.15rem 4.5vw;border-bottom:1px solid var(--line);background:rgba(245,242,235,.94);backdrop-filter:blur(12px)}
.brand{font-weight:950;letter-spacing:.08em;text-decoration:none;font-size:1.2rem}.brand span{background:var(--accent);padding:.04em .18em;border-radius:3px}
.topbar nav{display:flex;align-items:center;gap:1.5rem}.topbar nav>a{text-decoration:none}
.hero{min-height:78vh;padding:16vh 7.5vw 8vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.eyebrow,.section-kicker,.dialog-head small{font-size:.72rem;font-weight:900;letter-spacing:.18em;color:var(--muted)}
.hero h1,.client-header h1{font-size:clamp(3rem,8vw,7.4rem);line-height:.86;letter-spacing:-.065em;margin:1.7rem 0}
.hero p{max-width:850px;font-size:clamp(1rem,1.7vw,1.35rem);line-height:1.55;color:var(--muted)}
.actions{display:flex;align-items:center;gap:1.2rem;margin:1.7rem 0}.text-link{font-weight:800}
.hero-card{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;width:min(850px,100%);margin-top:1.4rem}
.hero-card>div{padding:1.4rem;border-right:1px solid var(--line);display:flex;flex-direction:column}.hero-card>div:last-child{border-right:0}.hero-card strong{font-size:1.8rem}.hero-card span{color:var(--muted)}
.section{padding:7rem 7.5vw}.section h2{font-size:clamp(2.2rem,5vw,5rem);letter-spacing:-.05em;margin:.7rem 0 2.5rem}.section.dark{background:#171717;color:#fff}.section.dark .section-kicker,.section.dark p{color:#bfbab1}
.grid{display:grid;gap:1rem}.grid.three{grid-template-columns:repeat(3,1fr)}.grid article{border:1px solid var(--line);border-radius:22px;padding:1.5rem;background:#fff;color:var(--ink)}.grid article b{font-size:1.6rem}.grid article h3{font-size:1.35rem}.grid article p{color:var(--muted)}
.pricing article h3{font-size:2.4rem;margin:.55rem 0}.pricing article h3 span{font-size:1rem;color:var(--muted)}.pricing .featured{outline:3px solid var(--accent)}.referral{text-align:center;margin-top:2rem}
.client-view{min-height:100vh}.client-shell{max-width:1500px;margin:0 auto;padding:2.2rem 3.5vw 5rem}.client-brand-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4rem}.privacy-pill{border:1px solid var(--line);border-radius:999px;padding:.55rem .85rem;font-weight:800;background:#fff}
.client-header{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.client-header h1{font-size:clamp(3rem,7vw,6rem);margin:.8rem 0}.client-header p{font-size:1.08rem;color:var(--muted)}
.rule-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:2rem 0 1rem}.rule-card{border:1px solid var(--line);border-radius:18px;padding:1rem;background:#fff;display:flex;flex-direction:column}.rule-card strong{font-size:1.25rem}.rule-card span{color:var(--muted)}.rule-card.disabled{opacity:.42}
.stats{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.stats span,.tag{display:inline-flex;align-items:center;border-radius:999px;padding:.48rem .72rem;background:var(--soft);font-size:.82rem}.stats .limit-full{background:#fff1cd;border:1px solid #edc45b}.stats .complete,.tag.done{background:var(--success-bg);color:var(--success)}
.sticky-stats{position:sticky;top:1rem;z-index:8;background:rgba(245,242,235,.93);border:1px solid var(--line);border-radius:18px;padding:.7rem;backdrop-filter:blur(10px)}
.success-banner{border:1px solid #9ccba6;background:var(--success-bg);color:var(--success);font-weight:850;border-radius:16px;padding:1rem 1.1rem;margin:1rem 0}
.workspace-loader,.modal-layer{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(0,0,0,.56);padding:2vw}
.workspace-loader{z-index:75}.workspace-loader-card{background:#fff;border-radius:18px;padding:1.2rem 1.5rem;display:flex;align-items:center;gap:.8rem;box-shadow:var(--shadow)}
.spinner{width:20px;height:20px;border:3px solid #ddd;border-top-color:#111;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.modal-layer{overflow:hidden}.nested-layer{z-index:90}.top-layer{z-index:110}.modal-panel{width:min(1120px,96vw);max-height:94vh;overflow:auto;overscroll-behavior:contain;background:var(--bg);border-radius:28px;padding:1.8rem;box-shadow:var(--shadow)}
.login-panel,.confirm-panel{width:min(520px,94vw)}.edit-project-panel{width:min(980px,96vw)}.upload-panel{width:min(850px,94vw)}.gallery-panel{width:min(1450px,98vw)}.dashboard-panel{width:min(1200px,98vw);height:94vh;max-height:94vh;overflow:auto}
.dialog-head{position:sticky;top:-1.8rem;z-index:6;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.8rem 0 1rem;background:linear-gradient(var(--bg) 80%,rgba(245,242,235,0))}.dialog-head h2{font-size:2.2rem;letter-spacing:-.04em;margin:.25rem 0}.dialog-head-actions{display:flex;align-items:center;gap:.5rem}
.login-help{color:var(--muted);line-height:1.5}.login-form{display:grid;gap:1rem}.notice{color:var(--danger);font-weight:750;margin-top:.7rem}
.create-panel,.project{border:1px solid var(--line);background:#fff;border-radius:22px;padding:1.3rem}.create-panel summary{font-weight:900;cursor:pointer}.project-form{margin-top:1rem}.form-grid{display:grid;gap:.8rem}.three-fields,.watermark-fields{grid-template-columns:repeat(3,1fr)}.form-section-title{font-weight:900;margin-top:1.35rem}.form-help{color:var(--muted);margin:.35rem 0 1rem}.limit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.limit-card{border:1px solid var(--line);border-radius:18px;padding:.9rem}.limit-card span{display:block;color:var(--ink);font-size:1rem}.limit-card small{display:block;margin-top:.45rem}.checkbox-label{display:flex;align-items:center;gap:.65rem;border:1px solid var(--line);border-radius:15px;padding:.9rem;margin:1rem 0}.checkbox-label input{width:auto;margin:0}
.projects{display:grid;gap:1rem;margin-top:1rem;min-height:420px}.project h3{font-size:1.55rem;margin:.1rem 0}.project p{color:var(--muted);margin:.25rem 0}.project-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.7rem}.project-actions,.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:1rem}.rounds{margin-top:1rem;border-top:1px solid var(--line);padding-top:.8rem}.round-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px dashed var(--line)}.round-row:last-child{border-bottom:0}.round-info{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.round-info strong{min-width:74px}.round-actions{display:flex;flex-wrap:wrap;gap:.45rem}.new-round-note{font-size:.82rem;color:var(--muted);margin-top:.6rem}
.share-control{position:relative;display:inline-flex}.share-menu{position:absolute;left:0;top:calc(100% + .45rem);z-index:30;min-width:190px;padding:.45rem;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 34px rgba(0,0,0,.18)}.share-menu button{display:block;width:100%;text-align:left;border:0;border-radius:9px;padding:.65rem .75rem}.share-menu button:hover{background:var(--soft)}
.upload-guidance{border:1px solid #e9cf78;background:#fff8dc;border-radius:15px;padding:1rem;color:#665527;line-height:1.5}.drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:190px;border:2px dashed #bfb7aa;border-radius:20px;margin:1rem 0;background:#fff;color:var(--ink);cursor:pointer}.drop-zone strong{font-size:1.35rem}.drop-zone span,.drop-zone small{color:var(--muted)}.drop-zone.dragover{border-color:#111;background:#faf8f2}.upload-summary{display:flex;justify-content:space-between}.progress-track{height:9px;background:#ddd8ce;border-radius:999px;overflow:hidden;margin:.8rem 0}.progress-track>div{height:100%;width:0;background:var(--ink);transition:width .2s}.upload-status{color:var(--muted);margin:.5rem 0}.upload-queue{max-height:240px;overflow:auto;margin:.6rem 0}.queue-item{display:flex;justify-content:space-between;gap:1rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:11px;background:#fff;margin:.35rem 0}.queue-item span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.photo{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;position:relative}.photo-media{position:relative;aspect-ratio:4/3;background:#ddd;overflow:hidden}.photo-media.client-clickable{cursor:zoom-in}.photo-media img{width:100%;height:100%;object-fit:cover;display:block;user-select:none}.photo-body{padding:.8rem}.photo-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stars{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:.65rem}.stars button{padding:.62rem}.stars button.active{background:var(--accent);border-color:#8cc300}.stars button.level-disabled{display:none}.photo-lock{position:absolute;right:.55rem;top:.55rem;background:rgba(20,20,20,.72);color:#fff;padding:.25rem .5rem;border-radius:999px;font-size:.72rem}.watermark{position:absolute;pointer-events:none;display:flex}.watermark span{display:inline-block;color:#fff;background:rgba(0,0,0,.18);border-radius:8px;text-shadow:0 1px 4px rgba(0,0,0,.65);font-weight:900;letter-spacing:.14em;white-space:nowrap}.watermark-minimal span{font-size:.62rem;padding:.25rem .42rem;opacity:.35}.watermark-standard span{font-size:.72rem;padding:.3rem .5rem;opacity:.5}.watermark-strong span{font-size:.88rem;padding:.45rem .65rem;opacity:.7}.watermark-center{inset:0;align-items:center;justify-content:center}.watermark-lower-left{left:.6rem;bottom:.6rem}.watermark-lower-right{right:.6rem;bottom:.6rem}.photo-selection-tools{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.65rem}.selection-state{font-size:.82rem;border-radius:999px;background:var(--soft);padding:.4rem .6rem}.selection-state.selected{background:#efffd0}.remove-photo{border-color:#e1b3b3;color:var(--danger);padding:.48rem .65rem}.photo-check{position:absolute;left:.55rem;top:.55rem;z-index:3;width:22px;height:22px;accent-color:#111}.photo.saving{opacity:.72}
.empty-state{border:1px dashed var(--line);border-radius:18px;padding:2rem;text-align:center;color:var(--muted)}
.confirm-body{color:var(--muted);line-height:1.55}.confirm-body ul{padding-left:1.2rem}.confirm-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1.4rem}
.toast{position:fixed;left:50%;bottom:1.4rem;z-index:160;transform:translate(-50%,25px);opacity:0;pointer-events:none;background:#171717;color:#fff;padding:.8rem 1rem;border-radius:999px;font-weight:800;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}
.lightbox-layer{padding:0;background:rgba(0,0,0,.92)}.lightbox-panel{width:100vw;height:100vh;display:grid;grid-template-rows:auto 1fr auto;position:relative;color:#fff;overflow:hidden;overscroll-behavior:contain}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;padding:1rem;z-index:4}.lightbox-close{background:rgba(255,255,255,.15);color:#fff}.lightbox-zoom{display:flex;gap:.4rem}.lightbox-zoom button{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.25);padding:.55rem .8rem}.lightbox-stage{position:relative;overflow:auto;display:grid;place-items:center;padding:1rem 5rem;touch-action:pinch-zoom}.lightbox-stage img{max-width:90vw;max-height:72vh;object-fit:contain;transform-origin:center;transition:transform .12s;user-select:none}.lightbox-stage .watermark{z-index:2}.lightbox-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 5rem 1.3rem;background:linear-gradient(transparent,rgba(0,0,0,.8))}.lightbox-footer .stars{width:min(420px,60vw);margin:0}.lightbox-footer .stars button{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.25)}.lightbox-footer .stars button.active{background:var(--accent);color:#111}.lightbox-nav{position:absolute;top:50%;z-index:5;width:48px;height:48px;padding:0;background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.25);font-size:2rem}.lightbox-nav.previous{left:1rem}.lightbox-nav.next{right:1rem}
@media(max-width:900px){
  .topbar{padding:1rem 4vw}.topbar nav>a{display:none}.hero{padding:12vh 5vw 6vh}.section{padding:5rem 5vw}.grid.three,.hero-card,.rule-strip,.three-fields,.watermark-fields,.limit-grid,.gallery{grid-template-columns:1fr}.hero-card>div{border-right:0;border-bottom:1px solid var(--line)}.hero-card>div:last-child{border-bottom:0}.client-header{align-items:flex-start;flex-direction:column}.client-header .primary{align-self:stretch}.client-shell{padding:1.2rem 3vw 3rem}.client-brand-row{margin-bottom:2rem}.modal-layer{padding:.5rem}.modal-panel{width:100%;max-height:98vh;border-radius:20px;padding:1rem}.dashboard-panel{height:calc(100dvh - 1rem);max-height:calc(100dvh - 1rem)}.dialog-head{top:-1rem;padding:1rem 0}.dialog-head h2{font-size:1.8rem}.round-row{align-items:flex-start;flex-direction:column}.round-actions{width:100%}.round-actions button,.round-actions .share-control{flex:1}.round-actions .share-control>button{width:100%}.lightbox-stage{padding:1rem 2.5rem}.lightbox-footer{padding:1rem;flex-direction:column;align-items:stretch}.lightbox-footer .stars{width:100%}.lightbox-nav.previous{left:.25rem}.lightbox-nav.next{right:.25rem}
}
@media(max-width:560px){.project-actions button,.project-actions .share-control{width:100%}.project-actions .share-control>button{width:100%}.actions{align-items:stretch;flex-direction:column}.topbar nav{gap:.4rem}.ghost{padding:.65rem .8rem}.client-header h1{font-size:3.3rem}.gallery{gap:.75rem}}
.lightbox-image-wrap{position:relative;display:inline-block;transform-origin:center;transition:transform .12s}
.lightbox-image-wrap img{display:block;max-width:90vw;max-height:72vh;object-fit:contain}
.danger-button{background:var(--danger);border-color:var(--danger);color:#fff}

.project-skeleton{border:1px solid var(--line);background:#fff;border-radius:22px;padding:1.3rem;min-height:185px;display:grid;align-content:start;gap:.75rem}.project-skeleton span{display:block;height:18px;border-radius:999px;background:linear-gradient(90deg,#eee9df 25%,#faf8f2 50%,#eee9df 75%);background-size:200% 100%;animation:skeleton 1.1s linear infinite}.project-skeleton span:nth-child(1){width:36%;height:26px}.project-skeleton span:nth-child(2){width:58%}.project-skeleton span:nth-child(3){width:82%}@keyframes skeleton{to{background-position:-200% 0}}
.preview-filters{display:flex;flex-wrap:wrap;gap:.45rem}.filter-active{background:var(--accent);border-color:#8cc300}.round-actions button{white-space:nowrap}

/* V2.8 single-use selection and selected-photo ZIP */
.selection-note{margin:.8rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.45}
.download-info{margin-top:1rem;padding:.85rem 1rem;border:1px solid #cfe5a4;background:#f7ffe8;border-radius:14px;display:grid;gap:.25rem}
.download-info strong{font-size:.9rem}.download-info span{color:#4f5b42;font-size:.84rem;line-height:1.45}
.download-info code{background:#edf6dc;border-radius:5px;padding:.08rem .3rem;color:#31431c}
.zip-inline-info{flex-basis:100%;padding:.7rem .85rem;border-radius:12px;background:#f7ffe8;border:1px solid #cfe5a4;color:#4f5b42;font-size:.82rem;line-height:1.4}
.expired-link{max-width:680px;margin:10vh auto;padding:2.2rem;border:1px solid var(--line);border-radius:24px;background:#fff;text-align:left;box-shadow:0 18px 60px rgba(0,0,0,.08)}
.expired-link h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:.5rem 0 1rem}.expired-link p{color:var(--muted);line-height:1.6;margin:0}

.confirm-summary ul{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.55rem}.confirm-summary li{display:flex;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:14px;padding:.8rem}.confirm-summary li span{color:var(--muted)}.confirm-total{border-top:1px solid var(--line);padding-top:.9rem}.edit-project-panel .project-form{margin-top:.5rem}

/* V2.9 final editing and delivery workflow */
.final-delivery-panel{width:min(1180px,98vw)}
.delivery-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.delivery-stat{border:1px solid var(--line);border-radius:16px;padding:1rem;background:#fff;display:flex;flex-direction:column}
.delivery-stat strong{font-size:1.8rem}.delivery-stat span{color:var(--muted);font-size:.82rem}.delivery-stat.matched{background:var(--success-bg);border-color:#acd4b5}.delivery-stat.warning{background:#fff7dc;border-color:#e2c361}
.delivery-stage{grid-column:1/-1;border-radius:14px;padding:.75rem 1rem;background:#171717;color:#fff;font-weight:850}
.delivery-tag.editing{background:#fff4cc}.delivery-tag.ready{background:#e9f3ff;color:#185b9d}.delivery-tag.delivered{background:var(--success-bg);color:var(--success)}.delivery-tag.correction_requested{background:#ffe7e7;color:#8c2626}
.delivery-progress{margin-top:1rem;border:1px solid #c7d9ea;background:#f4f9ff;border-radius:14px;padding:.85rem 1rem;display:grid;gap:.25rem}.delivery-progress span,.delivery-progress em{color:#456079;font-size:.84rem;line-height:1.45}.delivery-progress em{color:#8c2626;font-style:normal;font-weight:750}
.correction-banner{border:1px solid #e7a6a6;background:#fff0f0;color:#812828;border-radius:15px;padding:1rem;display:grid;gap:.35rem;margin:1rem 0}
.match-lists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:.8rem 0 1.2rem}.match-group{border:1px solid var(--line);background:#fff;border-radius:15px;padding:.85rem;display:flex;flex-direction:column;gap:.35rem;max-height:240px;overflow:auto}.match-group strong{margin-bottom:.25rem}.match-group span{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}.match-group.missing{border-color:#e1bf58;background:#fff9e7}.match-group.complete{border-color:#9dc8a6;background:var(--success-bg)}.match-group.extra{border-color:#b9cae1;background:#f5f9ff}
.final-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:.8rem 0 1rem}.final-file{border:1px solid var(--line);background:#fff;border-radius:15px;padding:.65rem;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:.75rem}.final-file.matched{border-color:#a9cfb1}.final-file.extra{border-color:#b9cae1}.final-file-preview{width:72px;height:58px;border-radius:10px;overflow:hidden;background:var(--soft);display:grid;place-items:center}.final-file-preview img{width:100%;height:100%;object-fit:cover}.file-type-icon,.delivery-file-icon{font-size:.72rem;font-weight:950;letter-spacing:.08em;color:var(--muted)}.final-file>div:nth-child(2){min-width:0;display:flex;flex-direction:column}.final-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.final-file span{font-size:.78rem;color:var(--muted)}.final-file button{padding:.5rem .65rem;color:var(--danger);border-color:#e1b3b3}
.final-delivery-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;border-top:1px solid var(--line);padding-top:1rem}.final-delivery-actions #finalShareSlot{display:inline-flex}
.delivery-header{align-items:center}.delivery-client-actions{display:flex;gap:.65rem;justify-content:flex-end;border-top:1px solid var(--line);padding-top:1.2rem;margin-top:1.5rem}.delivery-image-button{width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent;cursor:zoom-in}.delivery-photo .photo-media{background:#eee}.delivery-file-icon{height:100%;display:grid;place-items:center;font-size:1.1rem}.delivery-file-meta{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:.55rem;color:var(--muted);font-size:.82rem}.download-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:999px;padding:.42rem .65rem;text-decoration:none;font-weight:850;white-space:nowrap}.lightbox-footer .download-link{color:#fff}
.correction-input{display:grid;gap:.4rem}.correction-input textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:13px;padding:.85rem .95rem;font:inherit;color:var(--ink)}
@media(max-width:900px){.delivery-summary,.match-lists,.final-files{grid-template-columns:1fr}.delivery-client-actions,.final-delivery-actions{flex-direction:column;align-items:stretch}.final-delivery-actions>*{width:100%}.final-delivery-actions .share-control>button{width:100%}}

/* V2.9.1 smart final-file matching and reliable downloads */
.delivery-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
.delivery-stat.additional{background:#eef6ff;border-color:#a9c9ee}
.delivery-stat.needs-action{background:#fff5e5;border-color:#e5b45e}
.match-group.unresolved{border-color:#e5b45e;background:#fff6e8}
.final-file{grid-template-columns:72px minmax(0,1fr) minmax(180px,auto)}
.final-file.additional{border-color:#91b8e5;background:#f4f9ff}
.final-file.unmatched{border-color:#dda84a;background:#fff8ea}
.final-file.duplicate{border-color:#dc8a8a;background:#fff1f1}
.final-file-details{min-width:0;display:flex;flex-direction:column;gap:.22rem}
.final-status-badge{display:inline-flex;width:max-content;max-width:100%;border-radius:999px;padding:.25rem .48rem;font-size:.72rem!important;font-weight:850;line-height:1.2}
.final-status-badge.matched{background:#e6f5e9;color:#226a38}
.final-status-badge.additional{background:#e7f2ff;color:#185b9d}
.final-status-badge.unmatched{background:#fff0cc;color:#835800}
.final-status-badge.duplicate{background:#ffe3e3;color:#8c2626}
.final-file-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.38rem}
.final-file-actions button{width:auto;color:var(--ink);border-color:var(--line)}
.final-file-actions .danger-outline{color:var(--danger);border-color:#e1b3b3}
button.compact{padding:.48rem .62rem;font-size:.78rem}
.correction-input select{width:100%;border:1px solid var(--line);border-radius:13px;padding:.8rem .9rem;font:inherit;color:var(--ink);background:#fff}
.delivery-file-section{display:grid;gap:.8rem;margin-bottom:1.6rem}
.delivery-section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.65rem}
.delivery-section-heading h2{font-size:1.25rem;margin:0}.delivery-section-heading span{color:var(--muted);font-size:.85rem}
.delivery-subgallery{margin:0}
.additional-delivery-section{border:1px solid #b9cae1;background:#f7fbff;border-radius:18px;padding:1rem}
.delivery-photo.additional-final{border-color:#9fbee2}
.download-link{background:#fff;color:var(--ink);cursor:pointer;font:inherit}
.download-link:disabled{opacity:.55;cursor:wait}
@media(max-width:1100px){.delivery-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.final-file{grid-template-columns:72px minmax(0,1fr)}.final-file-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:700px){.delivery-summary{grid-template-columns:1fr 1fr}.final-file{grid-template-columns:58px minmax(0,1fr)}.final-file-preview{width:58px;height:52px}.delivery-section-heading{align-items:flex-start;flex-direction:column}}

/* V2.9.2 folder upload, responsive delivery layout and viewport-safe sharing */
.share-menu.share-menu-floating{
  position:fixed;
  right:auto;
  bottom:auto;
  z-index:1000;
  overflow-y:auto;
  overscroll-behavior:contain;
  max-width:calc(100vw - 24px);
}
.share-menu.share-menu-up{transform-origin:bottom left}

.folder-drop-zone{gap:.35rem;padding:1.2rem;text-align:center}
.drop-zone-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.55rem;margin-top:.8rem}
.drop-zone-actions button{min-width:138px}
.queue-item span:first-child{overflow-wrap:anywhere}

/* The delivery root contains full-width sections, not competing grid columns. */
.delivery-gallery{display:block;width:100%;margin-top:1rem}
.delivery-file-section{width:100%;min-width:0}
.delivery-subgallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  width:100%;
}
.additional-delivery-section{
  width:100%;
  min-width:0;
  margin-top:1.4rem;
  padding:1rem;
}
.delivery-photo{min-width:0;display:flex;flex-direction:column}
.delivery-photo .photo-media{width:100%}
.delivery-photo .photo-body{display:flex;flex:1;flex-direction:column;min-width:0}
.delivery-photo .photo-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.delivery-file-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-top:auto;padding-top:.65rem}
.delivery-file-meta>span{min-width:0;flex:1 1 150px;overflow-wrap:anywhere}
.delivery-file-meta .download-link{flex:0 0 auto;max-width:100%}
.delivery-section-heading{width:100%}

/* Dynamic viewport sizing avoids browser chrome and mobile keyboard clipping. */
.modal-layer{padding:max(10px,2vw);padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom))}
.modal-panel{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);overscroll-behavior:contain}
.dashboard-panel{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}
.final-delivery-panel,.gallery-panel{width:min(1450px,calc(100vw - 20px))}
.client-shell{width:100%;max-width:1500px;padding-left:clamp(1rem,3.5vw,3.5rem);padding-right:clamp(1rem,3.5vw,3.5rem)}
.client-header>*{min-width:0}

/* Admin final-file rows remain readable on wide and narrow screens. */
.final-files{grid-template-columns:repeat(2,minmax(0,1fr))}
.final-file{min-width:0}
.final-file-details strong{overflow-wrap:anywhere;white-space:normal}
.final-file-actions{min-width:0}
.final-delivery-actions{position:relative}

@media (max-width:1100px){
  .delivery-subgallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .client-header{align-items:flex-start}
}
@media (max-width:900px){
  .modal-panel{padding:1.15rem;border-radius:22px}
  .dialog-head{top:-1.15rem;padding:1.15rem 0 .8rem}
  .client-brand-row{margin-bottom:2.5rem}
  .delivery-header{align-items:stretch;flex-direction:column}
  .delivery-header>button{width:100%}
  .delivery-subgallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .additional-delivery-section{padding:.8rem}
  .final-files{grid-template-columns:1fr}
  .drop-zone-actions{width:100%}
}
@media (max-width:640px){
  .modal-layer{padding:0;align-items:stretch}
  .modal-panel,.dashboard-panel,.final-delivery-panel,.gallery-panel,.upload-panel,.edit-project-panel{
    width:100vw;
    max-width:100vw;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
    padding:1rem;
  }
  .dialog-head{top:-1rem;padding-top:1rem}
  .client-shell{padding:1rem 1rem 3rem}
  .client-brand-row{margin-bottom:2rem;gap:.7rem}
  .privacy-pill{font-size:.78rem;padding:.48rem .68rem}
  .client-header h1{font-size:clamp(2.6rem,15vw,4.2rem);overflow-wrap:anywhere}
  .delivery-subgallery{grid-template-columns:1fr}
  .delivery-photo .photo-media{aspect-ratio:4/3}
  .delivery-file-meta{align-items:stretch;flex-direction:column}
  .delivery-file-meta .download-link{width:100%}
  .delivery-client-actions{position:sticky;bottom:0;z-index:6;background:linear-gradient(rgba(245,242,235,0),var(--bg) 24%);padding-top:2rem;padding-bottom:max(.35rem,env(safe-area-inset-bottom))}
  .drop-zone{min-height:220px;margin:.75rem 0}
  .drop-zone-actions{flex-direction:column}
  .drop-zone-actions button{width:100%}
  .delivery-summary{grid-template-columns:1fr 1fr}
  .delivery-stage{grid-column:1/-1}
  .final-file{grid-template-columns:56px minmax(0,1fr);padding:.55rem}
  .final-file-preview{width:56px;height:50px}
  .final-file-actions{grid-column:1/-1;justify-content:stretch}
  .final-file-actions button{flex:1 1 135px}
  .share-menu.share-menu-floating{min-width:min(240px,calc(100vw - 24px))}
}
@media (max-width:390px){
  .delivery-summary{grid-template-columns:1fr}
  .delivery-subgallery{gap:.75rem}
  .delivery-section-heading{gap:.35rem}
}
@media (hover:none){
  button{min-height:44px}
  .download-link{min-height:42px}
}

/* V2.9.2 final polish: additional files stay a clean section, and mobile actions follow the gallery. */
.additional-delivery-section{border:0;background:transparent;padding:0;border-radius:0}
@media (max-width:640px){
  .delivery-client-actions{position:static;background:none;padding-top:1.2rem;padding-bottom:max(.35rem,env(safe-area-inset-bottom))}
}

/* Galivue V3 — stable dashboard management, timelines and container-responsive workspaces */
.dashboard-tools{
  display:grid;
  grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(135px,.65fr)) auto;
  gap:.7rem;
  align-items:end;
  margin-top:1rem;
  padding:1rem;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
}
.dashboard-tools label{min-width:0}
.dashboard-tools button{height:46px}
.dashboard-project-summary{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 0}
.dashboard-project-summary span{display:inline-flex;gap:.32rem;align-items:center;background:var(--soft);border-radius:999px;padding:.52rem .76rem;font-size:.82rem;color:var(--muted)}
.dashboard-project-summary strong{color:var(--ink)}
.project-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.project-management{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}
.project-management button{padding:.55rem .72rem;font-size:.78rem}
.project-archived{background:#fbfaf6;border-style:dashed}
.project-trashed{background:#fff5f5;border-color:#deb4b4}
.tag.archived{background:#ece9ff;color:#4e4592}
.tag.trash{background:#ffe6e6;color:#8d2b2b}
.storage-tag{background:#edf4ff;color:#275b91}
.danger-outline{color:var(--danger)!important;border-color:#e1b3b3!important;background:#fff}
.activity-timeline{margin-top:1rem;border-top:1px solid var(--line);padding-top:.8rem}
.activity-timeline summary{cursor:pointer;font-weight:850;color:var(--muted)}
.activity-list{display:grid;gap:.7rem;margin-top:.85rem;padding-left:.15rem}
.activity-item{display:grid;grid-template-columns:12px 1fr;gap:.65rem;align-items:start}
.activity-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px rgba(200,255,61,.22);margin-top:.35rem}
.activity-item p{margin:.12rem 0!important;font-size:.84rem}
.activity-item time{font-size:.76rem;color:var(--muted)}
.final-link-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;border:1px solid #b9cae1;background:#f7fbff;border-radius:18px;padding:1rem;margin:1rem 0}
.link-status-copy{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;min-width:0}
.link-status-copy>span:not(.tag){font-size:.82rem;color:var(--muted)}
.link-control-actions{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:.55rem}
.link-control-actions label{min-width:145px}
.link-control-actions button{padding:.68rem .82rem}

/* Container queries respond to the actual modal width, not only the browser window. */
.final-delivery-panel{container-type:inline-size;container-name:final-workspace}
.dashboard-panel{container-type:inline-size;container-name:dashboard-workspace}
@container final-workspace (max-width: 1180px){
  .delivery-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .final-files{grid-template-columns:1fr}
  .final-file{grid-template-columns:72px minmax(0,1fr)}
  .final-file-actions{grid-column:1/-1;justify-content:flex-start}
  .final-file-details strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:normal}
  .match-lists{grid-template-columns:1fr 1fr}
}
@container final-workspace (max-width: 680px){
  .delivery-summary{grid-template-columns:1fr 1fr}
  .delivery-stage{grid-column:1/-1}
  .match-lists{grid-template-columns:1fr}
  .final-file{grid-template-columns:60px minmax(0,1fr);padding:.65rem}
  .final-file-preview{width:60px;height:54px}
  .final-file-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .final-file-actions button{width:100%;min-width:0}
  .final-link-controls,.link-control-actions{align-items:stretch;flex-direction:column}
  .link-control-actions>*{width:100%}
}
@container final-workspace (max-width: 430px){
  .delivery-summary{grid-template-columns:1fr}
  .final-file{grid-template-columns:52px minmax(0,1fr)}
  .final-file-preview{width:52px;height:48px}
  .final-file-actions{grid-template-columns:1fr}
}
@container dashboard-workspace (max-width: 980px){
  .dashboard-tools{grid-template-columns:1fr 1fr}
  .dashboard-search{grid-column:1/-1}
  .dashboard-tools button{width:100%}
  .project-title-row{flex-direction:column}
  .project-management{justify-content:flex-start}
}
@container dashboard-workspace (max-width: 620px){
  .dashboard-tools{grid-template-columns:1fr}
  .dashboard-search{grid-column:auto}
  .project-management,.project-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .project-management button,.project-actions>button,.project-actions>.share-control,.project-actions>.share-control>button{width:100%}
}
@container dashboard-workspace (max-width: 420px){
  .project-management,.project-actions{grid-template-columns:1fr}
}
@media(max-width:900px){
  .dashboard-tools{grid-template-columns:1fr 1fr}
  .dashboard-search{grid-column:1/-1}
}
@media(max-width:560px){
  .dashboard-tools{grid-template-columns:1fr}
  .dashboard-search{grid-column:auto}
}

/* Galivue V3.1 — plans, expiry guidance and anonymous client reviews */
.trial-offer{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #444;border-radius:22px;padding:1.2rem 1.35rem;margin-bottom:1rem;background:#222}
.trial-offer>div{display:flex;flex-direction:column;gap:.25rem}.trial-offer small{font-weight:900;letter-spacing:.14em;color:var(--accent)}.trial-offer strong{font-size:1.05rem}.trial-offer span{color:#bfbab1;font-size:.88rem}
.account-usage-panel{border:1px solid var(--line);border-radius:22px;background:#fff;padding:1.1rem;margin-bottom:.8rem}
.usage-loading{color:var(--muted);font-weight:750}
.usage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.usage-head h3{font-size:1.5rem;margin:.15rem 0}.usage-head p{margin:.2rem 0;color:var(--muted)}
.usage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-top:1rem}.usage-card{border:1px solid var(--line);border-radius:16px;padding:.9rem;background:#faf9f6}.usage-card strong{display:block;font-size:1.3rem}.usage-card span{display:block;margin-top:.18rem;color:var(--muted);font-size:.8rem}
.usage-meter{height:10px;border-radius:999px;background:var(--soft);overflow:hidden;margin-top:.65rem}.usage-meter>span{display:block;height:100%;background:var(--ink);border-radius:inherit}.usage-warning{color:#956100}.usage-danger{color:var(--danger)}
.plan-test-panel{border:1px dashed #a8a195;border-radius:18px;padding:1rem;margin-bottom:1rem;background:#fbfaf7}.plan-test-panel summary{font-weight:900;cursor:pointer}.plan-test-controls{display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,auto);gap:.65rem;align-items:end}.plan-test-controls button{white-space:nowrap}
.delivery-expiry-notice{border:1px solid #b9cae1;background:#f7fbff;border-radius:18px;padding:1rem 1.1rem;margin:1rem 0;font-weight:760}.delivery-expiry-notice strong{display:block;font-size:1.05rem;margin-bottom:.22rem}.delivery-expiry-notice span{color:var(--muted);font-weight:650}.delivery-expiry-notice.expiry-warning{border-color:#e1be6a;background:#fff8de}.delivery-expiry-notice.expiry-danger{border-color:#e6a3a3;background:#fff0f0;color:#812d2d}
.delivery-intro-panel{width:min(560px,94vw);text-align:center}.delivery-intro-panel h2{font-size:2.2rem;letter-spacing:-.04em;margin:.55rem 0}.delivery-intro-panel p{color:var(--muted);line-height:1.55}.delivery-intro-actions{display:flex;justify-content:center;gap:.65rem;margin-top:1.2rem}
.delivery-review{border:1px solid var(--line);border-radius:22px;background:#fff;padding:1.2rem;margin-top:1.2rem}.review-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.review-heading h2{margin:.35rem 0;font-size:1.65rem}.review-heading>span{color:var(--muted);font-size:.82rem}
.review-question{border:0;padding:0;margin:1.2rem 0}.review-question legend{font-weight:850;margin-bottom:.65rem}.review-question small{color:var(--muted)}.review-scale{display:flex;gap:.5rem;flex-wrap:wrap}.review-score{width:48px;height:48px;padding:0;font-size:1.15rem}.review-score.is-selected{background:var(--ink);color:#fff;border-color:var(--ink)}
.review-privacy{border:1px solid #cbd8e7;background:#f7fbff;border-radius:14px;padding:.85rem;color:#4e5b69;font-size:.85rem;line-height:1.45}.review-actions{display:flex;justify-content:flex-end;gap:.6rem}.review-complete{color:var(--success);font-weight:850}
@media(max-width:900px){.usage-grid{grid-template-columns:1fr 1fr}.plan-test-controls{grid-template-columns:1fr 1fr}.plan-test-controls label{grid-column:1/-1}.trial-offer{align-items:stretch;flex-direction:column}.trial-offer button{width:100%}}
@media(max-width:560px){.usage-grid{grid-template-columns:1fr}.plan-test-controls{grid-template-columns:1fr}.plan-test-controls label{grid-column:auto}.delivery-intro-actions,.review-actions{flex-direction:column}.delivery-intro-actions button,.review-actions button{width:100%}.review-score{flex:1}.review-heading{flex-direction:column}}

/* Galivue V3.1.1 — photographer-safe preview, social proof and project reviews (preserved) */
.review-proof-section{background:#f0ede6}
.review-proof-intro{max-width:820px;color:var(--muted);font-size:1.05rem;line-height:1.6;margin-top:-1.5rem;margin-bottom:2rem}
.public-review-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.public-review-stats article{border:1px solid var(--line);border-radius:22px;background:#fff;padding:1.35rem;min-width:0}
.public-review-stats strong{display:block;font-size:clamp(2.1rem,4vw,3.6rem);letter-spacing:-.055em;line-height:1}
.public-review-stats strong span{font-size:.95rem;color:var(--muted);letter-spacing:0}
.public-review-stats h3{margin:.7rem 0 .3rem;font-size:1.05rem}
.public-review-stats p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}
.review-proof-loading{border:1px dashed #aca59a;border-radius:18px;padding:1.2rem;color:var(--muted);font-weight:750}
.public-testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}
.public-testimonials blockquote{margin:0;border:1px solid var(--line);border-radius:20px;background:#171717;color:#fff;padding:1.35rem}
.public-testimonials p{margin:0 0 1rem;line-height:1.55;font-size:1.02rem}
.public-testimonials footer{color:#bfbab1;font-size:.82rem;font-weight:800}

.delivery-preview-banner{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:2px solid var(--accent);border-radius:18px;background:#171717;color:#fff;padding:1rem 1.1rem;margin:-2rem 0 2rem}
.delivery-preview-banner>div{display:grid;gap:.2rem}
.delivery-preview-banner span{color:#c9c4bb;font-size:.86rem;line-height:1.4}
.delivery-preview-banner button{flex:0 0 auto}
.delivery-preview-banner + #deliveryLoading{margin-top:0}

.final-delivery-actions #previewFinalDelivery,
.final-delivery-actions #finalShareSlot [data-share-toggle]{min-width:190px;padding:.78rem 1.05rem}
.final-delivery-actions #finalShareSlot [data-share-toggle]{background:var(--ink);color:#fff;border-color:var(--ink)}
.final-delivery-actions #finalShareSlot{position:relative}
.final-delivery-actions #finalShareSlot .share-control{width:100%}

.photographer-review-panel{width:min(680px,94vw)}
.photographer-review-panel textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:13px;padding:.85rem .95rem;font:inherit;color:var(--ink);background:#fff}
.public-testimonial-consent{margin:1rem 0}
.photographer-public-fields{display:grid;gap:.8rem;border:1px solid #cbd8e7;background:#f7fbff;border-radius:16px;padding:1rem;margin-bottom:1rem}
.photographer-review-complete{margin-top:.8rem;border:1px solid #9ccba6;background:var(--success-bg);color:var(--success);border-radius:14px;padding:.75rem .9rem;font-size:.84rem;font-weight:850}
.project-actions [data-photographer-review]{border-color:#99b957;background:#f3ffd7}

@media(max-width:980px){
  .public-review-stats{grid-template-columns:1fr 1fr}
  .public-testimonials{grid-template-columns:1fr}
}
@media(max-width:640px){
  .public-review-stats{grid-template-columns:1fr}
  .delivery-preview-banner{align-items:stretch;flex-direction:column;margin:-.5rem 0 1rem}
  .delivery-preview-banner button{width:100%}
}



/* GaliVue V3.1.2 — same-page responsive final-delivery preview */
.delivery-preview-panel{
  width:min(1450px,calc(100vw - 20px));
  height:calc(100dvh - 20px);
  max-height:calc(100dvh - 20px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding-bottom:1rem;
}
.delivery-preview-dialog-head{flex:0 0 auto;margin-bottom:.45rem}
.delivery-preview-frame{
  display:block;
  flex:1 1 auto;
  width:100%;
  min-height:0;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--bg);
}
.delivery-preview-loading{
  flex:1 1 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  color:var(--muted);
  font-weight:800;
}
body.delivery-preview-embedded{overflow:auto}
body.delivery-preview-embedded .client-shell{max-width:none;padding:1rem 1rem 3rem}
body.delivery-preview-embedded .client-brand-row{display:none}
body.delivery-preview-embedded .delivery-preview-banner{margin:0 0 1.2rem}
body.delivery-preview-embedded #backToFinalWorkspace{display:none}
body.delivery-preview-embedded .client-header h1{font-size:clamp(3rem,7vw,5.6rem)}
body.delivery-preview-embedded .delivery-client-actions,
body.delivery-preview-embedded #deliveryReview{display:none!important}

@media (max-width:1100px){
  .delivery-subgallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .delivery-preview-panel{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:1rem}
  .delivery-preview-frame{border-radius:14px}
  .delivery-subgallery{grid-template-columns:1fr}
}

/* GaliVue V3.2 — premium public landing page */
:root{--marketing-max:1440px;--accent-deep:#9ee000;--cream:#f5f2eb;--cream-2:#ece7dc}
body.mobile-menu-open{overflow:hidden}
.brand{display:inline-flex;align-items:center;font-size:1.42rem;font-weight:950;letter-spacing:-.045em;line-height:1;text-decoration:none;white-space:nowrap}
.brand span{display:inline-block;margin-left:.08em;padding:.12em .18em .14em;background:var(--accent);border-radius:4px;letter-spacing:-.055em}
.marketing-header{position:sticky;top:0;z-index:50;width:100%;min-height:82px;padding:.9rem max(4vw,28px);border-bottom:1px solid rgba(21,21,21,.09);background:rgba(245,242,235,.88);backdrop-filter:blur(18px) saturate(140%)}
.desktop-nav{display:flex;align-items:center;gap:clamp(1rem,2.1vw,2.2rem)}
.desktop-nav>a{position:relative;font-size:.94rem;font-weight:720;text-decoration:none;white-space:nowrap}
.desktop-nav>a::after{content:"";position:absolute;left:0;right:100%;bottom:-.5rem;height:2px;background:var(--ink);transition:right .2s ease}
.desktop-nav>a:hover::after{right:0}
.header-login{border:0;background:transparent;padding:.7rem .2rem;font-weight:820}
.accent-button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;border-color:var(--accent);background:var(--accent);color:var(--ink);box-shadow:0 12px 30px rgba(151,205,0,.16);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.accent-button:hover:not(:disabled){border-color:var(--accent-deep);background:#bfff26;box-shadow:0 16px 34px rgba(151,205,0,.23);transform:translateY(-2px)}
.header-cta{padding:.85rem 1.25rem;border-radius:15px}
.menu-button{display:none;width:46px;height:46px;padding:0;border:0;background:transparent;border-radius:12px}
.menu-button span{display:block;width:23px;height:2px;margin:5px auto;background:var(--ink);border-radius:2px}
.mobile-menu{position:fixed;inset:0;z-index:100;display:none;padding:1rem;background:rgba(21,21,21,.34);backdrop-filter:blur(14px)}
.mobile-menu.is-open{display:block}
.mobile-menu>nav,.mobile-menu-head{width:min(520px,100%);margin-left:auto;background:var(--cream)}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.2rem;border-radius:22px 22px 0 0;border-bottom:1px solid var(--line)}
.menu-close{width:42px;height:42px;padding:0;border:0;background:transparent;font-size:2.15rem;line-height:1}
.mobile-menu nav{padding:0 1.2rem 1.2rem;border-radius:0 0 22px 22px;box-shadow:var(--shadow)}
.mobile-menu nav>a,.mobile-login{display:flex;width:100%;align-items:center;gap:1rem;padding:1.1rem .2rem;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;font-size:1.05rem;font-weight:820;text-decoration:none;text-align:left}
.mobile-menu nav>a span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:.69rem}
.mobile-cta{width:100%;margin-top:1.2rem;border-radius:14px;padding:1rem}
.mobile-menu nav small{display:block;margin:.75rem 0 .2rem;text-align:center;color:var(--muted)}

.marketing-page{overflow:hidden}
.marketing-hero{position:relative;min-height:calc(100vh - 82px);padding:clamp(5rem,9vw,9rem) max(4vw,28px) clamp(5rem,8vw,8rem);isolation:isolate}
.marketing-hero::before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 82% 22%,rgba(200,255,61,.2),transparent 28%),linear-gradient(180deg,#f8f5ef 0%,var(--bg) 82%)}
.hero-ambient{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.ambient-orb{position:absolute;border-radius:50%;filter:blur(2px)}
.orb-one{width:min(42vw,650px);height:min(42vw,650px);right:-8%;top:1%;background:radial-gradient(circle,rgba(200,255,61,.26),rgba(200,255,61,0) 68%);animation:ambient-float 12s ease-in-out infinite}
.orb-two{width:380px;height:380px;left:27%;bottom:-19%;background:radial-gradient(circle,rgba(255,255,255,.88),rgba(255,255,255,0) 70%);animation:ambient-float 16s ease-in-out infinite reverse}
@keyframes ambient-float{50%{transform:translate3d(1.5rem,-1rem,0) scale(1.05)}}
.hero-copy{width:min(1030px,88%);margin:0 auto;text-align:center}
.hero-kicker{display:inline-flex;align-items:center;gap:.65rem;padding:.55rem .85rem;border:1px solid rgba(21,21,21,.12);border-radius:999px;background:rgba(255,255,255,.78);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 8px 30px rgba(0,0,0,.04);max-width:min(96vw,760px);text-wrap:balance}
.hero-kicker span{width:8px;height:8px;border-radius:50%;background:var(--accent-deep);box-shadow:0 0 0 5px rgba(200,255,61,.25)}
.marketing-hero h1{max-width:1100px;margin:1.5rem auto 1.25rem;font-size:clamp(3.25rem,7.2vw,7.8rem);line-height:.9;letter-spacing:-.07em;text-wrap:balance}
.marketing-hero h1 em{font-style:normal;color:#69645c}
.marketing-hero .hero-copy>p{max-width:820px;margin:0 auto;color:var(--muted);font-size:clamp(1.08rem,1.65vw,1.38rem);line-height:1.55;text-wrap:balance}
.hero-actions{display:flex;align-items:center;justify-content:center;gap:1rem;margin:2rem 0 1.15rem}
.hero-primary{min-width:205px;padding:1rem 1.35rem;border-radius:15px;font-size:1rem}
.demo-link{display:inline-flex;align-items:center;gap:.55rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.7);font-weight:850;text-decoration:none}
.hero-trust-line{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.55rem 1.2rem;color:var(--muted);font-size:.83rem;font-weight:720}

.flow-card{position:absolute;z-index:-1;display:flex;align-items:center;gap:.7rem;width:230px;padding:.82rem .9rem;border:1px solid rgba(21,21,21,.11);border-radius:15px;background:rgba(255,255,255,.82);box-shadow:0 18px 42px rgba(0,0,0,.09);backdrop-filter:blur(12px);animation:flow-drift 8s ease-in-out infinite}
.flow-card b,.flow-card small{display:block}.flow-card b{font-size:.78rem}.flow-card small{margin-top:.15rem;color:var(--muted);font-size:.66rem}
.flow-card>span{display:grid;place-items:center;min-width:42px;height:42px;border-radius:11px;background:var(--accent);font-weight:950;font-size:1rem}
.flow-upload{left:5%;top:28%}.flow-upload>i{width:42px;height:42px;border-radius:11px;background:linear-gradient(140deg,#232323,#8a8377);position:relative}.flow-upload>i::after{content:"";position:absolute;left:8px;right:8px;bottom:8px;height:14px;border-radius:8px 8px 3px 3px;background:#f0c98e;clip-path:polygon(0 100%,35% 25%,55% 60%,76% 5%,100% 100%)}
.flow-select{right:3.5%;top:33%;animation-delay:-2.4s}.flow-match{right:10%;top:56%;animation-delay:-5s}
@keyframes flow-drift{0%,100%{transform:translateY(0) rotate(-.25deg)}50%{transform:translateY(-14px) rotate(.35deg)}}

.product-stage{width:min(var(--marketing-max),100%);margin:clamp(4rem,7vw,6.5rem) auto 0;perspective:1600px}
.product-window{overflow:hidden;border:1px solid rgba(21,21,21,.15);border-radius:25px;background:#fff;box-shadow:0 40px 90px rgba(38,34,26,.18),0 1px 0 rgba(255,255,255,.9) inset;transform:rotateX(1.4deg);transform-origin:bottom}
.window-bar{display:grid;grid-template-columns:1fr minmax(220px,520px) 1fr;align-items:center;gap:1rem;padding:.78rem 1rem;border-bottom:1px solid var(--line);background:#f8f6f1}
.window-dots{display:flex;gap:.38rem}.window-dots span{width:9px;height:9px;border-radius:50%;background:#cfc9be}.window-dots span:nth-child(1){background:#ff796f}.window-dots span:nth-child(2){background:#efc45e}.window-dots span:nth-child(3){background:#85c86e}
.window-address{overflow:hidden;padding:.5rem .8rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);font-size:.72rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.window-live{justify-self:end;color:var(--muted);font-size:.72rem;font-weight:800}.window-live i{display:inline-block;width:7px;height:7px;margin-right:.35rem;border-radius:50%;background:#5cb66f}
.product-body{display:grid;grid-template-columns:210px 1fr;min-height:610px;background:#f4f1e9}
.product-side{position:relative;padding:1.5rem 1.15rem;border-right:1px solid var(--line);background:#171717;color:#fff}
.product-brand{margin:0 .3rem 2.4rem;color:#fff}.product-brand span{color:#111}
.mock-nav{display:flex;align-items:center;gap:.7rem;margin:.35rem 0;padding:.78rem .7rem;border-radius:11px;color:#aaa59c;font-size:.83rem;font-weight:800}.mock-nav i{width:14px;height:14px;border:1.5px solid currentColor;border-radius:4px}.mock-nav.active{background:#2a2a29;color:#fff}.mock-nav.active i{border-color:var(--accent);box-shadow:inset 0 -4px 0 var(--accent)}
.mock-storage{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:1rem;border:1px solid #363633;border-radius:14px;background:#20201f}.mock-storage small,.mock-storage b{display:block}.mock-storage small{color:#8d8a83;font-size:.62rem;letter-spacing:.12em}.mock-storage b{margin:.35rem 0 .75rem;font-size:.8rem}.mock-storage>span{display:block;height:6px;overflow:hidden;border-radius:999px;background:#3b3b38}.mock-storage>span i{display:block;width:68%;height:100%;border-radius:inherit;background:var(--accent)}
.product-main{padding:clamp(1.4rem,3vw,2.4rem)}
.mock-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.mock-heading small{font-size:.62rem;font-weight:900;letter-spacing:.15em;color:var(--muted)}.mock-heading h3{margin:.25rem 0 0;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.05em}.mock-heading button{padding:.72rem .9rem;background:#171717;color:#fff;border-color:#171717;font-size:.75rem;pointer-events:none}
.mock-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin:1.4rem 0}.mock-stats>div{display:flex;flex-direction:column;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#fff}.mock-stats b{font-size:1.3rem}.mock-stats span{margin-top:.25rem;color:var(--muted);font-size:.68rem}.mock-stats .ready{border-color:#aed081;background:#f4ffe2}.mock-stats .ready b{color:#3b6d16}
.mock-stats [data-count],.proof-count[data-count]{font-variant-numeric:tabular-nums}.mock-stats>div.flash{box-shadow:0 0 0 4px rgba(200,255,61,.16);border-color:#c7ea6b;transform:translateY(-1px);transition:all .4s ease}
.mock-workflow{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}.mock-step{position:relative;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:.55rem;min-width:0;padding:1rem;border-right:1px solid var(--line)}.mock-step:last-child{border-right:0}.mock-step>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--soft);font-size:.72rem;font-weight:900}.mock-step b,.mock-step small{display:block}.mock-step b{overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.mock-step small{margin-top:.2rem;color:var(--muted);font-size:.6rem}.mock-step>i{font-style:normal;color:#76a917}.mock-step.current{background:#f6ffe8}.mock-step.current>span{background:var(--accent)}
.mock-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1rem}.mock-photo{position:relative;aspect-ratio:1.34;overflow:hidden;border-radius:15px;background:#2a2927}.mock-photo::before,.demo-image::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 58% 38%,#c08c61 0 7%,transparent 7.5%),radial-gradient(ellipse at 60% 76%,#1c1a19 0 17%,transparent 17.5%),linear-gradient(118deg,#33302b 0 34%,#c89558 34% 67%,#252421 67%)}.photo-two::before{transform:scaleX(-1);filter:saturate(.75)}.photo-three::before{background:radial-gradient(circle at 42% 35%,#c58e64 0 7%,transparent 7.5%),radial-gradient(ellipse at 42% 74%,#32211e 0 17%,transparent 17.5%),linear-gradient(75deg,#171717 0 30%,#d0a063 30% 72%,#39342e 72%)}
.mock-photo>span{position:absolute;left:.55rem;bottom:.55rem;padding:.28rem .45rem;border-radius:999px;background:rgba(200,255,61,.92);font-size:.62rem;font-weight:900}

.trust-ribbon{display:grid;grid-template-columns:repeat(4,1fr);max-width:var(--marketing-max);margin:0 auto;padding:0 max(4vw,28px) clamp(5rem,8vw,8rem)}
.trust-ribbon>div{padding:1.25rem 1.4rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-ribbon>div+div{border-left:1px solid var(--line)}.trust-ribbon b,.trust-ribbon span{display:block}.trust-ribbon b{font-size:.88rem}.trust-ribbon span{margin-top:.3rem;color:var(--muted);font-size:.72rem}
.marketing-section{padding:clamp(5.5rem,9vw,9rem) max(4vw,28px)}
.section-heading{max-width:var(--marketing-max);margin:0 auto 3rem}.section-heading h2,.proof-copy h2,.security-card h2,.final-cta h2,.demo-copy h2{margin:.6rem 0 0;font-size:clamp(2.7rem,5vw,5.6rem);line-height:.96;letter-spacing:-.06em;text-wrap:balance}.section-heading p{color:var(--muted);line-height:1.6}.split-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.65fr);align-items:end;gap:4rem}.split-heading>p{margin:0 0 .35rem;font-size:1.02rem}.centered-heading{max-width:840px;text-align:center}.centered-heading p{max-width:650px;margin:1rem auto 0;font-size:1.04rem}
.workflow-section{background:#171717;color:#fff}.workflow-section .section-kicker,.workflow-section .split-heading>p,.workflow-section .workflow-track p{color:#aaa69e}
.workflow-track{display:grid;grid-template-columns:repeat(5,1fr);max-width:var(--marketing-max);margin:0 auto;border-top:1px solid #393936;border-bottom:1px solid #393936}.workflow-track article{position:relative;min-width:0;padding:2rem 1.35rem 2.2rem;border-right:1px solid #393936}.workflow-track article:last-child{border-right:0}.workflow-track article>span{color:#77736c;font-size:.68rem;font-weight:900;letter-spacing:.12em}.workflow-track h3{margin:1.3rem 0 .55rem;font-size:1.18rem}.workflow-track p{margin:0;font-size:.82rem;line-height:1.55}.step-icon{display:grid;place-items:center;width:54px;height:54px;margin-top:2.4rem;border:1px solid #474742;border-radius:15px;background:#232321;font-size:1.35rem;font-weight:900}.step-icon i{width:22px;height:17px;border:2px solid currentColor;border-top:0;position:relative}.step-icon i::before{content:"";position:absolute;left:5px;top:-9px;width:8px;height:11px;border:2px solid currentColor;border-bottom:0}.preview-icon i{width:23px;height:17px;border:2px solid currentColor;border-radius:3px}.preview-icon i::before{width:5px;height:5px;left:3px;top:3px;border:0;border-radius:50%;background:currentColor}.select-icon,.deliver-icon{background:var(--accent);border-color:var(--accent);color:#111}.match-icon{color:var(--accent)}

.demo-section{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(560px,1.3fr);align-items:center;gap:clamp(3rem,7vw,7rem);max-width:calc(var(--marketing-max) + 8vw);margin:0 auto;background:var(--cream)}
.demo-copy{padding-left:max(0px,calc((100vw - var(--marketing-max))/2))}.demo-copy p{max-width:520px;color:var(--muted);font-size:1.02rem;line-height:1.65}.demo-progress{display:flex;align-items:center;margin:2rem 0 1.4rem}.demo-progress span{display:flex;align-items:center;gap:.45rem;color:#aaa49a;font-size:.78rem;font-weight:850}.demo-progress span i{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;font-style:normal}.demo-progress span.active{color:var(--ink)}.demo-progress span.active i{border-color:var(--accent-deep);background:var(--accent)}.demo-progress b{width:45px;height:1px;margin:0 .65rem;background:var(--line)}.demo-action{min-width:215px;border-radius:14px}.demo-reset{margin-left:.55rem;background:transparent}
.demo-device{overflow:hidden;border:1px solid rgba(21,21,21,.14);border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.13)}.demo-device-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;border-bottom:1px solid var(--line);background:#f8f6f1}.demo-device-bar>span{padding:.45rem .65rem;border:1px solid var(--line);border-radius:999px;font-size:.7rem;font-weight:850}.demo-message{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}.demo-message b,.demo-message span{display:block}.demo-message span{color:var(--muted);font-size:.78rem}.demo-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;padding:1rem}.demo-photo-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff}.demo-image{position:relative;aspect-ratio:.9;overflow:hidden;background:#333}.demo-image-two::before{transform:scaleX(-1);filter:hue-rotate(-12deg)}.demo-image-three::before{background:radial-gradient(circle at 48% 35%,#ba815d 0 8%,transparent 8.5%),radial-gradient(ellipse at 49% 75%,#34221f 0 18%,transparent 18.5%),linear-gradient(120deg,#1c1c1b 0 32%,#bd905c 32% 68%,#2e2c29 68%)}.demo-image span{position:absolute;right:.45rem;bottom:.45rem;color:rgba(255,255,255,.78);font-size:.55rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.demo-photo-card>b{display:block;padding:.7rem .7rem .2rem;font-size:.76rem}.demo-stars{display:grid;grid-template-columns:repeat(3,1fr);gap:.28rem;padding:.5rem .55rem .7rem}.demo-stars button{min-height:35px;padding:.35rem .2rem;border-radius:9px;font-size:.68rem}.demo-stars button.active{border-color:var(--accent-deep);background:var(--accent)}.demo-photo-card.demo-matched{border-color:#8ec574;box-shadow:0 0 0 2px rgba(200,255,61,.26)}.demo-photo-card.demo-matched::after{content:"Matched ✓";display:block;margin:.25rem .55rem .65rem;padding:.4rem;border-radius:8px;background:#eaf7e8;color:#2e6c3f;font-size:.7rem;font-weight:850;text-align:center}.demo-delivery{display:flex;align-items:center;gap:1rem;margin:1rem;padding:1.2rem;border:1px solid #9ccba6;border-radius:16px;background:var(--success-bg)}.demo-check{display:grid;place-items:center;min-width:48px;height:48px;border-radius:50%;background:#fff;color:var(--success);font-size:1.4rem;font-weight:950}.demo-delivery b{font-size:1.05rem}.demo-delivery p{margin:.3rem 0 0;color:var(--success);font-size:.8rem}

.feature-section{background:#eeeadf}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:var(--marketing-max);margin:0 auto}.feature-grid article{position:relative;min-height:260px;padding:1.4rem;border:1px solid var(--line);border-radius:20px;background:#f8f6f1}.feature-grid article.feature-large{grid-column:span 2}.feature-number{color:#918b82;font-size:.67rem;font-weight:900;letter-spacing:.1em}.feature-grid h3{margin:1.5rem 0 .6rem;font-size:1.25rem}.feature-grid p{max-width:440px;margin:0;color:var(--muted);font-size:.86rem;line-height:1.55}.feature-symbol{display:grid;place-items:center;width:70px;height:70px;margin-top:2rem;border:1px solid var(--line);border-radius:18px;background:#fff;font-size:1.25rem;font-weight:950}.feature-visual{position:absolute;right:1rem;top:1rem;width:48%;height:calc(100% - 2rem);overflow:hidden;border-radius:15px;background:#171717}.feature-large h3,.feature-large p{max-width:45%}.rating-visual{display:flex;flex-direction:column;justify-content:center;gap:.65rem;padding:1.2rem}.rating-visual i{padding:.75rem;border-radius:12px;background:#292927;color:#fff;font-style:normal;font-weight:900}.rating-visual i:first-child{background:var(--accent);color:#111;transform:translateX(-.5rem)}.rating-visual i:nth-child(2){transform:translateX(1rem)}.device-visual{background:linear-gradient(145deg,#242423,#111)}.device-visual i{position:absolute;border:1px solid #555;border-radius:10px;background:#f6f3ec}.device-visual i:nth-child(1){width:72%;height:62%;left:8%;top:15%}.device-visual i:nth-child(2){width:32%;height:68%;right:5%;bottom:8%;border-width:4px;border-color:#393936}.device-visual i:nth-child(3){width:16%;height:5%;left:33%;bottom:16%;border:0;background:var(--accent)}

.proof-section{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(560px,1.22fr);align-items:center;gap:clamp(3rem,7vw,8rem);max-width:calc(var(--marketing-max) + 8vw);margin:0 auto}.proof-copy{padding-left:max(0px,calc((100vw - var(--marketing-max))/2))}.proof-copy p{max-width:570px;color:var(--muted);font-size:1.02rem;line-height:1.65}.proof-copy button{margin-top:1rem;border-radius:14px}.proof-stack{position:relative;min-height:540px}.proof-card{position:absolute;width:min(540px,78%);padding:1.4rem;border:1px solid rgba(21,21,21,.13);border-radius:20px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.12)}.proof-card small,.proof-card b{display:block}.proof-card small{color:var(--muted);font-size:.67rem;font-weight:900;letter-spacing:.13em}.proof-card b{margin:.45rem 0 1rem;font-size:1.25rem}.proof-card-one{right:13%;top:0;transform:rotate(2deg)}.proof-card-one div{display:flex;gap:.45rem}.proof-card-one span{padding:.5rem .65rem;border-radius:999px;background:var(--soft);font-size:.75rem}.proof-card-one span:first-child{background:var(--accent)}.proof-card-two{left:0;top:155px;z-index:2;transform:rotate(-2deg)}.match-line{display:grid;grid-template-columns:10px 1fr auto 1fr;gap:.5rem;align-items:center;padding:.65rem 0;border-top:1px solid var(--line);font-size:.72rem}.match-line i{width:8px;height:8px;border-radius:50%;background:#70b750}.match-line em{font-style:normal;color:var(--muted)}.match-line strong{overflow:hidden;text-overflow:ellipsis}.proof-card-three{right:3%;bottom:0;z-index:3;transform:rotate(1deg);background:#171717;color:#fff}.proof-card-three p{color:#aaa69e}.proof-card-three button{background:var(--accent);border-color:var(--accent);color:#111;pointer-events:none}

.pricing-section{background:#171717;color:#fff}.pricing-heading p,.pricing-section .section-kicker{color:#aaa69e}.free-test-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;max-width:var(--marketing-max);margin:0 auto 1rem;padding:1.4rem 1.5rem;border:1px solid #3c3c39;border-radius:20px;background:#232321}.free-test-card span{color:var(--accent);font-size:.66rem;font-weight:950;letter-spacing:.13em}.free-test-card h3{margin:.35rem 0;font-size:1.35rem}.free-test-card p{margin:0;color:#aaa69e;font-size:.82rem}.free-test-card button{min-width:170px;border-radius:14px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:var(--marketing-max);margin:0 auto}.pricing-grid article{position:relative;display:flex;flex-direction:column;min-height:480px;padding:1.5rem;border:1px solid #3c3c39;border-radius:22px;background:#f8f6f1;color:#151515}.pricing-grid .pricing-featured{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.popular-tag{position:absolute;right:1rem;top:1rem;padding:.38rem .52rem;border-radius:999px;background:var(--accent);font-size:.62rem;font-weight:950}.plan-top>span{font-size:.72rem;font-weight:950;letter-spacing:.1em}.plan-top h3{margin:1.5rem 0 .4rem;font-size:3.3rem;letter-spacing:-.06em}.plan-top h3 small{font-size:.9rem;letter-spacing:0;color:var(--muted)}.plan-top p{min-height:42px;margin:0;color:var(--muted)}.pricing-grid ul{display:grid;gap:.85rem;padding:1.3rem 0 1.5rem;margin:1.5rem 0 0;border-top:1px solid var(--line);list-style:none}.pricing-grid li{font-size:.86rem}.pricing-grid li::before{content:"✓";margin-right:.55rem;color:#679f20;font-weight:950}.pricing-grid article>button{width:100%;margin-top:auto;border-radius:13px}.pricing-note{max-width:var(--marketing-max);margin:1.3rem auto 0;color:#aaa69e;text-align:center;font-size:.82rem}

.review-proof-section{background:#f0ede6}.review-proof-section .section-heading{margin-bottom:2rem}.public-review-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:var(--marketing-max);margin:0 auto}.public-review-stats article{min-height:180px;padding:1.4rem;border:1px solid var(--line);border-radius:20px;background:#fff}.public-review-stats article strong{font-size:2.9rem;letter-spacing:-.06em}.public-review-stats article strong span{font-size:.8rem}.public-review-stats article h3{margin:.6rem 0 .3rem}.public-review-stats article p{margin:0;color:var(--muted);font-size:.82rem}.public-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:var(--marketing-max);margin:1rem auto 0}.public-testimonials blockquote{margin:0;padding:1.5rem;border-radius:20px;background:#171717;color:#fff}.public-testimonials blockquote p{font-size:1.15rem}.public-testimonials footer{color:#aaa69e;font-size:.8rem}.review-proof-loading{grid-column:1/-1;padding:2rem;border:1px dashed #aaa399;border-radius:20px;background:rgba(255,255,255,.45);text-align:center}.review-threshold{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.2rem}.review-threshold strong{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#171717;color:#fff;font-size:1.25rem}.review-threshold h3,.review-threshold p{margin:.15rem 0}.review-threshold p{color:var(--muted)}

.security-section{background:#eeeadf}.security-card{display:grid;grid-template-columns:140px 1.1fr .9fr;align-items:center;gap:clamp(2rem,5vw,5rem);max-width:var(--marketing-max);margin:0 auto;padding:clamp(2rem,4vw,4rem);border:1px solid var(--line);border-radius:28px;background:#f8f6f1}.security-mark{position:relative;display:grid;place-items:center;width:120px;height:135px;margin:auto;border:2px solid #171717;border-radius:48% 48% 44% 44% / 38% 38% 62% 62%;background:var(--accent)}.security-mark::before{content:"";position:absolute;top:-18px;width:62px;height:45px;border:2px solid #171717;border-bottom:0;border-radius:40px 40px 0 0}.security-mark i{font-style:normal;font-size:2.4rem;font-weight:950}.security-card p{max-width:650px;color:var(--muted);line-height:1.65}.security-list{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.security-list span{padding:.75rem .8rem;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:.76rem;font-weight:800}.security-list span::before{content:"✓";margin-right:.4rem;color:#679f20}

.final-cta{position:relative;overflow:hidden;padding:clamp(6rem,11vw,11rem) max(4vw,28px);background:#171717;color:#fff;text-align:center;isolation:isolate}.final-cta .section-kicker{color:var(--accent)}.final-cta h2{max-width:1100px;margin:.8rem auto 1rem;font-size:clamp(3rem,6vw,6.5rem)}.final-cta p{color:#aaa69e}.final-cta-button{margin-top:1rem;min-width:160px;border-radius:14px}.cta-glow{position:absolute;z-index:-1;width:720px;height:720px;left:50%;top:50%;border-radius:50%;background:radial-gradient(circle,rgba(200,255,61,.17),transparent 65%);transform:translate(-50%,-50%);animation:cta-pulse 7s ease-in-out infinite}@keyframes cta-pulse{50%{transform:translate(-50%,-50%) scale(1.12);opacity:.7}}
.marketing-footer{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:3rem;padding:4rem max(4vw,28px) 2rem;background:#111;color:#fff}.footer-brand p{max-width:330px;color:#858179;line-height:1.5}.marketing-footer>div:not(.footer-brand):not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.marketing-footer b{margin-bottom:.45rem}.marketing-footer a,.marketing-footer button{border:0;background:transparent;color:#aaa69e;padding:0;text-decoration:none;font-size:.83rem;font-weight:650}.marketing-footer a:hover,.marketing-footer button:hover{color:#fff}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:1.5rem;border-top:1px solid #2f2f2d;color:#77736c;font-size:.75rem}

@media(max-width:1180px){
  .flow-card{opacity:.72}.flow-upload{left:1%}.flow-select{right:1%}.flow-match{right:4%}
  .product-body{grid-template-columns:170px 1fr}.mock-workflow{grid-template-columns:1fr 1fr}.mock-step:nth-child(2){border-right:0}.mock-step:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .workflow-track{grid-template-columns:repeat(3,1fr)}.workflow-track article:nth-child(3){border-right:0}.workflow-track article:nth-child(-n+3){border-bottom:1px solid #393936}.workflow-track article:nth-child(4){border-left:1px solid #393936}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .proof-section,.demo-section{grid-template-columns:1fr}.demo-copy,.proof-copy{padding-left:0}.demo-device,.proof-stack{width:100%;max-width:940px;margin:0 auto}.proof-stack{min-height:500px}
  .security-card{grid-template-columns:120px 1fr}.security-list{grid-column:1/-1}
}
@media(max-width:900px){
  .desktop-nav{display:none}.menu-button{display:block}.marketing-header{min-height:72px}.marketing-hero{min-height:auto;padding-top:5rem}.marketing-hero h1{font-size:clamp(3rem,10vw,5.8rem)}
  .hero-copy{width:100%}.flow-card{display:none}.product-side{display:none}.product-body{grid-template-columns:1fr;min-height:auto}.product-main{padding:1.2rem}.window-bar{grid-template-columns:auto 1fr}.window-live{display:none}.mock-stats{grid-template-columns:1fr 1fr}.mock-gallery{grid-template-columns:repeat(3,1fr)}
  .trust-ribbon{grid-template-columns:1fr 1fr}.trust-ribbon>div:nth-child(3){border-left:0}.trust-ribbon>div:nth-child(-n+2){border-bottom:0}
  .split-heading{grid-template-columns:1fr;gap:1.2rem}.workflow-track{grid-template-columns:1fr 1fr}.workflow-track article{border-right:1px solid #393936;border-bottom:1px solid #393936}.workflow-track article:nth-child(even){border-right:0}.workflow-track article:nth-child(3){border-right:1px solid #393936}.workflow-track article:last-child{grid-column:1/-1;border-right:0;border-bottom:0}.workflow-track article:nth-child(4){border-left:0}
  .pricing-grid{grid-template-columns:1fr}.pricing-grid article{min-height:410px}.free-test-card{align-items:flex-start;flex-direction:column}
  .public-review-stats{grid-template-columns:1fr 1fr}.public-testimonials{grid-template-columns:1fr}
  .marketing-footer{grid-template-columns:1.5fr 1fr 1fr}.marketing-footer>div:nth-child(4){grid-column:2}.footer-bottom{grid-column:1/-1}
}
@media(max-width:680px){
  .marketing-header{padding:.75rem 1rem}.brand{font-size:1.28rem}.marketing-hero{padding-left:1rem;padding-right:1rem}.marketing-hero h1{font-size:clamp(2.85rem,14vw,4.7rem)}.hero-actions{align-items:stretch;flex-direction:column}.hero-primary,.demo-link{width:100%}.hero-trust-line{justify-content:flex-start;text-align:left}.hero-kicker{justify-content:center}
  .product-window{border-radius:18px}.window-address{display:none}.window-bar{grid-template-columns:1fr auto}.product-main{padding:.8rem}.mock-heading{align-items:flex-start;flex-direction:column}.mock-heading button{width:100%}.mock-stats{gap:.45rem}.mock-stats>div{padding:.75rem}.mock-stats b{font-size:1.05rem}.mock-workflow{grid-template-columns:1fr}.mock-step,.mock-step:nth-child(2),.mock-step:nth-child(3),.mock-step:nth-child(4){border-right:0;border-bottom:1px solid var(--line)}.mock-step:last-child{border-bottom:0}.mock-gallery{grid-template-columns:1fr 1fr}.mock-gallery .mock-photo:last-child{display:none}
  .trust-ribbon{grid-template-columns:1fr;padding-left:1rem;padding-right:1rem}.trust-ribbon>div,.trust-ribbon>div+div{border-left:0;border-top:1px solid var(--line);border-bottom:0}.trust-ribbon>div:last-child{border-bottom:1px solid var(--line)}
  .marketing-section{padding-left:1rem;padding-right:1rem}.section-heading h2,.proof-copy h2,.security-card h2,.final-cta h2,.demo-copy h2{font-size:clamp(2.55rem,12vw,4.2rem)}
  .workflow-track{grid-template-columns:1fr}.workflow-track article,.workflow-track article:nth-child(3),.workflow-track article:nth-child(4){grid-column:auto;border-left:0;border-right:0;border-bottom:1px solid #393936}.workflow-track article:last-child{grid-column:auto}
  .demo-photo-grid{grid-template-columns:1fr 1fr}.demo-photo-card:last-child{display:none}.demo-message{align-items:flex-start;flex-direction:column}.demo-progress b{width:24px;margin:0 .25rem}.demo-progress span{font-size:.68rem}.demo-progress span i{width:25px;height:25px}.demo-action{width:100%}.demo-reset{width:100%;margin:.5rem 0 0}
  .feature-grid{grid-template-columns:1fr}.feature-grid article.feature-large{grid-column:auto;min-height:390px}.feature-visual{left:1rem;right:1rem;top:auto;bottom:1rem;width:auto;height:180px}.feature-large h3,.feature-large p{max-width:100%}.feature-large p{padding-bottom:190px}
  .proof-stack{min-height:610px}.proof-card{width:92%}.proof-card-one{right:2%}.proof-card-two{left:0;top:185px}.proof-card-three{right:0;bottom:0}
  .pricing-grid article{min-height:400px}.public-review-stats{grid-template-columns:1fr}.security-card{grid-template-columns:1fr;padding:2rem 1rem}.security-mark{width:100px;height:115px}.security-list{grid-template-columns:1fr}
  .marketing-footer{grid-template-columns:1fr 1fr;padding-left:1rem;padding-right:1rem}.footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:.4rem}
}
@media(max-width:420px){.demo-photo-grid{grid-template-columns:1fr}.demo-photo-card:nth-child(2){display:none}.mock-stats{grid-template-columns:1fr}.mock-gallery{grid-template-columns:1fr}.mock-gallery .mock-photo:nth-child(2){display:none}.proof-stack{min-height:660px}.marketing-footer{grid-template-columns:1fr}.marketing-footer>div:nth-child(4){grid-column:auto}}
@media(prefers-reduced-motion:reduce){.ambient-orb,.flow-card,.cta-glow{animation:none!important}.accent-button{transition:none}}
@media(max-width:900px){.marketing-header .desktop-nav{display:none!important}.marketing-header .menu-button{display:block}}

/* GaliVue V3.2.1 — interactive, beginner-friendly and fully responsive public experience */
body{font-family:"Avenir Next","SF Pro Text",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.marketing-page h1,.marketing-page h2,.marketing-page h3,.marketing-header .brand,.mobile-menu .brand,.marketing-footer .brand{font-family:"Avenir Next","SF Pro Display",Inter,ui-sans-serif,system-ui,sans-serif}
.marketing-page h1,.marketing-page h2,.marketing-page h3,.marketing-page p,.marketing-page li,.marketing-page button,.marketing-page a{hyphens:none;overflow-wrap:normal;word-break:normal}
.marketing-page h1,.marketing-page h2,.marketing-page h3{text-wrap:balance}
.marketing-page p{text-wrap:pretty}
.mock-mode{display:flex;align-items:center;gap:.45rem;margin-top:.55rem}.mock-mode span,.mock-mode b{display:inline-flex;align-items:center;min-height:28px;padding:.35rem .55rem;border-radius:999px;font-size:.67rem}.mock-mode span{background:#171717;color:#fff}.mock-mode b{background:var(--accent);color:#171717}

/* Progressive reveal: content remains visible if JavaScript is unavailable. */
.js-reveal .reveal-on-scroll{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}
.js-reveal .reveal-on-scroll.is-visible{opacity:1;transform:none}

/* Animated workflow */
.workflow-section{position:relative;overflow:hidden}
.workflow-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 15%,rgba(200,255,61,.09),transparent 25%),radial-gradient(circle at 85% 75%,rgba(200,255,61,.07),transparent 28%);pointer-events:none}
.animated-workflow{position:relative;overflow:visible;border-radius:25px}
.animated-workflow article{position:relative;min-height:410px;overflow:hidden;transition:transform .25s ease,background .25s ease}
.animated-workflow article:hover{transform:translateY(-6px);background:#20201f}
.animated-workflow article:not(:last-child)::after{content:"→";position:absolute;z-index:3;right:-13px;top:48%;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#171717;font-weight:950;animation:workflow-arrow 2.2s ease-in-out infinite}
@keyframes workflow-arrow{0%,100%{transform:translateX(-2px)}50%{transform:translateX(3px)}}
.step-mini,.step-progress,.step-stars,.step-match,.step-delivery{position:absolute;left:1.25rem;right:1.25rem;bottom:1.2rem;min-height:76px;padding:.85rem;border:1px solid #41413e;border-radius:15px;background:#262625;color:#fff}
.step-mini{display:flex;align-items:center;justify-content:space-between}.step-mini strong{font-size:.78rem}.step-mini em{padding:.3rem .48rem;border-radius:999px;background:var(--accent);color:#111;font-size:.66rem;font-style:normal;font-weight:900;animation:soft-pulse 2.8s ease-in-out infinite}
.create-project-icon{display:flex!important;align-items:center;justify-content:center;gap:.35rem}.create-project-icon i{width:12px;height:12px;border-radius:3px;background:var(--accent)}.create-project-icon b{font-size:.7rem}
.step-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.55rem}.step-progress::before{content:"";grid-column:1/-1;height:8px;border-radius:999px;background:#454542}.step-progress i{position:absolute;left:.85rem;right:.85rem;top:.85rem;height:8px;border-radius:999px;background:var(--accent);transform-origin:left;animation:upload-progress 5s ease-in-out infinite}.step-progress span,.step-progress b{margin-top:.65rem;font-size:.7rem}.step-progress b{color:var(--accent)}
@keyframes upload-progress{0%,15%{transform:scaleX(.08)}70%,100%{transform:scaleX(1)}}
.step-stars{display:flex;align-items:center;justify-content:center;gap:.5rem}.step-stars i{padding:.5rem .6rem;border:1px solid #4b4b48;border-radius:9px;font-size:.72rem;font-style:normal;animation:star-light 4s ease-in-out infinite}.step-stars i:nth-child(2){animation-delay:.45s}.step-stars i:nth-child(3){animation-delay:.9s}
@keyframes star-light{0%,18%,100%{background:transparent;color:#aaa}35%,70%{background:var(--accent);border-color:var(--accent);color:#111}}
.step-match{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.step-match code{overflow:hidden;color:#ddd;font-size:.7rem;white-space:nowrap;animation:filename-type 4.5s steps(13,end) infinite}.step-match b{white-space:nowrap;color:var(--accent);font-size:.7rem;animation:match-reveal 4.5s ease-in-out infinite}
@keyframes filename-type{0%{max-width:0}45%,100%{max-width:105px}}@keyframes match-reveal{0%,48%{opacity:0;transform:translateX(5px)}65%,100%{opacity:1;transform:none}}
.step-delivery{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.step-delivery span{font-size:.72rem}.step-delivery b{padding:.5rem .65rem;border-radius:9px;background:var(--accent);color:#111;font-size:.68rem;animation:soft-pulse 2.8s ease-in-out infinite}
@keyframes soft-pulse{0%,100%{box-shadow:0 0 0 0 rgba(200,255,61,0)}50%{box-shadow:0 0 0 7px rgba(200,255,61,.12)}}

/* Interactive demo */
.demo-helper{min-height:1.35rem;margin:.75rem 0;color:#6c675f;font-size:.82rem;font-weight:750}
.demo-helper.is-ready{color:#41671b}
.demo-photo-card{position:relative;transition:opacity .25s ease,transform .35s ease,border-color .25s ease}
.demo-match-label{display:none;margin-top:.7rem;padding:.55rem .65rem;border-radius:9px;background:#171717;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.67rem}.demo-match-label span{float:right;color:var(--accent);font-weight:850}
.demo-photo-card.demo-matched .demo-match-label{display:block;animation:match-card-in .4s ease both}
.demo-photo-card.demo-matched .demo-stars{display:none}
@keyframes match-card-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.demo-mobile-nav{display:none;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.85rem}.demo-mobile-nav button{width:46px;height:46px;padding:0}.demo-mobile-nav span{font-size:.78rem;font-weight:850;color:var(--muted)}
.demo-delivery{animation:delivery-reveal .55s cubic-bezier(.2,.8,.2,1) both}@keyframes delivery-reveal{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}

/* Feature cards */
.feature-grid-nine{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-grid-nine article{position:relative;overflow:hidden;min-height:360px;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}
.feature-grid-nine article:hover{transform:translateY(-7px);border-color:#b9b2a7;box-shadow:0 24px 55px rgba(33,29,23,.11)}
.feature-grid-nine article.feature-large{grid-column:span 2}
.feature-animate::after{content:"";position:absolute;inset:auto -25% -55% 20%;height:70%;border-radius:50%;background:radial-gradient(circle,rgba(200,255,61,.18),transparent 68%);opacity:0;transition:opacity .25s ease}.feature-animate:hover::after{opacity:1}
.group-vote-visual,.filename-visual,.watermark-visual,.export-visual,.private-link-visual,.expiry-visual,.feedback-visual{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:145px;margin-bottom:1.2rem;border:1px solid var(--line);border-radius:17px;background:#f7f5ef}
.group-vote-visual{position:relative;flex-wrap:wrap;align-content:center;padding:1rem}.vote-photo{width:62px;height:76px;border-radius:10px;background:linear-gradient(145deg,#1d1d1d,#8d7d67)}.group-vote-visual span{padding:.4rem .5rem;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.65rem;font-weight:850;animation:voter-arrive 5s ease-in-out infinite}.group-vote-visual span:nth-of-type(2){animation-delay:.45s}.group-vote-visual span:nth-of-type(3){animation-delay:.9s}.group-vote-visual b{width:100%;text-align:center;font-size:.68rem;color:#5b6250}
@keyframes voter-arrive{0%,15%{opacity:.25;transform:translateY(5px)}35%,100%{opacity:1;transform:none}}
.filename-visual{flex-wrap:wrap;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.filename-visual code{font-size:.72rem}.filename-visual strong{color:#4c751e;font-size:.7rem;animation:match-reveal 4.5s ease-in-out infinite}
.watermark-visual{position:relative;overflow:hidden;background:linear-gradient(145deg,#242424,#9c8b76)}.watermark-visual::before{content:"";position:absolute;inset:20% 18%;border-radius:30% 70% 60% 40%;background:rgba(255,235,205,.35)}.watermark-visual span{position:relative;color:rgba(255,255,255,.78);font-size:.78rem;font-weight:900;letter-spacing:.13em;animation:watermark-fade 4s ease-in-out infinite}@keyframes watermark-fade{0%,15%{opacity:0}45%,100%{opacity:1}}
.export-visual{flex-wrap:wrap}.export-visual span{display:grid;place-items:center;width:58px;height:58px;border-radius:13px;background:#171717;color:#fff;font-size:.73rem;font-weight:900;animation:export-slide 4s ease-in-out infinite}.export-visual span:nth-child(2){animation-delay:.3s}.export-visual b{width:100%;text-align:center;font-size:.68rem}@keyframes export-slide{0%,15%{transform:translateY(10px);opacity:.35}40%,100%{transform:none;opacity:1}}
.private-link-visual{flex-direction:column}.private-link-visual i{font-style:normal;font-size:1.7rem;animation:lock-pop 4s ease-in-out infinite}.private-link-visual code{padding:.45rem .6rem;border-radius:8px;background:#fff;font-size:.67rem}@keyframes lock-pop{0%,18%{transform:scale(.7);opacity:.2}45%,100%{transform:scale(1);opacity:1}}
.expiry-visual{flex-direction:column}.expiry-visual strong{font-size:3.7rem;letter-spacing:-.08em;animation:expiry-count 6s steps(1,end) infinite}.expiry-visual span{font-size:.7rem;font-weight:850;color:var(--muted)}@keyframes expiry-count{0%,24%{content:"30"}25%,49%{transform:scale(.98)}50%,74%{transform:scale(1.02)}75%,100%{transform:scale(1)}}
.feedback-visual span{font-size:1.3rem;color:#c2bcb1;animation:feedback-fill 5s ease-in-out infinite}.feedback-visual span:nth-child(2){animation-delay:.2s}.feedback-visual span:nth-child(3){animation-delay:.4s}.feedback-visual span:nth-child(4){animation-delay:.6s}.feedback-visual span:nth-child(5){animation-delay:.8s}@keyframes feedback-fill{0%,20%{color:#c2bcb1;transform:scale(.9)}45%,100%{color:#171717;transform:scale(1)}}

/* Product proof animation */
.proof-section.is-visible .proof-card-one{animation:proof-one .75s .1s both}.proof-section.is-visible .proof-card-two{animation:proof-two .75s .35s both}.proof-section.is-visible .proof-card-three{animation:proof-three .75s .6s both}.proof-section.is-visible .proof-card-three button{animation:soft-pulse 2.8s 1.4s ease-in-out infinite}
.proof-section.is-visible .match-line strong{animation:match-reveal 3.8s 1s ease-in-out infinite}
@keyframes proof-one{from{opacity:0;transform:translate(22px,22px) rotate(4deg)}to{opacity:1;transform:rotate(2deg)}}
@keyframes proof-two{from{opacity:0;transform:translate(-24px,18px) rotate(-4deg)}to{opacity:1;transform:rotate(-2deg)}}
@keyframes proof-three{from{opacity:0;transform:translate(18px,28px) rotate(3deg)}to{opacity:1;transform:rotate(1deg)}}

/* Pricing clarity */
.pricing-grid article{position:relative}
.pricing-grid .plan-top h3 small{display:block;margin-top:.35rem;font-size:.72rem;letter-spacing:0;color:var(--muted)}
.cancel-note{display:block;margin-top:.8rem;text-align:center;color:var(--muted);font-size:.73rem;font-weight:720}
.extra-plan-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem;max-width:var(--marketing-max);margin:1.5rem auto 0}.extra-plan-badges span{padding:.72rem 1rem;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.8rem;font-weight:850}

/* Honest review progress */
.review-threshold{grid-template-columns:1fr!important;text-align:left!important}
.review-threshold-top{display:flex;align-items:center;gap:1rem}.review-threshold-count{display:grid;place-items:center;min-width:70px;height:70px;border-radius:18px;background:#171717;color:#fff;font-size:1.45rem;font-weight:900}.review-threshold-copy h3,.review-threshold-copy p{margin:.15rem 0}.review-progress-track{height:10px;margin-top:1.2rem;overflow:hidden;border-radius:999px;background:#ddd7cb}.review-progress-track i{display:block;height:100%;border-radius:inherit;background:var(--accent-deep);transition:width .8s ease}.review-progress-labels{display:flex;justify-content:space-between;margin-top:.45rem;color:var(--muted);font-size:.68rem;font-weight:800}

/* Privacy animation */
.security-animation{position:relative;display:grid;place-items:center;min-height:190px}.security-lock{position:relative;z-index:2;display:grid;place-items:center;width:112px;height:124px;border:2px solid #171717;border-radius:38px;background:var(--accent);animation:security-lock 7s ease-in-out infinite}.security-lock span{position:absolute;top:-30px;width:58px;height:48px;border:2px solid #171717;border-bottom:0;border-radius:34px 34px 0 0}.security-lock i{font-style:normal;font-size:2rem;font-weight:950}.security-link,.security-status{position:absolute;padding:.55rem .7rem;border:1px solid var(--line);border-radius:10px;background:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.65rem;box-shadow:0 10px 25px rgba(0,0,0,.08)}.security-link{top:0;left:0;animation:security-link 7s ease-in-out infinite}.security-status{right:0;bottom:4px;animation:security-status 7s ease-in-out infinite}
@keyframes security-link{0%,12%{opacity:0;transform:translateX(-10px)}25%,72%{opacity:1;transform:none}86%,100%{opacity:.35}}
@keyframes security-lock{0%,20%{transform:scale(.88);opacity:.45}38%,100%{transform:scale(1);opacity:1}}
@keyframes security-status{0%,46%{opacity:0;transform:translateY(8px)}62%,100%{opacity:1;transform:none}}
.security-trust-line{margin-top:1rem;padding:.85rem 1rem;border-left:4px solid var(--accent-deep);background:#fff;border-radius:0 12px 12px 0;color:#2c2c2a!important;font-weight:750}

/* Final CTA and footer */
.cta-card-shapes i{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:.35rem;width:170px;height:120px;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012));box-shadow:0 25px 55px rgba(0,0,0,.2);animation:cta-card-float 10s ease-in-out infinite;text-align:left}.cta-card-shapes i b{font-style:normal;font-size:1rem;line-height:1.1}.cta-card-shapes i span{font-style:normal;color:#aaa69e;font-size:.72rem;line-height:1.35}.cta-card-shapes i:nth-child(1){left:8%;top:18%;transform:rotate(-8deg)}.cta-card-shapes i:nth-child(2){right:7%;top:30%;transform:rotate(9deg);animation-delay:-3s}.cta-card-shapes i:nth-child(3){left:24%;bottom:8%;transform:rotate(5deg);animation-delay:-6s}@keyframes cta-card-float{50%{translate:0 -16px}}
.final-cta.is-visible .final-cta-button{animation:soft-pulse 2.8s .6s ease-in-out 2}
.final-cta-button span{transition:transform .2s ease}.final-cta-button:hover span{transform:translateX(5px)}
.marketing-footer.is-visible>div{animation:footer-rise .55s both}.marketing-footer.is-visible>div:nth-child(2){animation-delay:.08s}.marketing-footer.is-visible>div:nth-child(3){animation-delay:.16s}.marketing-footer.is-visible>div:nth-child(4){animation-delay:.24s}.marketing-footer.is-visible>div:nth-child(5){animation-delay:.32s}@keyframes footer-rise{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}
.marketing-footer .brand:hover span{box-shadow:0 0 0 7px rgba(200,255,61,.12)}

/* Mobile save/share wording */
body.mobile-save-capable #downloadFinalAll::after{content:""}

@media(max-width:1180px){
  .animated-workflow article:not(:last-child)::after{display:none}
  .feature-grid-nine{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-grid-nine article.feature-large{grid-column:span 1}
}
@media(max-width:900px){
  .animated-workflow article{min-height:390px}
  .security-card{grid-template-columns:150px 1fr}.security-list{grid-column:1/-1}
  .pricing-grid .plan-starter{order:1}.pricing-grid .plan-solo{order:2}.pricing-grid .plan-pro{order:3}
}
@media(max-width:680px){
  .marketing-page h1,.marketing-page h2,.marketing-page h3{max-width:100%}
  .marketing-hero h1{font-size:clamp(2.7rem,13vw,4.35rem);line-height:.93;letter-spacing:-.06em}
  .marketing-hero .hero-copy>p{font-size:1rem;text-wrap:pretty}
  .hero-kicker{max-width:100%;font-size:.63rem;line-height:1.35;text-align:left}
  .mock-mode{flex-wrap:wrap}
  .animated-workflow article{min-height:365px}
  .demo-photo-grid{display:block;min-height:455px}.demo-photo-card{display:none!important}.demo-photo-card.is-current{display:block!important}.demo-mobile-nav{display:flex}.demo-device{padding-bottom:1rem}.demo-stars button{min-height:48px;min-width:72px}
  .feature-grid-nine{grid-template-columns:1fr}.feature-grid-nine article.feature-large{grid-column:auto}.feature-grid-nine article{min-height:350px}
  .proof-card-one b{font-size:1.05rem}
  .pricing-grid .plan-starter{order:1}.pricing-grid .plan-solo{order:2}.pricing-grid .plan-pro{order:3}
  .extra-plan-badges{align-items:stretch;flex-direction:column}.extra-plan-badges span{text-align:center}
  .review-threshold-top{align-items:flex-start;flex-direction:column}.review-threshold-count{min-width:64px;height:64px}
  .security-card{grid-template-columns:1fr}.security-animation{min-height:170px}.security-link{left:4%}.security-status{right:4%}
  .cta-card-shapes i{width:132px;height:90px;opacity:.72;padding:.7rem}.cta-card-shapes i b{font-size:.8rem}.cta-card-shapes i span{font-size:.62rem}.cta-card-shapes i:nth-child(3){display:none}
}
@media(max-width:420px){
  .marketing-hero h1{font-size:clamp(2.45rem,13.6vw,3.75rem)}
  .hero-trust-line{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:.55rem}.hero-trust-line span{font-size:.72rem}
  .mock-gallery{grid-template-columns:1fr!important}.mock-gallery .mock-photo:nth-child(2),.mock-gallery .mock-photo:nth-child(3){display:none}
  .demo-photo-grid{min-height:430px}.demo-image{min-height:260px}
  .step-mini,.step-progress,.step-stars,.step-match,.step-delivery{left:1rem;right:1rem}
  .security-link,.security-status{font-size:.58rem}
}
@media(prefers-reduced-motion:reduce){
  .js-reveal .reveal-on-scroll{opacity:1;transform:none;transition:none}
  .animated-workflow article,.feature-grid-nine article{transition:none}
  .animated-workflow article::after,.step-mini em,.step-progress i,.step-stars i,.step-match code,.step-match b,.step-delivery b,.group-vote-visual span,.filename-visual strong,.watermark-visual span,.export-visual span,.private-link-visual i,.feedback-visual span,.proof-card,.proof-card-three button,.security-lock,.security-link,.security-status,.cta-card-shapes i,.final-cta-button,.marketing-footer>div{animation:none!important}
}
.extra-plan-badges span{color:#171717}

/* GaliVue V3.2.2 — wedding-first public experience */
.workflow-light{background:#f7f4ed;color:#161616;padding-top:clamp(4.5rem,7vw,8rem);padding-bottom:clamp(4rem,6vw,7rem)}
.workflow-light::before{background:radial-gradient(circle at 50% 22%,rgba(200,255,61,.12),transparent 34%)}
.workflow-light-heading{max-width:980px;margin:0 auto 2.4rem;text-align:center}
.workflow-pill{display:inline-flex;padding:.5rem 1rem;border-radius:999px;background:#eaf4d6;color:#2f6932;font-size:.78rem;font-weight:900;letter-spacing:.06em}
.workflow-light-heading h2{max-width:920px;margin:1rem auto .8rem;font-size:clamp(2.7rem,5.8vw,5.5rem);line-height:.94;letter-spacing:-.065em;text-wrap:balance}
.workflow-light-heading h2::after{content:"";display:block;width:min(280px,32vw);height:7px;margin:.35rem auto 0;border-radius:999px;background:var(--accent);transform:rotate(-2deg)}
.workflow-light-heading p{margin:1.1rem auto 0;color:#6d6a63;font-size:clamp(.95rem,1.4vw,1.25rem);line-height:1.45}
.workflow-showcase{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch;max-width:1480px;margin:0 auto;padding:0 clamp(.4rem,2vw,1.5rem)}
.workflow-showcase-card{display:flex;flex-direction:column;min-width:0;padding:1.15rem 1rem 1rem;border:1px solid #e0dbd0;border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(37,32,24,.055);transition:transform .25s ease,box-shadow .25s ease}
.workflow-showcase-card:hover{transform:translateY(-7px);box-shadow:0 24px 54px rgba(37,32,24,.11)}
.workflow-number{align-self:flex-start;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);font-size:.72rem;font-weight:950}
.workflow-round-icon{display:grid;place-items:center;width:68px;height:68px;margin:.25rem auto .55rem;border-radius:50%;background:#faf6ef;font-size:2rem}
.workflow-showcase-card h3{margin:.2rem 0 .85rem;text-align:center;font-size:1.12rem}
.workflow-showcase-card>p{min-height:78px;margin:1rem .15rem;color:#6d6a63;font-size:.82rem;line-height:1.55}
.workflow-showcase-card footer{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:auto;padding:.65rem;border-radius:12px;background:#eff8e3;color:#2d6737;font-size:.74rem;font-weight:850}
.workflow-showcase-card:nth-of-type(3) footer{background:#e7f4ff;color:#2b4e77}.workflow-showcase-card:nth-of-type(5) footer{background:#fff2d9;color:#84500c}.workflow-showcase-card:nth-of-type(7) footer{background:#f1e7ff;color:#5b3191}.workflow-showcase-card:nth-of-type(9) footer{background:#edf7e8;color:#2f6932}
.workflow-arrow{align-self:center;display:grid;place-items:center;width:36px;height:36px;margin:0 -4px;border-radius:50%;background:#f0ede6;color:#a7a198;font-size:1.65rem;font-style:normal;z-index:2}
.workflow-ui{min-height:250px;padding:.78rem;border:1px solid #e4dfd5;border-radius:14px;background:#fcfbf8;font-size:.62rem;overflow:hidden}
.workflow-ui>b{display:block;margin-bottom:.55rem;font-size:.66rem}.workflow-ui label{display:block;margin:.35rem 0;color:#777;font-size:.53rem}.workflow-ui label span{display:block;margin-top:.18rem;padding:.38rem;border:1px solid #ded9cf;border-radius:6px;background:#fff;color:#222}.limit-row,.mini-rating-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;margin:.45rem 0}.limit-row i,.mini-rating-row span{padding:.36rem .15rem;border:1px solid #e2ddd4;border-radius:6px;background:#fff;font-style:normal;text-align:center}.workflow-ui button{width:100%;margin-top:.45rem;padding:.46rem;border:0;border-radius:6px;background:var(--accent);font-size:.58rem;font-weight:900}.mini-drop{display:grid;place-items:center;min-height:64px;border:1px dashed #cfc8bd;border-radius:8px;background:#fff;font-size:1rem}.mini-drop small{display:block;margin-top:.2rem;font-size:.5rem}.mini-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.2rem;margin:.4rem 0}.mini-photo-grid i{aspect-ratio:1.3;border-radius:5px;background:center/cover no-repeat url('/demo/wedding2.jpg')}.mini-photo-grid i:nth-child(2){background-image:url('/demo/wedding3.jpg')}.mini-photo-grid i:nth-child(3){background-image:url('/demo/wedding4.jpg')}.mini-photo-grid i:nth-child(4){background-image:url('/demo/wedding5.jpg')}.mini-photo-grid i:nth-child(5){background-image:url('/demo/wedding1.jpg')}.mini-photo-grid i:nth-child(6){background-image:url('/demo/wedding2.jpg');background-position:65% center}.mini-progress{height:4px;border-radius:999px;background:#ddd8cf;overflow:hidden}.mini-progress span{display:block;width:100%;height:100%;background:var(--accent);animation:upload-loop 6s ease-in-out infinite}.workflow-ui>small{display:block;margin-top:.25rem;color:#6c695f}.matching-ui p{margin:.15rem 0 .5rem;color:#666;font-size:.53rem;line-height:1.3}.matching-ui code{display:block;margin-top:.3rem;padding:.35rem;border-top:1px solid #e5e0d8;font-size:.5rem}.matching-ui code em{float:right;color:#5b9a39;font-style:normal}.mini-delivery-photo{height:105px;border-radius:8px;background:center 38%/cover no-repeat url('/demo/wedding4.jpg')}.delivery-ui small,.delivery-ui span{display:block;margin-top:.38rem}.delivery-ui button{background:#111;color:#fff}.workflow-audience{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:.65rem;max-width:1480px;margin:1.6rem auto 0;padding:1rem 1.2rem;border:1px solid #e0dbd0;border-radius:18px;background:#fff}.workflow-audience>b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ffe5ee;color:#e05b88;font-size:1.4rem}.workflow-audience strong{font-size:1.05rem}.workflow-audience>span{color:#777}.workflow-audience>div{display:flex;gap:1.3rem}.workflow-audience i{display:flex;flex-direction:column;align-items:center;font-size:1.3rem;font-style:normal}.workflow-audience small{margin-top:.2rem;font-size:.64rem;font-weight:700}

/* Real CC0 wedding demo photographs */
.mock-photo,.demo-image,.vote-photo,.watermark-visual{background-color:#2c2925;background-size:cover;background-position:center}.mock-photo::before,.demo-image::before{display:none}.mock-photo.photo-one,.demo-image-one{background-image:url('/demo/wedding1.jpg')}.mock-photo.photo-two,.demo-image-two{background-image:url('/demo/wedding2.jpg')}.mock-photo.photo-three,.demo-image-three{background-image:url('/demo/wedding4.jpg')}.vote-photo{background-image:url('/demo/wedding5.jpg')}.watermark-visual{background-image:linear-gradient(rgba(22,22,22,.12),rgba(22,22,22,.12)),url('/demo/wedding3.jpg')}.watermark-visual::before{display:none}.watermark-visual span{padding:.38rem .55rem;border-radius:5px;background:rgba(20,20,20,.28);backdrop-filter:blur(2px)}
.flow-upload i{background:center/cover no-repeat url('/demo/wedding3.jpg')}

/* Better responsive cards before content becomes cramped */
@media(max-width:1260px){
  .workflow-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:900px}.workflow-arrow{display:none}.workflow-showcase-card:last-of-type{grid-column:1/-1;max-width:440px;width:100%;justify-self:center}.workflow-audience{grid-template-columns:auto 1fr}.workflow-audience>span{grid-column:2}.workflow-audience>div{grid-column:1/-1;justify-content:center;flex-wrap:wrap}
  .feature-grid-nine{grid-template-columns:repeat(2,minmax(310px,1fr))}
  .marketing-header .desktop-nav{display:none!important}.marketing-header .menu-button{display:block}
}
@media(max-width:760px){
  .workflow-light-heading br{display:none}.workflow-showcase{grid-template-columns:1fr;max-width:520px}.workflow-showcase-card:last-of-type{grid-column:auto;max-width:none}.workflow-showcase-card{padding:1rem}.workflow-ui{min-height:230px}.workflow-showcase-card>p{min-height:0}.workflow-audience{grid-template-columns:auto 1fr}.workflow-audience>div{display:grid;grid-template-columns:1fr 1fr;width:100%}.workflow-audience i{text-align:center}
  .feature-grid-nine{grid-template-columns:1fr}.feature-grid-nine article{min-height:auto}.feature-grid-nine article.feature-large{grid-column:auto}.feature-visual{position:relative;inset:auto;width:100%;height:210px;margin-top:1rem}.feature-large h3,.feature-large p{max-width:100%}.feature-large p{padding-bottom:0}
}
@media(max-width:430px){.workflow-light{padding-inline:.35rem}.workflow-light-heading h2{font-size:2.45rem}.workflow-light-heading p br{display:none}.workflow-audience{padding:.8rem}.workflow-audience>span{font-size:.82rem}.workflow-audience>div{grid-template-columns:1fr}.workflow-showcase-card{border-radius:18px}.workflow-ui{min-height:220px}}

.text-action{width:100%;margin-top:.75rem;padding:.65rem;border:0;background:transparent;color:#333;text-decoration:underline;font-weight:800;cursor:pointer}.signup-privacy{margin:.75rem 0 0;color:#6e6a62;font-size:.78rem;text-align:center}.login-form label{display:grid;gap:.35rem}.login-form input{width:100%}


/* GaliVue V3.3 — stability, half-screen and beta-truthfulness pass */
.demo-copy,.proof-copy{padding-left:0!important;min-width:0}
.demo-section,.proof-section{padding-left:max(4vw,28px);padding-right:max(4vw,28px)}
.demo-copy h2,.proof-copy h2{max-width:760px}
.trial-status{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:.85rem 1rem;border:1px solid #cfe3a0;border-radius:14px;background:#f2f9e8;color:#254d24}
.trial-status strong,.trial-status span{display:block}.trial-status span{font-size:.78rem;color:#587053;text-align:right}.trial-status.trial-expired{border-color:#e9b4a9;background:#fff0ec;color:#8b2d23}.trial-status.trial-expired span{color:#8b554d}
.project-form.trial-locked{opacity:.62}.project-form.trial-locked::after{content:"Free trial ended · project creation is read-only until upgrade";display:block;margin-top:1rem;padding:.8rem 1rem;border-radius:12px;background:#fff0ec;color:#8b2d23;font-weight:800;text-align:center}
@media(max-width:1320px){
  .demo-section,.proof-section{grid-template-columns:1fr!important;gap:2.5rem!important;max-width:var(--marketing-max)}
  .demo-copy,.proof-copy{width:100%;max-width:900px;margin:0 auto}
  .demo-device,.proof-stack{width:100%;max-width:940px;margin:0 auto}
}
@media(max-width:680px){
  .demo-section,.proof-section{padding-left:1rem;padding-right:1rem}
  .trial-status{flex-direction:column}.trial-status span{text-align:left}
}
.legal-page{min-height:100vh;background:var(--bg);color:var(--ink)}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem max(4vw,24px);border-bottom:1px solid var(--line);background:rgba(245,242,235,.96)}
.legal-header a:not(.brand){color:var(--ink);text-decoration:none;font-weight:800}
.legal-shell{width:min(860px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,8vw,6rem) 0}
.legal-shell .section-kicker{margin-bottom:.7rem}.legal-shell h1{margin:0 0 1rem;font-size:clamp(2.6rem,7vw,5rem);line-height:.95;letter-spacing:-.055em}.legal-shell h2{margin:2.4rem 0 .7rem;font-size:1.35rem}.legal-shell p,.legal-shell li{color:var(--muted);line-height:1.7}.legal-shell ul{padding-left:1.2rem}.legal-note,.legal-beta-note{padding:1rem 1.1rem;border:1px solid #d9d2c6;border-radius:14px;background:#fff}.legal-footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.4rem max(4vw,24px);border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}

/* GaliVue V3.3.1 — workflow section matched to the approved visual reference */
.workflow-light{
  background:#faf8f3;
  padding:clamp(3.8rem,6vw,6.6rem) clamp(.75rem,2.1vw,2.1rem) clamp(3.2rem,5vw,5.2rem);
}
.workflow-light-heading{max-width:1000px;margin:0 auto clamp(2rem,3vw,2.8rem);text-align:center}
.workflow-pill{padding:.52rem 1.18rem;background:#edf6dc;color:#226d2f;font-size:.79rem;letter-spacing:.055em}
.workflow-light-heading h2{max-width:990px;margin:.95rem auto .75rem;font-size:clamp(2.9rem,5.15vw,5.25rem);line-height:.98;letter-spacing:-.058em}
.workflow-light-heading h2::after{width:min(330px,28vw);height:6px;margin:.24rem auto 0;background:var(--accent);transform:rotate(-2.2deg)}
.workflow-light-heading p{margin:1rem auto 0;color:#74716b;font-size:clamp(1rem,1.38vw,1.2rem);line-height:1.45}

.workflow-reference-layout{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(.8rem,1.15vw,1.15rem);
  max-width:1510px;
  margin:0 auto;
  padding:0;
  align-items:stretch;
}
.workflow-reference-layout .workflow-showcase-card{
  position:relative;
  min-width:0;
  padding:1.1rem .95rem .85rem;
  border:1px solid #e4dfd6;
  border-radius:22px;
  background:rgba(255,255,255,.93);
  box-shadow:0 14px 34px rgba(46,40,31,.055);
}
.workflow-reference-layout .workflow-showcase-card:hover{transform:none;box-shadow:0 14px 34px rgba(46,40,31,.055)}
.workflow-reference-layout .workflow-number{width:36px;height:36px;font-size:.73rem}
.workflow-reference-layout .workflow-round-icon{width:70px;height:70px;margin:-.05rem auto .55rem;background:#faf6ef}
.workflow-reference-layout .workflow-round-icon svg{width:39px;height:39px;fill:none;stroke:#151515;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.workflow-reference-layout .workflow-showcase-card h3{margin:.12rem 0 .8rem;font-size:clamp(1rem,1.18vw,1.16rem);line-height:1.15}
.workflow-reference-layout .workflow-ui{min-height:268px;padding:.72rem;border-radius:12px;background:#fff;font-size:.61rem}
.workflow-reference-layout .workflow-ui>b{font-size:.66rem;margin-bottom:.45rem}
.workflow-reference-layout .workflow-ui label{margin:.4rem 0;font-size:.52rem;color:#666}
.workflow-reference-layout .workflow-ui label span{padding:.38rem .42rem;background:#fff;color:#222}
.workflow-reference-layout .client-field{display:flex!important;align-items:center;justify-content:space-between}.workflow-reference-layout .client-field em{font-style:normal;color:#777}
.workflow-reference-layout .mini-label{margin-top:.46rem!important;color:#666!important;font-size:.52rem!important}
.workflow-reference-layout .limit-row{gap:.22rem;margin:.34rem 0 .45rem}.workflow-reference-layout .limit-row i{display:flex;justify-content:space-between;gap:.22rem;padding:.38rem .3rem;color:#777}.workflow-reference-layout .limit-row b{color:#222}
.workflow-reference-layout .workflow-ui button{padding:.5rem .4rem;border-radius:6px;font-size:.57rem}
.workflow-reference-layout .mini-drop{min-height:70px;margin:.15rem 0 .35rem;background:#fff}.workflow-reference-layout .mini-drop svg{width:20px;height:20px;fill:none;stroke:#222;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.workflow-reference-layout .mini-drop small{font-size:.49rem;line-height:1.35;text-align:center}
.workflow-reference-layout .mini-photo-grid{gap:.19rem;margin:.32rem 0}.workflow-reference-layout .mini-photo-grid i{position:relative;aspect-ratio:1.36;border-radius:5px}
.workflow-reference-layout .selectable-grid i em{position:absolute;right:4px;bottom:4px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#111;color:var(--accent);font-size:.68rem;font-style:normal}.workflow-reference-layout .selectable-grid i:nth-child(2) em{background:var(--accent);color:#111}.workflow-reference-layout .selectable-grid .muted-star{background:#c7c2ba;color:#fff}
.workflow-reference-layout .mini-progress{margin-top:.25rem}.workflow-reference-layout .upload-ui>small{margin:.18rem 0 0;font-size:.48rem;color:#5f5b55}
.workflow-reference-layout .selection-ui>small{margin-top:-.25rem;font-size:.47rem;color:#777}
.workflow-reference-layout .mini-rating-row{margin:.42rem 0}.workflow-reference-layout .mini-rating-row span{display:flex;justify-content:space-between;gap:.2rem;padding:.33rem .28rem;color:#777}.workflow-reference-layout .mini-rating-row b{color:#222}
.workflow-reference-layout .matching-ui p{font-size:.5rem;line-height:1.35}.workflow-reference-layout .matching-ui code{padding:.36rem .12rem;font-size:.48rem}.workflow-reference-layout .matching-ui code em{color:#6fae3e}
.workflow-reference-layout .mini-delivery-photo{position:relative;height:112px;background-image:url('/demo/wedding4.jpg')}.workflow-reference-layout .mini-download{position:absolute;right:8px;bottom:8px;display:grid!important;place-items:center;width:30px;height:30px;margin:0!important;border-radius:50%;background:#111;color:#fff;font-size:1rem}.workflow-reference-layout .delivery-ui small{font-size:.48rem;line-height:1.35;color:#555}.workflow-reference-layout .delivery-ui>span{text-align:center;font-size:.47rem}.workflow-reference-layout .delivery-ui>strong{display:block;text-align:center;font-size:.5rem}
.workflow-reference-layout .workflow-showcase-card>p{min-height:72px;margin:.9rem .2rem .8rem;color:#69665f;font-size:.79rem;line-height:1.5}
.workflow-reference-layout .workflow-showcase-card footer{min-height:38px;padding:.58rem;border-radius:12px;font-size:.72rem}
.workflow-reference-layout .status-control{background:#eff8e3;color:#2d6737}.workflow-reference-layout .status-safe{background:#e7f4ff;color:#214a73}.workflow-reference-layout .status-easy{background:#fff1d7;color:#8a5b16}.workflow-reference-layout .status-match{background:#f0e4ff;color:#5e3194}.workflow-reference-layout .status-delivery{background:#edf7e8;color:#2f6932}
.workflow-reference-layout .workflow-arrow{position:absolute;display:grid;width:36px;height:36px;margin:0;border-radius:50%;background:#f0ede6;color:#aaa49b;box-shadow:0 0 0 6px #faf8f3;transform:translate(50%,-50%);font-size:1.55rem;z-index:6}
.workflow-reference-layout .workflow-showcase-card:nth-of-type(1)+.workflow-arrow{left:calc(20% - .58rem);top:50%}.workflow-reference-layout .workflow-showcase-card:nth-of-type(2)+.workflow-arrow{left:calc(40% - .28rem);top:50%}.workflow-reference-layout .workflow-showcase-card:nth-of-type(3)+.workflow-arrow{left:60%;top:50%}.workflow-reference-layout .workflow-showcase-card:nth-of-type(4)+.workflow-arrow{left:calc(80% + .28rem);top:50%}
.workflow-reference-layout{position:relative}

.workflow-light .workflow-audience{grid-template-columns:auto auto 1fr auto;max-width:1510px;margin:1.55rem auto 0;padding:.9rem 1.15rem;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(46,40,31,.035)}
.workflow-light .workflow-audience>b{width:44px;height:44px}.workflow-light .workflow-audience strong{font-size:1.02rem}.workflow-light .workflow-audience>span{font-size:.9rem}.workflow-light .workflow-audience>div{gap:1.7rem}.workflow-light .workflow-audience i{font-size:1.25rem}.workflow-light .workflow-audience small{font-size:.62rem}

@media(max-width:1380px){
  .workflow-reference-layout{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1000px;gap:1rem}
  .workflow-reference-layout .workflow-arrow{display:none}
  .workflow-reference-layout .workflow-showcase-card:nth-of-type(4),.workflow-reference-layout .workflow-showcase-card:nth-of-type(5){max-width:none}
  .workflow-reference-layout .workflow-ui{min-height:260px}
  .workflow-light .workflow-audience{max-width:1000px;grid-template-columns:auto 1fr}.workflow-light .workflow-audience>span{grid-column:2}.workflow-light .workflow-audience>div{grid-column:1/-1;justify-content:center}
}
@media(max-width:940px){
  .workflow-reference-layout{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
  .workflow-reference-layout .workflow-showcase-card:last-of-type{grid-column:1/-1;max-width:352px;width:100%;justify-self:center}
}
@media(max-width:640px){
  .workflow-light{padding-inline:.7rem}.workflow-light-heading h2{font-size:clamp(2.45rem,12vw,3.6rem)}.workflow-light-heading br,.workflow-light-heading p br{display:none}
  .workflow-reference-layout{grid-template-columns:1fr;max-width:440px}.workflow-reference-layout .workflow-showcase-card:last-of-type{grid-column:auto;max-width:none}.workflow-reference-layout .workflow-ui{min-height:250px}.workflow-reference-layout .workflow-showcase-card>p{min-height:0;font-size:.84rem}
  .workflow-light .workflow-audience{grid-template-columns:auto 1fr;max-width:440px}.workflow-light .workflow-audience>div{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:.8rem}.workflow-light .workflow-audience i{text-align:center}
}

/* GaliVue V3.3.1 — workflow showcase matched to approved reference */
.workflow-v331{padding-inline:clamp(22px,2.6vw,42px);background:#f8f5ef}
.workflow-v331 .workflow-light-heading{position:relative;max-width:980px;margin-bottom:2rem}
.workflow-v331 .workflow-pill{display:inline-flex;padding:.48rem 1.2rem;border-radius:999px;background:#eef7df;color:#256c2e;font-size:.9rem;font-weight:900;letter-spacing:.05em}
.workflow-v331 .workflow-light-heading h2{font-size:clamp(3rem,4.8vw,4.75rem);line-height:.93;letter-spacing:-.055em;margin:.95rem auto .65rem;color:#050505}
.workflow-v331 .workflow-light-heading h2::after{width:min(310px,28vw);height:6px;margin:.28rem auto 0}
.workflow-v331 .workflow-light-heading p{font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.45;color:#696969;margin-top:1rem}
.workflow-scribble{position:absolute;right:-2%;top:32px;width:76px;height:60px;pointer-events:none}.workflow-scribble span,.workflow-scribble i{position:absolute;display:block;height:6px;border-radius:999px;background:var(--accent);transform-origin:left center}.workflow-scribble span{width:28px;left:20px;top:10px;transform:rotate(105deg)}.workflow-scribble i:nth-child(2){width:30px;left:42px;top:18px;transform:rotate(128deg)}.workflow-scribble i:nth-child(3){width:30px;left:46px;top:40px;transform:rotate(164deg)}
.workflow-v331 .workflow-showcase{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);gap:0;max-width:1460px;padding:0;margin:0 auto;align-items:stretch}
.workflow-v331 .workflow-showcase-card{position:relative;padding:1.05rem .95rem .8rem;border-radius:22px;border-color:#e4e0d9;box-shadow:0 12px 32px rgba(37,32,24,.045);background:rgba(255,255,255,.9)}
.workflow-v331 .workflow-number{position:absolute;top:18px;left:18px;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:var(--accent);font-size:.8rem;font-weight:950;color:#111}
.workflow-v331 .workflow-round-icon{width:72px;height:72px;margin:.3rem auto .7rem;background:#faf6ef}.workflow-v331 .workflow-round-icon svg{width:38px;height:38px;fill:none;stroke:#111;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.workflow-v331 .workflow-showcase-card h3{font-size:1.18rem;margin:.05rem 0 .85rem;letter-spacing:-.025em}
.workflow-v331 .workflow-arrow{position:relative;z-index:3;align-self:start;display:grid;place-items:center;width:40px;height:40px;margin-top:90px;margin-left:-11px;margin-right:-11px;border-radius:50%;background:#f2eee8;color:#aaa;font-style:normal;font-size:2rem;font-weight:400;box-shadow:0 2px 8px rgba(0,0,0,.02)}
.workflow-v331 .workflow-ui{min-height:270px;padding:.72rem;border-radius:12px;background:#fffdf9;border-color:#dedbd4;font-size:.59rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.workflow-v331 .workflow-ui>b{font-size:.65rem;margin-bottom:.45rem;color:#111}.workflow-v331 .workflow-ui label{font-size:.49rem;color:#666}.workflow-v331 .workflow-ui label span{position:relative;font-size:.55rem;padding:.38rem .42rem;color:#262626}.workflow-v331 .workflow-ui label span em{float:right;font-style:normal}.workflow-v331 .limit-row i{display:flex;gap:.25rem;align-items:center;justify-content:center;min-height:31px;color:#8a8a8a}.workflow-v331 .limit-row i b{color:#111}.workflow-v331 .workflow-ui button{min-height:30px;border-radius:5px;font-size:.57rem}.workflow-v331 .mini-drop{min-height:67px;font-size:0}.workflow-v331 .mini-drop svg{width:20px;height:20px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.workflow-v331 .mini-drop small{font-size:.48rem;line-height:1.35;text-align:center}.workflow-v331 .mini-photo-grid{gap:.22rem;margin:.4rem 0}.workflow-v331 .mini-photo-grid i{aspect-ratio:1.35;border-radius:5px}.workflow-v331 .upload-ui>small{display:inline-block;margin:0 .35rem 0 0;color:#555;font-size:.47rem}.workflow-v331 .upload-ui .mini-progress{display:inline-block;width:43%;vertical-align:middle}.workflow-v331 .selection-ui>small{margin-top:-.28rem;margin-bottom:.34rem;font-size:.47rem}.workflow-v331 .rated i{position:relative}.workflow-v331 .rated i::after{content:'★';position:absolute;right:4px;bottom:4px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#111;color:var(--accent);font-size:.62rem}.workflow-v331 .rated i:nth-child(2)::after,.workflow-v331 .rated i:nth-child(5)::after{background:var(--accent);color:#111}.workflow-v331 .mini-rating-row span{font-size:.52rem;color:#777}.workflow-v331 .mini-rating-row span b{color:#111}.workflow-v331 .selection-ui button{background:#111;color:#fff}.workflow-v331 .matching-ui p{font-size:.49rem;line-height:1.25}.workflow-v331 .matching-ui code{font-size:.46rem;padding:.32rem .15rem}.workflow-v331 .mini-delivery-photo{position:relative;height:112px;background-image:url('/demo/wedding4.jpg');background-position:center 38%}.workflow-v331 .mini-delivery-photo span{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#090909;color:#fff;font-size:1rem}.workflow-v331 .delivery-ui small{font-size:.47rem;line-height:1.3}.workflow-v331 .delivery-ui button{margin-top:.45rem}.workflow-v331 .delivery-ui em{display:block;margin:.22rem 0 .12rem;text-align:center;font-style:normal;color:#777}.workflow-v331 .delivery-ui>span{text-align:center;margin-top:0;font-weight:750}.workflow-v331 .workflow-showcase-card>p{min-height:84px;margin:.95rem .4rem .75rem;font-size:.84rem;line-height:1.5;color:#6b6b6b}.workflow-v331 .workflow-showcase-card footer{min-height:40px;padding:.52rem;border-radius:11px;font-size:.76rem}.workflow-v331 .workflow-showcase-card:nth-of-type(3) footer{background:#e8f4ff;color:#174c80}.workflow-v331 .workflow-showcase-card:nth-of-type(5) footer{background:#fff3d8;color:#875312}.workflow-v331 .workflow-showcase-card:nth-of-type(7) footer{background:#f1e5ff;color:#5f2b95}
.workflow-v331 .workflow-audience{max-width:1460px;min-height:84px;margin-top:1.8rem;padding:1rem 1.5rem;border-radius:20px;grid-template-columns:auto auto 1fr auto}.workflow-v331 .workflow-audience>b{width:46px;height:46px;font-size:1.7rem}.workflow-v331 .workflow-audience strong{font-size:1.08rem;color:#111}.workflow-v331 .workflow-audience>span{font-size:.94rem;color:#666}.workflow-v331 .workflow-audience>div{gap:2rem}.workflow-v331 .workflow-audience i{min-width:70px;font-size:0}.workflow-v331 .workflow-audience i svg{width:28px;height:28px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.workflow-v331 .workflow-audience small{font-size:.64rem;color:#111}
@media(max-width:1279px){.workflow-v331 .workflow-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:920px}.workflow-v331 .workflow-arrow{display:none}.workflow-v331 .workflow-showcase-card:last-of-type{grid-column:1/-1;max-width:452px;width:100%;justify-self:center}.workflow-v331 .workflow-audience{max-width:920px;grid-template-columns:auto 1fr}.workflow-v331 .workflow-audience>span{grid-column:2}.workflow-v331 .workflow-audience>div{grid-column:1/-1;justify-content:center;margin-top:.25rem}.workflow-scribble{display:none}}
@media(max-width:720px){.workflow-v331{padding-inline:14px}.workflow-v331 .workflow-light-heading h2{font-size:clamp(2.45rem,12vw,3.5rem)}.workflow-v331 .workflow-light-heading br,.workflow-v331 .workflow-light-heading p br{display:none}.workflow-v331 .workflow-showcase{grid-template-columns:1fr;max-width:500px}.workflow-v331 .workflow-showcase-card:last-of-type{grid-column:auto;max-width:none}.workflow-v331 .workflow-ui{min-height:260px}.workflow-v331 .workflow-showcase-card>p{min-height:0}.workflow-v331 .workflow-audience{grid-template-columns:auto 1fr;padding:1rem}.workflow-v331 .workflow-audience>div{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%}.workflow-v331 .workflow-audience i{min-width:0;text-align:center}}
@media(max-width:430px){.workflow-v331 .workflow-audience>div{grid-template-columns:1fr 1fr}.workflow-v331 .workflow-light-heading h2{font-size:2.5rem}}

/* GaliVue V3.3.2 — motion, global signup and reference-detail polish */
.field-hint{display:block;margin:.42rem .15rem 0;color:#8a857d;font-size:.72rem;font-weight:650;line-height:1.35}
.signup-panel select{min-height:48px;background:#fff}

/* Approved workflow status strips */
.workflow-v331 .workflow-showcase-card footer{display:flex;align-items:center;justify-content:center;gap:.42rem;border:0}
.workflow-v331 .workflow-showcase-card footer .status-icon{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 18px;font-weight:950}
.workflow-v331 .workflow-showcase-card footer .status-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.workflow-v331 .workflow-showcase-card footer.status-control{background:#edf8df;color:#286c34}
.workflow-v331 .workflow-showcase-card footer.status-private{background:#e4f2ff;color:#163f68}
.workflow-v331 .workflow-showcase-card footer.status-easy{background:#fff1d1;color:#8a5a13}
.workflow-v331 .workflow-showcase-card footer.status-match{background:#efe2ff;color:#5d2794}
.workflow-v331 .workflow-showcase-card footer.status-delivery{background:#eef8df;color:#286c34}

/* Five-step cursor story */
.workflow-v331 .workflow-showcase{position:relative}
.workflow-demo-cursor{position:absolute;z-index:20;left:0;top:0;width:23px;height:29px;opacity:0;pointer-events:none;filter:drop-shadow(0 4px 5px rgba(0,0,0,.22));transition:transform .62s cubic-bezier(.2,.72,.24,1),opacity .25s ease}
.workflow-demo-cursor::before{content:"";position:absolute;left:2px;top:1px;width:0;height:0;border-left:7px solid #111;border-right:7px solid transparent;border-bottom:18px solid transparent;transform:rotate(-12deg)}
.workflow-demo-cursor::after{content:"";position:absolute;left:9px;top:15px;width:7px;height:11px;border-radius:3px;background:#111;transform:rotate(-31deg)}
.workflow-demo-cursor span{position:absolute;left:-7px;top:-7px;width:31px;height:31px;border:2px solid var(--accent);border-radius:50%;opacity:0;transform:scale(.35)}
.workflow-demo-cursor.is-visible{opacity:1}
.workflow-demo-cursor.is-clicking span{animation:workflow-click .48s ease-out}
@keyframes workflow-click{0%{opacity:.95;transform:scale(.25)}100%{opacity:0;transform:scale(1.35)}}
.workflow-v331 .workflow-showcase-card{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease,opacity .35s ease}
.workflow-v331 .workflow-showcase.workflow-story-running .workflow-showcase-card:not(.story-active):not(.story-complete){opacity:.78}
.workflow-v331 .workflow-showcase-card.story-active{transform:translateY(-5px);border-color:#c9d8a0;box-shadow:0 20px 45px rgba(39,45,20,.10)}
.workflow-v331 .workflow-showcase-card.story-complete{opacity:1}
.workflow-v331 [data-workflow-type].demo-focus,.workflow-v331 [data-workflow-limit].demo-focus,.workflow-v331 .mini-drop.demo-focus{border-color:#9ecf25!important;box-shadow:0 0 0 3px rgba(200,255,61,.18)}
.workflow-v331 [data-workflow-limit].demo-focus{background:#f5ffd9;color:#111}
.workflow-v331 [data-workflow-action].demo-click{animation:workflow-button-click .55s ease}
@keyframes workflow-button-click{0%,100%{transform:none}45%{transform:scale(.96);box-shadow:0 0 0 6px rgba(200,255,61,.18)}}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-upload-grid] i{opacity:.2;transform:scale(.9);transition:opacity .28s ease,transform .28s ease}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-upload-grid] i.demo-arrive{opacity:1;transform:scale(1)}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-progress] span{animation:none;width:0;transition:width 1.35s ease}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-progress].demo-filled span{width:100%}
.workflow-v331 [data-workflow-rating-grid] i{transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease}
.workflow-v331 [data-workflow-rating-grid] i.demo-rated{transform:scale(.95);box-shadow:0 0 0 3px var(--accent)}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-match] em{opacity:.12;transition:opacity .3s ease,color .3s ease}
.workflow-v331 .workflow-showcase.workflow-story-running [data-workflow-match].demo-matched em{opacity:1}
.workflow-v331 .delivery-ui.demo-ready{box-shadow:0 0 0 3px rgba(200,255,61,.22)}

/* Photographer workspace demo: the same visual language as the reference, now alive */
.product-window[data-dashboard-demo]{position:relative;overflow:hidden}
.product-window[data-dashboard-demo] .mock-step{transition:background .3s ease,opacity .3s ease,transform .3s ease}
.product-window[data-dashboard-demo] .mock-step.demo-current{background:#f4ffe0;transform:translateY(-1px)}
.product-window[data-dashboard-demo] .mock-step.demo-current>span{background:var(--accent)}
.product-window[data-dashboard-demo] .mock-step.demo-past>i{color:#65a51c}
.product-window[data-dashboard-demo] .mock-photo span{transition:transform .3s ease,box-shadow .3s ease}
.product-window[data-dashboard-demo] .mock-photo.demo-selected span{transform:translateY(-3px);box-shadow:0 0 0 4px rgba(200,255,61,.18)}
.product-window[data-dashboard-demo] .mock-stats>div.demo-stat{animation:dashboard-stat .65s ease}
.product-window[data-dashboard-demo] .mock-heading button.demo-share{animation:soft-pulse 1.2s ease 2}
@keyframes dashboard-stat{0%{transform:translateY(4px);opacity:.55}100%{transform:none;opacity:1}}
.dashboard-demo-cursor,.client-demo-cursor{position:absolute;z-index:12;width:20px;height:26px;opacity:0;pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.2));transition:transform .55s cubic-bezier(.2,.72,.24,1),opacity .25s ease}
.dashboard-demo-cursor::before,.client-demo-cursor::before{content:"";position:absolute;left:2px;top:1px;width:0;height:0;border-left:6px solid #111;border-right:6px solid transparent;border-bottom:16px solid transparent;transform:rotate(-12deg)}
.dashboard-demo-cursor::after,.client-demo-cursor::after{content:"";position:absolute;left:8px;top:13px;width:6px;height:10px;border-radius:3px;background:#111;transform:rotate(-30deg)}
.dashboard-demo-cursor.is-visible,.client-demo-cursor.is-visible{opacity:1}
.dashboard-demo-cursor.is-clicking,.client-demo-cursor.is-clicking{filter:drop-shadow(0 3px 4px rgba(0,0,0,.2)) drop-shadow(0 0 7px rgba(200,255,61,.95))}

/* Client demo autoplay cursor */
.demo-device{position:relative}
.demo-photo-card.auto-demo-focus{border-color:#a8d530;box-shadow:0 0 0 3px rgba(200,255,61,.14)}

/* Pricing: reserve space while each feature line types in */
.pricing-grid.is-typing li{min-height:1.25em;visibility:hidden}
.pricing-grid.is-typing li.typing-visible{visibility:visible}
.pricing-grid.is-typing article.typing-card{border-color:#b5da4e;box-shadow:0 0 0 1px rgba(200,255,61,.45)}
.pricing-grid.is-typing article.pricing-featured.typing-card{box-shadow:0 0 0 2px var(--accent),0 18px 44px rgba(200,255,61,.08)}
.pricing-grid li .typing-caret{display:inline-block;width:1px;height:1em;margin-left:2px;background:#171717;vertical-align:-.12em;animation:typing-caret .7s steps(1,end) infinite}
@keyframes typing-caret{50%{opacity:0}}

/* Privacy section tightened to the approved reference proportions */
.security-card{grid-template-columns:190px minmax(0,1.2fr) minmax(300px,.85fr);padding:clamp(2.5rem,5vw,5rem);gap:clamp(2.5rem,5vw,6rem);background:#faf8f3}
.security-card h2{font-size:clamp(3.2rem,5.3vw,5.8rem);line-height:.9;max-width:680px}
.security-card>div:nth-child(2)>p:not(.security-trust-line){font-size:1rem;max-width:720px}
.security-list span{min-height:54px;display:flex;align-items:center;padding:.85rem 1rem;background:#fffdf9;font-size:.78rem}
.security-animation{min-height:220px}
.security-lock{width:112px;height:128px;border-radius:38px}

/* Global connection hero: balanced cards from every populated continent */
.global-city-cloud{position:absolute;inset:0;z-index:-1;pointer-events:none}
.global-city-cloud i{width:148px;height:92px;opacity:.72;animation-duration:11s}
.global-city-cloud i:nth-child(1){left:6%;top:16%;transform:rotate(-8deg);animation-delay:-1s}
.global-city-cloud i:nth-child(2){left:18%;top:57%;transform:rotate(5deg);animation-delay:-5s}
.global-city-cloud i:nth-child(3){left:4%;bottom:7%;transform:rotate(-3deg);animation-delay:-7s}
.global-city-cloud i:nth-child(4){left:29%;bottom:2%;transform:rotate(6deg);animation-delay:-3s}
.global-city-cloud i:nth-child(5){right:25%;bottom:3%;transform:rotate(-5deg);animation-delay:-9s}
.global-city-cloud i:nth-child(6){right:5%;top:16%;transform:rotate(7deg);animation-delay:-4s}
.global-city-cloud i:nth-child(7){right:18%;top:55%;transform:rotate(-5deg);animation-delay:-8s}
.global-city-cloud i:nth-child(8){left:38%;top:6%;transform:rotate(-3deg);animation-delay:-2s}
.global-city-cloud i:nth-child(9){right:36%;top:7%;transform:rotate(4deg);animation-delay:-6s}
.global-city-cloud i:nth-child(10){right:3%;bottom:5%;transform:rotate(4deg);animation-delay:-10s}
.global-city-cloud i:nth-child(11){left:9%;top:44%;width:165px;height:98px;transform:rotate(4deg);animation-delay:-11s}
.global-city-cloud i b{font-size:.88rem}.global-city-cloud i span{font-size:.65rem}
.global-city-cloud .global-link-card{border-color:rgba(200,255,61,.22);background:linear-gradient(145deg,rgba(200,255,61,.08),rgba(255,255,255,.015))}
.final-cta>.section-kicker,.final-cta>h2,.final-cta>p,.final-cta>.final-cta-button{position:relative;z-index:2}

@media(max-width:1180px){
  .security-card{grid-template-columns:165px 1fr}.security-list{grid-column:1/-1}
  .global-city-cloud i:nth-child(4),.global-city-cloud i:nth-child(5),.global-city-cloud i:nth-child(8),.global-city-cloud i:nth-child(9){display:none}
}
@media(max-width:720px){
  .workflow-demo-cursor,.dashboard-demo-cursor,.client-demo-cursor{display:none}
  .workflow-v331 .workflow-showcase.workflow-story-running .workflow-showcase-card{opacity:1}
  .security-card{grid-template-columns:1fr;padding:2rem 1rem}.security-animation{min-height:180px}.security-card h2{font-size:clamp(2.8rem,13vw,4.2rem)}.security-list{grid-template-columns:1fr}
  .global-city-cloud i{width:115px;height:72px;opacity:.46}
  .global-city-cloud i:nth-child(2),.global-city-cloud i:nth-child(3),.global-city-cloud i:nth-child(5),.global-city-cloud i:nth-child(7),.global-city-cloud i:nth-child(8),.global-city-cloud i:nth-child(9),.global-city-cloud i:nth-child(10){display:none}
  .global-city-cloud i:nth-child(1){left:-4%;top:12%}.global-city-cloud i:nth-child(6){right:-5%;top:18%}.global-city-cloud i:nth-child(11){left:4%;top:auto;bottom:5%}
}
@media(prefers-reduced-motion:reduce){
  .workflow-demo-cursor,.dashboard-demo-cursor,.client-demo-cursor{display:none!important}
  .workflow-v331 .workflow-showcase-card,.product-window[data-dashboard-demo] .mock-step,.product-window[data-dashboard-demo] .mock-photo span{transition:none!important}
  .pricing-grid li .typing-caret{display:none}
}

/* GaliVue V3.3.3 — hero + photographer-workspace reference polish */
.marketing-hero{padding-top:clamp(4.5rem,7.5vw,7rem);padding-bottom:clamp(3.5rem,6vw,5.5rem)}
.marketing-hero::before{background:radial-gradient(circle at 82% 22%,rgba(200,255,61,.24),transparent 27%),radial-gradient(circle at 50% 47%,rgba(255,255,255,.88),transparent 37%),linear-gradient(180deg,#faf7f1 0%,#f3efe6 92%)}
.hero-copy{width:min(1180px,92%)}
.marketing-hero h1{max-width:1180px;margin:1.45rem auto 1.25rem;font-size:clamp(3.35rem,6.85vw,7.25rem);line-height:.91;letter-spacing:-.065em}
.marketing-hero h1 span,.marketing-hero h1 em{display:block}
.marketing-hero h1 em{margin-top:.03em;color:#4c4943}
.marketing-hero .hero-copy>p{max-width:760px;font-size:clamp(1.02rem,1.42vw,1.25rem);line-height:1.55}
.hero-primary{min-width:220px}
.demo-link{min-width:180px;justify-content:center}
.hero-trust-line{gap:.65rem 1.45rem;color:#68635b;font-weight:760}

.hero-global-network .hero-city-card{position:absolute;width:184px;padding:.9rem 1rem;border:1px solid rgba(20,20,20,.11);border-radius:17px;background:rgba(255,255,255,.77);box-shadow:0 18px 45px rgba(40,36,28,.08);backdrop-filter:blur(11px);animation:hero-city-drift 10s ease-in-out infinite}
.hero-global-network .hero-city-card b,.hero-global-network .hero-city-card small,.hero-global-network .hero-city-card i{display:block}
.hero-global-network .hero-city-card b{font-size:.88rem;letter-spacing:-.02em}
.hero-global-network .hero-city-card small{margin-top:.18rem;color:#67625a;font-size:.7rem;font-weight:700}
.hero-global-network .hero-city-card i{margin-top:.42rem;color:#999287;font-size:.57rem;font-style:normal;letter-spacing:.04em;text-transform:uppercase}
.hero-city-paris{left:4.5%;top:23%;transform:rotate(-4deg);animation-delay:-1s!important}
.hero-city-colombo{left:8%;top:56%;transform:rotate(3deg);animation-delay:-5s!important}
.hero-city-newyork{right:4.5%;top:25%;transform:rotate(4deg);animation-delay:-3s!important}
.hero-city-mumbai{right:8%;top:56%;transform:rotate(-3deg);animation-delay:-7s!important}
.hero-city-capetown{left:18%;bottom:7%;transform:rotate(-2deg);animation-delay:-8.5s!important}
.hero-city-sydney{right:18%;bottom:7%;transform:rotate(2deg);animation-delay:-10s!important}
@keyframes hero-city-drift{0%,100%{translate:0 0}50%{translate:0 -10px}}

.product-stage{width:min(1440px,calc(100vw - 52px));margin:clamp(3.4rem,5vw,5rem) auto 0}
.product-window{border-radius:26px;transform:none;box-shadow:0 34px 80px rgba(38,34,26,.17),0 1px 0 rgba(255,255,255,.9) inset}
.product-body{grid-template-columns:224px 1fr;min-height:650px}
.product-side{padding:1.65rem 1.25rem}
.product-brand{margin-bottom:2.7rem}
.product-main{padding:clamp(1.65rem,2.7vw,2.65rem)}
.mock-heading h3{font-size:clamp(2rem,3.2vw,2.8rem)}
.mock-stats{gap:.85rem;margin:1.55rem 0}.mock-stats>div{padding:1.12rem 1.18rem}
.mock-workflow{border-radius:15px}.mock-step{padding:1.08rem}
.mock-gallery{gap:.9rem;margin-top:1.15rem}.mock-photo{aspect-ratio:1.34;border-radius:15px}
.mock-photo>span{left:.6rem;bottom:.6rem;padding:.32rem .5rem;font-size:.64rem}

.product-window[data-dashboard-demo] .mock-nav{transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}
.product-window[data-dashboard-demo] .mock-nav.demo-nav-click{transform:translateX(3px);box-shadow:0 0 0 1px rgba(200,255,61,.12)}
.product-window[data-dashboard-demo] .mock-storage{transition:border-color .35s ease,box-shadow .35s ease,transform .35s ease}
.product-window[data-dashboard-demo] .mock-storage.demo-storage{border-color:#57612f;box-shadow:0 0 0 4px rgba(200,255,61,.08);transform:translateY(-2px)}
.product-window[data-dashboard-demo] [data-dashboard-storage-bar]{width:68%;transition:width 1.15s cubic-bezier(.2,.72,.24,1)}
.product-window[data-dashboard-demo] .mock-storage.demo-storage [data-dashboard-storage-bar]{width:82%}

@media(max-width:1280px){
  .hero-global-network .hero-city-card{width:154px;opacity:.66}
  .hero-city-capetown,.hero-city-sydney{display:none}
  .product-stage{width:min(1220px,calc(100vw - 36px))}
}
@media(max-width:980px){
  .hero-global-network .hero-city-card{display:none}
  .product-stage{width:100%}
  .product-body{grid-template-columns:190px 1fr}
}
@media(max-width:720px){
  .marketing-hero h1 span,.marketing-hero h1 em{display:inline}
  .marketing-hero h1 em{margin:0}
  .hero-trust-line{grid-template-columns:1fr 1fr}
  .product-stage{margin-top:2.7rem}
}

/* GaliVue V3.3.5 — responsive QA, mobile delivery and motion polish */
html{overflow-x:hidden}
body{overflow-x:hidden}

/* Hero micro-story */
.hero-kicker{position:relative;overflow:hidden}
.hero-kicker-dot{flex:0 0 auto;transition:transform .35s ease,box-shadow .35s ease}
.hero-kicker-copy{display:inline-flex;align-items:center;gap:.55rem;min-width:0}
.hero-kicker-copy b,.hero-kicker-copy em,.hero-kicker-copy i{font:inherit;font-style:normal;transition:opacity .35s ease,transform .35s ease,color .35s ease,background-size .45s ease}
.hero-kicker-copy em{padding:.08rem .12rem;border-radius:4px;background:linear-gradient(90deg,rgba(200,255,61,.42),rgba(200,255,61,.42)) no-repeat 0 100%/0 36%}
.hero-kicker.demo-kicker-main .hero-kicker-dot{transform:scale(1.22);box-shadow:0 0 0 7px rgba(200,255,61,.22)}
.hero-kicker.demo-kicker-main .hero-kicker-copy b{color:#101010;transform:translateY(-1px)}
.hero-kicker.demo-kicker-anywhere .hero-kicker-copy em{background-size:100% 36%;color:#244f19}
.hero-story-copy span{display:inline;transition:color .32s ease,background-size .45s ease,opacity .32s ease;background:linear-gradient(90deg,rgba(200,255,61,.3),rgba(200,255,61,.3)) no-repeat 0 100%/0 28%}
.hero-story-copy.is-story-running span{opacity:.55}
.hero-story-copy span.is-story-active{opacity:1;color:#292720;background-size:100% 28%}
.hero-actions{position:relative}
.hero-primary.demo-cta,.demo-link.demo-cta{transform:translateY(-3px);box-shadow:0 18px 38px rgba(42,38,30,.16)}
.hero-primary.demo-cta{background:#bfff26;box-shadow:0 18px 38px rgba(151,205,0,.24)}
.hero-demo-cursor{position:absolute;z-index:5;left:0;top:0;width:22px;height:28px;opacity:0;pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.2));transition:transform .55s cubic-bezier(.2,.72,.24,1),opacity .25s ease}
.hero-demo-cursor::before{content:"";position:absolute;left:2px;top:1px;width:0;height:0;border-left:7px solid #111;border-right:7px solid transparent;border-bottom:18px solid transparent;transform:rotate(-12deg)}
.hero-demo-cursor::after{content:"";position:absolute;left:9px;top:15px;width:7px;height:11px;border-radius:3px;background:#111;transform:rotate(-31deg)}
.hero-demo-cursor span{position:absolute;left:-7px;top:-7px;width:31px;height:31px;border:2px solid var(--accent);border-radius:50%;opacity:0;transform:scale(.35)}
.hero-demo-cursor.is-visible{opacity:1}.hero-demo-cursor.is-clicking span{animation:workflow-click .48s ease-out}
.hero-trust-line span{transition:opacity .35s ease,transform .35s ease,color .35s ease}
.hero-trust-line.is-story-running span{opacity:.38;transform:translateY(3px)}
.hero-trust-line span.is-story-active{opacity:1;transform:none;color:#37332d}
.hero-trust-line span.is-story-complete{opacity:1;transform:none}

/* Workflow heading micro-story */
.workflow-pill,.workflow-heading-story span{transition:opacity .35s ease,transform .35s ease,background-size .45s ease}
.workflow-pill.demo-heading-pill{box-shadow:0 0 0 7px rgba(200,255,61,.09);transform:translateY(-2px)}
.workflow-v331 .workflow-light-heading h2::after{transform-origin:left center;transform:rotate(-2.2deg) scaleX(.15);transition:transform .8s cubic-bezier(.2,.72,.24,1)}
.workflow-v331 .workflow-light-heading h2.demo-heading-line::after{transform:rotate(-2.2deg) scaleX(1)}
.workflow-heading-story span{background:linear-gradient(90deg,rgba(200,255,61,.24),rgba(200,255,61,.24)) no-repeat 0 100%/0 30%}
.workflow-heading-story.is-story-running span{opacity:.5}
.workflow-heading-story span.is-story-active{opacity:1;background-size:100% 30%}

/* Device-aware final delivery */
.delivery-download-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}
.mobile-zip-option,.mobile-save-help{display:none}
.mobile-save-help{margin:.3rem 0 1rem;padding:.78rem .9rem;border:1px solid var(--line);border-radius:12px;background:#fbfaf6;color:var(--muted);font-size:.82rem;line-height:1.45}
body.mobile-save-capable .mobile-zip-option{display:inline-flex}
body.mobile-save-capable .mobile-save-help{display:block}
body.mobile-save-capable .delivery-download-actions #downloadFinalAll{background:var(--accent);border-color:var(--accent);color:#111}
.delivery-photo.mobile-save-focus{box-shadow:0 0 0 3px rgba(200,255,61,.28)}

/* Responsive system: desktops, notebooks, tablets, phones */
@media (max-width:1180px){
  .marketing-hero{padding-left:24px;padding-right:24px}
  .marketing-hero h1{font-size:clamp(3.25rem,7.6vw,6.25rem)}
  .hero-city-capetown,.hero-city-sydney{display:none!important}
  .hero-city-paris{left:1.5%;top:29%}.hero-city-newyork{right:1.5%;top:29%}
  .hero-city-colombo{left:3%;top:64%}.hero-city-mumbai{right:3%;top:64%}
  .product-stage{width:min(1120px,calc(100vw - 32px))}
  .product-body{grid-template-columns:184px 1fr;min-height:560px}
  .product-side{padding:1.35rem 1rem}.product-brand{margin-bottom:1.8rem}
  .mock-nav{font-size:.76rem;padding:.68rem .6rem}
  .mock-storage{left:.75rem;right:.75rem;bottom:.75rem;padding:.8rem}
  .product-main{padding:1.35rem}
  .mock-heading h3{font-size:clamp(1.8rem,3vw,2.35rem)}
  .mock-workflow{grid-template-columns:1fr 1fr}
  .mock-step:nth-child(2){border-right:0}.mock-step:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .mock-step b{white-space:normal;line-height:1.18}
}

@media (max-width:900px){
  .marketing-header{min-height:68px;padding:.7rem 1.15rem}
  .marketing-header .brand{font-size:1.35rem}.menu-button{width:42px;height:42px}
  .marketing-hero{padding:3.8rem 18px 4rem}
  .hero-copy{width:min(760px,100%)}
  .marketing-hero h1{font-size:clamp(3rem,9.7vw,5rem);line-height:.94;margin:1.2rem auto 1rem}
  .marketing-hero .hero-copy>p{font-size:1rem;max-width:680px}
  .hero-global-network .hero-city-card{display:none!important}
  .hero-actions{margin:1.55rem 0 .9rem}
  .hero-demo-cursor{display:none}
  .hero-primary.demo-cta,.demo-link.demo-cta{animation:mobile-tap-ripple .75s ease}
  @keyframes mobile-tap-ripple{0%{box-shadow:0 0 0 0 rgba(200,255,61,.32)}60%{box-shadow:0 0 0 13px rgba(200,255,61,0)}100%{box-shadow:none}}

  .product-stage{width:100%;max-width:760px;margin-top:2.4rem}
  .product-window{border-radius:20px}
  .product-body{display:block;min-height:0}
  .product-side{position:relative!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;padding:.75rem;border-right:0;border-bottom:1px solid #343431;background:#171717}
  .product-brand{display:none}
  .mock-nav{justify-content:center;min-width:0;margin:0;padding:.62rem .35rem;border-radius:9px;font-size:.69rem;text-align:center}
  .mock-nav i{width:12px;height:12px;flex:0 0 auto}
  .mock-storage{position:relative;left:auto;right:auto;bottom:auto;grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.4rem .8rem;margin:.15rem 0 0;padding:.65rem .75rem}
  .mock-storage small{grid-column:1}.mock-storage b{grid-column:2;margin:0;text-align:right}.mock-storage>span{grid-column:1/-1;height:5px}
  .product-main{padding:1rem}
  .mock-heading{align-items:flex-start}
  .mock-heading h3{font-size:clamp(1.7rem,5vw,2.25rem)}
  .mock-heading button{padding:.72rem .85rem}
  .mock-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:1rem 0}
  .mock-stats>div{min-width:0;padding:.78rem .85rem}.mock-stats b{font-size:1.1rem}.mock-stats span{font-size:.64rem}
  .mock-workflow{grid-template-columns:1fr;border-radius:13px}
  .mock-step,.mock-step:nth-child(2),.mock-step:nth-child(3),.mock-step:nth-child(4){min-width:0;border-right:0;border-bottom:1px solid var(--line);padding:.78rem .85rem}
  .mock-step:last-child{border-bottom:0}
  .mock-step b{white-space:normal;overflow:visible;text-overflow:clip;font-size:.72rem;line-height:1.2}.mock-step small{font-size:.61rem;line-height:1.25}
  .mock-gallery{display:flex!important;grid-template-columns:none!important;gap:.65rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding-bottom:.35rem;-webkit-overflow-scrolling:touch}
  .mock-gallery .mock-photo{display:block!important;flex:0 0 min(72%,360px);aspect-ratio:1.32;scroll-snap-align:start}
  .mock-gallery::-webkit-scrollbar{height:4px}.mock-gallery::-webkit-scrollbar-thumb{background:#c9c3b8;border-radius:999px}

  .workflow-light{padding-top:4.5rem;padding-bottom:4.5rem}
  .workflow-light-heading{margin-bottom:1.7rem}.workflow-light-heading h2{font-size:clamp(2.7rem,8.5vw,4.3rem);line-height:.98}.workflow-light-heading p{font-size:.98rem}
  .marketing-section{padding-top:4.5rem;padding-bottom:4.5rem}
  .section-heading h2,.proof-copy h2,.security-card h2,.final-cta h2,.demo-copy h2{line-height:.98}
  .feature-grid-nine article{min-height:300px!important}
  .pricing-grid article{min-height:0;padding:1.25rem}.plan-top h3{margin:1.15rem 0 .35rem}.pricing-grid ul{gap:.7rem;padding:1.05rem 0 1.15rem;margin:1.15rem 0 0}
  .free-test-card{padding:1.1rem 1.2rem}
  .marketing-footer{gap:2rem;padding-top:3rem}
}

@media (max-width:640px){
  .marketing-header{min-height:64px;padding:.62rem .95rem}.marketing-header .brand{font-size:1.28rem}
  .menu-button{width:40px;height:40px}.menu-button span{width:22px}
  .mobile-menu{padding:.55rem}.mobile-menu>nav,.mobile-menu-head{width:100%}
  .mobile-menu-head{padding:.85rem 1rem;border-radius:17px 17px 0 0}.menu-close{width:36px;height:36px;font-size:1.8rem}
  .mobile-menu nav{padding:0 .95rem .9rem;border-radius:0 0 17px 17px}
  .mobile-menu nav>a,.mobile-login{gap:.7rem;padding:.72rem .1rem;font-size:.92rem}.mobile-menu nav>a span{width:24px;height:24px;font-size:.62rem}.mobile-cta{margin-top:.8rem;padding:.82rem}.mobile-menu nav small{font-size:.68rem}

  .marketing-hero{padding:3rem 14px 3.4rem}
  .hero-kicker{padding:.45rem .62rem;font-size:.56rem;letter-spacing:.09em;max-width:100%}.hero-kicker-copy{gap:.32rem;flex-wrap:wrap;justify-content:center;row-gap:.12rem}.hero-kicker-dot{width:7px!important;height:7px!important}
  .marketing-hero h1{font-size:clamp(2.55rem,12.4vw,3.85rem)!important;line-height:.95;letter-spacing:-.055em;margin:1rem auto .9rem}
  .marketing-hero h1 span,.marketing-hero h1 em{display:block!important}
  .marketing-hero .hero-copy>p{font-size:.94rem;line-height:1.48}
  .hero-actions{gap:.65rem;margin:1.25rem 0 .85rem;flex-direction:column}.hero-primary,.demo-link{width:100%;min-width:0;padding:.85rem 1rem;border-radius:13px;font-size:.9rem}
  .hero-trust-line{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%;gap:.45rem .65rem!important;text-align:left}.hero-trust-line span{font-size:.7rem;line-height:1.25}

  .product-stage{width:100%;max-width:620px;margin-top:2rem}
  .window-bar{grid-template-columns:auto 1fr;padding:.6rem .7rem}.window-dots span{width:7px;height:7px}.window-address{display:block!important;min-width:0;padding:.38rem .55rem;font-size:.58rem}.window-live{display:none!important}
  .product-side{grid-template-columns:repeat(3,minmax(0,1fr));gap:.32rem;padding:.58rem}
  .mock-nav{gap:.32rem;padding:.55rem .18rem;font-size:.62rem}.mock-nav i{width:10px;height:10px}
  .mock-storage{padding:.56rem .62rem}.mock-storage small{font-size:.52rem}.mock-storage b{font-size:.66rem}.mock-storage>span{height:4px}
  .product-main{padding:.82rem}
  .mock-heading{display:grid;grid-template-columns:1fr;gap:.6rem}.mock-heading small{font-size:.53rem}.mock-heading h3{font-size:clamp(1.75rem,9vw,2.2rem);margin:.18rem 0 0}.mock-mode{margin-top:.42rem;gap:.35rem}.mock-mode span,.mock-mode b{min-height:24px;padding:.28rem .46rem;font-size:.59rem}.mock-heading button{width:100%;font-size:.7rem;padding:.68rem}
  .mock-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.45rem;margin:.82rem 0}.mock-stats>div{padding:.68rem .7rem;border-radius:11px}.mock-stats b{font-size:1rem}.mock-stats span{font-size:.59rem}
  .mock-step{grid-template-columns:27px minmax(0,1fr) 18px!important;gap:.45rem!important;padding:.68rem!important}.mock-step>span{width:25px;height:25px;font-size:.66rem}.mock-step b{font-size:.68rem!important;overflow-wrap:anywhere}.mock-step small{font-size:.56rem!important;overflow-wrap:anywhere}.mock-step>i{font-size:.78rem}
  .mock-gallery{margin-top:.72rem}.mock-gallery .mock-photo{flex-basis:88%;border-radius:12px}.mock-photo>span{font-size:.57rem;padding:.27rem .4rem}
  .dashboard-demo-cursor{display:none!important}

  .workflow-light{padding:3.7rem 12px}.workflow-pill{font-size:.64rem;padding:.43rem .75rem}.workflow-v331 .workflow-light-heading h2{font-size:clamp(2.35rem,11vw,3.2rem)!important;line-height:.98;margin:.75rem auto .6rem}.workflow-v331 .workflow-light-heading h2::after{height:4px;width:42vw}.workflow-light-heading p{font-size:.9rem;line-height:1.4}.workflow-v331 .workflow-showcase{gap:.75rem}.workflow-v331 .workflow-showcase-card{padding:.85rem;border-radius:16px}.workflow-v331 .workflow-ui{min-height:220px!important}.workflow-reference-layout .workflow-round-icon{width:58px;height:58px}.workflow-reference-layout .workflow-round-icon svg{width:32px;height:32px}.workflow-v331 .workflow-showcase-card h3{font-size:1rem}.workflow-v331 .workflow-showcase-card>p{font-size:.76rem;line-height:1.45}.workflow-v331 .workflow-audience{padding:.8rem;margin-top:1rem}

  .marketing-section{padding:3.7rem 12px!important}
  .section-kicker{font-size:.64rem}.section-heading{margin-bottom:1.5rem}.section-heading h2,.proof-copy h2,.security-card h2,.final-cta h2,.demo-copy h2{font-size:clamp(2.25rem,10.5vw,3.25rem)!important;line-height:.99}
  .demo-section,.proof-section{gap:1.6rem!important;padding-left:12px!important;padding-right:12px!important}.demo-copy p,.proof-copy p{font-size:.92rem;line-height:1.55}.demo-device{border-radius:18px}.demo-device-bar{padding:.65rem}.demo-photo-grid{min-height:390px}.demo-image{min-height:230px}.demo-stars button{min-height:44px;min-width:62px}
  .feature-grid-nine{gap:.7rem}.feature-grid-nine article,.feature-grid-nine article.feature-large{min-height:280px!important;padding:1rem}.feature-grid-nine h3{font-size:1.2rem}.feature-grid-nine p{font-size:.83rem}
  .pricing-section{padding-left:12px!important;padding-right:12px!important}.free-test-card{gap:.8rem;padding:1rem;border-radius:16px}.free-test-card h3{font-size:1.15rem}.free-test-card p{font-size:.76rem}.pricing-grid{gap:.75rem}.pricing-grid article{padding:1.1rem;border-radius:18px}.plan-top h3{font-size:2.8rem}.plan-top p{min-height:0;font-size:.9rem}.pricing-grid li{font-size:.82rem}.pricing-note{font-size:.73rem}
  .security-card{padding:1.35rem .9rem;border-radius:20px}.security-card p{font-size:.9rem}.security-list{gap:.5rem}.security-list span{padding:.65rem;font-size:.7rem}
  .final-cta{padding:4.5rem 14px}.final-cta p{font-size:.9rem}.cta-card-shapes i{opacity:.5}

  .marketing-footer{grid-template-columns:1fr 1fr!important;gap:1.7rem 1rem!important;padding:2.6rem 1rem 1.4rem!important}.footer-brand{grid-column:1/-1!important}.marketing-footer>div:nth-child(4){grid-column:1/-1!important}.marketing-footer>div:not(.footer-brand):not(.footer-bottom){gap:.5rem}.marketing-footer b{font-size:.96rem}.marketing-footer a,.marketing-footer button{font-size:.78rem}.footer-brand p{font-size:.82rem;margin:.6rem 0 0}.footer-bottom{grid-column:1/-1!important;gap:.3rem!important;padding-top:1rem;font-size:.67rem}

  .client-shell{padding:1rem 12px 2.5rem}.client-brand-row{margin-bottom:1.4rem}.client-header h1{font-size:clamp(2.25rem,11vw,3.25rem)!important}.delivery-download-actions{width:100%;align-items:stretch;flex-direction:column}.delivery-download-actions>*{width:100%}.mobile-save-help{font-size:.76rem}.delivery-client-actions{gap:.6rem}
}

@media (max-width:390px){
  .marketing-header{padding-left:.8rem;padding-right:.8rem}.brand{font-size:1.2rem}
  .hero-kicker{font-size:.52rem}.marketing-hero h1{font-size:clamp(2.35rem,12vw,3.15rem)!important}.marketing-hero .hero-copy>p{font-size:.89rem}
  .hero-trust-line span{font-size:.66rem}
  .product-stage{width:100%}.product-main{padding:.7rem}.mock-nav{font-size:.57rem}.mock-stats>div{padding:.6rem}.mock-step{padding:.6rem!important}.mock-gallery .mock-photo{flex-basis:92%}
  .workflow-v331 .workflow-light-heading h2{font-size:2.22rem!important}
  .pricing-grid article{padding:1rem}.plan-top h3{font-size:2.55rem}.popular-tag{font-size:.54rem}
}

@media (orientation:landscape) and (max-height:520px) and (max-width:1000px){
  .marketing-header{position:relative}.marketing-hero{padding-top:2rem;padding-bottom:2.5rem}.marketing-hero h1{font-size:clamp(2.7rem,8vw,4rem)}.hero-actions{margin:1rem 0 .7rem}.product-stage{margin-top:1.7rem}
}

@media(prefers-reduced-motion:reduce){
  .hero-kicker-dot,.hero-kicker-copy b,.hero-kicker-copy em,.hero-story-copy span,.hero-trust-line span,.workflow-pill,.workflow-heading-story span,.workflow-v331 .workflow-light-heading h2::after{transition:none!important;animation:none!important}
  .hero-demo-cursor{display:none!important}
  .hero-story-copy span,.hero-trust-line span,.workflow-heading-story span{opacity:1!important;transform:none!important}
  .workflow-v331 .workflow-light-heading h2::after{transform:rotate(-2.2deg) scaleX(1)!important}
}

/* V3.3.5 contact page */
.contact-shell{width:min(1120px,calc(100% - 2rem))}
.contact-shell h1{max-width:820px}.contact-intro{max-width:800px;margin:0 0 2rem;font-size:1.04rem}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0}
.contact-grid article{display:flex;flex-direction:column;min-height:310px;padding:1.35rem;border:1px solid var(--line);border-radius:20px;background:#fff}
.contact-grid article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);font-size:.68rem;font-weight:950}
.contact-grid h2{margin:1.2rem 0 .6rem;font-size:1.3rem}.contact-grid p{margin:0;font-size:.92rem;line-height:1.6}.contact-grid strong{margin-top:auto;padding-top:1.2rem;font-size:.75rem;color:#4d7030}
.contact-launch-note{margin-top:1.2rem}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr 1fr}.contact-grid article:last-child{grid-column:1/-1}.contact-grid article{min-height:250px}}
@media(max-width:620px){.legal-header{padding:.85rem 1rem}.legal-header a:not(.brand){font-size:.78rem}.legal-shell{width:calc(100% - 1.5rem);padding:2.7rem 0}.legal-shell h1{font-size:clamp(2.5rem,13vw,3.6rem)}.contact-intro{font-size:.92rem}.contact-grid{grid-template-columns:1fr;gap:.7rem;margin:1.4rem 0}.contact-grid article:last-child{grid-column:auto}.contact-grid article{min-height:0;padding:1rem;border-radius:16px}.contact-grid h2{margin:.85rem 0 .45rem;font-size:1.16rem}.contact-grid p{font-size:.84rem}.legal-note,.legal-note{font-size:.82rem}.legal-beta-note{font-size:.82rem}.legal-footer{padding:1rem;gap:.35rem;flex-direction:column}}

/* Keep global cards out of the headline on narrower notebooks / split-screen windows. */
@media(max-width:1380px){.hero-global-network .hero-city-card{display:none!important}}


/* GaliVue V3.3.5 — correction build: stable hero motion + mobile CTA/footer QA */

/* The earlier generic .hero-kicker span rule also hit the text wrapper. Reset it explicitly. */
.hero-kicker{overflow:visible;min-height:34px;white-space:nowrap}
.hero-kicker>.hero-kicker-dot{width:8px!important;height:8px!important;flex:0 0 8px;border-radius:50%;background:var(--accent-deep);box-shadow:0 0 0 5px rgba(200,255,61,.25)}
.hero-kicker>.hero-kicker-copy{display:inline-flex!important;align-items:center;gap:.55rem;width:auto!important;height:auto!important;min-width:max-content!important;max-width:none;background:none!important;border-radius:0!important;box-shadow:none!important;overflow:visible;color:inherit}
.hero-kicker>.hero-kicker-copy b,.hero-kicker>.hero-kicker-copy i,.hero-kicker>.hero-kicker-copy em{display:inline!important;width:auto!important;height:auto!important;background-color:transparent;border-radius:0;box-shadow:none}
.hero-kicker>.hero-kicker-copy em{border-radius:4px;background:linear-gradient(90deg,rgba(200,255,61,.35),rgba(200,255,61,.35)) no-repeat 0 55%/0 72%}
.hero-kicker.demo-kicker-anywhere>.hero-kicker-copy em{background-size:100% 72%;color:#244f19}

/* Strong staged hero headline. Text always occupies its final layout so the animation never causes reflow. */
.marketing-hero h1 [class^="hero-stage-"]{position:relative;display:block;will-change:transform,filter,opacity}
.marketing-hero h1 .hero-stage-primary{color:#111}
.marketing-hero h1 .hero-stage-strong{color:#4e4a44;padding-bottom:.11em}
.marketing-hero h1 .hero-stage-strong::after{content:"";position:absolute;left:13%;right:13%;bottom:-.01em;height:.055em;min-height:5px;border-radius:999px;background:var(--accent);transform:scaleX(0);transform-origin:left center;opacity:.95}
.hero-stage-primary.hero-stage-hit{animation:hero-primary-impact .9s cubic-bezier(.18,.72,.22,1)}
.hero-stage-strong.hero-stage-hit-strong{animation:hero-strong-impact 1.1s cubic-bezier(.18,.72,.22,1)}
.hero-stage-strong.hero-stage-hit-strong::after{animation:hero-strong-sweep .9s .18s cubic-bezier(.18,.72,.22,1) forwards}
@keyframes hero-primary-impact{0%{opacity:.55;transform:translateY(.18em) scale(.975);filter:blur(2px)}48%{opacity:1;transform:translateY(-.025em) scale(1.018);filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
@keyframes hero-strong-impact{0%{opacity:.5;transform:translateY(.24em) scale(.97);filter:blur(3px);color:#777168}50%{opacity:1;transform:translateY(-.035em) scale(1.025);filter:blur(0);color:#24221f;text-shadow:0 0 40px rgba(200,255,61,.18)}100%{opacity:1;transform:none;filter:none;color:#4e4a44;text-shadow:none}}
@keyframes hero-strong-sweep{0%{transform:scaleX(0);opacity:.1}60%{transform:scaleX(1.04);opacity:1}100%{transform:scaleX(1);opacity:.95}}

/* Softer sentence-by-sentence story highlight — no selected-text / underline appearance. */
.hero-story-copy span{padding:0 .05em;border-radius:.18em;background:linear-gradient(90deg,rgba(200,255,61,.15),rgba(200,255,61,.15)) no-repeat 0 54%/0 76%;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:color .32s ease,background-size .48s ease,opacity .32s ease}
.hero-story-copy.is-story-running span{opacity:.72}
.hero-story-copy span.is-story-active{opacity:1;color:#292720;background-size:100% 76%}

/* Trust points remain readable for the whole loop and get a short lime emphasis one by one. */
.hero-trust-line.is-story-running span{opacity:.72;transform:none}
.hero-trust-line span.is-story-active{opacity:1!important;transform:translateY(-2px);color:#24211d;background:rgba(200,255,61,.18);border-radius:999px;padding:.18rem .4rem;margin:-.18rem -.4rem}
.hero-trust-line span.is-story-complete{opacity:1!important;transform:none;color:#5f5a52}

/* Keep hero proportions controlled on notebooks / split-screen widths. */
@media(max-width:1380px){
  .marketing-hero h1{font-size:clamp(3.05rem,6.65vw,5.75rem);line-height:.92}
}

/* Final global CTA: content always sits over ambient cards. */
.final-cta>.section-kicker,.final-cta>h2,.final-cta>p,.final-cta>.final-cta-button{z-index:3}

@media(max-width:900px){
  .marketing-hero h1{font-size:clamp(2.85rem,8.8vw,4.55rem);line-height:.94}
  .marketing-hero h1 .hero-stage-strong::after{left:18%;right:18%;min-height:4px}
}

@media(max-width:640px){
  /* Stable mobile badge: never collapses while its micro-animation runs. */
  .hero-kicker{display:inline-flex;max-width:calc(100vw - 28px)!important;min-height:30px;padding:.42rem .58rem;font-size:.53rem;letter-spacing:.075em;white-space:nowrap;overflow:visible}
  .hero-kicker>.hero-kicker-copy{min-width:0!important;gap:.27rem;flex-wrap:nowrap!important;white-space:nowrap}
  .hero-kicker>.hero-kicker-copy b,.hero-kicker>.hero-kicker-copy i,.hero-kicker>.hero-kicker-copy em{white-space:nowrap}
  .marketing-hero h1{font-size:clamp(2.45rem,11.6vw,3.5rem)!important;line-height:.96;margin-top:1rem}
  .marketing-hero h1 .hero-stage-strong{color:#4e4a44}
  .marketing-hero h1 .hero-stage-strong::after{left:10%;right:10%;height:4px;min-height:4px}
  .hero-story-copy span{background-size:0 72%}
  .hero-story-copy span.is-story-active{background-size:100% 72%}
  .hero-trust-line span.is-story-active{padding:.12rem .25rem;margin:-.12rem -.25rem}

  /* Global CTA: only two subtle location cards on phones; no button/card collision. */
  .final-cta{padding:3.8rem 14px 3.2rem;min-height:520px;display:flex;flex-direction:column;justify-content:center}
  .final-cta .global-city-cloud i{display:none!important}
  .final-cta .global-city-cloud i:nth-child(1),.final-cta .global-city-cloud i:nth-child(6){display:flex!important;width:112px;height:70px;padding:.65rem;opacity:.34}
  .final-cta .global-city-cloud i:nth-child(1){left:-22px;top:12%;bottom:auto;transform:rotate(-5deg)}
  .final-cta .global-city-cloud i:nth-child(6){right:-22px;top:auto;bottom:11%;transform:rotate(5deg)}
  .final-cta .global-city-cloud i b{font-size:.72rem}.final-cta .global-city-cloud i span{font-size:.56rem}
  .final-cta-button{align-self:center!important;width:auto!important;min-width:150px!important;margin-top:.75rem!important;padding:.82rem 1.15rem!important;border-radius:14px!important;font-size:.9rem!important}
  .final-cta h2{max-width:560px;margin-left:auto;margin-right:auto}
  .final-cta p{max-width:430px;margin-left:auto;margin-right:auto}

  /* Compact, balanced mobile footer. */
  .marketing-footer{grid-template-columns:1fr 1fr!important;gap:1.15rem .9rem!important;padding:2rem 1rem 1.15rem!important}
  .footer-brand{grid-column:1/-1!important}.footer-brand p{max-width:290px;font-size:.76rem!important;line-height:1.45;margin:.45rem 0 .15rem!important;color:#9a958d}
  .marketing-footer>div:not(.footer-brand):not(.footer-bottom){gap:.42rem!important}
  .marketing-footer b{font-size:.86rem!important;margin-bottom:.18rem!important}
  .marketing-footer a,.marketing-footer button{font-size:.73rem!important;line-height:1.35}
  .marketing-footer>div:nth-child(4){grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,max-content));align-items:center;gap:.35rem .85rem!important}
  .marketing-footer>div:nth-child(4)>b{grid-column:1/-1}
  .footer-bottom{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr!important;gap:.2rem!important;padding-top:.8rem!important;margin-top:.15rem;color:#8e8981!important;font-size:.63rem!important}
}

@media(max-width:390px){
  .hero-kicker{font-size:.49rem;letter-spacing:.06em;padding:.4rem .5rem}
  .hero-kicker>.hero-kicker-copy{gap:.2rem}
  .marketing-hero h1{font-size:clamp(2.28rem,11.2vw,3.05rem)!important}
  .final-cta{min-height:490px;padding-left:12px;padding-right:12px}
  .marketing-footer{padding-left:.85rem!important;padding-right:.85rem!important}
  .marketing-footer>div:nth-child(4){gap:.3rem .65rem!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-stage-primary,.hero-stage-strong,.hero-stage-strong::after{animation:none!important;transform:none!important;filter:none!important;opacity:1!important}
  .hero-stage-strong::after{transform:scaleX(1)!important}
  .hero-kicker>.hero-kicker-copy{opacity:1!important}
  .hero-trust-line span{opacity:1!important;background:none!important;padding:0!important;margin:0!important}
}

/* V3.4 — email verification and account recovery */
.auth-code-panel{width:min(540px,94vw)}
.auth-code-panel .login-help strong{color:var(--text);overflow-wrap:anywhere}
.auth-code-input{font-size:1.45rem!important;font-weight:900!important;letter-spacing:.28em;text-align:center;font-variant-numeric:tabular-nums}
.auth-code-input::placeholder{letter-spacing:.22em;color:#c5c0b7}
.notice.is-info{color:#4f5c32;background:#f3f8d9;border:1px solid #dbe7aa;border-radius:12px;padding:.7rem .8rem;font-weight:700}
@media (max-width:640px){
  .auth-code-panel{width:min(94vw,520px)}
  .auth-code-input{font-size:1.25rem!important;letter-spacing:.22em}
}

.password-field{display:flex;gap:8px;align-items:center}.password-field input{flex:1;min-width:0}.password-toggle{min-width:58px;padding:10px 8px;border:1px solid #ddd;border-radius:10px;background:transparent}.password-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;font-size:.78rem;color:#777}.password-rules span:before{content:"○ "}.password-rules span.valid{color:#25734a}.password-rules span.valid:before{content:"✓ "}.dashboard-account-actions{display:flex;justify-content:flex-end;margin-bottom:10px}.profile-panel{max-width:760px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-section{margin-top:18px;padding-top:18px;border-top:1px solid #e4e4e4}.profile-wide{grid-column:1/-1}.ai-beta-line{font-size:.86rem!important}@media(max-width:680px){.password-rules,.profile-grid{grid-template-columns:1fr}.dashboard-account-actions button{width:100%}}

/* V3.4.4 — icon-led project launcher + AI Selection Beta workspace */
.project-launcher,.workflow-panel{border:1px solid var(--line,#dedbd2);border-radius:24px;padding:22px;margin:14px 0;background:var(--paper,#fffdfa)}
.section-heading-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.section-heading-row h3{margin:.15rem 0 .35rem;font-size:1.45rem}.section-heading-row p{margin:0;color:var(--muted,#777)}
.workflow-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.workflow-choice{position:relative;text-align:left;border:1px solid #ddd8ce;background:#fff;border-radius:22px;padding:22px;min-height:190px;cursor:pointer;transition:.18s ease}.workflow-choice:hover,.workflow-choice:focus-visible{transform:translateY(-2px);border-color:#bde933;box-shadow:0 10px 30px rgba(0,0,0,.06)}.workflow-choice strong{display:block;font-size:1.25rem;margin:10px 0 7px}.workflow-choice strong em{font-style:normal;font-size:.7rem;background:#d8ff54;border-radius:999px;padding:4px 7px;margin-left:4px}.workflow-choice>span:last-child{display:block;color:#777;line-height:1.45}.workflow-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#f7f3eb;font-size:1.45rem}.workflow-icon.mini{width:42px;height:42px;display:inline-grid}.step-number{position:absolute;right:18px;top:18px;background:#c9ff42;border-radius:999px;padding:5px 9px;font-weight:900;font-size:.78rem}.workflow-panel-head{display:flex;gap:16px;align-items:flex-start}.workflow-panel-head h3{margin:.15rem 0 .3rem}.back-link{border:0;background:transparent;text-decoration:underline;font-weight:800;cursor:pointer;padding:4px 0;color:inherit}.client-workflow-back{margin:10px 0}
.icon-step-strip{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:14px 2px;margin:12px 0 20px}.icon-step{min-width:105px;flex:1;border:1px solid #e2ded5;border-radius:18px;padding:12px;text-align:center;background:#fff;position:relative}.icon-step b{position:absolute;left:8px;top:8px;font-size:.66rem;background:#c9ff42;border-radius:999px;padding:3px 6px}.icon-step i{font-style:normal;font-size:1.45rem;display:block;margin:10px auto 5px}.icon-step span{font-size:.78rem;font-weight:800}.step-arrow{font-size:1.5rem;color:#aaa}
.ai-beta-card{border:1px solid #e0dbd2;border-radius:20px;padding:18px;background:#fff}.ai-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ai-preset{border:1px solid #ddd8ce;border-radius:16px;padding:14px;cursor:pointer}.ai-preset input{margin-right:8px}.ai-preset strong,.ai-preset span{display:block}.ai-preset span{font-size:.8rem;color:#777;margin-top:4px}.ai-preset.selected{border-color:#9bc51d;background:#f5ffe0}
.ai-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-filter{display:grid;grid-template-columns:auto auto 1fr;grid-template-areas:"check icon title" "check icon desc";align-items:center;gap:2px 10px;border:1px solid #e1ddd4;border-radius:16px;padding:12px;background:#fff}.ai-filter input{grid-area:check}.ai-filter .filter-icon{grid-area:icon;font-size:1.25rem}.ai-filter strong{grid-area:title}.ai-filter small{grid-area:desc;color:#777}.advanced-filter{background:#fbfaf7}
.ai-upload-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px dashed #cfc8bb;border-radius:18px;padding:16px;margin:18px 0}.ai-upload-card input[type=file]{position:absolute;opacity:0;pointer-events:none}.ai-upload-button{cursor:pointer;border:1px solid #111;border-radius:999px;padding:10px 16px;font-weight:900}.ai-upload-summary{grid-column:1/-1;color:#666;border-top:1px solid #eee;padding-top:10px}.ai-credit-check{border-radius:14px;background:#f5f2ec;padding:12px;margin-bottom:12px}.beta-truth-note{font-size:.82rem;color:#6c655b;margin-top:10px}.danger-text{color:#b73939}
.ai-results-preview{margin-top:18px;border-top:1px solid #e5e0d7;padding-top:18px}.result-folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.result-folder{border:1px solid #e0dbd2;border-radius:18px;padding:16px;background:#fff;min-height:125px}.result-folder span{font-size:1.5rem}.result-folder strong,.result-folder small{display:block;margin-top:7px}.result-folder small{color:#777}.result-folder.recommended{border-color:#b4dc38;background:#f7ffe7}.future-action-row{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:900px){.result-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.icon-step{min-width:95px}}
@media(max-width:680px){.workflow-choice-grid,.ai-preset-grid,.ai-filter-grid,.result-folder-grid{grid-template-columns:1fr}.project-launcher,.workflow-panel{padding:15px;border-radius:20px}.ai-upload-card{grid-template-columns:1fr}.ai-upload-button{width:max-content}.icon-step-strip{margin-left:-4px;margin-right:-4px}.icon-step{min-width:92px}.section-heading-row{flex-direction:column}}

/* V3.4.4.1 — nested dashboard modal stacking */
#profileDialog{z-index:140}
#confirmDialog,#lightboxDialog{z-index:160}
#profileDialog .modal-panel{position:relative;z-index:141}

/* V3.4.5 — responsive workspace pass */
:root{
  --workspace-gutter: clamp(10px, 2vw, 28px);
  --workspace-radius: clamp(16px, 2vw, 28px);
}
#dashboardDialog{
  padding:var(--workspace-gutter);
  align-items:center;
}
#dashboardPanel{
  width:min(1180px, calc(100vw - (var(--workspace-gutter) * 2)));
  max-width:1180px;
  height:min(96dvh, 980px);
  max-height:calc(100dvh - (var(--workspace-gutter) * 2));
  border-radius:var(--workspace-radius);
  padding:clamp(16px,2.2vw,28px);
  overflow:auto;
  overscroll-behavior:contain;
}
#dashboardPanel .dialog-head{
  position:sticky;
  top:0;
  z-index:15;
  background:linear-gradient(to bottom, var(--paper,#fffdfa) 78%, rgba(255,253,250,0));
  padding-bottom:12px;
}
.dashboard-account-actions{
  position:sticky;
  top:76px;
  z-index:12;
  background:var(--paper,#fffdfa);
  padding:6px 0 10px;
}
.account-usage-panel,
.project-launcher,
.workflow-panel,
.create-panel{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.workflow-choice-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.icon-step-strip{
  display:grid;
  grid-template-columns:repeat(11,auto);
  align-items:stretch;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:thin;
  padding-bottom:8px;
}
.icon-step{
  min-width:118px;
}
.ai-beta-card{
  overflow:hidden;
}
.ai-preset-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ai-filter-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ai-filter{
  min-width:0;
}
.ai-filter strong,
.ai-filter small{
  overflow-wrap:anywhere;
}
.ai-upload-card{
  min-width:0;
}
.form-grid.three-fields,
.form-grid.watermark-fields,
.limit-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.dashboard-tools{
  grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr)) auto;
}

/* Laptop / split-screen */
@media (max-width: 1050px){
  #dashboardPanel{
    width:calc(100vw - 16px);
    max-width:none;
    height:calc(100dvh - 16px);
    max-height:calc(100dvh - 16px);
    border-radius:20px;
    padding:18px;
  }
  .dashboard-account-actions{top:70px}
  .workflow-choice-grid{grid-template-columns:1fr 1fr}
  .ai-filter-grid{grid-template-columns:1fr 1fr}
  .result-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-tools{grid-template-columns:1fr 1fr}
  .dashboard-tools > *:first-child{grid-column:1/-1}
  .icon-step{min-width:105px}
}

/* Tablet */
@media (max-width: 820px){
  #dashboardDialog{padding:6px}
  #dashboardPanel{
    width:calc(100vw - 12px);
    height:calc(100dvh - 12px);
    max-height:calc(100dvh - 12px);
    padding:15px;
    border-radius:18px;
  }
  #dashboardPanel .dialog-head{
    align-items:flex-start;
  }
  .dialog-head-actions{
    gap:6px;
  }
  .dashboard-account-actions{
    position:static;
    justify-content:stretch;
    padding-top:0;
  }
  .dashboard-account-actions button{width:100%}
  .usage-head{align-items:flex-start}
  .usage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workflow-choice-grid,
  .ai-preset-grid,
  .ai-filter-grid,
  .form-grid.three-fields,
  .form-grid.watermark-fields,
  .limit-grid{
    grid-template-columns:1fr;
  }
  .workflow-choice{min-height:150px}
  .icon-step-strip{
    display:flex;
    gap:6px;
    margin-left:-3px;
    margin-right:-3px;
  }
  .icon-step{min-width:96px;flex:0 0 96px}
  .step-arrow{flex:0 0 auto;align-self:center}
  .ai-upload-card{
    grid-template-columns:1fr;
  }
  .ai-upload-button{
    width:100%;
    text-align:center;
    box-sizing:border-box;
  }
  .future-action-row{
    flex-direction:column;
  }
  .future-action-row button{width:100%}
}

/* Phones */
@media (max-width: 560px){
  #dashboardDialog{
    padding:0;
    align-items:stretch;
  }
  #dashboardPanel{
    width:100vw;
    max-width:100vw;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
    padding:12px;
  }
  #dashboardPanel .dialog-head{
    padding-top:max(4px, env(safe-area-inset-top));
  }
  #dashboardPanel h2{font-size:clamp(1.75rem,9vw,2.3rem)}
  .dialog-head-actions .secondary.compact{
    padding:8px 10px;
    font-size:.82rem;
  }
  .dialog-head-actions .icon{
    width:42px;
    height:42px;
  }
  .usage-grid{grid-template-columns:1fr}
  .usage-head{
    flex-direction:column;
    gap:8px;
  }
  .trial-status{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }
  .project-launcher,.workflow-panel,.create-panel{
    border-radius:16px;
    padding:12px;
  }
  .workflow-panel-head{
    flex-direction:column;
    gap:6px;
  }
  .workflow-panel-head .back-link{
    align-self:flex-start;
  }
  .icon-step-strip{
    scroll-snap-type:x mandatory;
  }
  .icon-step{
    min-width:88px;
    flex-basis:88px;
    scroll-snap-align:start;
    padding:10px 6px;
  }
  .icon-step i{font-size:1.25rem}
  .icon-step span{font-size:.72rem}
  .ai-beta-card{
    padding:12px;
    border-radius:16px;
  }
  .ai-preset{padding:12px}
  .ai-filter{
    grid-template-columns:auto auto minmax(0,1fr);
    padding:11px;
  }
  .ai-upload-card{padding:12px}
  .result-folder-grid{grid-template-columns:1fr}
  .dashboard-tools{grid-template-columns:1fr}
  .dashboard-tools > *{grid-column:auto !important}
  .project-card-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .project-card-actions button,
  .project-card-actions a{width:100%;box-sizing:border-box}
}

/* Very small phones */
@media (max-width: 380px){
  #dashboardPanel{padding:9px}
  .workflow-choice{padding:15px}
  .icon-step{min-width:82px;flex-basis:82px}
  .ai-filter{padding:9px}
  .password-field{gap:5px}
}

/* V3.4.6 — AI batch rules, multi-round upload, workflow animation */
.ai-upload-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.secondary-upload{background:#fff}
.ai-drop-copy{grid-column:1/-1;text-align:center;color:#777;font-size:.85rem;padding:8px 0 2px}
.ai-upload-card.is-dragging{border-color:#a7d51e;background:#f8ffe8}
.ai-batch-meter{grid-column:1/-1;border-top:1px solid #eee;padding-top:12px}
.ai-batch-meter>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}
.ai-batch-meter span{color:#6f6a62;font-size:.84rem}
.ai-meter-track{height:8px;border-radius:999px;background:#ece8df;overflow:hidden;margin-top:8px}
.ai-meter-track span{display:block;height:100%;width:0;background:#baff2c;transition:width .25s ease}
.ai-queue-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}
#aiUploadError:empty{display:none}
#aiUploadError{grid-column:1/-1;color:#b33333;background:#fff1ef;border:1px solid #f0c1ba;border-radius:12px;padding:10px}
.ai-usage-card small{display:block;margin-top:5px;color:#777;font-size:.72rem}

/* subtle educational loop through steps */
.icon-step-strip .icon-step,
.icon-step-strip .step-arrow{animation:gvStepPulse 7.2s infinite ease-in-out}
.icon-step-strip .icon-step:nth-of-type(1){animation-delay:0s}
.icon-step-strip .step-arrow:nth-of-type(2){animation-delay:.45s}
.icon-step-strip .icon-step:nth-of-type(3){animation-delay:.9s}
.icon-step-strip .step-arrow:nth-of-type(4){animation-delay:1.35s}
.icon-step-strip .icon-step:nth-of-type(5){animation-delay:1.8s}
.icon-step-strip .step-arrow:nth-of-type(6){animation-delay:2.25s}
.icon-step-strip .icon-step:nth-of-type(7){animation-delay:2.7s}
.icon-step-strip .step-arrow:nth-of-type(8){animation-delay:3.15s}
.icon-step-strip .icon-step:nth-of-type(9){animation-delay:3.6s}
.icon-step-strip .step-arrow:nth-of-type(10){animation-delay:4.05s}
.icon-step-strip .icon-step:nth-of-type(11){animation-delay:4.5s}
@keyframes gvStepPulse{
  0%,8%,100%{transform:translateY(0);box-shadow:none;border-color:#e2ded5}
  3%{transform:translateY(-3px);box-shadow:0 8px 18px rgba(129,170,22,.12);border-color:#a8d52b}
}
.icon-step-strip .step-arrow{box-shadow:none!important;border:0!important}
@media (prefers-reduced-motion: reduce){
  .icon-step-strip .icon-step,.icon-step-strip .step-arrow{animation:none!important}
}
@media(max-width:680px){
  .ai-upload-actions{justify-content:stretch}
  .ai-upload-actions .ai-upload-button{flex:1;text-align:center}
  .ai-batch-meter>div:first-child{flex-direction:column;align-items:flex-start}
  .ai-queue-actions{justify-content:stretch}
  .ai-queue-actions button{flex:1}
}

/* V3.4.6 usage separation */
.usage-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.ai-usage-card{border-color:#cfe79a;background:#fbfff3}
.ai-usage-card small{display:block;margin-top:6px;color:#716d66;font-size:.72rem;line-height:1.3}
@media(max-width:1100px){.usage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.usage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.usage-grid{grid-template-columns:1fr}}

/* V3.4.6.1 — full-screen photographer workspace hotfix */
#dashboardDialog{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:var(--paper,#fffdfa) !important;
  overflow:hidden !important;
  z-index:120 !important;
}
#dashboardDialog.hidden{
  display:none !important;
}
#dashboardPanel{
  position:absolute !important;
  inset:0 !important;
  width:100vw !important;
  max-width:none !important;
  height:100dvh !important;
  max-height:none !important;
  min-height:100dvh !important;
  margin:0 !important;
  border-radius:0 !important;
  box-sizing:border-box !important;
  padding:
    max(12px, env(safe-area-inset-top))
    max(14px, env(safe-area-inset-right))
    max(18px, env(safe-area-inset-bottom))
    max(14px, env(safe-area-inset-left)) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
  background:var(--paper,#fffdfa) !important;
}
#dashboardPanel .dialog-head{
  position:relative !important;
  top:auto !important;
  background:transparent !important;
}
.dashboard-account-actions{
  position:relative !important;
  top:auto !important;
  background:transparent !important;
}
#aiWorkflowPanel,
#clientWorkflowPanel,
#projectLauncher{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
#aiWorkflowPanel{
  overflow:visible !important;
}
.icon-step-strip{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.ai-beta-card{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
@media(max-width:760px){
  #dashboardPanel{
    padding:
      max(10px, env(safe-area-inset-top))
      10px
      max(16px, env(safe-area-inset-bottom))
      10px !important;
  }
  .icon-step-strip{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    overflow:visible !important;
  }
  .icon-step{
    min-width:0 !important;
    width:100% !important;
    flex:none !important;
  }
  .step-arrow{
    display:none !important;
  }
}
@media(max-width:420px){
  .icon-step-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* V3.4.6.2 — AI confirmation + header + full-screen polish */
.ai-workflow-head{display:block!important}
.ai-head-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.ai-head-copy{padding-left:0}
.back-pill{display:inline-flex;align-items:center;gap:6px;text-decoration:none!important;border:1px solid #ddd7cc!important;border-radius:999px!important;padding:8px 12px!important;background:#fff!important}
.back-pill:hover{border-color:#acd52b!important;background:#f8ffe8!important}
.ai-beta-badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#edffd0;color:#486314;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.ai-permission-check{display:flex;gap:12px;align-items:flex-start;border:1px solid #b9d95e;background:#f8ffe7;border-radius:16px;padding:14px 16px;margin:12px 0;cursor:pointer}
.ai-permission-check input{margin-top:3px;width:18px;height:18px;flex:0 0 auto}
.ai-permission-check span{display:block}
.ai-permission-check strong,.ai-permission-check small{display:block}
.ai-permission-check small{margin-top:4px;color:#6f6a62;line-height:1.35}
.ai-permission-check.disabled{opacity:.55;background:#f5f3ef;border-color:#ddd7cc;cursor:not-allowed}
#prepareAiSelection:not(:disabled){background:#111!important;color:#fff!important}
#prepareAiSelection:disabled{opacity:.42!important;cursor:not-allowed!important}
@media(max-width:760px){
  .ai-head-top{align-items:flex-start}
  .ai-beta-badge{font-size:.7rem}
}
@media(max-width:520px){
  .ai-head-top{flex-direction:column}
  .back-pill,.ai-beta-badge{width:max-content}
}

/* V3.4.7 guided workflow system */
.ai-project-first{border:2px solid #b7e52e;background:#fbfff0;border-radius:20px;padding:18px;margin-bottom:18px}.ai-first-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.ai-first-title .workflow-icon{font-size:2rem}.ai-first-title small{font-weight:900;letter-spacing:.12em;color:#637044}.ai-first-title h3{margin:.15rem 0 .2rem;font-size:1.35rem}.ai-first-title p{margin:0;color:var(--muted)}.ai-project-first.is-complete{border-color:#d9e8b3;background:#fff}.workflow-message{margin-top:10px;border-radius:12px;padding:10px 12px;font-weight:800}.workflow-message.is-info{background:#f5f2ec;color:#655f56}.workflow-message.is-success{background:#f1fbdc;color:#49631f}.ai-gated{transition:.2s ease}.ai-gated.is-locked{opacity:.42;filter:grayscale(.2);pointer-events:none;user-select:none}.icon-step{transition:.2s ease}.icon-step.active{border:2px solid #a9d91c;background:#f5ffdc;box-shadow:0 0 0 3px rgba(169,217,28,.08)}.icon-step.complete{border-color:#b8d77a;background:#f8fce9}.icon-step.complete:after{content:'✓';position:absolute;right:9px;top:8px;font-weight:950;color:#507317}.icon-step i{font-size:1.75rem!important}.notice:not(:empty){border:1px solid #e2b3ad;background:#fff1ef;border-radius:12px;padding:10px 12px}.notice:not(:empty):before{content:'⚠ ';font-weight:900}@media(max-width:680px){.ai-project-first{padding:14px}.ai-first-title .workflow-icon{font-size:1.65rem}}

/* V3.4.8 — guided workflow states + live AI progress */
.icon-step{transition:.2s ease}
.icon-step.is-complete{background:#f2ffdc!important;border-color:#b8dc58!important;font-weight:900}
.icon-step.is-complete b{background:#6ea900!important;color:#fff!important}
.icon-step.is-active-step{border-color:#9ed124!important;box-shadow:0 8px 22px rgba(134,180,30,.14)!important;background:#fbfff3!important;font-weight:900}
.icon-step.is-next-step{animation:gvNextStep 1.4s ease-in-out infinite}
.icon-step.is-locked-step{opacity:.55}
@keyframes gvNextStep{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.icon-step.is-next-step{animation:none}}

.context-help{width:24px;height:24px;border-radius:50%;border:1px solid #ccc;background:#fff;font-weight:900;cursor:pointer}
.help-title{display:flex;align-items:center;gap:8px}

.ai-live-status{display:flex;gap:18px;align-items:flex-start;border:1px solid #b7d95e;background:#f8ffe8;border-radius:22px;padding:22px;margin:18px 0}
.ai-live-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#caff45;font-size:1.6rem;flex:0 0 auto}
.ai-live-copy{flex:1;min-width:0}
.ai-live-copy h3{font-size:1.6rem;margin:.15rem 0 .45rem}
.ai-live-copy p{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:.2rem 0 .8rem}
.ai-live-meter{height:12px;border-radius:999px;background:#e6e1d8;overflow:hidden}
.ai-live-meter span{display:block;height:100%;width:0;background:#aef02e;transition:width .25s ease}
.ai-live-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.ai-live-stages span{border:1px solid #ded9cf;border-radius:999px;padding:7px 10px;text-align:center;font-size:.78rem;background:#fff}
.ai-live-stages span.done{background:#efffd8;border-color:#b8dc58;color:#4f6e16}
.ai-live-stages span.active{background:#caff45;border-color:#97c31e;font-weight:900}
.ai-results-head{margin-top:18px}
@media(max-width:700px){
  .ai-live-status{padding:16px;gap:12px}
  .ai-live-icon{width:48px;height:48px}
  .ai-live-copy h3{font-size:1.25rem}
  .ai-live-stages{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .ai-live-status{flex-direction:column}
  .ai-live-stages{grid-template-columns:1fr}
}

/* V3.4.9 — AI Selection preview folders */
.result-folder{position:relative;text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit}
.result-folder:hover,.result-folder:focus-visible{transform:translateY(-2px);border-color:#a9d62a;box-shadow:0 10px 24px rgba(0,0,0,.05)}
.folder-count{position:absolute;right:14px;top:14px;min-width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#f1eee8;font-size:.8rem}
.result-folder.recommended .folder-count{background:#c9ff42}
.ai-folder-workspace{border:1px solid #ddd7cd;border-radius:22px;padding:20px;margin-top:18px;background:#fff}
.ai-folder-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.ai-folder-head h3{font-size:1.5rem;margin:.35rem 0 .25rem}
.ai-folder-summary{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;background:#f6f3ed;border-radius:14px;margin:16px 0}
.ai-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ai-thumb{border:1px solid #ddd8cf;border-radius:16px;padding:0;background:#fff;overflow:hidden;cursor:pointer;text-align:left}
.ai-thumb:hover{border-color:#aad42c}
.ai-thumb img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee}
.ai-thumb span{display:block;padding:9px 10px;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-burst-groups{display:grid;gap:14px}
.burst-group{border:1px solid #ddd8cf;border-radius:18px;padding:14px}
.burst-group-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}
.burst-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ai-photo-preview-panel{max-width:1050px;width:min(1050px,96vw)}
.ai-large-preview{background:#111;border-radius:18px;overflow:hidden;display:grid;place-items:center;min-height:320px}
.ai-large-preview img{max-width:100%;max-height:70vh;object-fit:contain}
.ai-photo-meta{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-top:14px}
.ai-photo-meta strong,.ai-photo-meta span{display:block}
.ai-photo-meta span{color:#777;margin-top:4px}
.ai-photo-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
@media(max-width:900px){.ai-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
  .ai-folder-head,.ai-folder-summary,.ai-photo-meta{flex-direction:column}
  .ai-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .burst-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ai-photo-actions{justify-content:stretch}
  .ai-photo-actions button{flex:1}
}
@media(max-width:430px){
  .ai-preview-grid,.burst-strip{grid-template-columns:1fr}
}

/* V3.5 — clearer AI result folder actions */
.result-folder{display:flex;flex-direction:column;justify-content:space-between;gap:14px;padding:16px!important}
.folder-main{position:relative}
.folder-main>span{font-size:1.45rem}
.folder-main strong,.folder-main small{display:block;margin-top:7px}
.folder-main small{color:#777}
.folder-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #eee;padding-top:12px}
.folder-select{display:flex;align-items:center;gap:7px;border:1px solid #ddd7cd;border-radius:999px;padding:8px 11px;background:#fff;cursor:pointer;font-weight:800}
.folder-select input{width:17px;height:17px}
.result-folder.is-selected-folder{border-color:#8fc51e!important;background:#f3ffde!important;box-shadow:0 0 0 2px rgba(155,207,35,.08)}
.result-folder.is-selected-folder .folder-select{background:#caff45;border-color:#9bc923}
.ai-selected-folder-actions{position:static;bottom:auto;z-index:1;display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid #a9d62a;background:rgba(248,255,232,.96);backdrop-filter:blur(10px);border-radius:18px;padding:14px 16px;margin:16px 0}
.ai-selected-folder-actions>div:first-child strong,.ai-selected-folder-actions>div:first-child span{display:block}
.ai-selected-folder-actions>div:first-child span{font-size:.8rem;color:#6d685f;margin-top:3px}
.selected-folder-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:850px){
  .ai-selected-folder-actions{flex-direction:column;align-items:stretch}
  .selected-folder-buttons{justify-content:stretch}
  .selected-folder-buttons button{flex:1}
}
@media(max-width:560px){
  .folder-actions{flex-direction:column;align-items:stretch}
  .folder-actions button,.folder-select{width:100%;box-sizing:border-box;justify-content:center}
  .selected-folder-buttons{display:grid;grid-template-columns:1fr}
}

/* V3.5.1 — Client Selection guided parity + field validation */
.client-guided-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 14px}
.client-mode-badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#edffd0;color:#486314;font-size:.76rem;font-weight:900;letter-spacing:.04em}
.guided-form-card{display:flex;gap:14px;align-items:flex-start;border:1px solid #b9d95e;background:#fbfff4;border-radius:20px;padding:16px;margin:12px 0 18px}
.guided-form-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f2eee6;font-size:1.35rem;flex:0 0 auto}
.guided-form-card h3{margin:.15rem 0 .25rem}.guided-form-card p{margin:0;color:#6f6a62}

.field-wrap{position:relative}
.field-wrap input{padding-right:44px}
.field-state{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:900}
.validated-field.is-valid input{border-color:#8fc51e!important;background:#fbfff4}
.validated-field.is-valid .field-state{background:#caff45;color:#34510c}
.validated-field.is-invalid input{border-color:#d64b4b!important;background:#fff8f7}
.validated-field.is-invalid .field-state{background:#ffd8d4;color:#a32121}
.field-message{min-height:1em;display:block;margin-top:4px;color:#b33333;font-size:.72rem}

.limit-input-wrap{position:relative}
.limit-input-wrap input{padding-right:76px}
.limit-state{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:900}
.validated-limit.is-valid{border-color:#b7db58;background:#fbfff4}
.validated-limit.is-valid .limit-state{color:#567417}
.validated-limit.is-disabled-limit{background:#f6f4ef;border-style:dashed}
.validated-limit.is-disabled-limit .limit-state{color:#777}
.validated-limit.is-invalid{border-color:#d64b4b;background:#fff8f7}

.client-strip .icon-step.is-complete{background:#f2ffdc!important;border-color:#b8dc58!important}
.client-strip .icon-step.is-active-step{background:#fbfff3!important;border-color:#9ed124!important;box-shadow:0 8px 22px rgba(134,180,30,.14)!important}
.client-strip .icon-step.is-next-step{animation:gvNextStep 1.4s ease-in-out infinite}
.client-strip .icon-step.is-locked-step{opacity:.5}

@media(max-width:700px){
  .client-guided-head{align-items:flex-start}
}
@media(max-width:520px){
  .client-guided-head{flex-direction:column}
  .client-mode-badge{width:max-content}
}

/* V3.5.2 — stabilization, honest AI preview mode, real AI→Client handoff */
.ai-client-handoff-banner{
  display:flex;align-items:center;gap:14px;
  border:1px solid #a9d62a;background:#f5ffe2;border-radius:18px;
  padding:14px 16px;margin:12px 0 18px;
}
.ai-client-handoff-banner .handoff-icon{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:#caff45;font-size:1.25rem;flex:0 0 auto;
}
.ai-client-handoff-banner>div:nth-child(2){flex:1;min-width:0}
.ai-client-handoff-banner strong,.ai-client-handoff-banner span{display:block}
.ai-client-handoff-banner span{margin-top:3px;color:#676158;font-size:.82rem;line-height:1.35}
#aiLiveStatus{position:relative}
#aiLiveStatus::after{
  content:"PREVIEW / TEST MODE";
  position:absolute;right:14px;top:14px;
  border-radius:999px;background:#fff3cb;color:#725500;
  border:1px solid #efd686;padding:5px 8px;font-size:.62rem;font-weight:900;letter-spacing:.05em;
}
#analyseSelectedDeeper:disabled{
  opacity:.55;cursor:not-allowed;
}
.field-state{min-width:24px;width:auto;padding:0 5px}
@media(max-width:650px){
  .ai-client-handoff-banner{align-items:flex-start;flex-wrap:wrap}
  .ai-client-handoff-banner>button{width:100%}
}

/* V3.5.3 — current project, unfinished work, later workflow, linked allocation */
.current-work-bar{
  display:flex;justify-content:space-between;gap:16px;align-items:center;
  border:1px solid #a9d62a;background:#f7ffe9;border-radius:20px;padding:14px 16px;margin-bottom:14px;
}
.current-work-main{display:flex;gap:12px;align-items:center;min-width:0}
.current-work-icon{width:44px;height:44px;border-radius:50%;background:#caff45;display:grid;place-items:center;font-size:1.2rem;flex:0 0 auto}
.current-work-main small,.current-work-main strong,.current-work-main span{display:block}
.current-work-main small{font-size:.65rem;font-weight:900;letter-spacing:.08em;color:#607238}
.current-work-main strong{font-size:1rem;margin:2px 0}
.current-work-main span{font-size:.78rem;color:#6d685f}
.current-work-actions{display:flex;gap:8px;flex-wrap:wrap}

.unfinished-work-panel{border:1px solid #ddd7cd;background:#fff;border-radius:20px;padding:14px;margin-bottom:14px}
.unfinished-head{padding:2px 4px 10px}
.unfinished-head small,.unfinished-head strong,.unfinished-head span{display:block}
.unfinished-head small{font-size:.66rem;letter-spacing:.08em;font-weight:900;color:#746f66}
.unfinished-head strong{font-size:1.05rem;margin:2px 0}
.unfinished-head span{color:#777;font-size:.78rem}
.unfinished-card{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  border-top:1px solid #eee8df;padding:12px 4px;
}
.unfinished-card>div:first-child{display:flex;align-items:center;gap:11px;min-width:0}
.unfinished-card small,.unfinished-card strong,.unfinished-card span{display:block}
.unfinished-card small{font-size:.62rem;letter-spacing:.06em;font-weight:900;color:#6e7558}
.unfinished-card strong{margin:2px 0}
.unfinished-card span{font-size:.76rem;color:#777;line-height:1.35}
.unfinished-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f4f1ea;flex:0 0 auto}
.unfinished-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.attention-flash{animation:gvAttentionFlash 1.7s ease}
@keyframes gvAttentionFlash{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 4px rgba(183,231,58,.38)}}

.later-actions{
  display:flex;gap:12px;align-items:center;justify-content:space-between;
  margin-top:10px;padding:10px 12px;background:#f7f4ee;border-radius:14px;
}
.later-actions span{font-size:.75rem;color:#6f6a63;line-height:1.35}

.linked-selection-allocation{
  margin:10px 0 14px;border:1px solid #a9d62a;background:#f7ffe9;border-radius:16px;padding:12px 14px;
}
.linked-selection-allocation>div:first-child{display:flex;justify-content:space-between;gap:12px}
.linked-selection-allocation strong,.linked-selection-allocation span{font-size:.82rem}
.allocation-meter{height:8px;background:#e7e3da;border-radius:999px;overflow:hidden;margin:9px 0}
.allocation-meter span{display:block;height:100%;width:0;background:#baff2f;transition:width .2s ease}
.linked-selection-allocation small{display:block;font-size:.73rem;line-height:1.35}
.allocation-error{color:#b33131;font-weight:800}
.allocation-ok{color:#4d681b}

@media(max-width:760px){
  .current-work-bar,.unfinished-card,.later-actions{flex-direction:column;align-items:stretch}
  .current-work-actions,.unfinished-card-actions{justify-content:stretch}
  .current-work-actions button,.unfinished-card-actions button{flex:1}
  .linked-selection-allocation>div:first-child{flex-direction:column;gap:3px}
}

/* V3.5.4 — central plan limits, guided form, simplified project actions */
.project-readiness-notice{
  margin:12px 0 10px;border-radius:14px;padding:11px 13px;display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap
}
.project-readiness-notice strong,.project-readiness-notice span{display:block}
.project-readiness-notice span{font-size:.78rem;line-height:1.35}
.project-readiness-notice.is-ready{background:#f3ffdf;border:1px solid #a7d52c;color:#49651c}
.project-readiness-notice.is-blocked{background:#fff2ef;border:1px solid #e6a59c;color:#9c2f26}

.plan-block-banner,.project-block-explanation,.upload-block-panel{
  border:1px solid #e5a15e;background:#fff7e9;border-radius:16px;padding:12px 14px;margin-top:12px;
  display:flex;justify-content:space-between;gap:14px;align-items:center
}
.plan-block-banner strong,.plan-block-banner span,
.project-block-explanation strong,.project-block-explanation span,
.upload-block-panel strong,.upload-block-panel span{display:block}
.plan-block-banner span,.project-block-explanation span,.upload-block-panel span{font-size:.78rem;line-height:1.4;color:#6b5a49;margin-top:2px}
.capacity-solutions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}

.upload-optimize-option{
  display:flex;gap:10px;align-items:flex-start;border:1px solid #ddd7cd;background:#faf8f3;border-radius:14px;padding:11px 12px;margin:10px 0
}
.upload-optimize-option input{margin-top:3px}
.upload-optimize-option strong,.upload-optimize-option small{display:block}
.upload-optimize-option small{margin-top:3px;color:#716d65;line-height:1.35}

.handoff-add-more{display:flex!important;gap:7px;align-items:center;margin-top:8px;font-size:.76rem!important;font-weight:800;color:#526625!important}
.handoff-add-more input{width:16px;height:16px}

.project-actions-simple{align-items:center}
.project-manage-menu{position:relative}
.project-manage-menu>summary{
  list-style:none;cursor:pointer;border:1px solid #d9d2c7;background:#fff;border-radius:999px;padding:10px 15px;font-weight:900
}
.project-manage-menu>summary::-webkit-details-marker{display:none}
.project-manage-menu-body{
  position:absolute;right:0;top:calc(100% + 7px);z-index:40;min-width:250px;
  background:#fff;border:1px solid #ddd7cd;border-radius:16px;padding:9px;
  box-shadow:0 18px 45px rgba(0,0,0,.14);display:grid;gap:7px
}
.project-manage-menu-body button{width:100%;text-align:left}
.manage-divider{height:1px;background:#eee8df;margin:2px 0}

@media(max-width:760px){
  .plan-block-banner,.project-block-explanation,.upload-block-panel{flex-direction:column;align-items:stretch}
  .capacity-solutions{justify-content:stretch}
  .capacity-solutions button{flex:1}
  .project-manage-menu{width:100%}
  .project-manage-menu>summary{width:100%;text-align:center}
  .project-manage-menu-body{position:static;margin-top:7px;box-shadow:none}
}


/* =========================================================
   GaliVue V3.5.6 — workflow-first workspace
   ========================================================= */

/* Desktop workspace: centred, readable, not edge-to-edge. */
.dashboard-panel{
  width:min(1180px,calc(100vw - 48px));
  max-width:1180px;
  height:min(94vh,980px);
  max-height:calc(100dvh - 28px);
  padding:1.15rem 1.25rem 1.5rem;
  border-radius:24px;
}
.workspace-head{
  top:-1.15rem;
  margin:0;
  padding:.85rem 0 .65rem;
  min-height:58px;
  align-items:center;
}
.workspace-brand{display:flex;align-items:center;gap:.85rem;min-width:0}
.workspace-brand-mark{
  display:inline-flex;align-items:center;white-space:nowrap;font-weight:950;letter-spacing:-.05em;
  font-size:1.05rem;color:#111
}
.workspace-brand-mark span{background:var(--accent);border-radius:5px;padding:0 .22rem}
.workspace-brand small{font-size:.58rem;letter-spacing:.11em}
.workspace-brand h2{font-size:1.35rem!important;margin:.05rem 0 0!important;line-height:1.05}

/* One small photographer control instead of Profile + Logout + X. */
.profile-menu-wrap{position:relative;flex:0 0 auto}
.profile-avatar-button{
  width:40px;height:40px;border-radius:50%;padding:0;display:grid;place-items:center;
  border:1px solid var(--line);background:#f1ede5;font-weight:950;font-size:1rem
}
.profile-menu{
  position:absolute;right:0;top:calc(100% + 7px);z-index:90;width:210px;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px;
  box-shadow:0 16px 38px rgba(0,0,0,.15)
}
.profile-menu-head{padding:8px 9px;border-bottom:1px solid #eee8df;margin-bottom:4px}
.profile-menu-head strong,.profile-menu-head span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-menu-head strong{font-size:.86rem}.profile-menu-head span{font-size:.69rem;color:var(--muted);margin-top:2px}
.profile-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:8px 9px;border-radius:9px;font-size:.8rem}
.profile-menu button:hover{background:var(--soft)}

/* Compact plan/usage: normal dashboard state is one slim bar. */
.account-usage-panel{
  padding:.65rem .75rem;
  border-radius:16px;
  margin:.35rem 0 .65rem;
}
.usage-compact{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px}
.usage-compact-main,.usage-compact-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.usage-compact-main>span:not(.plan-pill){font-size:.72rem;color:var(--muted)}
.usage-compact-main b{color:var(--ink)}
.plan-pill{background:#111;color:#fff;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:900}
.usage-compact-main>strong{font-size:.78rem;color:#3f5e1f}
.usage-warning-pill,.usage-ok-pill{border-radius:999px;padding:6px 9px;font-size:.68rem;font-weight:850;white-space:nowrap}
.usage-warning-pill{background:#fff0df;color:#8b4b18}.usage-ok-pill{background:#efffdc;color:#46671e}
.usage-details{margin-top:.55rem;border-top:1px solid #eee8df;padding-top:.45rem}
.usage-details>summary{cursor:pointer;font-size:.72rem;font-weight:850;color:var(--muted)}
.usage-details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}
.usage-details-grid>div{border:1px solid var(--line);border-radius:12px;padding:8px;background:#faf9f6}
.usage-details-grid small,.usage-details-grid strong,.usage-details-grid span{display:block}
.usage-details-grid small{font-size:.56rem;letter-spacing:.07em;font-weight:900;color:var(--muted)}
.usage-details-grid strong{font-size:.88rem;margin:2px 0}
.usage-details-grid span,.usage-detail-note{font-size:.66rem;color:var(--muted);line-height:1.35}
.compact-limit-warning{margin-top:8px;border:1px solid #edb36f;background:#fff7e9;border-radius:12px;padding:8px 10px}
.compact-limit-warning strong,.compact-limit-warning span{display:block}
.compact-limit-warning strong{font-size:.76rem}.compact-limit-warning span{font-size:.67rem;color:#765b42;margin:2px 0 7px}
.compact-limit-warning .capacity-solutions{justify-content:flex-start}

/* Admin-only controls stay out of normal workflow. */

/* Active project = the workspace. Dashboard information disappears. */
.active-project-topbar{
  position:sticky;top:53px;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:8px 10px;margin:0 0 9px;border:1px solid #b5df43;background:#f6ffe7;border-radius:13px
}
.active-project-breadcrumb,.active-project-status{display:flex;align-items:center;gap:7px;min-width:0}
.active-project-breadcrumb strong{font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.active-project-breadcrumb span,.active-project-status>span{font-size:.7rem;color:var(--muted)}
.active-project-breadcrumb .text-button{font-size:.75rem;padding:5px 6px}
.project-mode #accountUsagePanel,
.project-mode #currentWorkBar,
.project-mode #unfinishedWorkPanel,
.project-mode #projectLauncher,
.project-mode .dashboard-tools,
.project-mode #dashboardProjectSummary,
.project-mode #projects{
  display:none!important;
}
.project-mode .workspace-head{padding-bottom:.45rem}
.project-mode .workflow-panel,
.project-mode .create-panel{margin-top:0}
.project-mode .workflow-panel-head{margin-top:0}
.project-mode .icon-step-strip{margin-top:.35rem}

/* Remove duplicated current-project card whenever actual project workspace is open. */
.project-mode #currentWorkBar{display:none!important}

/* Saved project card: compact main actions. */
.project-actions-simple{gap:7px;margin-top:.65rem}
.project-actions-simple>button,
.project-actions-simple>.share-control>button,
.project-manage-menu>summary{padding:8px 11px;font-size:.78rem}

/* Compact Manage Project menu. */
.project-manage-menu{position:relative}
.project-manage-menu>summary{border-radius:999px}
.project-manage-menu-body{
  min-width:190px;
  width:210px;
  max-width:min(210px,calc(100vw - 30px));
  padding:5px;
  gap:3px;
  border-radius:12px;
  box-shadow:0 14px 30px rgba(0,0,0,.14)
}
.project-manage-menu-body button{
  padding:7px 9px;
  min-height:34px;
  border-radius:9px;
  font-size:.75rem;
  line-height:1.2;
}
.manage-divider{margin:2px 4px}

/* Capacity dialog is a real destination, not a dead toast. */
.capacity-panel{width:min(620px,94vw)}
.compact-dialog-head{top:-1.15rem;padding:.9rem 0 .7rem}
.capacity-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:.5rem 0 .8rem}
.capacity-summary-row{border:1px solid var(--line);border-radius:12px;padding:9px;background:#faf9f6}
.capacity-summary-row span,.capacity-summary-row strong{display:block}
.capacity-summary-row span{font-size:.65rem;color:var(--muted)}.capacity-summary-row strong{font-size:.86rem;margin-top:2px}
.capacity-summary p{grid-column:1/-1;color:var(--muted);font-size:.75rem;margin:2px}
.capacity-choice-grid{display:grid;gap:7px}
.capacity-choice{text-align:left;border-radius:13px;padding:10px 12px}
.capacity-choice strong,.capacity-choice span{display:block}
.capacity-choice strong{font-size:.86rem}.capacity-choice span{font-size:.7rem;color:var(--muted);margin-top:2px}
.capacity-choice.is-selected{border-color:#9bd127;background:#f6ffe8}
.capacity-beta-note{border:1px solid #ead096;background:#fff9e9;border-radius:12px;padding:9px 10px;margin:9px 0}
.capacity-beta-note strong,.capacity-beta-note span{display:block}.capacity-beta-note strong{font-size:.78rem}.capacity-beta-note span{font-size:.68rem;color:#765f3d;margin-top:2px}

/* Plan warnings within a project are compact. */
.project-block-explanation{padding:8px 10px;border-radius:12px;margin-top:8px}
.project-block-explanation strong{font-size:.76rem}.project-block-explanation span{font-size:.66rem}
.project-block-explanation .capacity-solutions button{padding:6px 8px;font-size:.68rem}

/* Full/half-screen responsiveness follows panel width, not giant monitor width. */
@media (min-width:1280px){
  .dashboard-panel{width:min(1180px,calc(100vw - 96px));max-width:1180px}
}
@media (max-width:1000px){
  .dashboard-panel{width:calc(100vw - 24px);max-width:none;padding:1rem}
  .usage-compact{align-items:flex-start;flex-direction:column}
  .usage-details-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .dashboard-panel{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:.8rem}
  .workspace-brand-mark{display:none}
  .workspace-brand h2{font-size:1.15rem!important}
  .active-project-topbar{top:49px;align-items:stretch;flex-direction:column}
  .active-project-status{justify-content:space-between}
  .usage-details-grid{grid-template-columns:1fr}
  .usage-compact-main{gap:5px}
  .usage-compact-actions{width:100%;justify-content:space-between}
  .profile-menu{position:fixed;right:10px;top:56px}
  .project-manage-menu-body{position:fixed;left:10px;right:10px;top:auto;bottom:12px;width:auto;max-width:none}
}

/* Keep workflow progress visible while working, without stealing much height. */
.project-mode .icon-step-strip{
  position:sticky;
  top:98px;
  z-index:4;
  background:rgba(250,248,243,.96);
  backdrop-filter:blur(8px);
  padding:5px 0 7px;
  margin-bottom:8px;
}
@media(max-width:700px){
  .project-mode .icon-step-strip{top:112px;overflow-x:auto;justify-content:flex-start;padding-bottom:8px}
}

/* V3.5.6 dashboard clarity */
.usage-status-button{border:0;cursor:pointer;font-family:inherit}.usage-status-button:hover{filter:brightness(.97)}
.plan-usage-modal-body{display:grid;gap:14px}.plan-usage-current{display:flex;align-items:center;gap:10px}.plan-usage-current>strong{font-size:.9rem;color:#3f5e1f}.plan-usage-grid{grid-template-columns:1fr 1fr;margin-top:0}.plan-usage-grid>div{padding:14px}.plan-usage-actions{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.plan-usage-actions button{flex:1;min-width:130px}.project .selection-note{margin-top:8px}.project-actions-simple{align-items:center}.account-usage-panel .usage-compact{min-height:34px}.account-usage-panel{padding:.55rem .7rem}.usage-compact-main{flex:1}
@media(max-width:650px){.plan-usage-grid{grid-template-columns:1fr}.plan-usage-actions button{width:100%;flex-basis:100%}}

/* V3.5.6 dashboard clarity pass */
.project-meta-clean{gap:6px;margin-top:.55rem}
.project-meta-clean .tag{font-size:.72rem;padding:7px 10px}
.project-meta-clean .star-summary{font-variant-numeric:tabular-nums}
.project-block-simple{align-items:center;padding:9px 11px}
.project-block-simple .capacity-solutions{margin-left:auto}
.project-block-simple .capacity-solutions button{white-space:nowrap}
.project-actions-simple{gap:8px}
.project-actions-simple>button,.project-actions-simple>.share-control>button,.project-actions-simple>.project-manage-menu>summary{min-height:36px}
.unfinished-card-actions button{min-width:128px}
@media(max-width:650px){.project-block-simple{align-items:stretch}.project-block-simple .capacity-solutions{margin-left:0}.project-block-simple .capacity-solutions button{width:100%}}


/* =========================================================
   GaliVue V3.5.7 — reliable Manage Project modal
   ========================================================= */
.manage-project-layer{z-index:120}
.manage-project-panel{width:min(620px,94vw);max-height:min(760px,90vh);overflow:auto}
.manage-project-actions{display:grid;gap:8px;margin-top:10px}
.manage-project-action{display:block;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.manage-project-action strong,.manage-project-action span{display:block}
.manage-project-action strong{font-size:.9rem}
.manage-project-action span{font-size:.72rem;color:var(--muted);margin-top:3px;line-height:1.35}
.manage-project-action:hover{background:#faf9f6}
.manage-project-action.danger-action{border-color:#efb7b7}
.manage-project-action.danger-action strong{color:#a52626}
@media(max-width:700px){.manage-project-panel{width:calc(100vw - 20px);max-height:88dvh}.manage-project-action{padding:11px 12px}}

/* GaliVue V3.6 */
.workspace-head-actions{display:flex;align-items:center;gap:9px;margin-left:auto}.new-project-head-button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-size:.76rem;font-weight:900;white-space:nowrap}.new-project-head-button:hover{background:var(--soft)}.project-mode #openNewProject{display:none}.new-project-mode #accountUsagePanel,.new-project-mode #currentWorkBar,.new-project-mode #unfinishedWorkPanel,.new-project-mode .dashboard-tools,.new-project-mode #dashboardProjectSummary,.new-project-mode #projects{display:none!important}.new-project-mode #projectLauncher{display:block!important;margin-top:.6rem}.storage-usage-inline{display:inline-flex!important;align-items:center;gap:5px}.storage-mini-meter{display:inline-block;width:76px;height:7px;border-radius:999px;background:#e6e3dc;overflow:hidden}.storage-mini-meter>i{display:block;height:100%;border-radius:inherit;background:#111}.storage-usage-inline>em{font-style:normal;font-size:.62rem;color:var(--muted)}.dashboard-section-title{margin:.9rem 0 .65rem}.dashboard-section-title small{display:block;font-size:.58rem;letter-spacing:.1em;font-weight:950;color:var(--muted)}.dashboard-section-title h3{margin:.12rem 0 0;font-size:1.08rem}.compact-empty{padding:1rem!important}@media(max-width:680px){.new-project-head-button{padding:8px 10px;font-size:.7rem}.storage-usage-inline>em{display:none}.storage-mini-meter{width:52px}}


/* V3.6.2 — clearer top usage bar + visual Plan & usage analytics */
.account-usage-panel{padding:.78rem .9rem}
.account-usage-panel .usage-compact{min-height:48px}
.usage-compact-main{gap:11px}
.usage-compact-main>span:not(.plan-pill){font-size:.79rem}
.usage-compact-main>strong{font-size:.84rem}
.storage-mini-meter{width:92px;height:9px}
.storage-usage-inline>em{font-size:.68rem}
.usage-status-button{min-height:34px;padding:.5rem .8rem}

.usage-visual-summary{display:grid;grid-template-columns:minmax(290px,1.15fr) minmax(320px,1fr);gap:18px;align-items:stretch}
.storage-ring-wrap{display:flex;align-items:center;gap:20px;border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}
.storage-ring{--storage-angle:0deg;width:136px;height:136px;flex:0 0 136px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#111 0 var(--storage-angle),#ebe8e1 var(--storage-angle) 360deg);position:relative}
.storage-ring::before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--paper)}
.storage-ring.is-over{background:conic-gradient(#a72b2b 0 360deg,#ebe8e1 360deg)}
.storage-ring-core{position:relative;z-index:1;display:grid;text-align:center;line-height:1}
.storage-ring-core strong{font-size:1.55rem;letter-spacing:-.04em}.storage-ring-core span{margin-top:5px;font-size:.7rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.storage-ring-copy{display:grid;gap:5px;min-width:0}.storage-ring-copy small,.usage-stat-cards small{font-size:.62rem;letter-spacing:.08em;color:var(--muted);font-weight:950}.storage-ring-copy strong{font-size:1.05rem}.storage-ring-copy span{font-size:.75rem;color:var(--muted);line-height:1.35}
.usage-stat-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.usage-stat-cards>div{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff;display:grid;align-content:center;min-height:82px}.usage-stat-cards strong{font-size:1.45rem;line-height:1.05;margin:.18rem 0}.usage-stat-cards span{font-size:.72rem;color:var(--muted)}
.compact-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}
@media(max-width:800px){.usage-visual-summary{grid-template-columns:1fr}.compact-plan-grid{grid-template-columns:1fr}.storage-ring-wrap{align-items:flex-start}.storage-ring{width:112px;height:112px;flex-basis:112px}.storage-ring-core strong{font-size:1.3rem}}
@media(max-width:560px){.account-usage-panel{padding:.72rem}.storage-ring-wrap{gap:13px;padding:14px}.storage-ring{width:96px;height:96px;flex-basis:96px}.storage-ring::before{inset:10px}.usage-stat-cards{grid-template-columns:1fr 1fr}.usage-stat-cards>div{padding:11px;min-height:72px}.storage-mini-meter{width:64px;height:8px}}

/* V3.6.5 consolidated workflow corrections */
.ai-selected-folder-actions{position:static!important;bottom:auto!important;z-index:auto!important;margin-top:18px!important}
.ai-additional-upload-setup{border:1px solid #b9d95e;background:#fbfff4;border-radius:20px;padding:16px;margin:18px 0}
.ai-additional-upload-setup input[type=file]{position:absolute;opacity:0;pointer-events:none}
.additional-upload-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.additional-upload-head h3{margin:.15rem 0 .25rem}.additional-upload-head p{margin:0;color:#6f6a62}.additional-upload-head>strong{white-space:nowrap;background:#edffd0;border-radius:999px;padding:8px 10px}
#aiAdditionalDropZone{border:1px dashed #cfc8bb;border-radius:14px;padding:14px;text-align:center;margin:12px 0 0}
#aiAdditionalDropZone.is-dragging{border-color:#9bc923;background:#f2ffdb}
.ai-review-mode .ai-beta-card{display:none!important}
.ai-review-mode #aiResultsPreview{margin-top:0;border-top:0;padding-top:12px}
@media(max-width:680px){.additional-upload-head{flex-direction:column}.ai-additional-upload-setup .ai-upload-actions{display:grid;grid-template-columns:1fr}.ai-additional-upload-setup .ai-upload-actions>*{width:100%;box-sizing:border-box;text-align:center}}

/* V3.6.5-r2: never render retired AI confirmation controls, even if stale markup survives a cached navigation. */
#aiPermissionWrap,
#prepareAiSelection,
#saveAiForLater,
#aiLaterStorageNote,
#aiBetaNotice,
.ai-permission-check,
.later-actions:has(#saveAiForLater){display:none!important}


/* V3.6.6 — compact AI→Client additional-photo step */
.ai-additional-upload-setup.is-collapsed{padding:14px 16px}
.ai-additional-upload-setup.is-collapsed .additional-upload-head p,
.ai-additional-upload-setup.is-collapsed .ai-drop-copy,
.ai-additional-upload-setup.is-collapsed .ai-upload-actions label{display:none!important}
.ai-additional-upload-setup.is-collapsed .ai-upload-actions{margin-top:8px;justify-content:flex-end}
.ai-additional-upload-setup.is-collapsed #aiAdditionalUploadSummary{margin-top:6px}


/* V3.6.6.1 — deterministic compact additional-photo state */
.ai-additional-upload-setup.is-collapsed #aiAdditionalDropZone,
.ai-additional-upload-setup.is-collapsed .additional-upload-head p,
.ai-additional-upload-setup.is-collapsed label[for="aiAdditionalPhotoInput"],
.ai-additional-upload-setup.is-collapsed label[for="aiAdditionalFolderInput"]{display:none!important}
.ai-additional-upload-setup.is-collapsed .additional-upload-head{margin-bottom:4px}
.ai-additional-upload-setup.is-collapsed #editAiAdditionalPhotos{display:inline-flex!important}
.ai-additional-upload-setup.is-collapsed #aiAdditionalUploadSummary{padding-top:4px}

/* =========================================================
   GaliVue V3.6.6.6 — Project persistence + Save & leave hard fix
   ========================================================= */
#clientWorkflowPanel,
#clientWorkflowPanel #projectForm,
#clientWorkflowPanel .ai-additional-upload-setup,
#clientWorkflowPanel .project-readiness-notice{
  overflow-anchor:none;
}
.project-create-status{
  min-height:0;
  margin:8px 0 0;
  font-size:.78rem;
  line-height:1.35;
  font-weight:800;
  color:var(--muted);
}
.project-create-status:empty{display:none}
.project-create-status.is-working{color:#5d5317}
.project-create-status.is-success{color:#3f6418}
.project-create-status.is-error{color:#9c2f26}


/* =========================================================
   GaliVue V3.7 — consolidated photographer-workspace layers
   Dashboard is the base workspace. Project work always renders above it.
   ========================================================= */
:root{
  --gv-z-dashboard:120;
  --gv-z-project-work:130;
  --gv-z-account:140;
  --gv-z-top-work:150;
  --gv-z-confirm:160;
  --gv-z-toast:170;
  --gv-z-loader:180;
}
#dashboardDialog{z-index:var(--gv-z-dashboard)!important}
.nested-layer,
#uploadDialog,
#galleryDialog,
#editProjectDialog,
#finalDeliveryDialog,
#planUsageDialog,
#aiPhotoPreviewDialog,
.manage-project-layer{z-index:var(--gv-z-project-work)!important}
#profileDialog{z-index:var(--gv-z-account)!important}
.top-layer,
#deliveryIntroDialog,
#deliveryPreviewDialog,
#photographerReviewDialog{z-index:var(--gv-z-top-work)!important}
#confirmDialog,#lightboxDialog{z-index:var(--gv-z-confirm)!important}
.toast{z-index:var(--gv-z-toast)!important}
.workspace-loader{z-index:var(--gv-z-loader)!important}

/* Dynamic Manage Project now uses the same real modal geometry as other work layers. */
.manage-project-layer{position:fixed;inset:0;display:grid;place-items:center;padding:2vw;background:rgba(0,0,0,.56);overflow:hidden}
.manage-project-layer.hidden{display:none!important}

/* Make the preview-upload completion action read as workflow navigation. */
#uploadDone{min-height:48px}


/* GaliVue V3.7.3 — stage-aware client selection + editing handoff */
.upload-post-actions{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:10px;margin-top:12px}
.upload-post-actions button{width:100%;min-height:46px}
.upload-post-actions button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:700px){.upload-post-actions{grid-template-columns:1fr}.upload-post-actions button{min-height:44px}}


/* V3.7.3 — stage-specific Client Selection cleanup */
.selection-received-panel{width:min(860px,94vw)}
.selection-received-stats{display:flex;flex-wrap:wrap;gap:.55rem;margin:.4rem 0 1rem}
.selection-received-stats span{display:inline-flex;align-items:center;gap:.25rem;padding:.58rem .78rem;border-radius:999px;background:var(--soft);font-size:.88rem}
.selection-received-stats span.is-selected{background:#efffd0}
.selection-download-block{border:1px solid var(--line);border-radius:20px;padding:1rem;background:#fff}
.selection-download-block>div:first-child{display:flex;flex-direction:column;gap:.2rem}.selection-download-block>div:first-child span{color:var(--muted);font-size:.88rem}
.selection-download-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.85rem}
.selection-next-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:1rem}
.selection-received-help{color:var(--muted);font-size:.82rem;line-height:1.45;margin:.75rem 0 0}
.preview-filter-groups{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.preview-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.preview-filter-label{font-size:.75rem;font-weight:800;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.project-actions-simple .primary-stage{background:#111;color:#fff;border-color:#111}
.manage-project-action.danger-action{border-color:#e5a9a9;color:var(--danger)}
.protected-selected-note{font-size:.8rem;color:var(--muted)}
@media(max-width:680px){.selection-next-actions,.selection-download-actions{display:grid;grid-template-columns:1fr}.selection-next-actions button,.selection-download-actions button{width:100%}}

/* GaliVue V3.7.3 — compatibility downloads + reselection clarity */
.reselection-tag{background:#eee7ff!important;color:#5d3aa8!important;border-color:#c9b8f2!important}
.selection-received-stats span.is-reselection{background:#eee7ff;color:#5d3aa8;border:1px solid #c9b8f2}
.reselection-preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;padding:.72rem .9rem;border:1px solid #c9b8f2;border-radius:14px;background:#f6f2ff;color:#5d3aa8}
.reselection-preview-banner span{color:#6f6680;font-size:.84rem}
.reselected-photo-badge{display:inline-flex;align-items:center;width:max-content;padding:.36rem .55rem;border-radius:999px;background:#eee7ff;color:#5d3aa8;font-size:.72rem;font-weight:900;letter-spacing:.04em}
.selection-save-link{margin-left:auto}
.device-save-action{border-color:#c7d8a3}
@media(max-width:700px){.selection-save-link{margin-left:0;width:100%;margin-top:.35rem}.reselection-preview-banner{align-items:flex-start;flex-direction:column}}

/* V3.7.4 workflow clarity + share responsiveness */
.project-title-stage-line{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}
.project-title-stage-line h3{margin:0}
.project-stage-heading{font-size:.78rem;letter-spacing:.08em;font-weight:950;padding:.36rem .58rem;border-radius:999px;background:#ede9df;color:#5d584f;white-space:nowrap}
.project-stage-heading.is-complete{background:#eaf8e9;color:#2f6f39;border:1px solid #b8dcbc}
@media(max-width:700px){
  .project-title-stage-line{align-items:flex-start;flex-direction:column;gap:.35rem}
  .project-stage-heading{font-size:.72rem}
  .share-menu{position:fixed!important;left:.75rem!important;right:.75rem!important;top:auto!important;bottom:.75rem!important;min-width:0;max-height:70dvh;overflow:auto;border-radius:20px;padding:.65rem;z-index:var(--gv-z-confirm)!important}
  .share-menu button{padding:.9rem 1rem;font-size:1rem}
}


/* V3.7.4 — completed-step collapse + compact final-delivery setup */
.final-matched-complete{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid #9dc8a6;background:var(--success-bg);border-radius:18px;padding:1rem 1.1rem;margin:1rem 0}
.final-matched-complete>div:first-child{display:flex;flex-direction:column;gap:.25rem}.final-matched-complete small{font-weight:950;letter-spacing:.12em;color:#4c6f37}.final-matched-complete strong{font-size:1.15rem}.final-matched-complete span{color:var(--muted);font-size:.88rem}
.final-matched-actions{display:flex;gap:.55rem;flex-wrap:wrap}.final-matched-complete.hidden,#finalMatchingWork.hidden,.final-delivery-setup.hidden{display:none!important}
.final-delivery-setup{border:1px solid var(--line);background:#fff;border-radius:20px;padding:1.1rem;margin:1rem 0;display:grid;gap:1rem}.final-setup-head{display:grid;gap:.25rem}.final-setup-head small{font-weight:950;letter-spacing:.12em;color:var(--muted)}.final-setup-head h3{font-size:1.35rem;margin:0}.final-setup-head p{margin:0;color:var(--muted)}
.final-setup-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.final-setup-stats>div{border:1px solid var(--line);background:var(--soft);border-radius:15px;padding:.8rem;display:flex;flex-direction:column;gap:.15rem}.final-setup-stats strong{font-size:1.35rem}.final-setup-stats span{font-size:.78rem;color:var(--muted)}.final-setup-stats .complete{border-color:#9dc8a6;background:var(--success-bg)}.final-setup-stats .warning{border-color:#e1bf58;background:#fff9e7}
.delivery-expiry-create{display:flex;align-items:center;gap:.45rem;font-weight:850}.delivery-expiry-create select,.delivery-expiry-create input{width:auto;min-width:110px;padding:.65rem .75rem;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}
.star-delivery-section .delivery-section-heading h2{display:flex;align-items:center;gap:.4rem}.star-delivery-section .delivery-section-heading h2::before{content:'★';color:#8dad14}
@media(max-width:800px){.final-matched-complete{align-items:stretch;flex-direction:column}.final-matched-actions>*{flex:1}.final-setup-stats{grid-template-columns:1fr 1fr}.delivery-expiry-create{justify-content:space-between;width:100%}}
@media(max-width:480px){.final-setup-stats{grid-template-columns:1fr}.final-delivery-setup{padding:.85rem}}

/* V3.7.5 — compact client delivery + smart correction workflow */
.delivery-summary-panel{border:1px solid var(--line);background:#fff;border-radius:20px;padding:1rem;margin:1rem 0;display:grid;gap:.9rem}
.delivery-file-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.delivery-summary-total{display:flex;align-items:baseline;gap:.45rem;flex-wrap:wrap}.delivery-summary-total strong{font-size:2rem;line-height:1}.delivery-summary-total span{font-weight:900}.delivery-summary-total em{font-style:normal;color:var(--muted);font-size:.85rem}
.delivery-summary-groups{display:flex;gap:.45rem;flex-wrap:wrap}.delivery-summary-groups span{border:1px solid var(--line);background:var(--soft);border-radius:999px;padding:.42rem .62rem;font-size:.8rem}.delivery-summary-groups b{font-weight:950}
.delivery-summary-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.delivery-summary-actions>.primary{min-width:180px}.delivery-category-downloads{display:flex;gap:.5rem;flex-wrap:wrap}
.delivery-gallery-wrap{border-top:1px solid var(--line);padding-top:1.1rem;margin-top:1.15rem}.delivery-preview-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem}.delivery-preview-head h2{margin:.12rem 0 0;font-size:1.45rem}
.delivery-client-actions{position:static!important;background:none!important;padding:0!important;margin:1rem 0 0!important;border-top:0!important;justify-content:flex-start!important}
.delivery-photo.is-correction-pending{outline:2px solid #e0a13b;outline-offset:-2px}.delivery-correction-pending{display:inline-flex;width:max-content;margin-top:.45rem;border-radius:999px;padding:.3rem .5rem;background:#fff2d8;color:#8a5500;font-size:.72rem;font-weight:950}
.correction-targets{display:flex;gap:.4rem;flex-wrap:wrap;margin:.35rem 0}.correction-targets span{display:inline-flex;border:1px solid #e0a13b;background:#fff6e4;color:#774b00;border-radius:999px;padding:.35rem .55rem;font-weight:900;font-size:.78rem}.correction-target-chooser{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.45rem}.correction-target-chooser select{min-width:240px;padding:.6rem .7rem;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}
.final-file.correction-pending{border-color:#e0a13b;background:#fffaf0}.final-status-badge.correction-pending{background:#fff2d8;color:#8a5500}.match-group.correction-pending{border-color:#e0a13b;background:#fffaf0}
@media(max-width:800px){.delivery-file-summary{align-items:flex-start;flex-direction:column}.delivery-summary-actions,.delivery-category-downloads{width:100%;flex-direction:column;align-items:stretch}.delivery-summary-actions>*,.delivery-category-downloads>*{width:100%}.delivery-client-actions{display:grid!important;grid-template-columns:1fr;gap:.55rem}.delivery-preview-head{align-items:flex-start}.correction-target-chooser{align-items:stretch;flex-direction:column}.correction-target-chooser select,.correction-target-chooser button{width:100%}}


/* V3.7.5.1 — compact delivered projects; click project name to reopen full history */
.project-delivered-compact{padding:1rem 1.15rem}
.project-delivered-compact .project-top{display:block}
.project-delivered-compact .project-title-row{align-items:center}
.completed-project-title-button{appearance:none;border:0;background:transparent;padding:0;margin:0;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;text-align:left;cursor:pointer}
.completed-project-title-button:hover{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}
.completed-project-title-button:focus-visible{outline:3px solid #b7ff25;outline-offset:4px;border-radius:6px}
.completed-project-delete{border-color:#e8a1a1;color:#a62929;background:#fff;min-height:36px;padding:.55rem .9rem;flex:0 0 auto}
.completed-project-delete:hover{background:#fff4f4;border-color:#d97777}
.project-meta-delivered-compact{margin-top:.65rem}
.completed-project-details{border-top:1px solid var(--line);margin-top:.9rem;padding-top:.2rem}
.completed-project-details.hidden{display:none!important}
@media(max-width:720px){
  .project-delivered-compact .project-title-row{flex-direction:row;align-items:flex-start}
  .project-delivered-compact .project-title-stage-line{flex-direction:row;align-items:baseline;gap:.55rem}
  .completed-project-delete{margin-left:auto}
}


/* V3.7.5.2 — Dashboard density polish: compact completed rows, collapsed filters, slim usage bar */
.dashboard-tools.dashboard-tools-collapsible{
  display:block;
  margin-top:.55rem;
  padding:.5rem .6rem;
  border-radius:15px;
}
.dashboard-tools-collapsible .dashboard-search{display:block;margin:0}
.dashboard-tools-collapsible .dashboard-search input{margin-top:.22rem;min-height:42px;padding:.65rem .8rem}
.dashboard-filter-panel{display:none;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.55rem;align-items:end;margin-top:.55rem;padding-top:.55rem;border-top:1px solid var(--line)}
.dashboard-tools-collapsible.is-expanded .dashboard-filter-panel{display:grid}
.dashboard-filter-panel button{height:42px;min-height:42px}

.account-usage-panel{padding:.38rem .6rem!important;margin:.3rem 0 .5rem!important;border-radius:14px!important}
.account-usage-panel .usage-compact{min-height:32px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:.55rem!important;flex-wrap:nowrap!important}
.account-usage-panel .usage-compact-main{display:flex;align-items:center;gap:.5rem!important;flex:1;min-width:0;flex-wrap:wrap}
.account-usage-panel .usage-status-button{margin-left:auto;flex:0 0 auto}
.account-usage-panel .usage-compact-main>span:not(.plan-pill){font-size:.7rem}
.account-usage-panel .plan-pill{padding:5px 8px;font-size:.68rem}
.account-usage-panel .usage-warning-pill,.account-usage-panel .usage-ok-pill{padding:5px 8px;font-size:.66rem}

.projects{gap:.55rem;margin-top:.65rem}
.project-delivered-compact{padding:.55rem .65rem!important;border-radius:16px!important}
.completed-project-summary-bar{display:flex;align-items:center;gap:.45rem;border:1px solid var(--line);border-radius:13px;background:#fff;min-height:44px;padding:.3rem .38rem .3rem .65rem}
.completed-project-summary-toggle{appearance:none;border:0;background:transparent;padding:0;margin:0;display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex:1;min-width:0;color:inherit;text-align:left;cursor:pointer}
.completed-project-summary-heading{display:flex;align-items:center;gap:.55rem;min-width:0;flex-wrap:wrap}
.completed-project-summary-heading>strong{font-size:1.08rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.completed-project-summary-heading .project-stage-heading{font-size:.68rem;padding:.28rem .48rem}
.completed-project-chevron{font-size:1rem;font-weight:950;color:var(--muted);line-height:1;flex:0 0 auto}
.completed-project-summary-toggle:focus-visible{outline:3px solid #b7ff25;outline-offset:2px;border-radius:9px}
.completed-project-delete{min-height:34px!important;height:34px;padding:.42rem .7rem!important;margin:0!important;font-size:.72rem!important;border-radius:999px!important}
.completed-project-identity{margin:.38rem .15rem .18rem;color:var(--muted);font-size:.76rem;line-height:1.25}
.project-meta-delivered-compact{margin:.22rem .1rem 0!important;gap:.32rem!important;align-items:center}
.project-meta-delivered-compact .tag{padding:.34rem .5rem;font-size:.68rem;line-height:1.1}
.completed-project-details{margin-top:.55rem!important;padding-top:.5rem!important}

@container dashboard-workspace (max-width:980px){
  .dashboard-tools.dashboard-tools-collapsible{display:block}
  .dashboard-tools-collapsible .dashboard-search{grid-column:auto}
  .dashboard-filter-panel{grid-template-columns:1fr 1fr}
  .dashboard-filter-panel button{width:100%}
}
@container dashboard-workspace (max-width:620px){
  .dashboard-tools.dashboard-tools-collapsible{display:block}
  .dashboard-filter-panel{grid-template-columns:1fr}
  .completed-project-summary-bar{align-items:center}
  .completed-project-summary-heading{gap:.4rem}
}
@media(max-width:1000px){
  .account-usage-panel .usage-compact{flex-direction:row!important;align-items:center!important}
}
@media(max-width:650px){
  .account-usage-panel .usage-compact{flex-wrap:wrap!important}
  .account-usage-panel .usage-status-button{margin-left:0}
  .dashboard-filter-panel{grid-template-columns:1fr}
  .completed-project-summary-bar{padding:.3rem .35rem .3rem .55rem}
  .completed-project-summary-heading>strong{font-size:.98rem}
  .completed-project-summary-heading .project-stage-heading{font-size:.62rem}
  .project-meta-delivered-compact .tag{font-size:.64rem}
}

/* V3.7.5.2 alignment refinement — title/status/Delete stay together; chevron stays at far right */
.completed-project-summary-left{display:flex;align-items:center;gap:.45rem;min-width:0;flex-wrap:wrap}
.completed-project-summary-toggle{flex:0 1 auto;justify-content:flex-start!important;min-width:0}
.completed-project-chevron-button{appearance:none;border:0;background:transparent;width:34px;height:34px;min-height:34px;padding:0;border-radius:9px;display:grid;place-items:center;cursor:pointer;color:inherit;margin-left:auto;flex:0 0 auto}
.completed-project-chevron-button:hover{background:var(--soft)}
.completed-project-chevron-button:focus-visible{outline:3px solid #b7ff25;outline-offset:2px}
@media(max-width:650px){.completed-project-summary-left{gap:.35rem}.completed-project-chevron-button{width:32px;height:32px;min-height:32px}}


/* V3.7.5.3 — account navigation cleanup and session-aware public header */
.marketing-header-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto;flex:0 0 auto}
.public-auth-actions{display:flex;align-items:center;gap:.55rem}
.header-dashboard{border:1px solid var(--line);background:#fff;padding:.68rem .95rem;font-size:.82rem;font-weight:900;white-space:nowrap}
.public-profile-menu-wrap{position:relative;flex:0 0 auto}
.public-header-avatar{width:38px;height:38px;font-size:.88rem;background:#f1ede5}
.public-profile-menu{right:0;top:calc(100% + 8px);width:170px}
.public-profile-menu button{font-size:.78rem}
.marketing-header .header-cta{padding:.68rem .95rem;font-size:.82rem;white-space:nowrap}
.marketing-header .header-login{font-size:.82rem;white-space:nowrap}

.workspace-brand-mark{text-decoration:none;cursor:pointer}
.workspace-brand-copy{min-width:0}
.workspace-title-nav{display:flex;align-items:center;gap:.5rem;min-width:0;flex-wrap:wrap}
.workspace-plan-link{border:0;background:transparent;border-radius:7px;padding:.18rem .28rem;color:var(--muted);font-size:.7rem;font-weight:850;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.workspace-plan-link:hover{background:var(--soft);color:var(--ink)}
.profile-menu:not(.public-profile-menu){width:176px}

@media(max-width:1260px){
  .marketing-header{gap:.85rem}
  .marketing-header-actions{gap:.45rem}
  .public-auth-actions{gap:.4rem}
}
@media(max-width:640px){
  .marketing-header-actions{gap:.3rem}
  .public-auth-actions{gap:.28rem}
  .marketing-header .header-login,.marketing-header .header-dashboard{padding:.52rem .48rem;font-size:.72rem}
  .marketing-header .header-cta{padding:.55rem .6rem;font-size:.72rem;border-radius:11px}
  .public-header-avatar{width:34px;height:34px;font-size:.78rem}
  .workspace-title-nav{gap:.32rem}
  .workspace-plan-link{font-size:.64rem;padding:.12rem .2rem}
}
@media(max-width:390px){
  .marketing-header{padding-left:.65rem;padding-right:.65rem;gap:.4rem}
  .marketing-header .brand{font-size:1.16rem}
  .marketing-header-actions{gap:.18rem}
  .public-auth-actions{gap:.16rem}
  .marketing-header .header-login,.marketing-header .header-dashboard{font-size:.66rem;padding:.46rem .35rem}
  .marketing-header .header-cta{font-size:.66rem;padding:.48rem .45rem}
  .menu-button{width:36px;height:36px}
}


/* V3.7.5.4 — workspace naming, smooth public menu, dynamic plan/usage & plan-test account */
html{scrollbar-gutter:stable}
html.mobile-menu-open,body.mobile-menu-open{overflow:hidden}
body.mobile-menu-open{padding-right:var(--mobile-menu-scrollbar-comp,0px)}
.mobile-menu{display:block!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s}
.mobile-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s linear 0s}
.mobile-menu>nav,.mobile-menu-head{transform:translateX(24px);opacity:.96;transition:transform .24s cubic-bezier(.2,.75,.25,1),opacity .2s ease}
.mobile-menu.is-open>nav,.mobile-menu.is-open .mobile-menu-head{transform:translateX(0);opacity:1}
.mobile-workspace-label{display:none}
.workspace-title-nav{gap:0}
.workspace-plan-link{display:none!important}
.usage-plan-button{appearance:none;border:0!important;cursor:pointer;line-height:1}
.usage-plan-button:hover{box-shadow:0 0 0 2px rgba(157,224,0,.22)}
.usage-compact-actions{display:flex;align-items:center;gap:.42rem;margin-left:auto;min-width:0}
.usage-inline-alert{display:inline-flex;align-items:center;max-width:360px;padding:5px 8px;border:1px solid #efd67c;border-radius:999px;background:#fff8d9;color:#765d00;font-size:.64rem;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.usage-plan-action{border:1px solid #bfdc7b;background:#eff9cf;color:#345913;border-radius:999px;padding:6px 10px;min-height:30px;font-size:.68rem;font-weight:950;white-space:nowrap}
.usage-plan-action:hover{background:#e4f5b0;border-color:#9ec951}
.plan-attention-banner{display:flex;align-items:center;gap:.55rem;margin:.1rem 0 .8rem;padding:.65rem .75rem;border:1px solid #efd67c;border-radius:12px;background:#fff9df;color:#695400;font-size:.78rem}
.plan-attention-banner strong{white-space:nowrap}.plan-attention-banner span{color:#695400}
.test-account-pill{display:inline-flex;align-items:center;padding:.32rem .52rem;border:1px solid #b7d77a;border-radius:999px;background:#f2f9df;color:#42601c;font-size:.62rem;font-weight:950;letter-spacing:.05em}
.test-plan-switcher{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.85rem;padding:.8rem;border:1px solid #cce59a;border-radius:14px;background:#f7fbe9}
.test-plan-switcher>div:first-child{display:flex;flex-direction:column;gap:.12rem;min-width:0}.test-plan-switcher small{font-size:.6rem;font-weight:950;letter-spacing:.12em;color:#62872c}.test-plan-switcher strong{font-size:.86rem}.test-plan-switcher span{font-size:.7rem;color:var(--muted)}
.test-plan-switcher-controls{display:flex;align-items:center;gap:.45rem;flex:0 0 auto}.test-plan-switcher select{min-width:165px;height:38px;padding:.45rem .65rem;border-radius:10px;background:#fff}.test-plan-switcher button{height:38px;min-height:38px}
.plan-usage-actions{flex-wrap:wrap}
.usage-stat-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){
  .desktop-workspace-label{display:none}.mobile-workspace-label{display:inline}
  .test-plan-switcher{align-items:stretch;flex-direction:column}.test-plan-switcher-controls{width:100%}.test-plan-switcher select{flex:1;min-width:0}.test-plan-switcher button{flex:0 0 auto}
  .usage-stat-cards{grid-template-columns:1fr 1fr}
  .usage-compact-actions{width:100%;margin-left:0;justify-content:flex-start}.usage-inline-alert{max-width:100%}
}
@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu>nav,.mobile-menu-head{transition:none!important}}

/* V3.7.5.5 — public homepage navigation stability */
.marketing-header{
  position:fixed!important;
  top:0;
  left:0;
  right:0;
  z-index:80;
}
.marketing-page{
  padding-top:82px;
}
#top,#how-it-works,#live-demo,#features,#pricing,#reviews,#privacy{
  scroll-margin-top:96px;
}
@media(max-width:900px){
  .marketing-page{padding-top:68px}
  #top,#how-it-works,#live-demo,#features,#pricing,#reviews,#privacy{scroll-margin-top:82px}
}
@media(max-width:640px){
  .marketing-page{padding-top:64px}
  #top,#how-it-works,#live-demo,#features,#pricing,#reviews,#privacy{scroll-margin-top:76px}
}



/* V3.7.5.6 — responsive public-home section landing + footer system */
:root{--gv-public-header-h:82px}
.marketing-page{
  padding-top:var(--gv-public-header-h)!important;
  overflow-x:clip!important;
  overflow-y:visible!important;
}
#top,#how-it-works,#live-demo,#features,#pricing,#reviews,#privacy{
  scroll-margin-top:var(--gv-public-header-h)!important;
}
html{scroll-padding-top:0}

/* Never translate an entire navigation target: it exposed the previous section while landing. */
.js-reveal #how-it-works.reveal-on-scroll,
.js-reveal #features.reveal-on-scroll,
.js-reveal #pricing.reveal-on-scroll,
.js-reveal #reviews.reveal-on-scroll{
  transform:none!important;
}

/* Navigation-target sections start promptly under the fixed header on every viewport. */
#how-it-works,#features,#pricing,#reviews{
  padding-top:clamp(3rem,4.2vw,4.75rem);
  padding-bottom:clamp(3.6rem,5.5vw,6.5rem);
}
#features .section-heading,#pricing .section-heading,#reviews .section-heading{
  margin-bottom:clamp(1.55rem,2.4vw,2.4rem);
}

/* Large-screen feature density: keep the feature overview readable without oversized empty cards. */
@media(min-width:1261px){
  #features .feature-grid-nine article{min-height:270px;padding:1.2rem}
  #features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{min-height:112px;margin-bottom:.8rem;border-radius:14px}
  #features .feature-grid h3{margin:.9rem 0 .42rem;font-size:1.12rem}
  #features .feature-grid p{font-size:.8rem;line-height:1.45}
  #features .expiry-visual strong{font-size:3rem}
  #features .feature-visual{right:.8rem;top:.8rem;height:calc(100% - 1.6rem)}
  #pricing .pricing-grid article{min-height:430px}
}

/* Tablet: intentional two-column footer; phone: true one-column footer. */
@media(max-width:1024px) and (min-width:561px){
  .marketing-footer{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:2rem clamp(2rem,6vw,4.5rem)!important;
    padding:3rem max(4vw,28px) 1.6rem!important;
  }
  .marketing-footer .footer-brand{grid-column:auto!important}
  .marketing-footer>div:nth-child(4){grid-column:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important}
  .marketing-footer .footer-bottom{grid-column:1/-1!important}
}

@media(max-width:900px){
  #how-it-works,#features,#pricing,#reviews{padding-top:3.25rem;padding-bottom:4rem}
  #features .section-heading,#pricing .section-heading,#reviews .section-heading{margin-bottom:1.5rem}
}

@media(max-width:640px){
  #how-it-works,#features,#pricing,#reviews{padding-top:2.55rem!important;padding-bottom:3.25rem!important}
  #features .section-heading,#pricing .section-heading,#reviews .section-heading{margin-bottom:1.25rem!important}
  .review-threshold-top{gap:.75rem}
  .review-threshold-count{min-width:58px;height:58px;font-size:1.2rem}
}

@media(max-width:560px){
  .marketing-footer{
    grid-template-columns:1fr!important;
    gap:1.35rem!important;
    padding:2rem 1rem 1.15rem!important;
  }
  .marketing-footer .footer-brand,
  .marketing-footer>div:nth-child(2),
  .marketing-footer>div:nth-child(3),
  .marketing-footer>div:nth-child(4),
  .marketing-footer .footer-bottom{
    grid-column:1/-1!important;
  }
  .marketing-footer>div:nth-child(4){display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:.42rem!important}
  .marketing-footer>div:nth-child(4)>b{grid-column:auto!important}
  .marketing-footer>div:not(.footer-brand):not(.footer-bottom){gap:.42rem!important}
  .footer-brand p{max-width:320px}
  .footer-bottom{display:grid!important;grid-template-columns:1fr!important;gap:.25rem!important}
}

/* Short landscape phones / split-screen: keep the public header fixed and compact. */
@media(orientation:landscape) and (max-height:520px) and (max-width:1000px){
  .marketing-header{position:fixed!important}
  #how-it-works,#features,#pricing,#reviews{padding-top:2rem!important;padding-bottom:2.75rem!important}
}

@media(prefers-reduced-motion:reduce){
  .js-reveal #how-it-works.reveal-on-scroll,
  .js-reveal #features.reveal-on-scroll,
  .js-reveal #pricing.reveal-on-scroll,
  .js-reveal #reviews.reveal-on-scroll{transition:opacity .01ms linear!important}
}


/* ==========================================================================
   GaliVue V3.7.5.7 — approved public-home redesign
   Public homepage only. Stable product/client workflow styles remain intact.
   ========================================================================== */

:root{
  --gv-public-header-top:12px;
  --gv-public-header-gap:12px;
  --gv-public-header-offset:90px;
}

/* Floating sticky public navigation from the accepted homepage concept. */
.marketing-header{
  position:fixed!important;
  top:var(--gv-public-header-top)!important;
  left:clamp(12px,2.4vw,44px)!important;
  right:clamp(12px,2.4vw,44px)!important;
  width:auto!important;
  min-height:62px!important;
  padding:.58rem clamp(.85rem,1.55vw,1.4rem)!important;
  border:1px solid rgba(22,22,22,.08)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.91)!important;
  box-shadow:0 12px 38px rgba(45,40,31,.07)!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
}
.marketing-header .brand{font-size:1.5rem}
.marketing-header .desktop-nav{gap:clamp(1.1rem,2vw,2rem)}
.marketing-header .desktop-nav a{font-size:.86rem;font-weight:850}
.marketing-header .header-cta{border-radius:999px!important}
.marketing-page{
  padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + 12px)!important;
}

/* Accepted compact hero: content-first, not a forced full-screen slide. */
.marketing-hero{
  min-height:auto!important;
  padding:clamp(2.7rem,4.5vw,4.8rem) max(3.2vw,22px) clamp(2.5rem,4vw,4.25rem)!important;
  overflow:hidden;
}
.marketing-hero::before{
  background:
    radial-gradient(circle at 83% 18%,rgba(200,255,61,.26),transparent 29%),
    radial-gradient(circle at 50% 43%,rgba(255,255,255,.96),transparent 40%),
    linear-gradient(180deg,#fbf8f2 0%,#f3efe6 100%)!important;
}
.hero-copy{width:min(900px,88%)!important}
.hero-kicker{
  padding:.47rem .72rem!important;
  font-size:.62rem!important;
  min-height:30px!important;
}
.marketing-hero h1{
  max-width:900px!important;
  margin:1.15rem auto .9rem!important;
  font-size:clamp(3.25rem,5.15vw,5.75rem)!important;
  line-height:.92!important;
  letter-spacing:-.064em!important;
}
.marketing-hero h1 .hero-stage-strong::after{left:8%!important;right:8%!important}
.marketing-hero .hero-copy>p{
  max-width:760px!important;
  font-size:clamp(.98rem,1.18vw,1.15rem)!important;
  line-height:1.5!important;
}
.hero-actions{margin:1.35rem 0 .82rem!important;gap:.75rem!important}
.hero-primary,.demo-link{
  min-height:46px;
  padding:.82rem 1.15rem!important;
  border-radius:14px!important;
}
.hero-primary{min-width:195px!important}
.demo-link{min-width:170px!important}
.hero-trust-line{
  gap:.45rem 1rem!important;
  font-size:.74rem!important;
}

/* Global cards with photo thumbnails. */
.hero-global-network .hero-city-card{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:.65rem;
  width:190px!important;
  padding:.62rem .7rem!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 18px 42px rgba(40,36,28,.075)!important;
}
.hero-global-network .hero-city-card>img{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:9px;
  border:1px solid rgba(20,20,20,.08);
}
.hero-global-network .hero-city-card>span{min-width:0}
.hero-global-network .hero-city-card b{font-size:.75rem!important}
.hero-global-network .hero-city-card small{font-size:.62rem!important}
.hero-global-network .hero-city-card i{margin-top:.28rem!important;font-size:.5rem!important}
.hero-city-paris{left:3.8%!important;top:17%!important}
.hero-city-colombo{left:5.7%!important;top:39%!important}
.hero-city-capetown{left:2.8%!important;bottom:29%!important}
.hero-city-newyork{right:3.8%!important;top:20%!important}
.hero-city-mumbai{right:5.2%!important;top:42%!important}

/* Approved photographer workspace preview proportions. */
.product-stage{
  width:min(1180px,calc(100vw - 80px))!important;
  margin:1.65rem auto 0!important;
  perspective:none!important;
}
.product-window{
  border-radius:22px!important;
  box-shadow:0 28px 70px rgba(38,34,26,.16),0 1px 0 rgba(255,255,255,.92) inset!important;
}
.window-bar{padding:.58rem .8rem!important}
.product-body{grid-template-columns:182px 1fr!important;min-height:490px!important}
.product-side{padding:1.15rem .92rem!important}
.product-brand{margin-bottom:1.75rem!important;font-size:1.25rem!important}
.mock-nav{padding:.62rem .58rem!important;font-size:.72rem!important}
.mock-storage{left:.72rem!important;right:.72rem!important;bottom:.72rem!important;padding:.72rem!important}
.product-main{padding:1.3rem!important}
.mock-heading h3{font-size:clamp(1.75rem,2.5vw,2.35rem)!important}
.mock-heading button{padding:.6rem .75rem!important}
.mock-stats{gap:.58rem!important;margin:1rem 0!important}
.mock-stats>div{padding:.75rem .82rem!important}
.mock-stats b{font-size:1.12rem!important}
.mock-workflow{border-radius:13px!important}
.mock-step{grid-template-columns:25px 1fr auto!important;gap:.4rem!important;padding:.72rem!important}
.mock-step>span{width:23px!important;height:23px!important}
.mock-step b{font-size:.61rem!important}
.mock-step small{font-size:.52rem!important}
.mock-gallery{gap:.65rem!important;margin-top:.8rem!important}
.mock-photo{aspect-ratio:1.48!important;border-radius:13px!important;background-position:center 38%!important}
.mock-photo>span{left:.42rem!important;bottom:.42rem!important;font-size:.56rem!important}

/* Compact feature summary shown immediately after the workspace mockup. */
.home-feature-teaser{
  width:min(1180px,calc(100vw - 80px));
  margin:1.3rem auto 0;
}
.home-feature-teaser-heading{text-align:center;margin-bottom:.8rem}
.home-feature-teaser-heading span{
  color:#6f9827;
  font-size:.58rem;
  font-weight:950;
  letter-spacing:.13em;
}
.home-feature-teaser-heading h2{
  margin:.22rem 0 0!important;
  font-size:1.22rem!important;
  letter-spacing:-.025em!important;
}
.home-feature-teaser-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.55rem;
}
.home-feature-teaser-grid article{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:.62rem;
  align-items:start;
  min-width:0;
  padding:.78rem;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.8);
}
.home-feature-teaser-grid article>i{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:var(--accent);
  color:#111;
  font-style:normal;
  font-weight:950;
}
.home-feature-teaser-grid b{display:block;font-size:.72rem;line-height:1.2}
.home-feature-teaser-grid p{margin:.22rem 0 0;color:var(--muted);font-size:.62rem;line-height:1.35}

/* Navigation destinations: useful content begins immediately under the header. */
#how-it-works,#features,#pricing,#reviews{
  padding-top:clamp(2.6rem,3.4vw,3.7rem)!important;
  padding-bottom:clamp(3.2rem,4.5vw,5rem)!important;
}
#features .section-heading{margin-bottom:1.15rem!important}
#pricing .section-heading,#reviews .section-heading{margin-bottom:1.4rem!important}

/* Features view matching the approved "cards first" desktop landing. */
@media(min-width:1101px){
  #features .feature-grid-nine{
    width:min(1160px,calc(100vw - 80px));
    gap:.7rem!important;
  }
  #features .feature-grid-nine article{
    min-height:190px!important;
    padding:.85rem!important;
    border-radius:15px!important;
  }
  #features .group-vote-visual,
  #features .filename-visual,
  #features .watermark-visual,
  #features .export-visual,
  #features .private-link-visual,
  #features .expiry-visual,
  #features .feedback-visual{
    min-height:76px!important;
    margin-bottom:.45rem!important;
    border-radius:12px!important;
  }
  #features .feature-visual{
    right:.7rem!important;
    top:.7rem!important;
    height:calc(100% - 1.4rem)!important;
    border-radius:12px!important;
  }
  #features .feature-grid h3{
    margin:.5rem 0 .28rem!important;
    font-size:.94rem!important;
  }
  #features .feature-grid p{
    font-size:.7rem!important;
    line-height:1.35!important;
  }
  #features .feature-number{font-size:.56rem!important}
  #features .rating-visual{gap:.35rem!important;padding:.7rem!important}
  #features .rating-visual i{padding:.46rem!important;font-size:.72rem!important}
  #features .group-vote-visual{padding:.55rem!important}
  #features .vote-photo{width:42px!important;height:51px!important}
  #features .group-vote-visual span{padding:.28rem .35rem!important;font-size:.53rem!important}
  #features .group-vote-visual b{font-size:.54rem!important}
  #features .export-visual span{width:38px!important;height:38px!important;font-size:.56rem!important}
  #features .private-link-visual i{font-size:1.15rem!important}
  #features .expiry-visual strong{font-size:2.35rem!important}
  #features .feedback-visual span{font-size:1rem!important}
}

/* Footer remains part of document flow, never a fixed obstruction. */
.marketing-footer{position:relative!important}

/* Responsive homepage system */
@media(max-width:1380px){
  .hero-global-network .hero-city-card{display:none!important}
}
@media(max-width:1100px){
  .marketing-header{
    left:14px!important;
    right:14px!important;
    top:10px!important;
  }
  .marketing-hero{padding-top:2.7rem!important}
  .hero-copy{width:min(860px,94%)!important}
  .marketing-hero h1{font-size:clamp(3rem,7vw,4.8rem)!important}
  .product-stage,.home-feature-teaser{width:min(940px,calc(100vw - 36px))!important}
  .product-body{grid-template-columns:150px 1fr!important;min-height:440px!important}
  .product-side{padding:.9rem .65rem!important}
  .product-main{padding:1rem!important}
  .mock-workflow{grid-template-columns:repeat(2,1fr)!important}
  .mock-step:nth-child(2){border-right:0!important}
  .mock-step:nth-child(-n+2){border-bottom:1px solid var(--line)!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-feature-teaser-grid article:nth-child(4),
  .home-feature-teaser-grid article:nth-child(5){grid-column:span 1}
}
@media(max-width:900px){
  :root{--gv-public-header-top:8px}
  .marketing-header{
    min-height:60px!important;
    padding:.5rem .72rem!important;
    border-radius:20px!important;
  }
  .marketing-header .brand{font-size:1.28rem!important}
  .marketing-page{padding-top:calc(var(--gv-public-header-h) + 16px)!important}
  .marketing-hero{
    padding:2.4rem 1rem 3rem!important;
  }
  .hero-copy{width:100%!important}
  .marketing-hero h1{
    max-width:760px!important;
    font-size:clamp(2.9rem,9vw,4.45rem)!important;
  }
  .product-stage,.home-feature-teaser{width:100%!important}
  .product-body{grid-template-columns:1fr!important;min-height:auto!important}
  .product-side{display:none!important}
  .product-main{padding:.9rem!important}
  .mock-stats{grid-template-columns:repeat(4,1fr)!important}
  .mock-gallery{grid-template-columns:repeat(3,1fr)!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .marketing-header{
    left:8px!important;
    right:8px!important;
    top:7px!important;
    min-height:56px!important;
  }
  .marketing-hero{padding:1.8rem .9rem 2.4rem!important}
  .hero-kicker{font-size:.5rem!important}
  .marketing-hero h1{
    max-width:100%!important;
    margin:.9rem auto .75rem!important;
    font-size:clamp(2.55rem,12vw,3.65rem)!important;
    line-height:.95!important;
  }
  .marketing-hero .hero-copy>p{font-size:.9rem!important}
  .hero-actions{flex-direction:column!important;margin:1.05rem 0 .72rem!important}
  .hero-primary,.demo-link{width:100%!important;min-width:0!important}
  .hero-trust-line{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    justify-content:stretch!important;
    width:100%;
    gap:.4rem .55rem!important;
    text-align:left!important;
  }
  .hero-trust-line span{font-size:.66rem!important}
  .product-stage{margin-top:1.35rem!important}
  .product-window{border-radius:16px!important}
  .window-bar{grid-template-columns:auto 1fr!important;padding:.48rem .55rem!important}
  .window-live{display:none!important}
  .product-main{padding:.68rem!important}
  .mock-heading{align-items:flex-start!important}
  .mock-heading h3{font-size:1.55rem!important}
  .mock-heading button{font-size:.58rem!important;padding:.48rem .55rem!important}
  .mock-stats{grid-template-columns:1fr 1fr!important;margin:.7rem 0!important}
  .mock-stats>div{padding:.55rem!important}
  .mock-workflow{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory}
  .mock-step{min-width:82%!important;scroll-snap-align:start;border-bottom:0!important}
  .mock-gallery{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory}
  .mock-photo{min-width:83%!important;scroll-snap-align:center;aspect-ratio:1.38!important}
  .home-feature-teaser{margin-top:1rem!important}
  .home-feature-teaser-heading h2{font-size:1.05rem!important}
  .home-feature-teaser-grid{grid-template-columns:1fr!important}
  .home-feature-teaser-grid article{padding:.7rem!important}
  #features .section-heading{margin-bottom:.9rem!important}
}
@media(max-width:390px){
  .marketing-header .brand{font-size:1.18rem!important}
  .marketing-hero h1{font-size:clamp(2.35rem,11.5vw,3.1rem)!important}
  .hero-trust-line span{font-size:.62rem!important}
}
@media(orientation:landscape) and (max-height:520px) and (max-width:1000px){
  .marketing-header{top:6px!important;min-height:52px!important}
  .marketing-hero{padding-top:1.35rem!important}
  .hero-actions{margin:.8rem 0 .5rem!important}
}
@media(prefers-reduced-motion:reduce){
  .hero-global-network .hero-city-card{animation:none!important}
}


/* ==========================================================================
   GaliVue V3.7.5.8 — stable public navigation landing targets
   Public homepage only. No photographer/client workflow changes.
   ========================================================================== */
:root{--gv-public-anchor-gap:14px}

/* Live review content must never make the browser re-anchor away from its title. */
#how-it-works,#features,#pricing,#reviews{overflow-anchor:none}
#publicReviewStats,#publicTestimonials{overflow-anchor:none}

/* Native-hash fallback uses the same live-header-aware breathing room as JS. */
#how-it-works .workflow-light-heading,
#features .feature-grid-nine,
#pricing .pricing-heading,
#reviews>.section-heading{
  scroll-margin-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + var(--gv-public-anchor-gap));
}

@media(max-width:900px){:root{--gv-public-anchor-gap:11px}}
@media(max-width:640px){:root{--gv-public-anchor-gap:9px}}
@media(orientation:landscape) and (max-height:520px) and (max-width:1000px){:root{--gv-public-anchor-gap:8px}}


/* ==========================================================================
   GaliVue V3.7.5.9 — stable public card-grid alignment
   Public homepage only. Desktop/tablet rows stay level; mobile remains stacked.
   ========================================================================== */

/* Every public card grid stretches its children to a common row edge. */
.workflow-v331 .workflow-showcase,
#features .feature-grid-nine,
#pricing .pricing-grid,
#reviews .public-review-stats,
#reviews .public-testimonials,
.home-feature-teaser-grid{
  align-items:stretch!important;
}

.workflow-v331 .workflow-showcase-card,
#features .feature-grid-nine article,
#pricing .pricing-grid article,
#reviews .public-review-stats article,
#reviews .public-testimonials blockquote,
.home-feature-teaser-grid article{
  align-self:stretch;
}

/* The autoplay/hover state must never physically lift one column above another. */
.workflow-v331 .workflow-showcase-card.story-active,
.workflow-v331 .workflow-showcase-card:hover{
  transform:none!important;
}
.workflow-v331 .workflow-showcase-card.story-active{
  border-color:#c9d8a0!important;
  box-shadow:0 20px 45px rgba(39,45,20,.10)!important;
}
#features .feature-grid-nine article:hover{
  transform:none!important;
  border-color:#b9b2a7;
  box-shadow:0 24px 55px rgba(33,29,23,.11);
}

/* Desktop/tablet: keep card internals aligned without forcing mobile card heights. */
@media(min-width:721px){
  .workflow-v331 .workflow-showcase-card{height:100%}
  .workflow-v331 .workflow-ui{height:270px;min-height:270px!important}
  .workflow-v331 .workflow-showcase-card>p{min-height:84px}
  .workflow-v331 .workflow-showcase-card footer{margin-top:auto}

  #features .feature-grid-nine article{height:100%}
  #pricing .pricing-grid article{height:100%}
  #reviews .public-review-stats article,
  #reviews .public-testimonials blockquote{height:100%}
  .home-feature-teaser-grid article{height:100%}
}

/* Laptop/split-screen two-column workflow keeps each row level. */
@media(min-width:721px) and (max-width:1279px){
  .workflow-v331 .workflow-showcase{grid-auto-rows:1fr}
}

/* Phones remain natural-height, one-column, vertically scrollable cards. */
@media(max-width:720px){
  .workflow-v331 .workflow-showcase-card,
  #features .feature-grid-nine article,
  #pricing .pricing-grid article,
  #reviews .public-review-stats article,
  #reviews .public-testimonials blockquote,
  .home-feature-teaser-grid article{
    height:auto!important;
    min-height:0;
  }
  .workflow-v331 .workflow-ui{height:auto!important;min-height:260px!important}
}
/* ==========================================================================
   GaliVue V3.7.6.1 — responsive public design system
   Source of truth for the marketing/public experience.
   Primary desktop reference: 2560 × 1440 at 100% browser zoom.
   Product/client workflow logic and dashboard internals are unchanged.
   ========================================================================== */

:root{
  --gv-public-header-h:72px;
  --gv-public-header-top:14px;
  --gv-public-anchor-gap:18px;
  --gv-public-shell:1860px;
  --gv-public-reading:1180px;
  --gv-public-section-x:clamp(20px,4vw,96px);
  --gv-public-section-y:clamp(72px,6vw,118px);
  --gv-demo-paper:#fbfaf6;
  --gv-demo-panel:#fff;
  --gv-demo-ink:#090909;
  --gv-demo-muted:#625f59;
  --gv-demo-line:rgba(12,12,12,.09);
  --gv-demo-shadow:0 22px 64px rgba(38,34,27,.08);
}

html{scroll-behavior:auto;scroll-padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + var(--gv-public-anchor-gap))}
body{overflow-x:hidden}
.marketing-page{padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + 18px)!important;overflow-x:clip!important;overflow-y:visible!important}
#top,#how-it-works,#live-demo,#features,#pricing,#reviews,#privacy{scroll-margin-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + var(--gv-public-anchor-gap))!important}
#how-it-works,#features,#pricing,#reviews{overflow-anchor:none}
#publicReviewStats,#publicTestimonials{overflow-anchor:none}

/* Floating public header */
.marketing-header{
  position:fixed!important;
  z-index:80!important;
  top:var(--gv-public-header-top)!important;
  left:clamp(16px,2.65vw,68px)!important;
  right:clamp(16px,2.65vw,68px)!important;
  width:auto!important;
  min-height:var(--gv-public-header-h)!important;
  padding:.62rem clamp(1rem,1.6vw,1.75rem)!important;
  gap:clamp(1rem,2.3vw,2.5rem)!important;
  border:1px solid rgba(17,17,17,.065)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 14px 42px rgba(42,37,28,.075)!important;
  backdrop-filter:blur(20px) saturate(150%)!important;
}
.marketing-header .brand{font-size:clamp(1.48rem,1.35vw,2rem)!important;letter-spacing:-.065em!important}
.marketing-header .desktop-nav{display:flex!important;gap:clamp(2rem,2.6vw,4rem)!important;margin-left:clamp(1.2rem,2.6vw,3.7rem)!important}
.marketing-header .desktop-nav a{position:relative;padding:.82rem 0!important;font-size:clamp(.82rem,.7vw,.98rem)!important;font-weight:850!important;color:#111!important;white-space:nowrap}
.marketing-header .desktop-nav a:hover::after,.marketing-header .desktop-nav a.is-active::after{content:"";position:absolute;left:0;right:0;bottom:.22rem;height:3px;border-radius:999px;background:var(--accent)}
.marketing-header .header-login,.marketing-header .header-dashboard{font-size:clamp(.78rem,.7vw,.92rem)!important;font-weight:850!important;color:#111!important;white-space:nowrap}
.marketing-header .header-cta{min-width:112px!important;padding:.78rem 1.2rem!important;border-radius:999px!important;color:#0b0b0b!important}
.marketing-header .public-header-avatar{width:40px!important;height:40px!important;border-radius:50%!important;background:#111!important;color:#fff!important;border:0!important}
.marketing-header.pricing-theme{background:rgba(5,5,5,.96)!important;border-color:#2b2b2b!important;box-shadow:0 14px 42px rgba(0,0,0,.2)!important}
.marketing-header.pricing-theme .brand,.marketing-header.pricing-theme .desktop-nav a,.marketing-header.pricing-theme .header-login,.marketing-header.pricing-theme .header-dashboard{color:#fff!important}
.marketing-header.pricing-theme .menu-button span{background:#fff!important}
.marketing-header.pricing-theme .public-header-avatar{background:#fff!important;color:#111!important}

/* HERO — larger on professional desktop screens without becoming too tall. */
.marketing-hero{
  position:relative!important;
  min-height:auto!important;
  padding:clamp(42px,3vw,72px) var(--gv-public-section-x) clamp(70px,5vw,108px)!important;
  background:var(--gv-demo-paper)!important;
  overflow:hidden!important;
}
.marketing-hero::before{
  background:
    radial-gradient(circle at 88% 24%,rgba(200,255,61,.30),transparent 28%),
    radial-gradient(circle at 10% 32%,rgba(255,255,255,.99),transparent 32%),
    linear-gradient(180deg,#fbfaf7 0%,#f7f4ec 100%)!important;
}
.hero-copy{position:relative;z-index:2;width:min(1380px,82vw)!important;margin:0 auto!important;text-align:center!important}
.hero-kicker{min-height:32px!important;margin:.1rem auto 0!important;padding:.48rem .8rem!important;background:rgba(255,255,255,.88)!important;box-shadow:0 8px 22px rgba(34,31,26,.07)!important;font-size:clamp(.6rem,.52vw,.72rem)!important}
.marketing-hero h1{
  max-width:1320px!important;
  margin:1.05rem auto .9rem!important;
  font-size:clamp(4.7rem,4.2vw,6.75rem)!important;
  line-height:.91!important;
  letter-spacing:-.062em!important;
  color:var(--gv-demo-ink)!important;
  text-wrap:balance!important;
}
.marketing-hero h1 .hero-line,.marketing-hero h1 .hero-stage-strong{display:block!important;color:var(--gv-demo-ink)!important;font-style:normal!important}
.marketing-hero h1 .hero-stage-strong::after{display:none!important}
.marketing-hero .hero-copy>p{max-width:940px!important;margin:0 auto!important;color:#57545b!important;font-size:clamp(1.02rem,.88vw,1.24rem)!important;line-height:1.5!important}
.hero-actions{justify-content:center!important;gap:.8rem!important;margin:1.25rem 0 .82rem!important}
.hero-primary,.demo-link{min-height:50px!important;padding:.85rem 1.25rem!important;border-radius:14px!important;font-size:.88rem!important}
.hero-primary{min-width:240px!important;box-shadow:0 12px 28px rgba(164,211,22,.17)!important}
.demo-link{min-width:224px!important;background:rgba(255,255,255,.9)!important}
.hero-trust-line{justify-content:center!important;gap:.55rem 1.7rem!important;color:#4f4d48!important}
.hero-trust-line span{font-size:clamp(.68rem,.55vw,.8rem)!important}

.hero-global-network .hero-city-card{
  width:218px!important;
  display:grid!important;
  grid-template-columns:66px 1fr!important;
  align-items:center!important;
  gap:.75rem!important;
  padding:.75rem!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.91)!important;
  box-shadow:0 16px 38px rgba(42,37,28,.095)!important;
}
.hero-global-network .hero-city-card img{width:66px!important;height:66px!important;object-fit:cover!important;border-radius:11px!important}
.hero-global-network .hero-city-card b{font-size:.82rem!important}.hero-global-network .hero-city-card small{font-size:.68rem!important}.hero-global-network .hero-city-card i{font-size:.54rem!important;margin-top:.28rem!important}
.hero-city-paris{left:4.4%!important;top:16%!important}.hero-city-colombo{left:7.2%!important;top:43%!important}.hero-city-capetown{left:3.2%!important;bottom:27%!important}
.hero-city-newyork{right:4.2%!important;top:22%!important}.hero-city-mumbai{right:7.2%!important;top:49%!important}

/* Hero workspace — scales up on 2560/4K instead of remaining a small 1110px island. */
.product-stage{position:relative;z-index:2;width:min(1560px,calc(100vw - 220px))!important;margin:1.65rem auto 0!important}
.product-window{overflow:hidden!important;border:1px solid var(--gv-demo-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 28px 78px rgba(38,34,27,.14)!important}
.window-bar{min-height:42px!important;padding:.55rem .85rem!important;background:#fff!important;border-bottom:1px solid var(--gv-demo-line)!important}
.window-dots{display:none!important}.window-address{font-size:.72rem!important;color:#555!important}.window-live{font-size:.7rem!important}
.product-body{grid-template-columns:190px minmax(0,1fr)!important;min-height:520px!important}
.product-side{padding:1.1rem .9rem!important;background:linear-gradient(180deg,#111 0%,#171717 100%)!important}
.product-brand{margin-bottom:1.45rem!important;font-size:1.4rem!important;color:#fff!important}
.product-side .mock-nav{min-height:42px!important;margin:.12rem 0!important;padding:.62rem .7rem!important;border-radius:10px!important;font-size:.74rem!important;color:#ececec!important}
.product-side .mock-nav.active{background:#292929!important}
.mock-storage{margin-top:auto!important;padding:.82rem!important;border-radius:12px!important;background:#252525!important}.mock-storage small{font-size:.55rem!important}.mock-storage b{font-size:.76rem!important}
.product-main{padding:1.25rem 1.4rem!important;background:#fff!important}
.mock-heading{gap:1rem!important}.mock-heading small{font-size:.56rem!important}.mock-heading h3{margin:.18rem 0!important;font-size:1.75rem!important;letter-spacing:-.045em!important}.mock-heading button{padding:.62rem .85rem!important;border-radius:999px!important;background:#111!important;color:#fff!important;font-size:.66rem!important}
.mock-mode{gap:.45rem!important}.mock-mode b{font-size:.62rem!important}.mock-active-pill{font-size:.55rem!important}
.mock-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.68rem!important;margin:1rem 0!important}.mock-stats>div{min-height:68px!important;padding:.78rem .82rem!important;border-radius:10px!important}.mock-stats b{font-size:1.18rem!important}.mock-stats span{font-size:.6rem!important}.mock-stats .ready b{font-size:.86rem!important}
.mock-workflow{grid-template-columns:repeat(4,minmax(0,1fr))!important;border:1px solid #dfe9b8!important;border-radius:10px!important;background:#fbfff1!important}.mock-step{min-height:64px!important;padding:.68rem!important}.mock-step span{width:24px!important;height:24px!important;font-size:.62rem!important}.mock-step b{font-size:.6rem!important}.mock-step small{font-size:.52rem!important}
.mock-gallery{gap:.72rem!important;margin-top:.85rem!important}.mock-photo{aspect-ratio:1.62!important;border-radius:11px!important;background-position:center 38%!important}.mock-photo>span{left:.5rem!important;bottom:.46rem!important;padding:.26rem .42rem!important;font-size:.53rem!important}

/* Core feature teaser below hero */
.home-feature-teaser{position:relative;z-index:2;width:min(1560px,calc(100vw - 220px))!important;margin:1.65rem auto 0!important}
.home-feature-teaser-heading{text-align:center!important;margin-bottom:.9rem!important}
.home-feature-teaser-heading span{color:#6f9827!important;font-size:.62rem!important;font-weight:950!important;letter-spacing:.13em!important}
.home-feature-teaser-heading h2{margin:.24rem 0 0!important;font-size:1.42rem!important;letter-spacing:-.025em!important}
.home-feature-teaser-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:.7rem!important;align-items:stretch!important}
.home-feature-teaser-grid article{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:.68rem!important;align-items:start!important;height:100%!important;min-width:0!important;padding:.9rem!important;border:1px solid var(--line)!important;border-radius:15px!important;background:rgba(255,255,255,.84)!important}
.home-feature-teaser-grid article>i{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:10px!important;background:var(--accent)!important;color:#111!important;font-style:normal!important;font-weight:950!important}
.home-feature-teaser-grid b{display:block!important;font-size:.78rem!important;line-height:1.2!important}.home-feature-teaser-grid p{margin:.24rem 0 0!important;color:var(--muted)!important;font-size:.67rem!important;line-height:1.4!important}

/* Shared public section rhythm */
#how-it-works,#features,#pricing,#reviews{padding-top:clamp(70px,5vw,108px)!important;padding-bottom:clamp(78px,5.6vw,126px)!important;padding-left:var(--gv-public-section-x)!important;padding-right:var(--gv-public-section-x)!important}
#how-it-works,#features,#reviews{background:#fbfaf6!important}
.workflow-v331 .workflow-light-heading,#features .section-heading,#pricing .pricing-heading,#reviews>.section-heading{scroll-margin-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + var(--gv-public-anchor-gap))!important}

/* HOW IT WORKS — five readable cards on pro desktop, 3+2 / 2+2+1 below. */
.workflow-v331 .workflow-light-heading{max-width:1180px!important;margin:0 auto 2.25rem!important;text-align:center!important}
.workflow-v331 .workflow-pill{padding:.44rem 1.08rem!important;background:#dfff76!important;color:#101010!important;font-size:.74rem!important}
.workflow-v331 .workflow-light-heading h2{margin:.8rem auto .7rem!important;font-size:clamp(4rem,3.65vw,5.65rem)!important;line-height:.93!important;letter-spacing:-.055em!important;color:#070707!important}
.workflow-v331 .workflow-light-heading h2::after{display:none!important}
.workflow-v331 .workflow-light-heading p{font-size:1.08rem!important;line-height:1.5!important;color:#5e5b61!important}
.workflow-v331 .workflow-showcase{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;width:min(1900px,calc(100vw - 150px))!important;max-width:none!important;margin:0 auto!important;padding:0!important;align-items:stretch!important}
.workflow-v331 .workflow-arrow{display:none!important}
.workflow-v331 .workflow-showcase-card{height:100%!important;min-width:0!important;padding:1rem!important;border:1px solid rgba(16,16,16,.08)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 15px 38px rgba(38,34,27,.06)!important}
.workflow-v331 .workflow-number{left:.9rem!important;top:.9rem!important;width:36px!important;height:36px!important;background:var(--accent)!important;color:#111!important;font-size:.72rem!important}
.workflow-v331 .workflow-round-icon{width:60px!important;height:60px!important;margin:.12rem auto .52rem!important;background:#f6f5f0!important}.workflow-v331 .workflow-round-icon svg{width:31px!important;height:31px!important}
.workflow-v331 .workflow-showcase-card h3{margin:.12rem 0 .78rem!important;font-size:1.14rem!important;line-height:1.15!important}
.workflow-v331 .workflow-ui{height:320px!important;min-height:320px!important;padding:.78rem!important;border:1px solid #ece9e1!important;border-radius:12px!important;background:#fff!important}
.workflow-v331 .workflow-showcase-card>p{display:none!important}
.workflow-v331 .workflow-showcase-card footer{min-height:44px!important;margin-top:.85rem!important;padding:.58rem!important;border-radius:11px!important;background:#f2f9db!important;color:#161616!important;font-size:.74rem!important}
.workflow-v331 .workflow-audience{max-width:1560px!important;margin:2rem auto 0!important;padding:1.1rem 1.5rem!important;border:1px solid rgba(15,15,15,.06)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--gv-demo-shadow)!important}

/* FEATURES — wide 3 × 3 cards on desktop, 2 columns tablet, one column phone. */
#features .section-heading{max-width:1120px!important;margin:0 auto 2.2rem!important;text-align:center!important}
#features .section-kicker{display:inline-flex!important;padding:.4rem .95rem!important;border-radius:999px!important;background:#dfff76!important;color:#111!important;font-size:.7rem!important}
#features .section-heading h2{margin:.65rem auto .55rem!important;font-size:clamp(4rem,3.7vw,5.7rem)!important;line-height:.96!important;letter-spacing:-.055em!important;color:#080808!important}
#features .section-heading p{max-width:760px!important;margin:.6rem auto 0!important;font-size:1.08rem!important;line-height:1.5!important;color:#5f5b63!important}
#features .feature-grid-nine{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;width:min(1800px,calc(100vw - 170px))!important;max-width:none!important;margin:0 auto!important;align-items:stretch!important}
#features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{display:grid!important;grid-template-columns:minmax(145px,.88fr) minmax(0,1.18fr)!important;grid-template-rows:auto 1fr!important;column-gap:1.15rem!important;min-height:255px!important;height:100%!important;padding:1.15rem!important;border:1px solid rgba(12,12,12,.08)!important;border-radius:18px!important;background:#fff!important;box-shadow:none!important}
#features .feature-grid-nine article.feature-large{grid-column:auto!important}
#features .feature-number{display:none!important}
#features .feature-grid h3{grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0 0 .48rem!important;font-size:1.18rem!important;line-height:1.16!important;color:#101010!important}
#features .feature-grid p{grid-column:2!important;grid-row:2!important;align-self:start!important;margin:0!important;font-size:.86rem!important;line-height:1.5!important;color:#5d5a63!important}
#features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{position:relative!important;inset:auto!important;grid-column:1!important;grid-row:1/3!important;width:100%!important;height:190px!important;min-height:190px!important;margin:0!important;align-self:center!important;border-radius:14px!important}
#features .device-visual{height:190px!important}
#features .rating-visual{padding:.8rem!important;gap:.34rem!important}.rating-visual i{padding:.45rem!important;font-size:.72rem!important}
#features .group-vote-visual{padding:.65rem!important}.group-vote-visual span{font-size:.55rem!important}.group-vote-visual b{font-size:.58rem!important}
#features .filename-visual{padding:.75rem!important}.filename-visual code{font-size:.62rem!important}.filename-visual strong{font-size:.62rem!important}
#features .watermark-visual{background-image:url('/demo/wedding2.jpg')!important;background-size:cover!important;background-position:center!important}.watermark-visual span{font-size:.78rem!important}
#features .export-visual span{width:48px!important;height:48px!important}.export-visual b{font-size:.66rem!important}
#features .expiry-visual strong{font-size:3rem!important}.feedback-visual span{font-size:1.25rem!important}

/* PRICING — strong 3-card composition on desktop. */
#pricing{background:#050505!important;color:#fff!important}
#pricing .pricing-heading{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(380px,.72fr)!important;align-items:end!important;gap:clamp(3rem,6vw,8rem)!important;width:min(1650px,calc(100vw - 180px))!important;max-width:none!important;margin:0 auto 2.25rem!important}
#pricing .section-kicker{display:inline-flex!important;padding:.42rem .85rem!important;border:1px solid #3a3a3a!important;border-radius:999px!important;background:#171717!important;color:#f2f2f2!important;font-size:.68rem!important}
#pricing .pricing-heading h2{max-width:760px!important;margin:.7rem 0 0!important;font-size:clamp(4rem,3.8vw,5.8rem)!important;line-height:.92!important;letter-spacing:-.06em!important;color:#fff!important}
#pricing .pricing-heading>p{max-width:560px!important;margin:0 0 .4rem!important;color:#d4d1cc!important;font-size:1.1rem!important;line-height:1.55!important}
#pricing .free-test-card{display:grid!important;grid-template-columns:minmax(300px,1.15fr) minmax(520px,1.75fr) auto!important;align-items:center!important;gap:1.4rem!important;width:min(1650px,calc(100vw - 180px))!important;max-width:none!important;margin:0 auto 1.25rem!important;padding:1.2rem 1.4rem!important;border:1px solid #454545!important;border-radius:17px!important;background:linear-gradient(180deg,#1a1a1a,#111)!important}
#pricing .free-test-card button{min-width:185px!important;border-radius:12px!important}
#pricing .pricing-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;width:min(1650px,calc(100vw - 180px))!important;max-width:none!important;margin:0 auto!important;align-items:stretch!important}
#pricing .pricing-grid article{min-height:430px!important;height:100%!important;padding:1.55rem!important;border:1px solid #dedbd4!important;border-radius:18px!important;background:#fff!important;color:#101010!important;box-shadow:none!important}
#pricing .pricing-grid .pricing-featured{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)!important}
#pricing .popular-tag{left:50%!important;right:auto!important;top:-14px!important;transform:translateX(-50%)!important;padding:.38rem .86rem!important;background:var(--accent)!important;color:#111!important}
#pricing .plan-top>span{font-size:.94rem!important;letter-spacing:.04em!important}#pricing .plan-top h3{margin:.8rem 0 .6rem!important;font-size:2.85rem!important}#pricing .plan-top p{min-height:42px!important;font-size:.82rem!important}
#pricing .pricing-grid ul{gap:.72rem!important;padding:1.1rem 0 1.2rem!important;margin:.8rem 0 0!important}#pricing .pricing-grid li{font-size:.84rem!important}
#pricing .pricing-grid article>button{min-height:46px!important;border-radius:12px!important}.pricing-note{max-width:1650px!important;color:#9f9b95!important}.extra-plan-badges{max-width:1650px!important}.extra-plan-badges span{background:#0e0e0e!important;border-color:#3b3b3b!important;color:#c9c5c0!important}

/* REVIEWS — same width and type scale as the other public sections. */
#reviews{background:radial-gradient(circle at 88% 13%,rgba(200,255,61,.17),transparent 29%),#fbfaf6!important}
#reviews>.section-heading{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.05fr)!important;gap:clamp(3rem,6vw,7rem)!important;align-items:center!important;width:min(1600px,calc(100vw - 180px))!important;max-width:none!important;margin:0 auto 2.2rem!important}
#reviews .section-kicker{display:inline-flex!important;padding:.4rem .86rem!important;border-radius:999px!important;background:#e9f5c7!important;color:#111!important;font-size:.68rem!important}
#reviews .section-heading h2{margin:.8rem 0 0!important;font-size:clamp(4rem,4vw,6rem)!important;line-height:.93!important;letter-spacing:-.06em!important;color:#090909!important}
#reviews .section-heading>p{max-width:560px!important;font-size:1.08rem!important;line-height:1.55!important;color:#56535b!important}
#reviews .public-review-stats{display:block!important;width:min(1450px,calc(100vw - 220px))!important;max-width:none!important;margin:0 auto!important}
#reviews .review-threshold{display:block!important;padding:2.5rem 2.7rem!important;border:1px solid rgba(12,12,12,.08)!important;border-radius:20px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 20px 58px rgba(38,34,27,.06)!important;text-align:left!important}
.review-threshold-top{display:grid!important;grid-template-columns:82px 1fr!important;align-items:start!important;gap:1.35rem!important}
.review-threshold-star{display:grid!important;width:74px!important;height:74px!important;place-items:center!important;border-radius:50%!important;background:#edf9c9!important;color:#88d50c!important;font-size:2.7rem!important;line-height:1!important}
.review-threshold-metric{display:grid!important;grid-template-columns:auto 1fr!important;column-gap:.9rem!important;align-items:end!important}.review-threshold-count{display:block!important;width:auto!important;min-width:0!important;height:auto!important;border-radius:0!important;background:transparent!important;color:#090909!important;font-size:3.35rem!important;line-height:.9!important}.review-threshold-metric h3{margin:0!important;font-size:1.08rem!important}.review-threshold-metric p{grid-column:1/-1!important;margin:.9rem 0 0!important;font-size:.78rem!important;line-height:1.5!important;color:#5e5b61!important}
.review-progress-track{height:10px!important;margin-top:2.1rem!important;background:#ecebe8!important}.review-progress-track i{background:#8bd900!important}.review-progress-labels{font-size:.82rem!important;color:#555!important}.review-progress-labels b{color:#84cd09!important;font-size:1.05rem!important}
#reviews .public-testimonials{width:min(1450px,calc(100vw - 220px))!important;max-width:none!important}

/* Supporting public sections follow the same responsive shell. */
#live-demo,.proof-section,.security-section{background:#fbfaf6!important}
.demo-section{width:min(1760px,calc(100vw - 150px))!important;max-width:none!important;gap:clamp(3rem,6vw,7rem)!important}
.proof-section{width:100%!important;max-width:none!important;padding-left:var(--gv-public-section-x)!important;padding-right:var(--gv-public-section-x)!important}
.proof-section>.proof-copy,.proof-section>.proof-stack{max-width:820px}
.security-card{width:min(1650px,calc(100vw - 180px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.final-cta{padding-left:var(--gv-public-section-x)!important;padding-right:var(--gv-public-section-x)!important}
.marketing-footer{position:relative!important;padding-left:var(--gv-public-section-x)!important;padding-right:var(--gv-public-section-x)!important}

/* ----- Large desktop / studio monitors: 1920–4K and ultrawide ----- */
@media(min-width:2200px){
  :root{--gv-public-section-x:clamp(72px,4vw,120px)}
  .marketing-header{left:72px!important;right:72px!important}
  .marketing-hero h1{font-size:6.55rem!important;max-width:1320px!important}
  .product-stage,.home-feature-teaser{width:min(1600px,calc(100vw - 320px))!important}
  .workflow-v331 .workflow-showcase{width:min(1920px,calc(100vw - 240px))!important}
  #features .feature-grid-nine{width:min(1840px,calc(100vw - 260px))!important}
}

/* ----- Standard professional desktop / laptop ----- */
@media(max-width:1599px){
  :root{--gv-public-section-x:clamp(20px,3.3vw,56px)}
  .marketing-header{left:18px!important;right:18px!important}
  .hero-global-network .hero-city-card{display:none!important}
  .hero-copy{width:min(1120px,90vw)!important}
  .marketing-hero h1{max-width:1080px!important;font-size:clamp(4.2rem,5.5vw,5.6rem)!important}
  .product-stage,.home-feature-teaser{width:min(1280px,calc(100vw - 100px))!important}
  .product-body{grid-template-columns:172px minmax(0,1fr)!important;min-height:470px!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .workflow-v331 .workflow-showcase{grid-template-columns:repeat(3,minmax(0,1fr))!important;width:min(1250px,calc(100vw - 100px))!important;gap:16px!important}
  .workflow-v331 .workflow-showcase-card:nth-of-type(4),.workflow-v331 .workflow-showcase-card:nth-of-type(5){max-width:none!important}
  .workflow-v331 .workflow-showcase-card{min-height:480px!important}
  .workflow-v331 .workflow-ui{height:300px!important;min-height:300px!important}
  .workflow-v331 .workflow-audience{max-width:1250px!important}
  #features .feature-grid-nine{width:min(1280px,calc(100vw - 100px))!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:135px minmax(0,1fr)!important;min-height:235px!important;padding:1rem!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{height:170px!important;min-height:170px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(1280px,calc(100vw - 100px))!important}
  #reviews>.section-heading{width:min(1240px,calc(100vw - 100px))!important}
  #reviews .public-review-stats,#reviews .public-testimonials{width:min(1160px,calc(100vw - 120px))!important}
}

/* ----- Compact desktop, 13–14in laptops, browser zoom and half-screen ----- */
@media(max-width:1279px){
  :root{--gv-public-header-h:66px;--gv-public-header-top:10px;--gv-public-anchor-gap:14px}
  .marketing-header{left:12px!important;right:12px!important;min-height:66px!important;padding:.52rem .8rem!important;border-radius:22px!important}
  .marketing-header .desktop-nav{display:none!important}.marketing-header .menu-button{display:block!important}
  .marketing-page{padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + 14px)!important}
  .marketing-hero{padding-top:38px!important}
  .hero-copy{width:min(900px,94vw)!important}
  .marketing-hero h1{max-width:900px!important;font-size:clamp(3.7rem,6.8vw,5.05rem)!important;line-height:.92!important}
  .product-stage,.home-feature-teaser{width:min(1060px,calc(100vw - 44px))!important}
  .product-body{grid-template-columns:150px minmax(0,1fr)!important;min-height:430px!important}
  .product-side{padding:.9rem .65rem!important}.product-main{padding:1rem!important}
  .mock-workflow{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mock-step:nth-child(2){border-right:0!important}.mock-step:nth-child(-n+2){border-bottom:1px solid var(--line)!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.home-feature-teaser-grid article:nth-child(4),.home-feature-teaser-grid article:nth-child(5){grid-column:span 1!important}
  .workflow-v331 .workflow-light-heading h2,#features .section-heading h2,#pricing .pricing-heading h2,#reviews .section-heading h2{font-size:clamp(3.4rem,5.9vw,4.7rem)!important}
  .workflow-v331 .workflow-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(900px,calc(100vw - 54px))!important}
  .workflow-v331 .workflow-showcase-card:last-of-type{grid-column:1/-1!important;max-width:442px!important;width:100%!important;justify-self:center!important}
  .workflow-v331 .workflow-showcase-card{min-height:470px!important}
  .workflow-v331 .workflow-audience{max-width:900px!important;grid-template-columns:auto 1fr!important}.workflow-v331 .workflow-audience>span{grid-column:2!important}.workflow-v331 .workflow-audience>div{grid-column:1/-1!important;justify-content:center!important;flex-wrap:wrap!important}
  #features .feature-grid-nine{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(980px,calc(100vw - 54px))!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:125px minmax(0,1fr)!important;min-height:220px!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{height:155px!important;min-height:155px!important}
  #pricing .pricing-heading{grid-template-columns:1fr!important;gap:1.2rem!important;width:min(980px,calc(100vw - 54px))!important}#pricing .pricing-heading>p{max-width:720px!important}
  #pricing .free-test-card{grid-template-columns:1fr!important;width:min(980px,calc(100vw - 54px))!important}#pricing .free-test-card button{width:100%!important}
  #pricing .pricing-grid{grid-template-columns:1fr!important;width:min(680px,calc(100vw - 54px))!important}#pricing .pricing-grid article{min-height:auto!important}
  #reviews>.section-heading{grid-template-columns:1fr!important;gap:1.25rem!important;width:min(900px,calc(100vw - 54px))!important}#reviews .section-heading>p{max-width:720px!important}
  #reviews .public-review-stats,#reviews .public-testimonials{width:min(900px,calc(100vw - 54px))!important}
  .demo-section{grid-template-columns:1fr!important;width:min(940px,calc(100vw - 54px))!important}.demo-copy{padding-left:0!important}
  .security-card{width:min(940px,calc(100vw - 54px))!important}
}

/* ----- Tablet landscape / large iPad / Android tablets ----- */
@media(max-width:1024px){
  .marketing-header .header-dashboard{font-size:.72rem!important}
  .marketing-hero{padding-left:20px!important;padding-right:20px!important;padding-bottom:72px!important}
  .hero-copy{width:100%!important}
  .marketing-hero h1{max-width:820px!important;font-size:clamp(3.35rem,7.8vw,4.65rem)!important}
  .marketing-hero .hero-copy>p{max-width:700px!important;font-size:1rem!important}
  .product-stage,.home-feature-teaser{width:100%!important;max-width:900px!important}
  .product-body{grid-template-columns:1fr!important;min-height:auto!important}.product-side{display:none!important}.product-main{padding:.9rem!important}
  .mock-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}.mock-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #how-it-works,#features,#pricing,#reviews{padding-top:64px!important;padding-bottom:78px!important}
}

/* ----- Phones + portrait tablets ----- */
@media(max-width:767px){
  :root{--gv-public-header-h:58px;--gv-public-header-top:7px;--gv-public-anchor-gap:10px;--gv-public-section-x:14px}
  .marketing-header{left:8px!important;right:8px!important;top:7px!important;min-height:58px!important;padding:.45rem .65rem!important;border-radius:18px!important;gap:.4rem!important}
  .marketing-header .brand{font-size:1.28rem!important}.marketing-header .header-login,.marketing-header .header-dashboard{padding:.5rem .42rem!important;font-size:.69rem!important}.marketing-header .header-cta{min-width:0!important;padding:.56rem .66rem!important;font-size:.7rem!important}.marketing-header .public-header-avatar{width:34px!important;height:34px!important}
  .marketing-page{padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + 10px)!important}
  .marketing-hero{padding:28px 14px 58px!important}
  .hero-kicker{font-size:.53rem!important;padding:.42rem .58rem!important}
  .hero-kicker-copy i,.hero-kicker-copy em{display:none!important}
  .marketing-hero h1{max-width:100%!important;margin:.9rem auto .75rem!important;font-size:clamp(2.65rem,11.2vw,4.15rem)!important;line-height:.94!important;letter-spacing:-.058em!important}
  .marketing-hero h1 .hero-line,.marketing-hero h1 .hero-stage-strong{display:inline!important}
  .marketing-hero h1 .hero-line::after{content:" "}
  .marketing-hero .hero-copy>p{font-size:.92rem!important;line-height:1.48!important}
  .hero-story-copy span{display:inline!important}
  .hero-actions{flex-direction:column!important;margin:1.05rem 0 .72rem!important}.hero-primary,.demo-link{width:100%!important;min-width:0!important}
  .hero-trust-line{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:.45rem .6rem!important;text-align:left!important}.hero-trust-line span{font-size:.66rem!important}
  .product-stage{margin-top:1.3rem!important}.product-window{border-radius:16px!important}.window-bar{grid-template-columns:auto 1fr!important;padding:.48rem .55rem!important}.window-live{display:none!important}.product-main{padding:.65rem!important}
  .mock-heading{align-items:flex-start!important}.mock-heading h3{font-size:1.48rem!important}.mock-heading button{font-size:.56rem!important;padding:.46rem .52rem!important}.mock-mode b{font-size:.54rem!important}
  .mock-stats{grid-template-columns:1fr 1fr!important;margin:.7rem 0!important}.mock-stats>div{min-height:58px!important;padding:.55rem!important}
  .mock-workflow{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important}.mock-step{min-width:84%!important;scroll-snap-align:start!important;border-bottom:0!important}
  .mock-gallery{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important}.mock-photo{min-width:84%!important;scroll-snap-align:center!important;aspect-ratio:1.38!important}
  .home-feature-teaser{margin-top:1.05rem!important}.home-feature-teaser-heading h2{font-size:1.08rem!important}.home-feature-teaser-grid{grid-template-columns:1fr!important}.home-feature-teaser-grid article{padding:.75rem!important}
  #how-it-works,#features,#pricing,#reviews{padding:52px 14px 64px!important}
  .workflow-v331 .workflow-light-heading{margin-bottom:1.3rem!important}.workflow-v331 .workflow-light-heading h2,#features .section-heading h2,#pricing .pricing-heading h2,#reviews .section-heading h2{font-size:clamp(2.75rem,10.6vw,3.8rem)!important;line-height:.96!important}.workflow-v331 .workflow-light-heading br,.workflow-v331 .workflow-light-heading p br{display:none!important}.workflow-v331 .workflow-light-heading p,#features .section-heading p,#pricing .pricing-heading>p,#reviews .section-heading>p{font-size:.94rem!important}
  .workflow-v331 .workflow-showcase{grid-template-columns:1fr!important;width:min(500px,100%)!important;gap:.85rem!important}.workflow-v331 .workflow-showcase-card:last-of-type{grid-column:auto!important;max-width:none!important}.workflow-v331 .workflow-showcase-card{min-height:0!important;padding:.9rem!important}.workflow-v331 .workflow-ui{height:auto!important;min-height:255px!important}.workflow-v331 .workflow-audience{grid-template-columns:auto 1fr!important;padding:.9rem!important}.workflow-v331 .workflow-audience>div{display:grid!important;grid-template-columns:repeat(2,1fr)!important;width:100%!important;gap:.8rem!important}
  #features .section-heading{margin-bottom:1.2rem!important}#features .feature-grid-nine{grid-template-columns:1fr!important;width:min(520px,100%)!important;gap:.8rem!important}#features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:120px minmax(0,1fr)!important;min-height:175px!important;padding:.85rem!important;column-gap:.85rem!important}#features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{height:135px!important;min-height:135px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid,#reviews>.section-heading,#reviews .public-review-stats,#reviews .public-testimonials{width:100%!important}#pricing .free-test-card{padding:1rem!important}.free-test-metrics{grid-template-columns:repeat(2,1fr)!important;gap:.4rem!important}.free-test-metrics>span{border-left:0!important;border-top:1px solid #333!important}.free-test-metrics>span:last-child{grid-column:1/-1!important}#pricing .pricing-grid{gap:.85rem!important}#pricing .pricing-grid article{padding:1.15rem!important}
  #reviews .review-threshold{padding:1.35rem!important}.review-threshold-top{grid-template-columns:1fr!important;gap:.8rem!important}.review-threshold-star{width:60px!important;height:60px!important;font-size:2.1rem!important}.review-threshold-metric{grid-template-columns:1fr!important}.review-threshold-metric h3,.review-threshold-metric p{grid-column:1!important}.review-threshold-count{font-size:2.7rem!important}.review-progress-labels{font-size:.7rem!important}
  .demo-section,.security-card{width:100%!important}.marketing-footer{grid-template-columns:1fr!important;gap:1.35rem!important;padding:2rem 1rem 1.15rem!important}.marketing-footer .footer-brand,.marketing-footer>div:nth-child(2),.marketing-footer>div:nth-child(3),.marketing-footer>div:nth-child(4),.marketing-footer .footer-bottom{grid-column:1/-1!important}.footer-bottom{display:grid!important;grid-template-columns:1fr!important;gap:.25rem!important}
}

/* ----- Small iPhones / compact Android ----- */
@media(max-width:430px){
  .marketing-header .brand{font-size:1.18rem!important}.marketing-header .header-login,.marketing-header .header-dashboard{font-size:.65rem!important}.marketing-header .header-cta{font-size:.65rem!important;padding:.5rem .5rem!important}
  .marketing-hero h1{font-size:clamp(2.42rem,11.4vw,3.25rem)!important}
  .hero-trust-line span{font-size:.62rem!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;min-height:0!important}#features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{grid-column:1!important;grid-row:1!important;height:155px!important;min-height:155px!important}#features .feature-grid h3{grid-column:1!important;grid-row:2!important;margin-top:.75rem!important}#features .feature-grid p{grid-column:1!important;grid-row:3!important}
  .workflow-v331 .workflow-audience>div{grid-template-columns:1fr!important}
}

/* Short landscape phones and shallow split-screen windows. */
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){
  :root{--gv-public-header-h:54px;--gv-public-header-top:5px}
  .marketing-header{top:5px!important;min-height:54px!important}.marketing-page{padding-top:68px!important}.marketing-hero{padding-top:22px!important;padding-bottom:42px!important}.marketing-hero h1{font-size:clamp(2.65rem,6.2vw,4rem)!important}.hero-actions{margin:.8rem 0 .55rem!important}
  #how-it-works,#features,#pricing,#reviews{padding-top:42px!important;padding-bottom:52px!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-global-network .hero-city-card,.workflow-v331 .workflow-showcase-card,.feature-grid-nine article{animation:none!important;transition:none!important}
}

/* V3.7.6.1 final density + pricing-metric QA refinements */
#how-it-works,#features,#pricing,#reviews{padding-top:clamp(56px,3.2vw,82px)!important;padding-bottom:clamp(72px,4.6vw,104px)!important}
#pricing .free-test-metrics{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:stretch!important;gap:0!important;min-width:0!important}
#pricing .free-test-metrics>span{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:58px!important;padding:.25rem .6rem!important;border-left:1px solid #3b3b3b!important;text-align:center!important}
#pricing .free-test-metrics>span:first-child{border-left:0!important}
#pricing .free-test-metrics b{display:block!important;color:var(--accent)!important;font-size:1rem!important;line-height:1.1!important;white-space:nowrap!important}
#pricing .free-test-metrics small{display:block!important;margin-top:.25rem!important;color:#d1cec7!important;font-size:.59rem!important;font-weight:780!important;line-height:1.25!important;white-space:normal!important}
#live-demo,.proof-section,.security-section{padding-top:clamp(64px,4.5vw,96px)!important;padding-bottom:clamp(64px,4.5vw,96px)!important}
@media(max-width:1279px){
  #how-it-works,#features,#pricing,#reviews{padding-top:58px!important;padding-bottom:76px!important}
  #pricing .free-test-metrics{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:767px){
  #how-it-works,#features,#pricing,#reviews{padding:48px 14px 62px!important}
  #pricing .free-test-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.4rem!important}
  #pricing .free-test-metrics>span{min-height:52px!important;border-left:0!important;border-top:1px solid #333!important;padding:.45rem!important}
  #pricing .free-test-metrics>span:last-child{grid-column:1/-1!important}
}

/* ========================================================================== 
   GaliVue V3.7.6.2 — public-page visual QA corrections
   Corrects large-display scale, section landing positions, double section gaps,
   workflow readability and logged-in pricing header contrast.
   ========================================================================== */

/* Mouse clicks should not leave the browser's blue focus rectangle on nav items. */
.marketing-header a:focus:not(:focus-visible),
.marketing-header button:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}

/* Logged-in pricing header: keep the Dashboard control readable on the dark header. */
.marketing-header.pricing-theme .header-dashboard{
  background:#fff!important;
  color:#111!important;
  border-color:#fff!important;
}
.marketing-header.pricing-theme .header-dashboard:hover{background:#f0f0ed!important;color:#111!important}

/* Avoid stacking the bottom padding of one marketing section with the top padding
   of the next supporting section. */
#how-it-works{padding-bottom:64px!important}
#how-it-works + #live-demo{padding-top:44px!important}
#features{padding-bottom:62px!important}
#features + .proof-section{padding-top:44px!important}
#pricing{padding-bottom:72px!important}
#reviews{padding-bottom:54px!important}
#reviews + .security-section{padding-top:46px!important}

/* How it works: preserve the approved two-line title and make the five-card flow
   genuinely readable instead of shrinking the card UI. */
.workflow-v331 .workflow-light-heading{max-width:1500px!important}
.workflow-v331 .workflow-light-heading h2{
  max-width:1500px!important;
  text-wrap:normal!important;
}
.workflow-v331 .workflow-heading-story{max-width:980px!important;margin-left:auto!important;margin-right:auto!important}
.workflow-v331 .workflow-showcase{width:min(2020px,calc(100vw - 112px))!important;gap:20px!important}
.workflow-v331 .workflow-showcase-card{padding:1.08rem!important}
.workflow-v331 .workflow-number{width:38px!important;height:38px!important;font-size:.76rem!important}
.workflow-v331 .workflow-round-icon{width:64px!important;height:64px!important}
.workflow-v331 .workflow-round-icon svg{width:33px!important;height:33px!important}
.workflow-v331 .workflow-showcase-card h3{font-size:1.24rem!important}
.workflow-v331 .workflow-ui{height:342px!important;min-height:342px!important;padding:.9rem!important}
.workflow-v331 .workflow-ui>b{font-size:.74rem!important}
.workflow-v331 .workflow-ui label{font-size:.60rem!important}
.workflow-v331 .workflow-ui label span{font-size:.60rem!important;padding:.44rem!important}
.workflow-v331 .workflow-ui button{font-size:.64rem!important;padding:.52rem!important}
.workflow-v331 .mini-drop small{font-size:.56rem!important}
.workflow-v331 .workflow-ui>small{font-size:.56rem!important}
.workflow-v331 .matching-ui p{font-size:.59rem!important}
.workflow-v331 .matching-ui code{font-size:.56rem!important}
.workflow-v331 .mini-rating-row span{font-size:.56rem!important}
.workflow-v331 .workflow-showcase-card footer{font-size:.78rem!important;min-height:48px!important}
.workflow-v331 .workflow-audience{max-width:1740px!important;margin-top:1.65rem!important}
.workflow-v331 .workflow-audience strong{font-size:1.12rem!important}
.workflow-v331 .workflow-audience>span{font-size:.96rem!important}
.workflow-v331 .workflow-audience small{font-size:.68rem!important}

/* Features: larger, more legible cards and a clear section heading. */
#features .section-heading{max-width:1320px!important;margin-bottom:2.05rem!important}
#features .feature-grid-nine{width:min(1900px,calc(100vw - 122px))!important;gap:20px!important}
#features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{
  grid-template-columns:minmax(170px,.9fr) minmax(0,1.2fr)!important;
  min-height:282px!important;
  padding:1.28rem!important;
  column-gap:1.3rem!important;
}
#features .feature-grid h3{font-size:1.30rem!important;margin-bottom:.58rem!important}
#features .feature-grid p{font-size:.94rem!important;line-height:1.52!important}
#features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{
  height:210px!important;
  min-height:210px!important;
}
#features .device-visual{height:210px!important}

/* Pricing: use more of a studio monitor and keep the hierarchy close to the demo. */
#pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(1780px,calc(100vw - 130px))!important}
#pricing .pricing-heading{margin-bottom:1.8rem!important}
#pricing .pricing-heading h2{max-width:820px!important}
#pricing .pricing-grid article{min-height:455px!important;padding:1.65rem!important}
#pricing .plan-top h3{font-size:3rem!important}
#pricing .pricing-grid li{font-size:.88rem!important}
#pricing .pricing-note,#pricing .extra-plan-badges{max-width:1780px!important}

/* Reviews: same wider visual system, with less dead space before Privacy. */
#reviews>.section-heading{width:min(1740px,calc(100vw - 130px))!important;gap:clamp(3.5rem,6vw,8rem)!important;margin-bottom:1.85rem!important}
#reviews .public-review-stats,#reviews .public-testimonials{width:min(1580px,calc(100vw - 160px))!important}
#reviews .review-threshold{padding:2.65rem 2.85rem!important}
.security-card{width:min(1740px,calc(100vw - 130px))!important}

/* The user's 2560×1440 display can expose roughly 2K CSS pixels depending on
   browser/OS scaling. Treat 1600px+ CSS viewports as professional desktop. */
@media(min-width:1600px){
  .marketing-header .brand{font-size:clamp(1.65rem,1.25vw,2.05rem)!important}
  .marketing-header .desktop-nav a{font-size:clamp(.9rem,.68vw,1rem)!important}
  .marketing-header .header-login,.marketing-header .header-dashboard{font-size:clamp(.84rem,.66vw,.96rem)!important}
  .workflow-v331 .workflow-light-heading h2{font-size:clamp(4.65rem,3.9vw,5.9rem)!important}
  .workflow-v331 .workflow-light-heading p{font-size:1.13rem!important}
  #features .section-heading h2{font-size:clamp(4.55rem,3.85vw,5.9rem)!important}
  #features .section-heading p{font-size:1.12rem!important}
  #pricing .pricing-heading h2{font-size:clamp(4.55rem,3.9vw,5.95rem)!important}
  #reviews .section-heading h2{font-size:clamp(4.55rem,4vw,6rem)!important}
}

/* Standard laptops: keep 3+2 workflow and 3-column features until space is truly
   too narrow. This prevents premature tiny layouts. */
@media(min-width:1280px) and (max-width:1599px){
  .workflow-v331 .workflow-showcase{width:min(1340px,calc(100vw - 72px))!important;gap:17px!important}
  .workflow-v331 .workflow-ui{height:310px!important;min-height:310px!important}
  #features .feature-grid-nine{width:min(1360px,calc(100vw - 72px))!important;gap:17px!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:145px minmax(0,1fr)!important;min-height:245px!important;padding:1.05rem!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual{height:176px!important;min-height:176px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(1360px,calc(100vw - 72px))!important}
  #reviews>.section-heading{width:min(1320px,calc(100vw - 72px))!important}
  #reviews .public-review-stats,#reviews .public-testimonials{width:min(1240px,calc(100vw - 90px))!important}
}

@media(max-width:1279px){
  #how-it-works{padding-bottom:56px!important}
  #features{padding-bottom:56px!important}
  #pricing{padding-bottom:62px!important}
  #reviews{padding-bottom:48px!important}
  .workflow-v331 .workflow-ui{height:300px!important;min-height:300px!important}
}

@media(max-width:767px){
  #how-it-works + #live-demo,#features + .proof-section,#reviews + .security-section{padding-top:32px!important}
  .workflow-v331 .workflow-ui{height:auto!important;min-height:255px!important}
}
/* Remove the legacy animated connector pseudo-arrows that were clipped by the
   modern five-card grid. The card order is already visually clear. */
.workflow-v331.animated-workflow .workflow-showcase-card:not(:last-of-type)::after,
.workflow-v331 .animated-workflow .workflow-showcase-card:not(:last-of-type)::after,
.workflow-v331 .workflow-showcase.animated-workflow article:not(:last-child)::after{display:none!important;content:none!important}

/* ========================================================================== 
   GaliVue V3.7.6.3 — FINAL PUBLIC FIT PASS
   Reference: user's approved live-page screenshots.
   Goal: preserve the approved layouts, make the public experience fit
   professional displays cleanly, and adapt by layout (not global shrinking).
   Photographer/client workflow internals are intentionally untouched.
   ========================================================================== */

:root{
  --gv-fit-shell: min(2100px, calc(100vw - 112px));
  --gv-fit-shell-mid: min(1840px, calc(100vw - 112px));
  --gv-fit-gap: clamp(14px, 1vw, 22px);
}

/* Header: keep the approved floating pill, remove the blue native click box. */
.marketing-header a:focus,
.marketing-header button:focus{outline:0!important;box-shadow:none!important}
.marketing-header .desktop-nav a:focus-visible::after{
  content:"";position:absolute;left:0;right:0;bottom:.22rem;height:3px;
  border-radius:999px;background:var(--accent)
}
.marketing-header .brand:focus-visible,
.marketing-header .header-login:focus-visible,
.marketing-header .header-dashboard:focus-visible,
.marketing-header .header-cta:focus-visible,
.marketing-header .public-header-avatar:focus-visible{
  box-shadow:0 0 0 3px rgba(184,255,45,.42)!important
}

/* HOME — compact copy; product appears much earlier. */
.marketing-hero{
  padding:clamp(26px,2vw,44px) var(--gv-public-section-x) clamp(34px,2.8vw,54px)!important;
}
.hero-copy{width:min(1320px,86vw)!important}
.hero-kicker{min-height:28px!important;padding:.4rem .72rem!important;margin:0 auto!important}
.marketing-hero h1{
  max-width:1260px!important;
  margin:.72rem auto .58rem!important;
  font-size:clamp(3.65rem,3.35vw,5.35rem)!important;
  line-height:.91!important;
  letter-spacing:-.058em!important;
}
.marketing-hero .hero-copy>p{
  max-width:1180px!important;
  margin:0 auto!important;
  font-size:clamp(.94rem,.74vw,1.08rem)!important;
  line-height:1.4!important;
  white-space:normal!important;
}
.hero-actions{margin:.88rem 0 .56rem!important}
.hero-primary,.demo-link{min-height:44px!important;padding:.7rem 1.1rem!important}
.hero-trust-line{gap:.35rem 1.3rem!important}
.product-stage{
  width:min(1560px,calc(100vw - 210px))!important;
  margin:1.05rem auto 0!important;
}
.product-body{min-height:430px!important;grid-template-columns:178px minmax(0,1fr)!important}
.product-side{padding:.9rem .75rem!important}
.product-brand{margin-bottom:1.05rem!important}
.product-side .mock-nav{min-height:36px!important;padding:.48rem .58rem!important}
.mock-storage{padding:.62rem!important}
.product-main{padding:.95rem 1rem!important}
.mock-heading h3{font-size:1.55rem!important}
.mock-stats{margin:.72rem 0!important;gap:.55rem!important}
.mock-stats>div{min-height:58px!important;padding:.62rem .7rem!important}
.mock-workflow{margin-bottom:.62rem!important}
.mock-step{min-height:56px!important;padding:.52rem .58rem!important}
.mock-gallery{margin-top:.62rem!important;gap:.55rem!important}
.mock-photo{aspect-ratio:1.62!important}
.home-feature-teaser{
  width:min(1560px,calc(100vw - 210px))!important;
  margin:.82rem auto 0!important;
}
.home-feature-teaser-heading{margin-bottom:.5rem!important}
.home-feature-teaser-heading h2{font-size:1.08rem!important}
.home-feature-teaser-grid{gap:.45rem!important}
.home-feature-teaser-grid article{padding:.62rem!important;grid-template-columns:30px minmax(0,1fr)!important;gap:.5rem!important}
.home-feature-teaser-grid article>i{width:30px!important;height:30px!important}
.home-feature-teaser-grid p{font-size:.58rem!important}

/* HOW IT WORKS — exact approved five-card desktop language. */
#how-it-works{
  padding:clamp(30px,2.3vw,48px) var(--gv-public-section-x) clamp(34px,2.8vw,56px)!important;
}
.workflow-v331 .workflow-light-heading{max-width:1600px!important;margin-bottom:1.7rem!important}
.workflow-v331 .workflow-light-heading h2{
  max-width:1560px!important;
  margin:.55rem auto .55rem!important;
  font-size:clamp(3.55rem,3.2vw,5.15rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  text-wrap:normal!important;
}
.workflow-v331 .workflow-heading-story{font-size:clamp(.88rem,.72vw,1.02rem)!important;line-height:1.35!important}
.workflow-v331 .workflow-showcase{
  width:var(--gv-fit-shell)!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:var(--gv-fit-gap)!important;
  padding:0!important;
  align-items:stretch!important;
}
.workflow-v331 .workflow-arrow{display:none!important}
.workflow-v331 .workflow-showcase-card{
  min-height:0!important;
  padding:.92rem .9rem .82rem!important;
  border-radius:17px!important;
  box-shadow:0 14px 34px rgba(37,32,24,.05)!important;
}
.workflow-v331 .workflow-showcase-card.story-active,
.workflow-v331 .workflow-showcase-card:hover{
  transform:none!important;border-color:#e0dbd0!important;
  box-shadow:0 14px 34px rgba(37,32,24,.05)!important;
}
.workflow-v331 .workflow-number{width:31px!important;height:31px!important;font-size:.64rem!important}
.workflow-v331 .workflow-round-icon{width:54px!important;height:54px!important;margin:.05rem auto .25rem!important}
.workflow-v331 .workflow-round-icon svg{width:29px!important;height:29px!important}
.workflow-v331 .workflow-showcase-card h3{margin:.12rem 0 .62rem!important;font-size:1.05rem!important}
.workflow-v331 .workflow-ui{
  height:286px!important;min-height:286px!important;
  padding:.72rem!important;border-radius:12px!important;
}
.workflow-v331 .workflow-showcase-card>p{display:none!important}
.workflow-v331 .workflow-showcase-card footer{
  min-height:42px!important;margin-top:.65rem!important;padding:.5rem!important;
  background:#eff8df!important;color:#2d6737!important;font-size:.69rem!important;
}
.workflow-v331 .workflow-audience{
  width:min(1740px,calc(100vw - 180px))!important;
  max-width:none!important;margin:1.15rem auto 0!important;padding:.72rem 1.05rem!important;
  min-height:68px!important;
}
.workflow-v331 .workflow-audience strong{font-size:1rem!important}
.workflow-v331 .workflow-audience>span{font-size:.82rem!important}
.workflow-v331 .workflow-audience small{font-size:.6rem!important}

/* FEATURES — approved 3×3 card composition; compact enough to land in one view. */
#features{
  padding:clamp(28px,2.2vw,46px) var(--gv-public-section-x) clamp(34px,2.8vw,56px)!important;
}
#features .section-heading{max-width:1300px!important;margin-bottom:1.45rem!important}
#features .section-heading h2{
  margin:.42rem 0 0!important;
  font-size:clamp(3.5rem,3.05vw,4.85rem)!important;
  line-height:.92!important;
}
#features .section-heading p{margin:.65rem auto 0!important;font-size:clamp(.88rem,.72vw,1rem)!important;line-height:1.4!important}
#features .feature-grid-nine{
  width:var(--gv-fit-shell-mid)!important;max-width:none!important;
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:var(--gv-fit-gap)!important;
}
#features .feature-grid-nine article,
#features .feature-grid-nine article.feature-large{
  grid-column:auto!important;
  min-height:245px!important;height:auto!important;
  grid-template-columns:minmax(145px,.88fr) minmax(0,1.22fr)!important;
  padding:1rem!important;column-gap:1rem!important;border-radius:16px!important;
}
#features .feature-number{display:none!important}
#features .feature-grid h3{font-size:1.05rem!important;margin:.15rem 0 .45rem!important}
#features .feature-grid p{font-size:.79rem!important;line-height:1.45!important}
#features .feature-visual,
#features .group-vote-visual,
#features .filename-visual,
#features .watermark-visual,
#features .export-visual,
#features .private-link-visual,
#features .expiry-visual,
#features .feedback-visual,
#features .device-visual{
  height:188px!important;min-height:188px!important;
}

/* PRICING — approved black composition, compressed vertically so the entire
   pricing decision fits a professional display without shrinking the cards. */
#pricing{
  padding:clamp(30px,2.25vw,48px) var(--gv-public-section-x) clamp(30px,2.3vw,48px)!important;
  min-height:auto!important;
}
#pricing .pricing-heading,
#pricing .free-test-card,
#pricing .pricing-grid{width:min(1780px,calc(100vw - 150px))!important;max-width:none!important}
#pricing .pricing-heading{
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr)!important;
  gap:clamp(3rem,6vw,8rem)!important;
  align-items:end!important;margin-bottom:1.1rem!important;
}
#pricing .pricing-heading h2{
  max-width:760px!important;margin:.4rem 0 0!important;
  font-size:clamp(3.65rem,3.1vw,4.95rem)!important;
  line-height:.92!important;
}
#pricing .pricing-heading>p{max-width:600px!important;font-size:.92rem!important;line-height:1.45!important;margin-bottom:.35rem!important}
#pricing .free-test-card{
  min-height:94px!important;margin-bottom:.9rem!important;padding:.95rem 1.2rem!important;
  border-radius:16px!important;gap:1.2rem!important;
}
#pricing .free-test-copy{min-width:420px!important}
#pricing .free-test-card h3{font-size:1.12rem!important;margin:.18rem 0!important}
#pricing .free-test-card p{font-size:.72rem!important}
#pricing .free-test-metrics{gap:0!important;flex:1!important}
#pricing .free-test-metrics>span{min-height:50px!important;padding:.18rem .55rem!important}
#pricing .free-test-metrics b{font-size:.92rem!important}
#pricing .free-test-metrics small{font-size:.53rem!important}
#pricing .free-test-card button{min-width:160px!important;min-height:43px!important}
#pricing .pricing-grid{gap:14px!important}
#pricing .pricing-grid article{
  min-height:390px!important;height:390px!important;
  padding:1.22rem!important;border-radius:17px!important;
}
#pricing .popular-tag{top:-12px!important;right:50%!important;transform:translateX(50%)!important;padding:.3rem .55rem!important}
#pricing .plan-top h3{margin:.72rem 0 .2rem!important;font-size:2.7rem!important}
#pricing .plan-top h3 small{font-size:.72rem!important}
#pricing .plan-top p{min-height:28px!important;font-size:.76rem!important}
#pricing .pricing-grid ul{gap:.55rem!important;padding:.85rem 0 1rem!important;margin:.8rem 0 0!important}
#pricing .pricing-grid li{font-size:.76rem!important}
#pricing .pricing-grid article>button{min-height:42px!important}
#pricing .cancel-note{font-size:.58rem!important;margin-top:.55rem!important}
#pricing .extra-plan-badges{margin:.8rem auto 0!important}
#pricing .extra-plan-badges span{font-size:.64rem!important;padding:.48rem .7rem!important}
#pricing .pricing-note{margin:.65rem auto 0!important;font-size:.66rem!important}

/* REVIEWS + PRIVACY — treated as one compact trust view on desktop. */
#reviews{
  padding:clamp(28px,2.1vw,44px) var(--gv-public-section-x) 24px!important;
}
#reviews>.section-heading{
  width:min(1740px,calc(100vw - 150px))!important;max-width:none!important;
  grid-template-columns:minmax(0,1fr) minmax(380px,.85fr)!important;
  gap:clamp(3rem,6vw,7rem)!important;margin-bottom:1rem!important;align-items:center!important;
}
#reviews .section-heading h2{
  margin:.35rem 0 0!important;
  font-size:clamp(3.7rem,3.15vw,5rem)!important;
  line-height:.91!important;
}
#reviews .section-heading>p{font-size:.9rem!important;line-height:1.45!important}
#reviews .public-review-stats,
#reviews .public-testimonials{width:min(1580px,calc(100vw - 190px))!important;max-width:none!important}
#reviews .review-threshold{padding:1.7rem 2rem!important;border-radius:17px!important;min-height:168px!important}
#reviews .review-star{width:58px!important;height:58px!important;font-size:2rem!important}
#reviews + .security-section{
  padding:22px var(--gv-public-section-x) clamp(34px,2.7vw,54px)!important;
}
.security-card{
  width:min(1740px,calc(100vw - 150px))!important;max-width:none!important;
  grid-template-columns:170px minmax(0,1.25fr) minmax(360px,.85fr)!important;
  gap:clamp(2rem,4vw,4.5rem)!important;
  padding:2.15rem 2.6rem!important;border-radius:22px!important;
}
.security-animation{min-height:220px!important}
.security-card h2{
  max-width:650px!important;margin:.38rem 0 .55rem!important;
  font-size:clamp(3.6rem,3.25vw,5rem)!important;line-height:.89!important;
}
.security-card>div:nth-child(2)>p:not(.security-trust-line){font-size:.88rem!important;line-height:1.45!important;margin:.55rem 0!important}
.security-trust-line{font-size:.78rem!important;padding:.72rem .85rem!important;margin-top:.7rem!important}
.security-list{gap:.58rem!important}
.security-list span{padding:.65rem .7rem!important;font-size:.7rem!important}

/* 1600–1999: keep desktop structure but use slightly tighter real dimensions. */
@media(min-width:1600px) and (max-width:1999px){
  .product-stage,.home-feature-teaser{width:min(1420px,calc(100vw - 150px))!important}
  .product-body{min-height:410px!important}
  .workflow-v331 .workflow-showcase{width:min(1770px,calc(100vw - 94px))!important}
  .workflow-v331 .workflow-ui{height:270px!important;min-height:270px!important}
  #features .feature-grid-nine{width:min(1650px,calc(100vw - 96px))!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{min-height:230px!important;grid-template-columns:135px minmax(0,1fr)!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual,#features .device-visual{height:170px!important;min-height:170px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(1600px,calc(100vw - 100px))!important}
  #reviews>.section-heading,.security-card{width:min(1600px,calc(100vw - 100px))!important}
}

/* Laptop / smaller desktop: reflow instead of shrinking tiny. */
@media(min-width:1100px) and (max-width:1599px){
  .marketing-hero h1{font-size:clamp(3.3rem,4.1vw,4.5rem)!important}
  .product-stage,.home-feature-teaser{width:min(1240px,calc(100vw - 70px))!important}
  .product-body{min-height:400px!important}
  .workflow-v331 .workflow-showcase{
    width:min(1320px,calc(100vw - 70px))!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:16px!important;
  }
  .workflow-v331 .workflow-showcase-card{grid-column:span 2!important}
  .workflow-v331 .workflow-showcase-card:nth-of-type(4){grid-column:2/span 2!important}
  .workflow-v331 .workflow-showcase-card:nth-of-type(5){grid-column:4/span 2!important}
  .workflow-v331 .workflow-ui{height:270px!important;min-height:270px!important}
  #features .feature-grid-nine{width:min(1320px,calc(100vw - 70px))!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:120px minmax(0,1fr)!important;min-height:220px!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual,#features .device-visual{height:158px!important;min-height:158px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(1320px,calc(100vw - 70px))!important}
  #pricing .pricing-grid article{height:380px!important;min-height:380px!important}
  #reviews>.section-heading,.security-card{width:min(1320px,calc(100vw - 70px))!important}
}

/* Tablets: clear 2-column cards; no tiny five-column compression. */
@media(min-width:768px) and (max-width:1099px){
  .marketing-hero h1{font-size:clamp(3rem,6vw,4rem)!important}
  .marketing-hero .hero-copy>p{max-width:760px!important}
  .product-stage,.home-feature-teaser{width:calc(100vw - 34px)!important}
  .home-feature-teaser-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-feature-teaser-grid article:last-child{grid-column:1/-1!important}
  .workflow-v331 .workflow-showcase{width:min(900px,calc(100vw - 34px))!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .workflow-v331 .workflow-showcase-card{grid-column:auto!important}
  .workflow-v331 .workflow-showcase-card:last-of-type{grid-column:1/-1!important;width:calc(50% - 7px)!important;justify-self:center!important}
  .workflow-v331 .workflow-ui{height:260px!important;min-height:260px!important}
  .workflow-v331 .workflow-audience{width:min(900px,calc(100vw - 34px))!important}
  #features .feature-grid-nine{width:min(920px,calc(100vw - 34px))!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:130px minmax(0,1fr)!important;min-height:225px!important}
  #pricing .pricing-heading{grid-template-columns:1fr!important;gap:1rem!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:min(920px,calc(100vw - 34px))!important}
  #pricing .free-test-card{display:grid!important;grid-template-columns:1fr auto!important}
  #pricing .free-test-metrics{grid-column:1/-1!important;order:3!important}
  #pricing .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .pricing-grid article{height:auto!important;min-height:390px!important}
  #pricing .pricing-grid article:last-child{grid-column:1/-1!important;width:calc(50% - 7px)!important;justify-self:center!important}
  #reviews>.section-heading{grid-template-columns:1fr!important;gap:1rem!important}
  #reviews>.section-heading,#reviews .public-review-stats,#reviews .public-testimonials,.security-card{width:min(920px,calc(100vw - 34px))!important}
  .security-card{grid-template-columns:140px 1fr!important;padding:1.8rem!important}
  .security-list{grid-column:1/-1!important}
}

/* Phones: natural vertical flow. Readability wins over viewport fitting. */
@media(max-width:767px){
  .marketing-hero{padding:1.5rem .85rem 2rem!important}
  .marketing-hero h1{font-size:clamp(2.45rem,11vw,3.35rem)!important;line-height:.94!important}
  .marketing-hero .hero-copy>p{font-size:.88rem!important;line-height:1.4!important}
  .hero-story-copy span{display:inline!important}
  .product-stage,.home-feature-teaser{width:100%!important}
  .product-body{min-height:auto!important;grid-template-columns:1fr!important}
  .product-side{display:none!important}
  .product-main{padding:.75rem!important}
  .mock-heading h3{font-size:1.25rem!important}
  .mock-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mock-workflow{grid-template-columns:1fr!important}
  .mock-step{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .mock-gallery{grid-template-columns:1fr!important}
  .home-feature-teaser-grid{grid-template-columns:1fr!important}
  #how-it-works,#features,#pricing,#reviews{padding:42px 12px 50px!important}
  .workflow-v331 .workflow-light-heading h2{font-size:clamp(2.5rem,11vw,3.25rem)!important}
  .workflow-v331 .workflow-light-heading h2 br{display:none!important}
  .workflow-v331 .workflow-showcase{width:100%!important;grid-template-columns:1fr!important;gap:12px!important}
  .workflow-v331 .workflow-showcase-card,.workflow-v331 .workflow-showcase-card:last-of-type{grid-column:auto!important;width:100%!important}
  .workflow-v331 .workflow-ui{height:auto!important;min-height:245px!important}
  .workflow-v331 .workflow-audience{width:100%!important;grid-template-columns:auto 1fr!important}
  #features .section-heading h2{font-size:clamp(2.55rem,11vw,3.35rem)!important}
  #features .feature-grid-nine{width:100%!important;grid-template-columns:1fr!important}
  #features .feature-grid-nine article,#features .feature-grid-nine article.feature-large{grid-template-columns:120px minmax(0,1fr)!important;min-height:210px!important}
  #features .feature-visual,#features .group-vote-visual,#features .filename-visual,#features .watermark-visual,#features .export-visual,#features .private-link-visual,#features .expiry-visual,#features .feedback-visual,#features .device-visual{height:155px!important;min-height:155px!important}
  #pricing .pricing-heading,#pricing .free-test-card,#pricing .pricing-grid{width:100%!important}
  #pricing .pricing-heading{grid-template-columns:1fr!important;gap:.8rem!important}
  #pricing .pricing-heading h2{font-size:clamp(2.65rem,11vw,3.5rem)!important}
  #pricing .free-test-card{display:grid!important;grid-template-columns:1fr!important}
  #pricing .free-test-copy{min-width:0!important}
  #pricing .free-test-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .free-test-card button{width:100%!important}
  #pricing .pricing-grid{grid-template-columns:1fr!important}
  #pricing .pricing-grid article,#pricing .pricing-grid article:last-child{width:100%!important;height:auto!important;min-height:380px!important;grid-column:auto!important}
  #reviews>.section-heading,#reviews .public-review-stats,#reviews .public-testimonials,.security-card{width:100%!important}
  #reviews>.section-heading{grid-template-columns:1fr!important;gap:.8rem!important}
  #reviews .section-heading h2{font-size:clamp(2.65rem,11vw,3.5rem)!important}
  #reviews .review-threshold{padding:1.15rem!important;min-height:145px!important}
  #reviews + .security-section{padding:18px 12px 44px!important}
  .security-card{grid-template-columns:1fr!important;padding:1.3rem!important}
  .security-animation{min-height:150px!important}
  .security-card h2{font-size:clamp(2.65rem,11vw,3.5rem)!important}
  .security-list{grid-template-columns:1fr!important}
}
/* V3.7.6.3 final micro-polish */
#pricing .popular-tag{white-space:nowrap!important;line-height:1!important}
/* iPad Pro / 901–1099px: when the sidebar is hidden, remove its grid column too. */
@media(min-width:901px) and (max-width:1099px){
  .product-body{grid-template-columns:1fr!important;min-height:470px!important}
  .product-side{display:none!important}
  .product-main{grid-column:1!important;width:auto!important;min-width:0!important;padding:.9rem!important}
  .mock-heading{grid-template-columns:minmax(0,1fr) auto!important}
  .mock-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .mock-workflow{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mock-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
#pricing .free-test-card{margin-bottom:1.25rem!important}
#pricing .popular-tag{z-index:4!important}

/* V3.7.6.5 — native iPhone scrolling and definitive phone layout.
   A closed menu is absent, the root is the only vertical scroller, and open
   workspace layers use CSS scroll locking instead of a document touch guard. */
.mobile-menu:not(.is-open){display:none!important}
.mobile-menu.is-open{display:block!important}
html{scroll-behavior:auto!important}
html.modal-open,body.modal-open{height:100%!important;overflow:hidden!important}
.modal-panel,.lightbox-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

@media(max-width:767px){
  html:not(.mobile-menu-open):not(.modal-open){
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
  }
  body:not(.mobile-menu-open):not(.modal-open){
    height:auto!important;
    min-height:100%!important;
    overflow:visible!important;
  }
  .marketing-page:not(.hidden){
    height:auto!important;
    min-height:0!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    touch-action:auto!important;
  }

  :root{--gv-public-header-h:54px;--gv-public-header-top:6px;--gv-public-anchor-gap:10px;--gv-public-section-x:14px}
  .marketing-header{
    left:7px!important;right:7px!important;top:6px!important;
    min-height:54px!important;padding:.32rem .48rem!important;
    border-radius:16px!important;gap:.2rem!important;
  }
  .marketing-header .brand{font-size:1.1rem!important}
  .marketing-header .header-login,.marketing-header .header-dashboard{
    min-height:44px!important;padding:.42rem .3rem!important;font-size:.64rem!important;
  }
  .marketing-header .header-cta{
    min-width:0!important;min-height:44px!important;padding:.48rem .52rem!important;
    border-radius:13px!important;font-size:.65rem!important;
  }
  .marketing-header .menu-button{width:44px!important;height:44px!important}
  .marketing-page{padding-top:calc(var(--gv-public-header-h) + var(--gv-public-header-top) + 8px)!important}

  #features .section-heading h2 br,#features .section-heading p br{display:none!important}
  #features .feature-grid-nine article,
  #features .feature-grid-nine article.feature-large{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto!important;
    row-gap:.7rem!important;column-gap:0!important;
    min-height:0!important;height:auto!important;padding:1rem!important;
  }
  #features .feature-visual,
  #features .group-vote-visual,
  #features .filename-visual,
  #features .watermark-visual,
  #features .export-visual,
  #features .private-link-visual,
  #features .expiry-visual,
  #features .feedback-visual{
    position:relative!important;inset:auto!important;
    grid-column:1!important;grid-row:1!important;
    width:100%!important;max-width:none!important;
    height:160px!important;min-height:160px!important;
    margin:0!important;
  }
  #features .feature-grid h3{
    grid-column:1!important;grid-row:2!important;align-self:auto!important;
    max-width:none!important;margin:0!important;font-size:1.18rem!important;
  }
  #features .feature-grid p{
    grid-column:1!important;grid-row:3!important;
    max-width:none!important;margin:0!important;padding:0!important;
    font-size:.92rem!important;line-height:1.5!important;
  }

  .marketing-footer{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:1rem .75rem!important;padding:1.55rem 1rem 1rem!important;
  }
  .marketing-footer .footer-brand,.marketing-footer>div:nth-child(4),.marketing-footer .footer-bottom{grid-column:1/-1!important}
  .marketing-footer>div:nth-child(2){grid-column:1!important}
  .marketing-footer>div:nth-child(3){grid-column:2!important}
  .marketing-footer>div:not(.footer-brand):not(.footer-bottom){gap:0!important}
  .marketing-footer b{margin:0 0 .18rem!important;font-size:.86rem!important}
  .marketing-footer a,.marketing-footer button{
    display:flex!important;align-items:center!important;min-height:44px!important;
    padding:0!important;font-size:.76rem!important;line-height:1.25!important;text-align:left!important;
  }
  .footer-brand p{max-width:100%!important;margin:.4rem 0 0!important;font-size:.77rem!important;line-height:1.45!important}
  .marketing-footer>div:nth-child(4){
    display:grid!important;grid-template-columns:repeat(3,minmax(0,max-content))!important;
    align-items:center!important;gap:0 .9rem!important;
  }
  .marketing-footer>div:nth-child(4)>b{grid-column:1/-1!important}
  .footer-bottom{
    display:grid!important;grid-template-columns:1fr!important;gap:.2rem!important;
    margin-top:0!important;padding-top:.75rem!important;font-size:.65rem!important;
  }
}

@media(max-width:350px){
  .marketing-header .brand{font-size:1rem!important}
  .marketing-header .header-login,.marketing-header .header-dashboard{font-size:.6rem!important}
  .marketing-header .header-cta{padding-left:.4rem!important;padding-right:.4rem!important;font-size:.6rem!important}
  .marketing-footer>div:nth-child(4){gap:0 .55rem!important}
}

/* V3.7.6.6 — pricing highlight must remain a complete pill.
   Earlier responsive rules set both horizontal edges to 50%, collapsing the
   badge background while its text overflowed. One centered anchor owns it. */
#pricing .pricing-grid,
#pricing .pricing-grid article{overflow:visible!important}
#pricing .popular-tag{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  left:50%!important;
  right:auto!important;
  top:0!important;
  width:max-content!important;
  max-width:calc(100% - 2rem)!important;
  min-width:0!important;
  transform:translate(-50%,-50%)!important;
  padding:.38rem .86rem!important;
  border-radius:999px!important;
  background:var(--accent)!important;
  color:#111!important;
  white-space:nowrap!important;
  line-height:1!important;
  z-index:6!important;
}

/* V3.7.6.7 — deterministic hamburger navigation on iOS/iPadOS.
   Lock the page at its real saved position while the fixed menu is open;
   JavaScript restores that position before measuring an anchor destination. */
html.mobile-menu-open{height:100%!important;overflow:hidden!important}
body.mobile-menu-open{
  position:fixed!important;
  left:0!important;
  right:0!important;
  top:var(--gv-mobile-menu-lock-top,0px)!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  padding-right:var(--mobile-menu-scrollbar-comp,0px)!important;
}
.mobile-menu{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch;
}

/* =========================================================
   GaliVue V3.7.6.9 — complete responsive workspace pass
   One final layer owns phone/tablet dashboard geometry so older responsive
   rules cannot reintroduce sticky overlaps, viewport zoom or wide controls.
   ========================================================= */

#dashboardDialog,
#dashboardPanel,
#dashboardPanel .workflow-panel,
#dashboardPanel .create-panel,
.modal-layer,
.modal-panel,
.client-view,
.client-shell{
  min-width:0;
}

#dashboardPanel,
#dashboardPanel .workflow-panel,
#dashboardPanel .create-panel,
#dashboardPanel .ai-beta-card,
#dashboardPanel .project,
.modal-panel,
.client-shell{
  max-width:100%;
}

/* Preserve filenames on one readable line while all surrounding copy wraps. */
.photo-name,
.queue-item>span:first-child,
.final-file-details>strong,
.final-file>div:nth-child(2)>strong,
.ai-thumb>span,
.burst-thumb>span{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

@media(max-width:1024px){
  /* Sticky project bars caused the project title and steps to slide underneath
     one another on iPhone/iPad. Tablet and phone workspaces use normal flow. */
  #dashboardPanel .active-project-topbar{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    margin:.35rem 0 .65rem!important;
  }
  #dashboardPanel.project-mode .icon-step-strip{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    margin:.35rem 0 .8rem!important;
    background:transparent!important;
    backdrop-filter:none!important;
  }

  /* Half-screen/tablet forms use one card per row. */
  #dashboardPanel .workflow-choice-grid,
  #dashboardPanel .ai-preset-grid,
  #dashboardPanel .ai-filter-grid,
  #dashboardPanel .result-folder-grid,
  #dashboardPanel .form-grid.three-fields,
  #dashboardPanel .form-grid.watermark-fields,
  #dashboardPanel .limit-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  #dashboardPanel .workflow-choice,
  #dashboardPanel .ai-preset,
  #dashboardPanel .ai-filter,
  #dashboardPanel .result-folder,
  #dashboardPanel .limit-card{
    width:100%;
    min-width:0;
  }

  /* Progress is compact, complete and non-scrolling on tablets. */
  #dashboardPanel .icon-step-strip{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:.45rem!important;
    width:100%!important;
    overflow:visible!important;
    padding:.35rem 0!important;
  }
  #dashboardPanel .client-strip{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  #dashboardPanel .step-arrow{display:none!important}
  #dashboardPanel .icon-step{
    width:100%!important;
    min-width:0!important;
    min-height:86px;
    padding:.65rem .35rem!important;
  }

  .dashboard-filter-panel,
  .usage-details-grid,
  .final-setup-stats,
  .delivery-summary,
  .match-lists,
  .final-files{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .gallery,
  .delivery-subgallery,
  .ai-preview-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .project-title-row,
  .round-row,
  .final-matched-complete,
  .delivery-file-summary,
  .delivery-preview-head,
  .review-heading{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .project-management,
  .project-actions,
  .round-actions,
  .toolbar,
  .final-file-actions,
  .final-matched-actions,
  .final-delivery-actions,
  .link-control-actions,
  .selection-download-actions,
  .selection-next-actions{
    width:100%;
  }
}

@media(max-width:767px){
  /* A 16px computed size prevents Safari's automatic form-field zoom. */
  .modal-layer input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
  .modal-layer select,
  .modal-layer textarea,
  #dashboardDialog input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
  #dashboardDialog select,
  #dashboardDialog textarea,
  .client-view input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
  .client-view select,
  .client-view textarea{
    font-size:16px!important;
  }

  #dashboardPanel{
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;
    scroll-padding-top:64px;
    overflow-x:hidden!important;
  }
  #dashboardPanel .workspace-head{
    position:sticky!important;
    top:0!important;
    z-index:30!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:.55rem!important;
    min-height:54px!important;
    margin:calc(-1 * max(8px,env(safe-area-inset-top))) 0 0!important;
    padding:max(8px,env(safe-area-inset-top)) 0 .55rem!important;
    background:rgba(245,242,235,.97)!important;
    border-bottom:1px solid rgba(222,216,205,.85)!important;
    backdrop-filter:blur(12px)!important;
  }
  #dashboardPanel .workspace-brand{
    gap:.45rem!important;
    overflow:hidden;
  }
  #dashboardPanel .workspace-brand-mark{
    display:inline-flex!important;
    flex:0 0 auto;
    font-size:.92rem!important;
  }
  #dashboardPanel .workspace-brand-copy{overflow:hidden}
  #dashboardPanel .workspace-brand-copy>small{display:none}
  #dashboardPanel .workspace-title-nav{display:block!important;overflow:hidden}
  #dashboardPanel .workspace-brand h2{
    margin:0!important;
    font-size:1rem!important;
    line-height:1.15!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  #dashboardPanel .workspace-head-actions{
    gap:.4rem!important;
    margin-left:0!important;
  }
  #dashboardPanel .new-project-head-button{
    min-height:44px;
    padding:.55rem .7rem!important;
    font-size:.68rem!important;
  }
  #dashboardPanel .profile-avatar-button{
    width:44px;
    height:44px;
  }

  #dashboardPanel .active-project-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:.5rem!important;
    padding:.65rem!important;
    border-radius:14px!important;
  }
  #dashboardPanel .active-project-breadcrumb{
    display:grid!important;
    grid-template-columns:auto auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:.45rem!important;
  }
  #dashboardPanel .active-project-breadcrumb .text-button{
    min-height:44px;
    padding:.45rem .2rem!important;
    font-size:.82rem!important;
    white-space:nowrap;
  }
  #dashboardPanel .active-project-breadcrumb strong{
    min-width:0;
    font-size:.84rem!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  #dashboardPanel .active-project-status{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:.5rem!important;
  }
  #dashboardPanel .active-project-status>span{
    min-width:0;
    font-size:.72rem!important;
    white-space:normal;
  }
  #dashboardPanel #activeProjectSaveLeave{
    width:auto!important;
    min-height:44px;
    padding:.55rem .75rem!important;
    font-size:.76rem!important;
    white-space:nowrap;
  }

  /* Six AI steps / five client steps remain visible without oversized cards. */
  #dashboardPanel .icon-step-strip,
  #dashboardPanel .client-strip{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:.4rem!important;
  }
  #dashboardPanel .icon-step{
    min-height:72px!important;
    padding:.5rem .25rem!important;
    border-radius:13px!important;
  }
  #dashboardPanel .icon-step b{
    left:5px!important;
    top:5px!important;
    padding:2px 5px!important;
    font-size:.58rem!important;
  }
  #dashboardPanel .icon-step i{
    margin:.65rem auto .2rem!important;
    font-size:1.2rem!important;
  }
  #dashboardPanel .icon-step span{
    display:block;
    font-size:.68rem!important;
    line-height:1.15;
    overflow-wrap:anywhere;
  }

  #dashboardPanel .project-launcher,
  #dashboardPanel .workflow-panel,
  #dashboardPanel .create-panel,
  #dashboardPanel .ai-beta-card,
  #dashboardPanel .project{
    margin:.55rem 0!important;
    padding:.8rem!important;
    border-radius:16px!important;
  }
  #dashboardPanel .ai-project-first,
  #dashboardPanel .guided-form-card{
    padding:.8rem!important;
    border-radius:15px!important;
  }
  #dashboardPanel .ai-first-title{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:.65rem!important;
  }
  #dashboardPanel .ai-first-title .workflow-icon,
  #dashboardPanel .guided-form-icon{
    width:42px!important;
    height:42px!important;
    font-size:1.2rem!important;
  }
  #dashboardPanel .ai-first-title h3,
  #dashboardPanel .guided-form-card h3{
    font-size:1.1rem!important;
    line-height:1.2!important;
    overflow-wrap:anywhere;
  }
  #dashboardPanel .ai-first-title p,
  #dashboardPanel .guided-form-card p,
  #dashboardPanel .form-help,
  #dashboardPanel .workflow-message{
    font-size:.82rem!important;
    line-height:1.4!important;
  }
  #dashboardPanel .ai-gated.is-locked{
    opacity:.68!important;
    filter:none!important;
  }

  .modal-panel{
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
    overflow-x:hidden!important;
    scroll-padding-top:58px;
  }
  .modal-panel .dialog-head{
    top:calc(-1 * max(10px,env(safe-area-inset-top)))!important;
    margin-top:calc(-1 * max(10px,env(safe-area-inset-top)))!important;
    padding:max(10px,env(safe-area-inset-top)) 0 .65rem!important;
    background:rgba(245,242,235,.97)!important;
    backdrop-filter:blur(12px)!important;
  }
  .modal-panel .dialog-head h2{
    max-width:100%;
    margin:.15rem 0!important;
    font-size:clamp(1.45rem,7vw,1.9rem)!important;
    line-height:1.08!important;
    overflow-wrap:anywhere;
  }

  #dashboardPanel .ai-upload-actions,
  #dashboardPanel .ai-queue-actions,
  #dashboardPanel .future-action-row,
  #dashboardPanel .folder-actions,
  #dashboardPanel .ai-selected-folder-actions,
  #dashboardPanel .ai-photo-actions,
  #dashboardPanel .current-work-actions,
  #dashboardPanel .capacity-solutions,
  .project-management,
  .project-actions,
  .round-actions,
  .toolbar,
  .upload-post-actions,
  .drop-zone-actions,
  .selection-download-actions,
  .selection-next-actions,
  .final-file-actions,
  .final-matched-actions,
  .final-delivery-actions,
  .link-control-actions,
  .delivery-summary-actions,
  .delivery-category-downloads,
  .delivery-client-actions,
  .review-actions,
  .confirm-actions,
  .delivery-intro-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:.55rem!important;
    width:100%!important;
  }
  #dashboardPanel .ai-upload-actions>*,
  #dashboardPanel .ai-queue-actions>*,
  #dashboardPanel .future-action-row>*,
  #dashboardPanel .folder-actions>*,
  #dashboardPanel .ai-selected-folder-actions>button,
  #dashboardPanel .ai-photo-actions>*,
  #dashboardPanel .current-work-actions>*,
  #dashboardPanel .capacity-solutions>*,
  .project-management>*,
  .project-actions>*,
  .project-actions>.share-control>button,
  .round-actions>*,
  .toolbar>*,
  .upload-post-actions>*,
  .drop-zone-actions>*,
  .selection-download-actions>*,
  .selection-next-actions>*,
  .final-file-actions>*,
  .final-matched-actions>*,
  .final-delivery-actions>*,
  .final-delivery-actions #finalShareSlot,
  .final-delivery-actions #finalShareSlot>*,
  .link-control-actions>*,
  .delivery-summary-actions>*,
  .delivery-category-downloads>*,
  .delivery-client-actions>*,
  .review-actions>*,
  .confirm-actions>*,
  .delivery-intro-actions>*{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  #dashboardPanel .additional-upload-head,
  #dashboardPanel .ai-client-handoff-banner,
  #dashboardPanel .linked-selection-allocation>div:first-child,
  .upload-summary,
  .delivery-expiry-create,
  .plan-attention-banner,
  .reselection-preview-banner{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  #dashboardPanel .ai-client-handoff-banner>button,
  .delivery-expiry-create select,
  .delivery-expiry-create input{
    width:100%!important;
  }

  .client-shell{
    width:100%!important;
    padding:max(1rem,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
    overflow-x:hidden;
  }
  .client-brand-row{
    align-items:center!important;
    gap:.65rem!important;
    margin-bottom:1.35rem!important;
  }
  .client-brand-row .brand{font-size:1rem!important}
  .privacy-pill{
    max-width:62%;
    padding:.48rem .62rem!important;
    font-size:.7rem!important;
    text-align:center;
    white-space:normal;
  }
  .client-header{
    align-items:stretch!important;
    flex-direction:column!important;
    gap:.85rem!important;
  }
  .client-header h1{
    margin:.45rem 0!important;
    font-size:clamp(2rem,10.5vw,3.15rem)!important;
    line-height:.96!important;
    overflow-wrap:anywhere;
  }
  .client-header p{font-size:.95rem!important;line-height:1.45!important}
  .client-header>.primary{width:100%!important;min-height:48px}
  .rule-strip,
  .gallery,
  .delivery-subgallery,
  .ai-preview-grid,
  .delivery-summary,
  .match-lists,
  .final-files,
  .final-setup-stats{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .sticky-stats{
    position:static!important;
    top:auto!important;
    backdrop-filter:none!important;
  }
  .stats{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .stats>span{justify-content:center;text-align:center;min-width:0}
  .photo,.delivery-photo{min-width:0}
  .stars{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .stars button{min-width:0!important;padding:.72rem .3rem!important}
  .photo-selection-tools,
  .delivery-file-meta{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .selection-state,.remove-photo,.delivery-file-meta .download-link{width:100%!important;text-align:center}
  .delivery-summary-panel,
  .delivery-review,
  .selection-download-block,
  .final-delivery-setup{
    padding:.85rem!important;
    border-radius:16px!important;
  }
  .review-scale{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  .review-score{width:100%!important;min-width:0!important}
  .confirm-summary li{
    align-items:flex-start;
    flex-direction:column;
    gap:.35rem;
  }
  .toast{
    left:12px!important;
    right:12px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    transform:translateY(25px)!important;
    border-radius:14px!important;
    text-align:center;
  }
  .toast.show{transform:translateY(0)!important}
}

@media(orientation:landscape) and (max-height:600px) and (max-width:1024px){
  #dashboardPanel .workspace-head{
    min-height:48px!important;
    padding-top:max(4px,env(safe-area-inset-top))!important;
    padding-bottom:.35rem!important;
  }
  #dashboardPanel .icon-step-strip{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  #dashboardPanel .client-strip{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(prefers-reduced-motion:reduce){
  #dashboardPanel *,
  .client-view *,
  .modal-layer *{
    scroll-behavior:auto!important;
  }
}

/* =========================================================
   GaliVue V3.7.6.10 — dashboard density + device downloads
   ========================================================= */

/* The photographer-preview heading and explanation must never join together. */
.gallery-mode-note{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:.28rem!important;
  align-items:start!important;
}
.gallery-mode-note>strong,
.gallery-mode-note>span{display:block;min-width:0}
.gallery-mode-note>span{line-height:1.45}

/* One compact dashboard row: project name, current stage, Delete and expand. */
.project-dashboard-compact{
  padding:.58rem .68rem!important;
  border-radius:16px!important;
}
.project-dashboard-summary-bar{width:100%;box-sizing:border-box}
.project-dashboard-summary-bar .completed-project-summary-heading>strong{max-width:100%}
.project-dashboard-summary-bar .project-stage-heading{line-height:1.15}
.project-dashboard-compact .completed-project-details{
  border-top:1px solid var(--line);
  margin-top:.6rem!important;
  padding-top:.65rem!important;
}

/* Plan/usage metrics use explicit labels instead of one squeezed text line. */
.usage-plan-cell{display:flex;align-items:center;gap:.5rem;min-width:0}
.usage-plan-cell>strong{font-size:.76rem;color:#3f5e1f;white-space:nowrap}
.usage-metric{display:inline-flex;align-items:center;gap:.35rem;min-width:0;color:var(--muted)}
.usage-metric>em{font-style:normal;color:var(--muted)}
.usage-metric>b{color:var(--ink);white-space:nowrap}
.usage-metric>small{font-size:.68rem;color:var(--muted);white-space:nowrap}

/* Phones save actual full-resolution photos through the OS sheet, not ZIP. */
body.mobile-save-capable .mobile-zip-option,
body.mobile-save-capable #deliveryCategoryDownloads{display:none!important}
body.mobile-save-capable #downloadFinalAll,
body.mobile-save-capable [data-save-selection-all]{
  background:var(--accent)!important;
  border-color:var(--accent)!important;
  color:#111!important;
}

@media(max-width:767px){
  .account-usage-panel{
    padding:.72rem!important;
    margin:.45rem 0 .65rem!important;
    border-radius:16px!important;
  }
  .account-usage-panel .usage-compact{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:.55rem!important;
    min-height:0!important;
  }
  .account-usage-panel .usage-compact-main{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.5rem!important;
    width:100%!important;
  }
  .account-usage-panel .usage-plan-cell{
    grid-column:1/-1;
    justify-content:space-between;
    min-height:40px;
  }
  .account-usage-panel .plan-pill{padding:.62rem .82rem!important;font-size:.75rem!important}
  .account-usage-panel .usage-metric{
    display:flex!important;
    min-height:48px;
    padding:.55rem .65rem;
    border:1px solid var(--line);
    border-radius:12px;
    background:#faf9f6;
    box-sizing:border-box;
  }
  .account-usage-panel .usage-projects,
  .account-usage-panel .usage-ai{
    align-items:flex-start!important;
    flex-direction:column!important;
    justify-content:center;
    gap:.15rem!important;
  }
  .account-usage-panel .usage-metric>em{font-size:.68rem;font-weight:800}
  .account-usage-panel .usage-metric>b{font-size:.86rem}
  .account-usage-panel .storage-usage-inline{
    grid-column:1/-1;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:.28rem .55rem!important;
  }
  .account-usage-panel .storage-usage-inline>b{text-align:right}
  .account-usage-panel .storage-mini-meter{
    grid-column:1/-1;
    width:100%!important;
    height:8px!important;
  }
  .account-usage-panel .storage-usage-inline>small{grid-column:1/-1}
  .account-usage-panel .usage-compact-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:.45rem!important;
    width:100%!important;
    margin:0!important;
  }
  .account-usage-panel .usage-plan-action{width:100%;min-height:42px;font-size:.75rem}
  .account-usage-panel .usage-inline-alert{max-width:100%;white-space:normal;border-radius:11px}

  #dashboardPanel .project-dashboard-compact{padding:.52rem!important;margin:.55rem 0!important}
  .project-dashboard-summary-bar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 34px!important;
    gap:.38rem!important;
    min-height:58px!important;
    padding:.42rem!important;
  }
  .project-dashboard-summary-bar .completed-project-summary-left{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:.38rem!important;
    width:100%!important;
    min-width:0!important;
    flex-wrap:nowrap!important;
  }
  .project-dashboard-summary-bar .completed-project-summary-toggle{min-width:0!important;width:100%!important}
  .project-dashboard-summary-bar .completed-project-summary-heading{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:.3rem!important;
    width:100%!important;
    min-width:0!important;
  }
  .project-dashboard-summary-bar .completed-project-summary-heading>strong{
    display:block;
    width:100%;
    font-size:1rem!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .project-dashboard-summary-bar .project-stage-heading{
    width:max-content;
    max-width:100%;
    padding:.3rem .48rem!important;
    font-size:.59rem!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .project-dashboard-summary-bar .completed-project-delete{
    min-width:64px;
    height:38px!important;
    min-height:38px!important;
    padding:.4rem .62rem!important;
    font-size:.7rem!important;
  }
  .project-dashboard-summary-bar .completed-project-chevron-button{
    width:34px!important;
    height:38px!important;
    min-height:38px!important;
  }
  .project-dashboard-compact .completed-project-details{margin-top:.5rem!important}

  .preview-filter-group{width:100%!important}
  .preview-filter-label{width:100%;margin-bottom:.1rem}
  .mobile-save-help{font-size:.78rem!important;line-height:1.5}
}

/* The ultrawide/desktop workspace was visually too small. Increase only the
   desktop dashboard, leaving phones, tablets and public pages untouched. */
@media(min-width:1200px){
  #dashboardPanel .workspace-head{min-height:64px;padding:.55rem .3rem .7rem!important}
  #dashboardPanel .workspace-brand-mark{font-size:1.22rem!important}
  #dashboardPanel .workspace-brand-copy>small{font-size:.67rem!important}
  #dashboardPanel .workspace-brand h2{font-size:1.28rem!important}
  #dashboardPanel .new-project-head-button{min-height:42px;padding:.68rem 1rem!important;font-size:.82rem!important}
  #dashboardPanel .profile-avatar-button{width:44px;height:44px;font-size:1rem}

  .account-usage-panel{padding:.78rem 1rem!important;margin:.5rem 0 .75rem!important;border-radius:18px!important}
  .account-usage-panel .usage-compact{min-height:48px!important;gap:1.1rem!important}
  .account-usage-panel .usage-compact-main{gap:1.15rem!important;flex-wrap:nowrap!important}
  .account-usage-panel .plan-pill{padding:.62rem .85rem!important;font-size:.8rem!important}
  .account-usage-panel .usage-plan-cell>strong{font-size:.8rem}
  .account-usage-panel .usage-metric{font-size:.82rem;gap:.45rem}
  .account-usage-panel .usage-metric>b{font-size:.88rem}
  .account-usage-panel .storage-mini-meter{width:118px;height:9px}
  .account-usage-panel .usage-plan-action{min-height:38px;padding:.58rem .85rem;font-size:.76rem}

  .dashboard-tools.dashboard-tools-collapsible{padding:.72rem .82rem;border-radius:18px}
  .dashboard-tools-collapsible .dashboard-search{font-size:.84rem}
  .dashboard-tools-collapsible .dashboard-search input{min-height:48px;padding:.76rem .9rem;font-size:.88rem}
  #dashboardProjectSummary{gap:.65rem;margin:.8rem 0}
  #dashboardProjectSummary>span{padding:.62rem .85rem;font-size:.82rem}
  .projects{gap:.75rem;margin-top:.8rem}
  .project-dashboard-compact{padding:.72rem .82rem!important}
  .project-dashboard-summary-bar{min-height:58px;padding:.48rem .55rem .48rem .82rem}
  .project-dashboard-summary-bar .completed-project-summary-heading>strong{font-size:1.25rem}
  .project-dashboard-summary-bar .project-stage-heading{font-size:.75rem;padding:.38rem .6rem}
  .project-dashboard-summary-bar .completed-project-delete{height:40px!important;min-height:40px!important;padding:.55rem .9rem!important;font-size:.78rem!important}
  .project-dashboard-summary-bar .completed-project-chevron-button{width:40px;height:40px;min-height:40px}
}

/* =========================================================
   GaliVue V3.7.7.1 — workspace navigation + responsive polish
   ========================================================= */

/* A collapsed project must size itself to its one summary row. The original
   .projects min-height stretched a single grid item into a large empty card. */
#projects.projects{
  min-height:0!important;
  align-content:start!important;
  grid-auto-rows:max-content!important;
}
#projects .project-dashboard-compact{
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
}

/* Dashboard is an explicit refresh control; the GaliVue mark remains the
   public-home link. */
#dashboardTitle.dashboard-title-refreshable{
  cursor:pointer;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:.22em;
  transition:text-decoration-color .18s ease,opacity .18s ease;
}
#dashboardTitle.dashboard-title-refreshable:hover{ text-decoration-color:var(--accent) }
#dashboardTitle.dashboard-title-refreshable:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:4px;
  border-radius:5px;
}
#dashboardTitle.dashboard-title-refreshable[aria-busy="true"]{opacity:.55;cursor:wait}

/* Reuse the project folder language for the New Project action. */
#dashboardPanel .new-project-head-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
}
.new-project-folder-icon{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:1.55rem;
  height:1.35rem;
  flex:0 0 auto;
  font-size:1.12rem;
  line-height:1;
}
.new-project-folder-icon i{
  position:absolute;
  right:-.12rem;
  bottom:-.22rem;
  display:grid;
  place-items:center;
  width:.83rem;
  height:.83rem;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--accent);
  color:#111;
  font:950 .65rem/1 Arial,sans-serif;
}
#dashboardPanel .new-project-head-button.is-dashboard-return{background:#111;color:#fff;border-color:#111}

/* The two launcher icons share one restrained GaliVue-colour animation. */
.workflow-choice .choice-animated-icon{
  will-change:transform,background-color,box-shadow;
  animation:gv-choice-icon-pulse 2.8s ease-in-out infinite;
}
#chooseClientWorkflow .choice-animated-icon{animation-delay:1.4s}
@keyframes gv-choice-icon-pulse{
  0%,100%{background:#f7f3eb;box-shadow:0 0 0 0 rgba(183,255,37,0);transform:scale(1)}
  45%,55%{background:var(--accent);box-shadow:0 0 0 8px rgba(183,255,37,.17);transform:scale(1.06)}
}

/* AI is visibly a beta: a soft lime highlight repeats behind the title while
   the copy clearly tells photographers to review the result. */
.workflow-choice .ai-choice-heading{
  position:relative;
  isolation:isolate;
  width:max-content;
  max-width:100%;
}
.workflow-choice .ai-choice-heading::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-.18rem;
  right:-.18rem;
  bottom:-.05rem;
  height:.52em;
  border-radius:999px;
  background:rgba(183,255,37,.52);
  transform:scaleX(.2);
  transform-origin:left center;
  opacity:.25;
  animation:gv-ai-title-highlight 3.2s ease-in-out infinite;
}
.workflow-choice .ai-choice-heading em{animation:gv-ai-beta-pulse 3.2s ease-in-out infinite}
@keyframes gv-ai-title-highlight{
  0%,100%{transform:scaleX(.2);opacity:.2}
  40%,65%{transform:scaleX(1);opacity:1}
}
@keyframes gv-ai-beta-pulse{
  0%,100%{background:#d8ff54;box-shadow:0 0 0 0 rgba(183,255,37,0)}
  50%{background:var(--accent);box-shadow:0 0 0 6px rgba(183,255,37,.16)}
}

@media(max-width:380px){
  #dashboardPanel .new-project-head-button:not(.is-dashboard-return){
    width:44px;
    min-width:44px;
    padding:.45rem!important;
  }
  #dashboardPanel .new-project-head-button:not(.is-dashboard-return) .new-project-label{display:none}
}

@media(prefers-reduced-motion:reduce){
  .workflow-choice .choice-animated-icon,
  .workflow-choice .ai-choice-heading::before,
  .workflow-choice .ai-choice-heading em{animation:none!important}
  .workflow-choice .choice-animated-icon{background:rgba(183,255,37,.55)}
  .workflow-choice .ai-choice-heading::before{transform:scaleX(1);opacity:.75}
}

/* GaliVue V3.7.7.1 — monthly/annual pricing and payment conditions */
.pricing-billing-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  width:min(1780px,calc(100vw - 150px));
  margin:0 auto .9rem;
}
.pricing-billing-row>p{margin:0;color:#aaa69e;font-size:.72rem;text-align:right}
.pricing-billing-toggle{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px;
  border:1px solid #40403e;
  border-radius:999px;
  background:#0d0d0d;
}
.pricing-billing-toggle button{
  min-height:38px;
  padding:.52rem .9rem;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#aaa69e;
  font-size:.75rem;
  font-weight:900;
}
.pricing-billing-toggle button span{margin-left:.3rem;color:#759a2f;font-size:.62rem}
.pricing-billing-toggle button.is-active{background:#fff;color:#111}
.pricing-billing-toggle button.is-active span{color:#4d6d1a}
#pricing .plan-top h3 b{font:inherit;color:inherit}
#pricing .plan-billing-note{
  min-height:18px;
  margin:-.05rem 0 .4rem;
  color:#5f7f25;
  font-size:.66rem;
  font-weight:850;
}
@media(min-width:1100px){
  #pricing .pricing-grid article{height:410px!important;min-height:410px!important}
}
.payment-conditions{
  width:min(1780px,calc(100vw - 150px));
  margin:1rem auto 0;
  padding:1rem 1.1rem;
  border:1px solid #353532;
  border-radius:17px;
  background:#101010;
}
.payment-conditions-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:.8rem}
.payment-conditions-heading span{color:var(--accent);font-size:.6rem;font-weight:950;letter-spacing:.12em}
.payment-conditions-heading h3{margin:.18rem 0 0;color:#fff;font-size:1.18rem}
.payment-conditions-heading p{max-width:520px;margin:0;color:#aaa69e;font-size:.7rem;text-align:right}
.payment-conditions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.payment-conditions-grid article{padding:.72rem .8rem;border:1px solid #2f2f2d;border-radius:11px;background:#181818}
.payment-conditions-grid b,.payment-conditions-grid span{display:block}
.payment-conditions-grid b{color:#fff;font-size:.72rem}
.payment-conditions-grid span{margin-top:.25rem;color:#aaa69e;font-size:.63rem;line-height:1.35}

@media(min-width:1600px) and (max-width:1999px){
  .pricing-billing-row,.payment-conditions{width:min(1600px,calc(100vw - 100px))}
}
@media(min-width:1100px) and (max-width:1599px){
  .pricing-billing-row,.payment-conditions{width:min(1320px,calc(100vw - 70px))}
}
@media(min-width:768px) and (max-width:1099px){
  .pricing-billing-row,.payment-conditions{width:min(920px,calc(100vw - 34px))}
  .payment-conditions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .test-plan-switcher-controls{flex-wrap:wrap}
}
@media(max-width:767px){
  .pricing-billing-row,.payment-conditions{width:100%}
  .pricing-billing-row{align-items:stretch;flex-direction:column}
  .pricing-billing-toggle{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .pricing-billing-row>p{text-align:left}
  .payment-conditions{padding:.9rem}
  .payment-conditions-heading{align-items:flex-start;flex-direction:column;gap:.45rem}
  .payment-conditions-heading p{text-align:left}
  .payment-conditions-grid{grid-template-columns:1fr}
  .test-plan-switcher-controls{align-items:stretch;flex-direction:column}
  .test-plan-switcher-controls select,.test-plan-switcher-controls button{width:100%}
}


/* ==========================================================================
   GaliVue V3.7.7.3 — clearer billing, internal capacity purchase, live usage
   ========================================================================== */

/* Public pricing: a visibly selected, animated GaliVue-green billing control. */
#pricing .pricing-billing-row{
  margin-bottom:1.05rem!important;
}
#pricing .pricing-billing-toggle{
  position:relative;
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:4px!important;
  min-width:390px;
  padding:5px!important;
  overflow:hidden;
  isolation:isolate;
  border-color:#454541!important;
  background:#0b0b0b!important;
}
#pricing .pricing-billing-toggle::before{
  content:"";
  position:absolute;
  z-index:0;
  top:5px;
  bottom:5px;
  left:5px;
  width:calc(50% - 7px);
  border-radius:999px;
  background:var(--accent);
  box-shadow:0 0 0 1px rgba(200,255,61,.15),0 0 22px rgba(200,255,61,.16);
  transform:translateX(0);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease;
}
#pricing .pricing-billing-toggle[data-active-period="annual"]::before{
  transform:translateX(calc(100% + 4px));
  box-shadow:0 0 0 1px rgba(200,255,61,.22),0 0 28px rgba(200,255,61,.22);
}
#pricing .pricing-billing-toggle button{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  min-height:48px!important;
  padding:.55rem .85rem!important;
  background:transparent!important;
  color:#d0ccc5!important;
  transition:color .22s ease,transform .22s ease;
}
#pricing .pricing-billing-toggle button:hover{color:#fff!important}
#pricing .pricing-billing-toggle button.is-active{
  background:transparent!important;
  color:#111!important;
  transform:translateY(-1px);
}
#pricing .billing-option-name{
  margin:0!important;
  color:inherit!important;
  font-size:.86rem!important;
  font-weight:950;
  letter-spacing:-.01em;
}
#pricing .pricing-billing-toggle button small{
  color:#8d8982;
  font-size:.64rem;
  font-weight:780;
  white-space:nowrap;
}
#pricing .pricing-billing-toggle button.is-active small{color:#3d4c1a}
#pricing .billing-save-badge{
  margin:0!important;
  padding:.25rem .42rem;
  border:1px solid rgba(200,255,61,.45);
  border-radius:999px;
  background:rgba(200,255,61,.08);
  color:var(--accent)!important;
  font-size:.65rem!important;
  font-weight:950;
  line-height:1;
  white-space:nowrap;
}
#pricing .pricing-billing-toggle button.is-active .billing-save-badge{
  border-color:rgba(17,17,17,.18);
  background:rgba(17,17,17,.09);
  color:#263407!important;
}
#pricing .pricing-billing-row>p{
  max-width:620px;
  font-size:.82rem!important;
  line-height:1.45;
}
#pricing .pricing-billing-row>p strong{color:#fff;font-weight:950}
#pricing .pricing-grid article{
  height:auto!important;
  min-height:430px!important;
}
#pricing .plan-top h3 small{
  font-size:.92rem!important;
  font-weight:800;
}
#pricing .plan-billing-note{
  min-height:22px!important;
  margin:.05rem 0 .5rem!important;
  color:#4f7620!important;
  font-size:.8rem!important;
  font-weight:900!important;
  line-height:1.3;
}
#pricing .plan-top p{
  font-size:.9rem!important;
  line-height:1.45;
}
#pricing .pricing-grid ul{
  gap:.7rem!important;
  padding:1rem 0 1.15rem!important;
}
#pricing .pricing-grid li{
  font-size:.88rem!important;
  line-height:1.4;
}
#pricing .cancel-note{
  margin-top:.65rem!important;
  font-size:.68rem!important;
  line-height:1.35;
}
#pricing .payment-conditions-heading span{font-size:.66rem!important}
#pricing .payment-conditions-heading h3{font-size:1.3rem!important}
#pricing .payment-conditions-heading p{font-size:.76rem!important;line-height:1.45}
#pricing .payment-conditions-grid b{font-size:.78rem!important}
#pricing .payment-conditions-grid span{font-size:.7rem!important;line-height:1.45}

/* Dashboard: no "Test plans" button. A small animated GaliVue-green live control opens Plan & Usage. */
.account-usage-panel .usage-live-button{
  display:inline-flex;
  align-items:center;
  gap:.52rem;
  min-height:38px;
  padding:.52rem .72rem;
  border:1px solid #b9dc68;
  border-radius:999px;
  background:#f3fadf;
  color:#314b12;
  font-size:.72rem;
  font-weight:950;
  white-space:nowrap;
  cursor:pointer;
}
.account-usage-panel .usage-live-button:hover{
  border-color:#91c51a;
  background:#ecf9ca;
  box-shadow:0 0 0 3px rgba(183,255,37,.12);
}
.usage-live-track{
  position:relative;
  display:inline-block;
  width:34px;
  height:10px;
  overflow:hidden;
  border-radius:999px;
  background:#1c2410;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.usage-live-track i{
  position:absolute;
  top:2px;
  left:2px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 8px rgba(183,255,37,.95);
  animation:galivue-usage-run 1.65s cubic-bezier(.45,0,.55,1) infinite alternate;
}
@keyframes galivue-usage-run{
  from{transform:translateX(0)}
  to{transform:translateX(24px)}
}
.usage-storage-add{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:25px;
  padding:.22rem .48rem;
  border:1px solid #b9dc68;
  border-radius:999px;
  background:#f5fbdf;
  color:#365517;
  font-size:.62rem;
  font-weight:950;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
}
.usage-storage-add:hover{background:#eaf8bf;border-color:#91c51a}

/* Plan & Usage owns capacity selection; public pricing no longer carries add-on pills. */
.plan-capacity-store{
  display:grid;
  gap:.85rem;
  margin-top:.25rem;
  padding:1rem;
  border:1px solid #c8df91;
  border-radius:16px;
  background:#f8fce9;
}
.plan-capacity-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
}
.plan-capacity-head>div{display:grid;gap:.14rem}
.plan-capacity-head small{
  color:#5b7d26;
  font-size:.6rem;
  font-weight:950;
  letter-spacing:.12em;
}
.plan-capacity-head strong{font-size:1rem}
.plan-capacity-head span{color:var(--muted);font-size:.72rem;line-height:1.4}
.capacity-secure-pill{
  flex:0 0 auto;
  padding:.38rem .55rem;
  border:1px solid #b9d879;
  border-radius:999px;
  background:#eef8cf;
  color:#456719!important;
  font-size:.58rem!important;
  font-weight:950;
  white-space:nowrap;
}
.plan-capacity-packs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.65rem;
}
.plan-capacity-pack{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:76px;
  padding:.8rem .9rem;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
}
.plan-capacity-pack:hover{border-color:#afd35c}
.plan-capacity-pack.is-selected{
  border-color:#89bd19;
  box-shadow:0 0 0 2px rgba(183,255,37,.26);
  background:#fbfff2;
}
.plan-capacity-pack>span{display:grid;gap:.18rem}
.plan-capacity-pack>span strong{font-size:.92rem}
.plan-capacity-pack>span small{color:var(--muted);font-size:.7rem}
.plan-capacity-pack>b{font-size:1.08rem;white-space:nowrap}
.plan-capacity-pack>b small{font-size:.58rem;color:var(--muted)}
.plan-capacity-checkout{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding-top:.75rem;
  border-top:1px solid #d8e7b2;
}
.plan-capacity-checkout>div{display:grid;gap:.12rem}
.plan-capacity-checkout>div>small{font-size:.58rem;font-weight:950;letter-spacing:.1em;color:#668532}
.plan-capacity-checkout>div>strong{font-size:.84rem}
.plan-capacity-checkout>div>span{font-size:.67rem;color:var(--muted)}
.plan-capacity-checkout>button{
  min-width:170px;
  min-height:42px;
  white-space:nowrap;
}
.capacity-payment-status{
  margin:0;
  color:var(--muted);
  font-size:.66rem;
  line-height:1.45;
}
.test-plan-switcher button#applyTestPlan{
  min-width:82px;
  white-space:nowrap;
}

/* Keep the full Plan & Usage modal comfortable on laptop, split-screen, tablet and phone. */
.plan-usage-panel{
  width:min(1120px,calc(100vw - 28px))!important;
}
@media(max-width:900px){
  #pricing .pricing-billing-toggle{min-width:360px}
  .plan-capacity-head,.plan-capacity-checkout{align-items:stretch;flex-direction:column}
  .plan-capacity-checkout>button{width:100%}
}
@media(max-width:767px){
  #pricing .pricing-billing-toggle{
    min-width:0;
    width:100%!important;
  }
  #pricing .pricing-billing-toggle button{
    min-height:54px!important;
    flex-wrap:wrap;
    gap:.25rem .4rem;
    padding:.5rem .45rem!important;
  }
  #pricing .billing-option-name{font-size:.82rem!important}
  #pricing .pricing-billing-toggle button small,
  #pricing .billing-save-badge{font-size:.59rem!important}
  #pricing .pricing-billing-row>p{font-size:.78rem!important}
  #pricing .pricing-grid article{min-height:0!important}
  #pricing .pricing-grid li{font-size:.86rem!important}
  #pricing .plan-billing-note{font-size:.77rem!important}
  #pricing .payment-conditions-grid span{font-size:.72rem!important}

  .account-usage-panel .storage-usage-inline>small{
    grid-column:1!important;
    min-width:0;
  }
  .account-usage-panel .storage-usage-inline .usage-storage-add{
    grid-column:2;
    justify-self:end;
    align-self:center;
  }
  .account-usage-panel .usage-live-button{
    width:100%;
    justify-content:center;
    min-height:42px;
  }
  .plan-capacity-packs{grid-template-columns:1fr}
  .plan-capacity-head{gap:.6rem}
  .capacity-secure-pill{align-self:flex-start}
}
@media(max-width:420px){
  #pricing .pricing-billing-toggle button small{display:none}
  #pricing .billing-save-badge{display:inline-flex!important}
  .plan-capacity-store{padding:.8rem}
  .plan-capacity-pack{min-height:68px;padding:.7rem .75rem}
}
@media(prefers-reduced-motion:reduce){
  #pricing .pricing-billing-toggle::before{transition:none}
  .usage-live-track i{animation:none;transform:translateX(12px)}
}


/* ==========================================================================
   GaliVue V3.7.7.3 — direct Plan & Usage actions, stronger annual savings,
   Pro 5,000-photo ceiling and all-device release coverage
   ========================================================================== */

/* Annual value should read instantly: the euro saving is the headline. */
#pricing .plan-billing-note.is-annual-saving{
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:.38rem .58rem;
  min-height:36px!important;
}
#pricing .annual-save-highlight{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:.34rem .58rem;
  border-radius:999px;
  background:#d9ff6a;
  color:#203200!important;
  font-size:1.02rem!important;
  font-weight:1000;
  letter-spacing:-.025em;
  line-height:1;
  box-shadow:0 0 0 1px rgba(65,95,8,.12);
}
#pricing .annual-save-detail{
  color:#50721f!important;
  font-size:.78rem!important;
  font-weight:900;
  line-height:1.3;
}
#pricing .ai-beta-free-feature{
  font-weight:850;
}
#pricing .ai-beta-free-feature::after{
  content:"BETA FREE";
  display:inline-flex;
  margin-left:.42rem;
  padding:.18rem .36rem;
  border-radius:999px;
  background:#e7f7c8;
  color:#476c17;
  font-size:.52rem;
  font-weight:1000;
  letter-spacing:.05em;
  vertical-align:middle;
}

/* No second choice modal. Each footer action reveals its own focused section
   inside Plan & Usage, so storage/capacity/plan management stays one step deep. */
.plan-storage-manager,
.plan-subscription-manager{
  display:grid;
  gap:.8rem;
  padding:1rem;
  border:1px solid #d9d4ca;
  border-radius:16px;
  background:#fbfaf7;
}
.plan-storage-manager.hidden,
.plan-subscription-manager.hidden{display:none!important}
.plan-direct-head{display:flex;justify-content:space-between;gap:1rem}
.plan-direct-head>div{display:grid;gap:.14rem}
.plan-direct-head small{
  color:#62872c;
  font-size:.6rem;
  font-weight:950;
  letter-spacing:.12em;
}
.plan-direct-head strong{font-size:1rem}
.plan-direct-head span{max-width:720px;color:var(--muted);font-size:.72rem;line-height:1.45}
.plan-storage-project-list{display:grid;gap:.48rem}
.plan-storage-project-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.9rem;
  min-height:58px;
  padding:.62rem .7rem;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.plan-storage-project-row>div{display:grid;gap:.16rem;min-width:0}
.plan-storage-project-row strong{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-storage-project-row span{color:var(--muted);font-size:.66rem}
.plan-storage-project-row button{flex:0 0 auto;white-space:nowrap}
.plan-direct-empty{display:grid;gap:.18rem;padding:.9rem;border:1px dashed var(--line);border-radius:12px;background:#fff}
.plan-direct-empty strong{font-size:.8rem}.plan-direct-empty span{font-size:.68rem;color:var(--muted)}
.plan-storage-all-projects{justify-self:start}

.plan-manager-billing{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  padding:5px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#efede7;
}
.plan-manager-billing button{
  min-height:42px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#6c6861;
  font-size:.75rem;
  font-weight:950;
}
.plan-manager-billing button.is-selected{background:#171717;color:#fff}
.plan-manager-billing button span{margin-left:.28rem;color:#6e9f27;font-size:.61rem}
.plan-manager-billing button.is-selected span{color:#c8ff3d}
.plan-manager-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.plan-manager-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  min-height:82px;
  padding:.72rem .78rem;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  text-align:left;
}
.plan-manager-card.is-selected{border-color:#90c526;background:#f8fde9;box-shadow:0 0 0 2px rgba(183,255,37,.18)}
.plan-manager-card>span:first-child{display:grid;gap:.18rem;min-width:0}
.plan-manager-card>span:first-child strong{font-size:.86rem}
.plan-manager-card>span:first-child small{font-size:.62rem;color:var(--muted);line-height:1.35}
.plan-manager-price{display:grid;justify-items:end;gap:.22rem;flex:0 0 auto}
.plan-manager-price b{font-size:.8rem;white-space:nowrap}
.plan-manager-price em{
  padding:.24rem .38rem;
  border-radius:999px;
  background:#d9ff6a;
  color:#36550d;
  font-size:.62rem;
  font-style:normal;
  font-weight:1000;
  white-space:nowrap;
}
.plan-manager-checkout{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding-top:.7rem;
  border-top:1px solid var(--line);
}
.plan-manager-checkout>div{display:grid;gap:.1rem}
.plan-manager-checkout small{color:#62872c;font-size:.58rem;font-weight:950;letter-spacing:.1em}
.plan-manager-checkout strong{font-size:.84rem}.plan-manager-checkout span{font-size:.67rem;color:var(--muted)}
.plan-manager-checkout button{min-width:170px;white-space:nowrap}
.plan-policy-note,.plan-pending-change{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.72rem .8rem;border-radius:13px;line-height:1.45}
.plan-policy-note{border:1px solid #dbe8ba;background:#f8fde9}.plan-policy-note strong{font-size:.72rem;white-space:nowrap}.plan-policy-note span{font-size:.68rem;color:#5f5b54}
.plan-pending-change{border:1px solid #d8d2c5;background:#fff}.plan-pending-change>div{display:grid;gap:.12rem}.plan-pending-change small{color:#62872c;font-size:.56rem;font-weight:950;letter-spacing:.1em}.plan-pending-change strong{font-size:.8rem}.plan-pending-change span{font-size:.66rem;color:var(--muted)}
.plan-change-confirmation{display:grid;gap:.78rem;margin-top:.1rem;padding:.9rem;border:1px solid #b8dd55;border-radius:15px;background:#f8fde9;box-shadow:0 8px 30px rgba(80,100,20,.08)}.plan-change-confirmation.hidden{display:none!important}.plan-confirm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.plan-confirm-head>div{display:grid;gap:.12rem}.plan-confirm-head small{color:#62872c;font-size:.56rem;font-weight:950;letter-spacing:.1em}.plan-confirm-head strong{font-size:1rem}.plan-confirm-head .icon-button{width:34px;height:34px;min-width:34px}.plan-confirm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.plan-confirm-grid>div{display:grid;gap:.18rem;padding:.62rem;background:#fff;border:1px solid #e0ddcf;border-radius:11px}.plan-confirm-grid span{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:#77736b}.plan-confirm-grid strong{font-size:.78rem;overflow-wrap:anywhere}.plan-change-confirmation p{margin:0;color:#5f5b54;font-size:.69rem;line-height:1.5}.plan-confirm-actions{display:flex;justify-content:flex-end;gap:.55rem}.plan-confirm-actions button{min-width:130px}
.test-plan-switcher.is-targeted{box-shadow:0 0 0 3px rgba(183,255,37,.3);border-color:#8ec220}

/* The Plan & Usage footer remains the single navigation row. */
.plan-usage-actions{position:sticky;bottom:0;z-index:2;background:#f5f2eb;padding-bottom:max(0px,env(safe-area-inset-bottom))}

/* Responsive release matrix: phone/Pixel/iPhone, tablet/iPad, laptop, split screen,
   desktop/ultrawide and zoom all use content-driven widths and no fixed card height. */
@media(max-width:1099px){
  #pricing .pricing-grid article{height:auto!important;min-height:410px!important}
  .plan-manager-grid{grid-template-columns:1fr}
  .plan-manager-card{min-height:70px}
}
@media(max-width:767px){
  #pricing .annual-save-highlight{font-size:.94rem!important;min-height:28px}
  #pricing .annual-save-detail{font-size:.72rem!important}
  #pricing .ai-beta-free-feature::after{font-size:.5rem}
  .plan-storage-manager,.plan-subscription-manager{padding:.8rem}
  .plan-storage-project-row{align-items:stretch;flex-direction:column}
  .plan-storage-project-row button{width:100%}
  .plan-storage-all-projects{width:100%;justify-self:stretch}
  .plan-manager-checkout{align-items:stretch;flex-direction:column}
  .plan-manager-checkout button{width:100%}
  .plan-policy-note,.plan-pending-change{align-items:stretch;flex-direction:column}
  .plan-pending-change button{width:100%}
  .plan-confirm-grid{grid-template-columns:1fr 1fr}
  .plan-confirm-actions{flex-direction:column-reverse}.plan-confirm-actions button{width:100%}
  .plan-usage-actions{position:static}
}
@media(max-width:420px){
  #pricing .plan-billing-note.is-annual-saving{align-items:flex-start;flex-direction:column;gap:.3rem}
  #pricing .annual-save-highlight{font-size:.9rem!important}
  .plan-manager-billing{border-radius:14px}
  .plan-manager-billing button{border-radius:10px;min-height:46px}
  .plan-manager-billing button span{display:block;margin:.1rem 0 0}
}
@media(min-width:2000px){
  .plan-usage-panel{width:min(1180px,calc(100vw - 64px))!important}
}
@media(prefers-reduced-motion:reduce){
  .test-plan-switcher.is-targeted{transition:none}
}

/* V3.7.7.8 — multilingual controls + long-label resilience */
.language-switcher{
  display:inline-flex;align-items:center;gap:5px;min-width:0;
  border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.9);
  padding:5px 7px;font-size:.72rem;font-weight:900;line-height:1;color:var(--ink);
}
.language-switcher .language-globe{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--soft);font-size:.72rem;flex:0 0 auto}
.language-switcher select{
  appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;
  font:inherit;font-weight:950;letter-spacing:.03em;padding:2px 13px 2px 2px;min-width:38px;max-width:52px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
  background-position:calc(100% - 7px) 50%,calc(100% - 4px) 50%;background-size:3px 3px,3px 3px;background-repeat:no-repeat;
}
.header-language-switcher{flex:0 0 auto}
.mobile-language-switcher{display:flex;width:100%;justify-content:space-between;border-radius:12px;margin:.25rem 0 .4rem;padding:.72rem .8rem;background:#fff}
.mobile-language-switcher>span{font-size:.82rem;font-weight:900}
.mobile-language-switcher select{max-width:58px}
.client-brand-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;min-width:0}
.client-language-switcher{background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.04)}
.workspace-language-switcher{padding:5px 6px;background:#fff;flex:0 0 auto}

/* Long French/German/Spanish labels must wrap instead of forcing page overflow. */
html[data-language="fr"] button,html[data-language="es"] button,html[data-language="de"] button,
html[data-language="fr"] .workflow-choice,html[data-language="es"] .workflow-choice,html[data-language="de"] .workflow-choice{
  overflow-wrap:anywhere;
}
.workspace-head,.workspace-head-actions,.client-header,.section-heading-row,.dialog-head{min-width:0}
.workspace-brand,.workspace-brand-copy,.client-header>div,.section-heading-row>div,.dialog-head>div{min-width:0}

@media(max-width:900px){
  .header-language-switcher{padding:4px 5px}
  .header-language-switcher .language-globe{display:none}
  .header-language-switcher select{padding-left:1px;max-width:44px}
}
@media(max-width:680px){
  .header-language-switcher{display:none}
  .client-brand-row{align-items:flex-start!important;gap:.6rem!important}
  .client-brand-actions{gap:.35rem;flex-wrap:wrap}
  .client-language-switcher{padding:4px 5px}
  .client-language-switcher .language-globe{display:none}
  .privacy-pill{font-size:.68rem!important;padding:.45rem .65rem!important;white-space:normal;text-align:center}
  #dashboardPanel .workspace-head-actions{gap:5px!important}
  .workspace-language-switcher{padding:4px 5px}
  .workspace-language-switcher .language-globe{display:none}
  .workspace-language-switcher select{max-width:44px;padding-right:11px}
  html[data-language="de"] .new-project-label{display:none}
  html[data-language="fr"] .new-project-head-button,html[data-language="es"] .new-project-head-button,html[data-language="de"] .new-project-head-button{padding-inline:8px}
}
@media(max-width:430px){
  .client-brand-actions{max-width:62%}
  .client-language-switcher select{font-size:.68rem}
}


/* GaliVue V3.7.7.8 — multilingual legal/support controls */
.legal-header-actions{display:flex;align-items:center;gap:14px;min-width:0}
.legal-language-switcher{flex:0 0 auto}
html[data-language="fr"] .legal-shell,html[data-language="es"] .legal-shell,html[data-language="de"] .legal-shell{overflow-wrap:anywhere}
@media (max-width:680px){
  .legal-header{gap:10px;align-items:center}
  .legal-header-actions{gap:8px;margin-left:auto}
  .legal-header-actions>a{font-size:12px;white-space:nowrap}
  .legal-language-switcher{min-width:70px}
}
@media (max-width:430px){
  .legal-header-actions>a{display:none}
  .legal-language-switcher{min-width:66px}
}

/* =========================================================
   GaliVue V3.7.7.8 — flagged language picker + final multilingual/device fit
   Flags replace the redundant globe mark in compact controls. The picker stays
   wide enough for the emoji + ISO code on iPhone/Pixel/iPad/desktop while long
   translated labels remain allowed to wrap everywhere else.
   ========================================================= */
.language-switcher .language-globe{display:none!important}
.language-switcher select{
  width:74px!important;min-width:74px!important;max-width:74px!important;
  padding-left:3px!important;padding-right:15px!important;
  white-space:nowrap!important;text-overflow:clip!important;
}
.mobile-language-switcher select{width:78px!important;min-width:78px!important;max-width:78px!important}
.client-language-switcher,.workspace-language-switcher,.legal-language-switcher{flex:0 0 auto!important}
.client-brand-actions .privacy-pill{min-width:0;overflow-wrap:anywhere}

/* Long translated UI labels must never impose a minimum width on the dashboard,
   client selection, final delivery, plan usage or nested dialogs. */
#dashboardPanel button,#dashboardPanel label,#dashboardPanel p,#dashboardPanel span,
.client-view button,.client-view label,.client-view p,.client-view span,
.plan-usage-panel button,.plan-usage-panel label,.plan-usage-panel p,.plan-usage-panel span,
.modal-panel button,.modal-panel label,.modal-panel p,.modal-panel span{
  min-width:0;
}
html[data-language="fr"] .modal-panel h1,html[data-language="fr"] .modal-panel h2,html[data-language="fr"] .modal-panel h3,
html[data-language="es"] .modal-panel h1,html[data-language="es"] .modal-panel h2,html[data-language="es"] .modal-panel h3,
html[data-language="de"] .modal-panel h1,html[data-language="de"] .modal-panel h2,html[data-language="de"] .modal-panel h3,
html[data-language="fr"] .client-view h1,html[data-language="fr"] .client-view h2,
html[data-language="es"] .client-view h1,html[data-language="es"] .client-view h2,
html[data-language="de"] .client-view h1,html[data-language="de"] .client-view h2{
  overflow-wrap:anywhere;hyphens:auto;
}

/* Tablet / half-screen: management action rows reflow instead of squeezing
   translated buttons into tiny columns. */
@media(max-width:1024px){
  .plan-usage-actions,.plan-direct-actions,.plan-manager-actions,.capacity-choice-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .plan-usage-actions>*,.plan-direct-actions>*,.plan-manager-actions>*,.capacity-choice-grid>*{width:100%!important;max-width:100%!important}
}

/* Phone header: preserve brand + language + profile access with the wider flag
   control. At narrow widths New Project keeps its icon and drops only the label. */
@media(max-width:430px){
  #dashboardPanel .new-project-label{display:none!important}
  #dashboardPanel .new-project-head-button{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;display:grid!important;place-items:center!important}
  #dashboardPanel .workspace-head-actions{gap:4px!important}
  .workspace-language-switcher select{width:70px!important;min-width:70px!important;max-width:70px!important;font-size:.68rem!important}
  .client-brand-actions{max-width:72%!important;flex-wrap:nowrap!important}
  .client-language-switcher select{width:70px!important;min-width:70px!important;max-width:70px!important;font-size:.68rem!important}
  .client-brand-actions .privacy-pill{max-width:calc(100% - 76px)!important;font-size:.64rem!important;line-height:1.2!important}
  .legal-language-switcher select{width:70px!important;min-width:70px!important;max-width:70px!important}
}

@media(max-width:350px){
  #dashboardPanel .workspace-brand-copy{display:none!important}
  #dashboardPanel .workspace-brand-mark{font-size:.88rem!important}
  .client-brand-row{gap:.4rem!important}
  .client-brand-row .brand{font-size:.9rem!important}
  .client-brand-actions{max-width:76%!important}
}

/* Landscape phones and short split-screen windows: keep primary controls in
   natural flow so translated labels never overlap the sticky header. */
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){
  .client-brand-row{margin-bottom:.75rem!important}
  .client-shell{padding-top:.65rem!important}
  #dashboardPanel .workspace-head{position:static!important}
}

/* GaliVue V3.7.7.8 — compact contact page: 3 primary routes only */
.contact-shell{width:min(1040px,calc(100% - 2rem));padding-top:clamp(2.25rem,5vw,4rem);padding-bottom:clamp(2.25rem,5vw,4rem)}
.contact-shell h1{max-width:820px}
.contact-intro{max-width:720px;margin:0 0 clamp(1.2rem,2.5vw,1.8rem);font-size:clamp(.94rem,1.3vw,1.04rem)}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(.75rem,1.5vw,1rem);margin:clamp(1.2rem,2.5vw,1.8rem) 0}
.contact-grid article{display:flex;flex-direction:column;min-height:220px;padding:clamp(1rem,1.8vw,1.3rem);border:1px solid var(--line);border-radius:18px;background:#fff;min-width:0}
.contact-grid article>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:50%;background:var(--accent);font-size:.66rem;font-weight:950}
.contact-grid h2{margin:1rem 0 .5rem;font-size:clamp(1.08rem,1.6vw,1.28rem);line-height:1.15}
.contact-grid p{margin:0;font-size:clamp(.82rem,1.15vw,.91rem);line-height:1.55}
.contact-email{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:auto;padding-top:1rem;color:#31531f;font-size:clamp(.76rem,1vw,.82rem);font-weight:900;text-decoration:none;overflow-wrap:anywhere;word-break:break-word}
.contact-email:hover,.contact-email:focus-visible{text-decoration:underline;text-underline-offset:3px}
.contact-launch-note{margin-top:clamp(.9rem,2vw,1.2rem)}
.contact-launch-note a,.legal-shell>p a{color:#31531f;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .contact-shell{width:min(760px,calc(100% - 1.5rem))}
  .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-grid article:last-child{grid-column:1/-1;min-height:190px}
}
@media(max-width:620px){
  .legal-header{padding:.85rem 1rem}
  .legal-header a:not(.brand){font-size:.78rem}
  .contact-shell{width:calc(100% - 1.25rem);padding:2rem 0 2.25rem}
  .contact-shell h1{font-size:clamp(2.35rem,12vw,3.35rem);margin-bottom:.75rem}
  .contact-intro{font-size:.9rem;margin-bottom:1rem}
  .contact-grid{grid-template-columns:1fr;gap:.65rem;margin:1rem 0}
  .contact-grid article,.contact-grid article:last-child{grid-column:auto;min-height:0;padding:.95rem 1rem;border-radius:15px}
  .contact-grid h2{margin:.75rem 0 .4rem;font-size:1.08rem}
  .contact-grid p{font-size:.82rem;line-height:1.5}
  .contact-email{margin-top:.8rem;padding-top:0;font-size:.8rem}
  .contact-launch-note{font-size:.8rem;line-height:1.5}
}
@media(max-width:390px){
  .contact-shell{width:calc(100% - 1rem)}
  .contact-grid article{padding:.85rem}
  .contact-shell h1{font-size:clamp(2.15rem,11vw,2.8rem)}
}


/* GaliVue V3.7.7.8 — automatic client email + gallery receipt confirmation */
.client-receipt-confirm{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 18px;padding:16px 18px;border:1px solid rgba(20,20,20,.12);border-radius:18px;background:#fff}
.client-receipt-confirm>div{display:grid;gap:4px;min-width:0}
.client-receipt-confirm strong{font-size:15px;line-height:1.25}
.client-receipt-confirm span{font-size:13px;line-height:1.45;color:var(--muted,#68645d)}
.client-receipt-confirm button{flex:0 0 auto;white-space:nowrap}
.client-receipt-confirm.is-confirmed{background:#f3f8d9;border-color:rgba(89,113,23,.25)}
.client-link-progress{display:flex;flex-wrap:wrap;gap:7px 12px;margin:10px 0;padding:11px 13px;border:1px solid rgba(20,20,20,.10);border-radius:14px;background:rgba(255,255,255,.55);font-size:12px;line-height:1.4}
.client-link-progress strong{width:100%;font-size:12px}
.client-link-progress span{color:var(--muted,#68645d)}
.client-link-progress .is-confirmed{font-weight:800;color:#425d0d}
@media(max-width:760px){.client-receipt-confirm{align-items:stretch;flex-direction:column}.client-receipt-confirm button{width:100%}.client-link-progress{display:grid;gap:6px}}
@media(max-width:430px){.client-receipt-confirm{margin:10px 0 14px;padding:14px;border-radius:15px}.client-receipt-confirm strong{font-size:14px}.client-receipt-confirm span{font-size:12px}.client-link-progress{padding:10px 11px;border-radius:12px}}


/* GaliVue V3.7.8 — milestone email prompts + client feedback connection */
.delivery-feedback-nudge{display:flex;align-items:flex-start;gap:.55rem;flex-direction:column;margin-top:.15rem;padding:.9rem 1rem;border-radius:15px;border:1px solid rgba(21,21,21,.09);background:linear-gradient(135deg,#f8fbdc,#fff);color:var(--muted);font-size:.86rem;line-height:1.5}
.delivery-feedback-nudge strong{color:var(--ink);font-size:.92rem}
.delivery-feedback-nudge b{color:var(--ink)}
@media(max-width:760px){.delivery-feedback-nudge{padding:.82rem .88rem;font-size:.82rem}.delivery-feedback-nudge strong{font-size:.88rem}}
@media(max-width:430px){.delivery-feedback-nudge{margin-top:.05rem;padding:.78rem .82rem;border-radius:13px;line-height:1.45}}


/* GaliVue V3.7.8 — photographer notification preferences + verified client-email confirmation */
.notification-preferences-panel{width:min(780px,94vw);max-height:min(90vh,860px);overflow:auto}
.notification-intro{margin:-2px 0 16px;color:var(--muted);line-height:1.55}
.notification-destination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;margin-bottom:14px;border:1px solid #e6e1d7;border-radius:14px;background:#faf9f5}
.notification-destination span{font-size:.78rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.notification-destination strong{font-size:.9rem;overflow-wrap:anywhere;text-align:right}
.notification-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.notification-option{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid #e6e1d7;border-radius:15px;background:#fff;cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease}
.notification-option:hover{border-color:#c8c2b7;transform:translateY(-1px)}
.notification-option:has(input:checked){border-color:#b5d746;background:#fbffe9}
.notification-option input{width:18px;height:18px;margin:2px 0 0;accent-color:#171717;flex:0 0 auto}
.notification-option span,.notification-option b,.notification-option small{display:block}
.notification-option b{font-size:.9rem;line-height:1.25}
.notification-option small{margin-top:4px;color:var(--muted);font-size:.76rem;line-height:1.42}
.notification-trust-note{display:grid;gap:4px;margin-top:13px;padding:13px 14px;border-radius:14px;background:#f3f8d9;border:1px solid #dceaa9;font-size:.78rem;line-height:1.45}
.notification-trust-note span{color:#5d5952}
.notification-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}
.email-confirm-card{display:grid;gap:5px;padding:15px 16px;margin-bottom:14px;border:1px solid #dceaa9;border-radius:16px;background:#f7fbe8}
.email-confirm-card small{font-size:.68rem;font-weight:900;letter-spacing:.08em;color:#6f7652}
.email-confirm-card strong{font-size:1.05rem;overflow-wrap:anywhere}
.email-confirm-card span{font-size:.8rem;color:var(--muted)}
@media(max-width:760px){.notification-preferences-panel{width:min(96vw,650px);max-height:92vh}.notification-option-grid{grid-template-columns:1fr}.notification-actions{display:grid;grid-template-columns:1fr}.notification-actions button{width:100%}.notification-destination{align-items:flex-start;flex-direction:column}.notification-destination strong{text-align:left}}
@media(max-width:430px){.notification-preferences-panel{width:96vw;padding:18px}.notification-option{padding:11px}.notification-option small{font-size:.73rem}.notification-trust-note{font-size:.74rem}.email-confirm-card{padding:13px}}

/* GaliVue V3.7.8.2 — centered responsive free-test ticker + GaliVue green live pulse */
#pricing .free-test-ticker{
  position:relative;
  box-sizing:border-box;
  width:100%!important;
  max-width:1780px!important;
  margin:0 auto .8rem!important;
  overflow:hidden;
  border:1px solid rgba(200,255,61,.52);
  border-radius:999px;
  background:#0d0d0d;
  box-shadow:0 0 0 1px rgba(200,255,61,.08),0 12px 34px rgba(0,0,0,.22);
}
#pricing .free-test-ticker::before,
#pricing .free-test-ticker::after{
  content:"";
  position:absolute;
  z-index:2;
  top:0;
  bottom:0;
  width:clamp(18px,3vw,54px);
  pointer-events:none;
}
#pricing .free-test-ticker::before{left:0;background:linear-gradient(90deg,#0d0d0d 12%,rgba(13,13,13,0))}
#pricing .free-test-ticker::after{right:0;background:linear-gradient(270deg,#0d0d0d 12%,rgba(13,13,13,0))}
#pricing .free-test-ticker-track{
  display:flex;
  width:max-content;
  min-width:100%;
  will-change:transform;
  animation:gv-free-test-loop 21s linear infinite;
}
#pricing .free-test-ticker-group{
  display:flex;
  flex:none;
  align-items:center;
  gap:1.05rem;
  padding:.62rem .72rem;
  white-space:nowrap;
  color:#eae7e1;
  font-size:.7rem;
  font-weight:850;
  letter-spacing:.075em;
}
#pricing .free-test-ticker-group strong{
  display:inline-flex;
  align-items:center;
  gap:.48rem;
  min-height:27px;
  padding:.25rem .72rem;
  border:1px solid rgba(200,255,61,.46);
  border-radius:999px;
  background:rgba(200,255,61,.09);
  color:var(--accent)!important;
  font-weight:950;
  box-shadow:inset 0 0 0 1px rgba(200,255,61,.04);
}
#pricing .free-test-ticker-group strong::before{
  content:"";
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 0 rgba(200,255,61,.65),0 0 12px rgba(200,255,61,.8);
  animation:gv-free-light-pulse 1.65s ease-out infinite;
}
#pricing .free-test-ticker-group i{color:var(--accent);font-style:normal;opacity:.86}
@keyframes gv-free-test-loop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes gv-free-light-pulse{
  0%{box-shadow:0 0 0 0 rgba(200,255,61,.65),0 0 10px rgba(200,255,61,.72);opacity:1}
  65%{box-shadow:0 0 0 7px rgba(200,255,61,0),0 0 16px rgba(200,255,61,.78);opacity:.88}
  100%{box-shadow:0 0 0 0 rgba(200,255,61,0),0 0 10px rgba(200,255,61,.72);opacity:1}
}
#pricing .free-test-card-prominent{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(200,255,61,.78)!important;
  background:linear-gradient(120deg,#20221c 0%,#171717 46%,#111 100%)!important;
  box-shadow:0 0 0 1px rgba(200,255,61,.14),0 20px 55px rgba(0,0,0,.3)!important;
}
#pricing .free-test-card-prominent::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:260px;
  height:260px;
  left:-100px;
  top:-130px;
  border-radius:50%;
  background:rgba(200,255,61,.12);
  filter:blur(30px);
}
#pricing .free-test-badge{
  display:inline-flex!important;
  width:max-content;
  max-width:100%;
  align-items:center;
  min-height:28px;
  padding:.28rem .72rem;
  border-radius:999px;
  background:var(--accent);
  color:#111!important;
  font-size:.68rem!important;
  letter-spacing:.08em!important;
}
#pricing .free-test-card-prominent h3{font-size:clamp(1.42rem,1.75vw,2rem)!important;line-height:1.02!important;letter-spacing:-.035em!important}
#pricing .free-test-card-prominent p{max-width:560px;color:#d0cdc6!important;line-height:1.5!important}
#pricing .free-test-main-cta{
  min-height:52px!important;
  padding:.82rem 1.2rem!important;
  font-weight:950!important;
  box-shadow:0 0 0 1px rgba(200,255,61,.32),0 10px 28px rgba(200,255,61,.12)!important;
}
#pricing .free-test-main-cta:hover{transform:translateY(-1px)}
@media(min-width:1600px) and (max-width:1999px){#pricing .free-test-ticker{max-width:1600px!important}}
@media(min-width:1100px) and (max-width:1599px){#pricing .free-test-ticker{max-width:1320px!important}}
@media(min-width:768px) and (max-width:1099px){
  #pricing .free-test-ticker{max-width:920px!important;border-radius:18px}
  #pricing .free-test-ticker-group{gap:.9rem;font-size:.67rem}
}
@media(max-width:767px){
  #pricing .free-test-ticker{width:100%!important;max-width:100%!important;margin-bottom:.65rem!important;border-radius:14px}
  #pricing .free-test-ticker::before,#pricing .free-test-ticker::after{width:18px}
  #pricing .free-test-ticker-group{gap:.72rem;padding:.54rem .5rem;font-size:.62rem;letter-spacing:.06em}
  #pricing .free-test-ticker-group strong{min-height:25px;padding:.22rem .58rem;gap:.4rem}
  #pricing .free-test-ticker-group strong::before{width:7px;height:7px;flex-basis:7px}
  #pricing .free-test-card-prominent{padding:1.05rem!important}
  #pricing .free-test-badge{font-size:.61rem!important;white-space:normal;line-height:1.2}
  #pricing .free-test-card-prominent h3{margin:.62rem 0 .35rem!important;font-size:1.38rem!important}
  #pricing .free-test-card-prominent p{font-size:.8rem!important}
  #pricing .free-test-main-cta{width:100%!important;min-height:50px!important}
}
@media(max-width:390px){
  #pricing .free-test-ticker-group{gap:.62rem;font-size:.59rem}
}
@media(prefers-reduced-motion:reduce){
  #pricing .free-test-ticker-track{animation:none!important;transform:none!important;width:100%!important}
  #pricing .free-test-ticker-group{width:100%;justify-content:center;overflow:hidden}
  #pricing .free-test-ticker-group:nth-child(2){display:none}
  #pricing .free-test-ticker-group strong::before{animation:none!important}
}

/* =========================================================
   GaliVue V3.7.8.3 — readability, hierarchy, folders & CTAs
   WeTransfer-inspired principle: clarity, not feature copying.
   Lime is the action/accent colour; reading text stays neutral.
   ========================================================= */
:root{
  --muted:#57524b;
  --line:#d3ccc1;
}
body{line-height:1.5}
p{line-height:1.55}

/* Readable small-copy baseline. Decorative micro-labels remain compact. */
label{font-size:.9rem;color:#504c45;line-height:1.4}
small{font-size:.86rem;line-height:1.45}
.subtle{font-size:.95rem;color:var(--muted);line-height:1.5}
.eyebrow,.section-kicker,.dialog-head small{font-size:.78rem;color:#5a554e;line-height:1.35}
.form-help,.selection-note,.login-help,.notification-intro{font-size:.92rem;line-height:1.55;color:var(--muted)}
.new-round-note,.field-message,.project-readiness-notice span,.linked-selection-allocation small,
.current-work-main span,.unfinished-head span,.download-info span,.delivery-progress span,.delivery-progress em,
.client-link-progress,.delivery-feedback-nudge{font-size:.88rem;line-height:1.5}
.field-message{font-size:.8rem;font-weight:700}
.current-work-main small,.unfinished-head small{font-size:.74rem;color:#5f5a52}
.dashboard-project-summary span,.stats span,.tag{font-size:.88rem}
.activity-timeline summary{font-size:.9rem;color:#514d46}
.section.dark .section-kicker,.section.dark p{color:#d2cec6}
.grid article p,.workflow-choice>span:last-child,.folder-main small,.result-folder small,.guided-form-card p{color:var(--muted)}

/* Lime is the primary action colour, not a paragraph/text colour. */
.primary,.primary-small,.project-actions-simple .primary-stage{
  background:var(--accent)!important;
  color:#111!important;
  border-color:#a8d924!important;
  box-shadow:0 5px 16px rgba(166,216,36,.14);
}
.primary:hover:not(:disabled),.primary-small:hover:not(:disabled),.project-actions-simple .primary-stage:hover:not(:disabled){
  border-color:#7faa11!important;
  box-shadow:0 7px 20px rgba(166,216,36,.2);
}
.primary:focus-visible,.primary-small:focus-visible{outline-color:#111}
button{min-height:42px}

/* Project folders: one shared visual language across active/unfinished work. */
.project-folder-icon{
  position:relative;
  display:inline-block;
  width:1.38rem;
  height:1rem;
  flex:0 0 1.38rem;
  border:1px solid #9abf2b;
  border-radius:.22rem;
  background:#eaffaa;
  box-shadow:inset 0 -5px 0 rgba(200,255,61,.2);
}
.project-folder-icon::before{
  content:"";
  position:absolute;
  left:.08rem;
  top:-.33rem;
  width:.62rem;
  height:.36rem;
  border:1px solid #9abf2b;
  border-bottom:0;
  border-radius:.2rem .2rem 0 0;
  background:#d9ff72;
}
.completed-project-summary-heading{gap:.62rem}
.completed-project-summary-heading>strong{font-size:1.14rem;line-height:1.2}
.project-stage-heading{font-size:.76rem;color:#4f4a43;background:#eee9df}
.project-stage-heading.is-complete{color:#315f20;background:#eff8d6;border-color:#c5dc82}
.unfinished-icon{filter:none}

/* Clear, scan-first workflow choices and steps. */
.workflow-choice{padding:24px;min-height:184px;border-color:#d5cec3}
.workflow-choice strong{font-size:1.34rem;line-height:1.2}
.workflow-choice>span:last-child{font-size:.92rem;line-height:1.55}
.workflow-choice:hover,.workflow-choice:focus-visible{border-color:#a9d62a;box-shadow:0 12px 30px rgba(0,0,0,.07)}
.workflow-icon{background:#f1eee7}
.icon-step{border-color:#d9d2c7}
.icon-step span{font-size:.86rem;font-weight:850;line-height:1.25}
.icon-step b{font-size:.72rem}
.icon-step.active{border-color:#9bc81d;background:#f5ffdc;box-shadow:0 0 0 3px rgba(169,217,28,.09)}
.icon-step.complete{background:#f8fce9}
.guided-form-card h3,.ai-first-title h3{font-size:1.28rem;line-height:1.25}
.guided-form-card p,.ai-first-title p{font-size:.92rem;line-height:1.5}
.workflow-message{font-size:.9rem;line-height:1.45}

/* Folder result cards: bigger label/description and a stronger selected state. */
.result-folder{padding:18px!important;border-color:#d7d0c5;min-height:150px}
.folder-main>span{font-size:1.65rem}
.folder-main strong{font-size:1.05rem;line-height:1.25;margin-top:9px}
.folder-main small{font-size:.86rem;line-height:1.45;margin-top:6px}
.folder-count{min-width:34px;height:34px;font-size:.86rem;font-weight:900;background:#efebe4;color:#393631}
.result-folder.recommended,.result-folder.is-selected-folder{border-color:#9bc923!important;background:#f7ffe4!important}
.result-folder.is-selected-folder{box-shadow:0 0 0 3px rgba(155,201,35,.10)}
.folder-select{font-size:.86rem;min-height:40px}
.folder-actions{gap:12px}

/* More legible settings/status detail. */
.notification-destination span{font-size:.8rem;color:#514d46}
.notification-destination strong{font-size:.94rem}
.notification-option b{font-size:.95rem}
.notification-option small{font-size:.84rem;line-height:1.48;color:#5d5851}
.notification-trust-note{font-size:.84rem;line-height:1.5}
.email-confirm-card small{font-size:.74rem;color:#596239}
.email-confirm-card span{font-size:.86rem}
.usage-plan-cell>strong{font-size:.82rem}
.usage-metric>small{font-size:.76rem}

/* Contact: noreply is informational only, never a support destination. */
.system-email-note{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.55;
}
.system-email-note strong,.system-email-note b{color:var(--ink)}
.system-email-note a{font-weight:850;text-decoration-thickness:1.5px;text-underline-offset:2px}

/* Pricing ticker stays compact, but no longer drops into illegible micro-type. */
#pricing .free-test-ticker-group{font-size:.72rem}
#pricing .free-test-badge{font-size:.72rem!important}

@media(min-width:1200px){
  #dashboardPanel .workspace-brand-copy>small{font-size:.74rem!important}
  #dashboardPanel .new-project-head-button{font-size:.88rem!important}
  .account-usage-panel .plan-pill{font-size:.84rem!important}
  .account-usage-panel .usage-metric{font-size:.88rem}
  .account-usage-panel .usage-metric>b{font-size:.94rem}
  .account-usage-panel .usage-plan-action{font-size:.82rem}
  .dashboard-tools-collapsible .dashboard-search{font-size:.9rem}
  .dashboard-tools-collapsible .dashboard-search input{font-size:.94rem}
  #dashboardProjectSummary>span{font-size:.88rem}
  .project-dashboard-summary-bar .project-stage-heading{font-size:.78rem}
  .project-dashboard-summary-bar .completed-project-delete{font-size:.82rem!important}
}

@media(max-width:767px){
  /* Keep key copy readable without reintroducing horizontal overflow. */
  label{font-size:.88rem}
  small{font-size:.84rem}
  .eyebrow,.section-kicker,.dialog-head small{font-size:.74rem}
  #dashboardPanel .new-project-head-button{font-size:.8rem!important}
  #dashboardPanel .active-project-breadcrumb .text-button{font-size:.84rem!important}
  #dashboardPanel .active-project-breadcrumb strong{font-size:.88rem!important}
  #dashboardPanel .active-project-status>span{font-size:.8rem!important;line-height:1.35}
  #dashboardPanel #activeProjectSaveLeave{font-size:.8rem!important}
  #dashboardPanel .icon-step{min-height:78px!important;padding:.52rem .28rem!important}
  #dashboardPanel .icon-step b{font-size:.66rem!important}
  #dashboardPanel .icon-step span{font-size:.78rem!important;line-height:1.2}
  #dashboardPanel .ai-first-title p,#dashboardPanel .guided-form-card p,#dashboardPanel .form-help,#dashboardPanel .workflow-message{font-size:.86rem!important;line-height:1.5!important}
  .privacy-pill{font-size:.78rem!important}
  .client-header p{font-size:1rem!important}
  .account-usage-panel .plan-pill{font-size:.8rem!important}
  .account-usage-panel .usage-metric>em{font-size:.76rem!important}
  .account-usage-panel .usage-metric>b{font-size:.92rem}
  .account-usage-panel .usage-plan-action{font-size:.8rem}
  .project-dashboard-summary-bar .completed-project-summary-heading{
    grid-template-columns:1.45rem minmax(0,1fr)!important;
    column-gap:.48rem!important;
    row-gap:.32rem!important;
  }
  .project-dashboard-summary-bar .project-folder-icon{grid-column:1;grid-row:1;align-self:center}
  .project-dashboard-summary-bar .completed-project-summary-heading>strong{grid-column:2;grid-row:1;font-size:1.04rem!important}
  .project-dashboard-summary-bar .project-stage-heading{grid-column:2;grid-row:2;font-size:.7rem!important;padding:.34rem .5rem!important}
  .project-dashboard-summary-bar .completed-project-delete{font-size:.76rem!important}
  .mobile-save-help{font-size:.84rem!important}
  .notification-option small{font-size:.82rem}
  .notification-trust-note{font-size:.82rem}
  #pricing .free-test-ticker-group{font-size:.68rem}
  #pricing .free-test-badge{font-size:.68rem!important}
  #pricing .free-test-card-prominent p{font-size:.88rem!important}
}

@media(max-width:390px){
  #dashboardPanel .icon-step span{font-size:.76rem!important}
  #pricing .free-test-ticker-group{font-size:.66rem}
}

/* V3.7.8.3 — functional microcopy audit: no critical workspace text should look like legal fine print. */
.usage-details-grid small,.capacity-secure-pill,.dashboard-section-title small,
.plan-capacity-checkout>div>small,.plan-capacity-pack>b small,.plan-manager-checkout small,
.security-link,.security-status,.workspace-brand small,.plan-capacity-head small,.plan-direct-head small,
.test-plan-switcher small,.plan-manager-card>span:first-child small,.storage-ring-copy small,.usage-stat-cards small,
.ai-usage-card small{font-size:.78rem;line-height:1.4}
#pricing .cancel-note,#pricing .free-test-metrics small,#pricing .pricing-billing-toggle button small,
#pricing .billing-save-badge,#pricing .plan-billing-note,#pricing .pricing-note,#pricing .annual-save-detail{
  font-size:.78rem!important;line-height:1.4
}
.payment-conditions-heading span,.payment-conditions-grid span,.plan-manager-billing button span,
.storage-usage-inline>em,.usage-storage-add,.usage-inline-alert,.workspace-plan-link,
.account-usage-panel .usage-warning-pill,.account-usage-panel .usage-ok-pill,
.plan-storage-project-row span,.project-block-explanation span,.usage-details-grid span,.usage-detail-note,
.compact-limit-warning span,.plan-capacity-checkout>div>span,.plan-manager-checkout span,
.review-progress-labels,.profile-menu-head span,.active-project-breadcrumb span,.active-project-status>span,
.ai-beta-badge,.capacity-choice span,.payment-conditions-heading p,.security-list span,.test-plan-switcher span,
.delivery-correction-pending{font-size:.8rem;line-height:1.45}
.footer-bottom{font-size:.78rem;line-height:1.45}
.marketing-header .header-login,.marketing-header .header-dashboard,.marketing-header .header-cta{font-size:.78rem}
.mobile-menu nav small,.mobile-menu nav>a span{font-size:.78rem}
.account-usage-panel .plan-pill{font-size:.8rem}

@media(max-width:767px){
  .usage-details-grid small,.capacity-secure-pill,.dashboard-section-title small,
  .plan-capacity-checkout>div>small,.plan-capacity-pack>b small,.plan-manager-checkout small,
  .security-link,.security-status,.workspace-brand small,.ai-usage-card small{font-size:.76rem!important}
  .payment-conditions-heading span,.payment-conditions-grid span,.plan-storage-project-row span,
  .project-block-explanation span,.usage-details-grid span,.usage-detail-note,.compact-limit-warning span,
  .review-progress-labels,.profile-menu-head span,.security-list span{font-size:.78rem!important}
}


/* ========================================================================== */
/* GaliVue V3.7.8.5 — approved lime homepage + calm typography direction     */
/* ========================================================================== */
:root{
  --gv-home-lime:#C8FF3D;
  --gv-home-lime-deep:#9EE000;
  --gv-home-ink:#151515;
  --gv-home-dark:#171717;
  --gv-home-cream:#F5F2EB;
  --gv-home-white:#FFFFFF;
  --gv-home-muted:#69645C;
  --gv-home-line:#E6E2D8;
}

/* Public header: keep the current GaliVue wordmark and make the header feel like
   the approved landing-page mockup without removing language/account controls. */
.marketing-header{
  width:min(1460px,calc(100vw - 30px))!important;
  min-height:68px!important;
  top:10px!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  padding:0 18px 0 24px!important;
  border:1px solid rgba(21,21,21,.08)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 12px 40px rgba(21,21,21,.07)!important;
  backdrop-filter:blur(16px)!important;
}
.marketing-header .desktop-nav{gap:1.75rem!important}
.marketing-header .desktop-nav a,.marketing-header .header-login{font-weight:560!important;font-size:.82rem!important}
.marketing-header .header-cta{min-height:42px!important;padding:0 1.05rem!important;border-radius:10px!important;font-weight:650!important}
.marketing-header .brand{font-size:1.43rem!important}
.marketing-page{padding-top:90px!important}

/* Approved hero */
.gv-home-hero{
  position:relative!important;
  overflow:hidden!important;
  padding:0!important;
  min-height:0!important;
  background:linear-gradient(180deg,#fff 0%,#fffdf8 100%)!important;
}
.gv-home-hero::before,.gv-home-hero::after{display:none!important}
.gv-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(520px,1.16fr);
  align-items:stretch;
  width:min(1460px,calc(100vw - 64px));
  min-height:620px;
  margin:0 auto;
}
.gv-hero-copy{
  position:relative!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  max-width:none!important;
  margin:0!important;
  padding:58px 28px 58px 10px!important;
  text-align:left!important;
}
.gv-home-hero h1{
  max-width:690px!important;
  margin:0 0 1.15rem!important;
  color:var(--gv-home-ink)!important;
  font-size:clamp(3.75rem,5.2vw,6.5rem)!important;
  font-weight:700!important;
  line-height:.94!important;
  letter-spacing:-.064em!important;
  text-align:left!important;
}
.gv-home-hero h1 .hero-line{display:block!important;color:var(--gv-home-ink)!important;font-style:normal!important}
.gv-home-hero h1 .hero-stage-strong{
  display:block!important;
  margin-top:.38em!important;
  color:#88BD00!important;
  font-size:.43em!important;
  font-style:normal!important;
  font-weight:650!important;
  letter-spacing:-.035em!important;
  line-height:1.08!important;
}
.gv-home-hero h1 .hero-stage-strong::after{display:none!important}
.gv-home-hero .hero-story-copy{
  display:block!important;
  max-width:540px!important;
  margin:0!important;
  color:#55514A!important;
  font-size:1rem!important;
  font-weight:430!important;
  line-height:1.65!important;
  text-align:left!important;
}
.gv-home-hero .hero-story-copy span{display:inline!important;color:inherit!important;opacity:1!important;transform:none!important}
.gv-home-hero .hero-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:.8rem!important;margin:1.55rem 0 0!important}
.gv-home-hero .hero-primary{min-height:48px!important;padding:0 1.35rem!important;border-radius:10px!important;font-weight:650!important}
.gv-home-hero .demo-link{
  display:inline-flex!important;align-items:center!important;gap:.55rem!important;min-height:48px!important;padding:0 1.15rem!important;
  border:1.5px solid #9FCB28!important;border-radius:10px!important;background:#fff!important;color:var(--gv-home-ink)!important;font-size:.86rem!important;font-weight:600!important;text-decoration:none!important;
}
.gv-play{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid #8FBF12;border-radius:50%;color:#7FAE00;font-size:.55rem;padding-left:1px}
.gv-home-hero .hero-trust-line{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:1.05rem 1.4rem!important;margin:1.6rem 0 0!important;color:#5C574F!important;font-size:.73rem!important;font-weight:520!important}
.gv-home-hero .hero-trust-line span{opacity:1!important;transform:none!important}
.gv-home-hero .hero-demo-cursor{display:none!important}

.gv-hero-visual{position:relative;min-width:0;min-height:620px}
.gv-hero-burst{position:absolute;inset:0;overflow:hidden;isolation:isolate}
.gv-hero-burst::before{
  content:"";position:absolute;left:12%;right:-18%;bottom:-16%;height:58%;z-index:-2;
  background:radial-gradient(ellipse at 52% 100%,rgba(200,255,61,.32),rgba(200,255,61,.10) 34%,transparent 69%);
  filter:blur(8px);
}
.gv-hero-burst>i{
  --a:0deg;--h:70%;--o:.55;--d:0s;
  position:absolute;left:52%;bottom:-2%;width:1px;height:var(--h);transform-origin:50% 100%;
  transform:translateX(-50%) rotate(var(--a));
  background:linear-gradient(to top,rgba(200,255,61,.92),rgba(158,224,0,.56) 58%,rgba(200,255,61,.12));
  opacity:var(--o);animation:gv-ray-breathe 5.8s ease-in-out var(--d) infinite;
}
.gv-hero-burst>i::after{content:"";position:absolute;left:50%;top:-2px;width:4px;height:4px;border-radius:50%;background:#9EE000;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(200,255,61,.12)}
.gv-burst-glow{position:absolute;left:52%;bottom:-44px;width:210px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(200,255,61,.9),rgba(200,255,61,.28) 45%,transparent 72%);transform:translateX(-50%);filter:blur(12px)}
@keyframes gv-ray-breathe{0%,100%{filter:saturate(.9) brightness(.92)}50%{filter:saturate(1.18) brightness(1.08)}}

/* Circular workflow — same approved GaliVue lime, no green/teal rebrand. */
.gv-home-workflow{padding:62px max(4vw,28px) 38px!important;background:#fff!important}
.gv-section-heading{text-align:center}
.gv-section-heading h2{margin:0;color:var(--gv-home-ink);font-size:clamp(2rem,2.7vw,3.1rem);font-weight:680;letter-spacing:-.045em}
.gv-section-heading p{margin:.65rem auto 0;color:var(--gv-home-muted);font-size:.9rem;line-height:1.55}
.gv-workflow-ring{position:relative;width:min(980px,88vw);height:600px;margin:24px auto 0}
.gv-ring-line{position:absolute;left:50%;top:50%;width:390px;height:390px;border:2px solid rgba(158,224,0,.72);border-radius:50%;transform:translate(-50%,-50%)}
.gv-ring-line::after{content:"";position:absolute;inset:-3px;border-radius:50%;background:conic-gradient(from -45deg,transparent 0 8%,rgba(200,255,61,.55) 15%,transparent 24% 42%,rgba(158,224,0,.55) 49%,transparent 58% 76%,rgba(200,255,61,.55) 83%,transparent 91%);filter:blur(4px);opacity:.6;animation:gv-ring-roll 12s linear infinite;z-index:-1}
@keyframes gv-ring-roll{to{transform:rotate(360deg)}}
.gv-workflow-center{position:absolute;left:50%;top:50%;z-index:3;display:grid;place-items:center;width:190px;height:190px;border:1px solid rgba(21,21,21,.07);border-radius:50%;background:#fff;box-shadow:0 20px 50px rgba(21,21,21,.08);transform:translate(-50%,-50%);text-align:center}
.gv-center-icon{display:grid;place-items:center;width:66px;height:58px;color:#7FAE00}
.gv-center-icon svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.gv-workflow-center strong{margin-top:-4px;font-size:1.13rem;font-weight:650;line-height:1.15}
.gv-flow-step{position:absolute;z-index:5;display:flex;align-items:center;gap:1rem;width:310px;color:var(--gv-home-ink)}
.gv-flow-icon{display:grid;place-items:center;flex:0 0 auto;width:82px;height:82px;border:1px solid rgba(21,21,21,.07);border-radius:50%;background:#fff;box-shadow:0 13px 34px rgba(21,21,21,.07);color:#83B900;transition:transform .25s ease,box-shadow .25s ease}
.gv-flow-step:hover .gv-flow-icon{transform:translateY(-3px);box-shadow:0 18px 42px rgba(21,21,21,.11)}
.gv-flow-icon svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}
.gv-flow-copy{display:grid;gap:.3rem}.gv-flow-copy b{font-size:.86rem;font-weight:620}.gv-flow-copy span{color:var(--gv-home-muted);font-size:.73rem;font-weight:430;line-height:1.45}
.gv-flow-step.step-1{left:0;top:52px;flex-direction:row-reverse;text-align:right}.gv-flow-step.step-2{right:0;top:52px}.gv-flow-step.step-3{right:-22px;top:245px}.gv-flow-step.step-4{right:8px;bottom:45px}.gv-flow-step.step-5{left:8px;bottom:45px;flex-direction:row-reverse;text-align:right}.gv-flow-step.step-6{left:-22px;top:245px;flex-direction:row-reverse;text-align:right}

/* Four approved value cards */
.gv-home-benefits{padding:8px max(4vw,28px) 76px!important;background:#fff!important}
.gv-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;width:min(1260px,100%);margin:0 auto}
.gv-benefit-grid article{min-height:220px;padding:1.55rem 1.45rem;border:1px solid var(--gv-home-line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(21,21,21,.045);text-align:center}
.gv-benefit-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 1.05rem;border-radius:50%;background:rgba(200,255,61,.16);color:#7EAB00}
.gv-benefit-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.gv-benefit-grid h3{margin:0;font-size:1rem;font-weight:630;letter-spacing:-.02em}.gv-benefit-grid p{max-width:245px;margin:.65rem auto 0;color:var(--gv-home-muted);font-size:.76rem;line-height:1.55}

/* Product proof block based on the approved homepage PNG. */
.gv-dashboard-showcase{display:grid!important;grid-template-columns:minmax(260px,.56fr) minmax(0,1.44fr);gap:0!important;width:min(1320px,calc(100vw - 64px));margin:0 auto 82px!important;padding:0!important;border:1px solid var(--gv-home-line);border-radius:22px;background:#fff;box-shadow:0 16px 46px rgba(21,21,21,.055);overflow:hidden}
.gv-dashboard-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,4rem);background:linear-gradient(145deg,#fffdf8,#f8f5ed)}
.gv-dashboard-copy>span{color:#7AAB00;font-size:.68rem;font-weight:650;letter-spacing:.09em}.gv-dashboard-copy h2{margin:.55rem 0 .85rem;font-size:clamp(2rem,3vw,3.2rem);font-weight:680;line-height:.98;letter-spacing:-.055em}.gv-dashboard-copy p{max-width:360px;margin:0;color:var(--gv-home-muted);font-size:.82rem;line-height:1.6}.gv-dashboard-copy button{align-self:flex-start;margin-top:1.35rem;border-radius:10px!important;font-weight:650!important}
.gv-dashboard-frame{min-height:500px;background:#fff}
.gv-dash-top{display:flex;align-items:center;justify-content:space-between;height:58px;padding:0 18px;background:#171717;color:#fff}.gv-dash-top .brand{color:#fff!important;font-size:1.1rem!important}.gv-dash-top-icons{display:flex;align-items:center;gap:.8rem;color:#ddd}.gv-dash-top-icons i{width:23px;height:23px;border-radius:50%;background:linear-gradient(145deg,#ddd,#777)}
.gv-dash-body{display:grid;grid-template-columns:150px 1fr;min-height:442px}.gv-dash-body aside{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem .8rem;border-right:1px solid var(--gv-home-line);background:#fbfaf7}.gv-dash-body aside b{display:flex;align-items:center;gap:.55rem;padding:.55rem .65rem;border-radius:8px;color:#5c574f;font-size:.68rem;font-weight:560}.gv-dash-body aside b.active{background:rgba(200,255,61,.24);color:#151515}
.gv-dash-main{padding:1.25rem 1.4rem}.gv-dash-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.gv-dash-heading small{color:#777168;font-size:.55rem;font-weight:580;letter-spacing:.08em}.gv-dash-heading h3{margin:.2rem 0 0;font-size:1.55rem;font-weight:660}.gv-dash-heading button{border:0;border-radius:8px;background:var(--gv-home-lime);padding:.6rem .8rem;font-size:.65rem;font-weight:620}.gv-dash-search{width:58%;margin:.85rem 0;padding:.55rem .75rem;border:1px solid var(--gv-home-line);border-radius:8px;color:#9a948b;font-size:.65rem}.gv-project-table{overflow:hidden;border:1px solid var(--gv-home-line);border-radius:10px}.gv-project-table>div{display:grid;grid-template-columns:1.45fr 1fr .55fr .7fr .6fr;align-items:center;gap:.6rem;min-height:46px;padding:0 .8rem;border-top:1px solid #efede7;font-size:.63rem}.gv-project-table>div:first-child{border-top:0}.gv-project-table .head{min-height:34px;background:#fbfaf7;color:#817b73;font-weight:560}.gv-project-table strong{font-weight:590}.gv-project-table i{justify-self:start;padding:.28rem .46rem;border-radius:999px;background:rgba(200,255,61,.24);color:#688c00;font-style:normal;font-weight:560}.gv-project-table i.editing{background:#f5f1d8;color:#8a7500}.gv-project-table i.delivered{background:#e8f4dd;color:#4b7c2b}

/* Approved calm typography rule: do not make tiny UI copy look heavy. */
.marketing-page small,.marketing-page .section-kicker,.marketing-page [class*="badge"],.marketing-page [class*="pill"]{font-weight:600!important}
#workspaceDialog small,#workspaceDialog label,#workspaceDialog .eyebrow,#workspaceDialog [class*="meta"],#workspaceDialog [class*="helper"],#workspaceDialog [class*="status"]{font-weight:560!important}
#workspaceDialog button{font-weight:620!important}
#workspaceDialog h1,#workspaceDialog h2,#workspaceDialog h3,#workspaceDialog .workspace-brand-mark{font-weight:680!important}

/* Dark CTA: keep the live copy but use the approved dark/lime visual language. */
.final-cta{display:grid!important;grid-template-columns:minmax(280px,.8fr) minmax(460px,1.2fr)!important;align-items:center!important;gap:3rem!important;max-width:1460px!important;margin:0 auto 28px!important;padding:3.3rem 4rem!important;border-radius:30px!important;background:linear-gradient(120deg,#171717,#111)!important;text-align:left!important}
.final-cta .cta-glow{display:block!important;left:auto!important;right:-120px!important;top:auto!important;bottom:-250px!important;transform:none!important;background:radial-gradient(circle,rgba(200,255,61,.22),transparent 64%)!important}
.final-cta .cta-card-shapes{display:none!important}.final-cta .section-kicker{grid-column:1;color:var(--gv-home-lime)!important}.final-cta h2{grid-column:1;max-width:590px!important;margin:.35rem 0 .8rem!important;font-size:clamp(2.1rem,3.1vw,3.8rem)!important;font-weight:680!important;line-height:1!important}.final-cta p{grid-column:1;max-width:520px!important;margin:0!important;line-height:1.55!important}.final-cta-button{grid-column:1;justify-self:start!important;margin-top:.7rem!important}
.final-cta::after{content:"No card required   ·   Secure & private   ·   Support that cares";grid-column:2;grid-row:1/5;align-self:center;display:flex;align-items:center;min-height:150px;padding:2rem 2.4rem;border-left:1px solid rgba(255,255,255,.12);color:#f5f2eb;font-size:.85rem;font-weight:560;line-height:2.5;white-space:pre-wrap;background:radial-gradient(circle at 92% 100%,rgba(200,255,61,.14),transparent 44%)}

@media(max-width:1100px){
  .gv-hero-grid{grid-template-columns:1fr 1fr;width:min(100%,calc(100vw - 36px));min-height:560px}
  .gv-hero-visual{min-height:560px}.gv-home-hero h1{font-size:clamp(3.3rem,6.2vw,5.2rem)!important}
  .gv-workflow-ring{width:min(860px,94vw);height:570px}.gv-ring-line{width:350px;height:350px}.gv-flow-step{width:275px}.gv-flow-icon{width:74px;height:74px}
  .gv-dashboard-showcase{width:calc(100vw - 36px);grid-template-columns:.62fr 1.38fr}.gv-project-table>div{grid-template-columns:1.3fr .9fr .48fr .62fr}.gv-project-table>div span:last-child{display:none}.gv-project-table .head span:last-child{display:none}
}
@media(max-width:900px){
  .marketing-header{width:calc(100vw - 18px)!important;min-height:60px!important;padding:0 12px 0 16px!important}.marketing-page{padding-top:78px!important}
  .gv-hero-grid{grid-template-columns:1fr;min-height:0}.gv-hero-copy{padding:54px 12px 26px!important}.gv-home-hero h1{max-width:760px!important;font-size:clamp(3.2rem,9vw,5.2rem)!important}.gv-hero-visual{min-height:340px}
  .gv-home-workflow{padding-top:48px!important}.gv-workflow-ring{height:auto;width:min(700px,100%);display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:32px}.gv-ring-line,.gv-workflow-center{display:none}.gv-flow-step,.gv-flow-step.step-1,.gv-flow-step.step-2,.gv-flow-step.step-3,.gv-flow-step.step-4,.gv-flow-step.step-5,.gv-flow-step.step-6{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;min-height:105px;flex-direction:row;text-align:left;padding:1rem;border:1px solid var(--gv-home-line);border-radius:16px;background:#fff}.gv-flow-icon{width:62px;height:62px}.gv-flow-copy b{font-size:.83rem}.gv-flow-copy span{font-size:.72rem}
  .gv-benefit-grid{grid-template-columns:repeat(2,1fr)}
  .gv-dashboard-showcase{grid-template-columns:1fr}.gv-dashboard-copy{padding:2rem}.gv-dashboard-frame{min-height:440px}.gv-dash-body{grid-template-columns:120px 1fr}
  .final-cta{grid-template-columns:1fr!important;padding:2.6rem 2rem!important}.final-cta::after{grid-column:1;grid-row:auto;min-height:0;padding:1.25rem 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.12);line-height:1.9}
}
@media(max-width:640px){
  .marketing-header{top:6px!important;border-radius:14px!important}.marketing-header .brand{font-size:1.2rem!important}.marketing-page{padding-top:68px!important}
  .gv-hero-grid{width:100%}.gv-hero-copy{padding:42px 18px 18px!important}.gv-home-hero h1{font-size:clamp(2.72rem,13.4vw,4.1rem)!important;line-height:.96!important}.gv-home-hero h1 .hero-stage-strong{font-size:.47em!important}.gv-home-hero .hero-story-copy{font-size:.9rem!important;line-height:1.55!important}.gv-home-hero .hero-actions{width:100%!important;flex-wrap:wrap!important}.gv-home-hero .hero-primary,.gv-home-hero .demo-link{min-height:46px!important}.gv-home-hero .hero-trust-line{gap:.7rem 1rem!important;font-size:.68rem!important}.gv-hero-visual{min-height:265px}.gv-burst-glow{width:150px;height:90px}
  .gv-home-workflow{padding:42px 14px 28px!important}.gv-section-heading h2{font-size:2rem}.gv-section-heading p br{display:none}.gv-workflow-ring{grid-template-columns:1fr;gap:.7rem}.gv-flow-step,.gv-flow-step.step-1,.gv-flow-step.step-2,.gv-flow-step.step-3,.gv-flow-step.step-4,.gv-flow-step.step-5,.gv-flow-step.step-6{min-height:92px;padding:.8rem}.gv-flow-icon{width:56px;height:56px}.gv-flow-icon svg{width:30px;height:30px}
  .gv-home-benefits{padding:4px 14px 48px!important}.gv-benefit-grid{grid-template-columns:1fr}.gv-benefit-grid article{min-height:0;padding:1.25rem}.gv-benefit-grid p{max-width:320px}
  .gv-dashboard-showcase{width:calc(100vw - 28px);margin-bottom:50px!important;border-radius:18px}.gv-dashboard-copy h2{font-size:2.2rem}.gv-dashboard-frame{min-height:0}.gv-dash-top{height:50px}.gv-dash-body{grid-template-columns:54px 1fr}.gv-dash-body aside{padding:.7rem .45rem}.gv-dash-body aside b{justify-content:center;padding:.5rem .35rem}.gv-dash-body aside b span{display:none}.gv-dash-main{padding:.8rem}.gv-dash-search{width:100%}.gv-project-table>div{grid-template-columns:1.4fr .7fr .65fr;gap:.35rem;padding:0 .55rem}.gv-project-table>div span:nth-child(2),.gv-project-table>div span:last-child,.gv-project-table .head span:nth-child(2),.gv-project-table .head span:last-child{display:none}.gv-dash-heading small{display:none}
  .final-cta{margin:0 10px 18px!important;padding:2.2rem 1.35rem!important;border-radius:22px!important}.final-cta h2{font-size:2.35rem!important}.final-cta::after{font-size:.76rem}
}
@media(prefers-reduced-motion:reduce){.gv-hero-burst>i,.gv-ring-line::after{animation:none!important}}

/* ========================================================================== */
/* GaliVue V3.7.8.5 — premium motion, dark/lime accents & typography polish  */
/* ========================================================================== */

/* Premium hierarchy: strong titles, calmer supporting copy. */
.gv-home-hero .hero-story-copy,
.gv-section-heading p,
.gv-benefit-grid p,
.gv-dashboard-copy p,
.final-cta p{font-weight:450!important;letter-spacing:-.004em}
.gv-flow-copy b,.gv-benefit-grid h3,.gv-dashboard-copy h2,.final-cta h2{font-weight:650!important}

/* Hero depth without changing the approved palette. */
.gv-home-hero{background:
  radial-gradient(circle at 79% 76%,rgba(200,255,61,.075),transparent 34%),
  linear-gradient(180deg,#fff 0%,#fffdf8 100%)!important}
.gv-hero-visual::after{content:"";position:absolute;inset:auto 4% 1% 8%;height:28%;pointer-events:none;background:radial-gradient(ellipse at 55% 100%,rgba(200,255,61,.17),transparent 68%);filter:blur(15px);opacity:.75}
.gv-home-hero .hero-primary,.marketing-header .header-cta{box-shadow:0 10px 28px rgba(158,224,0,.18);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.gv-home-hero .hero-primary:hover,.marketing-header .header-cta:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(158,224,0,.25);filter:saturate(1.04)}

/* Sequential 1 → 6 workflow motion. JS toggles these classes only while visible. */
.gv-flow-step{transition:opacity .32s ease,transform .42s cubic-bezier(.2,.85,.25,1),filter .32s ease}
.gv-flow-icon{position:relative;overflow:visible;transition:transform .42s cubic-bezier(.2,.9,.25,1),box-shadow .42s ease,background .32s ease,color .32s ease,border-color .32s ease}
.gv-flow-icon::after{content:"";position:absolute;inset:-9px;border:1px solid rgba(200,255,61,0);border-radius:50%;opacity:0;transform:scale(.82);transition:opacity .34s ease,transform .42s cubic-bezier(.2,.9,.25,1),border-color .34s ease}
.gv-flow-copy b,.gv-flow-copy span{transition:color .3s ease,transform .38s ease,opacity .3s ease}
.gv-flow-step.is-flow-active{z-index:8;filter:saturate(1.06)}
.gv-flow-step.is-flow-active .gv-flow-icon{background:var(--gv-home-dark);color:var(--gv-home-lime);border-color:rgba(200,255,61,.42);box-shadow:0 18px 48px rgba(21,21,21,.16),0 0 0 7px rgba(200,255,61,.10);animation:gv-flow-soft-pop .72s cubic-bezier(.2,.9,.25,1)}
.gv-flow-step.is-flow-active .gv-flow-icon::after{opacity:1;transform:scale(1);border-color:rgba(200,255,61,.42)}
.gv-flow-step.is-flow-active .gv-flow-copy b{color:#6f9900;transform:translateY(-1px)}
.gv-flow-step.is-flow-active .gv-flow-copy span{color:#4e4a44}
.gv-flow-step.is-flow-done .gv-flow-icon{background:rgba(200,255,61,.11);border-color:rgba(158,224,0,.24);color:#7fae00}
.gv-workflow-ring.is-flow-running .gv-workflow-center{box-shadow:0 22px 58px rgba(21,21,21,.09),0 0 0 8px rgba(200,255,61,.035)}
.gv-workflow-ring.is-flow-running .gv-ring-line{border-color:rgba(158,224,0,.84)}
@keyframes gv-flow-soft-pop{0%{transform:translateY(0) scale(1)}42%{transform:translateY(-7px) scale(1.085)}72%{transform:translateY(-3px) scale(1.035)}100%{transform:translateY(-4px) scale(1.055)}}

/* Benefit cards: restrained depth, not glossy everywhere. */
.gv-benefit-grid article{position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.gv-benefit-grid article::after{content:"";position:absolute;right:-42px;bottom:-64px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(200,255,61,.13),transparent 67%);opacity:0;transition:opacity .28s ease}
.gv-benefit-grid article:hover{transform:translateY(-4px);border-color:rgba(158,224,0,.28);box-shadow:0 18px 42px rgba(21,21,21,.07)}
.gv-benefit-grid article:hover::after{opacity:1}

/* Premium product showcase: one controlled dark accent moment. */
.gv-dashboard-showcase{border-color:rgba(21,21,21,.10)!important;box-shadow:0 28px 80px rgba(21,21,21,.09)!important}
.gv-dashboard-copy{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#191919 0%,#111 72%,#0c0c0c 100%)!important;color:#fff!important}
.gv-dashboard-copy::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 0% 100%,rgba(200,255,61,.16),transparent 42%)}
.gv-dashboard-copy::after{content:"";position:absolute;left:-30%;bottom:-55%;z-index:-1;width:145%;height:115%;background:repeating-conic-gradient(from 255deg at 0% 100%,rgba(200,255,61,.30) 0 .24deg,transparent .32deg 4deg);opacity:.20;mask-image:radial-gradient(ellipse at 0% 100%,#000 0 44%,transparent 74%);-webkit-mask-image:radial-gradient(ellipse at 0% 100%,#000 0 44%,transparent 74%)}
.gv-dashboard-copy>span{color:var(--gv-home-lime)!important}
.gv-dashboard-copy h2{color:#fff!important;letter-spacing:-.045em!important}
.gv-dashboard-copy p{color:#c8c4bc!important}
.gv-dashboard-copy button{box-shadow:0 13px 32px rgba(200,255,61,.14)}
.gv-dashboard-frame{background:linear-gradient(180deg,#fff,#fdfcf9)!important}

/* Premium final CTA with actual trust blocks and a lime ray burst. */
.final-cta{position:relative!important;overflow:hidden!important;isolation:isolate!important;border:1px solid rgba(255,255,255,.075)!important;box-shadow:0 28px 85px rgba(0,0,0,.20)!important}
.final-cta::before{content:"";position:absolute;z-index:0;right:-5%;bottom:-42%;width:58%;height:150%;pointer-events:none;background:repeating-conic-gradient(from 220deg at 100% 100%,rgba(200,255,61,.58) 0 .22deg,transparent .3deg 3.4deg);opacity:.30;mask-image:radial-gradient(ellipse at 100% 100%,#000 0 46%,transparent 74%);-webkit-mask-image:radial-gradient(ellipse at 100% 100%,#000 0 46%,transparent 74%)}
.final-cta::after{content:none!important;display:none!important}
.final-cta>.section-kicker,.final-cta>h2,.final-cta>p,.final-cta>.final-cta-button,.final-cta>.gv-final-trust{position:relative;z-index:3}
.final-cta .cta-glow{z-index:1!important;width:860px!important;height:860px!important;right:-330px!important;bottom:-510px!important;opacity:.82}
.final-cta h2{max-width:520px!important;font-size:clamp(2.25rem,3.45vw,4rem)!important;letter-spacing:-.05em!important}
.final-cta p{max-width:470px!important;color:#bbb7b0!important;font-size:.86rem!important}
.gv-final-trust{grid-column:2;grid-row:1/5;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-self:center;gap:1.1rem;padding:1.35rem 0 1.35rem 2.2rem;border-left:1px solid rgba(255,255,255,.12)}
.gv-final-trust>div{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:.75rem;align-items:center;min-width:0;padding:.75rem .65rem;border-radius:15px;transition:background .24s ease,transform .24s ease}
.gv-final-trust>div:hover{background:rgba(255,255,255,.035);transform:translateY(-2px)}
.gv-final-trust>div>span{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(200,255,61,.54);border-radius:50%;color:var(--gv-home-lime);font-size:.82rem;font-weight:650}
.gv-final-trust strong{color:#f8f7f3;font-size:.78rem;font-weight:620;line-height:1.25}
.gv-final-trust small{margin-top:.22rem;color:#9f9b94;font-size:.67rem!important;font-weight:480!important;line-height:1.45}

/* Keep the full public page visually coherent. */
.marketing-page .section-kicker{letter-spacing:.105em!important}
.marketing-page p{max-width:72ch}
.marketing-footer{border-top-color:rgba(21,21,21,.08)!important}

/* Tablet / split-screen: circular desktop story becomes clean cards, animation survives. */
@media(max-width:900px){
  .gv-flow-step.is-flow-active{transform:translateY(-2px)}
  .gv-flow-step.is-flow-active .gv-flow-icon{animation:gv-flow-card-pop .68s cubic-bezier(.2,.9,.25,1)}
  .gv-flow-step.is-flow-active{border-color:rgba(158,224,0,.42)!important;box-shadow:0 14px 34px rgba(21,21,21,.07)}
  @keyframes gv-flow-card-pop{0%{transform:scale(1)}45%{transform:scale(1.075)}100%{transform:scale(1.035)}}
  .gv-dashboard-copy::after{left:-12%;bottom:-62%;width:120%;opacity:.16}
  .gv-final-trust{grid-column:1;grid-row:auto;grid-template-columns:repeat(3,minmax(0,1fr));padding:1.25rem 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}
  .final-cta::before{right:-20%;bottom:-34%;width:82%;height:120%;opacity:.22}
}

@media(max-width:640px){
  .gv-home-hero .hero-story-copy{max-width:36ch!important}
  .gv-flow-step.is-flow-active{transform:none}
  .gv-benefit-grid article:hover{transform:none}
  .gv-dashboard-copy{padding:2rem 1.45rem!important}
  .gv-dashboard-copy::after{left:-18%;bottom:-48%;width:140%;height:105%;opacity:.14}
  .gv-final-trust{grid-template-columns:1fr;gap:.25rem;padding-top:1rem}
  .gv-final-trust>div{grid-template-columns:30px 1fr;padding:.55rem .1rem}
  .gv-final-trust>div>span{width:28px;height:28px}
  .final-cta::before{right:-34%;bottom:-10%;width:128%;height:92%;opacity:.18}
}

@media(max-width:390px){
  .gv-home-hero h1{letter-spacing:-.052em!important}
  .gv-home-hero .hero-actions{gap:.55rem!important}
  .gv-home-hero .hero-primary,.gv-home-hero .demo-link{padding:0 .95rem!important;font-size:.79rem!important}
  .gv-final-trust strong{font-size:.76rem}.gv-final-trust small{font-size:.65rem!important}
}

@media(prefers-reduced-motion:reduce){
  .gv-flow-step,.gv-flow-icon,.gv-flow-icon::after,.gv-benefit-grid article,.gv-home-hero .hero-primary,.marketing-header .header-cta{transition:none!important}
  .gv-flow-step.is-flow-active .gv-flow-icon{animation:none!important;transform:none!important}
}

/* ========================================================================== */
/* GaliVue V3.7.8.6 — approved premium public-page system                     */
/* ========================================================================== */

/* Refined Option 2 logo: same wordmark, subtle left-side cut on lime Vue. */
.brand{background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important}
.brand span{position:relative!important;display:inline-block!important;margin-left:.075em!important;padding:.11em .19em .135em .20em!important;border-radius:5px!important;background:#C8FF3D!important;color:#151515!important;clip-path:polygon(8px 0,100% 0,100% 100%,8px 100%,8px 66%,0 58%,8px 50%)!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.brand:focus-visible{outline:2px solid #9EE000!important;outline-offset:5px!important;border-radius:8px!important}

/* Hero: rebalance origin in the centre of the right half and slow all light. */
.gv-hero-burst>i{left:50%!important;bottom:-1%!important;animation-duration:9.6s!important}
.gv-burst-glow{left:50%!important;width:235px!important;height:130px!important;opacity:.82!important;animation:gv-glow-calm 8.8s ease-in-out infinite}
.gv-hero-burst::before{left:6%!important;right:-8%!important;bottom:-13%!important;background:radial-gradient(ellipse at 50% 100%,rgba(200,255,61,.29),rgba(200,255,61,.08) 36%,transparent 70%)!important}
.gv-hero-visual::after{inset:auto 6% 0 6%!important;background:radial-gradient(ellipse at 50% 100%,rgba(200,255,61,.16),transparent 68%)!important;animation:gv-glow-calm 10.4s ease-in-out -2s infinite}
@keyframes gv-glow-calm{0%,100%{opacity:.55;filter:blur(14px) brightness(.96)}50%{opacity:.82;filter:blur(18px) brightness(1.05)}}

/* Premium “Understand GaliVue” demo. */
.premium-demo{position:relative!important;isolation:isolate!important;display:grid!important;grid-template-columns:minmax(320px,.72fr) minmax(600px,1.28fr)!important;align-items:center!important;gap:clamp(2.8rem,5.6vw,6rem)!important;width:min(1540px,calc(100vw - 80px))!important;max-width:none!important;margin:0 auto!important;padding:clamp(5rem,8vw,8rem) 0!important;background:transparent!important;overflow:hidden!important}
.premium-demo-glow{position:absolute;z-index:-1;right:-14%;top:4%;width:52%;height:52%;background:repeating-conic-gradient(from 202deg at 100% 35%,rgba(200,255,61,.25) 0 .22deg,transparent .32deg 3.8deg);opacity:.18;mask-image:radial-gradient(ellipse at 100% 40%,#000 0 35%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 100% 40%,#000 0 35%,transparent 72%);animation:gv-glow-calm 11s ease-in-out infinite}
.premium-demo .demo-copy{max-width:620px!important}
.premium-demo .section-kicker{color:#79A900!important;font-size:.72rem!important;font-weight:650!important;letter-spacing:.11em!important}
.premium-demo .demo-copy h2{margin:.7rem 0 1.2rem!important;color:#151515!important;font-size:clamp(3rem,4.6vw,5.6rem)!important;font-weight:690!important;letter-spacing:-.062em!important;line-height:.96!important}
.premium-demo .lime-dot{color:#83B900!important}
.premium-demo .demo-copy>p:not(.demo-helper){max-width:610px!important;color:#5B5750!important;font-size:1rem!important;font-weight:430!important;line-height:1.7!important}
.premium-demo .demo-progress{justify-content:flex-start!important;margin:2.2rem 0 1.45rem!important}
.premium-demo .demo-progress span{font-weight:560!important;color:#A29E96!important}.premium-demo .demo-progress span.active{color:#151515!important}.premium-demo .demo-progress span i{width:42px!important;height:42px!important;font-weight:650!important;background:#fff!important;border:1.5px solid #d8d4cb!important}.premium-demo .demo-progress span.active i{background:#fff!important;border-color:#8FBE12!important;color:#151515!important;box-shadow:0 0 0 6px rgba(200,255,61,.06)}
.premium-demo .demo-progress b{width:54px!important;background:#d9d5cd!important}
.premium-demo .demo-helper{display:flex!important;align-items:center!important;min-height:60px!important;max-width:590px!important;margin:0 0 1.1rem!important;padding:.9rem 1rem!important;border:1px solid rgba(158,224,0,.28)!important;border-radius:12px!important;background:rgba(200,255,61,.035)!important;color:#2E341F!important;font-size:.88rem!important;font-weight:560!important}
.premium-demo .demo-action{min-height:56px!important;padding:0 1.55rem!important;border-radius:13px!important;font-size:.94rem!important;font-weight:650!important;box-shadow:0 14px 38px rgba(158,224,0,.18)!important}
.premium-demo .demo-device{border:1px solid rgba(21,21,21,.09)!important;border-radius:28px!important;background:#fff!important;box-shadow:0 30px 85px rgba(21,21,21,.10)!important}
.premium-demo .demo-device-bar{padding:1.15rem 1.35rem!important;background:#fff!important;border-bottom-color:#ece9e2!important}.premium-demo .demo-device-bar .brand{font-size:1.45rem!important}.premium-demo .demo-private-pill{padding:.55rem .8rem!important;border:1px solid #dedad1!important;border-radius:999px!important;background:#fffdfa!important;color:#514d47!important;font-size:.72rem!important;font-weight:560!important}
.premium-demo .demo-message{padding:1.15rem 1.35rem!important}.premium-demo .demo-message b{font-size:1rem!important;font-weight:650!important}.premium-demo .demo-message span{font-size:.78rem!important;font-weight:450!important}
.premium-demo .demo-photo-grid{gap:.8rem!important;padding:1rem 1.2rem 1.25rem!important}.premium-demo .demo-photo-card{border-color:#e0dcd4!important;border-radius:16px!important;box-shadow:0 8px 18px rgba(21,21,21,.03)!important}.premium-demo .demo-photo-card>b{padding:.72rem .72rem .28rem!important;font-size:.76rem!important;font-weight:620!important}.premium-demo .demo-stars button{min-height:40px!important;border-radius:10px!important;font-weight:620!important}.premium-demo .demo-stars button.active{background:#C8FF3D!important;border-color:#9EE000!important;box-shadow:0 5px 14px rgba(158,224,0,.13)!important}

/* Premium features section — high clarity, light main surface + one dark trust accent. */
.premium-features{width:min(1540px,calc(100vw - 80px))!important;max-width:none!important;margin:0 auto!important;padding:5rem 0 7rem!important;background:#fff!important}
.premium-features-hero{position:relative;display:grid;grid-template-columns:minmax(360px,.78fr) minmax(620px,1.22fr);align-items:center;gap:clamp(3rem,6vw,7rem);padding:1.2rem 0 4rem}
.premium-features-hero>div:first-child{max-width:590px}.premium-features-hero .section-kicker{color:#7EA900!important;font-size:.72rem!important}.premium-features-hero h2{margin:.7rem 0 1rem;font-size:clamp(2.8rem,4.2vw,5rem);font-weight:690;line-height:.98;letter-spacing:-.058em}.premium-features-hero p{max-width:560px;color:#5A554E;font-size:.96rem;font-weight:440;line-height:1.7}.premium-feature-actions{display:flex;gap:.8rem;margin-top:1.5rem}.premium-feature-actions .accent-button,.premium-feature-actions .demo-link{min-height:48px;border-radius:10px}
.feature-product-window{overflow:hidden;border:1px solid #e5e1d9;border-radius:22px;background:#fff;box-shadow:0 26px 70px rgba(21,21,21,.09)}.feature-window-top{display:flex;justify-content:space-between;align-items:center;height:56px;padding:0 16px;background:#171717;color:#fff}.feature-window-top .brand{color:#fff!important;font-size:1rem!important}.feature-window-top>span{font-size:.66rem;color:#b9b5ae}.feature-window-body{display:grid;grid-template-columns:130px 1fr;min-height:300px}.feature-window-body aside{display:flex;flex-direction:column;gap:.45rem;padding:1rem .8rem;background:#fbfaf7;border-right:1px solid #eeeae3}.feature-window-body aside b,.feature-window-body aside span{padding:.55rem .65rem;border-radius:8px;font-size:.66rem}.feature-window-body aside b{background:rgba(200,255,61,.22)}.feature-window-main{padding:1rem}.feature-window-title{display:flex;align-items:center;justify-content:space-between}.feature-window-title strong{font-size:1.15rem}.feature-window-title i{padding:.45rem .6rem;border-radius:8px;background:#C8FF3D;font-size:.62rem;font-style:normal;font-weight:650}.feature-window-search{margin:.8rem 0;padding:.55rem .7rem;border:1px solid #eeeae3;border-radius:8px;color:#aaa59c;font-size:.64rem}.feature-window-rows{display:grid}.feature-window-rows span{display:flex;justify-content:space-between;padding:.72rem .2rem;border-bottom:1px solid #f0ede7;font-size:.66rem}.feature-window-rows em{padding:.18rem .4rem;border-radius:999px;background:rgba(200,255,61,.18);font-style:normal;color:#688d00}
.premium-feature-panel{padding:2.1rem;border:1px solid #e7e3dc;border-radius:26px;background:#fff;box-shadow:0 20px 60px rgba(21,21,21,.045)}.premium-feature-heading{text-align:center}.premium-feature-heading h3{margin:0;font-size:1.7rem;font-weight:670;letter-spacing:-.035em}.premium-feature-heading p{margin:.55rem auto 0;color:#777169;font-size:.82rem}.premium-feature-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.7rem!important;margin-top:1.6rem!important}.premium-feature-grid article{position:relative;min-height:170px!important;padding:1.2rem!important;border:1px solid #eeeae3!important;border-radius:15px!important;background:#fff!important;box-shadow:none!important}.premium-feature-grid article:hover{border-color:rgba(158,224,0,.34)!important;box-shadow:0 14px 30px rgba(21,21,21,.045)!important;transform:translateY(-2px)}.premium-feature-grid .feature-number{position:absolute;right:1rem;top:1rem;color:#bbb6ad;font-size:.56rem;font-weight:650}.premium-feature-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:.75rem;border-radius:50%;background:rgba(200,255,61,.14);color:#7DA900;font-size:1.35rem;font-weight:500}.premium-feature-grid h3{margin:0!important;font-size:.88rem!important;font-weight:630!important}.premium-feature-grid p{margin:.45rem 0 0!important;color:#706b64!important;font-size:.72rem!important;line-height:1.55!important}.feature-flow-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1rem;margin:2rem 0;padding:1.1rem;border:1px solid #ebe7df;border-radius:18px;background:#fff}.feature-flow-strip span{font-size:.74rem;font-weight:600}.feature-flow-strip i{color:#86B600;font-style:normal}.feature-trust-dark{position:relative;overflow:hidden;display:grid;grid-template-columns:1.5fr repeat(3,.75fr);align-items:center;gap:1.5rem;padding:1.7rem 2rem;border-radius:22px;background:#151515;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.16)}.feature-trust-dark::after{content:"";position:absolute;right:-6%;bottom:-110%;width:40%;height:240%;background:radial-gradient(circle,rgba(200,255,61,.22),transparent 60%);filter:blur(20px)}.feature-trust-dark h3{margin:0;font-size:1.2rem;font-weight:630}.feature-trust-dark p{margin:.4rem 0 0;color:#aaa69e;font-size:.73rem}.feature-trust-dark>span{position:relative;z-index:2;display:flex;gap:.6rem;align-items:center;color:#C8FF3D;font-size:.82rem}.feature-trust-dark b{color:#fff;font-size:.74rem;font-weight:560}

/* Premium pricing. */
.premium-pricing{position:relative!important;overflow:hidden!important;isolation:isolate!important;width:min(1540px,calc(100vw - 80px))!important;max-width:none!important;margin:0 auto!important;padding:6rem 0 7rem!important;background:#fff!important}
.premium-pricing-burst{position:absolute;z-index:-1;right:-13%;top:0;width:49%;height:36%;background:repeating-conic-gradient(from 204deg at 100% 35%,rgba(200,255,61,.29) 0 .22deg,transparent .34deg 3.9deg);opacity:.19;mask-image:radial-gradient(ellipse at 100% 42%,#000 0 38%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 100% 42%,#000 0 38%,transparent 72%);animation:gv-glow-calm 10.8s ease-in-out infinite}.premium-pricing-heading{text-align:center}.premium-pricing-heading .section-kicker{color:#7EA900!important}.premium-pricing-heading h2{margin:.5rem 0 .8rem;font-size:clamp(3.2rem,5vw,5.9rem);font-weight:690;letter-spacing:-.065em;line-height:.94}.premium-pricing-heading p{margin:0 auto;max-width:620px;color:#666159;font-size:.95rem;line-height:1.6}.premium-billing-row{display:flex!important;flex-direction:column!important;align-items:center!important;gap:.7rem!important;margin:2rem 0!important}.premium-billing-row .pricing-billing-toggle{min-width:min(430px,100%)}.premium-billing-row #pricingBillingSummary{text-align:center!important;font-size:.72rem!important;color:#777169!important}
.premium-pricing-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.9rem!important;margin-top:2rem!important}.premium-pricing-grid article{display:flex!important;flex-direction:column!important;min-height:560px!important;padding:1.55rem!important;border:1px solid #e5e1da!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 34px rgba(21,21,21,.045)!important}.premium-pricing-grid article.pricing-featured{border-color:#AEE20B!important;box-shadow:0 20px 54px rgba(158,224,0,.10)!important}.premium-pricing-grid .popular-tag{top:1rem!important;right:1rem!important;padding:.38rem .6rem!important;border-radius:999px!important;font-size:.56rem!important}.premium-pricing-grid .plan-top>span{font-size:.88rem!important;font-weight:620!important;letter-spacing:0!important}.premium-pricing-grid .plan-top h3{margin:.7rem 0 .4rem!important}.premium-pricing-grid .plan-top h3 b{font-size:3.4rem!important;font-weight:680!important;letter-spacing:-.07em!important}.premium-pricing-grid .plan-top h3 small{display:inline!important;margin-left:.25rem!important;font-size:.72rem!important;font-weight:470!important}.premium-pricing-grid .plan-billing-note{min-height:42px!important;color:#6D9800!important;font-size:.7rem!important;font-weight:560!important}.premium-pricing-grid .plan-top p{min-height:44px;color:#777169!important;font-size:.76rem!important}.premium-pricing-grid ul{margin:1.1rem 0 1.4rem!important;padding:0!important;list-style:none!important}.premium-pricing-grid li{position:relative;margin:.7rem 0!important;padding-left:1.45rem!important;color:#4F4B45!important;font-size:.73rem!important;line-height:1.4!important}.premium-pricing-grid li::before{content:"✓"!important;position:absolute;left:0;top:.02rem;display:grid;place-items:center;width:16px;height:16px;border:1px solid #9ECF25;border-radius:50%;color:#739F00;font-size:.56rem;font-weight:700}.premium-pricing-grid article>button{margin-top:auto!important;min-height:48px!important;border-radius:10px!important;font-weight:620!important}.premium-pricing-grid .cancel-note{margin-top:.65rem!important;color:#99948C!important;font-size:.62rem!important;line-height:1.4!important}.premium-free-plan .plan-billing-note{color:#777169!important}
.pricing-confidence{margin:3.2rem 0 2rem}.pricing-confidence>h3{text-align:center;font-size:1.8rem;font-weight:660;letter-spacing:-.04em}.pricing-confidence>div{display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem;margin-top:1.2rem}.pricing-confidence article{display:grid;justify-items:center;gap:.4rem;min-height:150px;padding:1rem;border:1px solid #ebe7df;border-radius:15px;text-align:center}.pricing-confidence article>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(200,255,61,.14);color:#7EA900;font-size:1.2rem}.pricing-confidence b{font-size:.75rem;font-weight:620}.pricing-confidence small{color:#777169;font-size:.64rem;line-height:1.45}

/* Premium payment & subscription conditions. */
.premium-payment-conditions{margin-top:3rem!important;padding:2.2rem!important;border:1px solid #e6e2da!important;border-radius:24px!important;background:linear-gradient(180deg,#fff,#fffdf9)!important;color:#151515!important;box-shadow:0 24px 70px rgba(21,21,21,.055)!important}.premium-payment-conditions .payment-conditions-heading{align-items:flex-end!important;margin-bottom:1.5rem!important}.premium-payment-conditions .payment-conditions-heading span{color:#7EA900!important;font-size:.66rem!important;font-weight:650!important}.premium-payment-conditions .payment-conditions-heading h3{color:#151515!important;font-size:2rem!important;font-weight:670!important;letter-spacing:-.04em!important}.premium-payment-conditions .payment-conditions-heading p{color:#706B63!important;font-size:.76rem!important;font-weight:440!important}.payment-plan-strip{display:grid;grid-template-columns:1.1fr repeat(4,1fr);align-items:center;margin-bottom:1.2rem;padding:1rem 1.1rem;border:1px solid #ebe7df;border-radius:15px;background:#fff}.payment-plan-strip>strong{font-size:.9rem}.payment-plan-strip>span{display:grid;grid-template-columns:30px 1fr;column-gap:.45rem;align-items:center;padding:.15rem .7rem;border-left:1px solid #ece8e1;font-size:.76rem}.payment-plan-strip>span:first-of-type{border-left:0}.payment-plan-strip>span::first-letter{color:#80AC00}.payment-plan-strip b{font-size:.72rem;font-weight:620}.payment-plan-strip small{grid-column:2;color:#8B867E;font-size:.61rem}.premium-condition-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.8rem!important}.premium-condition-grid article{display:grid!important;grid-template-columns:48px 1fr!important;grid-template-rows:auto 1fr!important;column-gap:.85rem!important;min-height:142px!important;padding:1rem!important;border:1px solid #ebe7df!important;border-radius:15px!important;background:#fff!important}.premium-condition-grid article i{grid-row:1/3;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:rgba(200,255,61,.15);color:#5F8200;font-size:1.05rem;font-style:normal;font-weight:620}.premium-condition-grid article b{color:#151515!important;font-size:.8rem!important;font-weight:630!important}.premium-condition-grid article span{margin-top:.35rem!important;color:#706B64!important;font-size:.69rem!important;font-weight:440!important;line-height:1.5!important}.payment-help{display:grid;grid-template-columns:42px auto 1fr;align-items:center;gap:.8rem;margin-top:1rem;padding:.8rem 1rem;border:1px solid #ebe7df;border-radius:14px;background:#fff}.payment-help>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(200,255,61,.17);color:#6D9500;font-weight:700}.payment-help b,.payment-help small{display:block}.payment-help b{font-size:.76rem}.payment-help small{margin-top:.1rem;color:#8B867E;font-size:.64rem}.payment-help a{justify-self:end;padding:.55rem .75rem;border:1px solid #dcd8d0;border-radius:9px;color:#151515;text-decoration:none;font-size:.68rem;font-weight:600}

/* Approved premium footer. */
.premium-footer{position:relative!important;isolation:isolate!important;overflow:hidden!important;display:grid!important;grid-template-columns:1.65fr repeat(3,1fr)!important;gap:3rem!important;padding:5rem max(5vw,48px) 2.2rem!important;background:linear-gradient(135deg,#111214,#0a0b0c 72%,#11150b)!important;color:#fff!important;border-top:0!important}.premium-footer-glow{position:absolute;z-index:-1;right:-8%;top:-70%;width:55%;height:180%;background:radial-gradient(circle,rgba(200,255,61,.22),rgba(200,255,61,.05) 38%,transparent 68%);filter:blur(22px);animation:gv-glow-calm 11.5s ease-in-out infinite}.premium-footer .footer-brand .brand{color:#fff!important;font-size:2rem!important}.premium-footer .footer-brand p{max-width:390px;margin:1.2rem 0 1.6rem!important;color:#b1ada5!important;font-size:.95rem!important;font-weight:430!important;line-height:1.65!important}.footer-try{display:inline-flex!important;align-items:center!important;gap:.75rem!important;min-height:54px!important;padding:0 1.1rem!important;border:1px solid rgba(200,255,61,.5)!important;border-radius:12px!important;background:rgba(200,255,61,.025)!important;color:#fff!important;font-size:.88rem!important;font-weight:600!important}.footer-try span{min-width:160px;text-align:left}.footer-links{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:.35rem!important}.footer-links>b{display:flex;align-items:center;gap:.55rem;margin-bottom:.8rem!important;color:#fff!important;font-size:1rem!important;font-weight:620!important}.footer-links>b::before{content:"○";color:#C8FF3D;font-size:1.25rem}.footer-links a,.footer-links button{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;padding:.52rem 0!important;color:#b8b4ac!important;font-size:.83rem!important;font-weight:470!important}.footer-links a span,.footer-links button span{color:#C8FF3D;font-size:1.1rem}.premium-footer .footer-bottom{grid-column:1/-1!important;display:flex!important;justify-content:space-between!important;align-items:center!important;margin-top:1.5rem!important;padding-top:1.6rem!important;border-top:1px solid rgba(255,255,255,.13)!important;color:#8f8b84!important;font-size:.72rem!important}.premium-footer .footer-bottom>div{display:flex;gap:1.5rem}.premium-footer .footer-bottom>div span:nth-child(2){color:#C8FF3D}.premium-footer .footer-bottom>div span:nth-child(2)::first-letter{color:#C8FF3D}

/* Responsive behaviour — same design language across common screen sizes. */
@media(max-width:1180px){
  .premium-demo,.premium-features,.premium-pricing{width:min(100% - 48px,1180px)!important}
  .premium-demo{grid-template-columns:1fr!important}.premium-demo .demo-copy{max-width:780px!important}.premium-demo-glow{right:-25%;top:-2%;width:70%;height:35%}
  .premium-features-hero{grid-template-columns:1fr!important}.premium-features-hero>div:first-child{max-width:780px}.feature-product-window{max-width:920px;width:100%}
  .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pricing-confidence>div{grid-template-columns:repeat(3,1fr)}
  .premium-footer{grid-template-columns:1.4fr repeat(3,1fr)!important;gap:1.8rem!important}
}
@media(max-width:900px){
  .premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.feature-trust-dark{grid-template-columns:1fr!important}.feature-trust-dark>span{padding:.2rem 0}
  .payment-plan-strip{grid-template-columns:1fr 1fr}.payment-plan-strip>strong{grid-column:1/-1;margin-bottom:.55rem}.payment-plan-strip>span{border-left:0;border-top:1px solid #ece8e1;padding:.7rem .35rem}
  .premium-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.premium-payment-conditions .payment-conditions-heading{display:grid!important;gap:.6rem!important}.premium-payment-conditions .payment-conditions-heading p{text-align:left!important}
  .premium-footer{grid-template-columns:1.4fr 1fr 1fr!important}.premium-footer .footer-links:last-of-type{grid-column:2/4}.premium-footer .footer-bottom{align-items:flex-start!important;gap:1rem!important;flex-direction:column!important}
}
@media(max-width:720px){
  .premium-demo,.premium-features,.premium-pricing{width:calc(100% - 28px)!important;padding-top:4rem!important;padding-bottom:4.5rem!important}.premium-demo .demo-copy h2,.premium-pricing-heading h2{font-size:clamp(2.65rem,12vw,4.2rem)!important}.premium-demo .demo-copy>p:not(.demo-helper),.premium-pricing-heading p{font-size:.88rem!important}.premium-demo .demo-progress{overflow-x:auto;padding-bottom:.3rem}.premium-demo .demo-progress b{min-width:32px!important}.premium-demo .demo-device{border-radius:20px!important}.premium-demo .demo-device-bar{padding:.9rem!important}.premium-demo .demo-private-pill{font-size:.64rem!important}.premium-demo .demo-message{align-items:flex-start!important;flex-direction:column!important;gap:.25rem!important;padding:.9rem!important}
  .premium-features-hero{padding-bottom:2.5rem}.premium-features-hero h2{font-size:clamp(2.55rem,11vw,4rem)}.premium-feature-actions{flex-direction:column;align-items:stretch}.premium-feature-actions>*{justify-content:center;width:100%}.feature-product-window{border-radius:16px}.feature-window-body{grid-template-columns:58px 1fr}.feature-window-body aside{padding:.55rem .4rem}.feature-window-body aside b,.feature-window-body aside span{font-size:0;text-align:center}.feature-window-body aside b::first-letter,.feature-window-body aside span::first-letter{font-size:.7rem}.feature-window-title i{font-size:0}.feature-window-title i::after{content:"＋";font-size:.8rem}.premium-feature-panel{padding:1rem;border-radius:18px}.premium-feature-grid{grid-template-columns:1fr!important}.premium-feature-grid article{min-height:0!important}.feature-flow-strip{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.feature-flow-strip span,.feature-flow-strip i{white-space:nowrap}.feature-trust-dark{padding:1.4rem;border-radius:18px}
  .premium-pricing-grid{grid-template-columns:1fr!important}.premium-pricing-grid article{min-height:0!important}.pricing-confidence>div{grid-template-columns:repeat(2,1fr)}.premium-payment-conditions{padding:1.15rem!important}.premium-payment-conditions .payment-conditions-heading h3{font-size:1.55rem!important}.payment-plan-strip{grid-template-columns:1fr}.payment-plan-strip>span{grid-template-columns:28px 1fr}.premium-condition-grid{grid-template-columns:1fr!important}.premium-condition-grid article{min-height:0!important}.payment-help{grid-template-columns:38px 1fr}.payment-help a{grid-column:1/-1;justify-self:stretch;text-align:center}
  .premium-footer{grid-template-columns:1fr 1fr!important;padding:3.5rem 20px 1.5rem!important}.premium-footer .footer-brand{grid-column:1/-1}.premium-footer .footer-links:last-of-type{grid-column:auto}.premium-footer .footer-bottom{grid-column:1/-1!important}.premium-footer .footer-bottom>div{flex-wrap:wrap;gap:.75rem 1rem}
}
@media(max-width:460px){
  .brand span{clip-path:polygon(6px 0,100% 0,100% 100%,6px 100%,6px 66%,0 58%,6px 50%)!important}
  .pricing-confidence>div{grid-template-columns:1fr}.premium-footer{grid-template-columns:1fr!important}.premium-footer .footer-links,.premium-footer .footer-links:last-of-type{grid-column:1}.premium-footer .footer-brand .brand{font-size:1.7rem!important}.footer-try{width:100%!important;justify-content:space-between!important}.footer-try span{min-width:0;flex:1}
}
@media(prefers-reduced-motion:reduce){.gv-burst-glow,.gv-hero-visual::after,.premium-demo-glow,.premium-pricing-burst,.premium-footer-glow{animation:none!important}}

/* ========================================================================== */
/* GaliVue V3.7.8.7 FINAL — approved PNG lock + one logo system              */
/* ========================================================================== */
:root{
  --gv-final-lime:#C8FF3D;
  --gv-final-lime-deep:#9EE000;
  --gv-final-cream:#F5F2EB;
  --gv-final-ink:#151515;
  --gv-final-muted:#68635C;
  --gv-final-line:#E6E1D8;
  --gv-final-dark:#101112;
}

/* One master Option-2 logo geometry everywhere on the web. The circular mask
   creates the approved smooth left-side cavu instead of the old sharp polygon. */
.brand,.workspace-brand-mark,.gv-logo-mark{
  display:inline-flex!important;align-items:center!important;gap:0!important;
  color:var(--gv-final-ink)!important;text-decoration:none!important;
  font-family:"Avenir Next","SF Pro Display",Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:760!important;letter-spacing:-.06em!important;line-height:1!important;
}
.brand span,.workspace-brand-mark span,.gv-logo-mark span{
  position:relative!important;display:inline-block!important;margin-left:.065em!important;
  padding:.115em .225em .135em .255em!important;border-radius:.23em!important;
  background:var(--gv-final-lime)!important;color:var(--gv-final-ink)!important;
  clip-path:none!important;
  -webkit-mask-image:radial-gradient(circle at 0 50%,transparent 0 .19em,#000 .205em)!important;
  mask-image:radial-gradient(circle at 0 50%,transparent 0 .19em,#000 .205em)!important;
  -webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;
}
.premium-footer .brand,.gv-dash-top .brand,.feature-window-top .brand{color:#fff!important}
.workspace-brand-mark{font-size:1.38rem!important}

/* Public header: same clean premium proportions as the approved PNGs. */
.marketing-header{
  width:min(1500px,calc(100vw - 36px))!important;min-height:68px!important;margin:10px auto 0!important;
  padding:0 18px 0 24px!important;border:1px solid rgba(21,21,21,.065)!important;border-radius:18px!important;
  background:rgba(255,255,255,.94)!important;box-shadow:0 12px 34px rgba(21,21,21,.055)!important;
  backdrop-filter:blur(18px)!important;
}
.marketing-header .brand{font-size:1.5rem!important}.marketing-page{padding-top:88px!important}
.marketing-header .header-cta{background:var(--gv-final-lime)!important;border-color:var(--gv-final-lime-deep)!important;color:#111!important}

/* Homepage hero: copy stays on the left, burst is calm and centred in right half. */
.gv-home-hero{background:linear-gradient(180deg,#fff 0%,#fffdf8 100%)!important}
.gv-hero-grid{width:min(1500px,calc(100vw - 54px))!important;grid-template-columns:minmax(0,.82fr) minmax(560px,1.18fr)!important;min-height:620px!important}
.gv-hero-copy{padding-left:18px!important;padding-right:22px!important}
.gv-home-hero h1{max-width:720px!important;font-weight:720!important}
.gv-home-hero .hero-story-copy{display:block!important;max-width:550px!important;text-align:left!important;margin-left:0!important;margin-right:0!important}
.gv-home-hero .hero-story-copy span{display:inline!important}
.gv-home-hero .hero-trust-line strong{color:#31302c;font-weight:650!important}
.gv-hero-burst>i{left:50%!important;bottom:-1%!important;animation-duration:10.8s!important}
.gv-burst-glow{left:50%!important;width:220px!important;height:118px!important;opacity:.68!important;animation:gv-final-glow 9.8s ease-in-out infinite!important}
.gv-hero-visual::after{opacity:.46!important;animation:gv-final-glow 12s ease-in-out -3s infinite!important}
@keyframes gv-final-glow{0%,100%{opacity:.42;filter:blur(14px) brightness(.96)}50%{opacity:.72;filter:blur(18px) brightness(1.03)}}

/* Circular 1→6 workflow. Ring itself stays calm; only one step pops at a time. */
.gv-home-workflow{padding-top:62px!important}.gv-workflow-ring{max-width:1040px!important}
.gv-ring-line::after{animation:none!important;opacity:.24!important;filter:blur(2px)!important}
.gv-workflow-ring.is-flow-running .gv-workflow-center{box-shadow:0 20px 54px rgba(21,21,21,.075)!important}
.gv-flow-step.is-flow-active .gv-flow-icon{animation:gv-final-step-pop .72s cubic-bezier(.2,.88,.25,1)!important;box-shadow:0 16px 42px rgba(21,21,21,.14),0 0 0 6px rgba(200,255,61,.11)!important}
@keyframes gv-final-step-pop{0%{transform:scale(1) translateY(0)}45%{transform:scale(1.075) translateY(-6px)}100%{transform:scale(1.035) translateY(-3px)}}

/* Understand GaliVue — approved layout: copy + burst above, full gallery below. */
#live-demo.premium-demo{
  position:relative!important;display:block!important;width:min(1420px,calc(100vw - 64px))!important;
  margin:0 auto!important;padding:6.2rem 0 7rem!important;overflow:hidden!important;background:transparent!important;
}
#live-demo .premium-demo-glow{right:-8%!important;top:2.5%!important;width:45%!important;height:40%!important;opacity:.19!important;animation:gv-final-glow 12s ease-in-out infinite!important}
#live-demo .demo-copy{position:relative;z-index:2;max-width:760px!important;padding-left:18px!important}
#live-demo .demo-copy h2{font-size:clamp(3.8rem,5.9vw,6rem)!important;line-height:.94!important;max-width:760px!important}
#live-demo .demo-copy>p:not(.demo-helper){max-width:690px!important;font-size:1.03rem!important}
#live-demo .demo-progress{margin-top:2.1rem!important}
#live-demo .demo-helper{max-width:690px!important;background:#fffef9!important}
#live-demo .demo-device{position:relative;z-index:3;width:100%!important;margin-top:2.6rem!important;border-radius:26px!important;box-shadow:0 30px 80px rgba(21,21,21,.085)!important}
#live-demo .demo-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1rem!important;padding:1.1rem 1.35rem 1.4rem!important}
#live-demo .demo-image{min-height:360px!important}

/* Features page — exact approved hierarchy: split hero, 4x3 feature cards, flow strip, dark trust. */
#features.premium-features{width:min(1420px,calc(100vw - 64px))!important;padding:6rem 0 7rem!important;background:#fff!important}
#features .premium-features-hero{grid-template-columns:minmax(340px,.78fr) minmax(560px,1.22fr)!important;gap:clamp(3rem,6vw,6.5rem)!important;padding:0 18px 4rem!important}
#features .premium-features-hero h2{font-size:clamp(3.25rem,4.7vw,5.25rem)!important}
#features .feature-product-window{min-height:420px!important}
#features .feature-window-body{min-height:360px!important}
#features .premium-feature-panel{padding:2.15rem!important;border-radius:24px!important}
#features .premium-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.75rem!important}
#features .premium-feature-grid article{min-height:160px!important;padding:1.05rem!important}
#features .premium-feature-grid h3{font-size:.83rem!important;font-weight:640!important;line-height:1.25!important}
#features .premium-feature-grid p{font-size:.68rem!important;line-height:1.48!important}
#features .feature-flow-strip{margin-top:0!important;padding:2rem 1rem!important;border:1px solid var(--gv-final-line)!important;border-top:0!important;border-radius:0 0 22px 22px!important;background:#fff!important}
#features .feature-trust-dark{margin-top:1.4rem!important;border-radius:20px!important;background:linear-gradient(125deg,#141516,#0c0d0e)!important}

/* Pricing page — remove all old black inheritance and lock the approved 4-card layout. */
#pricing.premium-pricing{
  position:relative!important;isolation:isolate!important;width:100%!important;max-width:none!important;margin:0!important;
  padding:6.5rem max(4vw,26px) 7.5rem!important;background:linear-gradient(180deg,#fffdf8 0%,#fff 46%,#fffdf9 100%)!important;color:var(--gv-final-ink)!important;
  overflow:hidden!important;
}
#pricing .premium-pricing-burst{right:-5%!important;top:2%!important;width:44%!important;height:28%!important;opacity:.18!important;animation:gv-final-glow 12s ease-in-out infinite!important}
#pricing .premium-pricing-heading{position:relative;z-index:2;max-width:900px!important;margin:0 auto!important;text-align:center!important}
#pricing .premium-pricing-heading h2{color:var(--gv-final-ink)!important;font-size:clamp(3.7rem,5.3vw,5.7rem)!important;font-weight:710!important;line-height:.96!important}
#pricing .premium-pricing-heading p{margin:.9rem auto 0!important;color:var(--gv-final-muted)!important}
.pricing-free-callout{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1rem;margin:1.25rem auto 0;padding:.65rem .85rem;border:1px solid rgba(158,224,0,.38);border-radius:999px;background:rgba(200,255,61,.10);font-size:.76rem;color:#4f4b45}
.pricing-free-callout strong{color:#151515;font-weight:700}.pricing-free-callout span::before{content:"✓ ";color:#76a300;font-weight:700}
#pricing .premium-billing-row{justify-content:center!important;margin:2rem auto 2.1rem!important;color:#151515!important}
#pricing .premium-billing-row #pricingBillingSummary{max-width:430px!important;color:#817b72!important;font-size:.7rem!important;text-align:left!important}
#pricing .pricing-billing-toggle{background:#fff!important;border-color:#dcd7ce!important}
#pricing .pricing-billing-toggle button{color:#151515!important}.pricing-billing-toggle button.is-active{background:var(--gv-final-lime)!important;color:#151515!important}
#pricing .premium-pricing-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem!important;width:min(1420px,100%)!important;margin:0 auto!important}
#pricing .premium-pricing-grid article{position:relative!important;min-height:540px!important;padding:1.65rem 1.45rem!important;border:1px solid #e5e0d7!important;border-radius:18px!important;background:#fff!important;color:#151515!important;box-shadow:0 15px 38px rgba(21,21,21,.055)!important;order:initial!important}
#pricing .premium-pricing-grid article.pricing-featured{border-color:#A8D91A!important;box-shadow:0 20px 48px rgba(158,224,0,.11)!important}
#pricing .premium-pricing-grid article h3,#pricing .premium-pricing-grid article p,#pricing .premium-pricing-grid article li{color:inherit!important}
.no-card-ribbon{display:inline-flex;align-items:center;justify-content:center;margin:-.35rem 0 .85rem;padding:.34rem .55rem;border-radius:999px;background:var(--gv-final-lime);color:#151515;font-size:.58rem;font-weight:760;letter-spacing:.055em}
#pricing .premium-free-plan{border-color:rgba(158,224,0,.38)!important;background:linear-gradient(180deg,#fff,#fdfff7)!important}
#pricing .premium-free-plan .cancel-note strong{color:#517100!important}
#pricing .pricing-confidence{width:min(1420px,100%)!important;margin:3.3rem auto 0!important;text-align:center!important;color:#151515!important}
#pricing .pricing-confidence h3{font-size:2rem!important;font-weight:675!important}
#pricing .pricing-confidence>div{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:.75rem!important}
#pricing .pricing-confidence article{min-height:170px!important;border:1px solid #e7e2d9!important;background:#fff!important;color:#151515!important}
#pricing .pricing-confidence small{color:#777169!important}

/* Payment & subscription conditions — separate premium page-like section inside pricing. */
#pricing .premium-payment-conditions{position:relative!important;isolation:isolate!important;width:min(1420px,100%)!important;margin:6rem auto 0!important;padding:5rem 2.4rem 2.2rem!important;border:0!important;border-radius:30px!important;background:linear-gradient(180deg,#fffdf8,#fff 30%,#fffdf9)!important;box-shadow:0 26px 75px rgba(21,21,21,.06)!important;overflow:hidden!important}
.payment-premium-burst{position:absolute;z-index:-1;right:-12%;top:-6%;width:55%;height:34%;background:repeating-conic-gradient(from 180deg at 70% 50%,rgba(200,255,61,.35) 0 .19deg,transparent .28deg 3.4deg);opacity:.2;mask-image:radial-gradient(ellipse at 70% 50%,#000 0 42%,transparent 73%);-webkit-mask-image:radial-gradient(ellipse at 70% 50%,#000 0 42%,transparent 73%);animation:gv-final-glow 12s ease-in-out infinite}
.payment-page-hero{max-width:850px;margin:0 0 2.5rem}.payment-page-hero h2{margin:.65rem 0 .9rem!important;font-size:clamp(3.3rem,5vw,5.25rem)!important;font-weight:710!important;line-height:.96!important;letter-spacing:-.06em!important}.payment-page-hero p{max-width:620px;color:#625d56!important;font-size:.95rem!important;line-height:1.65!important}
#pricing .payment-plan-strip{margin-bottom:1.4rem!important;padding:1.1rem!important;border-radius:17px!important;box-shadow:0 10px 28px rgba(21,21,21,.035)!important}.payment-plan-strip>strong{display:flex;flex-direction:column;gap:.2rem}.payment-plan-strip>strong small{color:#8a857d;font-size:.63rem;font-weight:450}
.payment-cycle-line{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:1.6rem 0 1.5rem;color:#504c46;font-size:.76rem}.payment-cycle-line i{position:relative;width:52px;height:30px;border:1px solid #d9d4cb;border-radius:999px;background:#fff}.payment-cycle-line i::after{content:"";position:absolute;right:3px;top:3px;width:22px;height:22px;border-radius:50%;background:var(--gv-final-lime)}.payment-cycle-line strong{padding:.45rem .65rem;border-radius:999px;background:rgba(200,255,61,.16);font-size:.66rem;font-weight:650}
#pricing .premium-condition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.9rem!important}
#pricing .premium-condition-grid article{min-height:160px!important;border-radius:16px!important}
#pricing .premium-condition-grid article span strong{color:#4f7000;font-weight:650}
.payment-dark-cta{position:relative;overflow:hidden;display:grid;grid-template-columns:1.45fr repeat(3,1fr);align-items:center;gap:1.4rem;margin-top:1.25rem;padding:2.2rem 2.4rem;border-radius:22px;background:linear-gradient(125deg,#131415,#090a0b);color:#fff}.payment-dark-cta::after{content:"";position:absolute;right:-8%;bottom:-55%;width:45%;height:150%;background:repeating-conic-gradient(from 230deg at 100% 100%,rgba(200,255,61,.48) 0 .2deg,transparent .3deg 3.6deg);opacity:.24;mask-image:radial-gradient(ellipse at 100% 100%,#000 0 46%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 100% 100%,#000 0 46%,transparent 75%)}.payment-dark-cta>*{position:relative;z-index:2}.payment-dark-cta h3{margin:0;color:#fff;font-size:1.8rem;font-weight:660;line-height:1.02}.payment-dark-cta p{margin:.55rem 0 1rem;color:#aaa69e!important;font-size:.72rem!important}.payment-dark-cta button{border-radius:9px!important}.payment-dark-cta>div>small{display:block;margin-top:.5rem;color:#aaa69e;font-size:.61rem}.payment-dark-cta>span{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:.6rem;color:var(--gv-final-lime);font-size:1rem}.payment-dark-cta>span b{color:#fff;font-size:.72rem;font-weight:620}.payment-dark-cta>span small{grid-column:2;margin-top:.2rem;color:#9f9b94;font-size:.62rem!important;line-height:1.4}
#pricing .pricing-note{width:min(1420px,100%);margin:1.2rem auto 0!important;color:#8b867e!important;text-align:center!important;font-size:.67rem!important}

/* Approved premium footer — restrained dark surface and slow lime glow. */
.premium-footer{width:100%!important;grid-template-columns:1.6fr repeat(3,1fr)!important;padding:4.8rem max(6vw,54px) 2rem!important;background:linear-gradient(130deg,#101112,#090a0b 72%,#11150a)!important}
.premium-footer-glow{animation:gv-final-glow 13s ease-in-out infinite!important;opacity:.7!important}.premium-footer .footer-brand .brand{font-size:2.05rem!important}

/* Dashboard: premium light SaaS skin without touching working workflow DOM. */
#dashboardPanel{background:#F8F7F2!important;border:1px solid rgba(21,21,21,.08)!important;border-radius:26px!important;box-shadow:0 28px 90px rgba(0,0,0,.24)!important}
#dashboardPanel .workspace-head{margin:-.35rem -.35rem 1rem!important;padding:1rem 1.15rem!important;border:1px solid rgba(21,21,21,.06)!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 10px 30px rgba(21,21,21,.045)!important}
#dashboardPanel .workspace-brand-mark{font-size:1.42rem!important;color:#151515!important}
#dashboardPanel .workspace-brand-copy small{color:#7f7a72!important;font-weight:560!important;letter-spacing:.11em!important}
#dashboardPanel .workspace-brand-copy h2{font-size:1.55rem!important;font-weight:670!important;letter-spacing:-.04em!important}
#dashboardPanel .new-project-head-button{background:var(--gv-final-lime)!important;border-color:var(--gv-final-lime-deep)!important;color:#151515!important;box-shadow:0 8px 18px rgba(158,224,0,.13)!important}
#dashboardPanel .account-usage-panel,#dashboardPanel .current-work-bar,#dashboardPanel .unfinished-work-panel,#dashboardPanel .project-launcher,#dashboardPanel .workflow-panel,#dashboardPanel .project,#dashboardPanel .create-panel{border-color:#e5e0d7!important;background:#fff!important;box-shadow:0 10px 28px rgba(21,21,21,.035)!important}
#dashboardPanel .project-launcher,#dashboardPanel .workflow-panel{border-radius:20px!important}
#dashboardPanel .workflow-choice{border-radius:18px!important;background:#fff!important}.workflow-choice:hover{border-color:rgba(158,224,0,.5)!important;box-shadow:0 14px 32px rgba(21,21,21,.05)!important}
#dashboardPanel button:not(.icon):not(.text-button):not(.password-toggle){font-weight:610!important}
#dashboardPanel small,#dashboardPanel label,#dashboardPanel .eyebrow{font-weight:530!important}

/* Free test modal: no-card promise is impossible to miss. */
.signup-no-card{padding:.85rem 1rem;border:1px solid rgba(158,224,0,.34);border-radius:13px;background:rgba(200,255,61,.11)!important;color:#44413b!important}.signup-no-card strong{color:#151515;font-weight:660}

/* Responsive: exact visual hierarchy, adapted rather than merely shrunk. */
@media(max-width:1180px){
  .gv-hero-grid{grid-template-columns:1fr 1fr!important}
  #features .premium-features-hero{grid-template-columns:1fr!important}#features .feature-product-window{max-width:920px;width:100%}
  #features .premium-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #pricing .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .pricing-confidence>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .payment-dark-cta{grid-template-columns:1.4fr repeat(3,1fr);padding:2rem 1.5rem}
}
@media(max-width:900px){
  .marketing-header{width:calc(100vw - 18px)!important}.marketing-page{padding-top:78px!important}
  .gv-hero-grid{grid-template-columns:1fr!important;width:100%!important}.gv-hero-copy{padding:52px 22px 24px!important}.gv-hero-visual{min-height:340px!important}
  #live-demo.premium-demo,#features.premium-features{width:calc(100% - 36px)!important}
  #live-demo .demo-copy{padding-left:0!important;max-width:720px!important}#live-demo .demo-copy h2{font-size:clamp(3.25rem,8vw,4.8rem)!important}
  #features .premium-features-hero{padding-left:0!important;padding-right:0!important}
  #features .premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing.premium-pricing{padding-left:18px!important;padding-right:18px!important}
  #pricing .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .pricing-confidence>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #pricing .premium-payment-conditions{padding:4rem 1.35rem 1.5rem!important}
  #pricing .premium-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .payment-dark-cta{grid-template-columns:1fr 1fr!important}.payment-dark-cta>div{grid-column:1/-1}.payment-dark-cta>span{padding:.55rem 0}
  .premium-footer{grid-template-columns:1.35fr 1fr 1fr!important}.premium-footer .footer-links:last-of-type{grid-column:2/4}
}
@media(max-width:720px){
  .marketing-header{top:6px!important;border-radius:14px!important}.marketing-header .brand{font-size:1.2rem!important}.marketing-page{padding-top:68px!important}
  .brand span,.workspace-brand-mark span,.gv-logo-mark span{-webkit-mask-image:radial-gradient(circle at 0 50%,transparent 0 .17em,#000 .185em)!important;mask-image:radial-gradient(circle at 0 50%,transparent 0 .17em,#000 .185em)!important}
  #live-demo.premium-demo{width:calc(100% - 28px)!important;padding:4.2rem 0 4.8rem!important}#live-demo .demo-copy h2{font-size:clamp(2.75rem,12vw,4rem)!important}#live-demo .demo-copy>p:not(.demo-helper){font-size:.88rem!important}
  #live-demo .demo-device{border-radius:20px!important}#live-demo .demo-photo-grid{grid-template-columns:1fr!important;padding:.8rem!important}#live-demo .demo-photo-card{display:none!important}#live-demo .demo-photo-card.is-current{display:block!important}#live-demo .demo-image{min-height:360px!important}
  #features.premium-features{width:calc(100% - 28px)!important;padding:4.5rem 0!important}#features .premium-features-hero h2{font-size:clamp(2.65rem,11vw,4rem)!important}#features .premium-feature-grid{grid-template-columns:1fr!important}#features .premium-feature-grid article{min-height:0!important}
  #pricing.premium-pricing{padding:4.5rem 14px 5rem!important}#pricing .premium-pricing-heading h2{font-size:clamp(2.8rem,12vw,4.2rem)!important}.pricing-free-callout{border-radius:16px!important}
  #pricing .premium-billing-row{flex-direction:column!important;align-items:stretch!important}#pricing .premium-billing-row #pricingBillingSummary{text-align:center!important;max-width:none!important}
  #pricing .premium-pricing-grid{grid-template-columns:1fr!important}#pricing .premium-pricing-grid article{min-height:0!important;order:initial!important}
  #pricing .pricing-confidence>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .premium-payment-conditions{margin-top:4rem!important;padding:3.4rem 1rem 1rem!important;border-radius:22px!important}.payment-page-hero h2{font-size:clamp(2.7rem,11vw,4rem)!important}.payment-plan-strip{grid-template-columns:1fr!important}.payment-plan-strip>span{border-left:0!important;border-top:1px solid #ece8e1!important;padding:.7rem .35rem!important}.payment-cycle-line{flex-wrap:wrap!important}.payment-cycle-line strong{width:100%;text-align:center}
  #pricing .premium-condition-grid{grid-template-columns:1fr!important}.payment-dark-cta{grid-template-columns:1fr!important;padding:1.5rem!important}.payment-dark-cta>div{grid-column:auto}.payment-dark-cta::after{width:80%;opacity:.18}
  .premium-footer{grid-template-columns:1fr 1fr!important;padding:3.5rem 20px 1.5rem!important}.premium-footer .footer-brand{grid-column:1/-1}.premium-footer .footer-links:last-of-type{grid-column:auto}.premium-footer .footer-bottom{grid-column:1/-1!important}
  #dashboardPanel{border-radius:18px!important}#dashboardPanel .workspace-head{border-radius:14px!important}
}
@media(max-width:460px){
  #pricing .pricing-confidence>div{grid-template-columns:1fr!important}.premium-footer{grid-template-columns:1fr!important}.premium-footer .footer-links,.premium-footer .footer-links:last-of-type{grid-column:1!important}
  .payment-dark-cta{border-radius:18px!important}.payment-dark-cta h3{font-size:1.55rem!important}
}
@media(prefers-reduced-motion:reduce){
  .gv-hero-burst>i,.gv-burst-glow,.gv-hero-visual::after,.premium-demo-glow,.premium-pricing-burst,.payment-premium-burst,.premium-footer-glow{animation:none!important}
  .gv-flow-step.is-flow-active .gv-flow-icon{animation:none!important;transform:none!important}
}


/* ========================================================================== */
/* GaliVue V3.7.8.8 — FINAL PNG DESIGN LOCK                                  */
/* ========================================================================== */
:root{--gv8-lime:#C8FF3D;--gv8-lime-deep:#9EE000;--gv8-cream:#F5F2EB;--gv8-ink:#151515;--gv8-muted:#69645C;--gv8-line:#E6E1D8;--gv8-dark:#101112}
/* Master logo asset. No CSS-generated cavu; the SVG itself is the source of truth. */
.brand,.workspace-brand-mark,.gv-logo-mark{display:inline-flex!important;align-items:center!important;line-height:1!important;text-decoration:none!important;letter-spacing:0!important;font-size:inherit!important;color:inherit!important}
.brand img,.workspace-brand-mark img,.gv-logo-mark img{display:block!important;width:auto!important;height:32px!important;max-width:none!important;object-fit:contain!important}
.marketing-header .brand img{height:34px!important}.mobile-menu .brand img{height:34px!important}.client-brand-row .brand img{height:34px!important}.legal-header .brand img{height:34px!important}.workspace-brand-mark img{height:34px!important}.gv-dash-top .brand img,.feature-window-top .brand img{height:22px!important}.premium-footer .brand img{height:54px!important}
.brand span,.workspace-brand-mark span,.gv-logo-mark span{all:unset!important}

/* Shared icon language. */
.gv-line-icon{width:26px;height:26px;display:block}.gv-icon-bubble{display:grid;place-items:center;flex:0 0 auto;width:48px;height:48px;border-radius:50%;background:#F4FAD9;color:#79A900}.gv-icon-bubble .gv-line-icon{width:27px;height:27px}.gv-icon-bubble.dark{background:transparent;color:var(--gv8-lime);width:34px;height:34px}.gv-icon-bubble.dark .gv-line-icon{width:28px;height:28px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Header scale locked to approved PNG. */
.marketing-header{width:min(1500px,calc(100vw - 34px))!important;min-height:68px!important}.marketing-header .desktop-nav{gap:2.1rem!important}.marketing-header .desktop-nav a,.marketing-header .header-login{font-size:.86rem!important;font-weight:570!important}.marketing-header .header-cta{min-height:44px!important;padding-inline:1.2rem!important}

/* Homepage burst: anchored to RIGHT half, not page centre. */
.gv-hero-grid{grid-template-columns:minmax(0,.84fr) minmax(560px,1.16fr)!important}
.gv-hero-visual{overflow:visible!important}.gv-hero-burst{left:4%!important;right:-13%!important;top:0!important;bottom:0!important}.gv-hero-burst>i{left:61%!important;bottom:-2%!important;animation-duration:12s!important}.gv-burst-glow{left:61%!important;bottom:-46px!important;opacity:.62!important}.gv-hero-burst::before{left:26%!important;right:-22%!important;background:radial-gradient(ellipse at 61% 100%,rgba(200,255,61,.31),rgba(200,255,61,.08) 37%,transparent 71%)!important}
.gv-home-hero .hero-story-copy{max-width:570px!important}.gv-home-hero .hero-trust-line{font-size:.75rem!important}

/* Premium dark CTA shared by the exact approved page references. */
.gv-premium-cta{position:relative;overflow:hidden;display:grid;grid-template-columns:1.55fr repeat(3,.86fr);align-items:center;gap:1.5rem;width:min(1420px,calc(100vw - 64px));margin:1.5rem auto 0;padding:2.35rem 2.7rem;border-radius:24px;background:linear-gradient(120deg,#111315 0%,#090b0c 72%,#11150a 100%);color:#fff;box-shadow:0 18px 42px rgba(0,0,0,.08)}
.gv-premium-cta>*{position:relative;z-index:2}.gv-premium-cta-copy h2{margin:0;color:#fff;font-size:clamp(1.65rem,2.25vw,2.5rem);line-height:1.03;letter-spacing:-.045em}.gv-premium-cta-copy p{margin:.7rem 0 1.1rem;color:#B2AEA7;font-size:.78rem;line-height:1.55;max-width:430px}.gv-premium-cta-actions{display:flex;gap:.7rem;flex-wrap:wrap}.gv-dark-outline-button{display:inline-flex;align-items:center;gap:.55rem;min-height:45px;padding:0 1rem;border:1px solid rgba(255,255,255,.55);border-radius:9px;color:#fff;text-decoration:none;font-size:.78rem;font-weight:600}.gv-dark-outline-button .gv-play{border-color:#fff;color:#fff}.gv-premium-trust-item{display:flex;align-items:flex-start;gap:.65rem}.gv-premium-trust-item b{display:block;color:#fff;font-size:.78rem;font-weight:650}.gv-premium-trust-item small{display:block;margin-top:.28rem;color:#A7A39C;font-size:.66rem;line-height:1.45}.gv-dark-burst{position:absolute;right:-3%;top:-18%;width:46%;height:140%;opacity:.34;background:repeating-conic-gradient(from 244deg at 100% 58%,rgba(200,255,61,.75) 0 .14deg,transparent .22deg 3.15deg);-webkit-mask-image:radial-gradient(ellipse at 100% 58%,#000 0 44%,transparent 74%);mask-image:radial-gradient(ellipse at 100% 58%,#000 0 44%,transparent 74%);animation:gv8-dark-breathe 12s ease-in-out infinite}@keyframes gv8-dark-breathe{0%,100%{opacity:.24;transform:scale(.99)}50%{opacity:.4;transform:scale(1.015)}}
.gv-home-final-cta{margin-top:1rem;margin-bottom:3.5rem}

/* FEATURES — exact approved structure. */
#features.gv-png-lock{width:min(1420px,calc(100vw - 64px))!important;margin:0 auto!important;padding:6.2rem 0 6rem!important;background:#fff!important;overflow:visible!important}
#features .premium-features-hero{display:grid!important;grid-template-columns:minmax(340px,.78fr) minmax(570px,1.22fr)!important;gap:clamp(3.5rem,6vw,6.5rem)!important;align-items:center!important;padding:0 8px 3.7rem!important}.premium-features-copy .section-kicker{margin-bottom:1rem}.premium-features-copy h2{margin:0;color:var(--gv8-ink);font-size:clamp(3.25rem,4.65vw,5.05rem)!important;line-height:.98!important;letter-spacing:-.055em!important;font-weight:720!important}.premium-features-copy>p{max-width:560px;margin:1.2rem 0 0;color:#5D5952;font-size:.95rem;line-height:1.65}.premium-feature-actions{display:flex;gap:.85rem;margin-top:1.6rem}.gv-mini-trust{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:1.5rem;color:#625E57;font-size:.72rem;font-weight:520}.gv-mini-trust span::first-letter{color:#79A900}
.feature-product-wrap{position:relative;min-width:0}.gv-feature-burst{position:absolute;right:-12%;top:-24%;width:58%;height:64%;opacity:.2;background:repeating-conic-gradient(from 246deg at 100% 100%,rgba(158,224,0,.9) 0 .12deg,transparent .2deg 3.4deg);-webkit-mask-image:radial-gradient(ellipse at 100% 100%,#000 0 44%,transparent 76%);mask-image:radial-gradient(ellipse at 100% 100%,#000 0 44%,transparent 76%);animation:gv8-dark-breathe 12s ease-in-out infinite}.feature-product-window{position:relative!important;z-index:2!important;min-height:430px!important;border:1px solid #E9E5DC!important;border-radius:17px!important;background:#fff!important;box-shadow:0 26px 65px rgba(21,21,21,.09)!important;overflow:hidden!important}.feature-window-top{height:56px!important;padding:0 17px!important;background:#121314!important}.feature-window-body{display:grid!important;grid-template-columns:146px 1fr!important;min-height:374px!important}.feature-window-body aside{padding:18px 12px!important;background:#FBFAF6!important;border-right:1px solid #EEEAE2!important}.feature-window-body aside b,.feature-window-body aside span{display:block;padding:.65rem .65rem;border-radius:8px;font-size:.67rem;color:#5F5B54}.feature-window-body aside b{background:#F0F9D4;color:#333;font-weight:650}.feature-window-main{padding:20px!important}.feature-window-title{display:flex;justify-content:space-between;align-items:center}.feature-window-title strong{font-size:1rem}.feature-window-title i{padding:.45rem .7rem;border-radius:7px;background:var(--gv8-lime);font-size:.6rem;font-style:normal;font-weight:650}.feature-window-search{width:48%;margin:.85rem 0 .8rem auto;padding:.55rem .7rem;border:1px solid #E9E5DC;border-radius:8px;color:#A19C93;font-size:.6rem}.feature-window-table-head,.feature-window-rows>span{display:grid;grid-template-columns:1.6fr 1.2fr .6fr .8fr .65fr;gap:.4rem;align-items:center}.feature-window-table-head{padding:.48rem .55rem;border-bottom:1px solid #ECE8E0;color:#918C83;font-size:.54rem}.feature-window-rows>span{padding:.72rem .55rem;border-bottom:1px solid #F0ECE5;font-size:.56rem}.feature-window-rows b{font-size:.58rem;font-weight:610}.feature-window-rows small{color:#6B665F;font-size:.54rem}.feature-window-rows em{justify-self:start;padding:.25rem .45rem;border-radius:999px;background:#F0F8D8;color:#557100;font-style:normal;font-size:.5rem}
#features .premium-feature-panel{padding:2rem 1.35rem 1.4rem!important;border:1px solid var(--gv8-line)!important;border-radius:20px 20px 0 0!important;background:#fff!important;box-shadow:0 15px 44px rgba(21,21,21,.035)!important}.premium-feature-heading{text-align:center}.premium-feature-heading h3{margin:0;color:#171717;font-size:clamp(1.45rem,2vw,2.05rem);font-weight:690;letter-spacing:-.04em}.premium-feature-heading p{margin:.55rem auto 1.5rem;color:#6D685F;font-size:.73rem}.gv-feature-grid-exact{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.75rem!important}.gv-feature-grid-exact article{display:grid!important;grid-template-columns:50px 1fr!important;gap:.75rem!important;align-items:start!important;min-height:150px!important;padding:1rem!important;border:1px solid #EFEAE2!important;border-radius:12px!important;background:#fff!important}.gv-feature-grid-exact h4{margin:.1rem 0 .45rem;color:#181818;font-size:.79rem;font-weight:660}.gv-feature-grid-exact p{margin:0;color:#6F6A62;font-size:.65rem;line-height:1.55}
.gv-feature-flow-panel{padding:1.8rem 1.4rem 1.9rem;border:1px solid var(--gv8-line);border-top:0;border-radius:0 0 20px 20px;background:#fff}.gv-feature-flow{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-top:1rem}.gv-feature-flow-step{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;text-align:center}.gv-feature-flow-step .gv-icon-bubble{width:58px;height:58px;background:#fff;border:1px solid #EEEAE2;box-shadow:0 9px 22px rgba(21,21,21,.05)}.gv-feature-flow-step b{margin-top:.7rem;font-size:.68rem;font-weight:650}.gv-feature-flow-step small{max-width:130px;margin-top:.32rem;color:#777168;font-size:.58rem;line-height:1.45}.gv-flow-arrow{align-self:center;margin-top:22px;color:#82B000;font-size:1.2rem;font-weight:800}
.gv-feature-trust-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:1.65fr repeat(3,.9fr);gap:1.35rem;align-items:center;margin-top:1.25rem;padding:2rem 2.3rem;border-radius:18px;background:linear-gradient(120deg,#121314,#0B0C0D);color:#fff}.gv-feature-trust-panel::after{content:"";position:absolute;right:-8%;bottom:-62%;width:42%;height:155%;background:repeating-conic-gradient(from 230deg at 100% 100%,rgba(200,255,61,.7) 0 .14deg,transparent .22deg 3.2deg);opacity:.23;-webkit-mask-image:radial-gradient(ellipse at 100% 100%,#000 0 45%,transparent 75%);mask-image:radial-gradient(ellipse at 100% 100%,#000 0 45%,transparent 75%)}.gv-feature-trust-panel>*{position:relative;z-index:2}.gv-feature-trust-copy h3{margin:0;color:#fff;font-size:1.28rem;font-weight:650}.gv-feature-trust-copy p{margin:.55rem 0 0;color:#AAA69F;font-size:.68rem;line-height:1.5}.gv-feature-trust-item{display:grid;grid-template-columns:36px 1fr;align-items:start}.gv-feature-trust-item b{font-size:.7rem}.gv-feature-trust-item small{grid-column:2;margin-top:.25rem;color:#9F9B94;font-size:.58rem;line-height:1.45}.gv-features-cta{width:100%;margin-top:1.25rem}

/* PRICING — exact approved PNG hierarchy. */
#pricing.gv-png-lock{padding:6.5rem max(3.2vw,24px) 7rem!important;background:linear-gradient(180deg,#FFFDF9,#FFF 55%,#FFFDF9)!important}.premium-pricing-heading{max-width:900px!important}.premium-pricing-heading h2{font-size:clamp(3.8rem,5.25vw,5.7rem)!important}.premium-pricing-heading p{font-size:.95rem!important;line-height:1.55!important}.premium-pricing-burst{right:-4%!important;top:1.5%!important;width:43%!important;height:27%!important;opacity:.2!important}
#pricing .premium-billing-row{display:flex!important;align-items:center!important;justify-content:center!important;gap:1rem!important;margin:2.25rem auto 2.2rem!important}.pricing-billing-toggle{display:grid!important;grid-template-columns:1fr 1fr!important;width:360px!important;height:55px!important;padding:0!important;border:1px solid #D9D4CB!important;border-radius:11px!important;overflow:hidden!important;background:#fff!important}.pricing-billing-toggle button{border:0!important;border-radius:0!important;background:#fff!important;font-size:.84rem!important;font-weight:620!important}.pricing-billing-toggle button.is-active{background:linear-gradient(135deg,#D7FF2D,#B8F000)!important;box-shadow:inset 0 0 0 1px #9ED000!important}.gv-save-callout{display:grid;grid-template-columns:auto auto;column-gap:.55rem;align-items:center;color:#151515}.gv-save-callout b{grid-column:1;padding:.3rem .5rem;border-radius:999px;background:#F0F8D6;font-size:.65rem}.gv-save-callout strong{grid-column:1;margin-top:.1rem;font-size:.96rem}.gv-save-callout>span{grid-column:2;grid-row:1/3;color:#80AB00;font-size:1.45rem}
#pricing .premium-pricing-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem!important;width:min(1360px,100%)!important;margin:0 auto!important}.gv-plan-card{position:relative;display:flex;flex-direction:column;min-height:525px;padding:2.15rem 2rem 1.8rem;border:1px solid #E7E2D9;border-radius:16px;background:#fff;color:#151515;box-shadow:0 14px 38px rgba(21,21,21,.045)}.gv-plan-card.pricing-featured{border-color:#AADA00;box-shadow:0 0 0 1px #C8FF3D,0 20px 45px rgba(158,224,0,.08)}.gv-plan-card .popular-tag{position:absolute;right:1.4rem;top:1.35rem;padding:.32rem .62rem;border-radius:999px;background:var(--gv8-lime);font-size:.56rem;font-weight:800}.gv-plan-card .plan-top>span{display:block;margin-bottom:.85rem;font-size:1.02rem;font-weight:650}.gv-plan-card .plan-top h3{margin:0;display:flex;align-items:baseline;gap:.3rem;color:#111}.gv-plan-card .plan-top h3 b{font-size:3.25rem;font-weight:710;letter-spacing:-.06em}.gv-plan-card .plan-top h3 small{font-size:.72rem;font-weight:530}.gv-plan-card .gv-annual-line{margin-top:.55rem;font-size:.82rem;color:#3D3A35}.gv-plan-card .gv-annual-line span{margin-left:.6rem;color:#7FB000}.gv-plan-card .plan-top>p{min-height:34px;margin:.8rem 0 0;color:#716C64;font-size:.72rem;line-height:1.45}.gv-plan-card ul{display:grid;gap:.75rem;margin:1.3rem 0 1.6rem;padding:0;list-style:none}.gv-plan-card li{display:flex;gap:.6rem;align-items:flex-start;color:#4F4B45;font-size:.73rem;line-height:1.4}.gv-plan-check{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border:1.5px solid #96C900;border-radius:50%;color:#72A000;font-size:.66rem;font-weight:800}.gv-plan-card button{margin-top:auto;min-height:48px;border:1.5px solid #94C600!important;border-radius:9px!important;background:#fff!important;color:#151515!important;font-size:.78rem!important;font-weight:650!important}.gv-plan-card button.accent-button,.gv-plan-card.pricing-featured button{background:linear-gradient(135deg,#D9FF29,#B6F000)!important}.gv-free-strong{margin:-.4rem 0 1rem;padding:.7rem .75rem;border:1px solid rgba(158,224,0,.34);border-radius:10px;background:#F8FDE9}.gv-free-strong b,.gv-free-strong span{display:block}.gv-free-strong b{font-size:.68rem}.gv-free-strong span{margin-top:.22rem;color:#5D5952;font-size:.62rem}
.pricing-confidence{width:min(1360px,100%)!important;margin:3.25rem auto 0!important;text-align:center!important}.pricing-confidence>h3{font-size:1.75rem!important}.pricing-confidence>p{margin:.45rem 0 1.4rem;color:#777168;font-size:.72rem}.pricing-confidence>div{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:.75rem!important}.pricing-confidence article{display:flex!important;flex-direction:column!important;align-items:center!important;min-height:190px!important;padding:1.05rem .75rem!important;border:1px solid #ECE7DE!important;border-radius:12px!important;background:#fff!important}.pricing-confidence article .gv-icon-bubble{margin-bottom:.7rem}.pricing-confidence article b{font-size:.7rem!important}.pricing-confidence article small{margin-top:.45rem;color:#777168!important;font-size:.59rem!important;line-height:1.45!important}.gv-pricing-cta{width:min(1360px,100%);margin-top:1.4rem}

/* PAYMENT & SUBSCRIPTION — exact card/icon/detail lock. */
#pricing .premium-payment-conditions{position:relative!important;width:min(1420px,100%)!important;margin:5rem auto 0!important;padding:4.3rem 2rem 1.4rem!important;border-radius:0!important;background:linear-gradient(180deg,#FFFDF9,#FFF)!important}.payment-premium-burst{right:-4%!important;top:-3%!important;width:47%!important;height:27%!important;opacity:.22!important}.payment-page-hero{min-height:250px!important}.payment-page-hero h2{margin:0;color:#151515;font-size:clamp(3.3rem,4.9vw,5.3rem)!important;line-height:.94!important;letter-spacing:-.055em!important;font-weight:720!important}.payment-page-hero p{margin:1.1rem 0 0;color:#625E57;font-size:.92rem!important;line-height:1.55!important}.payment-plan-strip{display:grid!important;grid-template-columns:1.28fr repeat(4,1fr)!important;align-items:center!important;gap:0!important;margin-top:.2rem!important;padding:1.4rem!important;border:1px solid #E8E3DA!important;border-radius:13px!important;background:#fff!important;box-shadow:0 10px 27px rgba(21,21,21,.055)!important}.payment-plan-strip>strong{padding:.2rem .55rem;font-size:.92rem}.payment-plan-strip>strong small{display:block;margin-top:.35rem;color:#777168;font-size:.6rem;font-weight:500}.payment-plan-strip>span{display:grid!important;grid-template-columns:48px 1fr!important;align-items:center!important;gap:.55rem!important;padding:.25rem .85rem!important;border-left:1px solid #E9E4DC!important}.payment-plan-strip .gv-icon-bubble{width:42px;height:42px}.payment-plan-strip b{font-size:.72rem}.payment-plan-strip small{font-size:.58rem;line-height:1.35;color:#777168}.payment-plan-strip small strong{color:#526D00}.payment-cycle-line{margin:1.7rem 0!important;font-size:.76rem!important}.payment-cycle-line strong{padding:.5rem .7rem!important}
#pricing .premium-condition-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.9rem!important}.premium-condition-grid article{display:grid!important;grid-template-columns:54px 1fr!important;gap:.8rem!important;align-items:start!important;min-height:155px!important;padding:1.1rem!important;border:1px solid #EAE5DD!important;border-radius:13px!important;background:#fff!important;box-shadow:0 9px 26px rgba(21,21,21,.035)!important}.premium-condition-grid .gv-icon-bubble{width:48px;height:48px;border-radius:12px}.premium-condition-grid b{display:block;margin:.15rem 0 .45rem;color:#151515;font-size:.76rem}.premium-condition-grid span{display:block;color:#6E6961;font-size:.66rem!important;line-height:1.5!important}.payment-help{display:grid!important;grid-template-columns:48px 1fr 1.8fr auto!important;align-items:center!important;gap:.9rem!important;margin-top:1rem!important;padding:1rem 1.15rem!important;border:1px solid #E8E3DA!important;border-radius:13px!important;background:#fff!important}.payment-help .gv-icon-bubble{width:42px;height:42px}.payment-help b{display:block;font-size:.72rem}.payment-help small{display:block;margin-top:.2rem;color:#777168;font-size:.58rem}.payment-help p{margin:0;color:#777168;font-size:.61rem}.payment-help a{padding:.58rem .75rem;border:1px solid #D7D2C9;border-radius:8px;color:#151515;text-decoration:none;font-size:.62rem;font-weight:620}.payment-dark-cta{grid-template-columns:1.55fr repeat(3,.88fr)!important;gap:1.4rem!important;margin-top:1.2rem!important;padding:2.2rem 2.4rem!important}.gv-payment-trust{position:relative;z-index:2;display:grid;grid-template-columns:36px 1fr;align-items:start}.gv-payment-trust b{color:#fff;font-size:.72rem}.gv-payment-trust small{grid-column:2;margin-top:.25rem;color:#A4A098;font-size:.59rem!important;line-height:1.45}.payment-dark-cta>div:first-child>small strong{color:#fff}

/* FOOTER — exact icons, arrows, lower trust/status row. */
.premium-footer.gv-png-lock{position:relative!important;overflow:hidden!important;display:grid!important;grid-template-columns:1.7fr repeat(3,1fr)!important;column-gap:3.2rem!important;row-gap:3rem!important;padding:5rem max(6vw,72px) 2.4rem!important;background:linear-gradient(120deg,#101214 0%,#0A0B0C 76%,#121609 100%)!important}.premium-footer-glow{position:absolute!important;right:-10%!important;top:-48%!important;width:44%!important;height:95%!important;background:radial-gradient(circle,rgba(200,255,61,.42),rgba(158,224,0,.14) 35%,transparent 70%)!important;filter:blur(18px)!important}.footer-brand p{margin:1.25rem 0 1.5rem;color:#B0ACA5!important;font-size:.92rem!important;line-height:1.7!important}.footer-try{display:flex!important;align-items:center!important;gap:.8rem!important;width:330px!important;min-height:60px!important;padding:0 1.1rem!important;border:1px solid rgba(200,255,61,.55)!important;border-radius:13px!important;background:rgba(255,255,255,.015)!important;color:#fff!important;font-weight:650!important}.footer-try .gv-line-icon{width:25px;height:25px;color:var(--gv8-lime)}.footer-try b{margin-left:auto;color:var(--gv8-lime);font-size:1.2rem}.premium-footer .footer-links>b{display:flex!important;align-items:center!important;gap:.65rem!important;color:#fff!important;font-size:1.05rem!important}.premium-footer .footer-links>b .gv-line-icon{width:27px;height:27px;color:var(--gv8-lime)}.premium-footer .footer-links>a,.premium-footer .footer-links>button{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;width:100%!important;margin-top:1.05rem!important;padding:0!important;background:none!important;border:0!important;color:#B8B4AD!important;text-align:left!important;text-decoration:none!important;font-size:.88rem!important;font-weight:500!important}.premium-footer .footer-links a span,.premium-footer .footer-links button span{color:var(--gv8-lime);font-size:1.2rem}.premium-footer .footer-bottom{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding-top:2rem!important;border-top:1px solid rgba(255,255,255,.15)!important;color:#AAA69F!important}.premium-footer .footer-bottom>div{display:flex!important;align-items:center!important;gap:1.35rem!important}.premium-footer .footer-bottom>div>span{display:flex;align-items:center;gap:.45rem}.premium-footer .footer-bottom .gv-line-icon{width:20px;height:20px;color:var(--gv8-lime)}.gv-status i{width:10px;height:10px;border-radius:50%;background:var(--gv8-lime);box-shadow:0 0 14px rgba(200,255,61,.4)}

/* Dashboard logo uses same asset and premium skin. */
#dashboardPanel .workspace-brand-mark img{height:36px!important}#dashboardPanel .workspace-head{padding:1rem 1.2rem!important}.workspace-brand-copy h2{font-weight:670!important}.workspace-brand-copy small{font-weight:520!important}

/* Responsive design locks. */
@media(max-width:1180px){
  #features .premium-features-hero{grid-template-columns:1fr!important}.feature-product-wrap{max-width:900px;width:100%;margin:0 auto}.gv-feature-grid-exact{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gv-feature-trust-panel,.gv-premium-cta,.payment-dark-cta{grid-template-columns:1.3fr repeat(3,1fr)!important}.pricing-confidence>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}.premium-footer.gv-png-lock{column-gap:1.8rem!important}
}
@media(max-width:980px){
  .gv-hero-grid{grid-template-columns:1fr!important}.gv-hero-copy{padding:52px 26px 22px!important}.gv-hero-visual{min-height:360px!important}.gv-hero-burst{left:0!important;right:0!important}.gv-hero-burst>i,.gv-burst-glow{left:62%!important}
  #features.gv-png-lock{width:calc(100% - 36px)!important}.gv-feature-grid-exact{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gv-feature-flow{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1.2rem}.gv-flow-arrow{display:none}.gv-feature-trust-panel,.gv-premium-cta,.payment-dark-cta{grid-template-columns:1fr 1fr!important}.gv-feature-trust-copy,.gv-premium-cta-copy,.payment-dark-cta>div:first-child{grid-column:1/-1}
  #pricing .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pricing-confidence>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}.payment-plan-strip{grid-template-columns:1fr 1fr!important}.payment-plan-strip>strong{grid-column:1/-1;padding-bottom:.9rem}.payment-plan-strip>span{border-left:0!important;border-top:1px solid #E9E4DC!important}.premium-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.payment-help{grid-template-columns:48px 1fr auto!important}.payment-help p{grid-column:1/-1;grid-row:2}.premium-footer.gv-png-lock{grid-template-columns:1.4fr 1fr 1fr!important}.premium-footer .footer-brand{grid-column:1/-1}.premium-footer .footer-links:last-of-type{grid-column:auto!important}
}
@media(max-width:720px){
  .marketing-header .brand img{height:30px!important}.mobile-menu .brand img{height:32px!important}.premium-footer .brand img{height:45px!important}.gv-home-hero h1{font-size:clamp(3.05rem,14vw,4.4rem)!important}.gv-home-hero h1 .hero-stage-strong{font-size:.45em!important}.gv-home-hero .hero-actions{width:100%;flex-direction:column;align-items:stretch!important}.gv-home-hero .hero-primary,.gv-home-hero .demo-link{width:100%!important;justify-content:center!important}.gv-home-hero .hero-trust-line{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.7rem!important}.gv-hero-visual{min-height:290px!important}.gv-hero-burst>i,.gv-burst-glow{left:54%!important}
  .gv-premium-cta{width:calc(100% - 28px)!important;grid-template-columns:1fr!important;padding:1.6rem!important}.gv-premium-cta-copy{grid-column:auto!important}.gv-dark-burst{width:90%;opacity:.22}.gv-premium-trust-item{padding:.25rem 0}
  #features.gv-png-lock{width:calc(100% - 28px)!important;padding:4.5rem 0!important}.premium-features-copy h2{font-size:clamp(2.75rem,12vw,4rem)!important}.premium-feature-actions{flex-direction:column}.premium-feature-actions>*{width:100%!important;justify-content:center!important}.gv-mini-trust{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.feature-window-body{grid-template-columns:105px 1fr!important}.feature-window-main{padding:13px!important}.feature-window-table-head{display:none!important}.feature-window-rows>span{grid-template-columns:1fr auto!important}.feature-window-rows>span small{display:none!important}.gv-feature-grid-exact{grid-template-columns:1fr!important}.gv-feature-grid-exact article{min-height:0!important}.gv-feature-flow{grid-template-columns:repeat(2,1fr)!important}.gv-feature-trust-panel{grid-template-columns:1fr!important;padding:1.5rem!important}.gv-feature-trust-copy{grid-column:auto!important}
  #pricing.gv-png-lock{padding:4.7rem 14px 5rem!important}.premium-pricing-heading h2{font-size:clamp(3rem,12vw,4.3rem)!important}.premium-billing-row{flex-direction:column!important}.pricing-billing-toggle{width:min(100%,360px)!important}.gv-save-callout{justify-content:center}.premium-pricing-grid{grid-template-columns:1fr!important}.gv-plan-card{min-height:0!important}.pricing-confidence>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pricing-confidence article{min-height:170px!important}.premium-payment-conditions{padding:3.5rem .6rem 1rem!important}.payment-page-hero{min-height:210px!important}.payment-page-hero h2{font-size:clamp(2.8rem,12vw,4rem)!important}.payment-plan-strip{grid-template-columns:1fr!important}.payment-plan-strip>strong{grid-column:auto}.payment-plan-strip>span{grid-template-columns:42px 1fr!important}.premium-condition-grid{grid-template-columns:1fr!important}.payment-help{grid-template-columns:42px 1fr!important}.payment-help p{grid-column:1/-1!important;grid-row:auto!important}.payment-help a{grid-column:1/-1;text-align:center}.payment-dark-cta{grid-template-columns:1fr!important;padding:1.5rem!important}.payment-dark-cta>div:first-child{grid-column:auto!important}
  .premium-footer.gv-png-lock{grid-template-columns:1fr 1fr!important;padding:3.8rem 22px 1.6rem!important;column-gap:1.5rem!important}.premium-footer .footer-brand{grid-column:1/-1}.premium-footer .footer-bottom{flex-direction:column!important;align-items:flex-start!important;gap:1rem}.premium-footer .footer-bottom>div{flex-wrap:wrap;gap:.8rem 1.1rem!important}.footer-try{width:100%!important}
}
@media(max-width:460px){.gv-mini-trust{grid-template-columns:1fr!important}.gv-feature-flow{grid-template-columns:1fr!important}.pricing-confidence>div{grid-template-columns:1fr!important}.premium-footer.gv-png-lock{grid-template-columns:1fr!important}.premium-footer .footer-links,.premium-footer .footer-links:last-of-type{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.gv-dark-burst,.gv-feature-burst,.premium-footer-glow{animation:none!important}}

/* V3.7.8.8 visual QA refinements after render comparison */
.gv-plan-card li::before{display:none!important;content:none!important}
.premium-footer .footer-links>b::before{display:none!important;content:none!important}
#features .premium-features-copy h2{font-size:clamp(2.85rem,3.75vw,4.15rem)!important;line-height:1.02!important}
.payment-page-hero{min-height:215px!important}
.payment-plan-strip>span>div b,.payment-plan-strip>span>div small{display:block!important}
.payment-plan-strip>span>div b{margin-bottom:.18rem!important}
.payment-plan-strip>span>div small{line-height:1.4!important}
@media(max-width:720px){#features .premium-features-copy h2{font-size:clamp(2.55rem,11vw,3.75rem)!important}.payment-page-hero{min-height:185px!important}}

/* V3.7.8.8 final visual-lock QA: approved PNG geometry + mobile overflow */
html,body{max-width:100%;overflow-x:hidden}
@media(min-width:1181px){
  #features .premium-features-hero{grid-template-columns:minmax(520px,.96fr) minmax(520px,1.04fr)!important;gap:3rem!important}
  #features .premium-features-copy{max-width:620px!important}
  #features .premium-features-copy h2{font-size:clamp(2.85rem,3.65vw,4.05rem)!important}
}
@media(max-width:720px){
  #pricing .premium-condition-grid{display:grid!important;grid-template-columns:1fr!important}
  #pricing .premium-condition-grid article{width:100%!important;min-width:0!important}
  #pricing .payment-plan-strip{display:grid!important;grid-template-columns:1fr!important}
  #pricing .payment-plan-strip>span{width:100%!important;min-width:0!important}
  #pricing .pricing-confidence>div{grid-template-columns:1fr!important}
  #pricing .pricing-confidence article{min-height:0!important}
  .premium-footer.gv-png-lock{width:100%!important}
}

/* Make approved lime ray accents visibly sit inside their light sections. */
#pricing{isolation:isolate}
#pricing>.premium-pricing-burst{z-index:0!important;pointer-events:none}
#pricing>.premium-pricing-heading,#pricing>.premium-billing-row,#pricing>.premium-pricing-grid,#pricing>.pricing-confidence,#pricing>.gv-pricing-cta,#pricing>.premium-payment-conditions,#pricing>.pricing-note{position:relative;z-index:1}
#pricing .premium-payment-conditions{isolation:isolate;overflow:hidden}
#pricing .payment-premium-burst{z-index:0!important;pointer-events:none}
#pricing .premium-payment-conditions>.payment-page-hero,#pricing .premium-payment-conditions>.payment-plan-strip,#pricing .premium-payment-conditions>.payment-cycle-line,#pricing .premium-payment-conditions>.premium-condition-grid,#pricing .premium-payment-conditions>.payment-help,#pricing .premium-payment-conditions>.payment-dark-cta{position:relative;z-index:1}
#features .gv-feature-burst{opacity:.26!important}

/* Final hero alignment: neutralise legacy .hero-copy width/margins. */
.gv-home-hero .gv-hero-copy{width:auto!important;max-width:none!important;margin:0!important;text-align:left!important;align-items:flex-start!important;justify-content:center!important}
.gv-home-hero .hero-story-copy{width:100%!important;max-width:570px!important;margin:0!important;text-align:left!important}

/* Approved visible but calm right-side lime ray accents. */
#pricing>.premium-pricing-burst{
  right:-2%!important;top:.5%!important;width:45%!important;height:31%!important;opacity:.42!important;
  background:repeating-conic-gradient(from 205deg at 100% 62%,rgba(158,224,0,.72) 0 .14deg,transparent .25deg 3.25deg),radial-gradient(circle at 100% 62%,rgba(200,255,61,.42),rgba(200,255,61,.10) 23%,transparent 46%)!important;
  -webkit-mask-image:radial-gradient(ellipse at 100% 62%,#000 0 47%,transparent 78%)!important;mask-image:radial-gradient(ellipse at 100% 62%,#000 0 47%,transparent 78%)!important
}
#pricing .payment-premium-burst{
  right:-3%!important;top:-2%!important;width:49%!important;height:30%!important;opacity:.38!important;
  background:repeating-conic-gradient(from 198deg at 100% 54%,rgba(158,224,0,.68) 0 .14deg,transparent .24deg 3.2deg),radial-gradient(circle at 100% 54%,rgba(200,255,61,.38),rgba(200,255,61,.08) 24%,transparent 46%)!important;
  -webkit-mask-image:radial-gradient(ellipse at 100% 54%,#000 0 48%,transparent 80%)!important;mask-image:radial-gradient(ellipse at 100% 54%,#000 0 48%,transparent 80%)!important
}
@media(max-width:980px){#pricing>.premium-pricing-burst{right:-12%!important;width:62%!important;opacity:.3!important}#pricing .payment-premium-burst{right:-18%!important;width:65%!important;opacity:.28!important}}
@media(max-width:720px){#pricing>.premium-pricing-burst,#pricing .payment-premium-burst{opacity:.18!important}}

/* Phone lock: pricing cards become one readable column; tablet remains 2×2. */
@media(max-width:720px){
  #pricing .premium-pricing-grid{display:grid!important;grid-template-columns:1fr!important;gap:1rem!important}
  #pricing .gv-plan-card{width:100%!important;max-width:none!important}
}


/* ========================================================================== */
/* GaliVue V3.8 — FINAL APPROVED PNG MATCH + RESPONSIVE LOCK               */
/* ========================================================================== */
:root{--gv9-lime:#C8FF3D;--gv9-deep:#9EE000;--gv9-cream:#F5F2EB;--gv9-ink:#151515;--gv9-muted:#69645C;--gv9-line:#E6E1D8}

/* ONE master Option-2 wordmark geometry everywhere. */
.brand img,.workspace-brand-mark img,.gv-logo-mark img{aspect-ratio:300/99!important;object-fit:contain!important}
.marketing-header .brand img,.mobile-menu .brand img,.client-brand-row .brand img,.legal-header .brand img,.workspace-brand-mark img{height:34px!important}
.gv-dash-top .brand img,.feature-window-top .brand img{height:23px!important}.premium-footer .brand img{height:55px!important}

/* HOME: keep the calm burst centred WITHIN the visual stage, while the approved two-line headline gets enough width. */
.gv-home-hero{overflow:hidden!important;background:linear-gradient(180deg,#fff,#fbfaf6)!important}
.gv-home-hero .gv-hero-grid{width:min(1540px,calc(100vw - 40px))!important;grid-template-columns:minmax(590px,.95fr) minmax(560px,1.05fr)!important;gap:1.6rem!important;min-height:640px!important}
.gv-home-hero .gv-hero-copy{padding:74px 0 62px clamp(18px,3.5vw,54px)!important;min-width:0!important}
.gv-home-hero h1{max-width:690px!important;font-size:clamp(4.35rem,5.45vw,6.65rem)!important;line-height:.91!important;letter-spacing:-.064em!important}
.gv-home-hero h1 .hero-line{white-space:normal!important}.gv-home-hero h1 .hero-stage-strong{margin-top:1.05rem!important;font-size:.39em!important;line-height:1.05!important;letter-spacing:-.04em!important;color:#83B600!important}
.gv-home-hero .hero-story-copy{max-width:620px!important;margin-top:1.45rem!important;font-size:.92rem!important;line-height:1.58!important}.gv-home-hero .hero-story-copy span{display:inline!important}
.gv-home-hero .hero-trust-line{max-width:650px!important;gap:.7rem 1.25rem!important;margin-top:1.45rem!important}.gv-home-hero .hero-trust-line span{white-space:nowrap}
.gv-home-hero .gv-hero-visual{position:relative!important;min-height:640px!important;overflow:hidden!important}
.gv-home-hero .gv-hero-burst{inset:0!important;overflow:hidden!important}.gv-home-hero .gv-hero-burst>i{left:50%!important;bottom:-2%!important;animation-duration:14s!important}.gv-home-hero .gv-burst-glow{left:50%!important;bottom:-50px!important;opacity:.58!important}.gv-home-hero .gv-hero-burst::before{left:-10%!important;right:-10%!important;background:radial-gradient(ellipse at 50% 100%,rgba(200,255,61,.30),rgba(200,255,61,.075) 38%,transparent 72%)!important}

/* Feature product preview: SVG icon family only, no browser-dependent glyphs. */
.feature-nav-item{display:flex!important;align-items:center!important;gap:.55rem!important}.feature-nav-item svg,.feature-top-bell svg,.feature-window-search svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.feature-nav-item span{padding:0!important;color:inherit!important}.feature-top-bell{display:grid!important;place-items:center!important;width:30px;height:30px;border-radius:50%;color:#fff}.feature-window-search{display:flex!important;align-items:center!important;gap:.4rem!important}.feature-window-search svg{width:14px;height:14px}.feature-window-search span{color:inherit}

/* PRICING: force every approved detail visible and balanced; no blank Free-Test card. */
#pricing.gv-png-lock{background:linear-gradient(180deg,#fff,#fbfaf6)!important;color:var(--gv9-ink)!important}
#pricing .premium-pricing-grid{align-items:stretch!important}.gv-plan-card{min-height:520px!important;padding:2.05rem 1.75rem 1.65rem!important}.gv-plan-card .plan-top>p{min-height:32px!important}.gv-plan-card ul{display:grid!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important;gap:.72rem!important;margin:1.15rem 0 1.35rem!important;padding:1rem 0 0!important;border-top:1px solid #E9E4DC!important}.gv-plan-card li{display:flex!important;visibility:visible!important;opacity:1!important}.gv-free-strong{margin-top:auto!important;margin-bottom:.9rem!important}.plan-free>button{margin-top:0!important}.gv-plan-card:not(.plan-free)>button{margin-top:auto!important}
#pricing .premium-pricing-heading h2{line-height:.96!important}.gv-save-callout{align-items:center!important}.gv-save-callout b{background:#F0F8D8!important}

/* PAYMENT CONDITIONS: match approved compact card density, icon scale and final 7-day copy. */
#pricing .premium-payment-conditions{padding:0 2.15rem 2.1rem!important;overflow:hidden!important}.payment-page-hero{min-height:300px!important;padding:3.5rem 0 2.5rem!important}.payment-page-hero>div{max-width:680px!important}.payment-plan-strip{margin-top:0!important;padding:1.15rem 1.3rem!important}.payment-plan-strip .gv-icon-bubble{width:44px!important;height:44px!important}.payment-cycle-line{margin:1.05rem 0 1.15rem!important}.premium-condition-grid{gap:.85rem!important}.premium-condition-grid article{min-height:0!important;height:auto!important;padding:1rem 1.05rem!important;grid-template-columns:48px 1fr!important;align-items:start!important}.premium-condition-grid article .gv-icon-bubble{width:46px!important;height:46px!important;border-radius:13px!important}.premium-condition-grid article b{font-size:.79rem!important}.premium-condition-grid article span{font-size:.68rem!important;line-height:1.48!important}.payment-help{margin-top:.95rem!important}.payment-dark-cta{margin-top:1.15rem!important}

/* FOOTER: approved icon/link structure must stay visible. */
.premium-footer .footer-links>b svg,.premium-footer .footer-bottom svg,.footer-try svg{display:block!important;visibility:visible!important;opacity:1!important}.premium-footer .footer-links>a span,.premium-footer .footer-links>button span{display:inline!important;visibility:visible!important}.premium-footer .footer-bottom{font-size:.82rem!important}

/* Responsive: preserve the SAME hierarchy instead of shrinking into cramped columns. */
@media(max-width:1220px){
  .gv-home-hero .gv-hero-grid{grid-template-columns:minmax(500px,.95fr) minmax(470px,1.05fr)!important}.gv-home-hero h1{font-size:clamp(3.8rem,6vw,5.4rem)!important}
  #features .premium-features-hero{grid-template-columns:1fr!important}.feature-product-wrap{width:min(900px,100%)!important;margin-inline:auto!important}
}
@media(max-width:980px){
  .gv-home-hero .gv-hero-grid{grid-template-columns:1fr!important;width:min(100%,calc(100vw - 28px))!important}.gv-home-hero .gv-hero-copy{padding:58px 26px 24px!important}.gv-home-hero h1{max-width:780px!important;font-size:clamp(3.65rem,9vw,5.8rem)!important}.gv-home-hero .gv-hero-visual{min-height:390px!important}.gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow{left:50%!important}
  #pricing .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gv-plan-card{min-height:500px!important}.premium-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .premium-footer.gv-png-lock{grid-template-columns:1fr 1fr 1fr!important}.premium-footer .footer-brand{grid-column:1/-1!important}
}
@media(max-width:720px){
  .marketing-header{width:calc(100vw - 18px)!important}.marketing-header .brand img{height:31px!important}
  .gv-home-hero .gv-hero-grid{width:100%!important}.gv-home-hero .gv-hero-copy{padding:44px 18px 20px!important}.gv-home-hero h1{font-size:clamp(3.05rem,13vw,4.55rem)!important;line-height:.93!important;letter-spacing:-.06em!important}.gv-home-hero h1 .hero-stage-strong{font-size:.48em!important}.gv-home-hero .hero-story-copy{font-size:.9rem!important}.gv-home-hero .hero-story-copy span{display:inline!important}.gv-home-hero .hero-trust-line{display:grid!important;grid-template-columns:1fr!important;gap:.55rem!important}.gv-home-hero .gv-hero-visual{min-height:300px!important}
  #features.gv-png-lock{width:calc(100vw - 24px)!important;padding:4.5rem 0!important}.premium-features-copy h2{font-size:clamp(2.8rem,11.5vw,4rem)!important}.feature-product-window{min-height:0!important}.feature-window-body{grid-template-columns:1fr!important}.feature-window-body aside{display:none!important}.feature-window-main{padding:14px!important}.feature-window-table-head,.feature-window-rows>span{grid-template-columns:1.55fr .9fr .55fr .8fr!important}.feature-window-table-head span:nth-child(5),.feature-window-rows>span>*:nth-child(5){display:none!important}.gv-feature-grid-exact{grid-template-columns:1fr!important}.gv-feature-grid-exact article{min-height:0!important}
  #pricing.gv-png-lock{padding-inline:14px!important}.premium-pricing-heading h2{font-size:clamp(3rem,13vw,4.4rem)!important}.premium-pricing-grid{grid-template-columns:1fr!important}.gv-plan-card{min-height:0!important;padding:1.55rem!important}.gv-free-strong{margin-top:.2rem!important}.premium-condition-grid{grid-template-columns:1fr!important}.premium-condition-grid article{min-height:0!important}.payment-plan-strip{grid-template-columns:1fr!important}.payment-plan-strip>strong{grid-column:auto!important}.payment-plan-strip>span{border-left:0!important;border-top:1px solid #E9E4DC!important}.payment-cycle-line{flex-wrap:wrap!important;justify-content:center!important}.payment-dark-cta{grid-template-columns:1fr!important}
  .premium-footer.gv-png-lock{grid-template-columns:1fr 1fr!important;padding:3.6rem 22px 1.6rem!important}.premium-footer .footer-brand{grid-column:1/-1!important}.premium-footer .footer-bottom{align-items:flex-start!important}
}
@media(max-width:460px){
  .gv-home-hero h1{font-size:clamp(2.85rem,15vw,3.9rem)!important}.gv-home-hero h1 .hero-stage-strong{font-size:.46em!important}.gv-home-hero .hero-actions{gap:.65rem!important}.gv-home-hero .gv-hero-visual{min-height:250px!important}
  .premium-footer.gv-png-lock{grid-template-columns:1fr!important}.premium-footer .footer-links,.premium-footer .footer-links:last-of-type{grid-column:1!important}.premium-footer .footer-bottom>div{display:grid!important;grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow,.gv-dark-burst,.gv-feature-burst,.premium-footer-glow{animation:none!important}}

/* V3.8 mobile specificity hard-lock after render QA. */
@media(max-width:720px){
  #pricing .premium-pricing-grid{grid-template-columns:1fr!important;display:grid!important}
  #pricing .premium-pricing-grid>.gv-plan-card{grid-column:1!important;width:100%!important;max-width:none!important}
}
@media(max-width:460px){
  footer.premium-footer.gv-png-lock{display:flex!important;flex-direction:column!important;gap:2rem!important;width:100%!important}
  footer.premium-footer.gv-png-lock .footer-brand,footer.premium-footer.gv-png-lock .footer-links,footer.premium-footer.gv-png-lock .footer-bottom{width:100%!important}
}

/* V3.8 decorative overflow containment: effects never widen the page. */
#pricing.gv-png-lock,#features.gv-png-lock,.premium-payment-conditions,.premium-footer.gv-png-lock{overflow:hidden!important;contain:paint}
.gv-dash-top-icons .gv-line-icon{width:19px!important;height:19px!important}.premium-demo .demo-private-pill{display:inline-flex!important;align-items:center!important;gap:.35rem!important}.premium-demo .demo-private-pill .gv-line-icon{width:14px!important;height:14px!important}


/* ========================================================================== */
/* GaliVue V3.8 — final post-V3.7.8.9 correction lock                  */
/* ========================================================================== */

/* HOME HERO — user-approved final: burst origin centered / lower-center. */
.gv-home-hero{position:relative!important;min-height:700px!important;overflow:hidden!important;background:#fff!important}
.gv-home-hero .gv-hero-grid{position:relative!important;display:block!important;width:min(1600px,calc(100vw - 72px))!important;min-height:700px!important;margin:0 auto!important}
.gv-home-hero .gv-hero-copy{position:relative!important;z-index:3!important;width:min(720px,48%)!important;max-width:720px!important;padding:82px 0 62px!important}
.gv-home-hero h1{max-width:none!important;font-size:clamp(4.8rem,6.2vw,6.7rem)!important;line-height:.91!important;letter-spacing:-.064em!important}
.gv-home-hero h1 .hero-line{display:block!important;white-space:nowrap!important}
.gv-home-hero h1 .hero-stage-strong{display:block!important;white-space:nowrap!important}
.gv-home-hero .gv-hero-visual{position:absolute!important;z-index:1!important;inset:0!important;min-height:700px!important;overflow:hidden!important;pointer-events:none!important}
.gv-home-hero .gv-hero-burst{position:absolute!important;inset:0!important;overflow:hidden!important}
.gv-home-hero .gv-hero-burst>i{left:50%!important;bottom:-2%!important;animation-duration:15s!important}
.gv-home-hero .gv-burst-glow{left:50%!important;bottom:-52px!important;opacity:.52!important}
.gv-home-hero .gv-hero-burst::before{left:0!important;right:0!important;background:radial-gradient(ellipse at 50% 100%,rgba(200,255,61,.30),rgba(200,255,61,.07) 37%,transparent 69%)!important}
.gv-home-hero .gv-hero-visual::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.96) 23%,rgba(255,255,255,.66) 39%,rgba(255,255,255,.08) 52%,transparent 65%)}
.gv-home-hero .hero-story-copy,.gv-home-hero .hero-actions,.gv-home-hero .hero-trust-line{position:relative;z-index:4}

/* PRICING — annual/main display, bigger savings callout, lime loop on every plan. */
#pricing .premium-billing-row{gap:1.35rem!important}
#pricing .gv-save-callout{column-gap:.7rem!important;row-gap:.15rem!important;min-width:190px!important}
#pricing .gv-save-callout b{padding:.42rem .72rem!important;font-size:.75rem!important;font-weight:750!important}
#pricing .gv-save-callout strong{font-size:1.2rem!important;line-height:1.1!important;font-weight:760!important}
#pricing .gv-save-callout>span{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;color:#79a900!important}
#pricing .gv-save-callout>span svg{width:26px!important;height:26px!important;display:block!important}
#pricing .gv-plan-card{border:1.5px solid rgba(145,194,0,.56)!important;box-shadow:0 14px 38px rgba(21,21,21,.045),0 0 0 1px rgba(200,255,61,.05)!important;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important}
#pricing .gv-plan-card:hover{border-color:#9ed000!important;box-shadow:0 18px 42px rgba(21,21,21,.06),0 0 0 2px rgba(200,255,61,.12)!important}
#pricing .gv-plan-card.pricing-featured{border:2px solid #9ed000!important;box-shadow:0 0 0 2px rgba(200,255,61,.20),0 22px 48px rgba(158,224,0,.10)!important}
#pricing .gv-plan-check{line-height:0!important}
#pricing .gv-plan-check svg{display:block!important;width:12px!important;height:12px!important}
#pricing .plan-top h3 b{min-width:max-content;transition:opacity .2s ease,transform .2s ease!important}
#pricing .gv-annual-line{min-height:22px!important}

/* PAYMENT — true SVG optical centering + approved compact 3-column density. */
#pricing .premium-payment-conditions .gv-icon-bubble{position:relative!important;display:block!important;line-height:0!important;overflow:visible!important}
#pricing .premium-payment-conditions .gv-icon-bubble>.gv-line-icon{position:absolute!important;left:50%!important;top:50%!important;width:26px!important;height:26px!important;transform:translate(-50%,-50%)!important;transform-origin:center!important;overflow:visible!important}
#pricing .payment-plan-strip .gv-icon-bubble>.gv-line-icon{width:25px!important;height:25px!important}
#pricing .payment-help .gv-icon-bubble>.gv-line-icon{width:25px!important;height:25px!important}
#pricing .premium-condition-grid{gap:.9rem!important}
#pricing .premium-condition-grid article{min-height:145px!important;height:145px!important;padding:1rem 1.05rem!important;grid-template-columns:48px 1fr!important;align-items:start!important}
#pricing .premium-condition-grid article .gv-icon-bubble{width:46px!important;height:46px!important;border-radius:13px!important}
#pricing .premium-condition-grid article b{margin:.05rem 0 .38rem!important;font-size:.79rem!important}
#pricing .premium-condition-grid article span{font-size:.68rem!important;line-height:1.48!important}
#pricing .payment-cycle-line strong{display:inline-flex!important;align-items:center!important;gap:.4rem!important}
#pricing .payment-cycle-line .gv-cycle-spark{width:15px!important;height:15px!important;color:#769e00!important;flex:0 0 auto!important}
#pricing .payment-cycle-line strong span{display:inline!important;color:inherit!important}

@media(max-width:1180px){
  .gv-home-hero .gv-hero-grid{width:min(100%,calc(100vw - 42px))!important}
  .gv-home-hero .gv-hero-copy{width:min(650px,54%)!important}
  .gv-home-hero h1{font-size:clamp(4.15rem,6.7vw,5.65rem)!important}
}
@media(max-width:980px){
  .gv-home-hero{min-height:760px!important}
  .gv-home-hero .gv-hero-grid{min-height:760px!important;width:min(100%,calc(100vw - 30px))!important}
  .gv-home-hero .gv-hero-copy{width:min(720px,100%)!important;max-width:720px!important;padding:58px 18px 300px!important}
  .gv-home-hero h1{font-size:clamp(3.8rem,9vw,5.65rem)!important}
  .gv-home-hero .gv-hero-visual{min-height:760px!important}
  .gv-home-hero .gv-hero-visual::after{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.95) 46%,rgba(255,255,255,.35) 62%,transparent 78%)}
  .gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow{left:50%!important}
  #pricing .premium-condition-grid article{height:auto!important;min-height:145px!important}
}
@media(max-width:720px){
  .gv-home-hero{min-height:760px!important}
  .gv-home-hero .gv-hero-grid{width:100%!important;min-height:760px!important}
  .gv-home-hero .gv-hero-copy{width:100%!important;padding:44px 18px 280px!important}
  .gv-home-hero h1{font-size:clamp(2.75rem,12.7vw,4.2rem)!important;line-height:.94!important}
  .gv-home-hero h1 .hero-line,.gv-home-hero h1 .hero-stage-strong{white-space:nowrap!important}
  .gv-home-hero .hero-story-copy{max-width:100%!important}
  .gv-home-hero .gv-hero-visual{min-height:760px!important}
  #pricing .gv-save-callout{min-width:0!important}
  #pricing .gv-save-callout strong{font-size:1.12rem!important}
  #pricing .premium-condition-grid article{height:auto!important;min-height:132px!important}
}
@media(max-width:460px){
  .gv-home-hero{min-height:720px!important}
  .gv-home-hero .gv-hero-grid,.gv-home-hero .gv-hero-visual{min-height:720px!important}
  .gv-home-hero .gv-hero-copy{padding:38px 16px 245px!important}
  .gv-home-hero h1{font-size:clamp(2.48rem,12.7vw,3.25rem)!important}
  .gv-home-hero h1 .hero-stage-strong{font-size:.48em!important}
  #pricing .premium-condition-grid article{min-height:0!important}
}

/* V3.8 responsive pricing-card hard lock: true 2×2 tablet, 1×4 phone. */
@media(max-width:980px) and (min-width:721px){
  #pricing .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pricing .premium-pricing-grid>.gv-plan-card,
  #pricing .premium-pricing-grid>.gv-plan-card:last-child{grid-column:auto!important;width:100%!important;max-width:none!important;justify-self:stretch!important}
}

/* ========================================================================== */
/* GaliVue V3.8 — final correction audit lock                            */
/* ========================================================================== */

/* Decorative public-page controls use real SVG artwork, not font glyphs. */
.gv-inline-icon{display:block;width:1em;height:1em;flex:0 0 auto;overflow:visible}
.gv-arrow-icon{width:18px;height:18px}
.gv-check-icon{width:16px;height:16px;color:#8DBA00}
.gv-play .gv-play-icon{width:20px;height:20px}
.gv-home-hero .hero-primary,.payment-dark-cta .accent-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.55rem!important}
.gv-home-hero .hero-trust-line span,.gv-mini-trust span{display:inline-flex!important;align-items:center!important;gap:.36rem!important}
.gv-home-hero .hero-trust-line span .gv-check-icon,.gv-mini-trust span .gv-check-icon{flex:0 0 auto!important}
.gv-flow-arrow{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;margin-top:17px!important;color:#82B000!important}
.gv-flow-arrow .gv-inline-icon{width:24px!important;height:24px!important}
.payment-help a{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.38rem!important}
.payment-help a .gv-arrow-icon{width:14px!important;height:14px!important}
.security-lock i{display:grid!important;place-items:center!important}
.security-lock i .gv-check-icon{width:32px!important;height:32px!important;color:#151515!important}
.proof-card .gv-check-icon{display:inline-block!important;width:12px!important;height:12px!important;margin-left:.2rem!important;vertical-align:-2px!important;color:#719900!important}

/* Footer link arrows are SVG and stay aligned at every zoom level. */
.premium-footer .gv-link-arrow{display:block!important;width:18px!important;height:18px!important;color:var(--gv8-lime)!important;flex:0 0 auto!important}
.premium-footer .footer-try b{display:grid!important;place-items:center!important;margin-left:auto!important;line-height:0!important}
.premium-footer .footer-try b .gv-arrow-icon{width:20px!important;height:20px!important;color:var(--gv8-lime)!important}

/* Payment icon bubbles: true optical centering.  The SVG itself is bounded to a
   symmetric 48×48 system and translated from the bubble centre only. */
#pricing .premium-payment-conditions .gv-icon-bubble{display:grid!important;place-items:center!important;position:relative!important;padding:0!important;line-height:0!important}
#pricing .premium-payment-conditions .gv-icon-bubble>.gv-line-icon{position:static!important;display:block!important;width:26px!important;height:26px!important;transform:none!important;margin:0!important;overflow:visible!important}
#pricing .payment-plan-strip .gv-icon-bubble>.gv-line-icon{width:25px!important;height:25px!important}
#pricing .payment-help .gv-icon-bubble>.gv-line-icon{width:25px!important;height:25px!important}
#pricing .gv-payment-trust .gv-icon-bubble>.gv-line-icon{width:25px!important;height:25px!important}

/* Final hero: lime burst origin is lower-centre on every breakpoint. */
.gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow{left:50%!important}
.gv-home-hero .gv-hero-burst>i{bottom:-2%!important}
.gv-home-hero .gv-burst-glow{bottom:-52px!important}
@media(max-width:980px){.gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow{left:50%!important}}
@media(max-width:720px){.gv-home-hero .gv-hero-burst>i,.gv-home-hero .gv-burst-glow{left:50%!important}}

/* Pricing: all four cards keep a visible lime loop, Starter remains stronger. */
#pricing .premium-pricing-grid>.gv-plan-card{border-color:rgba(145,194,0,.62)!important}
#pricing .premium-pricing-grid>.pricing-featured{border-color:#9ED000!important}

/* Annual savings callout retains stronger hierarchy without becoming bulky. */
#pricing .gv-save-callout{align-items:center!important}
#pricing .gv-save-callout b{font-size:.78rem!important}
#pricing .gv-save-callout strong{font-size:1.28rem!important;letter-spacing:-.025em!important}
#pricing .gv-save-callout>span{width:34px!important;height:34px!important}
#pricing .gv-save-callout>span svg{width:28px!important;height:28px!important}

/* Responsive safety: no decorative or inline SVG can create page overflow. */
.marketing-page svg{max-width:100%}
@media(max-width:720px){
  .gv-home-hero .hero-trust-line span{white-space:normal!important}
  #pricing .gv-save-callout{width:auto!important;max-width:100%!important}
  #pricing .gv-save-callout strong{font-size:1.15rem!important}
  .gv-flow-arrow{display:none!important}
}
@media(max-width:420px){
  .gv-home-hero .gv-hero-copy{padding-inline:14px!important}
  .gv-home-hero .hero-actions>*{max-width:100%!important}
  #pricing .payment-plan-strip,#pricing .premium-condition-grid,#pricing .pricing-confidence>div{min-width:0!important}
}
/* Premium demo icon alignment. */
.premium-demo .demo-action,.premium-demo #demoPrevious,.premium-demo #demoFollowing{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.45rem!important}
.premium-demo #demoPrevious .gv-arrow-icon,.premium-demo #demoFollowing .gv-arrow-icon{width:18px!important;height:18px!important}
.premium-demo .demo-match-label span{display:inline-flex!important;align-items:center!important;gap:.25rem!important}
.premium-demo .demo-match-label .gv-check-icon{width:12px!important;height:12px!important;color:var(--accent)!important}
.premium-demo .demo-delivery .demo-check{display:grid!important;place-items:center!important}
.premium-demo .demo-delivery .demo-check .gv-check-icon{width:22px!important;height:22px!important;color:#151515!important}
.proof-card .match-line em{display:grid!important;place-items:center!important;font-style:normal!important;line-height:0!important}
.proof-card .gv-match-arrow{width:14px!important;height:14px!important;color:#7EA900!important}

/* V3.8.6 permanent random photographer reference */
#dashboardPanel .workspace-photographer-ref{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:4px;padding:3px 8px;border:1px solid rgba(144,190,0,.34);border-radius:999px;background:rgba(200,255,61,.14);color:#5d7600;font-size:.66rem;font-weight:700;letter-spacing:.06em;white-space:nowrap}
.profile-photographer-id{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 4px;padding:14px 16px;border:1px solid #dfe8c6;border-radius:16px;background:#f9ffec}.profile-photographer-id>div{min-width:0}.profile-photographer-id small,.profile-photographer-id span{display:block}.profile-photographer-id small{font-size:.68rem;letter-spacing:.11em;color:#757067}.profile-photographer-id strong{display:block;margin-top:4px;font-size:1.02rem;letter-spacing:.04em}.profile-photographer-id span{margin-top:3px;color:#77736b;font-size:.73rem}.profile-photographer-id button{flex:0 0 auto}@media(max-width:680px){.profile-photographer-id{align-items:flex-start}.profile-photographer-id button{padding-inline:10px}}

#dashboardPanel .usage-photographer-ref{display:block;margin-top:4px;color:#657f00;font-size:.66rem;font-weight:720;letter-spacing:.04em;white-space:nowrap}

/* V3.8.12 — visible subscription conditions inside Plan & Usage */
.plan-subscription-conditions{margin-top:14px;padding:16px;border:1px solid #d9d3c8;border-radius:18px;background:#fbfaf6}
.plan-subscription-conditions-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.plan-subscription-conditions-head>div{display:grid;gap:3px}
.plan-subscription-conditions-head small{font-size:11px;font-weight:900;letter-spacing:.11em;color:#5e8528}
.plan-subscription-conditions-head strong{font-size:16px;line-height:1.2}
.plan-subscription-conditions-head a{color:#151515;font-size:12px;font-weight:850;text-decoration:none;border-bottom:1px solid #15151533;padding-bottom:2px}
.plan-subscription-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.plan-subscription-rule-grid>span{display:grid;gap:3px;padding:11px 12px;border-radius:14px;background:#fff;border:1px solid #ebe6dd}
.plan-subscription-rule-grid b{font-size:12px}
.plan-subscription-rule-grid small{font-size:11px;line-height:1.45;color:#666159}
@media(max-width:720px){.plan-subscription-conditions-head{display:grid}.plan-subscription-rule-grid{grid-template-columns:1fr}.plan-subscription-conditions{padding:14px}}


/* V3.8.15 — real Stripe promotion entry, intentionally compact. */
.pricing-promo-bar{max-width:1120px;margin:0 auto 1rem;padding:.72rem .85rem;border:1px solid rgba(145,194,0,.38);border-radius:18px;background:rgba(255,255,255,.78);display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:0 12px 34px rgba(45,60,20,.06)}
.pricing-promo-bar>div{display:flex;align-items:center;gap:.7rem}.pricing-promo-bar .gv-icon-bubble{width:38px;height:38px;flex:0 0 38px}.pricing-promo-bar .gv-line-icon{width:23px;height:23px}.pricing-promo-bar b{display:block;font-size:.78rem}.pricing-promo-bar small{display:block;margin-top:.1rem;color:var(--muted);font-size:.68rem;line-height:1.35}.pricing-promo-bar form{display:flex;align-items:center;gap:.4rem}.pricing-promo-bar input{width:150px;min-height:38px;border:1px solid rgba(81,100,48,.23);border-radius:11px;padding:0 .7rem;background:#fff;font:800 .72rem/1 inherit;letter-spacing:.05em;text-transform:uppercase}.pricing-promo-bar button{min-height:38px;border:0;border-radius:11px;padding:0 .8rem;font-weight:900;cursor:pointer}.pricing-promo-bar form button[type="submit"]{background:var(--accent);color:#172300}.pricing-promo-bar.is-applied{border-color:rgba(145,194,0,.8);background:rgba(247,255,223,.9)}#pricing .gv-plan-card.promo-eligible{box-shadow:0 0 0 2px rgba(145,194,0,.12),0 22px 50px rgba(50,65,20,.08)}
.plan-promo-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem 1rem;align-items:center;padding:.8rem;border:1px solid rgba(145,194,0,.32);border-radius:16px;background:rgba(248,253,235,.7)}.plan-promo-entry>div:first-child{display:grid;gap:.12rem}.plan-promo-entry small{font-size:.58rem;font-weight:950;letter-spacing:.1em;color:#62872c}.plan-promo-entry strong{font-size:.82rem}.plan-promo-entry span,.plan-promo-entry p{font-size:.67rem;color:var(--muted)}.plan-promo-controls{display:flex;gap:.4rem;align-items:center}.plan-promo-controls input{width:150px;min-height:36px;border:1px solid rgba(75,94,48,.22);border-radius:10px;padding:0 .65rem;font-weight:850;text-transform:uppercase}.plan-promo-entry p{grid-column:1/-1;margin:0}.plan-promo-entry p.is-valid{color:#52751d;font-weight:800}.plan-promo-entry p.is-invalid{color:#9b6118;font-weight:750}
@media(max-width:720px){.pricing-promo-bar{align-items:stretch;flex-direction:column}.pricing-promo-bar form{width:100%;flex-wrap:wrap}.pricing-promo-bar input{flex:1 1 150px}.plan-promo-entry{grid-template-columns:1fr}.plan-promo-controls{flex-wrap:wrap}.plan-promo-controls input{flex:1 1 160px}}


/* V3.8.20 — AI Selection stays visible in New Project while public launch is gated. */
.workflow-choice.ai-coming-soon{cursor:default;background:linear-gradient(145deg,#fff,#faf8f3);border-style:dashed}
.workflow-choice.ai-coming-soon:hover,.workflow-choice.ai-coming-soon:focus-visible{transform:none;border-color:#d5cec3;box-shadow:none}
.workflow-choice.ai-coming-soon .choice-animated-icon{animation:none!important;opacity:.72}
.workflow-choice.ai-coming-soon .ai-choice-heading::before{animation:none!important;opacity:.32}
.workflow-choice.ai-coming-soon .ai-choice-heading em{animation:none!important;background:#eee9df;color:#5f5a52}
.workflow-choice.ai-internal-test .ai-choice-heading em{background:#d8ff54;color:#273400}


/* V3.8.40 — smooth authenticated return from Terms/Help/Privacy to workspace.
   Apply before first paint via account-boot.js so the public homepage never flashes
   between the public document and the authenticated Dashboard modal. */
html.galivue-account-return,
html.galivue-account-return body {
  background: #f5f2eb;
}
html.galivue-account-return #siteHeader,
html.galivue-account-return #marketingView {
  visibility: hidden !important;
}
html.galivue-account-return.galivue-account-workspace-ready #siteHeader,
html.galivue-account-return.galivue-account-workspace-ready #marketingView {
  visibility: hidden !important;
}


/* V3.8.41 — open public Terms inside the authenticated workspace instead of
   navigating away. This keeps Dashboard mounted and makes browser Back/Forward
   close/reopen the in-app document without a homepage flash. */
.workspace-public-page-panel{
  width:min(1040px,96vw);
  height:min(92dvh,980px);
  max-height:92dvh;
  overflow:auto;
  padding:0 1.5rem 2rem;
}
.workspace-public-page-head{
  position:sticky;
  top:0;
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin:0 -1.5rem;
  padding:1rem 1.5rem;
  background:rgba(245,242,235,.97);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px);
}
.workspace-public-back{font-weight:800}
.workspace-public-page-body.legal-shell{
  width:min(860px,100%);
  margin:0 auto;
  padding:2.2rem 0 4rem;
}
@media(max-width:700px){
  .workspace-public-page-panel{width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:0 1rem 1.5rem}
  .workspace-public-page-head{margin:0 -1rem;padding:.8rem 1rem;padding-top:max(.8rem,env(safe-area-inset-top))}
  .workspace-public-page-body.legal-shell{width:100%;padding:1.7rem 0 3rem}
  .workspace-public-back{font-size:.82rem;max-width:calc(100% - 56px);white-space:normal;text-align:left}
}


/* ==========================================================================\n   GaliVue V3.8.44 — final pre-domain navigation / account lifecycle polish\n   ========================================================================== */
/* Keep one consistent public header. Pricing must never flip the header black. */
.marketing-header,
.marketing-header.pricing-theme{
  background:rgba(255,255,255,.95)!important;
  border-color:rgba(17,17,17,.065)!important;
  box-shadow:0 14px 42px rgba(42,37,28,.075)!important;
  color:#111!important;
}
.marketing-header.pricing-theme .brand,
.marketing-header.pricing-theme .desktop-nav a,
.marketing-header.pricing-theme .header-login,
.marketing-header.pricing-theme .header-dashboard{color:#111!important}
.marketing-header.pricing-theme .menu-button span{background:#111!important}
.marketing-header.pricing-theme .public-header-avatar{background:#111!important;color:#fff!important}

/* Pointer interaction must not leave a browser-blue ring behind. Keyboard focus stays visible. */
.language-switcher select.gv-pointer-focus:focus{outline:none!important;box-shadow:none!important}
.marketing-header .brand.gv-pointer-focus:focus{outline:none!important;box-shadow:none!important}

/* Pause decorative infinite animation when its parent section is off screen. */
.gv-motion-paused *, .gv-motion-paused::before, .gv-motion-paused::after{animation-play-state:paused!important}

/* Account deletion is intentionally discreet until expanded. */
.account-danger-zone{margin:1.25rem 0 0;border-top:1px solid var(--line);padding-top:1rem}
.account-danger-zone>summary{cursor:pointer;color:#777169;font-size:.78rem;font-weight:800;list-style:none;width:max-content}
.account-danger-zone>summary::-webkit-details-marker{display:none}
.account-danger-zone>summary::before{content:'＋';display:inline-block;margin-right:.45rem;color:#8d877f}
.account-danger-zone[open]>summary::before{content:'−'}
.account-danger-content{margin-top:1rem;padding:1rem 1.05rem;border:1px solid #ead6d2;border-radius:16px;background:#fffaf8}
.account-danger-content small{color:#9b4037;font-weight:900;letter-spacing:.09em}
.account-danger-content h3{margin:.35rem 0 .45rem;font-size:1.05rem}
.account-danger-content p{margin:0 0 .9rem;color:#6e625f;line-height:1.55;font-size:.83rem}
.danger-outline,.danger-primary{border:1px solid #b74b3f;background:#fff;color:#9f352b;font-weight:900;border-radius:12px;cursor:pointer}
.danger-outline{padding:.65rem .85rem}
.danger-primary{background:#a83d33;color:#fff;border-color:#a83d33;padding:.85rem 1rem}
.danger-primary:hover{background:#943329}
.danger-primary:disabled{opacity:.48;cursor:not-allowed}
.delete-account-panel{width:min(620px,94vw)!important}
.delete-account-stage{display:grid;gap:.9rem}
.delete-account-stage label{display:grid;gap:.38rem;font-size:.82rem;font-weight:800;color:#393633}
.delete-account-stage input,.delete-account-stage select,.delete-account-stage textarea{width:100%;border:1px solid #d8d2c8;border-radius:11px;background:#fff;padding:.72rem .78rem;font:inherit;color:#151515}
.delete-warning{padding:1rem 1.05rem;border:1px solid #e7c2bc;border-radius:14px;background:#fff6f3}
.delete-warning strong{display:block;color:#8f3027;margin-bottom:.35rem}
.delete-warning p{margin:0;color:#6d5c58;line-height:1.55;font-size:.84rem}
.delete-warning.is-final{border-color:#dba098;background:#fff0ed}
.danger-confirm-row{grid-template-columns:22px 1fr!important;align-items:flex-start!important;gap:.55rem!important;padding:.65rem .7rem;border-radius:12px;background:#f8f5ef}
.danger-confirm-row input{width:18px!important;height:18px!important;margin-top:.05rem;padding:0!important}
.payment-grace-banner{margin:.85rem 0;padding:.85rem 1rem;border:1px solid #e2a873;border-radius:14px;background:#fff7ed;color:#6e4019}
.payment-grace-banner strong{display:block;margin-bottom:.25rem;color:#8b4d17}
.payment-grace-banner p{margin:0;font-size:.78rem;line-height:1.5}

@media(max-width:680px){
  .delete-account-panel{padding:1.15rem!important;border-radius:20px!important}
}


/* GaliVue V3.8.45 — live-domain public-copy/cache release; layout rules unchanged. */


/* GaliVue V3.8.49 — live-domain anchor/header shield.
   The floating header keeps its approved gap, while a fixed page-colour strip
   prevents content from the previous section peeking above it after hash jumps. */
body::before{
  content:"";
  position:fixed;
  z-index:79;
  top:0;left:0;right:0;
  height:var(--gv-public-header-top,14px);
  background:var(--page,#f5f2eb);
  pointer-events:none;
}
html.modal-open body::before{display:none}


/* V3.8.56.1 — Billing history, client-note and cross-device safety */
.profile-billing-history-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:16px;border:1px solid #dfe8c6;border-radius:16px;background:#fbfff1}.profile-billing-history-card small,.profile-billing-history-card h3,.profile-billing-history-card p{display:block;margin:0}.profile-billing-history-card h3{margin-top:3px}.profile-billing-history-card p{margin-top:5px;color:var(--muted);font-size:.84rem}.billing-history-panel{width:min(980px,calc(100vw - 32px));max-height:min(88dvh,880px);overflow:auto}.billing-history-tools,.billing-statement-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.billing-history-tools label,.billing-statement-actions label{min-width:150px}.billing-history-rows{display:grid;gap:10px;margin-top:16px}.billing-history-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(130px,.7fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.billing-history-row strong,.billing-history-row span,.billing-history-row small{display:block}.billing-history-row span,.billing-history-row small{color:var(--muted);margin-top:3px}.billing-history-row .billing-amount{text-align:right}.billing-history-row .billing-amount strong{font-size:1.03rem}.billing-history-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.billing-history-footnote{font-size:.76rem;color:var(--muted);margin-top:14px}.client-note-field{display:grid;gap:6px}.client-note-field textarea{width:100%;min-height:108px;resize:vertical}.client-note-field small{color:var(--muted)}.optional-label{font-size:.68rem;font-weight:600;color:var(--muted);margin-left:5px}.client-photographer-note{margin:14px 0;padding:16px 18px;border:1px solid #dfe8c6;border-radius:16px;background:#f9ffec;white-space:pre-wrap;line-height:1.55}.client-photographer-note-label{display:block;font-size:.66rem;letter-spacing:.11em;font-weight:800;color:#667343;margin-bottom:6px}.client-photographer-note-text{display:block}.stripe-environment-warning{margin:12px 0;padding:13px 15px;border:1px solid #e6cf8b;border-radius:14px;background:#fff9e8;color:#5f4b13}.stripe-environment-warning strong,.stripe-environment-warning span{display:block}.stripe-environment-warning span{font-size:.82rem;margin-top:3px}.upload-picker-feedback{animation:galivuePickerPulse .75s ease}@keyframes galivuePickerPulse{0%{box-shadow:0 0 0 0 rgba(120,160,40,.28)}100%{box-shadow:0 0 0 12px rgba(120,160,40,0)}}

@media(max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  img,video,canvas,svg{max-width:100%}
  html.js-reveal .reveal-on-scroll{opacity:1!important;transform:none!important;transition:none!important}
  .marketing-page .section,.marketing-page section,#pricing,#features,#reviews,#how-it-works{min-height:0!important;height:auto!important}
  .profile-billing-history-card{align-items:flex-start;flex-direction:column}.profile-billing-history-card button{width:100%}
  .billing-history-panel{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding-bottom:max(18px,env(safe-area-inset-bottom))}
  .billing-history-tools,.billing-statement-actions{display:grid;grid-template-columns:1fr;width:100%}.billing-history-tools label,.billing-statement-actions label{min-width:0;width:100%}.billing-history-tools button,.billing-statement-actions button{width:100%}
  .billing-history-row{grid-template-columns:1fr}.billing-history-row .billing-amount{text-align:left}.billing-history-actions{justify-content:flex-start}
  .modal-layer{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom));overflow:auto;-webkit-overflow-scrolling:touch}
  .modal-panel{max-width:100%;max-height:calc(100dvh - 16px);overflow:auto;-webkit-overflow-scrolling:touch}
  input,select,textarea{font-size:16px!important}
  button,[role="button"],input,select,textarea{min-height:44px}
  .pricing-grid,.pricing-cards,.plan-grid{grid-template-columns:1fr!important}

  /* Keep the optional photographer note fully visible on iPhone, Android and tablets. */
  .project-form>.form-section-title:has(+ .client-note-field){display:block!important}
  .project-form>.client-note-field{display:grid!important;grid-column:1 / -1!important;width:100%!important;min-width:0!important;visibility:visible!important;opacity:1!important}
  .project-form>.client-note-field textarea{display:block!important;width:100%!important;min-height:120px!important;max-width:100%!important}
}
@supports(height:100svh){@media(max-width:900px){.modal-panel{max-height:calc(100svh - 16px)}}}

/* V3.8.56.1 — iOS/Android dynamic-viewport overrides for full-screen surfaces. */
@media(max-width:900px){
  .marketing-hero{min-height:0!important;height:auto!important;padding-top:clamp(5.4rem,18vw,7rem)!important;padding-bottom:clamp(3.6rem,12vw,5.2rem)!important}
  .client-view,.legal-page{min-height:100dvh}
  .lightbox-panel{height:100dvh}
  .lightbox-stage img{max-height:68dvh}
  .lightbox-stage{padding:1rem 3.5rem}
  .lightbox-footer{padding-left:1rem;padding-right:1rem}
}
@supports(height:100svh){
  @media(max-width:900px){
    .client-view,.legal-page{min-height:100svh}
    .lightbox-panel{height:100svh}
    .lightbox-stage img{max-height:68svh}
  }
}
@media(max-width:900px) and (orientation:landscape){
  .marketing-hero{padding-top:4.8rem!important;padding-bottom:2.6rem!important}
  .lightbox-stage img{max-height:58dvh}
}


/* V3.8.58 - storage entitlement clarity across Free Test, complimentary and paid plans */
.storage-entitlement-card{margin-top:12px;padding:14px;border:1px solid #e7e2d7;border-radius:18px;background:#faf9f5}
.storage-entitlement-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.storage-entitlement-head small{display:block;font-size:10px;font-weight:750;letter-spacing:.08em;color:#777168}.storage-entitlement-head strong{display:block;margin-top:4px;font-size:14px}.storage-entitlement-head>span{font-size:12px;font-weight:700;white-space:nowrap}
.storage-entitlement-list{display:grid;gap:7px}.storage-entitlement-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 11px;border:1px solid #e7e3da;background:#fff;border-radius:13px}.storage-entitlement-row>div{min-width:0}.storage-entitlement-row small,.storage-entitlement-row strong,.storage-entitlement-row span{display:block}.storage-entitlement-row small{font-size:9px;text-transform:uppercase;font-weight:750;letter-spacing:.06em;color:#767067}.storage-entitlement-row strong{margin-top:2px;font-size:13px}.storage-entitlement-row>div>span{margin-top:2px;font-size:10.5px;line-height:1.4;color:#69645d}.storage-entitlement-row.is-offer{border-color:#d6e7a6;background:#fbffed}.storage-entitlement-badge{flex:none;padding:5px 7px;border-radius:999px;background:#eff8cf;color:#394314;font-size:9px!important;font-weight:800;letter-spacing:.04em}.storage-entitlement-row.is-included .storage-entitlement-badge{background:#f0eee8;color:#625e56}
@media(max-width:620px){.storage-entitlement-head{display:grid}.storage-entitlement-head>span{white-space:normal}.storage-entitlement-row{align-items:flex-start}.storage-entitlement-badge{margin-top:2px}}

/* V3.8.58.2 — photographer workflow review prompt */
.photographer-review-invite{margin-top:.8rem;border:1px solid #bfdc70;background:#f4ffda;border-radius:15px;padding:.82rem .9rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.photographer-review-invite>div{display:grid;gap:.2rem}.photographer-review-invite strong{font-size:.88rem}.photographer-review-invite span{font-size:.75rem;color:var(--muted)}@media(max-width:620px){.photographer-review-invite{align-items:stretch;flex-direction:column}.photographer-review-invite button{width:100%}}

/* GaliVue V3.8.59.7 SAFETY SCOPE — legacy Design 3 is isolated
   These rules must never style the active Design 2 client/delivery pages.
   GaliVue V3.8.59 — Client Design 3
   Premium client selection + final-delivery presentation only.
   Existing IDs, APIs, selection logic and event handlers remain unchanged. */
.client-design-three{
  --gv-d3-dark:#11130f;
  --gv-d3-dark-soft:#191c17;
  --gv-d3-cream:#f7f4ed;
  --gv-d3-card:#fffdf8;
  --gv-d3-line:#e5dfd4;
  --gv-d3-lime:#c8ff3d;
  --gv-d3-green:#86b91d;
  --gv-d3-amber:#e9a91a;
  --gv-d3-coral:#e75b5b;
  background:
    radial-gradient(circle at 8% 6%,rgba(200,255,61,.10),transparent 24rem),
    linear-gradient(180deg,#faf8f3 0%,#f4f0e8 100%);
}
.client-design-three .client-shell{max-width:1680px;padding:20px clamp(18px,3vw,48px) 44px}
.client-design-three .client-brand-row{
  min-height:56px;margin:0 0 20px;padding:4px 2px 14px;
  border-bottom:1px solid rgba(21,21,21,.10);
}
.client-design-three .client-brand-row .brand img{height:38px!important;width:auto}
.client-design-three .client-brand-actions{gap:10px}
.client-design-three .privacy-pill{
  border-color:rgba(21,21,21,.10);background:rgba(255,255,255,.76);
  box-shadow:0 8px 24px rgba(27,28,23,.04);font-size:.76rem;letter-spacing:.015em;
}
.client-design-three .client-language-switcher{
  border:1px solid rgba(21,21,21,.10);background:rgba(255,255,255,.76)!important;
  box-shadow:0 8px 24px rgba(27,28,23,.04)!important;
}

/* Selection page: story / working gallery / live summary. */
#clientView.client-design-three #clientContent:not(.hidden){
  display:grid;
  grid-template-columns:minmax(270px,330px) minmax(0,1fr) minmax(245px,290px);
  grid-template-rows:auto auto auto auto;
  gap:18px 22px;
  align-items:start;
}
#clientView.client-design-three .client-header{
  grid-column:1;grid-row:1 / span 3;
  position:relative;isolation:isolate;overflow:hidden;
  min-height:520px;margin:0;padding:32px 28px;
  border:1px solid rgba(255,255,255,.08);border-radius:28px;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;
  color:#fff;
  background-image:
    linear-gradient(180deg,rgba(10,12,9,.18) 0%,rgba(10,12,9,.46) 44%,rgba(10,12,9,.94) 100%),
    var(--gv-client-hero-image,linear-gradient(145deg,#24271f,#11130f));
  background-position:center;background-size:cover;
  box-shadow:0 24px 58px rgba(18,20,15,.18);
}
#clientView.client-design-three .client-header::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 15% 9%,rgba(200,255,61,.22),transparent 22%);
}
#clientView.client-design-three .client-header::after{
  content:"";width:30px;height:3px;border-radius:999px;background:var(--gv-d3-lime);margin-top:22px;order:-1;
}
#clientView.client-design-three .client-header>div{position:relative;z-index:1;min-width:0}
#clientView.client-design-three .client-header .eyebrow{color:var(--gv-d3-lime);font-size:.68rem;letter-spacing:.17em}
#clientView.client-design-three .client-header h1{
  color:#fff!important;font-family:"Iowan Old Style","Baskerville",Georgia,serif;
  font-size:clamp(2.45rem,3.3vw,4rem)!important;line-height:.98!important;letter-spacing:-.045em!important;
  margin:18px 0 16px!important;text-wrap:balance;
}
#clientView.client-design-three .client-header p{max-width:29ch;margin:0;color:rgba(255,255,255,.80)!important;font-size:.96rem!important;line-height:1.62!important}

#clientView.client-design-three #clientReceiptConfirm{grid-column:2;grid-row:1;margin:0}
#clientView.client-design-three #clientRules{grid-column:2;grid-row:2;margin:0}
#clientView.client-design-three #clientSuccess{grid-column:2;grid-row:3;margin:0}
#clientView.client-design-three #clientGallery{grid-column:2;grid-row:4}
#clientView.client-design-three #clientStats{grid-column:3;grid-row:1 / span 4}
#clientView.client-design-three #clientPhotographerNote{grid-column:1;grid-row:4;margin:0}

#clientView.client-design-three .client-receipt-confirm{
  min-height:84px;margin:0;padding:15px 16px;border-color:var(--gv-d3-line);border-radius:18px;
  background:rgba(255,253,248,.92);box-shadow:0 10px 28px rgba(26,25,21,.035);
}
#clientView.client-design-three .client-receipt-confirm strong{font-size:.88rem}
#clientView.client-design-three .client-receipt-confirm span{font-size:.77rem}
#clientView.client-design-three .client-receipt-confirm .primary{background:var(--gv-d3-dark);border-color:var(--gv-d3-dark);font-size:.78rem;padding:.65rem .82rem}
#clientView.client-design-three .client-receipt-confirm.is-confirmed{background:#f5fbdf;border-color:#d5e6a5}

#clientView.client-design-three .client-photographer-note{
  position:relative;overflow:hidden;padding:22px 20px 24px;border:1px solid #ddd6ca;border-radius:22px;
  background:linear-gradient(145deg,#fffdf8,#f5f0e5);box-shadow:0 14px 32px rgba(24,23,19,.045);
  color:#37372f;font-family:"Iowan Old Style","Baskerville",Georgia,serif;font-size:.98rem;line-height:1.65;
}
#clientView.client-design-three .client-photographer-note::before{
  content:"“";display:block;margin-bottom:8px;color:#7da71d;font-size:2.2rem;line-height:.7;font-weight:800;
}
#clientView.client-design-three .client-photographer-note-label{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#697154;font-size:.62rem;letter-spacing:.13em;margin-bottom:9px;
}
#clientView.client-design-three .client-photographer-note-text{position:relative;z-index:1}
#clientView.client-design-three .client-photographer-note::after{
  content:"";position:absolute;width:100px;height:100px;right:-42px;bottom:-42px;border:1px solid rgba(120,150,58,.16);border-radius:50%;
  box-shadow:0 0 0 14px rgba(120,150,58,.035),0 0 0 28px rgba(120,150,58,.022);
}

#clientView.client-design-three .rule-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#clientView.client-design-three .rule-card{
  min-height:96px;padding:15px;border-color:var(--gv-d3-line);border-radius:18px;background:rgba(255,253,248,.92);
  box-shadow:0 9px 24px rgba(26,25,21,.03);justify-content:center;
}
#clientView.client-design-three .rule-card strong{font-size:.9rem;line-height:1.25}
#clientView.client-design-three .rule-card span{margin-top:5px;font-size:.75rem;line-height:1.35}
#clientView.client-design-three .rule-card:nth-child(1){box-shadow:inset 3px 0 0 rgba(134,185,29,.9),0 9px 24px rgba(26,25,21,.03)}
#clientView.client-design-three .rule-card:nth-child(2){box-shadow:inset 3px 0 0 rgba(233,169,26,.9),0 9px 24px rgba(26,25,21,.03)}
#clientView.client-design-three .rule-card:nth-child(3){box-shadow:inset 3px 0 0 rgba(231,91,91,.85),0 9px 24px rgba(26,25,21,.03)}
#clientView.client-design-three .rule-card.disabled{opacity:.42;filter:saturate(.5)}

#clientView.client-design-three #clientStats.sticky-stats{
  top:18px;z-index:9;margin:0;padding:22px 18px;
  display:grid;gap:10px;border:1px solid rgba(255,255,255,.07);border-radius:26px;
  background:
    radial-gradient(circle at 92% 3%,rgba(200,255,61,.13),transparent 30%),
    linear-gradient(160deg,#191c17 0%,#10120f 100%);
  color:#fff;box-shadow:0 22px 52px rgba(18,20,15,.18);backdrop-filter:none;
}
#clientView.client-design-three #clientStats.sticky-stats::before{
  content:"";display:block;width:28px;height:3px;margin:0 0 6px;border-radius:999px;background:var(--gv-d3-lime);
}
#clientView.client-design-three #clientStats span[data-stat]{
  width:100%;min-height:54px;padding:12px 13px;border:1px solid rgba(255,255,255,.10);border-radius:15px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:rgba(255,255,255,.035);color:rgba(255,255,255,.88);font-size:.78rem;font-weight:760;
}
#clientView.client-design-three #clientStats span[data-stat="5"]{order:1;border-color:rgba(200,255,61,.24);color:#eaffb7}
#clientView.client-design-three #clientStats span[data-stat="4"]{order:2;border-color:rgba(233,169,26,.24);color:#ffd97c}
#clientView.client-design-three #clientStats span[data-stat="3"]{order:3;border-color:rgba(231,91,91,.24);color:#ffb0b0}
#clientView.client-design-three #clientStats span[data-stat="total"]{order:4;margin-top:5px;border-top-color:rgba(255,255,255,.18);font-size:.84rem}
#clientView.client-design-three #clientStats span[data-stat="status"]{order:5;justify-content:center;min-height:40px;color:rgba(255,255,255,.70);border-style:dashed}
#clientView.client-design-three #clientStats span.limit-full{background:rgba(255,255,255,.07)!important}
#clientView.client-design-three #clientStats span.complete{color:#dfff9a!important;background:rgba(130,174,40,.12)!important}
#clientView.client-design-three #clientStats .client-summary-action{
  order:6;width:100%;min-height:52px;margin-top:8px;border:0!important;border-radius:16px!important;
  background:linear-gradient(90deg,#b8f425,#d7ff58)!important;color:#10120f!important;
  box-shadow:0 12px 28px rgba(174,231,45,.17);font-size:.9rem;font-weight:900;
}
#clientView.client-design-three #clientStats .client-summary-action:hover:not(:disabled){filter:brightness(.98);transform:translateY(-1px)}

#clientView.client-design-three #clientGallery.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:0}
#clientView.client-design-three #clientGallery .photo{
  border-color:#e2dcd1;border-radius:17px;background:#fffdf9;
  box-shadow:0 8px 24px rgba(28,26,21,.035);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
#clientView.client-design-three #clientGallery .photo:hover{border-color:#c8c0b3;box-shadow:0 13px 30px rgba(28,26,21,.075);transform:translateY(-1px)}
#clientView.client-design-three #clientGallery .photo:has(.stars button[data-rating="5"].active){border-color:#a9d54a;box-shadow:0 0 0 2px rgba(200,255,61,.20),0 10px 28px rgba(28,26,21,.06)}
#clientView.client-design-three #clientGallery .photo:has(.stars button[data-rating="4"].active){border-color:#dfb44a;box-shadow:0 0 0 2px rgba(233,169,26,.12),0 10px 28px rgba(28,26,21,.06)}
#clientView.client-design-three #clientGallery .photo:has(.stars button[data-rating="3"].active){border-color:#df8989;box-shadow:0 0 0 2px rgba(231,91,91,.10),0 10px 28px rgba(28,26,21,.06)}
#clientView.client-design-three #clientGallery .photo-media{aspect-ratio:4 / 3;background:#e9e5dc}
#clientView.client-design-three #clientGallery .photo-body{padding:10px}
#clientView.client-design-three #clientGallery .photo-name{font-size:.72rem;font-weight:720;color:#4e4a43}
#clientView.client-design-three #clientGallery .stars{gap:5px;margin-top:8px}
#clientView.client-design-three #clientGallery .stars button{min-height:36px;padding:6px 5px;border-radius:9px;background:#fff;color:#6b665e;font-size:.74rem}
#clientView.client-design-three #clientGallery .stars button[data-rating="5"]{color:#5c7e12;border-color:#dce9bc}
#clientView.client-design-three #clientGallery .stars button[data-rating="4"]{color:#a46d00;border-color:#f0dfb8}
#clientView.client-design-three #clientGallery .stars button[data-rating="3"]{color:#b13d3d;border-color:#efcaca}
#clientView.client-design-three #clientGallery .stars button[data-rating="5"].active{background:#cfff55!important;border-color:#a9d52c!important;color:#223000!important}
#clientView.client-design-three #clientGallery .stars button[data-rating="4"].active{background:#ffe7a8!important;border-color:#e6b84b!important;color:#684300!important}
#clientView.client-design-three #clientGallery .stars button[data-rating="3"].active{background:#ffd0d0!important;border-color:#e48080!important;color:#762828!important}
#clientView.client-design-three #clientGallery .photo-lock{right:8px;top:8px;padding:4px 7px;background:rgba(14,16,12,.72);font-size:.58rem;letter-spacing:.03em}
#clientView.client-design-three .success-banner{border-color:#b9d97a;background:#f3fbdf;color:#40591c;box-shadow:0 8px 22px rgba(30,42,13,.04)}

/* Final delivery shares the same premium visual language without changing delivery logic. */
#deliveryView.client-design-three #deliveryContent:not(.hidden){
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,350px);gap:18px 22px;align-items:start;
}
#deliveryView.client-design-three .client-header.delivery-header{
  grid-column:1 / -1;grid-row:1;
  position:relative;isolation:isolate;overflow:hidden;min-height:360px;margin:0;padding:36px 34px;
  display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;
  border:1px solid rgba(255,255,255,.08);border-radius:28px;color:#fff;
  background-image:
    linear-gradient(90deg,rgba(10,12,9,.94) 0%,rgba(10,12,9,.78) 42%,rgba(10,12,9,.18) 100%),
    var(--gv-client-hero-image,linear-gradient(145deg,#24271f,#11130f));
  background-position:center;background-size:cover;box-shadow:0 24px 58px rgba(18,20,15,.17);
}
#deliveryView.client-design-three .client-header.delivery-header::after{
  content:"";position:absolute;inset:auto auto 0 0;width:38%;height:4px;z-index:-1;
  background:linear-gradient(90deg,var(--gv-d3-lime),transparent);
}
#deliveryView.client-design-three .delivery-header>div{max-width:620px;position:relative;z-index:1}
#deliveryView.client-design-three .delivery-header .eyebrow{color:var(--gv-d3-lime)}
#deliveryView.client-design-three .delivery-header h1{
  color:#fff!important;font-family:"Iowan Old Style","Baskerville",Georgia,serif;
  font-size:clamp(2.8rem,5vw,5.2rem)!important;line-height:.94!important;letter-spacing:-.05em!important;margin:14px 0!important;
}
#deliveryView.client-design-three .delivery-header p{max-width:46ch;color:rgba(255,255,255,.82)!important;font-size:1rem!important;line-height:1.55!important}
#deliveryView.client-design-three #deliverySummaryPanel{grid-column:1;grid-row:2 / span 3;margin:0}
#deliveryView.client-design-three #deliveryExpiryNotice{grid-column:2;grid-row:2;margin:0}
#deliveryView.client-design-three #deliveryStatus{grid-column:2;grid-row:3;margin:0}
#deliveryView.client-design-three .delivery-client-actions{grid-column:2;grid-row:4;margin:0}
#deliveryView.client-design-three #deliveryGalleryWrap{grid-column:1 / -1;grid-row:5}
#deliveryView.client-design-three #deliveryReview{grid-column:1 / -1;grid-row:6}

#deliveryView.client-design-three .delivery-summary-panel{
  padding:22px;border-color:var(--gv-d3-line);border-radius:24px;background:rgba(255,253,248,.94);
  box-shadow:0 14px 34px rgba(26,25,21,.045);gap:14px;
}
#deliveryView.client-design-three .delivery-summary-total{
  min-height:116px;padding:18px;border-radius:18px;background:linear-gradient(145deg,#161914,#0f110e);color:#fff;
}
#deliveryView.client-design-three .delivery-summary-total strong{color:var(--gv-d3-lime)}
#deliveryView.client-design-three .delivery-summary-groups{gap:8px}
#deliveryView.client-design-three .delivery-summary-groups span{border:1px solid #e7e0d5;background:#fff;border-radius:13px;padding:10px 12px}
#deliveryView.client-design-three .delivery-summary-actions{gap:8px}
#deliveryView.client-design-three .delivery-summary-actions .primary{
  background:linear-gradient(90deg,#b8f425,#d7ff58)!important;border:0!important;color:#10120f!important;min-height:48px;
}
#deliveryView.client-design-three .delivery-summary-actions .secondary{background:#fffdf8;border-color:#ddd5c9}
#deliveryView.client-design-three .mobile-save-help{margin:2px 0 0;color:#6d675e;line-height:1.5}
#deliveryView.client-design-three .delivery-feedback-nudge{border:1px solid #dce7bd;background:#f9ffeb;border-radius:15px;padding:12px 14px}

#deliveryView.client-design-three .delivery-expiry-notice,
#deliveryView.client-design-three #deliveryStatus{
  padding:16px;border-radius:18px;box-shadow:0 9px 24px rgba(26,25,21,.035);
}
#deliveryView.client-design-three .delivery-expiry-notice{border-color:#dce4c7;background:#fbfff3}
#deliveryView.client-design-three #deliveryStatus.success-banner{border-color:#d8e7ae;background:#f7fce9;color:#40591c}
#deliveryView.client-design-three .delivery-client-actions{
  display:grid!important;grid-template-columns:1fr;gap:9px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:22px;
  background:linear-gradient(150deg,#191c17,#10120f);box-shadow:0 18px 42px rgba(18,20,15,.14);
}
#deliveryView.client-design-three .delivery-client-actions button{width:100%;min-height:46px}
#deliveryView.client-design-three .delivery-client-actions .primary{background:var(--gv-d3-lime);border-color:var(--gv-d3-lime);color:#111}
#deliveryView.client-design-three .delivery-client-actions .secondary{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff}

#deliveryView.client-design-three .delivery-gallery-wrap{
  margin-top:4px;padding:20px;border:1px solid var(--gv-d3-line);border-radius:24px;background:rgba(255,253,248,.94);
  box-shadow:0 14px 34px rgba(26,25,21,.04);
}
#deliveryView.client-design-three .delivery-preview-head{margin-bottom:14px}
#deliveryView.client-design-three .delivery-preview-head h2{font-family:"Iowan Old Style","Baskerville",Georgia,serif;font-size:2rem;letter-spacing:-.035em}
#deliveryView.client-design-three .delivery-file-section{margin-top:22px}
#deliveryView.client-design-three .delivery-section-heading{border-bottom:1px solid #e4ddd2;padding-bottom:10px;margin-bottom:12px}
#deliveryView.client-design-three .delivery-subgallery.gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
#deliveryView.client-design-three .delivery-photo{border-color:#e1dbd0;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(28,26,21,.035)}
#deliveryView.client-design-three .delivery-photo .photo-media{aspect-ratio:4 / 3;background:#e9e5dc}
#deliveryView.client-design-three .delivery-photo .photo-body{padding:10px}
#deliveryView.client-design-three .delivery-file-meta{align-items:flex-start;flex-direction:column;font-size:.72rem;line-height:1.4}
#deliveryView.client-design-three .delivery-file-meta .download-link{width:100%;border-color:#d8d0c4;color:#292923;background:#fbfaf6}
#deliveryView.client-design-three .delivery-review{
  padding:22px;border-color:var(--gv-d3-line);border-radius:24px;background:#fffdf8;box-shadow:0 14px 34px rgba(26,25,21,.04);
}
#deliveryView.client-design-three .delivery-review h2{font-family:"Iowan Old Style","Baskerville",Georgia,serif;font-size:2rem}

/* Tablet: retain the editorial left story while removing the third column. */
@media(max-width:1180px){
  #clientView.client-design-three #clientContent:not(.hidden){grid-template-columns:minmax(245px,310px) minmax(0,1fr);gap:16px 18px}
  #clientView.client-design-three .client-header{grid-column:1;grid-row:1 / span 3;min-height:460px;padding:26px 22px}
  #clientView.client-design-three #clientReceiptConfirm{grid-column:2;grid-row:1}
  #clientView.client-design-three #clientRules{grid-column:2;grid-row:2}
  #clientView.client-design-three #clientSuccess{grid-column:2;grid-row:3}
  #clientView.client-design-three #clientGallery{grid-column:2;grid-row:4 / span 2}
  #clientView.client-design-three #clientStats{grid-column:1;grid-row:4}
  #clientView.client-design-three #clientPhotographerNote{grid-column:1;grid-row:5}
  #clientView.client-design-three #clientStats.sticky-stats{position:static}
  #clientView.client-design-three #clientGallery.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  #deliveryView.client-design-three .delivery-subgallery.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Phones and narrow split-screen: clear one-column flow, no trapped sticky areas. */
@media(max-width:780px){
  .client-design-three .client-shell{padding:10px 12px 28px!important}
  .client-design-three .client-brand-row{margin-bottom:12px!important;align-items:center!important}
  .client-design-three .client-brand-row .brand img{height:31px!important}
  .client-design-three .client-brand-actions{max-width:70%!important;gap:5px!important}
  .client-design-three .privacy-pill{font-size:.62rem!important;padding:.4rem .52rem!important}
  #clientView.client-design-three #clientContent:not(.hidden){display:flex;flex-direction:column;gap:12px}
  #clientView.client-design-three .client-header{order:1;width:100%;min-height:360px;padding:24px 20px;border-radius:22px}
  #clientView.client-design-three .client-header h1{font-size:clamp(2.35rem,12vw,3.45rem)!important}
  #clientView.client-design-three .client-header p{font-size:.9rem!important}
  #clientView.client-design-three #clientReceiptConfirm{order:2;width:100%}
  #clientView.client-design-three #clientPhotographerNote{order:3;width:100%;padding:18px;border-radius:18px}
  #clientView.client-design-three #clientRules{order:4;width:100%;grid-template-columns:1fr!important;gap:7px}
  #clientView.client-design-three .rule-card{min-height:72px}
  #clientView.client-design-three #clientStats{order:5;width:100%;position:static!important;border-radius:20px!important;padding:16px!important}
  #clientView.client-design-three #clientStats.sticky-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  #clientView.client-design-three #clientStats.sticky-stats::before{grid-column:1/-1}
  #clientView.client-design-three #clientStats span[data-stat]{min-height:46px;padding:10px;font-size:.72rem}
  #clientView.client-design-three #clientStats span[data-stat="status"],#clientView.client-design-three #clientStats .client-summary-action{grid-column:1/-1}
  #clientView.client-design-three #clientSuccess{order:6;width:100%}
  #clientView.client-design-three #clientGallery{order:7;width:100%}
  #clientView.client-design-three #clientGallery.gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
  #clientView.client-design-three #clientGallery .photo-body{padding:8px}
  #clientView.client-design-three #clientGallery .stars button{min-height:34px;font-size:.7rem}

  #deliveryView.client-design-three #deliveryContent:not(.hidden){display:flex;flex-direction:column;gap:12px}
  #deliveryView.client-design-three .client-header.delivery-header{order:1;width:100%;min-height:320px;padding:24px 20px;border-radius:22px}
  #deliveryView.client-design-three .delivery-header h1{font-size:clamp(2.6rem,13vw,4rem)!important}
  #deliveryView.client-design-three #deliveryExpiryNotice{order:2;width:100%}
  #deliveryView.client-design-three #deliveryStatus{order:3;width:100%}
  #deliveryView.client-design-three #deliverySummaryPanel{order:4;width:100%}
  #deliveryView.client-design-three .delivery-client-actions{order:5;width:100%}
  #deliveryView.client-design-three #deliveryGalleryWrap{order:6;width:100%;padding:14px;border-radius:20px}
  #deliveryView.client-design-three #deliveryReview{order:7;width:100%;padding:17px;border-radius:20px}
  #deliveryView.client-design-three .delivery-subgallery.gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
}

@media(max-width:520px){
  #clientView.client-design-three #clientGallery.gallery,#deliveryView.client-design-three .delivery-subgallery.gallery{grid-template-columns:1fr!important}
  #clientView.client-design-three .client-receipt-confirm{align-items:stretch;flex-direction:column}
  #clientView.client-design-three .client-receipt-confirm button{width:100%}
  #clientView.client-design-three #clientStats.sticky-stats{grid-template-columns:1fr}
  #clientView.client-design-three #clientStats.sticky-stats::before,
  #clientView.client-design-three #clientStats span[data-stat="status"],
  #clientView.client-design-three #clientStats .client-summary-action{grid-column:1}
}

@media(prefers-reduced-motion:reduce){
  #clientView.client-design-three #clientGallery .photo{transition:none}
  #clientView.client-design-three #clientGallery .photo:hover{transform:none}
}


/* GaliVue V3.8.59.1 — Photographer Client Portal */
.client-portal-view{min-height:100vh;background:radial-gradient(circle at 78% 12%,rgba(200,255,61,.16),transparent 32%),#f4f1e9;color:#151515}
.client-portal-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:28px 0 64px}
.client-portal-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.client-portal-topbar .brand img{height:36px;width:auto}
.client-portal-landing-card{position:relative;overflow:hidden;border:1px solid rgba(20,20,20,.09);border-radius:34px;background:#fff;box-shadow:0 32px 80px rgba(20,20,16,.12)}
.client-portal-landing-hero{height:min(42vw,420px);min-height:240px;background:linear-gradient(140deg,#1f231b,#11130f);background-size:cover;background-position:center;position:relative}
.client-portal-landing-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(9,10,8,.54))}
.client-portal-landing-body{position:relative;padding:clamp(28px,5vw,64px);max-width:760px}.client-portal-landing-logo{width:104px;height:104px;border-radius:24px;background:#fff;border:1px solid rgba(20,20,20,.08);display:grid;place-items:center;padding:14px;margin-top:-92px;position:relative;z-index:2;box-shadow:0 18px 44px rgba(0,0,0,.14)}.client-portal-landing-logo.hidden{display:none}.client-portal-landing-logo img{max-width:100%;max-height:100%;object-fit:contain}
.client-portal-kicker{font-size:.73rem;font-weight:900;letter-spacing:.14em;color:#66713f;margin:18px 0 8px}.client-portal-landing-body h1{font-size:clamp(2.3rem,6vw,4.9rem);line-height:.98;letter-spacing:-.055em;margin:0}.client-portal-team{font-size:1rem;font-weight:800;color:#60615b;margin:.85rem 0 0}.client-portal-welcome{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65;color:#575951;margin:1.4rem 0 1.8rem}.client-portal-signature{display:flex;align-items:center;gap:16px;min-height:42px;margin:4px 0 24px}.client-portal-signature.hidden{display:none}.client-portal-signature img{max-height:58px;max-width:210px;object-fit:contain}.client-portal-signature span{font-family:Georgia,serif;font-size:1.25rem;font-style:italic}
.client-portal-private-note{border:1px solid rgba(109,126,52,.2);background:#f5f8e7;border-radius:20px;padding:18px 20px;display:grid;gap:5px}.client-portal-private-note strong{font-size:.96rem}.client-portal-private-note span{color:#676a60;line-height:1.5}.client-portal-powered{display:flex;align-items:center;gap:10px;margin-top:28px;color:#85877e;font-size:.75rem;font-weight:700}.client-portal-powered img{height:22px;width:auto;opacity:.82}
.client-portal-identity{display:flex;align-items:center;gap:18px;padding:14px 18px;border:1px solid rgba(200,255,61,.2);border-radius:22px;background:rgba(16,18,14,.74);backdrop-filter:blur(18px);color:#fff;margin:0 0 14px}.client-portal-identity.hidden{display:none}.client-portal-identity-logo{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:#fff;padding:8px;flex:none}.client-portal-identity-logo img{max-width:100%;max-height:100%;object-fit:contain}.client-portal-identity-copy{display:grid;gap:2px;min-width:0}.client-portal-identity-copy small{font-size:.66rem;letter-spacing:.13em;font-weight:900;color:#c8ff3d}.client-portal-identity-copy strong{font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-portal-identity-copy span{font-size:.8rem;color:rgba(255,255,255,.68)}.client-portal-identity-signature{margin-left:auto;max-width:170px;max-height:48px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}.client-portal-identity-signature-text{margin-left:auto;font-family:Georgia,serif;font-style:italic;color:rgba(255,255,255,.82)}
.client-portal-settings-panel{width:min(1050px,96vw)!important;max-height:94vh!important}.client-portal-qa-note{display:flex;align-items:flex-start;gap:14px;border:1px solid #b5c56b;background:#f5f8df;border-radius:16px;padding:14px 16px;margin-bottom:16px}.client-portal-qa-note.hidden{display:none}.client-portal-qa-note strong{font-size:.72rem;letter-spacing:.08em}.client-portal-qa-note span{color:#686d53;font-size:.86rem;line-height:1.45}
.client-portal-settings-preview{position:relative;overflow:hidden;min-height:300px;border-radius:26px;background:#11130f;color:#fff;margin-bottom:22px}.client-portal-preview-glow{position:absolute;width:420px;height:420px;right:-100px;top:-170px;background:radial-gradient(circle,rgba(200,255,61,.26),transparent 65%);pointer-events:none}.client-portal-preview-hero{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.38}.client-portal-preview-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,12,10,.92) 0%,rgba(11,12,10,.68) 48%,rgba(11,12,10,.28) 100%)}.client-portal-preview-brand{position:relative;z-index:2;padding:clamp(24px,4vw,44px);width:min(650px,90%)}.client-portal-preview-logo{width:76px;height:76px;background:#fff;border-radius:18px;padding:10px;display:grid;place-items:center;margin-bottom:18px}.client-portal-preview-logo.hidden{display:none}.client-portal-preview-logo img{max-width:100%;max-height:100%;object-fit:contain}.client-portal-preview-brand small{color:#c8ff3d;font-weight:900;letter-spacing:.14em}.client-portal-preview-brand h3{font-size:clamp(2rem,5vw,3.3rem);letter-spacing:-.045em;margin:.35rem 0 .2rem}.client-portal-preview-brand>span{font-weight:700;color:rgba(255,255,255,.7)}.client-portal-preview-brand p{color:rgba(255,255,255,.78);line-height:1.55;max-width:580px}.client-portal-preview-signature{font-family:Georgia,serif;font-size:1.2rem;font-style:italic;color:#fff;margin-top:14px}.client-portal-preview-signature img{max-width:190px;max-height:52px;object-fit:contain;filter:brightness(0) invert(1)}
.client-portal-address-section{margin-bottom:18px}.client-portal-address-builder{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;border:1px solid #dcd8ce;border-radius:16px;background:#faf9f5;overflow:hidden}.client-portal-address-builder span{padding:0 12px;color:#71736a;font-size:.84rem;font-weight:800}.client-portal-address-builder input{border:0!important;border-left:1px solid #e5e1d7!important;border-right:1px solid #e5e1d7!important;border-radius:0!important;background:#fff!important;font-weight:800;padding:14px 12px!important;min-width:0}.client-portal-handle-status{font-size:.78rem;color:#777970;margin-top:7px}.client-portal-handle-status.is-good{color:#4c6a15;font-weight:800}.client-portal-handle-status.is-bad{color:#9b362e;font-weight:800}
.client-portal-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.client-portal-media-card{border:1px solid #e2ded4;border-radius:18px;padding:12px;background:#fff;display:grid;gap:10px;align-content:start}.client-portal-media-preview{height:110px;border-radius:13px;background:#f0eee7;display:grid;place-items:center;overflow:hidden;color:#878980;font-size:.68rem;font-weight:900;letter-spacing:.12em}.client-portal-media-preview.signature{background:#191b16;color:#c8ff3d}.client-portal-media-preview.hero{background:linear-gradient(145deg,#282b22,#11130f);color:#c8ff3d}.client-portal-media-preview img{width:100%;height:100%;object-fit:contain}.client-portal-media-preview.hero img{object-fit:cover}.client-portal-media-card>div:nth-child(2){display:grid;gap:2px}.client-portal-media-card small{color:#7c7e76;font-size:.75rem}.client-portal-upload-button{cursor:pointer;text-align:center}.client-portal-active-toggle{display:flex!important;align-items:flex-start!important;gap:12px;border:1px solid #dfe5c5;background:#f7faeb;border-radius:16px;padding:14px 16px;margin:16px 0}.client-portal-active-toggle input{margin-top:4px}.client-portal-active-toggle span{display:grid;gap:3px}.client-portal-active-toggle small{color:#6f735f}.client-portal-actions{display:flex;flex-wrap:wrap;gap:9px}.client-portal-trust{display:grid;gap:4px;margin-top:18px;border-top:1px solid #e5e1d8;padding-top:16px;color:#73756d;font-size:.8rem;line-height:1.5}.client-portal-trust strong{color:#1d1e1b}
@media(max-width:760px){.client-portal-shell{width:min(100% - 20px,1120px);padding-top:12px}.client-portal-topbar{margin-bottom:10px}.client-portal-landing-card{border-radius:24px}.client-portal-landing-hero{height:240px;min-height:220px}.client-portal-landing-body{padding:24px 20px 32px}.client-portal-landing-logo{width:82px;height:82px;margin-top:-66px}.client-portal-media-grid{grid-template-columns:1fr}.client-portal-address-builder{grid-template-columns:auto minmax(90px,1fr) auto}.client-portal-address-builder span{padding:0 7px;font-size:.7rem}.client-portal-identity{gap:11px;padding:10px 12px}.client-portal-identity-logo{width:46px;height:46px;border-radius:12px}.client-portal-identity-copy strong{font-size:.98rem}.client-portal-identity-signature,.client-portal-identity-signature-text{display:none}.client-portal-actions>*{width:100%}}


/* GaliVue V3.8.59.2 — Client portal quick access beside Dashboard */
#dashboardPanel .workspace-title-nav{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  min-width:0;
}
#dashboardPanel .workspace-client-portal-shortcut{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.48rem;
  min-height:34px;
  margin-left:1.15rem;
  padding:.48rem .78rem;
  border:1px solid #d9d5cb;
  border-radius:999px;
  background:#fbfaf6;
  color:#25251f;
  font:inherit;
  font-size:.72rem;
  font-weight:760;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(22,22,17,.035);
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
#dashboardPanel .workspace-client-portal-dot{
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:#baff25;
  box-shadow:0 0 0 3px rgba(186,255,37,.17);
}
#dashboardPanel .workspace-client-portal-shortcut:hover{
  background:#f3ffd9;
  border-color:#b7d66e;
  box-shadow:0 7px 18px rgba(94,122,28,.08);
  transform:translateY(-1px);
}
#dashboardPanel .workspace-client-portal-shortcut:focus-visible{
  outline:3px solid rgba(186,255,37,.55);
  outline-offset:3px;
}
@media(max-width:720px){
  #dashboardPanel .workspace-client-portal-shortcut{display:none!important}
}
@media(min-width:721px) and (max-width:980px){
  #dashboardPanel .workspace-client-portal-shortcut{
    margin-left:.85rem;
    padding:.44rem .68rem;
    font-size:.68rem;
  }
}

/* GaliVue V3.8.59.3 — Client portal header breathing room + secondary title styling */
#dashboardPanel .workspace-photographer-ref{
  margin-top:0!important;
  margin-left:.58rem!important;
  vertical-align:middle;
}
#dashboardPanel .workspace-title-nav{
  margin-top:.46rem!important;
  gap:0!important;
}
#dashboardPanel .workspace-client-portal-shortcut{
  min-height:auto;
  margin-left:1.45rem!important;
  padding:.22rem .18rem .24rem 1.2rem!important;
  border:0!important;
  border-left:1px solid #d8d4ca!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#373830!important;
  font-size:1.02rem!important;
  font-weight:650!important;
  letter-spacing:-.025em;
  line-height:1.05;
}
#dashboardPanel .workspace-client-portal-dot{
  width:8px;
  height:8px;
  box-shadow:0 0 0 4px rgba(186,255,37,.14);
}
#dashboardPanel .workspace-client-portal-shortcut:hover{
  color:#4f6d00!important;
  background:transparent!important;
  border-left-color:#b5d459!important;
  box-shadow:none!important;
  transform:none!important;
}
#dashboardPanel .workspace-client-portal-shortcut:focus-visible{
  outline:3px solid rgba(186,255,37,.48);
  outline-offset:5px;
  border-radius:7px!important;
}
@media(min-width:721px) and (max-width:980px){
  #dashboardPanel .workspace-title-nav{margin-top:.38rem!important}
  #dashboardPanel .workspace-client-portal-shortcut{
    margin-left:1rem!important;
    padding-left:.9rem!important;
    font-size:.88rem!important;
  }
  #dashboardPanel .workspace-photographer-ref{margin-left:.42rem!important}
}
@media(max-width:767px){
  #dashboardPanel .workspace-client-portal-shortcut{display:none!important}
  #dashboardPanel .workspace-title-nav{display:block!important;margin-top:0!important}
  #dashboardPanel .workspace-photographer-ref{margin-left:0!important}
}


/* ================================================================
   GaliVue V3.8.59.6 — Design 2 full-screen client selection + matching final delivery
   Design 2 remains the visual source of truth. Responsive rules only move,
   stack or resize its panels; the GaliVue lime/black/cream theme is fixed.
   ================================================================ */
#clientView.client-design-two{--d2-lime:#baff25;--d2-cream:#f8f6ef;--d2-ink:#151611;--d2-line:#e3dfd4;--d2-green:#4b7500;--d2-amber:#f1ad15;--d2-red:#e65850;background:var(--d2-cream);min-height:100vh;color:var(--d2-ink);overflow-x:hidden}
#clientView.client-design-two .client-d2-shell{width:100%;max-width:none;margin:0;min-height:100vh;background:#fbfaf6}
#clientView .client-d2-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 clamp(18px,3vw,48px);border-bottom:1px solid var(--d2-line);background:rgba(251,250,246,.97);position:relative;z-index:5}
#clientView .client-d2-brand img{height:42px;width:auto;display:block}
#clientView .client-d2-top-actions{display:flex;align-items:center;gap:12px}
#clientView .client-d2-link-button{border:0;background:transparent;display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:750;color:#2e302a;cursor:pointer;padding:8px;border-radius:10px}
#clientView .client-d2-link-button:hover{background:#f0eee7}
#clientView .client-d2-link-button:first-letter{font-weight:900}
#clientView .client-d2-loading{margin:32px}
#clientView .client-d2-layout{display:grid;grid-template-columns:clamp(300px,24vw,410px) minmax(0,1fr) clamp(270px,19vw,330px);align-items:start;min-height:calc(100vh - 76px);border-bottom:1px solid var(--d2-line)}
#clientView .client-d2-story{min-width:0;background:#f0ede5;border-right:1px solid var(--d2-line);align-self:stretch}
#clientView .client-d2-story-hero{position:relative;min-height:610px;background:#161713 center/cover no-repeat;background-image:var(--gv-client-hero-image,linear-gradient(145deg,#1c2117,#080907));overflow:hidden}
#clientView .client-d2-story-hero.has-client-hero{background-image:var(--gv-client-hero-image)}
#clientView .client-d2-story-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,8,6,.18) 0%,rgba(7,8,6,.37) 43%,rgba(7,8,6,.72) 100%)}
#clientView .client-d2-story-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:56px 34px 34px;color:#fff;z-index:2}
#clientView .client-d2-kicker{display:flex;align-items:center;gap:10px;color:var(--d2-lime);font-size:.72rem;font-weight:900;letter-spacing:.12em;margin-bottom:20px}
#clientView .client-d2-kicker:before{content:"";width:26px;height:2px;background:var(--d2-lime)}
#clientView .client-d2-story-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.35rem,3.5vw,3.6rem);font-weight:500;letter-spacing:-.04em;line-height:1.02;max-width:310px;margin:0 0 22px}
#clientView .client-d2-story-copy>p{font-size:.91rem;line-height:1.65;color:rgba(255,255,255,.88);max-width:295px;margin:0}
#clientView .client-d2-story-logo{margin-top:auto;max-width:220px;max-height:104px;display:flex;align-items:flex-end;justify-content:flex-start;padding-top:32px}
#clientView .client-d2-story-logo.hidden{display:none}
#clientView .client-d2-story-logo img{max-width:100%;max-height:100px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 4px 18px rgba(0,0,0,.25))}
#clientView .client-d2-note{display:grid!important;gap:11px;margin:-42px 24px 0;position:relative;z-index:3;border:1px solid #e5e0d4;border-radius:20px;background:rgba(255,254,250,.97);box-shadow:0 12px 34px rgba(31,30,23,.08);padding:24px 24px 22px;color:#303128}
#clientView .client-d2-note .client-photographer-note-label{font-family:Georgia,'Times New Roman',serif;font-size:1.12rem;text-transform:none;letter-spacing:0;color:#20211c}
#clientView .client-d2-note .client-photographer-note-label:before{content:'“';color:#72a900;font-size:1.8rem;line-height:0;margin-right:9px;vertical-align:-.2em}
#clientView .client-d2-note .client-photographer-note-text{font-size:.82rem;line-height:1.62;color:#66685f}
#clientView .client-d2-note em{font-style:normal;font-weight:750;color:#4f7800;font-size:.83rem}
#clientView .client-d2-story-meta{padding:24px 26px 34px;display:grid;gap:14px;color:#5f625a}
#clientView .client-d2-story-meta>div{display:flex;align-items:center;gap:11px;border-top:1px solid #dfdbd0;padding-top:13px}
#clientView .client-d2-story-meta p{margin:0;font-size:.78rem}.client-d2-story-meta button{justify-self:start}
#clientView .client-d2-workspace{padding:24px clamp(22px,2.4vw,36px) 40px;min-width:0;background:#fbfaf6}
#clientView .client-d2-project-strip{display:grid;grid-template-columns:minmax(180px,1.25fr) repeat(3,minmax(130px,1fr));gap:0;background:#fff;border:1px solid var(--d2-line);border-radius:14px;box-shadow:0 7px 24px rgba(26,25,20,.035);overflow:hidden;margin-bottom:22px}
#clientView .client-d2-project-strip>*{min-width:0;padding:16px 18px;border-right:1px solid #eeeae1}#clientView .client-d2-project-strip>*:last-child{border-right:0}
#clientView .client-d2-photographer{margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#23241f!important;padding:14px 18px!important;backdrop-filter:none!important;box-shadow:none!important}
#clientView .client-d2-photographer .client-portal-identity-logo{width:48px;height:48px;border:1px solid #ece8dd;background:#f6f4ee}
#clientView .client-d2-photographer .client-portal-identity-copy small{color:#85877e;font-size:.58rem}
#clientView .client-d2-photographer .client-portal-identity-copy strong{font-family:Georgia,'Times New Roman',serif;font-size:1.06rem;color:#1d1e1a}
#clientView .client-d2-photographer .client-portal-identity-copy span{color:#61772f;font-size:.72rem}
#clientView .client-d2-project-meta{display:grid;align-content:center;gap:3px}#clientView .client-d2-project-meta small{font-size:.56rem;letter-spacing:.08em;color:#898b83;font-weight:800}#clientView .client-d2-project-meta strong{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#clientView .client-d2-project-meta span{font-size:.68rem;color:#777a72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#clientView .client-d2-receipt{margin:0 0 18px;border-radius:14px}
#clientView .client-d2-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--d2-line);border-radius:14px;background:#f8f5ed;overflow:hidden;margin-bottom:22px}
#clientView .client-d2-limit-card{display:flex;align-items:center;gap:13px;padding:16px 17px;border-right:1px solid #e7e1d6;min-width:0}.client-d2-limit-card:last-child{border-right:0}.client-d2-limit-card.disabled{opacity:.45}
#clientView .client-d2-limit-star,.client-d2-limit-list{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:none;background:#f0f7d6;border:1px solid #bfd878;color:#5f8d00;font-size:1rem}.client-d2-limit-card.rating-4 .client-d2-limit-star{background:#fff5df;border-color:#f1ce7d;color:#e79b00}.client-d2-limit-card.rating-3 .client-d2-limit-star{background:#fff0ef;border-color:#eeb4af;color:#dd4f48}.client-d2-limit-card.total .client-d2-limit-list{background:#20211d;color:#fff;border-color:#20211d}
#clientView .client-d2-limit-card>div{display:grid;gap:1px;min-width:0}.client-d2-limit-card strong{font-size:.72rem}.client-d2-limit-card b{font-size:1rem}.client-d2-limit-card small{font-size:.62rem;color:#7b7d74}
#clientView .client-d2-gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
#clientView .client-d2-filters{display:flex;flex-wrap:wrap;border:1px solid #ddd8cd;border-radius:10px;overflow:hidden;background:#fff}.client-d2-filters button{appearance:none;border:0;border-right:1px solid #e6e1d8;background:#fff;padding:9px 13px;font:inherit;font-size:.72rem;font-weight:720;color:#34352f;cursor:pointer}.client-d2-filters button:last-child{border-right:0}.client-d2-filters button.active{background:#171814;color:#fff}.client-d2-filters button span{font-size:.62rem;opacity:.72}
#clientView .client-d2-sort-view{display:flex;align-items:center;gap:12px}.client-d2-sort-view label{display:flex;align-items:center;gap:7px;font-size:.68rem;color:#61645b}.client-d2-sort-view select{border:1px solid #ddd8cd;border-radius:9px;background:#fff;padding:8px 26px 8px 9px;font-size:.7rem}.client-d2-view-toggle{display:flex;border:1px solid #ddd8cd;border-radius:9px;overflow:hidden;background:#fff}.client-d2-view-toggle button{border:0;background:#fff;padding:8px 10px;cursor:pointer}.client-d2-view-toggle button.active{background:#171814;color:#fff}
#clientView .client-d2-gallery{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important}.client-d2-gallery .photo{border:1px solid #e2ddd2!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 4px 14px rgba(23,22,18,.025)!important}.client-d2-gallery .photo-media{aspect-ratio:1.13/1!important;min-height:0!important;border-radius:0!important}.client-d2-gallery .photo-body{padding:8px 9px 9px!important;display:grid;gap:7px}.client-d2-gallery .photo-name{font-size:.66rem;font-weight:650;color:#56584f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-d2-stars{display:grid!important;grid-template-columns:repeat(3,1fr);border:1px solid #e8e2d8;border-radius:7px;overflow:hidden;gap:0!important}.client-d2-stars button{border:0!important;border-right:1px solid #e8e2d8!important;background:#fff!important;border-radius:0!important;min-height:30px!important;padding:4px!important;font-size:0!important}.client-d2-stars button:last-child{border-right:0!important}.client-d2-stars button:after{content:'★';font-size:.95rem}.client-d2-stars button[data-rating="5"]{color:#5d8e00!important}.client-d2-stars button[data-rating="4"]{color:#eda200!important}.client-d2-stars button[data-rating="3"]{color:#e0534c!important}.client-d2-stars button.active[data-rating="5"]{background:#eff7d8!important}.client-d2-stars button.active[data-rating="4"]{background:#fff5df!important}.client-d2-stars button.active[data-rating="3"]{background:#fff0ef!important}
#clientView .client-d2-list-view{grid-template-columns:1fr!important}.client-d2-list-view .client-d2-photo{display:grid!important;grid-template-columns:160px 1fr}.client-d2-list-view .photo-media{aspect-ratio:4/3!important}.client-d2-list-view .photo-body{align-content:center;padding:14px!important}.client-d2-list-view .client-d2-stars{max-width:240px}
#clientView .client-d2-summary-column{padding:24px 22px 34px;background:#fbfaf6;min-width:0}
#clientView .client-d2-summary{display:grid!important;gap:0!important;position:sticky;top:18px;padding:25px 22px!important;border-radius:18px!important;background:linear-gradient(155deg,#1a1c17,#0e100d)!important;color:#fff!important;box-shadow:0 18px 38px rgba(18,19,14,.14)!important;border:1px solid #252820!important}
#clientView .client-d2-summary-head h2{font-family:Georgia,'Times New Roman',serif;font-size:1.16rem;font-weight:500;margin:0}.client-d2-summary-head>span{display:block;width:24px;height:2px;background:var(--d2-lime);margin:16px 0 8px}
#clientView .client-d2-summary-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}.client-d2-summary-star{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(130,181,25,.14);border:1px solid rgba(130,181,25,.28);color:#8ac100}.client-d2-summary-row.rating-4 .client-d2-summary-star{background:rgba(241,173,21,.11);border-color:rgba(241,173,21,.25);color:#f1ad15}.client-d2-summary-row.rating-3 .client-d2-summary-star{background:rgba(230,88,80,.11);border-color:rgba(230,88,80,.25);color:#e65850}.client-d2-summary-row>div{display:grid;gap:2px}.client-d2-summary-row strong{font-size:.73rem}.client-d2-summary-row small{font-size:.61rem;color:rgba(255,255,255,.57)}.client-d2-summary-row>b{font-size:1.06rem}.client-d2-summary-row>b span{font-size:.66rem;color:rgba(255,255,255,.55)}
#clientView .client-d2-summary-total{display:grid;gap:2px;padding:18px 0 12px}.client-d2-summary-total>span{font-size:.68rem;color:rgba(255,255,255,.65)}.client-d2-summary-total strong{font-size:1.8rem}.client-d2-summary-total strong small{font-size:.86rem;color:rgba(255,255,255,.5)}.client-d2-summary-total em{font-style:normal;font-size:.62rem;color:rgba(255,255,255,.5)}.client-d2-summary-state{font-size:.66rem;color:#c4ff2e;margin-bottom:13px}.client-d2-summary-state.complete{color:#bde58f}.client-d2-summary-secure{font-size:.61rem;color:rgba(255,255,255,.56);text-align:center;margin-top:12px}.client-d2-summary .client-summary-action{width:100%!important;min-height:48px!important;border-radius:999px!important;background:var(--d2-lime)!important;color:#10120d!important;border:0!important;font-weight:900!important;margin-top:7px!important}
#clientView .client-d2-help-card{display:flex;gap:13px;margin-top:16px;padding:22px 18px;border-radius:17px;background:#171914;color:#fff}.client-d2-help-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:var(--d2-lime);background:rgba(186,255,37,.12);flex:none}.client-d2-help-card h3{font-family:Georgia,'Times New Roman',serif;margin:0 0 6px;font-weight:500}.client-d2-help-card p{font-size:.68rem;line-height:1.55;color:rgba(255,255,255,.63);margin:0 0 11px}.client-d2-help-card .text-action{color:var(--d2-lime);font-size:.7rem}
#clientView .client-d2-signature-wrap{margin-top:16px;padding:22px;border-radius:17px;background:#171914;display:grid;place-items:center}.client-d2-signature-wrap.hidden{display:none}.client-d2-signature-wrap img{max-width:100%;max-height:78px;object-fit:contain;filter:brightness(0) invert(1);opacity:.78}
#clientView .client-d2-footer{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(18px,3vw,48px);font-size:.62rem;color:#777a72;background:#fbfaf6}.client-d2-footer strong{color:#638d08}

/* Full-width gallery density: keep the reference five-column rhythm on wide screens. */
@media(max-width:1500px) and (min-width:1181px){
  #clientView .client-d2-gallery{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Full-width gallery density: keep the reference five-column rhythm on wide screens. */
@media(max-width:1500px) and (min-width:1181px){
  #clientView .client-d2-gallery{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Desktop squeeze: keep Design 2, move summary below story instead of shrinking the gallery. */
@media(max-width:1180px){
  #clientView .client-d2-layout{grid-template-columns:minmax(280px,330px) minmax(0,1fr)}
  #clientView .client-d2-workspace{grid-column:2;grid-row:1 / span 2}
  #clientView .client-d2-summary-column{grid-column:1;grid-row:2;padding:18px 22px 30px;background:#f0ede5}
  #clientView .client-d2-summary{position:relative;top:auto}
  #clientView .client-d2-project-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  #clientView .client-d2-project-strip>*:nth-child(2){border-right:0}#clientView .client-d2-project-strip>*:nth-child(-n+2){border-bottom:1px solid #eeeae1}
  #clientView .client-d2-rules{grid-template-columns:repeat(2,1fr)}#clientView .client-d2-limit-card:nth-child(2){border-right:0}#clientView .client-d2-limit-card:nth-child(-n+2){border-bottom:1px solid #e7e1d6}
  #clientView .client-d2-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
  #clientView .client-d2-topbar{height:auto;min-height:68px;padding:12px 18px}
  #clientView .client-d2-fullscreen{display:none}
  #clientView .client-d2-layout{display:flex;flex-direction:column}
  #clientView .client-d2-story,#clientView .client-d2-workspace,#clientView .client-d2-summary-column{width:100%;border-right:0}
  #clientView .client-d2-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);background:#f0ede5;border-bottom:1px solid var(--d2-line)}
  #clientView .client-d2-story-hero{min-height:500px}.client-d2-note{align-self:center!important;margin:24px 24px 24px -32px!important}.client-d2-story-meta{grid-column:1 / -1!important;grid-template-columns:repeat(3,1fr);padding-top:8px!important}.client-d2-story-meta>div{border-top:0!important}
  #clientView .client-d2-workspace{padding:22px 18px 34px}
  #clientView .client-d2-summary-column{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;background:#f0ede5;padding:22px 18px 30px}.client-d2-help-card{margin-top:0!important}.client-d2-signature-wrap{grid-column:2;margin-top:0!important}
  #clientView .client-d2-gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))!important}
  #clientView .client-d2-footer{flex-wrap:wrap;justify-content:center;text-align:center}
}
@media(max-width:720px){
  #clientView .client-d2-brand img{height:34px}.client-d2-top-actions{gap:6px!important}.client-d2-link-button span{display:none}.client-language-switcher{transform:scale(.92);transform-origin:right center}
  #clientView .client-d2-story{display:block}.client-d2-story-hero{min-height:440px!important}.client-d2-story-copy{padding:38px 24px 30px!important}.client-d2-story-copy h1{font-size:2.55rem!important;max-width:300px!important}.client-d2-note{margin:-32px 16px 0!important}.client-d2-story-meta{display:grid!important;grid-template-columns:1fr!important;padding:20px 18px 28px!important}.client-d2-story-meta>div{border-top:1px solid #ded9ce!important}
  #clientView .client-d2-project-strip{grid-template-columns:1fr 1fr}.client-d2-photographer{grid-column:1 / -1;border-right:0!important;border-bottom:1px solid #eeeae1!important}.client-d2-project-strip>*:nth-child(2){border-right:1px solid #eeeae1!important}.client-d2-project-strip>*:nth-child(3){border-right:0!important}.client-d2-project-strip>*:last-child{grid-column:1 / -1;border-top:1px solid #eeeae1!important}
  #clientView .client-d2-rules{grid-template-columns:1fr 1fr}.client-d2-limit-card{padding:13px 12px!important}.client-d2-limit-star,.client-d2-limit-list{width:32px!important;height:32px!important}
  #clientView .client-d2-gallery-tools{align-items:stretch;flex-direction:column}.client-d2-filters{display:grid!important;grid-template-columns:repeat(5,1fr);width:100%}.client-d2-filters button{padding:9px 4px!important;border-bottom:0!important}.client-d2-filters button span{display:block}.client-d2-sort-view{justify-content:space-between;width:100%}
  #clientView .client-d2-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.client-d2-gallery .photo-body{padding:7px!important}.client-d2-stars button{min-height:34px!important}
  #clientView .client-d2-summary-column{grid-template-columns:1fr;padding:18px 14px 26px}.client-d2-summary{padding:22px 20px!important}.client-d2-signature-wrap{grid-column:1}
  #clientView .client-d2-footer{font-size:.58rem;padding-bottom:max(14px,env(safe-area-inset-bottom))}
}
@media(max-width:460px){
  #clientView .client-d2-topbar{padding-inline:12px}.client-d2-top-actions .client-d2-link-button{display:none}
  #clientView .client-d2-story-hero{min-height:400px!important}.client-d2-story-copy h1{font-size:2.25rem!important}.client-d2-story-copy>p{font-size:.84rem!important}
  #clientView .client-d2-project-strip{display:block}.client-d2-project-strip>*{border-right:0!important;border-bottom:1px solid #eeeae1!important}.client-d2-project-strip>*:last-child{border-bottom:0!important}
  #clientView .client-d2-rules{grid-template-columns:1fr}.client-d2-limit-card{border-right:0!important;border-bottom:1px solid #e7e1d6!important}.client-d2-limit-card:last-child{border-bottom:0!important}
  #clientView .client-d2-filters{grid-template-columns:repeat(3,1fr)!important}.client-d2-filters button:nth-child(n+4){border-top:1px solid #e6e1d8!important}.client-d2-sort-view{align-items:flex-end;gap:8px}.client-d2-sort-view label{display:grid!important;gap:4px!important;flex:1}.client-d2-sort-view select{width:100%}
  #clientView .client-d2-gallery{grid-template-columns:1fr!important}.client-d2-gallery .photo-media{aspect-ratio:4/3!important}.client-d2-list-view .client-d2-photo{display:block!important}
}

/* Full-screen photographer branding studio. */
#clientPortalDialog{padding:0!important;background:rgba(11,12,9,.58)!important}
#clientPortalDialog .client-portal-studio{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;border-radius:0!important;padding:0!important;overflow:auto!important;background:#f7f5ef!important}
.client-portal-studio-head{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;min-height:78px;padding:12px clamp(18px,3vw,42px);background:rgba(248,246,240,.96);backdrop-filter:blur(18px);border-bottom:1px solid #dedad0}.client-portal-studio-head>div{text-align:center}.client-portal-studio-head small{font-weight:900;letter-spacing:.14em;color:#72756b;font-size:.63rem}.client-portal-studio-head h2{margin:3px 0 0;font-size:1.55rem;letter-spacing:-.035em}.client-portal-studio-head .icon{justify-self:end}
.client-portal-studio-body{width:min(1540px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);gap:28px;padding:28px clamp(20px,3vw,44px) 50px}
.client-portal-studio-preview-wrap{min-width:0}.client-portal-preview-label{display:grid;gap:3px;margin:0 0 12px}.client-portal-preview-label small{font-size:.65rem;font-weight:900;color:#638f00;letter-spacing:.13em}.client-portal-preview-label strong{font-size:1rem}.client-portal-d2-preview{position:sticky!important;top:104px!important;display:grid!important;grid-template-rows:minmax(440px,62vh) auto auto!important;min-height:0!important;border-radius:24px!important;overflow:hidden;background:#f6f2e8!important;box-shadow:0 20px 55px rgba(23,22,17,.1)}
.client-portal-d2-preview .client-portal-preview-hero{position:relative!important;inset:auto!important;height:auto!important;min-height:440px;background:linear-gradient(145deg,#25291f,#11130f) center/cover no-repeat;opacity:1!important;cursor:pointer}.client-portal-d2-preview .client-portal-preview-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,7,.16),rgba(8,9,7,.7))}.client-portal-d2-preview .client-portal-preview-hero.is-automatic:before{content:"Automatic project cover";position:absolute;right:15px;top:15px;z-index:3;border:1px solid rgba(255,255,255,.24);background:rgba(10,11,8,.58);color:#fff;padding:7px 10px;border-radius:999px;font-size:.64rem;font-weight:800}
.client-portal-d2-preview-copy{position:absolute!important;left:0;right:0;top:0;z-index:4;padding:46px 38px!important;width:min(470px,92%)!important;color:#fff}.client-portal-d2-preview-copy small{color:#baff25!important}.client-portal-d2-preview-copy h3{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(2.3rem,4.5vw,3.65rem)!important;font-weight:500!important;line-height:1.02!important;margin:17px 0 18px!important}.client-portal-d2-preview-copy p{font-size:.9rem!important;line-height:1.65!important;color:rgba(255,255,255,.85)!important}.client-portal-d2-preview-copy .client-portal-preview-logo{margin-top:28px!important;background:transparent!important;padding:0!important;border-radius:0!important;width:min(220px,70%)!important;height:90px!important;display:flex!important;justify-content:flex-start!important;cursor:pointer}.client-portal-d2-preview-copy .client-portal-preview-logo.hidden{display:none!important}.client-portal-d2-preview-copy .client-portal-preview-logo img{object-position:left center;filter:drop-shadow(0 5px 16px rgba(0,0,0,.25))}
.client-portal-d2-preview-note{padding:24px 28px;background:#fff;display:grid;gap:8px;color:#37382f}.client-portal-d2-preview-note strong{font-family:Georgia,'Times New Roman',serif;font-size:1.05rem}.client-portal-d2-preview-note p{margin:0;color:#72746d;font-size:.8rem;line-height:1.55}.client-portal-d2-preview-note em{font-style:normal;color:#5e8508;font-weight:800;font-size:.78rem}.client-portal-d2-preview .client-portal-preview-signature{display:grid;place-items:center;margin:0!important;padding:20px;background:#171914}.client-portal-d2-preview .client-portal-preview-signature.hidden{display:none!important}.client-portal-d2-preview .client-portal-preview-signature img{max-width:240px;max-height:70px!important}
.client-portal-preview-help{margin:14px 4px 0;color:#70736a;font-size:.78rem;line-height:1.55}.client-portal-preview-help strong{color:#282922}
.client-portal-studio-form{min-width:0}.client-portal-editor-section{border:1px solid #dfdbd0;background:#fff;border-radius:20px;padding:20px;margin:0 0 18px}.client-portal-editor-section-head{display:grid;gap:4px;margin-bottom:15px}.client-portal-editor-section-head small{font-weight:900;font-size:.63rem;letter-spacing:.13em;color:#638f00}.client-portal-editor-section-head h3{margin:0;font-size:1.12rem}.client-portal-editor-section-head p{margin:0;color:#777970;font-size:.78rem;line-height:1.45}
.client-portal-studio .client-portal-media-grid{grid-template-columns:1fr!important}.client-portal-studio .client-portal-media-card{grid-template-columns:160px 1fr auto;align-items:center;gap:16px;padding:12px}.client-portal-studio .client-portal-media-preview{height:100px;cursor:pointer}.client-portal-studio .client-portal-media-card>div:nth-child(2){gap:4px}.client-portal-media-fit{display:block;color:#5e760e;font-size:.68rem;line-height:1.35}.client-portal-studio-actions{position:sticky;bottom:0;z-index:12;padding:14px 0 max(14px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(247,245,239,0),#f7f5ef 22%)}
@media(max-width:980px){.client-portal-studio-body{grid-template-columns:1fr;padding:18px 16px 40px}.client-portal-d2-preview{position:relative!important;top:auto!important;grid-template-rows:minmax(400px,60vh) auto auto!important}.client-portal-studio-head{grid-template-columns:auto 1fr auto;padding:10px 14px}.client-portal-studio-head h2{font-size:1.2rem}.client-portal-studio-head .secondary{font-size:.7rem;padding:8px 10px}}
@media(max-width:650px){.client-portal-studio-head{grid-template-columns:1fr auto}.client-portal-studio-head>button:first-child{grid-column:1 / -1;justify-self:start}.client-portal-studio-head>div{text-align:left}.client-portal-d2-preview{grid-template-rows:420px auto auto!important}.client-portal-d2-preview-copy{padding:36px 24px!important}.client-portal-d2-preview-copy h3{font-size:2.55rem!important}.client-portal-studio .client-portal-media-card{grid-template-columns:1fr}.client-portal-studio .client-portal-media-preview{height:150px}.client-portal-studio .client-portal-actions>*{width:100%}.client-portal-studio-form .profile-grid{grid-template-columns:1fr!important}}


/* ================================================================
   GaliVue V3.8.59.6 — Final delivery in the same Design 2 language
   Existing delivery IDs/actions stay intact. Only geometry/presentation changes.
   ================================================================ */
#deliveryView.delivery-design-two{
  --d2-lime:#baff25;--d2-cream:#f8f6ef;--d2-ink:#151611;--d2-line:#e3dfd4;
  background:var(--d2-cream);min-height:100vh;color:var(--d2-ink);overflow-x:hidden;
}
#deliveryView.delivery-design-two .client-shell{width:100%;max-width:none;margin:0;padding:0;min-height:100vh;background:#fbfaf6}
#deliveryView.delivery-design-two .client-brand-row{
  min-height:76px;margin:0;padding:0 clamp(18px,3vw,48px);display:flex;align-items:center;justify-content:space-between;gap:18px;
  border-bottom:1px solid var(--d2-line);background:rgba(251,250,246,.97)
}
#deliveryView.delivery-design-two .client-brand-row .brand img{height:42px!important;width:auto}
#deliveryView.delivery-design-two .client-brand-actions{display:flex;align-items:center;gap:10px}
#deliveryView.delivery-design-two .privacy-pill{background:#fff;border:1px solid #ddd8cd;box-shadow:none;font-size:.72rem}
#deliveryView.delivery-design-two #deliveryPreviewBanner{margin:18px clamp(18px,3vw,48px) 0}
#deliveryView.delivery-design-two #deliveryLoading{margin:30px clamp(18px,3vw,48px)}
#deliveryView.delivery-design-two #deliveryContent:not(.hidden){
  display:grid;grid-template-columns:clamp(300px,24vw,410px) minmax(0,1fr) clamp(270px,19vw,330px);
  grid-template-rows:auto auto auto auto auto;align-items:start;gap:18px 22px;padding:24px clamp(18px,2.4vw,36px) 42px;
}
#deliveryView.delivery-design-two .delivery-header{
  grid-column:1;grid-row:1 / span 5;position:relative;isolation:isolate;overflow:hidden;min-height:720px;margin:0;padding:54px 34px;
  border:0;border-radius:0 0 24px 24px;display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;color:#fff;
  background:#151711 center/cover no-repeat;background-image:var(--gv-client-hero-image,linear-gradient(145deg,#25291f,#11130f));
  box-shadow:0 18px 45px rgba(22,22,17,.08)
}
#deliveryView.delivery-design-two .delivery-header::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,8,6,.18),rgba(7,8,6,.42) 52%,rgba(7,8,6,.78));z-index:0}
#deliveryView.delivery-design-two .delivery-header>div{position:relative;z-index:1;max-width:310px}
#deliveryView.delivery-design-two .delivery-header .eyebrow{color:var(--d2-lime)!important;font-size:.72rem!important;letter-spacing:.14em!important}
#deliveryView.delivery-design-two .delivery-header .eyebrow::before{content:"";display:inline-block;width:26px;height:2px;background:var(--d2-lime);margin-right:10px;vertical-align:middle}
#deliveryView.delivery-design-two .delivery-header h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(2.7rem,4.2vw,4.7rem)!important;font-weight:500!important;line-height:1.01!important;letter-spacing:-.045em!important;margin:20px 0 18px!important;color:#fff!important}
#deliveryView.delivery-design-two .delivery-header p{margin:0!important;color:rgba(255,255,255,.84)!important;font-size:.92rem!important;line-height:1.65!important}
#deliveryView.delivery-design-two #deliveryPortalIdentity{
  grid-column:2;grid-row:1;margin:0!important;padding:16px 18px!important;background:#fff!important;border:1px solid var(--d2-line)!important;border-radius:14px!important;color:#20211c!important;box-shadow:0 7px 24px rgba(26,25,20,.035)!important
}
#deliveryView.delivery-design-two #deliveryPortalIdentity .client-portal-identity-copy small{color:#85877e!important}
#deliveryView.delivery-design-two #deliveryPortalIdentity .client-portal-identity-copy strong{font-family:Georgia,'Times New Roman',serif;color:#1d1e1a!important}
#deliveryView.delivery-design-two #deliveryPortalIdentity .client-portal-identity-copy span{color:#61772f!important}
#deliveryView.delivery-design-two #deliveryExpiryNotice{grid-column:2;grid-row:2;margin:0;border-radius:14px}
#deliveryView.delivery-design-two #deliveryStatus{grid-column:2;grid-row:3;margin:0;border-radius:14px}
#deliveryView.delivery-design-two #deliverySummaryPanel{
  grid-column:2 / 4;grid-row:4;display:grid;grid-template-columns:minmax(0,1fr) clamp(270px,19vw,330px);gap:18px 22px;
  margin:0;padding:0;border:0;background:transparent;box-shadow:none
}
#deliveryView.delivery-design-two #deliveryFileSummary{
  grid-column:1;grid-row:1;padding:22px;border:1px solid var(--d2-line);border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(25,24,19,.035)
}
#deliveryView.delivery-design-two .delivery-summary-total strong{font-size:2.15rem}
#deliveryView.delivery-design-two .delivery-summary-actions{
  grid-column:2;grid-row:1 / span 3;position:sticky;top:18px;display:grid;align-content:start;gap:10px;padding:24px 20px;
  border-radius:18px;background:linear-gradient(155deg,#1a1c17,#0e100d);color:#fff;box-shadow:0 18px 38px rgba(18,19,14,.14);border:1px solid #252820
}
#deliveryView.delivery-design-two .delivery-summary-actions::before{content:"Final delivery";font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;color:#fff;margin-bottom:4px}
#deliveryView.delivery-design-two .delivery-summary-actions::after{content:"";width:24px;height:2px;background:var(--d2-lime);order:-1;margin-bottom:4px}
#deliveryView.delivery-design-two .delivery-summary-actions .primary{background:var(--d2-lime)!important;color:#10120d!important;border-color:var(--d2-lime)!important}
#deliveryView.delivery-design-two .delivery-summary-actions .secondary{background:#fff!important;color:#171814!important;border-color:#e4e0d7!important}
#deliveryView.delivery-design-two .delivery-summary-actions button{width:100%;min-height:46px}
#deliveryView.delivery-design-two .delivery-category-downloads{display:grid;gap:8px}
#deliveryView.delivery-design-two #mobileSaveHelp{grid-column:1;grid-row:2;margin:0;padding:16px 18px;border:1px solid #e4dfd4;border-radius:14px;background:#f8f5ed;color:#676960}
#deliveryView.delivery-design-two #deliveryFeedbackNudge{grid-column:1;grid-row:3;margin:0;border-radius:14px}
#deliveryView.delivery-design-two .delivery-client-actions{
  grid-column:3;grid-row:5;display:grid;gap:9px;margin:0;padding:18px;border-radius:17px;background:#171914;color:#fff
}
#deliveryView.delivery-design-two .delivery-client-actions::before{content:"After downloading";font-family:Georgia,'Times New Roman',serif;font-size:1.05rem;color:#fff;margin-bottom:2px}
#deliveryView.delivery-design-two .delivery-client-actions button{width:100%;min-height:46px}
#deliveryView.delivery-design-two .delivery-client-actions .primary{background:var(--d2-lime)!important;color:#10120d!important;border-color:var(--d2-lime)!important}
#deliveryView.delivery-design-two .delivery-client-actions .secondary{background:#fff!important;color:#171814!important}
#deliveryView.delivery-design-two #deliveryGalleryWrap{grid-column:2;grid-row:5;margin:0;border:1px solid var(--d2-line);border-radius:18px;background:#fff;padding:18px}
#deliveryView.delivery-design-two .delivery-preview-head{margin-bottom:14px}
#deliveryView.delivery-design-two #deliveryGallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#deliveryView.delivery-design-two #deliveryReview{grid-column:2;grid-row:6;margin:0;border-radius:18px}
#deliveryView.delivery-design-two .delivery-photo{border:1px solid #e2ddd2!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 4px 14px rgba(23,22,18,.025)!important}

@media(max-width:1500px) and (min-width:1181px){
  #deliveryView.delivery-design-two #deliveryGallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1180px){
  #deliveryView.delivery-design-two #deliveryContent:not(.hidden){grid-template-columns:minmax(280px,330px) minmax(0,1fr)}
  #deliveryView.delivery-design-two .delivery-header{grid-column:1;grid-row:1 / span 6;min-height:650px}
  #deliveryView.delivery-design-two #deliveryPortalIdentity,#deliveryView.delivery-design-two #deliveryExpiryNotice,#deliveryView.delivery-design-two #deliveryStatus,#deliveryView.delivery-design-two #deliveryGalleryWrap,#deliveryView.delivery-design-two #deliveryReview{grid-column:2}
  #deliveryView.delivery-design-two #deliverySummaryPanel{grid-column:2;grid-template-columns:1fr}
  #deliveryView.delivery-design-two .delivery-summary-actions{grid-column:1;grid-row:auto;position:relative;top:auto}
  #deliveryView.delivery-design-two #mobileSaveHelp,#deliveryView.delivery-design-two #deliveryFeedbackNudge{grid-column:1}
  #deliveryView.delivery-design-two .delivery-client-actions{grid-column:2;grid-row:auto;grid-template-columns:1fr 1fr}
  #deliveryView.delivery-design-two .delivery-client-actions::before{grid-column:1 / -1}
  #deliveryView.delivery-design-two #deliveryGallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:980px){
  #deliveryView.delivery-design-two .client-brand-row{min-height:68px;padding:10px 18px}
  #deliveryView.delivery-design-two .client-brand-row .brand img{height:34px!important}
  #deliveryView.delivery-design-two #deliveryContent:not(.hidden){display:flex;flex-direction:column;padding:18px;gap:14px}
  #deliveryView.delivery-design-two .delivery-header{width:100%;min-height:500px;border-radius:20px;padding:42px 28px}
  #deliveryView.delivery-design-two #deliveryPortalIdentity,#deliveryView.delivery-design-two #deliveryExpiryNotice,#deliveryView.delivery-design-two #deliveryStatus,#deliveryView.delivery-design-two #deliverySummaryPanel,#deliveryView.delivery-design-two .delivery-client-actions,#deliveryView.delivery-design-two #deliveryGalleryWrap,#deliveryView.delivery-design-two #deliveryReview{width:100%;margin:0}
  #deliveryView.delivery-design-two #deliverySummaryPanel{display:grid;grid-template-columns:1fr}
  #deliveryView.delivery-design-two .delivery-client-actions{grid-template-columns:1fr 1fr}
  #deliveryView.delivery-design-two #deliveryGallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  #deliveryView.delivery-design-two .client-brand-row{padding-inline:12px}
  #deliveryView.delivery-design-two .privacy-pill{display:none}
  #deliveryView.delivery-design-two #deliveryContent:not(.hidden){padding:12px}
  #deliveryView.delivery-design-two .delivery-header{min-height:420px;padding:34px 22px}
  #deliveryView.delivery-design-two .delivery-header h1{font-size:2.55rem!important}
  #deliveryView.delivery-design-two .delivery-client-actions{grid-template-columns:1fr}
  #deliveryView.delivery-design-two #deliveryGallery{grid-template-columns:1fr}
}

/* ================================================================
   GaliVue V3.8.59.6 — Design 2 wrapper-width regression correction
   V3.8.59.5 correctly made .client-d2-layout full width, but the legacy
   Design 3 #clientContent grid still constrained that entire layout to
   its first grid track. Reset only the outer wrapper; keep Design 2's
   own responsive three-area grid as the source of truth.
   ================================================================ */
#clientView.client-design-two #clientContent:not(.hidden){
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
#clientView.client-design-two #clientContent>.client-d2-layout{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}


/* ================================================================
   GaliVue V3.8.59.7 — Client Design 2 conflict isolation
   The legacy V3.8.59 Design 3 selectors above are now class-scoped to
   .client-design-three. Design 2 therefore owns #clientContent, gallery,
   summary, notes and final delivery without cross-theme grid collisions.
   No selection, delivery, API or event logic changed in this release.
   ================================================================ */

/* ================================================================
   GaliVue V3.8.59.8 — Design 2 premium desktop + iPhone refinement
   Presentation only. Secure selection IDs, rating actions, receipt
   confirmation, filters, sorting and Submit selections stay unchanged.
   ================================================================ */

@media (min-width:1181px){
  #clientView.client-design-two .client-d2-layout{
    grid-template-columns:clamp(320px,23vw,420px) minmax(0,1fr) clamp(320px,20vw,370px);
  }
  #clientView.client-design-two .client-d2-summary-column{padding:24px 20px 36px}
  #clientView.client-design-two .client-d2-summary{padding:28px 22px!important;border-radius:20px!important}
  #clientView.client-design-two .client-d2-summary-row{
    margin:0 0 10px;padding:14px 12px;border:1px solid rgba(255,255,255,.11);
    border-radius:13px;background:rgba(255,255,255,.025)
  }
  #clientView.client-design-two .client-d2-help-card{padding:22px 20px;border-radius:20px}
}

@media (max-width:720px){
  #clientView.client-design-two .client-d2-topbar{min-height:58px;padding:8px 14px;gap:10px}
  #clientView.client-design-two .client-d2-brand img{height:30px}
  #clientView.client-design-two .client-d2-top-actions{gap:4px!important}
  #clientView.client-design-two .client-d2-link-button{min-width:34px;min-height:34px;padding:6px;justify-content:center}
  #clientView.client-design-two .client-language-switcher{transform:scale(.84);transform-origin:right center}

  #clientView.client-design-two .client-d2-story-hero{min-height:360px!important}
  #clientView.client-design-two .client-d2-story-copy{padding:30px 22px 24px!important}
  #clientView.client-design-two .client-d2-kicker{font-size:.65rem;margin-bottom:15px;gap:8px}
  #clientView.client-design-two .client-d2-kicker:before{width:22px}
  #clientView.client-design-two .client-d2-story-copy h1{font-size:2.18rem!important;line-height:1.02!important;max-width:285px!important;margin-bottom:16px!important}
  #clientView.client-design-two .client-d2-story-copy>p{max-width:300px;font-size:.8rem!important;line-height:1.5!important}
  #clientView.client-design-two .client-d2-story-logo{padding-top:18px;max-height:72px}
  #clientView.client-design-two .client-d2-story-logo img{max-height:68px}

  #clientView.client-design-two .client-d2-note{margin:-22px 14px 0!important;padding:18px 18px 17px;gap:8px;border-radius:18px}
  #clientView.client-design-two .client-d2-note .client-photographer-note-label{font-size:1.02rem}
  #clientView.client-design-two .client-d2-note .client-photographer-note-label:before{font-size:1.55rem;margin-right:7px}
  #clientView.client-design-two .client-d2-note .client-photographer-note-text{font-size:.76rem;line-height:1.5}
  #clientView.client-design-two .client-d2-note em{font-size:.76rem}
  #clientView.client-design-two .client-d2-story-meta{padding:16px 16px 20px!important;gap:9px}
  #clientView.client-design-two .client-d2-story-meta>div{padding-top:10px!important;gap:9px}
  #clientView.client-design-two .client-d2-story-meta p{font-size:.72rem}
  #clientView.client-design-two .client-d2-story-meta .text-action{font-size:.72rem;padding:4px 0}

  #clientView.client-design-two .client-d2-workspace{padding:16px 12px 26px}
  #clientView.client-design-two .client-d2-project-strip{display:grid!important;grid-template-columns:1fr 1fr!important;margin-bottom:14px;border-radius:13px}
  #clientView.client-design-two .client-d2-project-strip>*{padding:11px 12px!important}
  #clientView.client-design-two .client-d2-project-strip>.client-d2-photographer{grid-column:1/-1!important;border-right:0!important;border-bottom:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-project-strip>.client-d2-project-meta:nth-of-type(2){border-right:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-project-strip>.client-d2-project-meta:last-child{grid-column:1/-1!important;border-right:0!important;border-top:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-project-meta small{font-size:.52rem}
  #clientView.client-design-two .client-d2-project-meta strong{font-size:.78rem}
  #clientView.client-design-two .client-d2-project-meta span{font-size:.61rem}

  #clientView.client-design-two .client-d2-receipt{margin:0 0 14px;padding:12px 13px;gap:10px;border-radius:13px}
  #clientView.client-design-two .client-d2-receipt strong{font-size:.78rem}
  #clientView.client-design-two .client-d2-receipt span{font-size:.68rem;line-height:1.4}
  #clientView.client-design-two .client-d2-receipt .primary{min-height:46px!important;padding:10px 14px!important;font-size:.78rem!important;border-radius:999px!important}

  /* Premium 2x2 mobile rating-limit summary instead of four tall rows. */
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px;margin-bottom:16px;border:0;border-radius:0;background:transparent;overflow:visible}
  #clientView.client-design-two .client-d2-limit-card{min-height:82px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;padding:11px 10px!important;border:1px solid #e2ddd2!important;border-radius:13px;background:#f8f5ed}
  #clientView.client-design-two .client-d2-limit-star,
  #clientView.client-design-two .client-d2-limit-list{width:32px!important;height:32px!important;font-size:.92rem}
  #clientView.client-design-two .client-d2-limit-card strong{font-size:.66rem}
  #clientView.client-design-two .client-d2-limit-card b{font-size:.9rem}
  #clientView.client-design-two .client-d2-limit-card small{font-size:.56rem;line-height:1.3}
  #clientView.client-design-two .client-d2-limit-card.disabled{opacity:.55}

  #clientView.client-design-two .client-d2-gallery-tools{gap:11px;margin-bottom:14px}
  #clientView.client-design-two .client-d2-filters{display:flex!important;flex-wrap:nowrap!important;gap:6px;width:100%;overflow-x:auto;padding:1px 0 4px;border:0;border-radius:0;background:transparent;scrollbar-width:none}
  #clientView.client-design-two .client-d2-filters::-webkit-scrollbar{display:none}
  #clientView.client-design-two .client-d2-filters button{flex:0 0 auto;min-width:72px;min-height:38px;padding:7px 10px!important;border:1px solid #ddd8cd!important;border-radius:999px!important;background:#fff;font-size:.68rem}
  #clientView.client-design-two .client-d2-filters button.active{border-color:#171814!important;background:#171814!important;color:#fff!important}
  #clientView.client-design-two .client-d2-filters button span{display:inline!important;margin-left:2px;font-size:.58rem}

  #clientView.client-design-two .client-d2-sort-view{align-items:center!important;gap:8px!important}
  #clientView.client-design-two .client-d2-sort-view label{display:flex!important;align-items:center!important;gap:7px!important;flex:1;min-width:0}
  #clientView.client-design-two .client-d2-sort-view label>span{flex:none;font-size:.63rem;font-weight:750}
  #clientView.client-design-two .client-d2-sort-view select{width:100%!important;min-width:0;min-height:42px;padding:8px 28px 8px 10px;font-size:.72rem;border-radius:10px}
  #clientView.client-design-two .client-d2-view-toggle{flex:none;border-radius:10px}
  #clientView.client-design-two .client-d2-view-toggle button{min-width:42px;min-height:42px;padding:8px}

  #clientView.client-design-two .client-d2-gallery{grid-template-columns:1fr!important;gap:12px!important}
  #clientView.client-design-two .client-d2-gallery .photo{border-radius:14px!important;box-shadow:0 8px 22px rgba(23,22,18,.045)!important}
  #clientView.client-design-two .client-d2-gallery .photo-media{aspect-ratio:4/3!important}
  #clientView.client-design-two .client-d2-gallery .photo-body{padding:9px 10px 10px!important;gap:8px}
  #clientView.client-design-two .client-d2-gallery .photo-name{font-size:.7rem}
  #clientView.client-design-two .client-d2-stars{border-radius:9px}
  #clientView.client-design-two .client-d2-stars button{min-height:38px!important}
  #clientView.client-design-two .client-d2-stars button:after{font-size:1rem}

  /* Reset the historical global phone .stats 2-column rule for Design 2 only. */
  #clientView.client-design-two #clientStats.client-d2-summary{grid-template-columns:minmax(0,1fr)!important;gap:0!important;position:relative!important;top:auto!important;margin:0!important;padding:21px 18px!important;border-radius:20px!important}
  #clientView.client-design-two #clientStats.client-d2-summary>*{grid-column:1!important;min-width:0}
  #clientView.client-design-two .client-d2-summary-column{display:block!important;padding:18px 12px 20px!important;background:#f1eee6}
  #clientView.client-design-two .client-d2-summary-head h2{font-size:1.22rem;line-height:1.15}
  #clientView.client-design-two .client-d2-summary-head>span{margin:13px 0 10px}
  #clientView.client-design-two .client-d2-summary-row{grid-template-columns:34px minmax(0,1fr) auto!important;gap:10px!important;margin:0 0 8px;padding:11px 10px!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:12px;background:rgba(255,255,255,.025)}
  #clientView.client-design-two .client-d2-summary-star{width:32px;height:32px}
  #clientView.client-design-two .client-d2-summary-row strong{font-size:.72rem}
  #clientView.client-design-two .client-d2-summary-row small{font-size:.59rem}
  #clientView.client-design-two .client-d2-summary-row>b{font-size:1rem}
  #clientView.client-design-two .client-d2-summary-total{margin-top:4px;padding:15px 2px 10px;border-top:1px solid rgba(255,255,255,.12)}
  #clientView.client-design-two .client-d2-summary-total strong{font-size:1.65rem}
  #clientView.client-design-two .client-d2-summary-state{margin:1px 2px 10px}
  #clientView.client-design-two .client-d2-summary-secure{margin-top:10px;font-size:.59rem}
  #clientView.client-design-two .client-d2-summary .client-summary-action{min-height:50px!important;margin-top:6px!important;font-size:.86rem!important}

  #clientView.client-design-two .client-d2-help-card{margin-top:12px!important;gap:12px;padding:18px 16px;border-radius:18px}
  #clientView.client-design-two .client-d2-help-icon{width:34px;height:34px}
  #clientView.client-design-two .client-d2-help-card h3{font-size:1.08rem;margin-bottom:5px}
  #clientView.client-design-two .client-d2-help-card p{font-size:.69rem;line-height:1.45;margin-bottom:9px}
  #clientView.client-design-two .client-d2-help-card .text-action{font-size:.68rem}
  #clientView.client-design-two .client-d2-signature-wrap{margin-top:12px;padding:17px;border-radius:18px}

  #clientView.client-design-two .client-d2-footer{display:grid;justify-items:center;gap:7px;min-height:0;padding:15px 14px max(18px,env(safe-area-inset-bottom));font-size:.57rem;line-height:1.4}
}

@media (max-width:460px){
  #clientView.client-design-two .client-d2-topbar{padding-inline:12px}
  #clientView.client-design-two .client-d2-story-hero{min-height:345px!important}
  #clientView.client-design-two .client-d2-story-copy{padding:28px 20px 22px!important}
  #clientView.client-design-two .client-d2-story-copy h1{font-size:2.05rem!important;max-width:270px!important}
  #clientView.client-design-two .client-d2-note{margin:-20px 12px 0!important;padding:17px 16px 16px}
  #clientView.client-design-two .client-d2-workspace{padding-inline:11px}
  #clientView.client-design-two .client-d2-project-strip{display:grid!important;grid-template-columns:1fr 1fr!important}
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-filters{display:flex!important;grid-template-columns:none!important}
  #clientView.client-design-two .client-d2-filters button:nth-child(n+4){border-top:1px solid #ddd8cd!important}
  #clientView.client-design-two .client-d2-sort-view{align-items:center!important}
  #clientView.client-design-two .client-d2-sort-view label{display:flex!important}
  #clientView.client-design-two .client-d2-gallery{grid-template-columns:1fr!important}
}

/* ================================================================
   GaliVue V3.8.59.9 — Approved Design 2 reference lock
   Source of truth: the approved full desktop gallery composition.
   This block owns only Client Selection presentation. Existing IDs,
   rating actions, confirmation, filters, sorting and submit logic remain.
   ================================================================ */
#clientView.client-design-two .client-d2-topbar{
  height:68px!important;min-height:68px!important;padding:0 clamp(24px,2.8vw,42px)!important;
  background:#fbfaf6!important;
}
#clientView.client-design-two .client-d2-brand img{height:31px!important;width:auto!important}
#clientView.client-design-two .client-d2-top-actions{gap:10px!important;flex-wrap:nowrap!important}
#clientView.client-design-two .client-d2-link-button{min-height:36px!important;padding:7px 8px!important;font-size:.75rem!important}
#clientView.client-design-two .client-d2-fullscreen{min-height:36px!important;padding:8px 12px!important;border-radius:9px!important;font-size:.7rem!important}
#clientView.client-design-two .client-language-switcher{padding:4px 6px!important;transform:none!important;box-shadow:none!important}
#clientView.client-design-two .client-language-switcher select{width:70px!important;min-width:70px!important;max-width:70px!important;font-size:.67rem!important}

#clientView.client-design-two .client-d2-layout{
  display:grid!important;
  grid-template-columns:clamp(360px,26.5vw,500px) minmax(0,1fr) clamp(320px,22.2vw,420px)!important;
  align-items:stretch!important;
  min-height:calc(100vh - 68px)!important;
  background:#fbfaf6!important;
}
#clientView.client-design-two .client-d2-story{min-width:0!important;background:#f1eee6!important;border-right:1px solid #e3dfd4!important}
#clientView.client-design-two .client-d2-story-hero{min-height:470px!important;height:470px!important}
#clientView.client-design-two .client-d2-story-copy{padding:42px 40px 32px!important}
#clientView.client-design-two .client-d2-kicker{font-size:.68rem!important;letter-spacing:.12em!important;margin-bottom:18px!important}
#clientView.client-design-two .client-d2-story-copy h1{
  max-width:315px!important;margin:0 0 18px!important;
  font-size:clamp(2.25rem,2.65vw,2.8rem)!important;line-height:1.02!important;
}
#clientView.client-design-two .client-d2-story-copy>p{max-width:300px!important;font-size:.82rem!important;line-height:1.6!important}
#clientView.client-design-two .client-d2-story-logo{max-width:210px!important;max-height:86px!important;padding-top:20px!important}
#clientView.client-design-two .client-d2-story-logo img{max-height:82px!important}
#clientView.client-design-two .client-d2-note{
  margin:-34px 38px 0!important;padding:22px 22px 20px!important;gap:9px!important;
  border-radius:18px!important;box-shadow:0 12px 30px rgba(31,30,23,.07)!important;
}
#clientView.client-design-two .client-d2-note .client-photographer-note-label{font-size:1rem!important;line-height:1.25!important}
#clientView.client-design-two .client-d2-note .client-photographer-note-text{font-size:.75rem!important;line-height:1.55!important}
#clientView.client-design-two .client-d2-note em{font-size:.74rem!important}
#clientView.client-design-two .client-d2-story-meta{padding:18px 40px 28px!important;gap:0!important}
#clientView.client-design-two .client-d2-story-meta>div{
  min-height:50px!important;padding:12px 0!important;gap:10px!important;border-top:1px solid #ded9cf!important;
}
#clientView.client-design-two .client-d2-story-meta p{font-size:.72rem!important;line-height:1.35!important}
#clientView.client-design-two .client-d2-story-meta .text-action{
  min-height:48px!important;padding:12px 0!important;border-top:1px solid #ded9cf!important;
  font-size:.71rem!important;text-align:left!important;justify-content:flex-start!important;
}

#clientView.client-design-two .client-d2-workspace{min-width:0!important;padding:24px 24px 38px!important;background:#fbfaf6!important}
#clientView.client-design-two .client-d2-project-strip{
  min-height:88px!important;margin-bottom:22px!important;border-radius:13px!important;
  grid-template-columns:minmax(180px,1.25fr) repeat(3,minmax(120px,1fr))!important;
}
#clientView.client-design-two .client-d2-project-strip>*{padding:14px 16px!important}
#clientView.client-design-two .client-d2-photographer{padding:12px 16px!important}
#clientView.client-design-two .client-d2-photographer .client-portal-identity-logo{width:44px!important;height:44px!important}
#clientView.client-design-two .client-d2-project-meta small{font-size:.54rem!important}
#clientView.client-design-two .client-d2-project-meta strong{font-size:.8rem!important}
#clientView.client-design-two .client-d2-project-meta span{font-size:.62rem!important}
#clientView.client-design-two .client-d2-receipt{min-height:58px!important;margin:0 0 18px!important;padding:11px 13px!important}
#clientView.client-design-two .client-d2-receipt strong{font-size:.76rem!important}
#clientView.client-design-two .client-d2-receipt span{font-size:.64rem!important;line-height:1.4!important}
#clientView.client-design-two .client-d2-receipt .primary{min-height:38px!important;padding:8px 14px!important;font-size:.7rem!important;border-radius:999px!important}

#clientView.client-design-two .client-d2-rules{
  min-height:86px!important;margin-bottom:22px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;border:1px solid #e3dfd4!important;border-radius:13px!important;background:#f8f5ed!important;overflow:hidden!important;
}
#clientView.client-design-two .client-d2-limit-card{
  min-height:86px!important;display:flex!important;align-items:center!important;gap:11px!important;
  padding:14px 14px!important;border:0!important;border-right:1px solid #e7e1d6!important;border-radius:0!important;background:transparent!important;
}
#clientView.client-design-two .client-d2-limit-card:last-child{border-right:0!important}
#clientView.client-design-two .client-d2-limit-star,
#clientView.client-design-two .client-d2-limit-list{width:36px!important;height:36px!important;font-size:.96rem!important}
#clientView.client-design-two .client-d2-limit-card strong{font-size:.67rem!important}
#clientView.client-design-two .client-d2-limit-card b{font-size:.98rem!important}
#clientView.client-design-two .client-d2-limit-card small{font-size:.58rem!important}

#clientView.client-design-two .client-d2-gallery-tools{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:18px!important}
#clientView.client-design-two .client-d2-filters{
  display:flex!important;flex-wrap:nowrap!important;overflow:hidden!important;gap:0!important;
  border:1px solid #ddd8cd!important;border-radius:9px!important;background:#fff!important;padding:0!important;
}
#clientView.client-design-two .client-d2-filters button{
  flex:0 0 auto!important;min-width:0!important;min-height:36px!important;padding:8px 12px!important;
  border:0!important;border-right:1px solid #e6e1d8!important;border-radius:0!important;background:#fff!important;
  font-size:.68rem!important;white-space:nowrap!important;
}
#clientView.client-design-two .client-d2-filters button:last-child{border-right:0!important}
#clientView.client-design-two .client-d2-filters button.active{background:#171814!important;color:#fff!important}
#clientView.client-design-two .client-d2-filters button span{display:inline!important;margin-left:2px!important;font-size:.58rem!important;background:none!important;padding:0!important;border-radius:0!important}
#clientView.client-design-two .client-d2-sort-view{display:flex!important;align-items:center!important;gap:10px!important;flex:none!important}
#clientView.client-design-two .client-d2-sort-view label{display:flex!important;align-items:center!important;gap:7px!important;font-size:.65rem!important;white-space:nowrap!important}
#clientView.client-design-two .client-d2-sort-view select{min-height:36px!important;padding:7px 26px 7px 9px!important;font-size:.67rem!important}
#clientView.client-design-two .client-d2-view-toggle button{min-width:36px!important;min-height:36px!important;padding:7px 9px!important}

#clientView.client-design-two .client-d2-gallery{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:11px!important;
}
#clientView.client-design-two .client-d2-gallery .photo{border-radius:9px!important;box-shadow:0 4px 13px rgba(23,22,18,.035)!important}
#clientView.client-design-two .client-d2-gallery .photo-media{aspect-ratio:4/3!important;min-height:0!important}
#clientView.client-design-two .client-d2-gallery .photo-body{padding:7px 8px 8px!important;gap:6px!important}
#clientView.client-design-two .client-d2-gallery .photo-name{font-size:.62rem!important}
#clientView.client-design-two .client-d2-stars{border-radius:6px!important}
#clientView.client-design-two .client-d2-stars button{min-height:29px!important;padding:3px!important}
#clientView.client-design-two .client-d2-stars button:after{font-size:.9rem!important}

#clientView.client-design-two .client-d2-summary-column{
  min-width:0!important;padding:24px 24px 36px!important;background:#fbfaf6!important;display:block!important;
}
/* Neutralise the historical generic .stats span pill styling inside Design 2. */
#clientView.client-design-two #clientStats.client-d2-summary span{
  display:initial!important;align-items:initial!important;border-radius:0!important;padding:0!important;background:none!important;font-size:inherit!important;
}
#clientView.client-design-two #clientStats.client-d2-summary{
  display:flex!important;flex-direction:column!important;gap:0!important;position:sticky!important;top:18px!important;
  min-height:570px!important;margin:0!important;padding:30px 24px 24px!important;border-radius:18px!important;
  background:linear-gradient(155deg,#1a1c17,#0d0f0c)!important;color:#fff!important;border:1px solid #252820!important;
  box-shadow:0 18px 38px rgba(18,19,14,.14)!important;
}
#clientView.client-design-two #clientStats.client-d2-summary>*{min-width:0!important;grid-column:auto!important}
#clientView.client-design-two .client-d2-summary-head h2{font-size:1.17rem!important;line-height:1.15!important}
#clientView.client-design-two .client-d2-summary-head>span{
  display:block!important;width:24px!important;height:2px!important;margin:17px 0 16px!important;background:var(--d2-lime)!important;
}
#clientView.client-design-two .client-d2-summary-rows{display:grid!important;gap:12px!important}
#clientView.client-design-two .client-d2-summary-row{
  display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;
  min-height:74px!important;margin:0!important;padding:12px 13px!important;border:1px solid rgba(255,255,255,.12)!important;
  border-radius:12px!important;background:rgba(255,255,255,.025)!important;
}
#clientView.client-design-two .client-d2-summary-star{
  display:grid!important;width:38px!important;height:38px!important;place-items:center!important;border-radius:50%!important;
  background:rgba(130,181,25,.14)!important;border:1px solid rgba(130,181,25,.32)!important;color:#92cb00!important;font-size:1rem!important;
}
#clientView.client-design-two .client-d2-summary-row.rating-4 .client-d2-summary-star{background:rgba(241,173,21,.11)!important;border-color:rgba(241,173,21,.28)!important;color:#f1ad15!important}
#clientView.client-design-two .client-d2-summary-row.rating-3 .client-d2-summary-star{background:rgba(230,88,80,.11)!important;border-color:rgba(230,88,80,.28)!important;color:#e65850!important}
#clientView.client-design-two .client-d2-summary-label{font-size:.72rem!important;line-height:1.25!important;color:#fff!important}
#clientView.client-design-two .client-d2-summary-count{display:grid!important;justify-items:end!important;gap:2px!important;min-width:62px!important}
#clientView.client-design-two .client-d2-summary-count b{font-size:1rem!important;line-height:1!important;color:#fff!important;white-space:nowrap!important}
#clientView.client-design-two .client-d2-summary-count b span{color:rgba(255,255,255,.58)!important;font-size:.74rem!important}
#clientView.client-design-two .client-d2-summary-count small{font-size:.56rem!important;color:rgba(255,255,255,.55)!important;white-space:nowrap!important}
#clientView.client-design-two .client-d2-summary-total{
  display:grid!important;gap:4px!important;margin-top:auto!important;padding:22px 4px 12px!important;border-top:1px solid rgba(255,255,255,.12)!important;
}
#clientView.client-design-two .client-d2-summary-total>span{color:rgba(255,255,255,.68)!important;font-size:.67rem!important}
#clientView.client-design-two .client-d2-summary-total strong{font-size:1.75rem!important;line-height:1.05!important;color:#fff!important}
#clientView.client-design-two .client-d2-summary-total strong small{font-size:.82rem!important;color:rgba(255,255,255,.58)!important}
#clientView.client-design-two .client-d2-summary-total em{font-size:.59rem!important;color:rgba(255,255,255,.52)!important}
#clientView.client-design-two .client-d2-summary-state{margin:6px 4px 12px!important;font-size:.64rem!important;color:#c4ff2e!important}
#clientView.client-design-two .client-d2-summary-secure{order:8!important;margin:12px 0 0!important;font-size:.57rem!important;color:rgba(255,255,255,.55)!important;text-align:center!important}
#clientView.client-design-two .client-d2-summary .client-summary-action{
  order:7!important;width:100%!important;min-height:50px!important;margin:4px 0 0!important;border-radius:999px!important;
  background:var(--d2-lime)!important;color:#10120d!important;font-size:.82rem!important;font-weight:900!important;
}
#clientView.client-design-two .client-d2-help-card{
  min-height:238px!important;margin-top:18px!important;padding:24px 22px!important;gap:14px!important;border-radius:17px!important;
  background:#171914!important;align-items:flex-start!important;
}
#clientView.client-design-two .client-d2-help-icon{width:40px!important;height:40px!important}
#clientView.client-design-two .client-d2-help-card h3{font-size:1.03rem!important;margin:1px 0 8px!important}
#clientView.client-design-two .client-d2-help-card p{font-size:.68rem!important;line-height:1.55!important;margin:0 0 18px!important}
#clientView.client-design-two .client-d2-help-card .text-action{font-size:.68rem!important;color:var(--d2-lime)!important}
#clientView.client-design-two .client-d2-signature-wrap{margin-top:18px!important;min-height:110px!important}
#clientView.client-design-two .client-d2-footer{min-height:58px!important;padding:12px clamp(28px,3.2vw,54px)!important;font-size:.6rem!important}

/* Laptop / tablet landscape: preserve the approved hierarchy without squeezing. */
@media(max-width:1180px) and (min-width:981px){
  #clientView.client-design-two .client-d2-layout{grid-template-columns:minmax(300px,34%) minmax(0,66%)!important}
  #clientView.client-design-two .client-d2-story{grid-column:1!important;grid-row:1!important}
  #clientView.client-design-two .client-d2-workspace{grid-column:2!important;grid-row:1 / span 2!important}
  #clientView.client-design-two .client-d2-summary-column{grid-column:1!important;grid-row:2!important;padding:18px 22px 30px!important;background:#f1eee6!important}
  #clientView.client-design-two #clientStats.client-d2-summary{position:relative!important;top:auto!important;min-height:500px!important}
  #clientView.client-design-two .client-d2-story-hero{height:440px!important;min-height:440px!important}
  #clientView.client-design-two .client-d2-note{margin:-30px 24px 0!important}
  #clientView.client-design-two .client-d2-workspace{padding:20px 18px 34px!important}
  #clientView.client-design-two .client-d2-project-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-project-strip>*:nth-child(2){border-right:0!important}
  #clientView.client-design-two .client-d2-project-strip>*:nth-child(-n+2){border-bottom:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-limit-card:nth-child(2){border-right:0!important}
  #clientView.client-design-two .client-d2-limit-card:nth-child(-n+2){border-bottom:1px solid #e7e1d6!important}
  #clientView.client-design-two .client-d2-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Tablet portrait and phones: same design language, intentional vertical flow. */
@media(max-width:980px){
  #clientView.client-design-two .client-d2-topbar{height:60px!important;min-height:60px!important;padding:0 16px!important}
  #clientView.client-design-two .client-d2-brand img{height:29px!important}
  #clientView.client-design-two .client-d2-fullscreen{display:none!important}
  #clientView.client-design-two .client-d2-layout{display:flex!important;flex-direction:column!important;min-height:0!important}
  #clientView.client-design-two .client-d2-story,
  #clientView.client-design-two .client-d2-workspace,
  #clientView.client-design-two .client-d2-summary-column{width:100%!important;border-right:0!important}
  #clientView.client-design-two .client-d2-story{display:block!important}
  #clientView.client-design-two .client-d2-story-hero{height:430px!important;min-height:430px!important}
  #clientView.client-design-two .client-d2-note{margin:-28px 22px 0!important}
  #clientView.client-design-two .client-d2-story-meta{padding:17px 24px 24px!important}
  #clientView.client-design-two .client-d2-workspace{padding:20px 18px 32px!important}
  #clientView.client-design-two .client-d2-project-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-project-strip>.client-d2-photographer{grid-column:1/-1!important;border-right:0!important;border-bottom:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-project-strip>.client-d2-project-meta:last-child{grid-column:1/-1!important;border-right:0!important;border-top:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;border:0!important;background:transparent!important;overflow:visible!important}
  #clientView.client-design-two .client-d2-limit-card{min-height:78px!important;border:1px solid #e2ddd2!important;border-radius:12px!important;background:#f8f5ed!important;padding:11px 12px!important}
  #clientView.client-design-two .client-d2-limit-card:nth-child(n){border-right:1px solid #e2ddd2!important;border-bottom:1px solid #e2ddd2!important}
  #clientView.client-design-two .client-d2-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  #clientView.client-design-two .client-d2-summary-column{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)!important;gap:16px!important;padding:22px 18px 28px!important;background:#f1eee6!important}
  #clientView.client-design-two #clientStats.client-d2-summary{position:relative!important;top:auto!important;min-height:500px!important}
  #clientView.client-design-two .client-d2-help-card{margin-top:0!important;min-height:100%!important}
  #clientView.client-design-two .client-d2-signature-wrap{grid-column:2!important;margin-top:0!important}
  #clientView.client-design-two .client-d2-footer{flex-wrap:wrap!important;justify-content:center!important;text-align:center!important}
}

/* iPhone / Pixel portrait lock: no overflow, no giant header, no counter pills. */
@media(max-width:720px){
  #clientView.client-design-two .client-d2-topbar{height:56px!important;min-height:56px!important;padding:0 14px!important;gap:8px!important}
  #clientView.client-design-two .client-d2-brand img{height:27px!important}
  #clientView.client-design-two .client-d2-top-actions{gap:5px!important;margin-left:auto!important}
  #clientView.client-design-two .client-d2-link-button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;display:grid!important;place-items:center!important;font-size:1rem!important}
  #clientView.client-design-two .client-d2-link-button span{display:none!important}
  #clientView.client-design-two .client-language-switcher{height:36px!important;min-height:36px!important;padding:3px 5px!important;border-radius:999px!important}
  #clientView.client-design-two .client-language-switcher select{width:65px!important;min-width:65px!important;max-width:65px!important;font-size:.64rem!important;padding-right:13px!important}

  #clientView.client-design-two .client-d2-story-hero{height:360px!important;min-height:360px!important}
  #clientView.client-design-two .client-d2-story-copy{padding:30px 22px 24px!important}
  #clientView.client-design-two .client-d2-kicker{font-size:.62rem!important;margin-bottom:15px!important}
  #clientView.client-design-two .client-d2-story-copy h1{max-width:285px!important;font-size:2.08rem!important;line-height:1.02!important;margin-bottom:15px!important}
  #clientView.client-design-two .client-d2-story-copy>p{max-width:295px!important;font-size:.76rem!important;line-height:1.5!important}
  #clientView.client-design-two .client-d2-story-logo{max-height:62px!important;padding-top:12px!important}
  #clientView.client-design-two .client-d2-story-logo img{max-height:58px!important}
  #clientView.client-design-two .client-d2-note{margin:-22px 14px 0!important;padding:17px 18px 16px!important;gap:8px!important;border-radius:17px!important}
  #clientView.client-design-two .client-d2-note .client-photographer-note-label{font-size:.98rem!important}
  #clientView.client-design-two .client-d2-note .client-photographer-note-text{font-size:.72rem!important;line-height:1.45!important}
  #clientView.client-design-two .client-d2-note em{font-size:.72rem!important}
  #clientView.client-design-two .client-d2-story-meta{display:grid!important;grid-template-columns:1fr!important;padding:15px 18px 18px!important;gap:0!important}
  #clientView.client-design-two .client-d2-story-meta>div{min-height:44px!important;padding:10px 0!important}
  #clientView.client-design-two .client-d2-story-meta .text-action{min-height:44px!important;padding:10px 0!important;font-size:.68rem!important}

  #clientView.client-design-two .client-d2-workspace{padding:15px 12px 26px!important}
  #clientView.client-design-two .client-d2-project-strip{display:grid!important;grid-template-columns:1fr 1fr!important;margin-bottom:14px!important;border-radius:12px!important}
  #clientView.client-design-two .client-d2-project-strip>*{padding:10px 11px!important}
  #clientView.client-design-two .client-d2-project-meta small{font-size:.5rem!important}
  #clientView.client-design-two .client-d2-project-meta strong{font-size:.73rem!important}
  #clientView.client-design-two .client-d2-project-meta span{font-size:.56rem!important}
  #clientView.client-design-two .client-d2-receipt{margin-bottom:14px!important;padding:11px 12px!important;gap:9px!important}
  #clientView.client-design-two .client-d2-receipt .primary{min-height:44px!important;width:100%!important}
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-bottom:15px!important}
  #clientView.client-design-two .client-d2-limit-card{min-height:78px!important;display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:9px!important;padding:10px!important}
  #clientView.client-design-two .client-d2-limit-star,
  #clientView.client-design-two .client-d2-limit-list{width:32px!important;height:32px!important;font-size:.9rem!important}
  #clientView.client-design-two .client-d2-limit-card strong{font-size:.64rem!important}
  #clientView.client-design-two .client-d2-limit-card b{font-size:.88rem!important}
  #clientView.client-design-two .client-d2-limit-card small{font-size:.54rem!important}

  #clientView.client-design-two .client-d2-gallery-tools{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-bottom:14px!important}
  #clientView.client-design-two .client-d2-filters{
    display:grid!important;grid-template-columns:.85fr 1.45fr .78fr .78fr .78fr!important;gap:5px!important;
    width:100%!important;overflow:visible!important;border:0!important;background:transparent!important;border-radius:0!important;
  }
  #clientView.client-design-two .client-d2-filters button{
    min-width:0!important;min-height:36px!important;padding:7px 4px!important;border:1px solid #ddd8cd!important;border-radius:999px!important;
    font-size:.63rem!important;text-align:center!important;overflow:hidden!important;text-overflow:clip!important;
  }
  #clientView.client-design-two .client-d2-filters button span{font-size:.52rem!important;margin-left:1px!important}
  #clientView.client-design-two .client-d2-sort-view{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:8px!important;width:100%!important}
  #clientView.client-design-two .client-d2-sort-view label{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;min-width:0!important}
  #clientView.client-design-two .client-d2-sort-view label>span{font-size:.61rem!important;font-weight:780!important}
  #clientView.client-design-two .client-d2-sort-view select{width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;font-size:.7rem!important}
  #clientView.client-design-two .client-d2-view-toggle{height:42px!important;border-radius:9px!important}
  #clientView.client-design-two .client-d2-view-toggle button{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;padding:0!important}

  #clientView.client-design-two .client-d2-gallery{grid-template-columns:1fr!important;gap:12px!important}
  #clientView.client-design-two .client-d2-gallery .photo{border-radius:13px!important;box-shadow:0 8px 22px rgba(23,22,18,.045)!important}
  #clientView.client-design-two .client-d2-gallery .photo-media{aspect-ratio:4/3!important}
  #clientView.client-design-two .client-d2-gallery .photo-body{padding:9px 10px 10px!important;gap:8px!important}
  #clientView.client-design-two .client-d2-gallery .photo-name{font-size:.69rem!important}
  #clientView.client-design-two .client-d2-stars{border-radius:8px!important}
  #clientView.client-design-two .client-d2-stars button{min-height:38px!important}

  #clientView.client-design-two .client-d2-summary-column{display:block!important;padding:18px 12px 22px!important;background:#f1eee6!important}
  #clientView.client-design-two #clientStats.client-d2-summary{
    min-height:0!important;position:relative!important;top:auto!important;padding:22px 18px 18px!important;border-radius:19px!important;
  }
  #clientView.client-design-two .client-d2-summary-head h2{font-size:1.2rem!important}
  #clientView.client-design-two .client-d2-summary-head>span{margin:13px 0 12px!important}
  #clientView.client-design-two .client-d2-summary-rows{gap:8px!important}
  #clientView.client-design-two .client-d2-summary-row{grid-template-columns:36px minmax(0,1fr) auto!important;min-height:62px!important;gap:10px!important;padding:10px 11px!important;border-radius:11px!important}
  #clientView.client-design-two .client-d2-summary-star{width:34px!important;height:34px!important;font-size:.94rem!important}
  #clientView.client-design-two .client-d2-summary-label{font-size:.69rem!important}
  #clientView.client-design-two .client-d2-summary-count{min-width:58px!important}
  #clientView.client-design-two .client-d2-summary-count b{font-size:.96rem!important}
  #clientView.client-design-two .client-d2-summary-count b span{font-size:.7rem!important}
  #clientView.client-design-two .client-d2-summary-count small{font-size:.53rem!important}
  #clientView.client-design-two .client-d2-summary-total{margin-top:13px!important;padding:15px 2px 9px!important}
  #clientView.client-design-two .client-d2-summary-total strong{font-size:1.55rem!important}
  #clientView.client-design-two .client-d2-summary-state{margin:4px 2px 9px!important;font-size:.62rem!important}
  #clientView.client-design-two .client-d2-summary .client-summary-action{min-height:50px!important;font-size:.82rem!important}
  #clientView.client-design-two .client-d2-summary-secure{margin-top:10px!important;font-size:.55rem!important}
  #clientView.client-design-two .client-d2-help-card{min-height:0!important;margin-top:12px!important;padding:18px 16px!important;gap:12px!important;border-radius:18px!important}
  #clientView.client-design-two .client-d2-help-icon{width:34px!important;height:34px!important}
  #clientView.client-design-two .client-d2-help-card h3{font-size:1.02rem!important;margin-bottom:5px!important}
  #clientView.client-design-two .client-d2-help-card p{font-size:.66rem!important;line-height:1.45!important;margin-bottom:10px!important}
  #clientView.client-design-two .client-d2-footer{display:grid!important;justify-items:center!important;gap:6px!important;min-height:0!important;padding:14px 14px max(18px,env(safe-area-inset-bottom))!important;font-size:.56rem!important;line-height:1.4!important}
}

@media(max-width:430px){
  #clientView.client-design-two .client-d2-topbar{padding-inline:12px!important}
  #clientView.client-design-two .client-d2-brand img{height:26px!important}
  #clientView.client-design-two .client-d2-story-hero{height:350px!important;min-height:350px!important}
  #clientView.client-design-two .client-d2-story-copy{padding:27px 20px 22px!important}
  #clientView.client-design-two .client-d2-story-copy h1{font-size:2rem!important;max-width:270px!important}
  #clientView.client-design-two .client-d2-note{margin:-20px 12px 0!important;padding:16px!important}
  #clientView.client-design-two .client-d2-workspace{padding-inline:11px!important}
  #clientView.client-design-two .client-d2-filters{grid-template-columns:.82fr 1.5fr .75fr .75fr .75fr!important;gap:4px!important}
  #clientView.client-design-two .client-d2-filters button{font-size:.6rem!important;padding-inline:3px!important}
  #clientView.client-design-two .client-d2-filters button span{font-size:.49rem!important}
}

/* V3.8.59.9 summary component reset: re-apply semantic spans after the
   legacy .stats span neutralisation with equal/higher specificity. */
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-head>span{
  display:block!important;width:24px!important;height:2px!important;border-radius:0!important;
  margin:17px 0 16px!important;padding:0!important;background:var(--d2-lime)!important;
}
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-star{
  display:grid!important;width:38px!important;height:38px!important;place-items:center!important;
  border-radius:50%!important;padding:0!important;background:rgba(130,181,25,.14)!important;
  border:1px solid rgba(130,181,25,.32)!important;color:#92cb00!important;font-size:1rem!important;
}
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-row.rating-4 .client-d2-summary-star{
  background:rgba(241,173,21,.11)!important;border-color:rgba(241,173,21,.28)!important;color:#f1ad15!important;
}
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-row.rating-3 .client-d2-summary-star{
  background:rgba(230,88,80,.11)!important;border-color:rgba(230,88,80,.28)!important;color:#e65850!important;
}
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-count b span,
#clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-total>span{
  display:inline!important;border-radius:0!important;padding:0!important;background:none!important;
}
@media(max-width:720px){
  #clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-head>span{margin:13px 0 12px!important}
  #clientView.client-design-two #clientStats.client-d2-summary .client-d2-summary-star{width:34px!important;height:34px!important;font-size:.94rem!important}
}

/* ================================================================
   GaliVue V3.8.59.10 — Original Design 2 final composition
   The approved Design 2 artwork is the visual source of truth.
   Presentation only: project/rating/submit/delivery APIs are untouched.
   ================================================================ */

/* New semantic rows introduced by the approved left information card. */
#clientView.client-design-two .client-d2-story-meta-row{
  color:#60645b!important;
}
#clientView.client-design-two .client-d2-story-meta-row>span{
  flex:0 0 28px!important;width:28px!important;height:28px!important;display:grid!important;place-items:center!important;
  border-radius:50%!important;background:#f3f8df!important;color:#659400!important;font-size:.88rem!important;font-weight:900!important;
}
#clientView.client-design-two .client-d2-story-meta-row>div{min-width:0!important;flex:1!important}
#clientView.client-design-two .client-d2-story-meta-row p{margin:0!important}
#clientView.client-design-two .client-d2-story-meta-row strong{color:#252722!important}
#clientView.client-design-two .client-d2-meta-due>div{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:12px!important;row-gap:2px!important;
}
#clientView.client-design-two .client-d2-meta-due p{grid-column:1!important;font-size:.69rem!important}
#clientView.client-design-two .client-d2-meta-due strong{grid-column:2!important;grid-row:1!important;font-size:.72rem!important;text-align:right!important}
#clientView.client-design-two .client-d2-meta-due small{grid-column:2!important;grid-row:2!important;font-size:.56rem!important;text-align:right!important;color:#777a71!important}
#clientView.client-design-two .client-d2-meta-help>div{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:10px!important;row-gap:5px!important;
}
#clientView.client-design-two .client-d2-meta-help p{grid-column:1!important;font-size:.69rem!important}
#clientView.client-design-two .client-d2-meta-help .text-action{
  grid-column:2!important;grid-row:1!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;
  justify-content:flex-end!important;text-align:right!important;font-size:.67rem!important;color:#5d8700!important;white-space:nowrap!important;
}
#clientView.client-design-two .client-d2-meta-help small{
  grid-column:1/-1!important;grid-row:2!important;display:block!important;margin:0!important;font-size:.58rem!important;line-height:1.45!important;color:#777a71!important;
}

/* Important photographer note: one restrained pulse, then a calm red accent. */
#clientView.client-design-two .client-d2-note.is-important{
  border:1px solid rgba(211,64,57,.48)!important;
  box-shadow:0 0 0 3px rgba(211,64,57,.08),0 14px 34px rgba(211,64,57,.12)!important;
  animation:gvD2ImportantNote 1.25s ease-in-out 2!important;
}
#clientView.client-design-two .client-d2-note.is-important .client-photographer-note-label:before{color:#d34840!important}
@keyframes gvD2ImportantNote{
  0%,100%{box-shadow:0 0 0 3px rgba(211,64,57,.08),0 14px 34px rgba(211,64,57,.12)}
  50%{box-shadow:0 0 0 7px rgba(211,64,57,.13),0 16px 38px rgba(211,64,57,.18)}
}
@media(prefers-reduced-motion:reduce){#clientView.client-design-two .client-d2-note.is-important{animation:none!important}}

#clientView.client-design-two .client-d2-filters button.is-disabled,
#clientView.client-design-two .client-d2-filters button:disabled{
  opacity:.4!important;cursor:not-allowed!important;background:#f7f5ef!important;color:#8d8d88!important;
}

/* The right help card is one composed card, including its signature artwork. */
#clientView.client-design-two .client-d2-help-card{
  display:grid!important;grid-template-columns:1fr!important;align-content:start!important;
}
#clientView.client-design-two .client-d2-help-main{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
#clientView.client-design-two .client-d2-help-signature{
  width:100%!important;min-height:112px!important;margin-top:8px!important;padding:20px 10px 8px!important;
  border-top:1px solid rgba(255,255,255,.11)!important;display:grid!important;place-items:center!important;overflow:hidden!important;
}
#clientView.client-design-two .client-d2-help-signature img{display:block;max-width:88%!important;max-height:92px!important;object-fit:contain!important;filter:grayscale(1) brightness(.8)!important;opacity:.68!important}
#clientView.client-design-two .client-d2-help-signature span{
  display:block!important;text-align:center!important;color:rgba(255,255,255,.27)!important;
  font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive!important;font-size:1.42rem!important;line-height:1.08!important;
  font-style:italic!important;transform:rotate(-5deg)!important;letter-spacing:.01em!important;
}

/* Full desktop: match the approved 27 / 53 / 20 visual hierarchy. */
@media(min-width:1181px){
  #clientView.client-design-two .client-d2-layout{
    grid-template-columns:clamp(350px,27.25vw,505px) minmax(0,1fr) clamp(300px,20.2vw,385px)!important;
    align-items:start!important;min-height:0!important;background:#fbfaf6!important;
  }
  #clientView.client-design-two .client-d2-story{
    align-self:start!important;height:auto!important;min-height:0!important;padding-bottom:30px!important;background:#f1eee6!important;
  }
  #clientView.client-design-two .client-d2-workspace{align-self:start!important;min-height:0!important;padding:24px 24px 30px!important}
  #clientView.client-design-two .client-d2-summary-column{
    align-self:start!important;height:auto!important;min-height:0!important;padding:24px 22px 30px!important;background:#fbfaf6!important;
  }

  /* Approved photographer story card: white note + pale information footer. */
  #clientView.client-design-two .client-d2-note{
    margin:-34px 38px 0!important;border-radius:18px 18px 0 0!important;border-bottom:0!important;
    box-shadow:0 10px 28px rgba(31,30,23,.055)!important;
  }
  #clientView.client-design-two .client-d2-story-meta{
    margin:0 38px!important;padding:6px 22px 17px!important;gap:0!important;background:linear-gradient(180deg,#f7f9ec 0%,#f2f6df 100%)!important;
    border-radius:0 0 18px 18px!important;box-shadow:0 14px 28px rgba(31,30,23,.055)!important;
  }
  #clientView.client-design-two .client-d2-story-meta>div{min-height:54px!important;padding:12px 0!important;border-top:1px solid #e3e4d9!important}
  #clientView.client-design-two .client-d2-story-meta>div:first-child{border-top:0!important}

  #clientView.client-design-two .client-d2-project-strip{min-height:92px!important;margin-bottom:22px!important}
  #clientView.client-design-two .client-d2-rules{min-height:92px!important;margin-bottom:22px!important}
  #clientView.client-design-two .client-d2-gallery-tools{margin-bottom:18px!important}

  #clientView.client-design-two #clientStats.client-d2-summary{
    position:sticky!important;top:18px!important;min-height:0!important;height:auto!important;padding:30px 24px 24px!important;
  }
  #clientView.client-design-two .client-d2-summary-rows{gap:12px!important}
  #clientView.client-design-two .client-d2-summary-row{min-height:74px!important}
  #clientView.client-design-two .client-d2-summary-total{margin-top:20px!important;padding-top:22px!important}
  #clientView.client-design-two .client-d2-help-card{
    min-height:0!important;height:auto!important;margin-top:18px!important;padding:23px 21px 20px!important;
  }
}

/* Laptop and split-screen: never stretch a side panel to another column's height. */
@media(max-width:1180px) and (min-width:981px){
  #clientView.client-design-two .client-d2-layout{
    display:grid!important;grid-template-columns:minmax(300px,34%) minmax(0,66%)!important;
    grid-auto-rows:auto!important;align-items:start!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-story,
  #clientView.client-design-two .client-d2-workspace,
  #clientView.client-design-two .client-d2-summary-column{
    align-self:start!important;height:auto!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-story{grid-column:1!important;grid-row:1!important;padding-bottom:0!important}
  #clientView.client-design-two .client-d2-workspace{grid-column:2!important;grid-row:1 / span 2!important}
  #clientView.client-design-two .client-d2-summary-column{
    grid-column:1!important;grid-row:2!important;display:block!important;padding:18px 22px 26px!important;background:#f1eee6!important;
  }
  #clientView.client-design-two #clientStats.client-d2-summary{position:relative!important;top:auto!important;height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-summary-total{margin-top:16px!important}
  #clientView.client-design-two .client-d2-help-card{height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-help-signature{min-height:96px!important}
  #clientView.client-design-two .client-d2-note{margin:-30px 24px 0!important}
  #clientView.client-design-two .client-d2-story-meta{margin:0!important}
}

/* Tablet portrait: vertical flow, content-height cards, no blank cream/white slabs. */
@media(max-width:980px) and (min-width:721px){
  #clientView.client-design-two .client-d2-layout{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:0!important}
  #clientView.client-design-two .client-d2-story,
  #clientView.client-design-two .client-d2-workspace,
  #clientView.client-design-two .client-d2-summary-column{
    flex:none!important;align-self:stretch!important;width:100%!important;height:auto!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-story{display:block!important;padding-bottom:0!important}
  #clientView.client-design-two .client-d2-summary-column{
    display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr)!important;align-items:start!important;gap:16px!important;
  }
  #clientView.client-design-two #clientStats.client-d2-summary{position:relative!important;top:auto!important;height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-help-card{height:auto!important;min-height:0!important;margin-top:0!important}
  #clientView.client-design-two .client-d2-help-signature{min-height:96px!important}
}

/* Phone / very narrow split-screen: preserve the approved iPhone flow and
   explicitly remove every inherited stretch/min-height that caused blank zones. */
@media(max-width:720px){
  #clientView.client-design-two .client-d2-layout{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:0!important;height:auto!important;
  }
  #clientView.client-design-two .client-d2-story,
  #clientView.client-design-two .client-d2-workspace,
  #clientView.client-design-two .client-d2-summary-column{
    flex:0 0 auto!important;align-self:stretch!important;width:100%!important;height:auto!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-story{display:block!important;padding-bottom:0!important}
  #clientView.client-design-two .client-d2-story-meta{height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-summary-column{
    display:block!important;padding:18px 12px 22px!important;background:#f1eee6!important;
  }
  #clientView.client-design-two #clientStats.client-d2-summary{
    position:relative!important;top:auto!important;height:auto!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-summary-total{margin-top:13px!important}
  #clientView.client-design-two .client-d2-help-card{height:auto!important;min-height:0!important;margin-top:12px!important}
  #clientView.client-design-two .client-d2-help-main{grid-template-columns:34px minmax(0,1fr)!important;gap:12px!important}
  #clientView.client-design-two .client-d2-help-signature{min-height:82px!important;margin-top:7px!important;padding:16px 8px 5px!important}
  #clientView.client-design-two .client-d2-help-signature span{font-size:1.18rem!important}

  /* Keep the already-approved phone story presentation; metadata remains compact. */
  #clientView.client-design-two .client-d2-meta-due>div{grid-template-columns:minmax(0,1fr) auto!important}
  #clientView.client-design-two .client-d2-meta-help>div{grid-template-columns:minmax(0,1fr) auto!important}
  #clientView.client-design-two .client-d2-meta-help .text-action{font-size:.62rem!important}
  #clientView.client-design-two .client-d2-meta-help small{font-size:.55rem!important}
}

/* At tiny phone widths allow the help row action to sit under its title rather
   than forcing horizontal overflow. */
@media(max-width:390px){
  #clientView.client-design-two .client-d2-meta-help>div{grid-template-columns:1fr!important}
  #clientView.client-design-two .client-d2-meta-help p,
  #clientView.client-design-two .client-d2-meta-help .text-action,
  #clientView.client-design-two .client-d2-meta-help small{grid-column:1!important;grid-row:auto!important;text-align:left!important;justify-content:flex-start!important}
}
#clientView.client-design-two .client-d2-help-signature .hidden{display:none!important}
/* Approved tier palette needs ID-level specificity because the historical
   generic 5★ rule used #clientView and otherwise wins the cascade. */
#clientView.client-design-two .client-d2-limit-card.rating-5 .client-d2-limit-star{
  background:#f0f7d6!important;border-color:#bfd878!important;color:#5f8d00!important;
}
#clientView.client-design-two .client-d2-limit-card.rating-4 .client-d2-limit-star{
  background:#fff5df!important;border-color:#f1ce7d!important;color:#e79b00!important;
}
#clientView.client-design-two .client-d2-limit-card.rating-3 .client-d2-limit-star{
  background:#fff0ef!important;border-color:#eeb4af!important;color:#dd4f48!important;
}
#clientView.client-design-two .client-d2-limit-card.total .client-d2-limit-list{
  background:#20211d!important;border-color:#20211d!important;color:#fff!important;
}

@media(min-width:1181px){
  #clientView.client-design-two .client-d2-help-card{padding:20px 20px 16px!important}
  #clientView.client-design-two .client-d2-help-main{grid-template-columns:40px minmax(0,1fr)!important;gap:13px!important}
  #clientView.client-design-two .client-d2-help-card h3{margin:0 0 6px!important}
  #clientView.client-design-two .client-d2-help-card p{margin:0 0 11px!important;line-height:1.45!important}
  #clientView.client-design-two .client-d2-help-signature{min-height:72px!important;margin-top:6px!important;padding:13px 8px 3px!important}
  #clientView.client-design-two .client-d2-help-signature span{font-size:1.12rem!important}
}
@media(max-width:980px) and (min-width:721px){
  #clientView.client-design-two .client-language-switcher{
    width:auto!important;height:38px!important;min-height:38px!important;max-height:38px!important;
    padding:3px 6px!important;box-sizing:border-box!important;align-self:center!important;
  }
  #clientView.client-design-two .client-language-switcher select{
    width:68px!important;min-width:68px!important;max-width:68px!important;height:30px!important;min-height:30px!important;
    padding-top:2px!important;padding-bottom:2px!important;font-size:.66rem!important;
  }
}
/* Keep the approved single-row controls readable at normal desktop widths. */
@media(min-width:1321px){
  #clientView.client-design-two .client-d2-filters{flex:1 1 auto!important;min-width:0!important}
  #clientView.client-design-two .client-d2-filters button{
    min-width:0!important;padding:8px 6px!important;font-size:.64rem!important;overflow:hidden!important;
  }
  #clientView.client-design-two .client-d2-filters button span{font-size:.54rem!important}
  #clientView.client-design-two .client-d2-sort-view{gap:5px!important}
  #clientView.client-design-two .client-d2-sort-view label{gap:4px!important;font-size:.6rem!important}
  #clientView.client-design-two .client-d2-sort-view select{width:100px!important;min-width:100px!important;max-width:100px!important;padding-left:7px!important;padding-right:20px!important;font-size:.62rem!important}
  #clientView.client-design-two .client-d2-view-toggle button{width:32px!important;min-width:32px!important;min-height:36px!important;padding:6px!important}
}

/* Below 1321px, preserve hierarchy as a two-column laptop composition rather
   than squeezing the approved three-column desktop into unreadable controls. */
@media(max-width:1320px) and (min-width:981px){
  #clientView.client-design-two .client-d2-layout{
    display:grid!important;grid-template-columns:minmax(300px,34%) minmax(0,66%)!important;grid-auto-rows:auto!important;
    align-items:start!important;min-height:0!important;
  }
  #clientView.client-design-two .client-d2-story{grid-column:1!important;grid-row:1!important;align-self:start!important;height:auto!important;min-height:0!important;padding-bottom:0!important}
  #clientView.client-design-two .client-d2-workspace{grid-column:2!important;grid-row:1 / span 2!important;align-self:start!important;height:auto!important;min-height:0!important;padding:20px 18px 30px!important}
  #clientView.client-design-two .client-d2-summary-column{grid-column:1!important;grid-row:2!important;align-self:start!important;height:auto!important;min-height:0!important;display:block!important;padding:18px 22px 26px!important;background:#f1eee6!important}
  #clientView.client-design-two #clientStats.client-d2-summary{position:relative!important;top:auto!important;height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-help-card{height:auto!important;min-height:0!important}
  #clientView.client-design-two .client-d2-story-hero{height:440px!important;min-height:440px!important}
  #clientView.client-design-two .client-d2-note{margin:-30px 24px 0!important}
  #clientView.client-design-two .client-d2-story-meta{margin:0!important}
  #clientView.client-design-two .client-d2-project-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-project-strip>*:nth-child(2){border-right:0!important}
  #clientView.client-design-two .client-d2-project-strip>*:nth-child(-n+2){border-bottom:1px solid #eeeae1!important}
  #clientView.client-design-two .client-d2-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #clientView.client-design-two .client-d2-gallery-tools{display:flex!important;align-items:center!important;gap:8px!important}
  #clientView.client-design-two .client-d2-filters{flex:1 1 auto!important;min-width:0!important}
  #clientView.client-design-two .client-d2-filters button{min-width:0!important;padding:8px 6px!important;font-size:.62rem!important;overflow:hidden!important}
  #clientView.client-design-two .client-d2-filters button span{font-size:.52rem!important}
  #clientView.client-design-two .client-d2-sort-view{flex:0 0 auto!important;gap:5px!important}
  #clientView.client-design-two .client-d2-sort-view label{gap:4px!important;font-size:.59rem!important}
  #clientView.client-design-two .client-d2-sort-view select{width:96px!important;min-width:96px!important;max-width:96px!important;padding-left:6px!important;padding-right:18px!important;font-size:.61rem!important}
  #clientView.client-design-two .client-d2-view-toggle button{width:32px!important;min-width:32px!important;min-height:36px!important;padding:6px!important}
}
@media(min-width:1321px){
  #clientView.client-design-two .client-d2-sort-view select{width:110px!important;min-width:110px!important;max-width:110px!important}
}
@media(max-width:1320px) and (min-width:981px){
  #clientView.client-design-two .client-d2-sort-view select{width:106px!important;min-width:106px!important;max-width:106px!important}
}
