*{box-sizing:border-box}input,textarea{font:inherit;color:#263630;background:#fffefa;border:1px solid #cbd0c6;border-radius:3px;width:100%;margin-top:7px;padding:12px}input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #617166}label{font-size:12px;line-height:1.5}a{color:inherit}.primary,.secondary,.text-button{font:inherit;cursor:pointer;border:1px solid #263630;border-radius:3px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:12px 18px;font-size:12px;text-decoration:none;display:inline-flex}.primary{color:#fff;background:#263630}.secondary{color:#263630;background:0 0;border-color:#bfc7bb}.text-button{background:0 0;border-color:#0000;padding:8px}.button-row,.header-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.disabled-link{pointer-events:none;opacity:.4}.checkbox{align-items:center;gap:9px;display:flex}.checkbox input{accent-color:#263630;width:17px;height:17px;margin:0}.message{background:#e4ebdf;border:1px solid #c5d0bc;margin:18px 0;padding:15px 18px;font-size:13px;line-height:1.6}.message.error{background:#f6e8df;border-color:#d6b49d}.access-page,.admin-login{background:radial-gradient(at 80%,#e0e5d9,#0000 60%);flex-direction:column;justify-content:space-between;min-height:100dvh;display:flex}.access-card{width:100%;max-width:530px;margin:8vh auto;padding:40px 0}.access-card h1{font-size:48px;line-height:1.2}.access-card p{color:#667269;font-size:14px;line-height:1.7}.access-card form{gap:22px;margin-top:35px;display:grid}.access-signature{text-align:center;color:#6a786c;margin-bottom:35px;font:italic 18px Georgia,serif}.customer-view{max-width:1700px}.customer-view .workspace{display:block}.customer-view .viewer-column{max-width:1400px;margin:auto}.customer-view .stage{aspect-ratio:2560/1705;width:auto;max-width:100%;max-height:72vh;margin:auto}.customer-view .stage canvas{object-fit:contain}.customer-view nav{scrollbar-width:thin;padding-bottom:5px;overflow-x:auto}.customer-view nav button{text-align:center;flex:none;min-width:112px;min-height:44px}.customer-view aside{background:0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:1400px;margin:auto;padding:25px 0;display:flex}.customer-view fieldset{margin:0}.customer-view .options button{min-width:90px;min-height:44px}.customer-view .export{width:auto;min-height:44px;padding:12px 22px}.customer-view .project-meta{color:#687568;font-size:13px}.customer-view .project-description{max-width:480px;font-size:14px;line-height:1.7}.customer-status{margin:0}.customer-view .frame-label{color:#263630;background:#f4f2ecee}.customer-view .stage{touch-action:pan-y}.expanded-view{max-width:none}.expanded-view .intro{display:none}.expanded-view .stage{max-height:85vh}.admin-shell{max-width:1550px}.admin-shell header a{text-decoration:none}.admin-heading{justify-content:space-between;align-items:center;margin:42px 0 28px;display:flex}.admin-heading h1{font-size:38px}.workflow-strip{color:#6a796d;flex-wrap:wrap;gap:24px;padding:20px 0 28px;font-size:12px;display:flex}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.project-card{text-align:left;color:inherit;background:#faf9f4;border:1px solid #d2d7cb;border-radius:5px;padding:0;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:210px}.project-card>div{padding:24px}.project-card h2{margin-top:20px}.project-card p,.project-card span{font-size:12px}.empty-cover{background:#dfe5d8;place-items:center;height:210px;font:40px Georgia,serif;display:grid}.pill{background:#eeeee6;border:1px solid #cdd2c7;border-radius:20px;padding:5px 9px;font-size:11px;display:inline-block}.pill.published{color:#365532;background:#e2ecdc;border-color:#b9ccb1}.create-project,.admin-panel{background:#faf9f4;border:1px solid #d6d9cf;border-radius:4px;padding:30px}.owner-admin{border:0;margin:0;padding:0}.owner-admin-resource{border:1px solid #bfc7bb;gap:12px;margin:16px 0;padding:18px;display:grid}.owner-admin-import{border-top:1px solid #bfc7bb;margin:24px 0;padding-top:20px}.form-grid{grid-template-columns:1fr 1fr;gap:22px;margin:25px 0;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid small{color:#758071;margin-top:6px;display:block}.project-toolbar{justify-content:space-between;align-items:center;gap:15px;display:flex}.admin-tabs{margin:22px 0 0;overflow:auto}.admin-tabs button{white-space:nowrap;border-bottom:none;min-height:50px}.admin-panel{border-top-left-radius:0;margin-bottom:40px}.panel-heading{justify-content:space-between;align-items:center;gap:25px;display:flex}.version-settings{margin:25px 0}.version-row{border-bottom:1px solid #e1e2d9;grid-template-columns:50px minmax(140px,1fr) 190px 80px;align-items:center;gap:22px;padding:18px 0;display:grid}.version-filter{gap:9px;margin:28px 0 18px;display:flex}.scene-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.scene-card{border:1px solid #d9ddd1;border-radius:3px;overflow:hidden}.scene-card img{object-fit:contain;background:#e4e6dd;width:100%;height:190px}.scene-card>div{padding:16px}.scene-actions{align-items:center;gap:8px;margin-top:10px;display:flex}.scene-actions label{flex:1}.scene-card small{color:#9c493b}.missing-image{color:#786247;background:#ede6da;place-items:center;height:190px;font-size:13px;display:grid}.empty-state{text-align:center;color:#6d7a68;border:1px dashed #c9d0c0;padding:65px 25px}.review-summary{grid-template-columns:repeat(3,1fr);gap:25px;margin:30px 0;display:grid}.review-summary>div{background:#eeeee6;padding:24px}.review-summary strong{margin-bottom:10px;font:34px Georgia,serif;display:block}.review-summary span{color:#63745f;font-size:12px}.local-note{color:#756647;background:#f1ecdf;margin:25px 0;padding:18px;font-size:12px;line-height:1.6}.history-row{border-bottom:1px solid #ddd;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;display:flex}.history-row small{color:#75816e;margin-top:7px;font-size:11px;display:block}.issued-access{background:#eaf0e3;border:1px solid #b8c9ab;margin-top:25px;padding:24px}.issued-access p{font-size:12px}.issued-access .button-row{margin-top:20px}@media (max-width:900px){.project-grid,.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.version-row{grid-template-columns:35px 1fr}.version-row .checkbox{grid-column:2}.customer-view .stage{width:100%;max-height:none}.customer-view .intro{padding:25px 0}.customer-view aside{gap:18px}.admin-heading{gap:20px}.form-grid{gap:16px}}@media (max-width:600px){.project-grid,.scene-grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.admin-heading,.panel-heading,.project-toolbar{flex-direction:column;align-items:start}.admin-heading h1{font-size:30px}.admin-panel,.create-project{padding:20px}.review-summary{gap:8px}.review-summary>div{padding:12px}.review-summary span{font-size:10px}.admin-tabs button{padding:12px 10px;font-size:10px}.customer-view .intro{display:block}.customer-view .project-meta:empty{display:none}.customer-view .options{flex-wrap:wrap}.customer-view .options button{flex:none;min-height:44px}.customer-view .export{margin-left:auto}.access-card{padding:15px}.access-card h1{font-size:38px}.history-row{align-items:start}.workflow-strip{gap:14px}.project-card img{height:200px}}body{color:#263630;background:#f3f1eb;margin:0;font-family:Arial,Helvetica,sans-serif}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,select:focus-visible,.stage:focus-visible,fieldset:focus{outline-offset:4px;outline:3px solid #98743c}main{max-width:1800px;margin:auto;padding:30px 4vw}header{border-bottom:1px solid #cdd0c7;justify-content:space-between;align-items:center;padding-bottom:25px;display:flex}.wordmark{letter-spacing:-1px;font-size:26px}.wordmark span{margin-left:8px;font-size:20px;font-weight:300}.badge,.eyebrow,footer{letter-spacing:2px;font-size:10px}.badge{border:1px solid #b9c0b5;border-radius:20px;padding:8px 12px}.intro{justify-content:space-between;align-items:end;padding:30px 0;display:flex}.eyebrow{color:#617166;margin:0 0 15px}h1{margin:0;font:400 42px Georgia,serif}.notice{color:#667269;font-size:12px;line-height:1.6}.workspace{grid-template-columns:minmax(0,1fr) 285px;gap:30px;display:grid}.stage{aspect-ratio:16/9;background:#d5dcd4;position:relative;overflow:hidden}.stage canvas{width:100%;height:100%;position:absolute;inset:0}.hotspot{color:#fff;background:#263630d9;border:1px solid #ffffffb0;border-radius:50%;width:44px;height:44px;font-size:23px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #ffffff20}.frame-label{letter-spacing:1px;background:#f3f1ebde;padding:8px 12px;font-size:11px;position:absolute;top:20px;left:22px}nav{gap:8px;margin-top:12px;display:flex}nav button{text-align:left;background:0 0;border:1px solid #ced1c8;flex:1;padding:18px 12px;font-size:12px}nav button span{color:#758377;margin-right:12px}nav button[aria-pressed=true]{color:#fff;background:#263630}aside{background:#e9e9e1;padding:25px}h2{margin:0 0 12px;font:25px Georgia,serif}.muted{color:#657168;font-size:12px;line-height:1.6}fieldset{border:0;margin:28px 0;padding:0}legend{margin-bottom:12px;font-size:12px}.options{gap:10px;display:flex}.options button{background:0 0;border:1px solid #c6cbbf;flex:1;padding:8px;font-size:11px}.options button[aria-pressed=true]{background:#f8f7f1;border-color:#263630}.swatch{height:30px;margin-bottom:8px;display:block}.sand{background:#c4bba5}.graphite{background:#62696b}.oak{background:#b58b57}.walnut{background:#72513b}.export{color:#fff;background:#263630;border:0;width:100%;padding:14px;font-size:11px}details{margin-top:22px;font-size:11px;line-height:1.8}select{width:100%;margin-top:10px;padding:5px;display:block}summary{cursor:pointer}[role=status]{color:#647468;font-size:10px}footer{color:#667269;justify-content:space-between;padding:25px 0;font-size:9px;display:flex}@media (max-width:900px){.workspace{grid-template-columns:1fr}.intro{align-items:start;gap:15px}h1{font-size:30px}.notice{max-width:180px}aside{padding:22px}.options button{min-height:70px}footer{gap:20px;line-height:1.7}}@media (max-width:520px){main{padding:20px 16px}.intro{padding:24px 0;display:block}.notice{max-width:none}.frame-label{padding:5px;font-size:9px;top:8px;left:8px}nav button{padding:15px 7px;font-size:10px}nav button span{margin-right:5px}.wordmark{font-size:24px}.wordmark span{font-size:17px}.badge{font-size:8px}.hotspot{width:44px;height:44px}}
.gallery-client{--paper:#f1efe7;--ink:#263731;max-width:none;min-height:100dvh;color:var(--paper);isolation:isolate;background:#17211e;margin:0;padding:0;font-family:Arial,sans-serif;position:relative;overflow-x:clip}.gallery-client [hidden]{display:none!important}.gallery-client button{font:inherit;cursor:pointer;min-height:44px;color:inherit;background:0 0;border:1px solid #ffffff40;border-radius:0;padding:10px 16px;font-size:12px;transition:background .15s,border-color .15s}.gallery-client button:hover{background:#ffffff15}.gallery-client button:disabled{cursor:default;opacity:.4}.gallery-client button:focus-visible,.gallery-stage:focus-visible{outline-offset:3px;outline:2px solid #c4d8a8}.gallery-client-header{z-index:5;box-sizing:border-box;border-bottom:1px solid #ffffff25;justify-content:space-between;align-items:center;gap:20px;height:70px;margin:0;padding:12px 4vw;display:flex;position:relative}.gallery-wordmark{white-space:nowrap;font:28px Georgia,serif}.gallery-wordmark span{text-transform:uppercase;letter-spacing:.22em;margin-left:10px;font:10px Arial,sans-serif}.gallery-project-location{letter-spacing:.05em;font-size:11px}.gallery-header-actions{align-items:center;gap:14px;display:flex}.gallery-client .gallery-text-action{white-space:nowrap;border:0;padding:8px 0}.gallery-client-tabs{z-index:10;gap:8px;display:flex;position:fixed;top:92px;right:4vw}.gallery-client .gallery-client-tabs button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#17211eeb;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-width:120px;padding:12px 24px;display:flex}.gallery-client-tabs small{opacity:.65;font-size:9px}.gallery-client .gallery-client-tabs button[aria-selected=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.gallery-client[data-tab=images]{height:100dvh;min-height:0;overflow:hidden}.gallery-photo-area{z-index:-1;margin:0;padding:0;position:absolute;inset:0}.gallery-photo-area[aria-hidden=true]{display:none}.gallery-photo-area:after{content:"";pointer-events:none;background:linear-gradient(#0000 45%,#101b18eb),linear-gradient(#101b1870,#0000 30%);position:absolute;inset:0}.gallery-client .gallery-stage{aspect-ratio:auto;touch-action:none;background:#17211e;border:0;width:100%;max-width:none;height:100%;margin:0;position:relative;overflow:hidden}.gallery-image-transform{transform-origin:50%;position:absolute;inset:0}.gallery-client .gallery-reset-zoom{left:max(16px,env(safe-area-inset-left));z-index:2;background:#17211ed9;font-size:11px;position:absolute;top:50%}.gallery-stage canvas{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery-client[data-fit=contain] .gallery-stage canvas{object-fit:contain}.gallery-client .frame-label{display:none}.gallery-swipe-hint{pointer-events:none;display:none}.gallery-client .gallery-owner-sheet{grid-template-columns:1fr}.owner-area{width:100%;min-width:0;max-width:720px}.owner-area form{flex-wrap:wrap;align-items:end;gap:16px;margin:24px 0;display:flex}.owner-area label{flex-direction:column;flex:240px;gap:8px;font-size:13px;display:flex}.owner-area input{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #aaa;min-height:48px;padding:12px}.gallery-client .owner-area button,.owner-resources a{background:var(--ink);min-height:48px;color:var(--paper);border:1px solid var(--ink);overflow-wrap:anywhere;padding:12px 18px;text-decoration:none}.owner-resources{flex-direction:column;align-items:stretch;gap:12px;margin:24px 0;display:flex}.gallery-client-intro{pointer-events:none;max-width:65vw;position:absolute;bottom:225px;left:4vw}.gallery-client-intro h1{letter-spacing:-.035em;overflow-wrap:anywhere;text-shadow:0 2px 15px #101b1860;margin:0;font:clamp(32px,4.3vw,66px)/1.08 Georgia,serif}.gallery-client-dock{background:linear-gradient(#17211e70,#17211eee);border-top:1px solid #ffffff25;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;align-items:center;gap:16px 24px;padding:20px 4vw 16px;display:grid;position:absolute;inset:auto 0 0}.gallery-navigation{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;display:grid}.gallery-view-heading{flex-direction:column;gap:6px;min-width:0;display:flex}.gallery-view-heading small{letter-spacing:.14em;color:#ced5cb;font-size:9px}.gallery-view-heading strong{white-space:nowrap;text-overflow:ellipsis;font:22px Georgia,serif;overflow:hidden}.gallery-step{gap:4px;display:flex}.gallery-step button{width:44px;padding:0}.gallery-client fieldset{border:0;min-width:0;margin:0;padding:0}.gallery-client legend{letter-spacing:.08em;margin-bottom:7px;padding:0;font-size:10px}.gallery-versions>div{scrollbar-width:thin;gap:6px;display:flex;overflow:auto}.gallery-versions button{white-space:nowrap;align-items:center;gap:10px;display:flex}.gallery-versions small{opacity:.5;font-size:9px}.gallery-versions button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.gallery-save{white-space:nowrap}.gallery-client .gallery-camera-list{scrollbar-width:thin;scrollbar-color:#87988d #ffffff15;grid-column:1/-1;gap:8px;min-width:0;max-width:100%;margin:0;padding:2px 2px 5px;display:flex;overflow:auto hidden}.gallery-client .gallery-camera-list button{text-align:left;background:#17211e85;border-color:#ffffff25;flex-direction:column;flex:0 0 108px;gap:0;min-width:0;padding:0;display:flex}.gallery-client .gallery-camera-list button[aria-pressed=true]{border-color:var(--paper);box-shadow:0 0 0 1px var(--paper)}.gallery-thumbnail{aspect-ratio:16/9;background:#ffffff12;width:100%;display:block;overflow:hidden}.gallery-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.gallery-card-caption{box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;width:100%;padding:7px 8px;font-size:10px;display:block;overflow:hidden}.gallery-card-caption small{opacity:.6;margin-right:7px;font-size:9px}.gallery-client-sheet{background:var(--paper);color:var(--ink);box-sizing:border-box;grid-template-columns:1fr 1.2fr;gap:7vw;min-height:calc(100dvh - 180px);margin:110px 0 0;padding:48px 6vw;display:grid}.gallery-kicker{letter-spacing:.16em;margin:0;font-size:10px}.gallery-client-sheet h2{letter-spacing:-.025em;overflow-wrap:anywhere;margin:24px 0 30px;font:clamp(34px,4.3vw,62px)/1.1 Georgia,serif}.gallery-sheet-signature{font:18px Georgia,serif}.gallery-section-title{margin:0 0 18px;font-size:12px;font-weight:600}.gallery-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font:21px/1.6 Georgia,serif}.gallery-project-summary{border-top:1px solid #26373130;gap:40px;margin-top:36px;padding-top:22px;display:flex}.gallery-project-summary div{flex-direction:column;gap:6px;display:flex}.gallery-project-summary strong{font:32px Georgia,serif}.gallery-project-summary span{color:#516359;font-size:11px}.gallery-story dl{margin-top:32px}.gallery-story dl div{border-top:1px solid #26373130;grid-template-columns:1fr 2fr;gap:20px;padding:18px 0;display:grid}.gallery-story dt{text-transform:uppercase;letter-spacing:.08em;font-size:10px}.gallery-story dd{overflow-wrap:anywhere;margin:0;font-size:13px}.gallery-plan-sheet{grid-template-columns:.7fr 1.3fr;gap:4vw}.gallery-plan-description{margin-bottom:28px;font-size:13px;line-height:1.6}.gallery-plan-sheet fieldset>div{flex-direction:column;gap:8px;display:flex}.gallery-plan-sheet button{text-align:left;border-color:#26373130}.gallery-plan-sheet button:hover{background:#26373110}.gallery-plan-sheet button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.gallery-plan-area{background:#e5e3da;place-items:center;min-width:0;padding:24px;display:grid}.gallery-plan-image{text-align:center;width:100%}.gallery-plan-image img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:68dvh;margin:auto;display:block}.gallery-empty{color:#536158;max-width:400px;font-size:14px;line-height:1.7}.gallery-empty h3{color:var(--ink);margin:0 0 12px;font:24px Georgia,serif}.gallery-empty p{margin:0}.gallery-feedback{z-index:20;text-align:center;max-width:90vw;color:var(--paper);font-size:12px;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}.gallery-feedback p:empty{display:none}.gallery-feedback p,.gallery-feedback [role=alert]{background:#17211ef5;margin:0;padding:12px}.gallery-feedback button{margin-left:12px}.gallery-expanded{z-index:30;position:fixed;inset:0;overflow:hidden}.gallery-expanded .gallery-wordmark,.gallery-expanded .gallery-project-location,.gallery-expanded .gallery-client-tabs,.gallery-expanded .gallery-image-content{display:none!important}.gallery-expanded .gallery-client-header{border:0;justify-content:flex-end}.gallery-expanded .gallery-photo-area:after{display:none}@media (max-width:1000px){.gallery-client-header{padding:10px 3vw}.gallery-project-location{display:none}.gallery-header-actions{gap:12px}.gallery-client-tabs{right:3vw}.gallery-client-dock{gap:12px 16px;padding:16px 3vw 12px}.gallery-client .gallery-camera-list button{flex-basis:92px}.gallery-versions button{gap:6px;padding:8px 10px}.gallery-client-intro{bottom:210px;left:3vw}}@media (orientation:landscape) and (max-height:600px){.gallery-client-header{height:48px;padding:4px 3vw}.gallery-wordmark{font-size:22px}.gallery-wordmark span{margin-left:6px;font-size:8px}.gallery-client .gallery-text-action{font-size:10px}.gallery-client-tabs{gap:6px;top:60px;right:3vw}.gallery-client .gallery-client-tabs button{gap:5px;min-width:88px;min-height:50px;padding:7px 14px;font-size:11px}.gallery-client-intro{max-width:56vw;bottom:152px;left:3vw}.gallery-client-intro h1{font-size:clamp(22px,3.1vw,34px)}.gallery-client-dock{gap:8px 14px;padding:10px 3vw 8px}.gallery-view-heading{gap:4px}.gallery-view-heading strong{font-size:17px}.gallery-client .gallery-camera-list button{flex-basis:78px}.gallery-thumbnail{aspect-ratio:2}.gallery-card-caption{padding:5px 6px;font-size:9px}.gallery-card-caption small{margin-right:4px}.gallery-client legend{margin-bottom:5px}.gallery-versions button{padding:6px 8px;font-size:10px}.gallery-client-sheet{gap:4vw;min-height:calc(100dvh - 126px);margin-top:78px;padding:24px 4vw}.gallery-client-sheet h2{margin:14px 0 20px;font-size:30px}.gallery-description{font-size:17px}.gallery-story dl{margin-top:18px}.gallery-story dl div{padding:12px 0}.gallery-project-summary{margin-top:20px;padding-top:14px}.gallery-plan-area{padding:12px}.gallery-plan-image img{max-height:62dvh}}@media (orientation:portrait) and (max-width:800px){.gallery-client-header{gap:10px;height:64px;padding:8px 5vw}.gallery-wordmark{font-size:23px}.gallery-wordmark span{margin-left:6px;font-size:8px}.gallery-header-actions{gap:8px}.gallery-client .gallery-text-action{white-space:normal;text-align:right;max-width:86px;font-size:9px}.gallery-client-tabs{gap:6px;width:90vw;top:80px;right:5vw}.gallery-client .gallery-client-tabs button{flex:1;min-width:0;padding:10px 15px;font-size:11px}.gallery-client-intro{max-width:90vw;bottom:282px;left:5vw}.gallery-client-intro h1{font-size:32px}.gallery-client-dock{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:16px 5vw}.gallery-navigation{grid-column:1/-1}.gallery-versions{grid-column:1}.gallery-save{grid-column:2;padding:8px!important;font-size:10px!important}.gallery-versions button{padding:8px;font-size:10px}.gallery-versions small{display:none}.gallery-client .gallery-camera-list button{flex-basis:100px}.gallery-client-sheet{grid-template-columns:1fr;gap:30px;min-height:calc(100dvh - 160px);margin-top:96px;padding:30px 6vw}.gallery-client-sheet h2{margin:20px 0 24px;font-size:38px}.gallery-description{font-size:19px}.gallery-project-summary{margin-top:24px}.gallery-plan-sheet fieldset>div{flex-flow:wrap}.gallery-plan-area{min-height:260px;padding:16px}}@media (prefers-reduced-motion:reduce){.gallery-client button{transition:none}}.gallery-client{overflow-anchor:none;height:100dvh;min-height:0;position:fixed;inset:0;overflow:hidden}.gallery-client-sheet{overscroll-behavior:contain;scrollbar-gutter:stable;align-content:start;min-height:0;margin:0;position:absolute;inset:180px 0 0;overflow-y:auto}.gallery-client .gallery-camera-list,.gallery-versions>div{overscroll-behavior-x:contain;touch-action:pan-x}.gallery-client-header{padding-left:max(4vw,env(safe-area-inset-left));padding-right:max(4vw,env(safe-area-inset-right))}.gallery-client-dock{padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:max(4vw,env(safe-area-inset-left));padding-right:max(4vw,env(safe-area-inset-right))}@media (orientation:landscape) and (max-height:600px){.gallery-client-sheet{min-height:0;margin:0;inset:126px 0 0}.gallery-client-dock{padding-bottom:max(8px,env(safe-area-inset-bottom))}}@media (orientation:portrait) and (max-width:1024px){.gallery-client-sheet{grid-template-columns:1fr;gap:28px;min-height:0;margin:0;inset:160px 0 0}.gallery-client-tabs{gap:6px;width:90vw;top:80px;right:5vw}.gallery-client .gallery-client-tabs button{flex:1;min-width:0;padding:10px 15px}.gallery-plan-sheet fieldset>div{flex-flow:wrap}.gallery-plan-image img{max-height:56dvh}}@media (orientation:landscape) and (max-height:380px){.gallery-client-intro{bottom:145px}.gallery-client-intro h1{max-width:50vw;max-height:58px;overflow:hidden;font-size:26px!important}.gallery-client-dock{gap:6px 12px}.gallery-client .gallery-camera-list button{flex-basis:72px}.gallery-card-caption{padding:4px 5px}}@media (max-width:600px),(orientation:landscape) and (max-width:1000px) and (max-height:500px){.gallery-swipe-hint{left:max(16px,env(safe-area-inset-left));bottom:calc(148px + env(safe-area-inset-bottom));color:var(--paper);background:#17211ed9;padding:5px 8px;font-size:11px;line-height:1.3;display:block;position:absolute}.gallery-client .gallery-camera-list{display:none}.gallery-client-header{gap:8px;height:56px;padding-top:6px;padding-bottom:6px}.gallery-wordmark .ipro-brand img{width:54px}.gallery-wordmark .ipro-brand-product{display:none}.gallery-header-actions{gap:12px}.gallery-client .gallery-text-action{white-space:normal;max-width:96px;font-size:11px;line-height:1.3}.gallery-client-tabs{top:64px;left:auto;right:max(16px,env(safe-area-inset-right));flex-direction:column;gap:6px;width:96px;position:absolute}.gallery-client .gallery-client-tabs button{flex:1;align-items:center;gap:0;min-width:0;min-height:44px;padding:8px 12px;font-size:12px}.gallery-client-tabs small{display:none}.gallery-client-intro{top:76px;bottom:auto;left:max(16px,env(safe-area-inset-left));max-width:none;right:128px}.gallery-client .gallery-client-intro h1{white-space:nowrap;text-overflow:ellipsis;max-width:none;max-height:none;margin:0;line-height:1.15;overflow:hidden;font-size:24px!important}.gallery-client[data-fit=contain]:not(.gallery-expanded) .gallery-photo-area:after{display:none}.gallery-client-dock{padding:10px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#171717ed;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px}.gallery-navigation{grid-column:1/-1;gap:12px}.gallery-view-heading{gap:3px}.gallery-view-heading strong{font-size:19px}.gallery-step{gap:8px}.gallery-step button{width:48px;min-height:48px;font-size:22px}.gallery-versions{grid-column:1}.gallery-client legend{margin-bottom:4px}.gallery-client .gallery-versions button{height:48px;min-height:48px;padding:8px 12px;font-size:12px}.gallery-versions small{display:none}.gallery-client .gallery-save{grid-column:2;min-height:48px;padding:8px 10px;font-size:11px}.gallery-client-sheet{inset:272px 0 0}.gallery-client[data-fit=contain]:not(.gallery-expanded) .gallery-photo-area{inset:272px 0 calc(148px + env(safe-area-inset-bottom))}}@media (orientation:landscape) and (max-width:1000px) and (max-height:500px){.gallery-swipe-hint{bottom:calc(84px + env(safe-area-inset-bottom))}.gallery-client-header{height:44px}.gallery-wordmark .ipro-brand img{width:48px}.gallery-client-tabs{top:52px}.gallery-client .gallery-client-tabs button{padding:6px 8px;font-size:11px}.gallery-client-intro{top:52px}.gallery-client .gallery-client-intro h1{font-size:21px!important}.gallery-client-dock{padding-top:7px;padding-bottom:max(7px,env(safe-area-inset-bottom));grid-template-columns:minmax(140px,.9fr) minmax(0,1.3fr) auto;align-items:end;gap:10px}.gallery-navigation{grid-column:1}.gallery-versions{grid-column:2}.gallery-client .gallery-save{grid-column:3}.gallery-step{gap:4px}.gallery-step button{width:48px;min-height:48px}.gallery-view-heading strong{font-size:17px}.gallery-client[data-fit=contain]:not(.gallery-expanded) .gallery-photo-area{inset:82px 128px calc(84px + env(safe-area-inset-bottom)) 0}.gallery-client-sheet{inset:82px 128px 0 0}}
@font-face{font-family:League Gothic;src:url(/branding/league-gothic.ttf)format("truetype");font-display:swap;font-weight:400}:root{--ipro-cyan:#00a5c8;--ipro-ink:#171717;--ipro-paper:#fff;--ipro-ui:"Century Gothic","Avenir Next",Arial,sans-serif}body{color:var(--ipro-ink);font-family:var(--ipro-ui);background:#f6f6f6}.ipro-brand{vertical-align:middle;align-items:center;gap:15px;display:inline-flex}.ipro-brand img{object-fit:contain;width:92px;height:auto;display:block}.ipro-brand .ipro-brand-product{font:10px/1.3 var(--ipro-ui);letter-spacing:.17em;text-transform:uppercase;color:inherit;white-space:nowrap;border-left:1px solid #8886;margin:0;padding:9px 0 9px 15px}.wordmark{letter-spacing:normal;text-decoration:none}.access-page,.admin-login{background:radial-gradient(at 80%,#e8f7fb,#0000 60%)}.access-card p,.notice,.access-signature{color:#626262}input,textarea{color:#171717;background:#fff;border-color:#d3d3d3}.primary,.secondary,.text-button{border-color:#171717}.secondary{color:#171717;background:#fff}.message{background:#edf8fb;border-color:#c4e9f2}.primary,.primary:hover{color:#fff;background:#171717;border-color:#171717}.primary:hover{background:#333}.eyebrow{color:#007d97}input:focus-visible,textarea:focus-visible,button:focus-visible,select:focus-visible,.stage:focus-visible{outline-color:var(--ipro-cyan)}h1,.admin-heading h1,.access-card h1,.project-card h2{letter-spacing:.01em;font-family:League Gothic,Arial,sans-serif}.gallery-client{--paper:#fff;--ink:#171717;font-family:var(--ipro-ui);background:#171717}.gallery-client .gallery-stage{background:#171717}.gallery-client .gallery-client-tabs button{background:#171717eb}.gallery-client .gallery-client-tabs button[aria-selected=true]{color:#171717;background:#fff}.gallery-client-intro h1,.gallery-client-sheet h2,.gallery-view-heading strong,.gallery-project-summary strong,.gallery-empty h3{letter-spacing:.01em;font-family:League Gothic,Arial,sans-serif}.gallery-client-intro h1{font-size:clamp(38px,5vw,74px)}.gallery-description,.gallery-sheet-signature{font-family:var(--ipro-ui)}.gallery-view-heading small{color:#eee}.gallery-client .gallery-camera-list button[aria-pressed=true]{border-color:var(--ipro-cyan);box-shadow:0 0 0 1px var(--ipro-cyan)}.gallery-client .gallery-versions button[aria-pressed=true]{border-bottom:3px solid var(--ipro-cyan)}.gallery-client .gallery-save{color:#171717;background:#fff;border-color:#fff}.gallery-client .gallery-save:hover{background:#e8faff}.gallery-client-dock{background:linear-gradient(#17171780,#171717f5)}.gallery-photo-area:after{background:linear-gradient(#0000 45%,#000d),linear-gradient(#0007,#0000 30%)}.gallery-client .gallery-camera-list button{background:#17171785}.gallery-feedback p,.gallery-feedback [role=alert],.gallery-feedback>div[role=status]{background:#171717f5;margin:0;padding:12px}.gallery-client-sheet{background:#fff}.gallery-plan-area{background:#f2f2f2}.gallery-client button:focus-visible,.gallery-stage:focus-visible{outline-color:var(--ipro-cyan)}@media (orientation:landscape) and (max-height:600px){.ipro-brand img{width:68px}.ipro-brand{gap:10px}.ipro-brand .ipro-brand-product{padding-left:10px;font-size:8px}.gallery-client-intro h1{font-size:clamp(26px,3.6vw,40px)}}@media (orientation:portrait) and (max-width:800px){.ipro-brand img{width:70px}.ipro-brand{gap:10px}.ipro-brand .ipro-brand-product{padding-left:10px;font-size:8px}.gallery-client-intro h1{font-size:40px}}.access-page input,.admin-login input,.admin-shell input{font-size:16px}.access-page{padding-left:max(4vw,env(safe-area-inset-left));padding-right:max(4vw,env(safe-area-inset-right))}@media (orientation:landscape) and (max-height:600px){.access-page{padding-top:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));justify-content:flex-start}.access-page .ipro-brand img{width:62px}.access-page .access-card{max-width:900px;margin:24px auto 0;padding:8px 0}.access-page .access-card:has(form){grid-template-columns:1fr 1.15fr;align-items:start;gap:12px 32px;display:grid}.access-page .access-card h1{grid-column:1;font-size:36px;line-height:1.15}.access-page .access-card>p{grid-column:1;margin:0;font-size:12px}.access-page .access-card form{grid-area:1/2/span 2;gap:16px;margin:0}}
.gallery-client .project-editorial-sheet{padding:36px 6vw 28px;display:block}.project-editorial{color:#171717;max-width:1250px;font-family:var(--ipro-ui);margin:auto}.project-editorial-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.gallery-client .project-editorial h2{margin:15px 0 12px;font-size:clamp(44px,5vw,66px);line-height:1.04}.project-editorial-address{color:#626262;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.7}.project-editorial-stage{color:#007e99;overflow-wrap:anywhere;border:1px solid #d6ecf1;max-width:220px;margin-top:26px;padding:8px 12px;font-size:11px;line-height:1.6}.project-editorial-accent{background:#00a5c8;width:44px;height:3px;margin:24px 0}.project-editorial-metrics{border-block:1px solid #dedede;flex-wrap:wrap;gap:14px 0;margin:0 0 30px;padding:20px 0;display:flex}.project-editorial-metrics>div{border-left:1px solid #e5e5e5;flex-direction:column-reverse;flex:130px;gap:6px;min-width:0;padding:0 22px;display:flex}.project-editorial-metrics>div:first-child{border:0;padding-left:0}.project-editorial-metrics dt{color:#626262;font-size:11px;line-height:1.5}.project-editorial-metrics dd{overflow-wrap:anywhere;margin:0;font:39px/1.15 League Gothic,Arial,sans-serif}.project-editorial-columns{grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr);gap:44px;display:grid}.project-editorial-columns[data-sidebar=false]{grid-template-columns:minmax(0,1fr)}.project-editorial-columns[data-sidebar=false] .project-editorial-story{max-width:80ch}.project-editorial h3{letter-spacing:.015em;overflow-wrap:anywhere;margin:0 0 15px;font:29px/1.15 League Gothic,Arial,sans-serif}.project-editorial-story{color:#505050;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.85}.project-editorial-features,.project-editorial-custom{margin-top:28px}.project-editorial-features h4{letter-spacing:.12em;color:#737373;text-transform:uppercase;margin:20px 0 10px;font-size:10px;font-weight:400}.project-editorial-features ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.project-editorial-features li{color:#195768;overflow-wrap:anywhere;background:#f0f8fa;border-radius:3px;align-items:center;gap:7px;max-width:100%;padding:7px 10px;font-size:11px;line-height:1.5;display:inline-flex}.project-editorial-features li span{color:#007e99}.project-editorial-features [data-group=conforto] li{color:#515151;background:#f6f6f6}.project-editorial h3.project-editorial-aside-title{font-family:var(--ipro-ui);letter-spacing:.16em;color:#007f99;text-transform:uppercase;margin:3px 0 12px;font-size:10px}.project-editorial-facts{margin:0}.project-editorial-facts>div{border-bottom:1px solid #e7e7e7;grid-template-columns:1fr 1.2fr;gap:14px;padding:12px 0;display:grid}.project-editorial-facts dt{color:#737373;overflow-wrap:anywhere;font-size:11px;line-height:1.6}.project-editorial-facts dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:12px;line-height:1.7}.project-editorial-footer{color:#757575;border-top:1px solid #ddd;justify-content:space-between;gap:12px;margin-top:32px;padding-top:15px;font-size:10px;line-height:1.6;display:flex}.project-location-card{color:#171717;background:#fff;border:1px solid #dce6e8;margin-top:23px;overflow:hidden}.project-location-card iframe{background:#f2f6f7;border:0;width:100%;height:190px;display:block}.project-map-placeholder{color:#171717;background:#f2f6f7;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:165px;padding:18px;display:flex}.project-map-placeholder>span{color:#007e99;font-size:26px}.project-map-placeholder>strong{font-size:12px;font-weight:400}.gallery-client .project-map-placeholder button{color:#007e99;background:#fff;border-color:#d1e2e6;font-size:11px}.project-map-caption{gap:9px;padding:14px;display:grid}.project-map-caption small{letter-spacing:.1em;color:#747474;text-transform:uppercase;font-size:10px}.project-map-caption p{overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.7}.project-map-caption a{color:#007e99;font-size:11px;line-height:1.6}.project-info-admin{margin:26px 0}.project-info-admin fieldset{border:1px solid #ddd;min-width:0;margin:0 0 25px;padding:18px}.project-info-admin legend{padding:0 8px;font-size:13px;font-weight:500}.project-info-admin input,.project-info-admin select,.project-info-admin textarea{max-width:100%;font-size:16px}.project-info-admin select{color:#171717;background:#fff;border:1px solid #ccc;border-radius:3px;width:100%;min-height:44px;padding:10px}.project-feature-menu{background:#fff;border:1px solid #d8d8d8;margin-bottom:11px;position:relative}.project-feature-menu summary{cursor:pointer;min-height:46px;padding:13px 15px;font-size:12px}.project-feature-menu summary span{float:right;color:#747474;margin-left:12px;font-size:11px}.project-feature-menu>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 16px;padding:4px 16px 16px;display:grid}.project-feature-menu>div label{overflow-wrap:anywhere;align-items:center;gap:8px;min-height:40px;font-size:12px;line-height:1.5;display:flex}.project-feature-menu input[type=checkbox]{accent-color:#00a5c8;flex-shrink:0;width:17px;height:17px;min-height:0}.project-custom-feature-form,.project-custom-field{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;align-items:end;gap:12px;margin:15px 0;display:grid}.project-admin-selected{flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.project-admin-selected li{color:#195768;overflow-wrap:anywhere;background:#f0f8fa;align-items:center;gap:8px;max-width:100%;padding:4px 8px;font-size:12px;display:flex}.project-admin-selected button{color:#007e99;background:0 0;border:0;min-width:32px;min-height:40px;font-size:20px}.project-info-admin .muted{font-size:12px;line-height:1.7}@media (max-width:800px){.project-custom-feature-form,.project-custom-field{grid-template-columns:1fr}.project-feature-menu>div{grid-template-columns:1fr 1fr}}@media (max-width:680px),(orientation:portrait) and (max-width:1024px){.gallery-client .project-editorial-sheet{padding:28px 6vw}.project-editorial-columns{grid-template-columns:1fr;gap:30px}.project-editorial-heading{display:block}.project-editorial-stage{margin-top:15px;display:inline-block}.project-editorial-metrics>div{border-left:0;flex:0 0 50%;padding-left:0}.project-editorial-metrics>div:nth-child(2n){border-left:1px solid #ddd;padding-left:20px}.project-editorial-footer{flex-wrap:wrap}}@media (max-width:420px){.project-feature-menu>div{grid-template-columns:1fr}.project-feature-menu summary span{float:none;margin:6px 0 0;display:block}.project-info-admin fieldset{padding:12px}.gallery-client .project-editorial h2{font-size:44px}}
