.app-gallery{border:1px solid #e9bb49;border-radius:20px;background:#07111ef5;color:#fff;padding:22px;width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 25px 100px #000c}.app-gallery::backdrop{background:#010409bb;backdrop-filter:blur(10px)}.app-gallery header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.app-gallery h2{margin:0;color:#ffe09b;font-size:26px}.app-gallery button{font:inherit;color:inherit;cursor:pointer}.app-gallery .gallery-close,.app-back{border:1px solid #b79855;background:#151b26;border-radius:9px;padding:10px 16px;font-size:14px}.app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.app-choice{border:1px solid #b79855;border-radius:14px;background:#0c1c2d;overflow:hidden;padding:0;transition:transform .2s,box-shadow .2s;text-align:left}.app-choice:hover{transform:translateY(-5px);box-shadow:0 6px 25px #e9bb4925}.app-choice img{width:100%;height:260px;object-fit:cover;display:block}.app-choice strong{display:block;font-size:16px;padding:15px}.app-choice:focus-visible{outline:3px solid #ffe09b;outline-offset:3px}.app-preview{display:flex;flex-direction:column;align-items:center;gap:12px}.app-preview[hidden],.app-grid[hidden]{display:none}.app-preview-bar{width:100%;display:flex;align-items:center;gap:16px}.app-preview-bar strong{font-size:18px}.app-phone{padding:10px;border:2px solid #b79855;border-radius:32px;background:#020306;box-shadow:0 20px 55px #0009;width:min(390px,calc((100dvh - 178px)*9/16));aspect-ratio:9/16;min-width:220px;overflow:hidden}.app-phone iframe{display:block;width:100%;height:100%;border:0;border-radius:22px;background:#020306}.app-gallery.opening{animation:gallery-expand .45s cubic-bezier(.2,.8,.2,1)}@keyframes gallery-expand{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@media(max-width:700px){.app-gallery{padding:16px}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-choice img{height:210px}.app-gallery h2{font-size:21px}.app-choice strong{padding:12px;font-size:14px}}@media(max-width:400px){.app-choice img{height:170px}}@media(prefers-reduced-motion:reduce){.app-gallery.opening{animation:none}.app-choice{transition:none}}

.app-gallery-note{font-size:16px;line-height:1.5;color:#d2dce8;margin:0 0 22px}.app-live-label{display:block;margin:-7px 15px 15px;color:#a9e6d4;font-size:14px;line-height:1.4}@media(max-width:700px){.app-live-label{margin:0 12px 12px}}

.app-card{min-width:0;display:flex;flex-direction:column;gap:10px}.app-card .app-choice{width:100%}.app-features-button{border:1px solid #e9bb49;background:#192738;border-radius:10px;padding:12px;font-size:14px;line-height:1.4}.app-features-button:focus-visible,.app-features-dialog button:focus-visible{outline:3px solid #ffe09b;outline-offset:3px}.app-features-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid #e9bb49;border-radius:18px;background:#07111e;color:#e7edf5;box-shadow:0 25px 100px #000c;font-size:16px;line-height:1.6}.app-features-dialog::backdrop{background:#010409cc;backdrop-filter:blur(8px)}.app-features-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}.app-features-dialog h2{margin:0;color:#ffe09b;font-size:24px}.app-features-dialog h3{color:#ffe09b;font-size:20px;margin:24px 0 10px}.app-features-dialog button{font:inherit;color:inherit;border:1px solid #b79855;border-radius:9px;background:#151b26;padding:9px 14px;cursor:pointer}.app-features-dialog li{margin:0 0 14px}.app-features-dialog ul{padding-left:22px}.app-features-dialog .app-live-label{margin:12px 0}.features-service-note{font-size:14px;color:#b9c7d8}@media(max-width:400px){.app-features-dialog{padding:16px}}

.app-research{padding:16px;border:1px solid #b79855;border-radius:12px;background:#0c1c2d}.app-research a{color:#ffe09b;overflow-wrap:anywhere}.app-research p:first-child{margin-top:0}.app-research p:last-child{margin-bottom:0}

.app-preview-hint{font-size:16px;line-height:1.5;color:#d2dce8;max-width:620px;margin:0;text-align:center}.app-preview-hint[hidden]{display:none}.app-enquiry{display:inline-block;padding:12px 16px;border:1px solid #e9bb49;border-radius:9px;background:#192738;color:#ffe09b;text-decoration:none}.app-enquiry:focus-visible{outline:3px solid #ffe09b;outline-offset:3px}

.luxury-information{width:min(850px,calc(100vw - 32px));background:#141310;border-color:#b79855;color:#eee9df}.luxury-information h2{font:500 38px/1.15 Georgia,serif;letter-spacing:.01em}.luxury-eyebrow{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#dfc28b;margin:0 0 7px}.luxury-deck{font:400 28px/1.3 Georgia,serif;color:#f4e7cc;margin:22px 0}.luxury-info-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px}.luxury-info-tabs button{font-size:14px;background:#24211b}.luxury-info-tabs button[aria-pressed=true]{background:#dcc18b;color:#17140f;border-color:#dcc18b}.luxury-info-image{width:100%;max-height:280px;object-fit:cover;display:block;border-radius:12px}.luxury-information h3{font:500 25px/1.3 Georgia,serif;color:#efdbb4}.luxury-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.luxury-value-grid>div{border:1px solid #65553a;border-radius:10px;padding:16px;background:#201d17}.luxury-value-grid strong{color:#efdbb4}.luxury-value-grid p{font-size:15px;margin-bottom:0}.luxury-cta-row{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.luxury-information .luxury-launch{background:#dcc18b;color:#17140f;border-color:#dcc18b}.luxury-information .app-enquiry{background:#24211b;border-color:#b79855;color:#f4e7cc}.luxury-section[hidden]{display:none}@media(max-width:600px){.luxury-value-grid{grid-template-columns:1fr}.luxury-information h2{font-size:30px}.luxury-deck{font-size:25px}.luxury-cta-row>*{width:100%;text-align:center}}

/* The paired shop/owner demonstration uses its full responsive page. */
.app-gallery.shop-demo-view{width:min(1440px,calc(100vw - 24px));height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:0;overflow:hidden;background:#03101f}
.app-gallery.shop-demo-view>header,.app-gallery.shop-demo-view>.app-gallery-note{display:none}
.shop-demo-view .app-preview{height:100%;gap:0;align-items:stretch}
.shop-demo-view .app-preview-bar{flex:0 0 auto;box-sizing:border-box;padding:10px 16px;background:#07111e;border-bottom:1px solid #e9bb4940}
.shop-demo-view .app-phone{flex:1 1 auto;min-height:0;width:100%;min-width:0;aspect-ratio:auto;padding:0;border:0;border-radius:0;box-shadow:none;overflow:hidden}
.shop-demo-view .app-phone iframe{height:100%;width:100%;border-radius:0;background:#03101f}
@media(max-width:600px){.app-gallery.shop-demo-view{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}.shop-demo-view .app-preview-bar{padding:8px 12px}.shop-demo-view .app-preview-bar strong{font-size:15px}}

/* Rotating benefit banner stays in view while visitors browse the app gallery. */
.app-benefits-banner{position:sticky;top:0;z-index:5;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:106px;margin:0 0 22px;padding:18px 20px;border:1px solid #b79855;border-radius:12px;background:linear-gradient(115deg,#1c2d40,#091522 80%);box-shadow:0 8px 24px #0005}
.app-benefit-copy{min-width:0}.app-benefit-label{display:block;margin-bottom:8px;font-size:11px;font-weight:700;letter-spacing:.16em;color:#e9bb49}.app-benefit-message{margin:0;color:#fff0ca;font-size:clamp(17px,2.1vw,24px);line-height:1.35;font-weight:600;text-wrap:balance}.app-benefits-banner[data-future="true"] .app-benefit-label{color:#a9e6d4}
.app-gallery .app-benefit-pause{flex:none;border:1px solid #b7985580;border-radius:8px;background:#07111e;color:#e5d4ae;padding:10px 12px;font-size:12px;cursor:pointer}.app-benefit-pause:focus-visible{outline:2px solid #ffe09b;outline-offset:3px}
.app-gallery.shop-demo-view{display:flex;flex-direction:column}.app-gallery.shop-demo-view:not([open]){display:none}.shop-demo-view>.app-benefits-banner{flex:none;margin:0;border-radius:0;min-height:82px;padding:12px 16px}.shop-demo-view .app-preview{flex:1;min-height:0;height:auto}.shop-demo-view .app-phone{min-height:0}
@media(max-width:700px){.app-benefits-banner{gap:10px;min-height:116px;padding:14px;margin-bottom:16px}.app-benefit-message{font-size:17px}.app-gallery .app-benefit-pause{padding:9px}.shop-demo-view>.app-benefits-banner{min-height:100px}}
