@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{color-scheme:light;--paper:#f8f2ef;--blush:#f0e0dc;--rose:#b86475;--rose-dark:#914753;--wine:#542b36;--ink:#38262b;--muted:#79686a;--brass:#b28c5c;--line:rgba(84,43,54,.19);--white:#fffaf7;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",sans-serif;--gutter:clamp(22px,6vw,92px);--max:1390px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.7 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}::selection{background:var(--rose-dark);color:var(--white)}.skip{position:fixed;z-index:100;top:10px;left:10px;padding:10px 16px;background:var(--wine);color:white;transform:translateY(-150%)}.skip:focus{transform:none}
.topline{height:34px;display:flex;align-items:center;justify-content:center;gap:14px;background:var(--wine);color:#f6eae4;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.topline b{color:#d8b67e;font-weight:500}.topline i{width:4px;height:4px;border-radius:50%;background:var(--brass)}
.header{position:sticky;top:0;z-index:20;background:rgba(248,242,239,.96);border-bottom:1px solid rgba(84,43,54,.09);backdrop-filter:blur(14px)}.head-inner{max-width:var(--max);min-height:78px;margin:auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--brass);border-radius:50%;color:var(--rose-dark);font:italic 24px/1 var(--serif)}.brand-copy{display:flex;flex-direction:column;font-size:14px;font-weight:700;letter-spacing:.15em;line-height:1.05;text-transform:uppercase}.brand-copy small{margin-top:5px;color:var(--muted);font-size:7px;font-weight:500;letter-spacing:.25em}.nav{display:flex;align-items:center;gap:clamp(21px,3vw,43px)}.nav a:not(.nav-cta){font-size:11px;color:#685459;transition:color .2s}.nav a:not(.nav-cta):hover{color:var(--rose-dark)}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:47px;padding:12px 18px;border:1px solid var(--wine);background:var(--wine);color:var(--white);font-size:10px;font-weight:600;letter-spacing:.04em;transition:background .2s,color .2s,transform .2s}.nav-cta:hover,.button:hover{background:transparent;color:var(--wine);transform:translateY(-2px)}.nav-cta span,.button span{font-size:16px}.menu-button{display:none}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(48px,7.2vw,100px)}h2{font-size:clamp(36px,5vw,68px)}h1 em,h2 em{color:var(--rose-dark);font-weight:500}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:20px;color:var(--rose-dark);font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.eyebrow:before{content:"";width:27px;height:1px;background:var(--brass)}.button-ghost{display:inline-flex;align-items:center;gap:11px;border-bottom:1px solid rgba(84,43,54,.4);padding:5px 0;font-size:10px;font-weight:600;transition:gap .2s}.button-ghost:hover{gap:17px;color:var(--rose-dark)}
.hero{position:relative;overflow:hidden;background:var(--blush)}.hero-inner{width:min(100%,var(--max));min-height:660px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5%;margin:auto;padding:56px var(--gutter) 85px}.hero-copy{position:relative;z-index:2;max-width:590px}.hero-copy h1{margin:0 0 20px}.hero-copy>p{max-width:410px;margin-bottom:28px;color:#715e61;font-size:14px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.hero-index{display:flex;align-items:center;gap:12px;margin-top:51px;color:#776466;font-size:8px;letter-spacing:.16em;text-transform:uppercase}.hero-index:before{content:"";width:30px;height:1px;background:var(--brass)}.hero-art{position:relative;height:clamp(420px,48vw,610px);margin-right:-4vw}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:54% 50%}.hero-art:after{position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(48,26,31,.42));content:""}.photo-caption{position:absolute;z-index:1;right:17px;bottom:15px;left:17px;display:flex;justify-content:space-between;color:white;font-size:8px;letter-spacing:.13em;text-transform:uppercase}.hero-medallion{position:absolute;z-index:2;bottom:38px;left:-45px;width:126px;height:126px;display:grid;place-items:center;border:1px solid rgba(178,140,92,.75);border-radius:50%;background:var(--paper);color:var(--wine);text-align:center}.hero-medallion span{font:italic 17px/1.2 var(--serif)}.hero-medallion small{display:block;color:var(--brass);font:7px var(--sans);letter-spacing:.16em;text-transform:uppercase}.hero-side{position:absolute;top:50%;right:14px;writing-mode:vertical-rl;color:rgba(84,43,54,.6);font-size:8px;letter-spacing:.2em;text-transform:uppercase}
.orientation{padding:clamp(78px,10vw,145px) var(--gutter)}.orientation-inner{max-width:var(--max);margin:auto}.section-lead{display:grid;grid-template-columns:.8fr 1.2fr;align-items:end;gap:7%;margin-bottom:58px}.section-lead h2{margin:0}.section-lead>p{max-width:440px;margin:0 0 7px;color:var(--muted);font-size:13px}.intention-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;border-top:1px solid var(--line);padding-top:27px}.intent-list{display:grid;align-content:start}.intent-option{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.intent-option .intent-label{display:flex;align-items:center;gap:15px;font:clamp(18px,2.2vw,25px) var(--serif)}.intent-option .intent-no{color:var(--brass);font:9px var(--sans);letter-spacing:.12em}.intent-option .intent-arrow{color:var(--rose-dark);font-size:18px;transition:transform .2s}.intent-option[aria-pressed=true] .intent-label{color:var(--rose-dark)}.intent-option[aria-pressed=true] .intent-arrow{transform:translateX(5px)}.intent-result{min-height:220px;display:flex;flex-direction:column;justify-content:center;padding:34px clamp(26px,5vw,67px);background:#f0e3df}.intent-result .result-kicker{color:var(--brass);font-size:8px;letter-spacing:.17em;text-transform:uppercase}.intent-result h3{margin:12px 0 9px;font:clamp(28px,3.5vw,45px)/1.12 var(--serif)}.intent-result p{max-width:420px;margin:0 0 20px;color:#715e61;font-size:12px}.result-link{align-self:flex-start;color:var(--rose-dark);font-size:10px;font-weight:700;border-bottom:1px solid var(--brass);padding-bottom:4px}
.formats{padding:clamp(74px,9vw,125px) var(--gutter);background:var(--wine);color:var(--white)}.formats-inner{max-width:var(--max);margin:auto}.formats .eyebrow{color:#dfbd95}.formats-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:48px}.formats-heading h2{max-width:680px;margin:0}.formats-heading h2 em{color:#e0b4b0}.formats-heading>p{max-width:280px;margin:0 0 8px;color:#e0ccd0;font-size:11px}.format-list{border-top:1px solid rgba(255,255,255,.24)}.format{border-bottom:1px solid rgba(255,255,255,.24)}.format summary{display:grid;grid-template-columns:65px 1fr auto 28px;align-items:center;gap:18px;padding:22px 0;cursor:pointer;list-style:none}.format summary::-webkit-details-marker{display:none}.format-number{color:#d8b67e;font-size:9px;letter-spacing:.13em}.format-title{font:clamp(20px,2.7vw,32px) var(--serif)}.format-meta{color:#e1cdd0;font-size:9px;letter-spacing:.07em}.format-plus{display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:17px;font-weight:300;transition:transform .2s}.format[open] .format-plus{transform:rotate(45deg)}.format-body{display:grid;grid-template-columns:65px 1fr;gap:18px;padding:0 0 24px}.format-body p{max-width:600px;margin:0;color:#e1cdd0;font-size:12px}.apparatus-note{margin:30px 0 0;color:#d8b67e;font-size:9px;letter-spacing:.06em}
.city-note{display:grid;grid-template-columns:1.08fr .92fr;min-height:510px;background:#efe1dc}.city-image{position:relative;min-height:420px}.city-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 45%}.city-image:after{position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(48,26,31,.38));content:""}.city-image span{position:absolute;z-index:1;bottom:18px;left:22px;color:white;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.city-copy{align-self:center;max-width:540px;padding:clamp(42px,7vw,96px)}.city-copy h2{margin-bottom:18px}.city-copy>p{color:#715e61;font-size:12px}.city-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:29px;border-top:1px solid var(--line)}.city-facts div{padding:13px 0;border-bottom:1px solid var(--line)}.city-facts strong{display:block;color:var(--rose-dark);font-size:8px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.city-facts span{color:#624f53;font-size:10px}
.first-visit{padding:clamp(76px,10vw,140px) var(--gutter)}.visit-inner{max-width:var(--max);margin:auto}.visit-heading{display:grid;grid-template-columns:.9fr 1.1fr;align-items:end;gap:8%;margin-bottom:48px}.visit-heading h2{margin:0}.visit-heading p{max-width:420px;margin:0;color:var(--muted);font-size:12px}.visit-steps{display:grid;grid-template-columns:1.05fr .95fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.visit-step{min-height:190px;padding:25px 28px 24px 0}.visit-step+.visit-step{padding-left:28px;border-left:1px solid var(--line)}.visit-step span{color:var(--brass);font-size:9px;letter-spacing:.14em}.visit-step h3{margin:22px 0 7px;font:23px var(--serif)}.visit-step p{max-width:280px;margin:0;color:var(--muted);font-size:11px}
.contact{padding:clamp(68px,9vw,120px) var(--gutter);background:var(--blush)}.contact-inner{max-width:var(--max);display:grid;grid-template-columns:1fr 1fr;gap:10%;margin:auto}.contact-copy h2{margin-bottom:16px}.contact-copy>p{max-width:410px;color:#715e61;font-size:12px}.contact-card{align-self:center;padding:clamp(26px,4vw,48px);background:var(--paper)}.contact-card .eyebrow{margin-bottom:24px}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;border-top:1px solid var(--line)}.contact-row span{color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.contact-row a{color:var(--wine);font:18px var(--serif)}.contact-note{margin:17px 0 0;color:var(--muted);font-size:9px}.contact-bottom{margin-top:35px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:9px}.contact-bottom a{color:var(--rose-dark);font-weight:600}
.footer{padding:46px var(--gutter) 20px;background:#38242b;color:#f6ebe7}.footer-top{max-width:var(--max);display:flex;justify-content:space-between;align-items:center;gap:30px;margin:auto;padding-bottom:28px}.footer .brand-mark{color:#e2c590}.footer .brand-copy small{color:#d5bfc0}.footer-links{display:flex;gap:27px;font-size:10px;color:#e7d5d4}.footer-links a:hover{color:#e2c590}.footer-bottom{max-width:var(--max);display:flex;justify-content:space-between;gap:15px;margin:auto;padding-top:15px;border-top:1px solid rgba(255,255,255,.18);color:#c7b5b6;font-size:8px}.back-top{color:#e2c590}
.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.js [data-reveal].visible{opacity:1;transform:translateY(0)}
@media(max-width:800px){.hero-inner{min-height:0;grid-template-columns:1fr;gap:30px;padding-top:48px;padding-bottom:79px}.hero-copy{max-width:590px}.hero-art{height:clamp(320px,78vw,500px);margin:0 0 0 12px}.hero-medallion{left:-17px;bottom:26px;width:104px;height:104px}.hero-medallion span{font-size:15px}.hero-side{display:none}.section-lead,.intention-layout{grid-template-columns:1fr;gap:25px}.section-lead{margin-bottom:34px}.intention-layout{gap:28px}.formats-heading{display:block}.formats-heading>p{margin-top:17px}.city-note{grid-template-columns:1fr}.city-image{min-height:360px}.city-copy{max-width:none}.visit-heading{grid-template-columns:1fr;gap:20px}.contact-inner{grid-template-columns:1fr;gap:33px}.contact-copy h2{max-width:600px}}
@media(max-width:620px){.topline{height:31px;font-size:8px}.head-inner{min-height:68px}.menu-button{width:42px;height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.menu-button span{width:16px;height:1px;background:var(--wine);transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav{position:fixed;inset:99px 0 0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:22px var(--gutter);background:var(--paper);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s,transform .2s}.nav.open{opacity:1;pointer-events:auto;transform:none}.nav a:not(.nav-cta){padding:16px 0;border-bottom:1px solid var(--line);font:22px var(--serif)}.nav .nav-cta{justify-content:space-between;margin-top:22px}.hero-inner{padding-top:39px}.hero-copy h1{font-size:clamp(48px,13vw,73px)}.hero-copy>p{font-size:13px}.hero-index{margin-top:28px}.hero-actions{gap:18px}.eyebrow{font-size:8px}.orientation,.first-visit{padding-top:73px;padding-bottom:78px}.format summary{grid-template-columns:32px 1fr 24px;gap:10px;padding:18px 0}.format-meta{grid-column:2;grid-row:2}.format-plus{grid-column:3;grid-row:1/3}.format-body{grid-template-columns:32px 1fr;gap:10px}.format-title{font-size:21px}.city-image{min-height:300px}.city-copy{padding:42px var(--gutter) 48px}.city-facts{grid-template-columns:1fr 1fr}.visit-steps{grid-template-columns:1fr}.visit-step,.visit-step+.visit-step{min-height:0;padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}.visit-step:last-child{border-bottom:0}.visit-step h3{margin:12px 0 5px}.contact-card{padding:25px 21px}.contact-row a{font-size:16px}.footer-top{align-items:flex-start;flex-direction:column}.footer-links{gap:20px;flex-wrap:wrap}.footer-bottom{flex-wrap:wrap}.contact-bottom{flex-direction:column;align-items:flex-start;gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.js [data-reveal]{opacity:1;transform:none}}
