/* Shared scene vocabulary. The experience provides the only background. */
.shop-scene{height:100%;position:relative;overflow:hidden;color:var(--paper,#e9e1d2)}
.shop-scene .scene-content{height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;padding:104px 5% 90px;scrollbar-width:thin;scrollbar-color:#4b4843 transparent}
.scene-overline{display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:'Barlow Condensed',Arial,sans-serif;font-size:11px;font-weight:500;letter-spacing:2.1px;line-height:1.4;margin:0 0 12px;color:#a29d94;text-transform:uppercase}
.shop-scene-title{font-family:'Archivo Black',Arial Black,Arial,sans-serif;font-size:clamp(48px,6.8vw,112px);line-height:.98;font-weight:900;letter-spacing:-.07em;margin:0;white-space:nowrap}
.shop-scene-title:focus{outline:none}
.scene-letter{display:inline-block}
.scene-script{position:relative;font-family:'Permanent Marker',cursive;color:#ce2630;font-size:clamp(30px,3.25vw,54px);line-height:1;letter-spacing:-.055em;margin:0;transform:rotate(-7deg);width:fit-content}
.scene-ink-line{display:block;position:absolute;left:2%;bottom:-15px;width:95%;height:19px;color:var(--red,#b80d1b);pointer-events:none}
.scene-text-link{display:inline-flex;gap:24px;align-items:center;font-family:'Barlow Condensed',Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:1.7px;line-height:1.4;min-height:44px}
.scene-text-link svg{width:24px;height:24px;flex:0 0 auto;transition:transform .25s}
.scene-text-link:hover{color:#df5d59}.scene-text-link:hover svg{transform:translateX(4px)}
.scene-demo-note{display:block;color:#79756d;font-size:9px;line-height:1.4;letter-spacing:.1px;margin-top:12px}
.studio-content{display:flex;flex-direction:column}.studio-header{flex:0 0 auto}.studio-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;flex:1;min-height:370px;margin-top:16px}.studio-portrait{position:relative;min-height:350px;isolation:isolate;overflow:hidden;border-bottom:1px solid #5d585044}.studio-portrait-type{position:absolute;top:8%;left:0;font-family:'Archivo Black',Arial Black,sans-serif;font-size:clamp(60px,9vw,165px);line-height:.85;letter-spacing:-.09em;color:#272622;z-index:-1}.studio-portrait img{position:absolute;display:block;width:100%;height:126%;bottom:-24%;left:0;object-fit:contain;object-position:center bottom;filter:brightness(.82) contrast(1.03)}.studio-portrait-index{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;font-family:'Barlow Condensed',Arial,sans-serif;font-size:10px;letter-spacing:2px;color:#a8a096;background:linear-gradient(transparent,#101010d9)}.studio-portrait-index>span{font-size:31px;color:#b80d1b;line-height:1}.studio-story{padding:15px 0 6px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.studio-story>.scene-script{margin:0 0 26px 5px}.studio-intro{font-family:'Barlow Condensed',Arial,sans-serif;font-size:clamp(20px,1.8vw,28px);line-height:1.24;margin:0 0 12px;color:#d8d0c2}.studio-intro strong{font-weight:500}.studio-description{font-size:12px;line-height:1.7;color:#a9a39a;max-width:410px;margin:0 0 19px}.studio-promises{margin:0 0 16px;padding:0;list-style:none;width:100%}.studio-promises li{display:flex;gap:20px;border-top:1px solid #625b514d;padding:11px 0}.studio-promises li>span{font-family:'Barlow Condensed',Arial,sans-serif;color:#bd3238;font-size:12px;line-height:1.4}.studio-promises h3{font-family:'Barlow Condensed',Arial,sans-serif;letter-spacing:.4px;font-weight:500;font-size:16px;margin:0 0 3px}.studio-promises p{font-size:10px;line-height:1.4;color:#8e8980;margin:0}.studio-story>.scene-text-link{border-bottom:1px solid #776c5a77;width:100%;justify-content:space-between}
.gallery-content{display:flex;flex-direction:column}.gallery-header{flex:0 0 auto}.gallery-title-row{display:flex;justify-content:space-between;gap:36px;align-items:flex-start}.gallery-title-row .shop-scene-title{font-size:clamp(45px,5.9vw,98px)}.gallery-title-row>.scene-script{font-size:clamp(22px,2.2vw,36px);white-space:nowrap;margin-top:8px;margin-right:10px}.gallery-grid{flex:1;min-height:300px;display:grid;grid-template-columns:1.14fr .86fr 1fr;grid-template-rows:1fr 1fr;gap:18px 24px;margin:30px 0 23px}.gallery-tile{display:flex;flex-direction:column;min-height:0;min-width:0;text-align:left;border:0;background:none;padding:0;color:var(--paper);cursor:pointer}.gallery-image-frame{position:relative;display:block;overflow:hidden;isolation:isolate;flex:1;min-height:95px;width:100%;background:#211e19}.scene-sprite{position:absolute;inset:0;display:block;background-image:url('/acomply-websites/assets/service-portfolio.webp');background-size:400% 200%;background-repeat:no-repeat}.gallery-image-frame .scene-sprite{width:100%;height:auto;aspect-ratio:1;inset:auto 0;top:50%;transform:translateY(-50%);filter:saturate(.45) brightness(.84);transition:filter .5s,scale .6s}.gallery-tile:hover .scene-sprite{filter:saturate(.8) brightness(.98);scale:1.04}.gallery-open{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:29px;height:29px;border:1px solid #d5c7b271;color:#e9e1d2;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;background:#16151380}.gallery-open svg{width:15px;height:15px}.gallery-tile:hover .gallery-open,.gallery-tile:focus-visible .gallery-open{opacity:1;transform:translateY(0)}.gallery-tile-caption{display:flex;gap:12px;justify-content:space-between;align-items:baseline;font-family:'Barlow Condensed',Arial,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:1.4px;padding-top:9px;flex:0 0 auto}.gallery-tile-caption>span:last-child{font-size:10px;color:#8b7d6c}.gallery-tile-1 .gallery-image-frame,.gallery-tile-4 .gallery-image-frame{clip-path:polygon(0 0,100% 0,100% 96%,0 100%)}.gallery-tile-2{padding-top:14px}.gallery-tile-3{padding-bottom:12px}.gallery-tile-5{padding-top:8px}.gallery-tile-6{padding-bottom:8px}.gallery-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #625b514d;padding-top:14px;flex:0 0 auto}.gallery-foot p{display:flex;flex-direction:column;gap:6px;font-size:9px;line-height:1.5;color:#817b72;margin:0}.gallery-reference-label{font-family:'Barlow Condensed',Arial,sans-serif;font-size:11px;letter-spacing:1.7px;color:#c0b8aa}.gallery-foot .scene-text-link{white-space:nowrap}
.gallery-lightbox-backdrop{z-index:100;backdrop-filter:blur(15px);background:#080807ed;overflow:auto;overscroll-behavior:contain}.gallery-lightbox{position:relative;width:min(550px,100%);color:var(--paper);padding-top:40px;margin:auto}.gallery-lightbox-close{position:absolute;right:-3px;top:-6px;min-width:44px;min-height:44px;font-size:32px;line-height:1;background:none;border:0;color:var(--paper);cursor:pointer}.gallery-lightbox-image{position:relative;width:min(100%,calc(100dvh - 235px));min-width:160px;aspect-ratio:1;margin:0 auto;background:#171411}.gallery-lightbox-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.gallery-lightbox-meta small{font-family:'Barlow Condensed',Arial,sans-serif;font-size:10px;letter-spacing:2px;color:#b05353}.gallery-lightbox-meta h3{font-family:'Archivo Black',Arial,sans-serif;font-size:24px;font-weight:900;letter-spacing:-.8px;margin:8px 0}.gallery-lightbox-meta p{font-size:12px;color:#aaa195;line-height:1.4;margin:0}.gallery-lightbox-arrows{display:flex;gap:5px}.gallery-lightbox-arrows button{width:44px;height:44px;display:grid;place-items:center;font-size:24px;border:1px solid #6b6254;background:none;color:var(--paper);cursor:pointer}.gallery-lightbox-arrows button:hover{background:#b80d1b}.gallery-lightbox-disclosure{display:block;color:#80786d;line-height:1.5;font-size:9px;margin-top:18px}
.contact-content{display:flex;flex-direction:column}.contact-header{flex:0 0 auto}.contact-header .shop-scene-title{font-size:clamp(42px,6.1vw,101px)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;flex:1;min-height:335px;margin-top:25px}.contact-city-panel{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8px 5% 18px 0;border-right:1px solid #625b514d;overflow:hidden}.contact-city-overline{font-family:'Barlow Condensed',Arial,sans-serif;font-size:11px;letter-spacing:3px;color:#9a9387;margin-bottom:10px}.contact-city-word{font-family:'Archivo Black',Arial Black,sans-serif;line-height:.85;font-weight:900;letter-spacing:0;font-size:clamp(70px,9.9vw,170px);position:relative;display:flex;flex-direction:column;width:fit-content}.contact-city-dot{color:#b80d1b}.contact-city-word>.scene-ink-line{height:26px;width:96%;left:0;bottom:-20px;transform:rotate(-4deg)}.contact-city-script{position:absolute;font-family:'Permanent Marker',cursive;color:#bf2530;font-size:clamp(25px,3vw,48px);line-height:.94;letter-spacing:-.035em;transform:rotate(-10deg);left:29%;bottom:52px;z-index:1;margin:0;text-shadow:0 2px 16px #111}.contact-local-sign{display:flex;align-items:center;gap:14px;margin-top:38px;color:#9f9688}.contact-local-sign>span{font-size:37px;color:#b80d1b}.contact-local-sign p{font-family:'Barlow Condensed',Arial,sans-serif;line-height:1.3;letter-spacing:2px;font-size:10px;margin:0}.contact-details{display:flex;flex-direction:column;justify-content:center;gap:17px;padding-right:5%}.contact-label{display:block;font-family:'Barlow Condensed',Arial,sans-serif;font-size:10px;line-height:1.4;color:#bf5556;letter-spacing:1.7px;margin-bottom:7px}.contact-address h3{font-family:'Barlow Condensed',Arial,sans-serif;font-size:25px;font-weight:500;margin:0 0 6px}.contact-address>p{font-size:12px;line-height:1.6;color:#b6ad9f;margin:0}.contact-address .scene-text-link{min-height:35px;font-size:10px;margin-top:4px;gap:18px}.contact-address .scene-text-link svg{width:17px;height:17px}.contact-schedule{border-top:1px solid #625b514d;padding-top:13px}.contact-hours-text{font-family:'Barlow Condensed',Arial,sans-serif;font-size:16px;line-height:1.4;white-space:pre-line;margin:0;color:#d1c7b7}.contact-hours-list{font-family:'Barlow Condensed',Arial,sans-serif;display:grid;gap:4px;font-size:15px;line-height:1.3;margin:0}.contact-hours-list>div{display:flex;justify-content:space-between;gap:20px}.contact-hours-list dt{color:#a39b8e}.contact-hours-list dd{margin:0;text-align:right}.contact-phone{display:flex;justify-content:space-between;align-items:center;gap:16px}.contact-phone .contact-label{margin:0}.contact-phone>a{font-family:'Barlow Condensed',Arial,sans-serif;font-size:21px;letter-spacing:.5px}.contact-actions{display:flex;flex-direction:column;gap:7px;margin-top:2px}.contact-primary,.contact-secondary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:47px;padding:12px 17px;font-family:'Barlow Condensed',Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:1.5px}.contact-primary{background:var(--paper);color:#171614;border:1px solid var(--paper)}.contact-secondary{color:var(--paper);border:1px solid #655d50}.contact-primary svg,.contact-secondary svg{width:21px;height:21px;flex:0 0 auto}.contact-primary:hover{background:#cfc3af}.contact-secondary:hover{background:#b80d1b;border-color:#b80d1b}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #625b514d;padding-top:15px;margin-top:24px;font-size:8px;line-height:1.5;letter-spacing:1.4px;color:#7f786d;flex:0 0 auto}.contact-bottom>a{display:inline-flex;align-items:center;gap:7px}.contact-bottom svg{width:11px;height:11px}
@media(min-width:1500px){.studio-layout,.contact-layout{max-width:1400px;width:100%;margin-left:auto;margin-right:auto}.studio-story{max-width:560px}.studio-description{font-size:14px}.studio-promises li{padding:14px 0}.studio-promises h3{font-size:19px}.studio-promises p{font-size:12px}.gallery-grid{gap:24px 32px}}
@media(min-width:901px) and (max-height:800px){.shop-scene .scene-content{padding-top:96px;padding-bottom:77px}.shop-scene-title{font-size:clamp(46px,6vw,82px)}.studio-layout{min-height:320px;gap:6%;margin-top:12px}.studio-portrait{min-height:320px}.studio-story{padding:3px 0}.studio-story>.scene-script{font-size:35px;margin-bottom:23px}.studio-intro{font-size:20px;margin-bottom:8px}.studio-description{font-size:11px;margin-bottom:12px}.studio-promises{margin-bottom:8px}.studio-promises li{padding:8px 0}.studio-promises h3{font-size:15px}.scene-demo-note{margin-top:7px;font-size:8px}.gallery-title-row .shop-scene-title{font-size:clamp(42px,5.5vw,78px)}.gallery-grid{min-height:260px;margin-top:20px;margin-bottom:15px;gap:14px 21px}.gallery-foot{padding-top:9px}.contact-layout{margin-top:17px;min-height:310px}.contact-details{gap:12px}.contact-city-script{bottom:44px}.contact-header .shop-scene-title{font-size:clamp(42px,5.8vw,80px)}.contact-label{margin-bottom:5px}.contact-address h3{font-size:23px}.contact-address>p{font-size:11px}.contact-primary,.contact-secondary{min-height:42px;padding:10px 15px}.contact-bottom{margin-top:17px;padding-top:11px}}
@media(max-width:1000px){.shop-scene .scene-content{padding-left:5%;padding-right:5%}.studio-layout{gap:5%}.studio-description{font-size:11px}.studio-promises li{gap:13px}.gallery-title-row{gap:16px}.gallery-title-row>.scene-script{font-size:24px}.gallery-title-row .shop-scene-title{font-size:5.7vw}.contact-layout{gap:6%}.contact-details{padding-right:0}.contact-header .shop-scene-title{font-size:6vw}}
@media(max-width:700px){.shop-scene .scene-content{padding:98px 6% 96px}.scene-overline{font-size:9px;letter-spacing:1.5px;margin-bottom:15px}.scene-overline>span:last-child{text-align:right;max-width:45%}.shop-scene-title{font-size:10.3vw;letter-spacing:-.07em}.studio-layout{grid-template-columns:1fr;gap:25px;min-height:0;margin-top:25px;flex:0 0 auto}.studio-portrait{min-height:310px;height:70vw;max-height:400px;order:1}.studio-portrait-type{font-size:21vw;top:2%}.studio-portrait img{height:132%;width:103%;left:2%;bottom:-29%}.studio-portrait-index{font-size:9px;padding:13px 0}.studio-story{order:2;padding-top:0}.studio-story>.scene-script{font-size:39px;margin-left:4px;margin-bottom:31px}.studio-intro{font-size:24px}.studio-description{font-size:12px;max-width:none;margin-bottom:23px}.studio-promises li{padding:15px 0;gap:22px}.studio-promises h3{font-size:18px}.studio-promises p{font-size:11px}.studio-promises{margin-bottom:16px}.studio-story>.scene-text-link{font-size:12px}.scene-demo-note{font-size:8px;margin-top:14px}.gallery-content{display:block!important}.gallery-title-row{display:block}.gallery-title-row .shop-scene-title{font-size:8.4vw;white-space:nowrap}.gallery-title-row>.scene-script{font-size:30px;line-height:.96;margin:18px 5px 0 auto;transform:rotate(-6deg)}.gallery-title-row>.scene-script br{display:none}.gallery-title-row>.scene-script .scene-ink-line{bottom:-12px;height:14px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:23px 14px;min-height:0;margin-top:35px;margin-bottom:27px}.gallery-image-frame{aspect-ratio:1;flex:0 0 auto;min-height:0}.gallery-tile{padding:0!important}.gallery-tile:nth-child(even){transform:translateY(18px)}.gallery-tile-caption{font-size:10px;letter-spacing:.7px;padding-top:8px;gap:5px}.gallery-tile-caption>span:last-child{font-size:8px}.gallery-image-frame .scene-sprite{height:100%;width:100%;aspect-ratio:1}.gallery-open{opacity:1;transform:none;width:24px;height:24px;right:7px;bottom:7px}.gallery-open svg{width:13px;height:13px}.gallery-foot{padding-top:18px;align-items:flex-start;flex-direction:column;gap:15px}.gallery-foot p{font-size:9px;max-width:265px}.gallery-foot .scene-text-link{width:100%;justify-content:space-between;border-bottom:1px solid #625b514d}.gallery-lightbox-backdrop{padding:18px}.gallery-lightbox{max-width:480px}.gallery-lightbox-meta h3{font-size:20px}.gallery-lightbox-meta p{font-size:11px}.gallery-lightbox-meta small{font-size:9px;letter-spacing:1.3px}.gallery-lightbox-arrows button{width:40px;height:44px}.gallery-lightbox-image{width:min(100%,calc(100dvh - 260px))}.gallery-lightbox-disclosure{font-size:8px}.contact-content{display:block!important}.contact-header .shop-scene-title{font-size:8.3vw}.contact-layout{grid-template-columns:1fr;gap:30px;margin-top:31px;min-height:0}.contact-city-panel{border-right:0;border-bottom:1px solid #625b514d;padding:0 0 24px;min-height:310px}.contact-city-word{font-size:25vw;line-height:.83;margin-top:5px}.contact-city-word>.scene-ink-line{bottom:-19px;height:20px}.contact-city-overline{font-size:10px;margin-bottom:10px}.contact-city-script{font-size:33px;left:40%;bottom:54px}.contact-local-sign{margin-top:28px}.contact-local-sign>span{font-size:31px}.contact-local-sign p{font-size:9px}.contact-details{gap:23px;padding:0}.contact-address h3{font-size:29px}.contact-address>p{font-size:13px}.contact-label{font-size:11px;margin-bottom:9px}.contact-address .scene-text-link{font-size:11px;min-height:44px;margin-top:9px}.contact-schedule{padding-top:20px}.contact-hours-list{font-size:17px;gap:7px}.contact-hours-text{font-size:18px}.contact-phone{border-top:1px solid #625b514d;padding-top:20px}.contact-phone>a{font-size:23px}.contact-actions{gap:10px}.contact-primary,.contact-secondary{min-height:52px;padding:15px 16px;font-size:12px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:11px;margin-top:30px;padding-top:20px;font-size:8px;letter-spacing:1px}.contact-bottom>a{min-height:25px}}
@media(max-width:370px){.shop-scene .scene-content{padding-left:5%;padding-right:5%}.scene-overline{font-size:8px;letter-spacing:1px}.gallery-tile-caption{font-size:9px;letter-spacing:.3px}.gallery-grid{gap:22px 11px}.gallery-title-row>.scene-script{font-size:26px}.studio-portrait{min-height:270px}.studio-story>.scene-script{font-size:35px}.contact-city-panel{min-height:275px}.contact-city-script{font-size:29px}.contact-phone>a{font-size:21px}.contact-primary,.contact-secondary{font-size:11px;letter-spacing:1px}}
.fade-experience .gallery-lightbox-image{overflow:hidden}
.fade-experience .gallery-lightbox-photo-layer{visibility:hidden;opacity:0}
.fade-experience .gallery-lightbox-copy-layers{display:grid;flex:1;min-width:0}
.fade-experience .gallery-lightbox-copy{grid-area:1 / 1;min-width:0;visibility:hidden;opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.gallery-image-frame .scene-sprite,.gallery-open,.scene-text-link svg{transition:none}}
/* Public Acomply galleries contain independent images, never sprite cells. */
.fade-motion-stage{display:contents}
.fade-experience:has(.booking-overlay)>.fade-motion-stage>.shop-navbar,.fade-experience:has(.booking-overlay)>.fade-motion-stage>.scene-navigation{visibility:hidden}
.gallery-grid[data-gallery-source="acomply"]{flex:0 0 auto;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;min-height:0;align-content:start}
.gallery-grid[data-gallery-source="acomply"] .gallery-tile{padding:0}
.gallery-grid[data-gallery-source="acomply"] .gallery-image-frame{aspect-ratio:4/3;flex:0 0 auto;min-height:0;clip-path:none}
.gallery-shop-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.gallery-image-frame .gallery-shop-photo{position:absolute;inset:0;transition:scale .6s}
.gallery-tile:hover .gallery-shop-photo,.gallery-tile:focus-visible .gallery-shop-photo{scale:1.035}
.gallery-lightbox-image .gallery-shop-photo{position:absolute;inset:0;object-fit:contain}
.gallery-tile-caption>span:first-child,.gallery-lightbox-meta h3,.gallery-lightbox-meta p{overflow-wrap:anywhere}
.gallery-lightbox-meta h3{line-height:1.15}
@media(max-width:700px){.gallery-grid[data-gallery-source="acomply"]{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid[data-gallery-source="acomply"] .gallery-image-frame{aspect-ratio:1}.gallery-grid[data-gallery-source="acomply"][data-count="1"]{grid-template-columns:1fr}.gallery-grid[data-gallery-source="acomply"][data-count="1"] .gallery-image-frame{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.gallery-image-frame .gallery-shop-photo{transition:none}.gallery-tile:hover .gallery-shop-photo,.gallery-tile:focus-visible .gallery-shop-photo{scale:1}}
