

.mobile-start,.mobile-film-skip,.mobile-film,.mobile-replay,.mobile-browser-bar,.mobile-reply{display:none}
.mobile-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px),(max-height:500px){
  .masthead .contact-link{min-height:44px;display:inline-flex;align-items:center;padding:10px 15px}
  .masthead{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
  .summary-story{overflow:clip}
  .summary-story h2,.summary-story p,.summary-preview strong,.booking-receipt{overflow-wrap:anywhere}
  .summary-intro div>p.story-note{font-size:.8125rem}
  .mobile-start,.mobile-film-skip,.mobile-replay{max-width:100%;white-space:normal;text-align:center}
  .summary-intro{isolation:isolate;display:flex;align-items:flex-end;height:auto;min-height:clamp(570px,calc(100svh - var(--header)),820px);padding:260px 24px 32px;color:#fff;background:#241f19}
  .summary-intro>img,.summary-intro>.mobile-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-2;aspect-ratio:auto}
  .summary-intro:after{display:block;position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,18,14,.03) 20%,rgba(20,18,14,.3) 46%,rgba(20,18,14,.94) 100%)}
  .summary-intro>div{padding:0;width:100%;max-width:520px;transition:opacity .65s,transform .65s,filter .65s}
  .summary-intro h1.eyebrow{color:#e8e8d8;font-size:0.6875rem;letter-spacing:.13em}
  .summary-intro p.intro-title{font-size:clamp(2.6875rem, calc(12vw + 2.6875rem - 43px),4rem);letter-spacing:-.05em;margin:16px 0}
  .summary-intro div>p:not(.intro-title):not(.story-note){font-size:1.0625rem;line-height:1.5;margin:0 0 23px;max-width:31ch;color:#f5f2e9}
  .summary-intro br{display:none}
  .mobile-start,.mobile-film-skip,.mobile-replay{align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:999px;font-size:0.875rem;font-weight:500;line-height:1.4;touch-action:manipulation}
  .mobile-start{display:inline-flex;background:#f3f0e9;color:#242923;border:1px solid #fff9;box-shadow:0 8px 30px #0002}
  .mobile-film{display:block;opacity:0;transition:opacity .5s}
  .summary-intro.film-playing .mobile-film{opacity:1}
  .summary-intro.film-playing>div{opacity:0;transform:translateY(10px);filter:blur(6px);pointer-events:none}
  .mobile-film-skip{display:inline-flex;position:absolute;right:20px;bottom:24px;color:#fff;background:#1b211dda;border:1px solid #ffffff70;z-index:3}
  .mobile-film-skip[hidden]{display:none}
  .summary-search,.summary-build,.summary-reservation{padding:64px 24px;scroll-margin-top:calc(var(--header) + 16px)}
  .summary-search{background:#e9e9df}
  .summary-story .eyebrow{font-size:0.6875rem;letter-spacing:.1em;line-height:1.65}
  .summary-search>.eyebrow{margin:0 0 26px}
  .search-example{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 20px;margin:14px 0;min-height:108px;font-size:1.0625rem;line-height:1.4;border:1px solid #ccd0c4;border-radius:18px;box-shadow:0 8px 20px #25302105}
  .search-example>span{min-height:24px}
  .search-example small{margin:0;font-size:0.75rem;color:#72634f;white-space:normal}
  .m-letter{opacity:1}
  .mobile-animated .search-example:not(.m-seen) .m-letter{opacity:0}
  .mobile-animated .search-example.m-seen .m-letter{animation:m-letter-in .01s both;animation-delay:calc(var(--char) * 45ms + var(--search-delay,0ms))}
  .mobile-animated .search-example:not(.m-seen) small{opacity:0}
  .mobile-animated .search-example.m-seen small{animation:m-soft-in .5s both;animation-delay:calc(var(--typed) + var(--search-delay,0ms))}
  .search-example:nth-of-type(2){--search-delay:1100ms}
  .summary-search h2{font-size:clamp(1.875rem, calc(8.5vw + 1.875rem - 30px),2.625rem);line-height:1.16;letter-spacing:-.035em;margin:46px 0 22px;text-wrap:balance}
  .summary-search h2+.eyebrow{font-size:0.625rem;color:#5b6457;max-width:28ch}
  .summary-turn{font-size:clamp(2.6875rem, calc(12vw + 2.6875rem - 43px),3.9375rem);line-height:1.02;margin:46px 0 4px;letter-spacing:-.05em;max-width:6ch}
  .summary-build{display:grid;grid-template-columns:minmax(0,1fr);gap:0;background:#f3f0e9;border:0}
  .summary-build>div{display:contents}
  .summary-build>div>.eyebrow{order:0;margin:0 0 20px}
  .summary-build h2{order:1;font-size:clamp(2.25rem, calc(10vw + 2.25rem - 36px),3.0625rem);line-height:1.08;margin:0 0 22px;letter-spacing:-.04em}
  .summary-build>div>p:not(.eyebrow){order:2;font-size:1.0625rem;line-height:1.6;margin:0 0 32px}
  .summary-preview{order:3;position:relative;display:flex;flex-direction:column;width:100%;overflow:hidden;border-radius:16px;border:1px solid #c9bca2;box-shadow:0 24px 42px -22px #3c2d2955;--demo-accent:#a73325;color:var(--demo-accent)}
  .mobile-browser-bar{display:flex;align-items:center;gap:5px;padding:12px 14px;background:#fff9;color:#6a655c;font:0.6875rem Switzer,sans-serif;border-bottom:1px solid #d4c8b4}
  .mobile-browser-bar i{width:6px;height:6px;background:#d1c6b5;border-radius:50%}
  .mobile-browser-bar span{margin-left:8px}
  .summary-preview>div:not(.mobile-browser-bar){padding:26px 22px 28px;order:1;background:#f7eddc}
  .summary-preview strong{font:600 clamp(2.3125rem, calc(10vw + 2.3125rem - 37px),3.25rem)/1.08 Fraunces,serif;letter-spacing:-.03em}
  .summary-preview span{margin:0}
  .summary-preview>div:not(.mobile-browser-bar)>span{margin-top:14px;font-size:1.0625rem;line-height:1.45}
  .summary-preview>div:not(.mobile-browser-bar)>span:last-child{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;background:var(--demo-accent);color:#fff;border-radius:999px;margin-top:24px;font:500 0.8125rem Switzer,sans-serif;letter-spacing:0}
  .summary-preview>img{order:2;aspect-ratio:1.25;object-fit:cover;width:100%;height:auto}
  .summary-preview>.mobile-browser-bar{order:0}
  .summary-build blockquote{order:4;max-width:none;padding:24px;margin:30px 0 0;border:1px solid #fff;background:#e7e5dc;border-radius:18px 18px 18px 4px}
  .summary-build blockquote p{font-size:1.0625rem!important;line-height:1.55;margin:10px 0 18px}
  .summary-build blockquote strong{font-size:0.875rem}
  .summary-build .swatch{width:30px;height:30px;margin-right:12px;border:3px solid #fff}
  .summary-build .swatch.after{margin-left:0}
  .summary-build blockquote>[aria-hidden=true]{display:none}
  .mobile-reply{display:block;font-size:0.875rem;line-height:1.5;font-weight:500;color:#415139;margin:18px 0 0;padding-top:15px;border-top:1px solid #bdc3b2}
  .mobile-animated .summary-preview:not(.m-seen)>img,.mobile-animated .summary-preview:not(.m-seen)>div:not(.mobile-browser-bar){opacity:.3;filter:blur(5px)}
  .mobile-animated .summary-preview.m-seen>div:not(.mobile-browser-bar){animation:m-soft-in .8s both}
  .mobile-animated .summary-preview.m-seen>img{animation:m-soft-in 1s .4s both}
  .mobile-animated .summary-build:not(.m-warm) .summary-preview{--demo-accent:#315956}
  .summary-preview,.summary-preview>div>span:last-child{transition:color 1s,background-color 1s}
  .mobile-animated blockquote:not(.m-seen) .mobile-reply{opacity:0}
  .mobile-animated blockquote.m-seen .mobile-reply{animation:m-soft-in .65s 1.5s both}
  .summary-reservation{background:#2d3c31;color:#f1f0e5;text-align:left}
  .summary-reservation h2{font-size:clamp(2.375rem, calc(10vw + 2.375rem - 38px),3.25rem);line-height:1.08;margin:25px 0;letter-spacing:-.04em}
  .summary-reservation>p:not(.eyebrow){font-size:1.0625rem;line-height:1.6;margin:0 0 30px;color:#e2e6d8}
  .booking-receipt{max-width:none;margin:30px 0 0;padding:26px 22px;background:#f3f0e9;color:#2d3c31;border:0;border-radius:16px;box-shadow:0 15px 35px #10231933;gap:15px}
  .booking-receipt>span:first-child{font-size:0.75rem;letter-spacing:.1em}
  .booking-receipt strong{font-size:clamp(1.3125rem, calc(6.3vw + 1.3125rem - 21px),1.8125rem);line-height:1.25}
  .booking-receipt>span:nth-of-type(2){font-size:0.9375rem;font-weight:500;padding-top:15px;border-top:1px dashed #b8bfad}
  .booking-receipt small{font-size:0.75rem;line-height:1.55;color:#616956}
  .mobile-animated .booking-receipt.m-seen{animation:m-soft-in .8s both}
  .mobile-animated .booking-receipt.m-seen>strong{animation:m-soft-in .6s .7s both}
  .mobile-animated .booking-receipt.m-seen>span:nth-of-type(2){animation:m-soft-in .6s 1.7s both}
  .mobile-replay{display:inline-flex;margin:28px 0 0;background:transparent;color:#f1f0e5;border:1px solid #f1f0e569}
  .mobile-animated .summary-turn.m-seen{animation:m-soft-in .9s both}
  @keyframes m-letter-in{to{opacity:1}}
  @keyframes m-soft-in{from{opacity:0;transform:translateY(12px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
}
@media(max-width:700px){.summary-intro div>p.story-note{font-size:.78125rem}}
@media(max-width:360px){.summary-intro,.summary-search,.summary-build,.summary-reservation{padding-left:20px;padding-right:20px}.summary-intro{padding-bottom:28px}.summary-intro div>p:not(.intro-title):not(.story-note){font-size:1rem}}
@media(max-width:600px) and (max-height:700px){.summary-intro{min-height:calc(100svh - var(--header));padding-top:160px;padding-bottom:22px}}
@media(max-height:500px) and (min-width:600px){.summary-intro{min-height:470px;padding:80px 6% 36px}.summary-intro>div{max-width:400px}.summary-intro>img,.summary-intro>.mobile-film{object-position:65% 44%}.summary-intro:after{background:linear-gradient(90deg,#171c17e0,transparent)}.summary-search,.summary-build,.summary-reservation{padding:52px max(24px,10%)}.summary-preview{max-width:440px;justify-self:center}.summary-build blockquote{max-width:480px}}
@media(prefers-reduced-motion:reduce){.mobile-animated .m-letter,.mobile-animated small,.mobile-animated .mobile-reply{opacity:1!important}.mobile-animated .summary-preview>img,.mobile-animated .summary-preview>div{opacity:1!important;filter:none!important}}
