.brand-logo{object-fit:contain;background:#080807}
@media(max-width:760px){
  .brand-logo{width:44px;height:34px}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-admin-layout,.legal-layout{grid-template-columns:1fr}
  .admin-tabs{overflow-x:auto;white-space:nowrap}
  .admin-tab{flex-shrink:0}
  .legal-dialog{padding:18px}
  .gallery-admin-layout .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* OH MY NAILS microapp: compact workspace and try-on tool */
.brand small{font-size:9px;letter-spacing:1.35px}
.main-nav{align-items:center}
.nav-link{white-space:nowrap}
.tryon-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(24px,5vw,64px);align-items:start}
.tryon-stage{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#171714;touch-action:manipulation}
.tryon-stage video,.tryon-stage>img,.tryon-stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tryon-stage video,.tryon-stage>img{z-index:0}
.tryon-stage canvas{z-index:2;cursor:crosshair;touch-action:manipulation}
.tryon-stage.mirror-preview video{transform:scaleX(-1)}
.camera-placeholder{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px;text-align:center;color:#f4ead9;background:radial-gradient(ellipse at 50% 42%,#494036 0,#24221f 44%,#171714 78%)}
.camera-placeholder>span{font-size:38px;color:#d1a28f}
.camera-placeholder b{font:500 clamp(20px,3vw,30px) var(--serif)}
.camera-placeholder small{max-width:300px;color:#d6cec4;line-height:1.6}
.tryon-controls{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px;align-items:center}
.tryon-controls .button{min-height:44px}
.upload-look{position:relative;overflow:hidden;cursor:pointer}
.upload-look input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.tryon-controls .small-btn{min-height:38px}
.tryon-status{margin:12px 0 0;line-height:1.6}
.tryon-options{padding:26px;background:#eee5db}
.tryon-options h2{font:500 29px var(--serif);margin:7px 0 20px}
.swatch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:18px 0 24px}
.swatch{width:100%;aspect-ratio:1;border:2px solid #ffffff;background:var(--swatch);border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 1px #00000012;position:relative}
.swatch.selected:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-shadow:0 1px 4px #0009;font-size:17px}
.tryon-options>label{display:grid;gap:8px;font-size:10px;font-weight:600}
.tryon-options select{background:#fff}
.tryon-tip{display:flex;gap:12px;margin:20px 0;padding:15px;background:#f7f4ef}
.tryon-tip>span{color:#bd8d7b;font-size:20px}
.tryon-tip p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}
.tryon-tip b{color:var(--ink)}
.tryon-disclaimer{font-size:10px;line-height:1.65;color:var(--muted)}
.tryon-options>.button{width:100%;margin-top:8px}
footer .footer-link{color:inherit;font:inherit;letter-spacing:inherit}
@media(max-width:760px){
 .topbar{gap:10px}.brand{min-width:0}.brand>span{display:none}.main-nav{gap:clamp(8px,3vw,17px)}.nav-link{font-size:9px;padding:12px 0}
 .tryon-layout{grid-template-columns:1fr}.tryon-options{padding:21px}.tryon-stage{aspect-ratio:3/4}.tryon-controls .button{flex:1;justify-content:center}.tryon-controls .small-btn{flex:1}
 footer{flex-wrap:wrap;gap:10px}footer>span{max-width:40%}
}
.palette-layout{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:28px;align-items:start}
.palette-list{display:grid;gap:9px}
.palette-row{display:grid;grid-template-columns:38px minmax(90px,1fr) minmax(90px,1fr) auto auto auto;gap:8px;align-items:center;padding:10px;background:var(--paper);border:1px solid var(--line)}
.palette-row input[type=color]{width:36px;height:36px;padding:2px}
.palette-row>input:not([type=color]){min-width:0;padding:8px;font-size:11px}
.palette-visible{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:9px!important}
.palette-visible input{width:auto}
.palette-help{font-size:11px;line-height:1.6;margin:0 0 14px}
@media(max-width:760px){.palette-layout{grid-template-columns:1fr}.palette-row{grid-template-columns:34px 1fr 1fr auto auto;gap:5px;padding:7px}.palette-visible{grid-column:2/4;grid-row:2}.palette-row>button{grid-row:2}.palette-row>button[data-palette-save]{grid-column:4}.palette-row>button[data-palette-remove]{grid-column:5}}
.hero-art{position:relative;overflow:hidden;background:#171512}
.hero-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;padding:0}
.hero-art-empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:clamp(24px,5vw,58px);color:#f7eee4;background:radial-gradient(ellipse at 78% 24%,#c9988877,transparent 42%),linear-gradient(145deg,#171512,#342924 62%,#8a5e57)}
.hero-art-empty>span{font-size:9px;letter-spacing:2px;color:#ead0c4}
.hero-art-empty strong{font:500 clamp(34px,5vw,58px)/1.08 var(--serif)}
.hero-art-empty em{font-style:italic;color:#d7a393}
.hero-art-empty small{max-width:245px;font-size:11px;line-height:1.7;color:#f0e4db}
.hero-art .art-caption{position:absolute;z-index:1;right:18px;bottom:16px;text-shadow:0 2px 8px #000a}
.tryon-controls .upload-look{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:0 18px;font-size:9px;letter-spacing:1.1px}
.tryon-controls .upload-look span{font-size:15px}
@media(max-width:760px){.tryon-controls{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.tryon-controls .button,.tryon-controls .small-btn{width:100%;min-height:46px}.tryon-controls .upload-look{min-height:46px}}

.hero-art{height:auto;aspect-ratio:2055/765;max-width:680px}.hero-art>img{object-fit:contain;padding:0}.product-order-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.product-order-links .button{min-height:34px;padding:0 10px;font-size:8px;letter-spacing:.6px}.shop-contact{font-size:11px;color:var(--muted)}.shop-contact a{color:var(--ink)}

/* Booking details, media gallery, and compact mobile cover layout */
.service-symbol{display:block;width:27px;height:27px;margin:0 0 18px;position:relative;color:var(--rose)}
.service-symbol:before,.service-symbol:after{content:"";position:absolute;left:12px;top:1px;width:2px;height:25px;background:currentColor;border-radius:2px}
.service-symbol:after{transform:rotate(90deg)}
.service-symbol{background:linear-gradient(45deg,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%),linear-gradient(-45deg,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%);background-size:18px 18px;background-position:center;background-repeat:no-repeat}
.special-icon{display:block;width:27px;height:27px;margin-bottom:18px;position:relative;color:var(--rose)}
.special-icon:before,.special-icon:after{content:"";position:absolute;left:12px;top:1px;width:2px;height:25px;background:currentColor;border-radius:2px}.special-icon:after{transform:rotate(90deg)}
.gallery-tile video{display:block;width:100%;height:100%;object-fit:cover;background:#171512}
.gallery-remove{font-size:10px;min-height:30px;background:#171512e8}
.booking-form input,.booking-form select,.booking-form textarea{min-width:0;max-width:100%;width:100%}
.booking-form .consent-check input[type="checkbox"]{width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:var(--ink)}
.booking-form .consent-check{display:flex;align-items:flex-start;gap:12px;min-width:0;font-size:13px;line-height:1.55;letter-spacing:0}
.booking-form .consent-check span{min-width:0;flex:1}
@media(max-width:760px){
  .topbar{height:auto;min-height:68px;flex-wrap:wrap;gap:8px;padding:10px 16px}
  .main-nav{gap:clamp(10px,3vw,20px);height:42px;order:3;width:100%;justify-content:space-between;overflow-x:auto}
  .nav-link{height:42px;white-space:nowrap;font-size:11px;flex:0 0 auto}
  .hero{min-height:0;grid-template-columns:1fr;gap:22px;padding:34px 5% 30px;align-items:start}
  .hero-copy{max-width:none}.hero h1{font-size:clamp(43px,12vw,62px);line-height:1.02}
  .hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.55}
  .hero-art{width:100%;max-width:none;aspect-ratio:2055/765;min-height:0}
  .booking-form{grid-template-columns:minmax(0,1fr)!important;gap:14px}
  .booking-form>.wide{grid-column:1}
  .booking-form label{min-width:0;width:100%}
  .booking-form input:not([type="checkbox"]),.booking-form select,.booking-form textarea{font-size:16px;min-height:48px}
  .booking-form .consent-check input[type="checkbox"]{width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px;margin-top:2px}
  .booking-form .consent-check{font-size:14px;line-height:1.55;gap:12px}
  .booking-form textarea{min-height:86px}
  .service-grid{grid-template-columns:1fr!important}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .gallery-admin-layout .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-heading h2{font-size:clamp(30px,8vw,42px)}
}

/* Catalog photography and separate service/product lists */
.catalog-layout{grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);align-items:start}
.catalog-lists{display:grid;gap:28px}
.catalog-lists section{min-width:0}
.catalog-item-row{grid-template-columns:74px minmax(0,1fr) auto auto;align-items:center;gap:14px}
.catalog-thumb,.catalog-thumb-placeholder{width:74px;height:74px;object-fit:cover;background:#eee5db}
.catalog-thumb-placeholder{display:grid;place-items:center;color:var(--rose);font-size:26px}
.catalog-photo{display:block;width:100%;object-fit:cover;background:#eee5db}
.service-photo{height:190px;margin-bottom:16px}
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.product-card{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--paper);border:1px solid var(--line)}
.product-photo{height:220px}
.product-photo-placeholder{height:220px;display:grid;place-items:center;background:#eee5db;color:var(--taupe);letter-spacing:2px}
.product-info{display:grid;gap:9px;padding:18px}
.product-info>b{font:500 21px var(--serif)}
.product-info>small{color:var(--muted);line-height:1.5}
.product-price{position:absolute;top:12px;right:12px;padding:7px 10px;background:var(--paper);font-size:14px}
.media-load-error{display:grid;place-items:center;width:100%;height:100%;padding:16px;background:#eee5db;color:#744c42;text-align:center;font:12px/1.5 var(--sans)}
@media(max-width:760px){.catalog-layout{grid-template-columns:1fr}.catalog-item-row{grid-template-columns:56px minmax(0,1fr) auto;gap:9px}.catalog-thumb,.catalog-thumb-placeholder{width:56px;height:56px}.catalog-item-row>.row-actions{grid-column:2/-1;justify-content:flex-start}.product-grid{grid-template-columns:1fr}.product-photo,.product-photo-placeholder{height:240px}}
