/* Alvo Stays · refined warm edition */
:root{--ease:cubic-bezier(.22,.68,0,1.02);--gold:#d7ad5d}body{overflow-x:clip}::selection{background:#a54f3830}.header{box-shadow:0 3px 28px #332d2805}.nav-wrap{padding-block:12px}.official-brand{display:inline-flex!important;flex-shrink:0;width:126px;height:65px;border-radius:10px;background:#030303;padding:7px 10px;box-shadow:0 3px 9px #0000000c}.official-brand svg{width:100%;height:100%}.boot-official{width:220px;border-radius:16px;padding:20px;display:block;background:#030303}.boot-official svg{width:100%;display:block}.image-loader svg{width:72px;height:40px;background:#030303;border-radius:6px;padding:4px}.header nav>a:not(.button){position:relative;padding:9px 0}.header nav>a:not(.button):after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav>a:hover:after,.header nav>a.current:after{transform:scaleX(1)}.button{border-radius:7px;min-height:48px;font-weight:600}.button span{transition:transform .3s}.button:hover span{transform:translate(3px,-3px)}.hero{padding-top:58px;padding-bottom:72px}.hero-copy{animation:arrive .9s var(--ease) both}.hero h1{font-size:clamp(65px,7.1vw,104px);line-height:1.04}.hero h1 em{position:relative}.hero h1 em:after{content:'';position:absolute;left:1px;bottom:-9px;width:94%;height:10px;border-top:2px solid #a54f3840;border-radius:50%;transform:rotate(-3deg)}.hero-visual{animation:arrive 1.2s var(--ease) both}.hero-visual:before{content:'';position:absolute;inset:35px -12px 45px 60px;border:1px solid #b88d6650;border-radius:48% 48% 12px 12px;transform:rotate(5deg);pointer-events:none}.hero-visual>#hero-photo>.image-wrap{box-shadow:0 22px 65px #62452824}.hero-mini{transition:transform .5s var(--ease)}.hero-mini:hover{transform:rotate(-2deg) translateY(-8px)}.orbit-note{animation:soft-float 7s ease-in-out infinite}.hero-proof{padding-top:5px}.ticker{background:#f0e7dc}.ticker:focus-within>div{animation-play-state:paused}.booking{padding-block:42px}.booking form{border-radius:12px;padding:18px;box-shadow:0 12px 35px #65432d06}.booking label{font-weight:600}.booking input,.booking select{min-height:42px}.room-card{border-radius:14px;display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s,border-color .3s}.room-card:hover{border-color:#c5ab91;box-shadow:0 18px 42px #593c1815;transform:translateY(-7px)}.card-body{display:flex;flex:1;flex-direction:column;padding:23px}.card-body>p{min-height:0;margin-bottom:16px}.card-body .chips{margin-top:auto}.card-body .card-bottom{margin-top:12px}.card-badge{border-radius:30px;padding:7px 12px;letter-spacing:.2px}.card-photo{height:300px}.save{height:40px;width:40px;transition:transform .2s}.save:hover{transform:scale(1.1)}.arrow-button{width:38px;height:38px;transition:background .25s,color .25s,transform .25s}.arrow-button:hover{background:var(--rust);color:white;transform:rotate(8deg)}.search-row{display:flex;gap:14px;margin-top:22px}.stay-search{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:8px 16px;flex:1;background:var(--paper)}.stay-search>span{font-size:26px;line-height:1;color:var(--rust)}.stay-search input{border:0;background:transparent;width:100%;min-width:0;padding:7px 0;font-size:13px;color:var(--ink)}.location-select{display:flex;align-items:center;gap:12px;font-size:11px;border:1px solid var(--line);border-radius:8px;padding:8px 14px;background:var(--paper);color:var(--muted)}.location-select select{border:0;background:transparent;color:var(--ink);font-size:12px;padding:8px}.compare-pick{display:flex;align-items:center;gap:8px;font-size:11px;margin-top:18px;color:var(--muted);cursor:pointer}.compare-pick input{accent-color:var(--rust);width:16px;height:16px}.view-photo{border-radius:160px 160px 12px 12px;box-shadow:0 20px 50px #65432d12}.view-section{position:relative}.stay-perks{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-bottom:1px solid var(--line);padding-block:36px}.stay-perks>div{display:flex;align-items:center;gap:17px}.stay-perks>div>span{width:54px;height:54px;background:#eee4d7;border-radius:50%;display:grid;place-items:center;font-size:23px;flex-shrink:0}.stay-perks p{margin:0;font-size:13px;font-weight:600}.stay-perks small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:3px}.experience-grid article{padding:25px 21px;background:#fffdf85c;border:1px solid #ded6ca;border-radius:12px;transition:transform .3s,background .3s}.experience-grid article:hover{transform:translateY(-5px);background:var(--paper)}.experience-grid article>span{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#e9d7c6;margin-bottom:24px}.experience-grid svg{width:24px;height:24px;stroke:var(--rust);stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.review-card{border-radius:12px;position:relative}.review-avatar{background:#e6d2bd}.review-card blockquote{line-height:1.55}.wide-details, .faq details{transition:background .25s}.faq details[open]{background:#efe5d755}.faq details[open] summary span,.wide-details[open] summary span{transform:rotate(45deg)}summary span{display:inline-block;transition:transform .25s}.closing{position:relative;overflow:hidden}.closing:before,.closing:after{content:'';position:absolute;width:460px;height:460px;border:1px solid #ffffff18;border-radius:50%;pointer-events:none;top:-30px}.closing:before{left:-200px}.closing:after{right:-200px}.closing>*{position:relative}.content-panel{border-radius:12px}.content-panel h3{line-height:1.25}.quiz-brand{display:flex;justify-content:center;margin:24px 0}.quiz-options button{border-radius:10px;transition:transform .2s,background .2s}.quiz-options button:hover{transform:translateX(5px)}dialog{border-radius:16px}dialog[open]{animation:dialog-in .25s var(--ease)}dialog::backdrop{background:#22181088;backdrop-filter:blur(5px)}.modal-close{width:44px;height:44px}.gallery-grid button{border-radius:8px}.floating-wa{gap:8px;box-shadow:0 6px 24px #332d2820}.floating-wa svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.compare-bar{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:35;background:var(--ink);color:var(--paper);border-radius:12px;padding:12px 16px;box-shadow:0 12px 45px #0003;display:flex;align-items:center;gap:18px;font-size:12px}.compare-bar[hidden]{display:none}.compare-bar .button{padding:10px 18px;min-height:40px}.compare-clear{color:var(--paper);text-decoration:underline;font-size:11px}.compare-dialog{width:min(980px,calc(100% - 24px));max-height:88vh;padding:50px 28px 28px}.compare-scroll{overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;min-width:520px;text-align:left;font-size:12px}.compare-table th,.compare-table td{padding:15px 12px;vertical-align:top;border-bottom:1px solid var(--line)}.compare-table th{font-weight:500}.compare-table img{width:100%;height:150px;object-fit:cover;border-radius:8px;margin-bottom:12px}.compare-table h3{font-size:24px;margin:8px 0}.compare-table .button{padding:10px 13px;font-size:11px;white-space:normal}.compare-table caption{text-align:left;color:var(--muted);padding:0 12px 15px}.progress-top{height:2px;background:var(--rust);position:fixed;top:0;left:0;width:100%;transform-origin:left;transform:scaleX(0);z-index:90}.back-top{position:fixed;right:23px;bottom:78px;width:40px;height:40px;border-radius:50%;background:var(--paper);border:1px solid var(--line);z-index:25;opacity:0;visibility:hidden;transition:opacity .2s}.back-top.visible{opacity:1;visibility:visible}.night-summary{margin:12px 0 0;font-size:12px;color:var(--rust);font-weight:600}.motion-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s var(--ease)}.motion-ready.in-view{opacity:1;transform:translateY(0)}.motion-ready.room-card:hover{transform:translateY(-7px)}@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-float{50%{transform:translateY(-8px) rotate(8deg)}}@keyframes dialog-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(min-width:761px) and (max-width:1050px){.room-grid{grid-template-columns:repeat(2,1fr)}.header nav{gap:16px}.header nav>a{font-size:11px}.hero h1{font-size:71px}.hero-actions{flex-wrap:wrap}.experience-grid{grid-template-columns:repeat(2,1fr)}.stay-perks{gap:15px}.stay-perks>div{gap:10px}.stay-perks small{font-size:10px}}
@media(max-width:760px){.official-brand{width:107px;height:55px;padding:5px 8px}.official-brand svg{width:100%;height:100%}.nav-wrap{padding-block:10px}.header nav{top:75px;border-bottom:1px solid var(--line);border-radius:0 0 14px 14px}.hero{padding-top:38px;padding-bottom:52px}.hero h1{font-size:clamp(57px,13.8vw,82px)}.hero-visual:before{right:2px}.hero-actions{gap:18px}.hero-actions .text-button{font-size:11px}.hero-proof{margin-top:25px}.hero-visual>#hero-photo>.image-wrap{height:420px}.search-row{gap:10px;flex-direction:column}.stay-search{padding:8px 13px}.location-select{align-self:flex-start}.stay-perks{grid-template-columns:1fr;gap:20px;padding-block:30px}.stay-perks>div>span{width:45px;height:45px;font-size:20px}.stay-perks small{font-size:12px}.experience-grid{gap:12px}.experience-grid article{padding:22px 15px}.experience-grid article h3{font-size:23px}.experience-grid article p{font-size:12px}.card-photo{height:340px}.card-body>p{min-height:0}.view-photo{height:380px}.compare-bar{bottom:12px;left:12px;right:12px;transform:none;justify-content:space-between;padding:11px;gap:8px}.compare-bar .button{padding:10px 12px}.comparing .floating-wa,.comparing .back-top{bottom:86px}.comparing .back-top{bottom:144px}.compare-dialog{padding:55px 12px 20px}.compare-dialog h2{font-size:32px}.compare-table th,.compare-table td{padding:12px 8px}.compare-table h3{font-size:22px}.compare-table img{height:125px}.booking form{padding:12px}.booking label{min-width:0}.section-head>p{line-height:1.8}.footer-grid .official-brand{margin-bottom:18px}.floating-wa{min-height:44px}.collection-status{margin-top:13px}.room-dialog-copy .booking-actions{gap:10px}.room-dialog-copy .button{white-space:normal}.back-top{right:20px}}
@media(max-width:380px){.hero-actions{flex-direction:column;align-items:flex-start;gap:8px}.hero-visual>#hero-photo>.image-wrap{height:350px}.experience-grid{grid-template-columns:1fr}.card-meta{flex-wrap:wrap}.compare-bar{font-size:10px}.card-photo{height:290px}}
@media(prefers-reduced-motion:reduce){.motion-ready{opacity:1;transform:none}.orbit-note{animation:none}.hero-mini:hover,.room-card:hover{transform:none}.progress-top{display:none}}
#site-header{position:sticky;top:0;z-index:30}.header{position:relative}.button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.compare-table th:first-child{width:110px}.compare-table td{min-width:160px}
