:root{--navy-900:#06122b;--navy-800:#0a1c3f;--navy-700:#102a55;--navy-600:#17386c;--gold-500:#c9a227;--gold-400:#d9b64a;--gold-300:#e8cd7d;--gold-100:#f6ecd0;--cream:#faf7f0;--paper:#fff;--ink:#14192a;--ink-2:#4a5268;--muted:#7d859b;--hair:#e6e2d8;--danger:#b3261e;--ok:#1e7a4d;--shadow-sm:0 1px 2px #06122b0f, 0 2px 8px #06122b0a;--shadow-md:0 4px 12px #06122b14, 0 12px 32px #06122b14;--shadow-lg:0 8px 24px #06122b1f, 0 24px 64px #06122b24;--radius:12px;--radius-sm:8px;--display:ui-serif, Georgia, "Iowan Old Style", "Times New Roman", serif;--sans:ui-sans-serif, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3{font-family:var(--display);letter-spacing:-.015em;font-weight:600}.page{max-width:1140px;margin:0 auto;padding:0 1.5rem 6rem}.skip-link{z-index:60;background:var(--gold-500);color:var(--navy-900);border-radius:0 0 var(--radius-sm) 0;padding:.7rem 1.1rem;font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.topbar{background:var(--navy-900);z-index:40;border-bottom:1px solid #c9a22738;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1140px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.wordmark{align-items:baseline;gap:.5rem;text-decoration:none;display:flex}.wordmark-name{font-family:var(--display);color:var(--cream);letter-spacing:.06em;font-size:1.15rem;font-weight:600}.wordmark-sub{letter-spacing:.22em;text-transform:uppercase;color:var(--gold-400);font-size:.6rem;font-weight:600}.langs{gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.lang{color:#faf7f0a6;letter-spacing:.04em;border-radius:999px;padding:.35rem .6rem;font-size:.78rem;text-decoration:none}.lang:hover{color:var(--cream);background:#ffffff0f}.lang.is-active{color:var(--navy-900);background:var(--gold-400);font-weight:700}.hero{background:radial-gradient(1200px 400px at 80% -10%, #c9a22729, transparent 60%), linear-gradient(160deg, var(--navy-800) 0%, var(--navy-900) 70%);color:var(--cream);padding:4rem 0 6.5rem;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-500), transparent);height:2px;position:absolute;inset:auto 0 0}.hero-inner{max-width:1140px;margin:0 auto;padding:0 1.5rem}.hero-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--gold-400);margin:0 0 .9rem;font-size:.7rem;font-weight:700}.hero h1{color:var(--cream);margin:0 0 .5rem;font-size:clamp(2.4rem,6vw,4rem);line-height:1.05}.hero h1 .gold{color:var(--gold-300)}.hero-lede{color:#faf7f0c7;max-width:40ch;margin:0;font-size:clamp(1rem,2vw,1.2rem)}.hero-marks{border-top:1px solid #faf7f01f;flex-wrap:wrap;gap:1.75rem;margin-top:2.25rem;padding-top:1.75rem;display:flex}.mark{flex-direction:column;gap:.15rem;display:flex}.mark-title{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-400);font-size:.72rem;font-weight:700}.mark-note{color:#faf7f0a6;font-size:.85rem}.searchbar{background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:30;flex-wrap:wrap;align-items:stretch;gap:.6rem;margin-top:-3.25rem;padding:.7rem;display:flex;position:relative}.searchbar-error{color:var(--danger);flex:1 0 100%;margin:.3rem 0 0;font-size:.85rem}.searchbar-clear{flex:1 0 100%}.searchbar-guests{border-radius:var(--radius-sm);background:var(--cream);border:1px solid #0000;flex-direction:column;justify-content:center;gap:.2rem;padding:.5rem .9rem;display:flex}.searchbar-guests label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.65rem;font-weight:700}.stepper{align-items:center;gap:.15rem;display:flex}.stepper button{cursor:pointer;border:1px solid var(--hair);background:var(--paper);width:1.9rem;height:1.9rem;color:var(--navy-700);border-radius:50%;place-items:center;font-size:1rem;line-height:1;display:grid}.stepper button:hover{border-color:var(--gold-400);color:var(--navy-900)}.stepper input{text-align:center;width:2.2rem;font:inherit;color:var(--ink);appearance:textfield;background:0 0;border:0;font-weight:700}.stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.datepicker{flex:22rem;position:relative}.datepicker-trigger{text-align:left;cursor:pointer;background:var(--cream);border-radius:var(--radius-sm);width:100%;height:100%;font:inherit;color:var(--ink);border:1px solid #0000;flex-direction:column;justify-content:center;gap:.15rem;padding:.5rem .9rem;display:flex}.datepicker-trigger:hover,.datepicker-trigger.is-open{border-color:var(--gold-400);background:var(--paper)}.datepicker-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.65rem;font-weight:700}.datepicker-value{font-size:.95rem;font-weight:600}.datepicker-nights{color:var(--gold-500);font-size:.72rem;font-weight:600}.datepicker-panel{z-index:50;background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:min(38rem,92vw);padding:1rem;position:absolute;top:calc(100% + .5rem);left:0}.datepicker-head{justify-content:space-between;margin-bottom:.25rem;display:flex}.cal-nav{cursor:pointer;border:1px solid var(--hair);background:var(--paper);width:2rem;height:2rem;color:var(--navy-700);border-radius:50%;font-size:1.1rem;line-height:1}.cal-nav:hover{border-color:var(--gold-400);background:var(--gold-100)}.datepicker-months{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (min-width:640px){.datepicker-months{grid-template-columns:1fr 1fr}}.cal-title{font-family:var(--display);text-align:center;text-transform:capitalize;margin:0 0 .6rem;font-size:.95rem;font-weight:600}.cal-weekdays,.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-weekdays{gap:0;margin-bottom:.3rem}.cal-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.cal-grid{gap:2px}.cal-day{aspect-ratio:1;cursor:pointer;font:inherit;color:var(--ink);border-radius:var(--radius-sm);background:0 0;border:0;place-items:center;min-height:2.2rem;font-size:.85rem;display:grid}.cal-day:hover:not(:disabled){background:var(--gold-100)}.cal-day.is-past{color:var(--hair);cursor:default}.cal-day.is-between{background:var(--gold-100);border-radius:0}.cal-day.is-start,.cal-day.is-end{background:var(--navy-800);color:var(--cream);font-weight:700}.cal-day.is-start{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.cal-day.is-end{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.datepicker-foot{border-top:1px solid var(--hair);justify-content:space-between;align-items:center;margin-top:.9rem;padding-top:.9rem;display:flex}.btn{font:inherit;cursor:pointer;border-radius:var(--radius-sm);border:1px solid #0000;min-height:2.9rem;padding:.7rem 1.3rem;font-weight:600;transition:background .15s,border-color .15s,transform 50ms}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:default}.btn-gold{background:linear-gradient(180deg, var(--gold-400), var(--gold-500));color:var(--navy-900);box-shadow:var(--shadow-sm)}.btn-gold:hover:not(:disabled){background:linear-gradient(180deg, var(--gold-300), var(--gold-400))}.btn-navy{background:var(--navy-800);color:var(--cream)}.btn-navy:hover:not(:disabled){background:var(--navy-700)}.btn-ghost{color:var(--navy-700);border-color:var(--hair);background:0 0}.btn-ghost:hover:not(:disabled){border-color:var(--gold-400);background:var(--gold-100)}.btn-block{width:100%}.btn-search{flex:none;padding-inline:2rem}.section-head{margin:3.5rem 0 1.5rem}.section-head h2{margin:0 0 .3rem;font-size:clamp(1.5rem,3vw,2rem)}.section-head p{color:var(--ink-2);margin:0}.result-count{color:var(--ink-2);margin:0 0 1.25rem;font-size:.9rem}.properties{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;transition:box-shadow .2s,transform .2s,border-color .2s;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow-md);border-color:var(--gold-300);transform:translateY(-3px)}.card-media{aspect-ratio:3/2;background:radial-gradient(600px 200px at 70% 0%, #c9a2272e, transparent 60%), linear-gradient(160deg, var(--navy-700), var(--navy-900));place-items:center;display:grid;position:relative}.card-media-mark{font-family:var(--display);color:#e8cd7d73;font-size:2.4rem}.card-body{flex-direction:column;flex:1;padding:1.25rem;display:flex}.card-title{margin:0 0 .25rem;font-size:1.2rem}.card-title a{color:var(--ink);text-decoration:none}.card-title a:hover{color:var(--navy-700)}.district{color:var(--gold-500);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .7rem;font-size:.72rem;font-weight:700}.card-blurb{color:var(--ink-2);margin:0 0 .9rem;font-size:.92rem}.facts{color:var(--muted);flex-wrap:wrap;gap:.5rem;margin:auto 0 0;padding-top:.8rem;font-size:.82rem;display:flex}.facts span{align-items:center;gap:.3rem;display:inline-flex}.unavailable{color:var(--danger);margin:.9rem 0 0;font-size:.82rem;font-weight:600}.card-cta{margin-top:1rem}.ama{color:var(--muted);border-top:1px solid var(--hair);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin:.9rem 0 0;padding-top:.7rem;font-size:.7rem}.ama abbr{border-bottom:1px dotted;text-decoration:none}.detail-hero{background:linear-gradient(160deg, var(--navy-800), var(--navy-900));color:var(--cream);margin-bottom:-3rem;padding:2.5rem 0 4.5rem}.detail-hero-inner{max-width:1140px;margin:0 auto;padding:0 1.5rem}.back-link{color:var(--gold-400);letter-spacing:.04em;margin-bottom:1.5rem;font-size:.82rem;text-decoration:none;display:inline-block}.back-link:hover{color:var(--gold-300)}.detail-hero h1{color:var(--cream);margin:0 0 .5rem;font-size:clamp(1.8rem,4.5vw,3rem)}.detail-hero .district{color:var(--gold-400)}.detail-hero .facts{color:#faf7f0b3;padding-top:.5rem}.detail-body{z-index:2;grid-template-columns:minmax(0,1fr);gap:2rem;display:grid;position:relative}@media (min-width:900px){.detail-body{grid-template-columns:minmax(0,1fr) 22rem;align-items:start}}.panel{background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.75rem}.panel section+section{border-top:1px solid var(--hair);margin-top:1.75rem;padding-top:1.75rem}.panel h2{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-500);font-size:.75rem;font-family:var(--sans);margin:0 0 .6rem;font-weight:700}.panel p{color:var(--ink-2);margin:0}.quote{background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow-md);position:sticky;top:5rem;overflow:hidden}.quote-head{background:var(--navy-900);color:var(--cream);padding:1.1rem 1.35rem}.quote-head h2{color:var(--cream);margin:0;font-size:1.05rem}.quote-body{padding:1.35rem}.quote-hint{color:var(--muted);margin:.9rem 0 0;font-size:.8rem}.rate-plans{border:0;margin:0 0 1.25rem;padding:0}.rate-plans legend{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:0 0 .6rem;font-size:.68rem;font-weight:700}.rate{border:1.5px solid var(--hair);border-radius:var(--radius-sm);cursor:pointer;align-items:flex-start;gap:.7rem;margin-bottom:.6rem;padding:.85rem .95rem;transition:border-color .15s,background .15s;display:flex}.rate:hover{border-color:var(--gold-300)}.rate.is-active{border-color:var(--gold-500);background:var(--gold-100)}.rate input{accent-color:var(--navy-800);margin-top:.3rem}.rate-body{flex-direction:column;flex:1;display:flex}.rate-name{font-size:.92rem;font-weight:700}.rate-note{color:var(--muted);font-size:.74rem;line-height:1.4}.rate-price{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.95rem;font-weight:700;font-family:var(--display)}.breakdown{margin:0 0 1.25rem}.breakdown .row{border-bottom:1px solid var(--hair);justify-content:space-between;gap:1rem;padding:.6rem 0;display:flex}.breakdown dt{font-size:.88rem}.breakdown dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-weight:600}.breakdown .sub{color:var(--muted);font-size:.7rem;font-weight:400;line-height:1.4;display:block}.breakdown .row-sub{border-bottom:none;padding:0 0 .5rem}.breakdown .row-sub dt,.breakdown .row-sub dd{color:var(--muted);font-size:.75rem;font-weight:400}.breakdown .row-total{border-bottom:none;border-top:2px solid var(--navy-900);margin-top:.3rem;padding-top:.9rem}.breakdown .row-total dt{font-weight:700}.breakdown .row-total dd{font-size:1.35rem;font-family:var(--display)}.guest-form{flex-direction:column;gap:.8rem;margin-top:1.1rem;display:flex}.field{flex-direction:column;gap:.3rem;display:flex}.field label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.field input,.guest-form textarea{font:inherit;border:1px solid var(--hair);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);min-height:2.8rem;padding:.65rem .8rem}.field input:focus,.guest-form textarea:focus{border-color:var(--gold-400);outline:none}.guest-form textarea{resize:vertical;min-height:4rem}.consent{color:var(--ink-2);align-items:flex-start;gap:.6rem;font-size:.8rem;display:flex}.consent input{accent-color:var(--navy-800);margin-top:.25rem}.reference{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700;font-family:var(--display);color:var(--navy-800);margin:.4rem 0 .6rem}.confirmed-mark{background:var(--gold-100);width:3rem;height:3rem;color:var(--gold-500);border-radius:50%;place-items:center;margin:0 auto .8rem;font-size:1.5rem;display:grid}.empty{background:var(--paper);border:1px solid var(--hair);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-sm);padding:3rem 1.5rem}.empty h1{color:var(--navy-800);margin:0 0 .5rem;font-size:3rem}.empty p{color:var(--ink-2);margin:0}.empty-hint{color:var(--muted);font-size:.9rem;margin-top:.5rem!important}.error{color:var(--danger);font-size:.88rem}.skeleton{background:linear-gradient(90deg, var(--hair) 25%, #f0ede4 50%, var(--hair) 75%);border-radius:var(--radius);background-size:200% 100%;height:18rem;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.footer{background:var(--navy-900);color:#faf7f0a6;margin-top:4rem}.footer-inner{grid-template-columns:minmax(0,1fr);gap:1.5rem;max-width:1140px;margin:0 auto;padding:3rem 1.5rem;display:grid}@media (min-width:720px){.footer-inner{grid-template-columns:1.5fr 1fr}}.footer h3{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-400);font-size:.72rem;font-family:var(--sans);margin:0 0 .6rem;font-weight:700}.registry-note{max-width:52ch;margin:0 0 1rem;font-size:.82rem}.rights{color:#faf7f073;margin:0;font-size:.78rem}.footer-links{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:#faf7f0b3;font-size:.85rem;text-decoration:none}.footer-links a:hover{color:var(--gold-400)}.cookie-notice{z-index:55;background:var(--navy-900);color:#faf7f0d9;border-radius:var(--radius);max-width:32rem;box-shadow:var(--shadow-lg);border:1px solid #c9a2274d;flex-wrap:wrap;align-items:center;gap:.9rem;margin-left:auto;padding:1.1rem 1.25rem;display:flex;position:fixed;inset:auto 1rem 1rem}.cookie-text{flex:15rem;margin:0;font-size:.82rem}.cookie-actions{gap:.5rem;margin-left:auto;display:flex}.cookie-actions .btn{min-height:2.4rem;padding:.5rem 1rem;font-size:.85rem}.cookie-actions .btn-ghost{color:#faf7f0b3;border-color:#faf7f040}.cookie-actions .btn-ghost:hover{border-color:var(--gold-400);background:#ffffff14}:focus-visible{outline:2px solid var(--gold-500);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.legal{max-width:68ch}.legal section+section{border-top:1px solid var(--hair);margin-top:1.75rem;padding-top:1.75rem}.legal h2{color:var(--navy-800);font-family:var(--display);letter-spacing:-.01em;text-transform:none;font-size:1.05rem}.legal-version{color:var(--muted);margin-top:2rem;font-size:.75rem}.card-media img{object-fit:cover;width:100%;height:100%}
