.service-gallery{--gallery-orange:#ff9b2f;--gallery-purple:#711bc7;--gallery-cream:#fff4e9}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}.gallery-card{margin:0;min-width:0}.gallery-banner{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;isolation:isolate;border:1px solid #fff4e926;border-radius:5px;background:var(--gallery-purple);color:var(--gallery-cream);text-align:left;padding:0;box-shadow:0 15px 42px #0002}.gallery-banner:after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#210a3ce8 0%,#210a3cba 32%,#210a3c36 61%,transparent 83%)}.gallery-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,1,.36,1)}button.gallery-banner:hover .gallery-art,button.gallery-banner:focus-visible .gallery-art{transform:scale(1.035)}.gallery-banner-copy{position:absolute;left:7%;top:9%;right:4%;z-index:1;pointer-events:none}.gallery-category{display:block;font-size:clamp(8px,.85vw,12px);font-weight:600;letter-spacing:.12em;line-height:1.5;color:var(--gallery-cream);max-width:54%;margin-bottom:13%}.gallery-headline{display:block;max-width:51%;font-family:var(--display);font-size:clamp(27px,3.2vw,50px);line-height:1.03;letter-spacing:-.065em;font-weight:600;margin:0}.gallery-headline>span{display:block}.gallery-accent{color:var(--gallery-orange)}.gallery-price{position:absolute;z-index:1;left:0;bottom:0;width:100%;height:18%;display:flex;align-items:center;gap:10px;padding:0 7%;background:#210a3ce6;border-top:1px solid #fff4e925;color:var(--gallery-cream)}.gallery-price>span{font-size:clamp(10px,1.1vw,16px);font-weight:500}.gallery-price>strong{font-family:var(--display);font-size:clamp(25px,3vw,43px);letter-spacing:-.05em;line-height:1;font-weight:600;color:var(--gallery-orange)}.gallery-price>span:last-child{font-size:clamp(9px,.95vw,13px);letter-spacing:.06em;margin-top:6px}.gallery-expand{position:absolute;right:5%;bottom:23%;z-index:1;display:grid;place-items:center;width:35px;height:35px;border:1px solid #fff4e96b;border-radius:50%;font-size:24px;color:var(--gallery-cream);background:#210a3c40;transition:background .25s,color .25s}button.gallery-banner:hover .gallery-expand{background:var(--gallery-orange);color:#210a3c}.gallery-card>figcaption{display:flex;align-items:center;gap:17px;padding:17px 0 0;font-size:14px;line-height:1.5}.gallery-card-number{font-family:var(--display);font-size:10px;letter-spacing:.06em;color:#fff4e980}.gallery-card>figcaption>a{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;border-bottom:1px solid #fff4e923;padding-bottom:12px}.gallery-card>figcaption>a>span{font-size:22px;color:var(--gallery-orange)}.gallery-card>figcaption>a:hover{color:var(--gallery-orange)}.gallery-pricing-note{font-size:13px;line-height:1.8;color:#fff4e9bd;margin-top:35px;max-width:850px}.service-gallery .gallery-concept-note{font-size:10px;line-height:1.7;color:#fff4e9a6;margin-top:18px;padding-top:18px;text-transform:uppercase}.gallery-dialog{--gallery-orange:#ff9b2f;--gallery-purple:#711bc7;--gallery-cream:#fff4e9;width:min(1050px,calc(100vw - 30px));max-width:none;max-height:94svh;padding:0;border:1px solid #fff4e944;border-radius:8px;background:#210a3c;color:var(--gallery-cream);overflow:auto;overscroll-behavior:contain;box-shadow:0 25px 100px #0008}.gallery-dialog::backdrop{background:#100519de;backdrop-filter:blur(8px)}.gallery-dialog-inner{padding:20px}.gallery-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:0 0 15px;font-size:11px;letter-spacing:.1em}.gallery-dialog-header>button{display:grid;place-items:center;width:37px;height:37px;border:1px solid #fff4e95c;border-radius:50%;color:var(--gallery-cream);background:transparent;font-size:27px;line-height:1}.gallery-dialog figure{margin:0}.gallery-dialog-banner{max-width:920px;margin:auto;border-radius:4px}.gallery-dialog .gallery-category{font-size:clamp(9px,1.1vw,16px)}.gallery-dialog .gallery-headline{font-size:clamp(30px,5.2vw,76px);max-width:52%}.gallery-dialog .gallery-price>strong{font-size:clamp(28px,4.4vw,58px)}.gallery-dialog .gallery-price>span{font-size:clamp(12px,1.6vw,21px)}.gallery-dialog .gallery-price>span:last-child{font-size:clamp(10px,1.3vw,17px)}.gallery-dialog-caption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0}.gallery-dialog-caption>button{background:transparent;border:1px solid #fff4e95c;border-radius:50%;width:39px;height:39px;flex-shrink:0;font-size:20px}.gallery-dialog-caption>a{font-size:14px;line-height:1.5;color:var(--gallery-cream);text-align:center}.gallery-dialog-caption>a>span{color:var(--gallery-orange);margin-left:8px}.gallery-dialog button:hover,.gallery-dialog-caption>a:hover{color:var(--gallery-orange);border-color:var(--gallery-orange)}.gallery-dialog-inner>p{font-size:11px;line-height:1.8;color:#fff4e9bb}.gallery-dialog-concept{margin-top:8px}.gallery-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body.gallery-open{overflow:hidden}.gallery-banner:focus-visible,.gallery-dialog button:focus-visible,.gallery-dialog a:focus-visible{outline:2px solid var(--gallery-orange);outline-offset:5px}
@media(max-width:760px){.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-headline{font-size:clamp(27px,7vw,47px);max-width:52%}.gallery-category{font-size:10px;margin-bottom:14%}.gallery-price{gap:8px}.gallery-price>strong{font-size:clamp(26px,7vw,43px)}.gallery-price>span{font-size:12px}.gallery-price>span:last-child{font-size:10px}.gallery-card>figcaption{font-size:13px;padding-top:12px}.gallery-pricing-note{font-size:12px}.gallery-dialog-inner{padding:12px}.gallery-dialog-header{padding-bottom:10px}.gallery-dialog .gallery-headline{font-size:clamp(27px,7vw,47px)}.gallery-dialog .gallery-category{font-size:8px}.gallery-dialog .gallery-price>strong{font-size:clamp(25px,7vw,43px)}.gallery-dialog-caption{gap:10px;padding:16px 0}.gallery-dialog-caption>a{font-size:12px}.gallery-dialog-caption>button{width:35px;height:35px}.gallery-dialog-inner>p{font-size:10px}.gallery-expand{width:30px;height:30px;font-size:21px}}
@media(prefers-reduced-motion:reduce){.gallery-art,.gallery-expand{transition:none}button.gallery-banner:hover .gallery-art,button.gallery-banner:focus-visible .gallery-art{transform:none}}
