
.lw-prop-bar {
background: #FBF6EC;
border-top: 1px solid var(--hair);
border-bottom: 1px solid var(--hair);
position: sticky;
top: 112px;
z-index: 90;
isolation: isolate;
box-shadow: 0 1px 0 rgba(11, 22, 38,0.06);
flex-shrink: 0;
}
.lw-prop-bar-inner {
max-width: var(--max-content);
margin: 0 auto;
padding: 12px var(--pad-x);
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
gap: 28px;
min-height: 60px;
min-height: 60px;
}
.lw-prop-bar-label {
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--wine);
font-weight: 600;
line-height: 1.4;
text-decoration: none;
transition: color var(--t-micro) var(--ease);
justify-self: start;
white-space: nowrap;
margin-left: -60px;
}
a.lw-prop-bar-label:hover { color: var(--wine-deep); }
.lw-prop-bar-nav {
min-width: 0;
justify-self: center;
}
.lw-prop-bar-nav ul {
display: flex;
gap: 4px;
align-items: center;
flex-wrap: nowrap;
justify-content: center;
}
.lw-prop-bar-nav a {
display: inline-flex;
align-items: center;
padding: 8px 12px;
color: var(--brown-deep);
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
font-weight: 500;
position: relative;
white-space: nowrap;
line-height: 1.4;
transition: color var(--t-micro) var(--ease);
}
.lw-prop-bar-nav a:hover { color: var(--wine); }
.lw-prop-bar-nav a.is-active { color: var(--wine); }
.lw-prop-bar-more {
position: relative;
justify-self: end;
align-self: center;
margin-left: 40px;
display: inline-flex;
align-items: center;
}
.lw-prop-bar-more-btn {
width: 34px; height: 34px;
padding: 0;
margin: 0;
border: none;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 4px;
background: transparent;
cursor: pointer;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
vertical-align: middle;
}
.lw-prop-bar-more-btn:hover span,
.lw-prop-bar-more.is-open .lw-prop-bar-more-btn span { background: var(--wine); }
.lw-prop-bar-more-btn span {
display: block;
width: 22px; height: 2px;
background: var(--brown-deep);
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
}
.lw-prop-bar-more.is-open .lw-prop-bar-more-btn span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.lw-prop-bar-more.is-open .lw-prop-bar-more-btn span:nth-child(2) { opacity: 0; }
.lw-prop-bar-more.is-open .lw-prop-bar-more-btn span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
.lw-prop-bar-menu {
position: absolute;
top: calc(100% + 12px);
right: 0;
min-width: 240px;
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-md);
box-shadow: 0 24px 60px rgba(11, 22, 38,0.14);
padding: 8px;
opacity: 0;
visibility: hidden;
transform: translateY(-6px);
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
}
.lw-prop-bar-more.is-open .lw-prop-bar-menu {
opacity: 1; visibility: visible; transform: translateY(0);
}
.lw-prop-bar-menu li { list-style: none; }
.lw-prop-bar-menu a {
display: block;
padding: 12px 16px;
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--brown-deep);
font-weight: 500;
border-radius: var(--radius-sm);
transition: background var(--t-micro) var(--ease), color var(--t-micro) var(--ease);
}
.lw-prop-bar-menu a:hover { background: var(--cream); color: var(--wine); }
.lw-home-rooms-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 20px;
}
.lw-home-pk-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
position: relative;
z-index: 1;
}
.lw-home-nb-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
}
@media (max-width: 1200px) {
.lw-home-rooms-grid, .lw-home-nb-grid { grid-template-columns: repeat(3, 1fr); }
.lw-home-nb-grid > *:nth-child(n+7) { display: none; }
}
@media (max-width: 980px) {
.lw-home-rooms-grid, .lw-home-nb-grid, .lw-home-pk-grid { grid-template-columns: repeat(2, 1fr); }
.lw-home-nb-grid > * { display: block; }
.lw-home-nb-grid > *:nth-child(n+7) { display: block; }
.lw-prop-bar { top: 80px; }
}
@media (max-width: 720px) {
.lw-home-rooms-grid, .lw-home-pk-grid, .lw-fc-grid, .lw-home-nb-grid, .lw-rm-sim-grid {
display: flex !important;
flex-direction: row !important;
grid-template-columns: none;
gap: 12px;
overflow-x: auto;
overflow-y: hidden;
scroll-snap-type: x mandatory;
scroll-padding-left: var(--pad-x);
padding: 4px var(--pad-x) 16px;
margin: 0 calc(-1 * var(--pad-x));
scrollbar-width: none;
-webkit-overflow-scrolling: touch;
}
.lw-home-rooms-grid::-webkit-scrollbar, .lw-home-pk-grid::-webkit-scrollbar, .lw-fc-grid::-webkit-scrollbar, .lw-home-nb-grid::-webkit-scrollbar, .lw-rm-sim-grid::-webkit-scrollbar { display: none; }
.lw-home-rooms-grid > *, .lw-home-pk-grid > *, .lw-fc-grid > *, .lw-home-nb-grid > *, .lw-rm-sim-grid > * {
flex: 0 0 82% !important;
max-width: 82% !important;
scroll-snap-align: start;
}
.lw-home-nb-grid > *:nth-child(n) { display: block; }
.lw-prop-bar { display: none; }
.lw-prop-bar-more {
grid-column: 2;
justify-self: end;
margin-left: 0;
flex-shrink: 0;
background: var(--paper);
padding-left: 8px;
position: relative;
z-index: 2;
}
.lw-prop-bar-more::before {
content: '';
position: absolute;
left: -24px; top: 0; bottom: 0;
width: 24px;
background: linear-gradient(to right, rgba(251, 248, 241,0), var(--paper));
pointer-events: none;
}
}
.lw-pg-hero, .lw-of-hero {
position: relative;
height: 420px;
min-height: 420px;
max-height: 420px;
overflow: hidden;
background: var(--brown-deep);
display: flex;
align-items: flex-end;
}
.lw-pg-hero-media {
position: absolute;
inset: 0;
background-size: cover;
background-position: center;
transform: scale(1.02);
}
.lw-pg-hero::after {
content: '';
position: absolute;
inset: 0;
background:
linear-gradient(180deg, rgba(11, 22, 38,0.35) 0%, rgba(11, 22, 38,0) 30%, rgba(11, 22, 38,0.75) 100%);
z-index: 1;
}
.lw-crumb {
background: var(--paper);
border-bottom: 1px solid var(--hair);
padding: 16px var(--pad-x);
}
.lw-crumb-inner {
max-width: var(--max-content);
margin: 0 auto;
display: flex;
align-items: center;
gap: 8px;
font-size: 12px;
color: var(--muted);
letter-spacing: 1px;
text-transform: uppercase;
font-weight: 500;
}
.lw-crumb a { color: var(--muted); transition: color var(--t-micro) var(--ease); }
.lw-crumb a:hover { color: var(--wine); }
.lw-crumb i {
color: var(--peach-deep);
font-size: 12px;
}
.lw-crumb .current { color: var(--wine); }
.lw-pg-intro {
padding: var(--section-y) var(--pad-x) 0;
background: var(--paper);
}
.lw-pg-intro + .lw-fc, .lw-pg-intro + .lw-rs, .lw-pg-intro + .lw-op, .lw-pg-intro + .lw-mp, .lw-pg-intro + .lw-ex, .lw-pg-intro + .lw-bl, .lw-pg-intro + .lw-gu, .lw-pg-intro + .lw-faq, .lw-pg-intro + .lw-journal { padding-top: clamp(32px, 4vw, 52px); }
.lw-pg-intro-inner {
max-width: 900px;
margin: 0 auto;
text-align: center;
}
.lw-pg-intro .lw-eyebrow { justify-content: center; font-size: 13px; }
.lw-pg-intro h2 { margin-bottom: 20px; }
.lw-pg-intro p {
font-size: 16.5px;
line-height: 1.7;
color: var(--muted);
margin: 0 auto;
max-width: 660px;
}
.lw-gu {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-subnav {
background: var(--paper);
border-bottom: 1px solid var(--hair);
}
.lw-subnav-inner {
max-width: var(--max-content);
margin: 0 auto;
padding: 8px var(--pad-x);
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
flex-wrap: wrap;
overflow-x: auto;
}
.lw-subnav a {
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--muted);
font-weight: 500;
padding: 8px 16px;
border-bottom: 2px solid transparent;
transition: color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease);
white-space: nowrap;
line-height: 1.4;
}
.lw-subnav a:hover { color: var(--wine); }
.lw-subnav a.is-active {
color: var(--wine);
border-bottom-color: var(--wine);
}
@media (max-width: 720px) {
.lw-subnav-inner { justify-content: flex-start; gap: 4px; padding: 8px 12px; }
.lw-subnav a { padding: 8px 12px; font-size: 12px; letter-spacing: 1.2px; }
}
.lw-rs {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-rs-card {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
overflow: hidden;
display: flex;
flex-direction: column;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
}
.lw-rs-card:hover {
transform: translateY(-6px);
box-shadow: 0 26px 60px rgba(26, 49, 91,0.12);
}
.lw-rs-card figure {
aspect-ratio: 4 / 3;
overflow: hidden;
position: relative;
}
.lw-rs-card figure img {
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--t-media) var(--ease);
}
.lw-rs-card:hover figure img { transform: scale(1.05); }
.lw-rs-body {
padding: 28px 24px 28px;
display: flex;
flex-direction: column;
flex: 1;
}
.lw-rs-body h3 {
font-family: var(--f-display);
font-weight: 400;
font-size: 21px;
color: var(--brown-deep);
line-height: 1.4;
margin-bottom: 8px;
}
.lw-rs-body h3 em { font-family: var(--f-italic); color: var(--wine); }
.lw-rs-body p {
font-size: 14.5px;
line-height: 1.7;
color: var(--muted);
padding-bottom: 20px;
margin-bottom: 0;
border-bottom: 1px solid var(--hair);
flex: 1;
}
.lw-rs-link {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 20px;
margin-top: 16px;
border-radius: 999px;
border: 1px solid var(--wine);
background: transparent;
color: var(--wine);
font-family: var(--f-body);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.2px;
text-transform: uppercase;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
white-space: nowrap;
align-self: flex-start;
}
.lw-rs-link i { font-size: 12px; transition: transform var(--t-micro) var(--ease); }
.lw-rs-link:hover,
.lw-rs-card:hover .lw-rs-link {
background: var(--wine);
color: var(--ivory);
}
.lw-rs-card:hover .lw-rs-link i { transform: translateX(4px); }
.lw-rm-intro {
padding: clamp(48px, 7vw, 88px) var(--pad-x) clamp(28px, 4vw, 48px);
background: var(--paper);
}
.lw-rm-intro-inner {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: 1.15fr 1fr;
gap: clamp(28px, 5vw, 68px);
align-items: end;
}
.lw-rm-intro-copy .lw-eyebrow { margin-bottom: 16px; }
.lw-rm-title {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(38px, 5vw, 62px);
line-height: 1.4;
letter-spacing: -1px;
color: var(--brown-deep);
margin: 0;
}
.lw-rm-title em {
font-family: var(--f-italic);
color: var(--wine);
font-weight: 400;
}
.lw-rm-lede {
font-family: var(--f-body);
font-size: 16px;
line-height: 1.7;
color: var(--muted);
margin: 0;
padding-bottom: 4px;
max-width: 460px;
}
.lw-rm-facts {
max-width: var(--max-content);
margin: 0 auto;
padding: clamp(28px, 4vw, 48px) var(--pad-x);
background: var(--paper);
}
.lw-rm-facts-inner {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0;
border-top: 1px solid var(--hair-strong);
border-bottom: 1px solid var(--hair-strong);
}
.lw-rm-fact {
padding: 24px 24px;
display: flex;
flex-direction: column;
gap: 4px;
border-right: 1px solid var(--hair);
}
.lw-rm-fact:last-child { border-right: none; }
.lw-rm-fact-lbl {
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--muted);
font-weight: 500;
}
.lw-rm-fact-val {
font-family: var(--f-display);
font-weight: 400;
font-size: 22px;
color: var(--brown-deep);
line-height: 1.4;
letter-spacing: -0.3px;
}
.lw-rm-fact-val em {
font-family: var(--f-italic);
color: var(--wine);
font-size: 0.8em;
}
.lw-rm-body {
padding: clamp(48px, 7vw, 88px) var(--pad-x);
background: var(--paper);
}
.lw-rm-body-inner {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: 1.4fr 1fr;
gap: clamp(40px, 6vw, 88px);
align-items: start;
}
.lw-rm-desc p {
font-family: var(--f-body);
font-size: 16px;
line-height: 1.7;
color: var(--brown-deep);
margin: 0 0 20px;
}
.lw-rm-book {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
padding: 32px 28px;
box-shadow: 0 22px 50px rgba(26, 49, 91,0.08);
}
.lw-rm-book-tag {
display: block;
font-family: var(--f-body);
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--wine);
font-weight: 600;
margin-bottom: 16px;
padding-bottom: 16px;
border-bottom: 1px solid var(--hair);
}
.lw-rm-book-list {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 24px;
}
.lw-rm-book-list li {
display: flex;
align-items: center;
gap: 8px;
font-size: 14px;
color: var(--brown-deep);
}
.lw-rm-book-list i {
color: var(--wine);
font-size: 12px;
}
.lw-rm-book .lw-btn { width: 100%; justify-content: center; margin-bottom: 8px; }
.lw-rm-gallery {
padding: clamp(20px, 3vw, 40px) var(--pad-x) clamp(48px, 7vw, 80px);
background: var(--paper);
}
.lw-rm-slider {
position: relative;
max-width: var(--max-content);
margin: 0 auto;
border-radius: var(--radius-lg);
overflow: hidden;
background: var(--cream);
aspect-ratio: 5 / 2;
max-height: 520px;
}
.lw-rm-slider-track {
position: relative;
width: 100%;
height: 100%;
}
.lw-rm-slide {
position: absolute;
inset: 0;
margin: 0;
opacity: 0;
visibility: hidden;
transition: opacity var(--t-panel) var(--ease), visibility var(--t-panel) var(--ease);
}
.lw-rm-slide.is-active {
opacity: 1;
visibility: visible;
}
.lw-rm-slide img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.lw-rm-slider-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 52px;
height: 52px;
border-radius: 50%;
border: none;
background: rgba(251, 248, 241,0.92);
color: var(--wine);
display: inline-flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 0 8px 24px rgba(11, 22, 38,0.18);
transition: background var(--t-micro) var(--ease), color var(--t-micro) var(--ease), transform var(--t-micro) var(--ease);
z-index: 3;
}
.lw-rm-slider-arrow:hover {
background: var(--wine);
color: var(--ivory);
transform: translateY(-50%) scale(1.06);
}
.lw-rm-slider-arrow i { font-size: 16px; }
.lw-rm-slider-prev { left: 20px; }
.lw-rm-slider-next { right: 20px; }
.lw-rm-slider-dots {
position: absolute;
bottom: 20px;
left: 50%;
transform: translateX(-50%);
display: flex;
gap: 8px;
z-index: 3;
}
.lw-rm-slider-dot {
width: 8px;
height: 8px;
border-radius: 50%;
border: none;
background: rgba(251, 248, 241,0.6);
cursor: pointer;
padding: 0;
transition: background var(--t-micro) var(--ease), transform var(--t-micro) var(--ease);
}
.lw-rm-slider-dot:hover { background: rgba(251, 248, 241,0.9); }
.lw-rm-slider-dot.is-active {
background: var(--ivory);
transform: scale(1.4);
}
@media (max-width: 720px) {
.lw-rm-slider { aspect-ratio: 4 / 3; }
.lw-rm-slider-arrow { width: 40px; height: 40px; }
.lw-rm-slider-arrow i { font-size: 13px; }
.lw-rm-slider-prev { left: 12px; }
.lw-rm-slider-next { right: 12px; }
}
.lw-rm-amen {
padding: clamp(60px, 8vw, 100px) var(--pad-x);
background: var(--cream);
}
.lw-rm-amen-head {
max-width: var(--max-content);
margin: 0 auto clamp(28px, 4vw, 48px);
text-align: center;
}
.lw-rm-amen-head .lw-eyebrow { justify-content: center; }
.lw-rm-amen-head h2 { margin: 0; }
.lw-rm-amen-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
}
.lw-rm-amen-item {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
padding: 20px 20px;
display: flex;
align-items: center;
gap: 12px;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
}
.lw-rm-amen-item:hover {
border-color: var(--wine);
transform: translateY(-3px);
}
.lw-rm-amen-item i {
width: 42px; height: 42px;
border-radius: 50%;
background: var(--paper);
border: 1px solid var(--hair-strong);
color: var(--wine);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 14px;
flex-shrink: 0;
}
.lw-rm-amen-item span {
font-family: var(--f-body);
font-size: 14px;
color: var(--brown-deep);
font-weight: 500;
line-height: 1.4;
}
.lw-rm-sim {
padding: clamp(60px, 8vw, 100px) var(--pad-x);
background: var(--paper);
}
.lw-rm-sim-head {
max-width: var(--max-content);
margin: 0 auto clamp(28px, 4vw, 48px);
}
.lw-rm-sim-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}
@media (max-width: 1100px) {
.lw-rm-body-inner { grid-template-columns: 1fr; }
.lw-rm-amen-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 980px) {
.lw-rm-intro-inner { grid-template-columns: 1fr; align-items: start; gap: 20px; }
.lw-rm-facts-inner { grid-template-columns: repeat(2, 1fr); }
.lw-rm-fact:nth-child(2) { border-right: none; }
.lw-rm-fact:nth-child(-n+2) { border-bottom: 1px solid var(--hair); }
.lw-rm-amen-grid { grid-template-columns: repeat(2, 1fr); }
.lw-rm-sim-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
.lw-rm-facts-inner { grid-template-columns: 1fr; }
.lw-rm-fact { border-right: none !important; border-bottom: 1px solid var(--hair); }
.lw-rm-fact:last-child { border-bottom: none; }
.lw-rm-amen-grid { grid-template-columns: 1fr; }
}
.lw-room-actions {
display: flex;
gap: 12px;
align-items: center;
}
.lw-of-hero::after { display: none; }
.lw-of-head {
padding: clamp(48px, 7vw, 88px) var(--pad-x) clamp(20px, 3vw, 40px);
background: var(--paper);
}
.lw-of-head-inner {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: 1.15fr 1fr;
gap: clamp(28px, 5vw, 68px);
align-items: end;
}
.lw-of-title {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(38px, 5vw, 66px);
line-height: 1.4;
letter-spacing: -1.2px;
color: var(--brown-deep);
margin: 0;
}
.lw-of-title em {
font-family: var(--f-italic);
color: var(--wine);
font-weight: 400;
}
.lw-of-lede {
font-family: var(--f-body);
font-size: 16px;
line-height: 1.7;
color: var(--muted);
margin: 0;
padding-bottom: 8px;
max-width: 480px;
}
@media (max-width: 980px) {
.lw-of-head-inner { grid-template-columns: 1fr; gap: 20px; align-items: start; }
}
.lw-of-filter {
padding: clamp(16px, 2vw, 24px) var(--pad-x) clamp(8px, 1.5vw, 20px);
background: var(--paper);
}
.lw-of-filter-inner {
max-width: var(--max-content);
margin: 0 auto;
display: flex;
justify-content: center;
gap: clamp(40px, 6vw, 80px);
flex-wrap: wrap;
}
.lw-of-select {
display: flex;
flex-direction: column;
gap: 8px;
min-width: 240px;
}
.lw-of-select-lbl {
font-family: var(--f-body);
font-size: 15px;
font-weight: 600;
color: var(--brown-deep);
letter-spacing: -0.1px;
}
.lw-of-select-wrap {
position: relative;
border-bottom: 1px solid var(--brown-deep);
}
.lw-of-select-wrap select {
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
width: 100%;
padding: 8px 32px 8px 0;
font-family: var(--f-body);
font-size: 15px;
font-weight: 500;
color: var(--wine);
background: transparent;
border: none;
outline: none;
cursor: pointer;
}
.lw-of-select-wrap select option {
color: var(--brown-deep);
background: var(--ivory);
}
.lw-of-select-wrap i {
position: absolute;
right: 4px;
top: 50%;
transform: translateY(-50%);
color: var(--muted);
font-size: 12px;
pointer-events: none;
transition: color var(--t-micro) var(--ease);
}
.lw-of-select-wrap:hover i,
.lw-of-select-wrap:focus-within i {
color: var(--wine);
}
.lw-of-empty {
padding: clamp(60px, 8vw, 100px) var(--pad-x);
background: var(--paper);
text-align: center;
max-width: 640px;
margin: 0 auto;
}
.lw-of-empty .lw-eyebrow { justify-content: center; margin-bottom: 28px; }
.lw-of-empty :is(h2, h3) {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(24px, 3vw, 34px);
color: var(--brown-deep);
margin: 0 0 12px;
line-height: 1.4;
}
.lw-of-empty p {
font-size: 15px;
color: var(--muted);
line-height: 1.7;
margin: 0 0 28px;
}
@media (max-width: 980px) {
.lw-of-filter-inner { gap: 24px; }
.lw-of-select { min-width: 200px; flex: 1 1 200px; }
}
@media (max-width: 720px) {
.lw-of-select { min-width: unset; width: 100%; }
}
.lw-op {
padding: clamp(28px, 4vw, 48px) var(--pad-x) var(--section-y);
background: var(--paper);
}
.lw-op-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
.lw-op-card {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
overflow: hidden;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
display: flex;
flex-direction: column;
}
.lw-op-card:hover {
transform: translateY(-6px);
box-shadow: 0 30px 60px rgba(26, 49, 91,0.12);
}
.lw-op-card figure {
aspect-ratio: 4 / 3;
overflow: hidden;
position: relative;
}
.lw-op-card figure img {
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--t-media) var(--ease);
}
.lw-op-card:hover figure img { transform: scale(1.06); }
.lw-op-body {
padding: 28px 28px;
display: flex;
flex-direction: column;
flex: 1;
}
.lw-op-place {
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--wine);
font-weight: 600;
margin-bottom: 12px;
}
.lw-op-card :is(h2, h3) {
font-family: var(--f-display);
font-weight: 400;
font-size: 24px;
color: var(--brown-deep);
line-height: 1.4;
margin-bottom: 12px;
}
.lw-op-card p {
font-size: 14.5px;
line-height: 1.7;
color: var(--muted);
margin-bottom: 20px;
flex: 1;
}
.lw-op-foot {
display: flex;
justify-content: flex-start;
align-items: center;
padding-top: 20px;
border-top: 1px solid var(--hair);
}
.lw-op-link {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 20px;
border-radius: 999px;
border: 1px solid var(--wine);
background: transparent;
color: var(--wine);
font-family: var(--f-body);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.2px;
text-transform: uppercase;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
white-space: nowrap;
}
.lw-op-link i { font-size: 12px; transition: transform var(--t-micro) var(--ease); }
.lw-op-link:hover {
background: var(--wine);
color: var(--ivory);
}
.lw-op-link:hover i { transform: translateX(4px); }
.lw-op-more {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 20px;
border-radius: 999px;
border: 1px solid var(--wine);
background: transparent;
color: var(--wine);
font-family: var(--f-body);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.2px;
text-transform: uppercase;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
white-space: nowrap;
}
.lw-op-more i { font-size: 12px; transition: transform var(--t-micro) var(--ease); }
.lw-op-more:hover {
background: var(--wine);
color: var(--ivory);
}
.lw-op-more:hover i { transform: translateX(4px); }
.lw-fc {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-fc-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
}
.lw-fc-card {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
padding: 32px 24px 28px;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
text-align: left;
}
.lw-fc-card:hover {
transform: translateY(-6px);
border-color: var(--wine);
box-shadow: 0 26px 60px rgba(26, 49, 91,0.12);
}
.lw-fc-icon {
width: 60px; height: 60px;
background: var(--cream);
color: var(--wine);
border-radius: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 22px;
margin-bottom: 20px;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
}
.lw-fc-card:hover .lw-fc-icon {
background: var(--wine);
color: var(--peach);
}
.lw-fc-card h3 {
font-family: var(--f-display);
font-weight: 400;
font-size: 22px;
color: var(--brown-deep);
line-height: 1.4;
margin-bottom: 12px;
}
.lw-fc-card p {
font-size: 14px;
line-height: 1.7;
color: var(--muted);
}
.lw-mp {
padding: clamp(28px, 4vw, 48px) var(--pad-x) var(--section-y);
background: var(--paper);
}
.lw-mp-grid {
max-width: var(--max-content);
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
.lw-mp-card {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
overflow: hidden;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
}
.lw-mp-card:hover { transform: translateY(-6px); box-shadow: 0 26px 60px rgba(26, 49, 91,0.14); }
.lw-mp-card figure {
position: relative;
aspect-ratio: 4 / 3;
overflow: hidden;
}
.lw-mp-card figure img {
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--t-media) var(--ease);
}
.lw-mp-card:hover figure img { transform: scale(1.06); }
.lw-mp-body { padding: 28px 24px; }
.lw-mp-body :is(h2, h3) {
font-family: var(--f-display);
font-weight: 400;
font-size: 22px;
color: var(--brown-deep);
margin-bottom: 12px;
}
.lw-mp-body p {
font-size: 14px;
line-height: 1.7;
color: var(--muted);
margin-bottom: 20px;
}
.lw-mp-body ul {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 20px;
}
.lw-mp-body ul li {
font-size: 12px;
letter-spacing: 1px;
text-transform: uppercase;
color: var(--wine);
padding: 4px 8px;
border: 1px solid var(--hair-strong);
border-radius: 999px;
font-weight: 500;
}
.lw-ex {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
@keyframes lwLbIn { from { opacity: 0; } to { opacity: 1; } }
.lw-ct {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-ct-form {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
padding: clamp(28px, 3.5vw, 44px);
box-shadow: 0 20px 50px rgba(26, 49, 91,0.06);
}
.lw-ct-form h3 {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(24px, 2.6vw, 32px);
color: var(--brown-deep);
margin-bottom: 8px;
}
.lw-ct-form > p {
font-size: 14px;
color: var(--muted);
margin-bottom: 28px;
}
.lw-faq {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-faq-cats {
max-width: 900px;
margin: 0 auto 40px;
display: flex;
gap: 8px;
flex-wrap: wrap;
justify-content: center;
}
.lw-faq-cat {
padding: 8px 20px;
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--brown-deep);
border: 1px solid var(--hair-strong);
border-radius: 999px;
font-weight: 500;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
}
.lw-faq-cat:hover { border-color: var(--wine); color: var(--wine); }
.lw-faq-cat.is-active {
background: var(--wine);
border-color: var(--wine);
color: var(--ivory);
}
.lw-faq-list {
max-width: 900px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 12px;
}
.lw-faq-item {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
overflow: hidden;
transition: box-shadow var(--t-micro) var(--ease);
}
.lw-faq-item.is-open { box-shadow: 0 20px 50px rgba(26, 49, 91,0.08); }
.lw-faq-q {
width: 100%;
padding: 24px 28px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 20px;
text-align: left;
font-family: var(--f-display);
font-size: 18px;
font-weight: 400;
color: var(--brown-deep);
transition: color var(--t-micro) var(--ease);
}
.lw-faq-q:hover { color: var(--wine); }
.lw-faq-q-icon {
width: 32px; height: 32px;
border-radius: 50%;
border: 1px solid var(--hair-strong);
color: var(--brown-deep);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 12px;
transition: color var(--t-micro) var(--ease), background-color var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease), opacity var(--t-micro) var(--ease), transform var(--t-micro) var(--ease), box-shadow var(--t-micro) var(--ease);
flex: none;
}
.lw-faq-item.is-open .lw-faq-q-icon {
background: var(--wine);
border-color: var(--wine);
color: var(--ivory);
transform: rotate(45deg);
}
.lw-faq-a {
max-height: 0;
overflow: hidden;
transition: max-height var(--t-panel) var(--ease);
}
.lw-faq-item.is-open .lw-faq-a { max-height: 400px; }
.lw-faq-a-inner {
padding: 0 28px 24px;
font-size: 15px;
line-height: 1.7;
color: var(--muted);
}
.lw-bl {
padding: var(--section-y) var(--pad-x);
background: var(--paper);
}
.lw-bl-intro { padding-bottom: clamp(28px, 4vw, 48px); }
.lw-bl-tight { padding-top: clamp(20px, 3vw, 40px); }
.lw-bl-post {
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
overflow: hidden;
transition: color var(--t-panel) var(--ease), background-color var(--t-panel) var(--ease), border-color var(--t-panel) var(--ease), opacity var(--t-panel) var(--ease), transform var(--t-panel) var(--ease), box-shadow var(--t-panel) var(--ease);
display: flex;
flex-direction: column;
}
.lw-bl-post:hover { transform: translateY(-6px); box-shadow: 0 26px 60px rgba(26, 49, 91,0.12); }
.lw-bl-post figure {
aspect-ratio: 4 / 3;
overflow: hidden;
position: relative;
}
.lw-bl-post figure img {
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--t-media) var(--ease);
}
.lw-bl-post:hover figure img { transform: scale(1.06); }
.lw-abt-hero-bg {
position: absolute; inset: 0;
background-size: cover;
background-position: center;
transform: scale(1.05);
animation: lwAbtHeroIn 1.4s var(--ease) both;
will-change: transform;
}
@keyframes lwAbtHeroIn {
from { opacity: 0; transform: scale(1.15); }
to   { opacity: 1; transform: scale(1.05); }
}
@media (max-width: 1200px) {
.lw-fc-grid { grid-template-columns: repeat(3, 1fr); }
.lw-op-grid, .lw-mp-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 980px) {
.lw-pg-hero, .lw-of-hero {
height: 460px; min-height: 460px; max-height: 460px;
}
.lw-fc-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
.lw-pg-hero, .lw-of-hero {
height: 380px; min-height: 380px; max-height: 380px;
}
.lw-crumb { padding: 12px var(--pad-x); }
.lw-crumb-inner { font-size: 12px; letter-spacing: 0.8px; }
.lw-crumb, .lw-eyebrow, .lw-tab-city, .lw-op-place, .lw-rm-fact-lbl, .lw-rm-book-tag, .lw-rs-link, .lw-jr-cat, .lw-jr-date, .lw-offer-tag, .lw-ev-card-place, .lw-cap-tag, .lw-cc-lbl, .lw-cc-sub, .lw-voice-tag, .lw-prop-bar-label, .lw-faq-cat {
font-size: 12px !important;
}
.lw-pg-intro .lw-eyebrow { font-size: 12px !important; justify-content: flex-start; }
.lw-pg-intro-inner { text-align: left; }
.lw-pg-intro p { margin: 0; }
.lw-op-grid, .lw-mp-grid { grid-template-columns: 1fr; }
.lw-room-actions { justify-content: flex-start; }
.lw-faq-q { padding: 20px 20px; font-size: 16px; }
.lw-faq-a-inner { padding: 0 20px 20px; font-size: 14.5px; }
}
.lw-body, .lw-ritual p, .lw-offer-body p, .lw-ev-card-body p, .lw-jr-body p, .lw-voice p, .lw-op-card p, .lw-op-body p, .lw-fc-card p, .lw-pg-intro p, .lw-faq-a-inner, .lw-story-body p, .lw-of-lede {
font-size: 16px;
line-height: 1.7;
}
@media (max-width: 720px) {
body, .lw-body, .lw-ritual p, .lw-offer-body p, .lw-ev-card-body p, .lw-jr-body p, .lw-voice p, .lw-op-card p, .lw-op-body p, .lw-fc-card p, .lw-pg-intro p, .lw-faq-a-inner, .lw-story-body p, .lw-of-lede, .lw-op-body, .lw-mp-body p, .lw-rs-body p, .lw-rm-intro-copy p, .lw-rm-amen-item span, .lw-au-lede, .lw-au-cta-text, p {
font-size: 14px !important;
line-height: 1.65;
}
}
.lw-eyebrow, .lw-panel-loc, .lw-tab-city, .lw-of-select-lbl, .lw-of-empty .lw-eyebrow, .lw-op-place, .lw-op-link, .lw-op-more, .lw-rm-fact-lbl, .lw-rm-book-tag, .lw-rs-link, .lw-jr-cat, .lw-jr-date, .lw-offer-tag, .lw-ev-card-place, .lw-cap-tag, .lw-cc-lbl, .lw-cc-sub, .lw-voice-tag, .lw-hero-nums, .lw-hero-total, .lw-crumb, .lw-crumb-inner, .lw-prop-bar-label, .lw-faq-cat {
font-size: 13px;
}
.lw-prop-bar-nav a { font-size: 12px; padding: 8px 16px; letter-spacing: 1.2px; }
.lw-prop-bar-menu a { font-size: 12px; }
.lw-au-intro {
padding: clamp(60px, 8vw, 100px) var(--pad-x) clamp(28px, 4vw, 48px);
background: var(--paper);
}
.lw-au-intro-inner {
max-width: 900px;
margin: 0 auto;
text-align: center;
}
.lw-au-title {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(42px, 5.4vw, 68px);
line-height: 1.4;
letter-spacing: -1px;
color: var(--brown-deep);
margin: 0 0 clamp(20px, 3vw, 32px);
}
.lw-au-title em {
font-family: var(--f-italic);
color: var(--wine);
font-weight: 400;
}
.lw-au-lede {
font-family: var(--f-body);
font-size: 16px;
line-height: 1.7;
color: var(--muted);
margin: 0 auto;
max-width: 780px;
}
.lw-au-lede strong { color: var(--brown-deep); font-weight: 600; }
.lw-au-cta {
padding: clamp(68px, 9vw, 120px) var(--pad-x);
background: var(--cream);
text-align: center;
}
.lw-au-cta-inner {
max-width: 700px;
margin: 0 auto;
}
.lw-au-cta .lw-eyebrow { justify-content: center; }
.lw-au-cta-title {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(34px, 4.4vw, 54px);
line-height: 1.4;
letter-spacing: -0.8px;
color: var(--brown-deep);
margin: 0 0 20px;
}
.lw-au-cta-title em {
font-family: var(--f-italic);
color: var(--wine);
font-weight: 400;
}
.lw-au-cta-text {
font-family: var(--f-body);
font-size: 16px;
line-height: 1.7;
color: var(--muted);
margin: 0 0 clamp(24px, 3vw, 36px);
}
.lw-au-collage {
padding: clamp(28px, 4vw, 48px) var(--pad-x) clamp(60px, 8vw, 100px);
background: var(--paper);
}
.lw-au-collage-grid {
max-width: 1180px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: clamp(12px, 1.6vw, 20px);
}
.lw-au-cell {
margin: 0;
overflow: hidden;
border-radius: var(--radius-lg);
background: var(--cream);
}
.lw-au-cell img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform var(--t-media) var(--ease);
}
.lw-au-cell:hover img { transform: scale(1.03); }
.lw-au-cell-1 { grid-column: span 4; aspect-ratio: 16 / 9; }
.lw-au-cell-2 { grid-column: span 2; aspect-ratio: 4 / 5; }
.lw-au-cell-3 { grid-column: span 2; aspect-ratio: 1 / 1; }
.lw-au-cell-4 { grid-column: span 2; aspect-ratio: 1 / 1; }
.lw-au-cell-5 { grid-column: span 2; aspect-ratio: 1 / 1; }
.lw-au-cell-6 { grid-column: span 6; aspect-ratio: 21 / 9; }
@media (max-width: 900px) {
.lw-au-collage-grid { grid-template-columns: repeat(2, 1fr); }
.lw-au-cell-1 { grid-column: span 2; aspect-ratio: 16 / 10; }
.lw-au-cell-2,
.lw-au-cell-3,
.lw-au-cell-4,
.lw-au-cell-5 { grid-column: span 1; aspect-ratio: 1 / 1; }
.lw-au-cell-6 { grid-column: span 2; aspect-ratio: 16 / 9; }
}
@media (max-width: 520px) {
.lw-au-collage-grid { grid-template-columns: 1fr; }
.lw-au-cell-1,
.lw-au-cell-2,
.lw-au-cell-3,
.lw-au-cell-4,
.lw-au-cell-5,
.lw-au-cell-6 { grid-column: span 1; aspect-ratio: 16 / 10; }
}
.lw-au-mv {
padding: clamp(68px, 9vw, 108px) var(--pad-x);
background: var(--ivory);
border-top: 1px solid var(--hair);
}
.lw-au-mv-inner { max-width: 1180px; margin: 0 auto; }
.lw-au-mv-head { text-align: center; margin: 0 0 clamp(36px, 5vw, 60px); }
.lw-au-mv-head .lw-eyebrow { justify-content: center; }
.lw-au-mv-title {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(32px, 4.2vw, 52px);
line-height: 1.4;
letter-spacing: -0.8px;
color: var(--brown-deep);
margin: 0;
}
.lw-au-mv-title em {
font-family: var(--f-italic);
color: var(--wine);
font-weight: 400;
}
.lw-au-mv-cols {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(24px, 3.4vw, 48px);
margin: 0 0 clamp(44px, 6vw, 72px);
}
.lw-au-mv-col {
padding: clamp(24px, 3.2vw, 40px);
background: var(--paper);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
}
.lw-au-mv-col :is(h2, h3) {
font-family: var(--f-display);
font-weight: 500;
font-size: clamp(20px, 2.1vw, 25px);
line-height: 1.4;
color: var(--wine);
margin: 0 0 12px;
}
.lw-au-mv-col p {
font-family: var(--f-body);
font-size: 15.5px;
line-height: 1.7;
color: var(--muted);
margin: 0;
}
.lw-au-vals {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(20px, 2.6vw, 32px);
}
.lw-au-val { margin: 0; }
.lw-au-val-ico {
display: inline-flex;
align-items: center;
justify-content: center;
width: 46px;
height: 46px;
border-radius: 50%;
background: var(--peach-soft);
color: var(--brown);
font-size: 17px;
margin: 0 0 16px;
}
.lw-au-val :is(h2, h3) {
font-family: var(--f-display);
font-weight: 500;
font-size: 19px;
line-height: 1.4;
color: var(--brown-deep);
margin: 0 0 8px;
}
.lw-au-val p {
font-family: var(--f-body);
font-size: 14.5px;
line-height: 1.7;
color: var(--muted);
margin: 0;
}
@media (max-width: 900px) {
.lw-au-mv-cols { grid-template-columns: 1fr; }
.lw-au-vals { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
.lw-au-vals { grid-template-columns: 1fr; }
}
.lw-bl-soon {
max-width: 720px;
margin: 0 auto;
padding: clamp(40px, 6vw, 68px) clamp(24px, 4vw, 52px);
background: var(--paper);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
text-align: center;
}
.lw-bl-soon-ico {
display: inline-flex;
align-items: center;
justify-content: center;
width: 62px;
height: 62px;
border-radius: 50%;
background: var(--peach-soft);
color: var(--brown);
font-size: 22px;
margin: 0 0 24px;
}
.lw-bl-soon :is(h2, h3) {
font-family: var(--f-display);
font-weight: 400;
font-size: clamp(24px, 2.8vw, 34px);
line-height: 1.4;
letter-spacing: -0.5px;
color: var(--brown-deep);
margin: 0 0 16px;
}
.lw-bl-soon p {
font-family: var(--f-body);
font-size: 15.5px;
line-height: 1.7;
color: var(--muted);
margin: 0 auto 28px;
max-width: 560px;
}
.lw-bl-soon-cta {
display: flex;
flex-wrap: wrap;
gap: 12px;
justify-content: center;
}
.lw-tc {
padding: clamp(20px, 3vw, 40px) var(--pad-x) clamp(80px, 10vw, 120px);
background: var(--paper);
}
.lw-tc-inner {
max-width: 860px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: clamp(28px, 3.4vw, 44px);
}
.lw-tc-block {
padding: clamp(24px, 3vw, 36px);
background: var(--ivory);
border: 1px solid var(--hair);
border-radius: var(--radius-lg);
}
.lw-tc-block :is(h2, h3) {
font-family: var(--f-display);
font-weight: 500;
font-size: clamp(20px, 2.2vw, 26px);
line-height: 1.4;
color: var(--brown-deep);
margin: 0 0 16px;
}
.lw-tc-block ul {
margin: 0;
padding: 0 0 0 20px;
display: flex;
flex-direction: column;
gap: 12px;
}
.lw-tc-block li {
font-family: var(--f-body);
font-size: 15px;
line-height: 1.7;
color: var(--muted);
}
.lw-tc-block li::marker { color: var(--wine); }
.lw-tc-block a { color: var(--wine); text-decoration: underline; text-underline-offset: 2px; }
.lw-tc-block a:hover { color: var(--brown-deep); }
.lw-tc-note { background: var(--cream); }
.lw-tc-note h3 { color: var(--wine); }
.lw-au-quote {
max-width: var(--max-content);
margin: 44px auto 0;
padding: 28px 32px;
border-left: 2px solid var(--peach);
background: rgba(242, 202, 85,0.09);
}
.lw-au-quote p {
font-family: var(--f-display);
font-size: clamp(19px, 2vw, 25px);
font-style: italic;
font-weight: 300;
line-height: 1.45;
margin: 0 0 12px;
color: var(--brown-deep);
}
.lw-au-quote cite {
font-style: normal;
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--muted);
}
.lw-prop-bar-inner {
grid-template-columns: auto minmax(0, 1fr) auto;
}
.lw-prop-bar-label { white-space: nowrap; justify-self: start; }
.lw-prop-bar-nav {
min-width: 0;
overflow-x: auto;
scrollbar-width: none;
}
.lw-prop-bar-nav::-webkit-scrollbar { display: none; }
.lw-prop-bar-nav ul { flex-wrap: nowrap; }
.lw-prop-bar { top: var(--header-h, 131px); }
.lw-prop-bar-inner {
grid-template-columns: max-content minmax(0, 1fr) max-content;
gap: 24px;
}
.lw-prop-bar-label { min-width: 0; }
.lw-prop-bar-nav { justify-self: stretch; }
.lw-prop-bar-nav ul { justify-content: flex-start; }
:root { --propbar-h: 46px; }
.lw-prop-bar {
background: rgba(11, 22, 38,0.30);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border-top: 0;
border-bottom: 1px solid rgba(242, 202, 85,0.22);
box-shadow: none;
top: var(--header-h, 131px);
transition: background var(--t-micro) var(--ease), border-color var(--t-micro) var(--ease);
}
.lw-prop-bar-inner {
padding-top: 0;
padding-bottom: 0;
min-height: var(--propbar-h);
}
.lw-prop-bar-label { color: var(--peach); }
.lw-prop-bar-nav a {
color: rgba(251, 248, 241,0.92);
font-size: 12px;
letter-spacing: 1.2px;
}
.lw-prop-bar-nav a:hover,
.lw-prop-bar-nav a.is-active { color: var(--peach); }
.lw-prop-bar-more-btn span { background: var(--ivory); }
.lw-prop-bar.is-stuck {
background: var(--paper);
border-bottom-color: var(--hair);
box-shadow: 0 1px 0 rgba(11, 22, 38,0.06);
}
.lw-prop-bar.is-stuck .lw-prop-bar-label { color: var(--wine); }
.lw-prop-bar.is-stuck .lw-prop-bar-nav a { color: var(--brown-deep); }
.lw-prop-bar.is-stuck .lw-prop-bar-nav a:hover,
.lw-prop-bar.is-stuck .lw-prop-bar-nav a.is-active { color: var(--wine); }
.lw-prop-bar.is-stuck .lw-prop-bar-more-btn span { background: var(--brown-deep); }
@media (max-width: 900px) { :root { --propbar-h: 42px; } }
.lw-prop-bar-inner {
max-width: 1560px;
padding-left: var(--pad-x);
padding-right: var(--pad-x);
}
.lw-prop-bar { top: var(--header-h, 131px); transition: top var(--t-micro) var(--ease), background var(--t-micro) var(--ease); }
.lw-prop-bar.is-stuck { top: var(--header-h-sm, 96px); }
:root { --propbar-h: 47px; --propbar-h-sm: 38px; --header-h-sm: 66px; }
.lw-prop-bar-inner { min-height: var(--propbar-h); transition: min-height var(--t-micro) var(--ease); }
.lw-prop-bar.is-stuck .lw-prop-bar-inner { min-height: var(--propbar-h-sm); }
.lw-prop-bar.is-stuck .lw-prop-bar-nav a { font-size: 12px; }
@media (max-width: 1340px) {
.lw-prop-bar-nav a[href*="experiences"] { display: none; }
}
@media (max-width: 1180px) {
.lw-prop-bar-nav a[href*="weddings"] { display: none; }
}
.lw-prop-bar.is-stuck { top: 66px; }
.lw-prop-bar:not(.is-stuck) {
backdrop-filter: blur(6px) saturate(1.05);
-webkit-backdrop-filter: blur(6px) saturate(1.05);
border-bottom-color: rgba(242, 202, 85,0.18);
}
.lw-prop-bar:not(.is-stuck) .lw-prop-bar-label,
.lw-prop-bar:not(.is-stuck) .lw-prop-bar-nav a {
text-shadow: 0 1px 6px rgba(11, 22, 38,0.55);
}
.lw-prop-bar,
.lw-prop-bar.is-stuck { top: var(--hdr-now, 122px); }
.lw-prop-bar.is-compact .lw-prop-bar-inner { min-height: var(--propbar-h-sm); }
.lw-prop-bar.is-compact .lw-prop-bar-nav a { font-size: 12px; }
.lw-prop-bar { margin-top: 0; }
.lw-prop-bar-inner { padding-top: 0; padding-bottom: 0; }
.lw-prop-bar {
transition: background var(--t-micro) cubic-bezier(.4,0,.2,1),
border-color var(--t-micro) cubic-bezier(.4,0,.2,1);
will-change: top;
}
.lw-prop-bar-inner {
transition: min-height var(--t-micro) cubic-bezier(.4,0,.2,1);
}
.lw-prop-bar-nav a,
.lw-prop-bar-label {
transition: font-size var(--t-micro) cubic-bezier(.4,0,.2,1),
color var(--t-micro) cubic-bezier(.4,0,.2,1);
}
.lw-prop-bar {
position: sticky;
top: 0;
margin-top: 0;
}
.lw-chrome {
position: sticky;
top: 0;
z-index: 100;
}
.lw-chrome .lw-header { position: static; }
.lw-chrome .lw-prop-bar { position: static; }
.lw-prop-bar-inner {
display: grid;
grid-template-columns: max-content minmax(0, 1fr) max-content;
align-items: center;
gap: 28px;
max-width: 1560px;
margin: 0 auto;
padding-left: var(--pad-x);
padding-right: var(--pad-x);
}
.lw-prop-bar-label {
grid-column: 1;
justify-self: start;
margin-left: 0;
overflow: visible;
}
.lw-prop-bar-nav { grid-column: 2; justify-self: stretch; }
.lw-prop-bar-more { grid-column: 3; justify-self: end; }
.lw-chrome ~ .lw-hero,
.lw-chrome ~ .lw-pg-hero,
.lw-chrome + * .lw-hero {
margin-top: calc(-1 * (var(--header-h, 132px) + var(--propbar-h, 48px))) !important;
}
.lw-chrome ~ .lw-hero .lw-hero-caption {
padding-top: calc(var(--header-h, 132px) + var(--propbar-h, 48px));
}
.lw-chrome ~ .lw-hero,
.lw-chrome ~ .lw-pg-hero {
margin-top: calc(-1 * (var(--header-h, 120px) + 48px)) !important;
}
.lw-prop-bar,
.lw-prop-bar.is-stuck,
.lw-prop-bar.is-compact {
background: linear-gradient(180deg,
rgba(11, 22, 38,0.86) 0%,
rgba(11, 22, 38,0.78) 100%);
backdrop-filter: blur(8px) saturate(1.05);
-webkit-backdrop-filter: blur(8px) saturate(1.05);
border-bottom: 1px solid rgba(242, 202, 85,0.20);
box-shadow: none;
}
.lw-prop-bar .lw-prop-bar-label,
.lw-prop-bar.is-stuck .lw-prop-bar-label { color: var(--peach); }
.lw-prop-bar .lw-prop-bar-nav a,
.lw-prop-bar.is-stuck .lw-prop-bar-nav a { color: rgba(251, 248, 241,0.92); }
.lw-prop-bar .lw-prop-bar-nav a:hover,
.lw-prop-bar.is-stuck .lw-prop-bar-nav a:hover,
.lw-prop-bar .lw-prop-bar-nav a.is-active,
.lw-prop-bar.is-stuck .lw-prop-bar-nav a.is-active { color: var(--peach); }
.lw-prop-bar .lw-prop-bar-more-btn span,
.lw-prop-bar.is-stuck .lw-prop-bar-more-btn span { background: var(--ivory); }
.lw-prop-bar,
.lw-prop-bar:not(.is-stuck),
.lw-prop-bar.is-stuck,
.lw-prop-bar.is-compact {
background: linear-gradient(180deg,
rgba(11, 22, 38,0.86) 0%,
rgba(11, 22, 38,0.78) 100%) !important;
}
.lw-chrome ~ .lw-hero,
.lw-chrome ~ .lw-pg-hero {
margin-top: calc(-1 * (120px + 48px)) !important;
}
:root { --propbar-h: 38px; --propbar-h-sm: 32px; }
.lw-prop-bar-inner { min-height: var(--propbar-h) !important; }
.lw-prop-bar.is-compact .lw-prop-bar-inner { min-height: var(--propbar-h-sm) !important; }
.lw-prop-bar-nav a { padding-top: 4px !important; padding-bottom: 4px !important; }
.lw-prop-bar,
.lw-prop-bar:not(.is-stuck),
.lw-prop-bar.is-stuck,
.lw-prop-bar.is-compact {
background: linear-gradient(180deg,
rgba(11, 22, 38,0.80) 0%,
rgba(11, 22, 38,0.72) 100%) !important;
}
.lw-chrome ~ .lw-hero,
.lw-chrome ~ .lw-pg-hero { margin-top: calc(-1 * (88px + 36px)) !important; }
.lw-prop-bar,
.lw-prop-bar:not(.is-stuck),
.lw-prop-bar.is-stuck,
.lw-prop-bar.is-compact {
background: linear-gradient(180deg,
rgba(11, 22, 38,0.62) 0%,
rgba(11, 22, 38,0.52) 100%) !important;
}
.lw-prop-bar-inner { gap: 20px !important; }
.lw-prop-bar-nav a {
padding-left: 8px !important;
padding-right: 8px !important;
letter-spacing: 1.2px !important;
}
.lw-prop-bar-label { letter-spacing: 1.2px !important; }
@media (min-width: 1200px) {
.lw-prop-bar-nav a[href*="experiences"],
.lw-prop-bar-nav a[href*="weddings"] { display: inline-flex !important; }
}
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) {
background: var(--paper) !important;
}
body.jpt-h-propbar .lw-header.lw-header--solid::before { opacity: 0 !important; }
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-nav a,
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-head-rates {
color: var(--brown-deep) !important;
}
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-toggle span {
background: var(--brown-deep) !important;
}
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-btn-outline {
border-color: var(--wine) !important; color: var(--wine) !important;
}
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-btn-outline:hover {
background: var(--wine) !important; color: #fff !important;
}
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-contact-btn {
color: var(--wine) !important; border-color: rgba(152, 13, 46,0.45) !important;
}
.lw-prop-bar-inner { grid-template-columns: max-content minmax(0,1fr) auto !important; }
.lw-prop-bar-nav ul { display: flex; flex-wrap: nowrap; gap: 0; }
.lw-prop-bar-nav li.is-hidden { display: none !important; }
.lw-prop-bar-more[hidden] { display: none !important; }
.lw-prop-bar-more { margin-left: 8px; }
@media (max-width: 1340px) { .lw-prop-bar-nav a[href*="experiences"] { display: inline-flex !important; } }
@media (max-width: 1180px) { .lw-prop-bar-nav a[href*="weddings"] { display: inline-flex !important; } }
body.jpt-h-propbar .lw-header.lw-header--solid:not(.is-scrolled) .lw-nav a.is-active,
.lw-header--solid:not(.is-scrolled) .lw-nav a.is-active { color: var(--wine) !important; }
.lw-chrome .lw-header { position: relative !important; z-index: 3 !important; }
.lw-chrome .lw-prop-bar { position: relative !important; z-index: 1 !important; }
.lw-nav .lw-drop { z-index: 140 !important; }
.lw-has-drop { position: relative; z-index: 5; }
.lw-prop-bar-more { display: block !important; margin-left: 12px; }
.lw-prop-bar-more[hidden] { display: block !important; }
.lw-prop-bar-nav a {
font-size: 12px !important;
padding-left: 12px !important;
padding-right: 12px !important;
}
.lw-prop-bar-inner {
grid-template-columns: max-content max-content auto !important;
justify-content: start;
}
.lw-prop-bar-nav { justify-self: start !important; }
.lw-prop-bar-more { margin-left: 8px !important; justify-self: start !important; }
.lw-prop-bar-nav a { letter-spacing: 1.1px !important; }
.lw-prop-bar-inner { gap: 16px !important; }
.lw-prop-bar-label { letter-spacing: 1.2px !important; }
.lw-prop-bar-inner {
grid-template-columns: max-content minmax(0, auto) max-content !important;
justify-content: start !important;
}
.lw-prop-bar-nav { min-width: 0 !important; overflow: hidden !important; }
.lw-chrome .lw-prop-bar,
.lw-chrome .lw-prop-bar.is-stuck,
.lw-chrome .lw-prop-bar.is-compact {
top: auto !important;
bottom: auto !important;
}
.lw-prop-bar-nav a, .lw-prop-bar-label {
display: inline-flex; align-items: center; min-height: 32px;
}
@media (pointer: coarse) {
.lw-prop-bar-nav a { min-height: 44px; }
}
@media (max-height: 700px), (max-width: 900px) {
.lw-pg-hero { min-height: 0 !important; height: auto !important; }
.lw-rm-intro, .lw-of-filter { padding-top: 16px; }
}
@media (max-width: 900px) {
.lw-mp-grid, .lw-home-rooms-grid { grid-template-columns: 1fr !important; }
.lw-prop-bar-inner { padding-left: 16px !important; padding-right: 16px !important; }
}
