/* Photo inspection and balanced layouts from phones to wide desktops. */
.modelTile{min-width:0;overflow:hidden;border:1px solid #e6d7c8;border-radius:16px;background:#fff;transition:border-color .2s,box-shadow .2s}
.modelTile.selected{border-color:#98652b;box-shadow:0 0 0 2px #98652b33}
.modelZoom{position:relative;display:block;padding:0;border:0;width:100%;background:#f1e5d9;cursor:zoom-in}
.modelZoom img{width:100%;aspect-ratio:1;object-fit:cover}.modelZoom>span{position:absolute;right:8px;bottom:8px;background:#2f201cdd;color:#fff;border-radius:99px;padding:8px 10px;font-size:11px}
.modelTile .modelChoice{width:100%;display:block;border:0;border-radius:0;padding:12px;text-align:left;box-shadow:none;background:#fff;min-height:76px}
.modelTile .modelChoice.on{background:#f4e8d6;color:#70471f}.modelTile .modelChoice span{display:block;padding:0;font-size:13px;line-height:1.4}.modelTile .modelChoice small{display:block;font-size:11px;color:#987044;margin-top:7px}.modelTile .modelChoice em{position:static;display:block;margin-top:7px}
.modelZoom:focus-visible,.modelChoice:focus-visible{outline:3px solid #aa793e;outline-offset:-3px}
.imagePreviewPanel{width:min(1080px,calc(100% - 40px))}.imagePreviewPanel>img{max-height:64dvh}.imagePreviewPanel .modalHeader{margin-bottom:16px}.imagePreviewPanel .modalHeader h2{font-size:36px}
@media(min-width:1280px){
  .container{width:min(88%,1920px)}.topbar{width:min(90%,1960px)}
  .serviceGrid{gap:28px}.serviceImage{aspect-ratio:3/2}.sectionHead p{font-size:15px;max-width:480px}.sectionHead h2{font-size:clamp(54px,4vw,80px)}
  .comboSection{padding-left:max(6%,calc((100% - 1920px)/2));padding-right:max(6%,calc((100% - 1920px)/2))}
}
@media(min-width:1800px){
  .topbar{padding:14px 22px;min-height:78px}.desktopNav{font-size:15px;gap:32px}.topActions .btn{font-size:14px;padding:15px 22px}.brand b{font-size:20px}.brand small{font-size:9px}.brand .mono{font-size:42px}
  .heroCopy{max-width:820px}.hero h1{font-size:clamp(105px,6.2vw,150px)}.heroCopy>p{font-size:20px;max-width:620px}.heroCtas .btn{font-size:16px;padding:18px 28px}.heroAside .signature{font-size:58px}
  .serviceBody{padding:34px}.serviceBody h3{font-size:38px}.serviceBody p,.serviceBody ul{font-size:16px;line-height:1.7}.serviceBody .textBtn{font-size:15px}.catalogGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalogInfo h3{font-size:28px}.catalogTabs button{font-size:15px}.catalogAction{font-size:14px}
  .locationHead h2{font-size:80px}.locationCopy p{font-size:18px}.locationCopy h3{font-size:42px}.mapCard iframe{min-height:420px}.visitDetail{grid-template-columns:320px 1fr}.visitDetail img{height:240px}.visitDetail h3{font-size:40px}.visitDetail p{font-size:17px}
}
@media(max-width:760px){.imagePreviewPanel .modalHeader h2{font-size:30px}.imagePreviewPanel>img{max-height:58dvh}.modelRail{grid-auto-columns:minmax(160px,46%)}.modelTile .modelChoice{min-height:82px}.modelZoom>span{font-size:11px;padding:9px 11px}}
/* Keep the decorative signature below the eye portraits and beside the controls. */
@media(min-width:1440px){.heroAside{position:absolute;top:440px;right:0;width:300px;padding:0}.heroAside .signature{font-size:44px;line-height:1.06}.heroAside ul{margin-top:16px;font-size:10px;line-height:1.8}.heroGallery{right:max(calc(6% + 340px),calc((100% - 1920px)/2 + 340px))}}
@media(min-width:761px) and (max-width:1439px){.heroAside{display:none}}
