/* Native-feeling additions, keeping Nuevo's midnight and gold. */
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a,button,input,select,textarea{touch-action:manipulation}:focus-visible{outline:2px solid #f2d69d;outline-offset:4px}.muted{color:var(--muted)}
.legal-nav{display:flex;flex-wrap:wrap;gap:12px 23px;border-top:1px solid var(--hair);padding-top:24px;width:100%;font-size:13px}.legal-nav button,.text-button{border:0;background:none;color:var(--muted);padding:0;text-decoration:underline;text-underline-offset:4px;text-align:left}.service-footer{padding-bottom:115px}.service-footer .wrap>span{font-size:13px}.legal-copy{max-width:860px}.legal-copy h2{font-size:clamp(25px,3vw,35px);margin:46px 0 18px}.legal-copy h2:first-child{margin-top:0}.legal-copy p,.legal-copy li{color:var(--muted);font-size:17px;line-height:1.8}.legal-copy a{color:var(--gold-hi);overflow-wrap:anywhere}.legal-copy strong{color:var(--ink)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;font-size:15px;text-align:left}th,td{padding:15px 12px;border-bottom:1px solid var(--hair);vertical-align:top}th{font-weight:600;color:var(--ink)}td{color:var(--muted)}caption{text-align:left;font-weight:600;font-size:21px;margin:25px 0 12px}
.privacy-card{position:fixed;z-index:25;bottom:max(20px,env(safe-area-inset-bottom));left:20px;width:min(480px,calc(100vw - 40px));max-height:calc(100dvh - 120px);overflow:auto;-webkit-overflow-scrolling:touch;background:rgba(13,23,41,.97);border:1px solid rgba(217,181,108,.4);border-radius:24px;padding:27px;box-shadow:0 20px 80px #0009;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.privacy-card .kicker{margin:0 0 12px}.privacy-card h2{font-size:26px;line-height:1.15;margin:0 0 14px}.privacy-card p{font-size:14px;line-height:1.65;color:var(--muted)}.privacy-card>a{font-size:13px;color:var(--gold-hi)}.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 16px}.privacy-actions button{border:1px solid #e3c17e;background:#e3c17e;color:#101b2c;border-radius:13px;padding:12px;font-size:14px;font-weight:650;min-height:47px}.privacy-actions button:hover{background:#f2d69d}.privacy-card .text-button{font-size:13px}.privacy-card .btn{margin-top:12px}#privacy-feedback:empty{display:none}#privacy-feedback{color:#f2d69d}#privacy-options{border-top:1px solid var(--hair);margin-top:16px;padding-top:10px}
.search-dock{position:fixed;z-index:20;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:24px;max-width:calc(100vw - 40px);display:flex;align-items:flex-end;flex-direction:column;gap:12px}#search-toggle{border:1px solid #ffffff29;display:flex;align-items:center;gap:12px;color:#f2f5fa;background:rgba(23,34,53,.8);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);padding:14px 21px;border-radius:30px;box-shadow:0 10px 30px #0005;min-height:50px;transition:padding .25s ease,background .2s;font-size:14px}#search-toggle span{max-width:210px;overflow:hidden;white-space:nowrap;transition:max-width .3s ease,opacity .2s} .search-dock.compact #search-toggle{padding:15px}.search-dock.compact #search-toggle span{max-width:0;opacity:0}.search-dock.compact #search-toggle{gap:0}.search-panel{background:rgba(12,22,40,.97);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);border:1px solid var(--line);border-radius:24px;padding:23px;width:390px;max-width:calc(100vw - 40px);max-height:60dvh;overflow:auto;box-shadow:0 20px 80px #0008}.search-panel label{font-size:17px;font-weight:600}.search-input-line{display:flex;align-items:center;gap:8px;margin-top:14px}.search-input-line input{min-width:0;width:100%;border:1px solid var(--hair);border-radius:12px;padding:11px;background:#152239;color:var(--ink);font-size:16px}.search-input-line button{width:40px;flex:none;height:44px;background:transparent;border:0;color:var(--ink);font-size:27px}.search-hint,#search-status{font-size:12px;color:var(--muted)}#search-results{list-style:none;padding:0;margin:12px 0 0}#search-results a{display:block;padding:12px 0;border-top:1px solid var(--hair);color:var(--ink);font-size:15px;text-decoration:none}#search-results a:hover{color:var(--gold-hi)}#search-results small{display:block;color:var(--muted);font-size:12px;margin-top:2px}#scroll-progress{position:fixed;z-index:22;top:0;left:0;height:2px;width:100%;background:#e3c17e;transform:scaleX(0);transform-origin:left;pointer-events:none}
.motion-enter{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.25,1)}.motion-enter.in-view{opacity:1;transform:none}.top{backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%)}.appointment-teaser .section-photo{margin:0}.appointment-teaser .section-photo img{height:420px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,80px);align-items:start}.booking-layout h2{font-size:clamp(28px,3.5vw,42px)}.booking-layout .muted{font-size:15px;line-height:1.7}.booking-card{border:1px solid var(--line);background:linear-gradient(145deg,#101d33,#0a1323);border-radius:28px;padding:clamp(24px,3vw,42px)}.booking-card h2{font-size:30px;margin-bottom:28px}.booking-card label:not(.check-line){display:block;font-size:14px;margin:17px 0}.booking-card input:not([type=checkbox]),.booking-card select,.booking-card textarea{display:block;width:100%;box-sizing:border-box;background:#0b1527;color:var(--ink);border:1px solid #35435a;border-radius:12px;padding:12px 13px;margin-top:8px;font-size:16px;min-height:48px;color-scheme:dark}.booking-card textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check-line{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.65;margin:21px 0}.check-line input{margin:5px 0 0;accent-color:#e3c17e;width:18px;height:18px;flex:none}.check-line a{color:var(--gold-hi)}.form-note{font-size:12px;color:var(--muted);line-height:1.7}.form-trap{position:absolute;left:-9999px;opacity:0;width:1px;height:1px;overflow:hidden}#booking-submit{width:100%;margin-top:6px}#booking-feedback{font-size:15px;line-height:1.65;color:#f2d69d}#booking-feedback:empty{display:none}.calendar{border:1px solid var(--line);background:#0d182b;border-radius:25px;padding:20px;margin:28px 0 0;max-width:520px}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.calendar-nav>div{display:flex;gap:6px}.calendar-nav button{background:transparent;border:0;color:var(--ink);font-size:29px;width:36px;height:44px}.calendar-nav select,.admin-toolbar select{background:#15223a;border:1px solid var(--hair);color:var(--ink);border-radius:10px;padding:9px 8px;font-size:14px;color-scheme:dark}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.calendar-week{color:var(--muted);font-size:12px;padding-bottom:12px}.calendar-days button{border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink);aspect-ratio:1;min-height:35px;font-size:15px}.calendar-days button:hover:not(:disabled){background:#24334b}.calendar-days button[aria-pressed=true]{background:#e3c17e;color:#0b1527;font-weight:700}.calendar-days button.today{border-color:#6c7890}.calendar-days button:disabled{opacity:.25}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.metrics article{border:1px solid var(--line);border-radius:20px;background:#101c31;padding:25px}.metrics span{display:block;font-size:14px;color:var(--muted)}.metrics strong{display:block;font-size:44px;font-weight:600;letter-spacing:-.04em;margin-top:10px}.admin-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.admin-toolbar h2{font-size:34px;margin:0 auto 0 0}.admin-toolbar label{font-size:14px}.admin-toolbar select{margin-left:8px}.stats-chart{display:flex;align-items:flex-end;gap:4px;height:150px;border-bottom:1px solid var(--hair);padding:15px 0 0;margin:30px 0;overflow-x:auto}.chart-day{flex:1;min-width:8px;height:100%;display:flex;justify-content:flex-end;flex-direction:column}.chart-day span{min-height:2px;border-radius:4px 4px 0 0;background:linear-gradient(#ead29b,#b58c42)}.chart-empty{align-self:center;color:var(--muted);font-size:15px}.booking-heading{margin-top:65px}.booking-entry{border:1px solid var(--hair);background:#0d182b;border-radius:20px;padding:25px;margin:18px 0}.booking-entry h3{font-size:22px;margin:0 0 10px}.booking-entry p{font-size:15px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0}.booking-entry .booking-status{color:var(--gold-hi);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.booking-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.booking-actions button,.booking-actions a{padding:9px 13px;font-size:13px}.booking-actions .delete-booking{color:#f0b0a7;border-color:#855d5a}.booking-entry .entry-feedback{color:var(--gold-hi)}
@media(max-width:760px){.booking-layout{grid-template-columns:1fr}.appointment-teaser .section-photo img{height:290px}.metrics{gap:10px}.metrics article{padding:17px 14px}.metrics strong{font-size:32px}.metrics span{font-size:12px}.privacy-card{left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:calc(100vw - 24px);padding:22px;max-height:75dvh;box-sizing:border-box}.privacy-visible .search-dock{visibility:hidden}.search-dock{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}.service-footer{padding-bottom:110px}.booking-card{padding:25px 20px}.calendar{padding:17px}.calendar-days{gap:3px}.calendar-days button{min-height:32px}.form-grid{gap:12px}.legal-copy{overflow-wrap:anywhere}.admin-toolbar h2{flex-basis:100%}}@media(max-width:390px){.form-grid{grid-template-columns:1fr;gap:0}.metrics{grid-template-columns:1fr}.metrics article{display:flex;align-items:center;justify-content:space-between}.metrics strong{margin:0}.privacy-actions{gap:8px}.calendar-nav select{font-size:13px;padding:9px 5px}}
@media(prefers-reduced-motion:reduce){.motion-enter{opacity:1;transform:none;transition:none}#search-toggle,#search-toggle span{transition:none}html{scroll-behavior:auto!important}}

/* Real trades photographed behind the original gold dial and Nuevo wordmark. */
.hero-gallery{isolation:isolate;min-height:720px;padding-top:54px;padding-bottom:138px;background:#060d1a}.hero-photographs,.hero-photo-shade{position:absolute;inset:0;pointer-events:none}.hero-photographs{z-index:0;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.3s ease;overflow:hidden}.hero-slide.is-active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,center);display:block;transform:scale(1.075) translateX(-1%);animation:hero-pan 14s ease-in-out infinite alternate;filter:saturate(.65)}.hero-slide:not(.is-active) img{animation-play-state:paused}.hero-photo-shade{z-index:1;background:linear-gradient(90deg,rgba(5,10,22,.95) 0%,rgba(5,10,22,.8) 30%,rgba(5,10,22,.43) 64%,rgba(5,10,22,.22) 100%),linear-gradient(0deg,#050a16 0%,rgba(5,10,22,.13) 42%,rgba(5,10,22,.25) 100%)}.hero-gallery>.wrap{z-index:2}.hero-gallery .dial{opacity:.64;right:-50px;filter:drop-shadow(0 0 24px #071127)}.hero-gallery .hero-copy{gap:24px}.hero-gallery .lead{color:#d0d8e7;max-width:48ch;text-shadow:0 2px 16px #0008}.hero-gallery .hero-wordmark{text-shadow:none}.hero-ridorel{width:clamp(205px,25vw,320px);max-width:80%;margin:0 0 6px;transform:translateY(var(--logo-drift,0px));will-change:transform}.hero-ridorel img{width:100%;height:auto;display:block;filter:drop-shadow(0 3px 12px #0006);animation:ridorel-float 12s ease-in-out infinite alternate}.hero-gallery-controls{position:absolute;z-index:3;bottom:38px;left:50%;transform:translateX(-50%);width:min(1160px,100%);padding-inline:var(--gut);display:flex;align-items:center;justify-content:space-between;gap:24px}.hero-frame-label{display:flex;align-items:center;gap:20px;font-size:14px;max-width:65%}.hero-frame-label #hero-frame-index{font-size:12px;letter-spacing:.14em;color:var(--gold-hi);white-space:nowrap}.hero-frame-label #hero-frame-title{color:#e7ebf3}.hero-gallery-buttons{display:flex;align-items:center;gap:15px}.hero-dots{display:flex;align-items:center;gap:0}.hero-dots button{width:32px;height:44px;border:0;background:transparent;display:grid;place-items:center;padding:0}.hero-dots span{width:6px;height:6px;display:block;border-radius:20px;background:#ffffff60;transition:width .3s,background .3s}.hero-dots [aria-pressed=true] span{width:22px;background:#e6c78d}#hero-pause{display:flex;align-items:center;gap:8px;border:1px solid #ffffff2b;border-radius:24px;background:#101b2c9c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#f3f6fc;padding:9px 13px;min-height:42px;font-size:13px}.hero-gallery.is-paused .hero-slide img,.hero-gallery.is-paused .hero-ridorel img{animation-play-state:paused}.mail-notice{padding:18px 22px;border:1px solid var(--line);border-radius:16px;background:#152139;color:var(--muted);font-size:14px;margin:25px 0}.booking-entry .mail-status{font-size:13px;color:var(--gold-hi)}
@keyframes hero-pan{from{transform:scale(1.075) translateX(-1%)}to{transform:scale(1.13) translateX(1%)}}@keyframes ridorel-float{from{transform:translateX(0)}to{transform:translateX(12px)}}
@media(max-width:760px){.hero-gallery{min-height:0;padding-top:43px;padding-bottom:146px}.hero-gallery .dial{width:560px;right:-190px;opacity:.38}.hero-gallery .hero-copy{gap:23px}.hero-gallery .hero-wordmark{font-size:clamp(4.8rem,19vw,7.5rem)}.hero-gallery .tagline{font-size:clamp(1.7rem,5.4vw,2.5rem)}.hero-gallery .lead{font-size:17px;line-height:1.7;max-width:38ch}.hero-photo-shade{background:linear-gradient(90deg,#050a16dd,#050a16a6 55%,#050a1659),linear-gradient(0deg,#050a16 0%,#050a16b0 35%,#050a1638 75%)}.hero-photographs{height:85%}.hero-slide img{object-position:45% 25%}.hero-gallery-controls{bottom:29px;align-items:flex-start;gap:14px;flex-direction:column}.hero-frame-label{max-width:100%;gap:15px;font-size:13px}.hero-gallery-buttons{justify-content:space-between;width:100%}.hero-ridorel{width:225px;margin-bottom:4px}.hero-dots button{width:37px}.hero-gallery .cta{gap:10px}.hero-gallery .cta .btn{padding:12px 19px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-dots span{transition:none}.hero-slide img,.hero-ridorel img{animation:none!important}.hero-ridorel{transform:none!important;will-change:auto}}
