:root{color:#23231f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#20211d;--muted:#6f7068;--paper:#f4f1e9;--cream:#e9e3d6;--gold:#a98650;--dark:#17241e;--line:#20211d29;background:#f4f1e9;font-family:DM Sans,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;overflow-x:hidden}body,button,a{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,h4,h5,p{margin-top:0}@font-face{font-family:Editorial;src:local(Iowan Old Style),local(Baskerville),local(Times New Roman);font-display:swap}.site-header{z-index:20;color:#fff;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;width:100%;height:92px;padding:0 clamp(24px,5vw,78px);display:flex;position:absolute;top:0;left:0}.site-header.header-dark{color:var(--ink);border-bottom-color:var(--line)}.logo{letter-spacing:.16em;align-items:center;gap:11px;font-size:13px;font-weight:650;line-height:1.15;display:inline-flex}.logo svg{fill:none;stroke:currentColor;stroke-width:1.2px;width:38px;height:38px}.logo small{letter-spacing:.34em;opacity:.72;margin-top:5px;font-size:8px;font-weight:500;display:block}.site-header nav{letter-spacing:.06em;align-items:center;gap:clamp(24px,3vw,48px);font-size:12px;display:flex}.site-header nav>a{position:relative}.site-header nav>a:not(.nav-cta):after{content:"";background:currentColor;width:0;height:1px;transition:width .3s;position:absolute;bottom:-7px;left:0}.site-header nav>a:hover:after{width:100%}.nav-cta{border:1px solid #ffffff73;align-items:center;gap:9px;padding:12px 16px;transition:background .3s,color .3s;display:flex}.nav-cta:hover{color:var(--dark);background:#fff}.menu-button{background:0 0;border:0;padding:8px;display:none}.hero{color:#fff;align-items:flex-end;height:100vh;min-height:780px;display:flex;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:center 56%;width:100%;height:100%;animation:1.6s cubic-bezier(.2,.7,.2,1) both hero-in;position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg,#090f0cc7 0%,#090f0c6b 47%,#090f0c1a 72%),linear-gradient(#0000 45%,#090f0c9e);position:absolute;inset:0}.hero-content{z-index:2;max-width:880px;padding:0 8vw 10vh;position:relative}.kicker,.eyebrow,.section-index{color:var(--gold);text-transform:uppercase;letter-spacing:.26em;font-size:10px;font-weight:650;display:block}.hero .kicker{color:#d8c49d;margin-bottom:24px;animation:.7s .5s both fade-up}.hero h1,.subpage-hero h1{letter-spacing:-.055em;margin-bottom:30px;font:400 clamp(68px,9vw,138px)/.82 Editorial,Georgia,serif}.hero h1{animation:.8s .65s both fade-up}h1 em,h2 em{color:#d0af79;font-weight:400}.hero-content>p{color:#ffffffc2;max-width:610px;font-size:clamp(16px,1.5vw,20px);line-height:1.65;animation:.8s .8s both fade-up}.hero-link{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #ffffff80;align-items:center;gap:30px;margin-top:32px;padding-bottom:9px;font-size:12px;animation:.8s .95s both fade-up;display:inline-flex}.hero-link svg{animation:1.8s ease-in-out infinite bob}.hero-side-note{z-index:2;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.2em;opacity:.62;gap:30px;font-size:8px;display:flex;position:absolute;bottom:46px;right:36px;transform:rotate(180deg)}.intro-section{grid-template-columns:1fr 3fr;gap:50px;max-width:1240px;margin:0 auto;padding:140px 46px 120px;display:grid}.intro-section h2,.ranking-header h2,.methodology h2{letter-spacing:-.035em;margin-bottom:34px;font:400 clamp(45px,6vw,82px)/.98 Editorial,Georgia,serif}.intro-section>div{max-width:900px}.intro-section p{max-width:630px;color:var(--muted);margin:0 0 0 auto;font-size:17px;line-height:1.8}.intro-section p+p{margin-top:22px}.section-index{padding-top:11px}.criteria-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.criteria-strip>div{border-right:1px solid var(--line);justify-content:center;align-items:center;gap:18px;min-height:128px;display:flex}.criteria-strip>div:last-child{border-right:0}.criteria-strip svg{stroke-width:1.3px;width:21px;color:var(--gold)}.criteria-strip span{color:var(--muted);font-size:11px;line-height:1.6}.criteria-strip b{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;font-size:12px;display:block}.ranking-section{background:#ebe6da;padding:140px max(24px,5vw)}.ranking-header{justify-content:space-between;align-items:flex-end;gap:40px;max-width:1300px;margin:0 auto 85px;display:flex}.ranking-header h2{margin:20px 0 0}.ranking-header>p{max-width:400px;color:var(--muted);padding-bottom:10px;line-height:1.75}.hotel-list{gap:40px;max-width:1300px;margin:0 auto;display:grid}.hotel-review{background:#f8f6f0;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);min-height:610px;display:grid;box-shadow:0 28px 70px #312b1e14}.hotel-visual{min-height:610px;position:relative;overflow:hidden}.hotel-visual>img{object-fit:cover;width:100%;height:100%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.hotel-review:hover .hotel-visual>img{transform:scale(1.025)}.image-shade{background:linear-gradient(#0000 48%,#080e0bb8);position:absolute;inset:0}.rank{z-index:1;color:#fff;border-bottom:1px solid #ffffff73;padding-bottom:8px;font:400 21px Editorial,Georgia,serif;position:absolute;top:25px;left:28px}.hotel-title{z-index:1;color:#fff;position:absolute;bottom:40px;left:40px}.hotel-title span{text-transform:uppercase;letter-spacing:.22em;color:#ffffffb3;font-size:9px}.hotel-title h3{letter-spacing:-.035em;margin:9px 0 0;font:400 clamp(42px,5vw,72px)/1 Editorial,Georgia,serif}.hotel-content{padding:clamp(35px,5vw,66px)}.verdict-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.verdict-row h4{letter-spacing:-.025em;max-width:380px;margin:13px 0 0;font:400 clamp(27px,3vw,39px)/1.08 Editorial,Georgia,serif}.rating-dial{flex:0 0 74px;place-items:center;width:74px;height:74px;display:grid;position:relative}.rating-dial svg{position:absolute;inset:0;transform:rotate(-90deg)}.rating-dial circle{fill:none;stroke:#ded8cc;stroke-width:1.5px}.rating-dial .dial-progress{stroke:var(--gold);stroke-width:2px}.rating-dial strong{margin-top:-6px;font:400 20px Editorial,Georgia,serif}.rating-dial small{color:var(--muted);font-size:8px;position:absolute;top:43px}.ideal{text-transform:uppercase;letter-spacing:.1em;color:var(--gold);align-items:center;gap:8px;margin:30px 0 23px;font-size:10px;display:flex}.intro{color:#606159;font-size:14px;line-height:1.72}.standouts{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.standouts span{color:#68685e;text-transform:uppercase;letter-spacing:.04em;background:#eeebe2;align-items:center;gap:6px;padding:8px 10px;font-size:9px;display:inline-flex}.standouts svg{color:var(--gold)}.read-review{border:0;border-bottom:1px solid var(--ink);text-transform:uppercase;letter-spacing:.14em;cursor:pointer;background:0 0;align-items:center;gap:10px;margin-top:34px;padding:0 0 8px;font-size:10px;display:inline-flex}.read-review svg{transition:transform .3s}.read-review svg.rotate{transform:rotate(90deg)}.analysis{opacity:0;max-height:0;transition:max-height .75s,opacity .4s,margin .5s;overflow:hidden}.analysis.expanded{opacity:1;max-height:1800px;margin-top:42px}.analysis-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:30px 26px;padding-top:32px;display:grid}.analysis-grid svg{width:18px;color:var(--gold);stroke-width:1.3px}.analysis-grid h5{text-transform:uppercase;letter-spacing:.1em;margin:10px 0 8px;font-size:11px}.analysis-grid p,.editor-note p{color:var(--muted);font-size:12px;line-height:1.65}.analysis-grid p{margin-bottom:0}.quiet-note{border-top:1px solid var(--line);color:#8d8e84;letter-spacing:.05em;text-transform:uppercase;margin-top:10px;padding-top:9px;font-size:9px;display:block}.editor-note{background:#eeebe2;margin-top:28px;padding:20px}.editor-note span{color:var(--gold);margin-bottom:6px;font:italic 15px Editorial,Georgia,serif;display:block}.editor-note p{margin-bottom:0}.methodology{background:var(--dark);color:#fff;grid-template-columns:1fr 1fr;align-items:center;gap:10vw;padding:150px max(24px,8vw);display:grid}.methodology-copy{max-width:580px}.methodology h2{margin:24px 0 32px}.methodology p{color:#ffffff94;line-height:1.8}.methodology a,.responsibility a{color:#d0af79;text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:10px;margin-top:32px;font-size:11px;display:inline-flex}.score-card{border-top:1px solid #ffffff2e}.score-card>div{border-bottom:1px solid #ffffff24;grid-template-columns:90px 1fr;align-items:center;min-height:72px;display:grid}.score-card strong{color:#d0af79;font:400 27px Editorial,Georgia,serif}.score-card span{color:#ffffffad;letter-spacing:.07em;text-transform:uppercase;font-size:12px}.faq-section{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:8vw;max-width:1300px;margin:0 auto;padding:140px 45px 120px;display:grid}.faq-intro h2{letter-spacing:-.035em;margin:22px 0 26px;font:400 clamp(40px,4.6vw,66px)/1 Editorial,Georgia,serif}.faq-intro p{color:var(--muted);max-width:380px;font-size:15px;line-height:1.8}.ghost-button{border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:12px;margin-top:34px;padding:15px 22px;font-size:10px;transition:background .35s,color .35s;display:inline-flex}.ghost-button:hover{background:var(--ink);color:var(--paper)}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item>button{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:30px;width:100%;padding:30px 0;display:flex}.faq-item>button>span{font:400 clamp(19px,2vw,24px)/1.3 Editorial,Georgia,serif}.faq-item>button svg{color:var(--gold);flex:0 0 18px;transition:transform .4s cubic-bezier(.2,.7,.2,1)}.faq-item.open>button svg{transform:rotate(135deg)}.faq-answer{max-height:0;transition:max-height .6s cubic-bezier(.2,.7,.2,1);overflow:hidden}.faq-item.open .faq-answer{max-height:340px}.faq-answer p{max-width:640px;color:var(--muted);margin:0;padding:0 60px 32px 0;font-size:14px;line-height:1.85}.about-story{grid-template-columns:1fr 1.35fr;gap:7vw;max-width:1240px;margin:0 auto;padding:130px 45px 40px;display:grid}.about-story h2{letter-spacing:-.035em;margin:20px 0 0;font:400 clamp(42px,5vw,70px)/1 Editorial,Georgia,serif}.about-story p{color:var(--muted);margin-bottom:24px;font-size:16px;line-height:1.85}.about-story p:last-child{margin-bottom:0}.about-numbers{grid-template-columns:repeat(4,1fr);max-width:1240px;margin:100px auto;padding:0 45px;display:grid}.about-numbers>div{border-top:1px solid var(--line);border-right:1px solid var(--line);padding:45px 25px 0}.about-numbers>div:first-child{padding-left:0}.about-numbers>div:last-child{border-right:0}.about-numbers strong{color:var(--ink);font:400 clamp(38px,4vw,56px) Editorial,Georgia,serif;display:block}.about-numbers span{color:var(--muted);text-transform:uppercase;letter-spacing:.16em;margin-top:14px;font-size:10px;display:block}.about-values{grid-template-columns:1fr 1fr;gap:3px;max-width:1240px;margin:0 auto;padding:0 45px;display:grid}.about-values>div{background:#ece7db;padding:50px}.about-values svg{width:22px;color:var(--gold);stroke-width:1.3px}.about-values h3{margin:22px 0 14px;font:400 26px Editorial,Georgia,serif}.about-values p{color:var(--muted);margin:0;font-size:14px;line-height:1.8}.about-faq{padding-top:130px}.responsibility{grid-template-columns:80px 1fr 1fr;align-items:center;gap:50px;max-width:1300px;margin:0 auto;padding:130px 45px;display:grid}.responsibility-icon{border:1px solid var(--gold);width:65px;height:65px;color:var(--gold);border-radius:50%;place-items:center;display:grid}.responsibility-icon svg{stroke-width:1.3px}.responsibility h2{margin:16px 0 0;font:400 clamp(36px,4vw,58px)/1 Editorial,Georgia,serif}.responsibility p{color:var(--muted);font-size:14px;line-height:1.8}footer{color:#fff;background:#111713;padding:80px max(24px,6vw) 24px}.footer-main{justify-content:space-between;gap:70px;padding-bottom:75px;display:flex}.footer-main>div:first-child p{color:#ffffff6b;margin:28px 0 0;font-size:12px;line-height:1.8}.footer-links{gap:8vw;display:flex}.footer-links>div{color:#ffffff80;align-content:start;gap:13px;min-width:120px;font-size:11px;display:grid}.footer-links b{color:#d0af79;text-transform:uppercase;letter-spacing:.2em;margin-bottom:8px;font-size:9px}.footer-links a:hover{color:#fff}.footer-bottom{color:#ffffff52;text-transform:uppercase;letter-spacing:.12em;border-top:1px solid #ffffff1a;justify-content:space-between;padding-top:22px;font-size:9px;display:flex}.subpage{min-height:70vh;padding-top:92px}.subpage+footer{margin-top:100px}.subpage .subpage-hero{color:var(--ink)}.subpage-hero{background:#e9e3d6;padding:130px max(24px,10vw) 100px}.subpage-hero h1{margin:30px 0;font-size:clamp(65px,9vw,124px)}.subpage-hero>p{max-width:700px;color:var(--muted);font-size:17px;line-height:1.75}.subpage-hero small{color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin-top:26px;font-size:10px;display:block}.contact-grid{grid-template-columns:repeat(3,1fr);max-width:1200px;margin:90px auto;padding:0 30px;display:grid}.contact-grid>div{border-right:1px solid var(--line);min-height:200px;padding:0 45px}.contact-grid>div:first-child{padding-left:0}.contact-grid>div:last-child{border:0}.contact-grid span{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;margin-bottom:25px;font-size:9px;display:block}.contact-grid a,.contact-grid strong{overflow-wrap:anywhere;font:400 clamp(20px,2vw,28px) Editorial,Georgia,serif;display:block}.contact-grid p{color:var(--muted);margin-top:20px;font-size:12px;line-height:1.7}.contact-note{background:var(--dark);color:#fff;align-items:flex-start;gap:35px;max-width:1140px;margin:0 auto;padding:60px;display:flex}.contact-note svg{color:var(--gold);stroke-width:1.4px;flex:0 0 28px}.contact-note h2{margin-bottom:12px;font:400 35px Editorial,Georgia,serif}.contact-note p{color:#ffffff8c;margin:0;line-height:1.7}.legal-content{max-width:980px;margin:90px auto 0;padding:0 30px}.legal-content>div{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;gap:25px;padding:45px 0;display:grid}.legal-content>div>span{color:var(--gold);font:400 16px Editorial,Georgia,serif}.legal-content h2{margin-bottom:15px;font:400 30px Editorial,Georgia,serif}.legal-content p{color:var(--muted);line-height:1.85}[data-reveal]{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transform:translateY(22px)}[data-reveal].is-visible{opacity:1;transform:none}@keyframes hero-in{0%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes bob{50%{transform:translateY(5px)}}@media (width<=980px){.site-header{height:78px}.menu-button{z-index:2;color:currentColor;display:block}.site-header nav{background:var(--dark);color:#fff;visibility:hidden;flex-direction:column;justify-content:center;gap:28px;font-size:16px;transition:transform .5s,visibility .5s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.site-header nav.nav-open{visibility:visible;transform:none}.site-header nav .nav-cta{margin-top:10px}.hero-content{padding-bottom:12vh;padding-left:7vw}.intro-section{grid-template-columns:1fr;padding:100px 35px 85px}.intro-section p{margin-left:0}.criteria-strip{grid-template-columns:1fr 1fr}.criteria-strip>div:nth-child(2){border-right:0}.criteria-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.ranking-section{padding-top:100px}.ranking-header{flex-direction:column;align-items:flex-start}.hotel-review{grid-template-columns:1fr}.hotel-visual{min-height:580px}.methodology{grid-template-columns:1fr;gap:80px}.faq-section{grid-template-columns:1fr;gap:55px;padding:100px 35px 90px}.about-story{grid-template-columns:1fr;gap:35px;padding:100px 35px 30px}.about-numbers{grid-template-columns:1fr 1fr;margin:80px auto;padding:0 35px}.about-numbers>div,.about-numbers>div:first-child{padding:34px 20px 30px 0}.about-numbers>div:nth-child(2n){border-right:0}.about-numbers>div:nth-child(odd){padding-right:20px}.about-values{grid-template-columns:1fr;padding:0 35px}.responsibility{grid-template-columns:70px 1fr}.responsibility>div:last-child{grid-column:2}}@media (width<=640px){.site-header{padding:0 20px}.logo{font-size:11px}.logo svg{width:32px}.hero{min-height:700px}.hero-overlay{background:linear-gradient(#090f0c14 22%,#090f0ccc)}.hero-content{padding:0 24px 70px}.hero h1{font-size:65px}.hero-side-note{display:none}.intro-section h2,.ranking-header h2,.methodology h2{font-size:47px}.criteria-strip>div{justify-content:flex-start;min-height:105px;padding-left:24px}.ranking-section{padding:85px 14px}.ranking-header{margin-bottom:55px;padding:0 10px}.hotel-list{gap:22px}.hotel-review{min-height:0}.hotel-visual{min-height:470px}.hotel-title{bottom:28px;left:25px}.hotel-title h3{font-size:47px}.hotel-content{padding:34px 24px 40px}.verdict-row h4{font-size:29px}.rating-dial{flex-basis:64px;width:64px;height:64px}.rating-dial small{top:38px}.analysis-grid{grid-template-columns:1fr}.methodology{padding:100px 26px}.faq-section{gap:45px;padding:85px 25px 75px}.faq-intro h2{font-size:44px}.faq-item>button{gap:18px;padding:24px 0}.faq-item.open .faq-answer{max-height:520px}.faq-answer p{padding-bottom:26px;padding-right:0}.about-story{padding:85px 25px 20px}.about-story h2{font-size:44px}.about-numbers{margin:65px auto;padding:0 25px}.about-values{padding:0 25px}.about-values>div{padding:34px 26px}.about-faq{padding-top:90px}.responsibility{grid-template-columns:1fr;gap:25px;padding:90px 25px}.responsibility>div:last-child{grid-column:1}.footer-main,.footer-bottom{flex-direction:column}.footer-links{gap:45px;margin-top:25px}.footer-bottom{gap:12px;line-height:1.6}.subpage{padding-top:78px}.subpage-hero{padding:95px 24px 70px}.subpage-hero h1{font-size:58px}.contact-grid{grid-template-columns:1fr;margin:60px auto}.contact-grid>div,.contact-grid>div:first-child{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:32px 0}.contact-note{margin:0 20px;padding:35px 25px}.legal-content{margin-top:45px;padding:0 24px}.legal-content>div{grid-template-columns:35px 1fr;gap:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
