/* Paired editorial features on the Luxe Retreats homepage. */
.lr-spread {
  margin: 0 clamp(10px, 2.6vw, 56px);
  --panel-paper: #f0eade;
  --panel-ink: #242521;
}
.lr-spread-row { display: grid; grid-template-columns: 43fr 57fr; background: var(--panel-paper); color: var(--panel-ink); }
.lr-spread-row > img { display:block; width:100%; height:100%; min-height:0; object-fit:cover; }
.lr-spread-copy { align-self:center; padding:clamp(40px, 5.5vw, 100px); }
.lr-spread-copy .lr-kicker { color:#735e39; margin:0 0 20px; }
.lr-spread-copy h2 { font:400 clamp(32px, 3.4vw, 46px)/1.08 var(--serif); color:inherit; margin:0; }
.lr-spread-copy p:not(.lr-kicker) { color:#4e504a; max-width:44ch; margin:20px 0 26px; line-height:1.7; }
.lr-spread-copy a { display:inline-block; padding:14px 19px; border:1px solid #83714e; color:inherit; font:500 11px/1.4 var(--sans); letter-spacing:.1em; text-transform:uppercase; text-decoration:none; }
.lr-spread-copy a:hover, .lr-spread-copy a:focus-visible { background:#242521; color:white; }
.lr-spread-dark { grid-template-columns:1fr 1fr; background:#272a24; color:#faf7ef; }
.lr-spread-dark img { grid-column:1; grid-row:1; }
.lr-spread-dark .lr-spread-copy { grid-column:2; grid-row:1; }
.lr-spread-dark .lr-kicker { color:#d6bc87; }
.lr-spread-dark p:not(.lr-kicker) { color:#e4e0d6; }
.lr-spread-dark a { border-color:#bda982; }
.lr-spread-dark a:hover, .lr-spread-dark a:focus-visible { background:#f0eade; color:#242521; }
.lr-editorial .lr-residences, .lr-editorial .lr-stories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(18px,2.4vw,40px); }
.lr-editorial .lr-stories { grid-template-columns:repeat(3,minmax(0,1fr)); }
.lr-editorial .lr-residence, .lr-editorial .lr-stories article { grid-area:auto; max-width:none; margin:0; padding:0; background:#ede7db; }
.lr-editorial :is(.lr-residence,.lr-stories article):nth-child(even) { background:#e9e8df; }
.lr-editorial :is(.lr-residence,.lr-stories article):nth-child(3) { background:#f1eae2; }
.lr-editorial :is(.lr-residence,.lr-stories article) img { display:block; width:100%; aspect-ratio:1.55; height:auto; object-fit:cover; margin:0; }
.lr-editorial .lr-residence-meta, .lr-editorial .lr-stories article a > div { padding:clamp(16px,1.6vw,28px); border:0; }
.lr-editorial .lr-residence-meta { display:flex; align-items:end; flex-wrap:wrap; gap:10px; }
.lr-editorial .lr-residence-meta h3, .lr-editorial .lr-stories article h3 { font:400 clamp(22px,2vw,34px)/1.2 var(--serif); margin:6px 0; color:#252721; }
.lr-editorial .lr-residence-meta .lr-link { margin:0; }
.lr-editorial .lr-stories article a { display:block; }
.lr-editorial .lr-stories article .lr-kicker { margin:0; }
@media (max-width:760px) {
  .lr-spread-row { display:flex; flex-direction:column; }
  .lr-spread-row > img { order:-1; height:auto; aspect-ratio:1.6; }
  .lr-spread-copy { align-self:stretch; padding:30px 24px; }
  .lr-editorial .lr-residences, .lr-editorial .lr-stories { grid-template-columns:minmax(0,1fr); }
}

/* Lifestyle photographs and captions share a single edge. */
.stay-gallery { margin:0 clamp(10px,2.6vw,56px); padding-bottom:clamp(32px,5vw,80px); }
.stay-gallery figure { margin:0; }
.stay-gallery img { display:block; width:100%; object-fit:cover; }
.stay-dining { display:grid; grid-template-columns:3fr 2fr; align-items:stretch; background:#eee8dc; }
.stay-dining > img { height:100%; aspect-ratio:1.65; }
.stay-dining figcaption { align-self:center; padding:clamp(28px,4.5vw,82px); }
.stay-gallery figcaption > span {
  display:block; font:500 11px/1.5 var(--sans); letter-spacing:.15em;
  text-transform:uppercase; color:#74613e;
}
.stay-gallery figcaption h3 {
  font:400 clamp(25px, 2.5vw, 36px)/1.14 var(--serif);
  letter-spacing:-.025em; color:#252721; margin:9px 0 0;
}
.stay-gallery .stay-dining h3 { font-size:clamp(25px, 2.5vw, 36px); }
body .stay-dining p { font:400 16px/1.7 var(--sans); max-width:36ch; color:#515147; margin:18px 0; }
.stay-dining a { display:inline-block; padding:7px 0; color:#35362f; border-bottom:1px solid #a08b63; text-decoration:none; font:500 13px/1.5 var(--sans); }
.stay-dining a b { margin-left:12px; font-weight:400; }
.stay-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(14px,2vw,32px); margin-top:clamp(14px,2vw,32px); }
.stay-pair img { height:auto; aspect-ratio:1.7; }
.stay-pair figure { background:#eee9df; }
.stay-pair figure + figure { background:#e8e9e1; }
.stay-pair figcaption { padding:clamp(18px,2vw,35px); }
@media(max-width:760px) {
  .stay-dining, .stay-pair { grid-template-columns:1fr; }
  .stay-dining > img { height:auto; aspect-ratio:1.5; }
  .stay-dining figcaption { padding:28px 24px; }
}

/* Destination photography follows the same card proportions as the villa edit. */
.lr-editorial .lr-destinations .lr-heading { align-items:center; margin-bottom:clamp(18px,2.4vw,38px); }
.lr-editorial .lr-destinations .lr-heading h2 {
  margin:0; font:400 clamp(32px, 3.4vw, 46px)/1.15 var(--serif); letter-spacing:-.025em;
}
.lr-destinations .lr-destination-controls { padding:0; background:transparent; }
.lr-destinations .lr-destination-track {
  --card-gap:clamp(14px,2vw,32px);
  gap:var(--card-gap); align-items:stretch; padding-bottom:12px;
  scrollbar-color:#b6a889 #eeeae2;
}
.lr-destinations .lr-destination-track > .lr-destination {
  flex:0 0 calc((100% - var(--card-gap) - var(--card-gap))/3);
  display:flex; flex-direction:column; aspect-ratio:auto; margin:0;
  text-decoration:none; color:#252721; background:#eee8dc;
}
.lr-destinations .lr-destination:nth-child(3n+2) { background:#e8e9e1; }
.lr-destinations .lr-destination:nth-child(3n) { background:#f1eae2; }
.lr-destinations .lr-destination::after { content:none; }
.lr-destinations .lr-destination img {
  display:block; width:100%; height:auto; aspect-ratio:1.65; object-fit:cover;
}
.lr-destinations .lr-destination:hover img { transform:none; }
.lr-destinations .lr-destination > div {
  position:static; display:flex; flex-direction:column; flex:1;
  padding:clamp(16px,1.55vw,26px);
}
.lr-destinations .lr-destination h3 {
  font:400 clamp(23px,2vw,34px)/1.15 var(--serif); letter-spacing:-.02em; margin:0; color:#252721;
}
.lr-destinations .lr-destination .destination-parent {
  order:-1; font:500 10px/1.5 var(--sans); letter-spacing:.14em; margin:0 0 6px;
  color:#705e40; text-shadow:none;
}
.lr-editorial .lr-destinations .lr-destination p { font:400 14px/1.5 var(--sans); color:#53544c; margin:6px 0 12px; }
.lr-destinations .lr-destination > div > span { font:500 11px/1.4 var(--sans); margin-top:auto; color:#544831; }
.lr-destinations .lr-destination:focus-visible { outline:2px solid #806937; outline-offset:-2px; }
@media(max-width:1000px) {
  .lr-destinations .lr-destination-track > .lr-destination { flex-basis:calc((100% - var(--card-gap))/2); }
}
@media(max-width:600px) {
  .lr-destinations .lr-destination-track > .lr-destination { flex-basis:85%; }
}
.stay-gallery figure {position:relative}
.stay-gallery figcaption a::after {content:"";position:absolute;inset:0;z-index:1}
.stay-gallery figcaption a:focus-visible::after {outline:3px solid #896e3f;outline-offset:3px}
.stay-pair h3 a {color:inherit;text-decoration:none}
.stay-pair h3 b {font:400 .55em var(--sans);color:#756242}

/* Philosophy spread below the homepage search. */
.lr-editorial .lr-philosophy {
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;
  gap:clamp(32px,6vw,100px);max-width:1480px;margin:auto;
  padding:clamp(36px,4.5vw,68px) 6vw;scroll-margin-top:88px;
}
.lr-philosophy-copy {max-width:440px}
.lr-philosophy-copy .lr-kicker {margin:0 0 18px;color:#79643f}
body.lr-editorial .lr-philosophy h2 {margin:0;font:400 clamp(48px,4vw,56px)/1.06 var(--serif);letter-spacing:-.035em;color:#20231e}
body.lr-editorial .lr-philosophy h2 em {font-style:italic;color:#856d42}
.lr-editorial .lr-philosophy-text {margin:18px 0;color:#55584e;font:400 16px/1.65 var(--sans)}
.lr-philosophy > img {display:block;width:100%;height:clamp(270px,24vw,360px);object-fit:cover;object-position:50% 53%}
@media(max-width:720px){
  .lr-editorial .lr-philosophy {grid-template-columns:1fr;gap:24px;padding:36px 6vw}
  body.lr-editorial .lr-philosophy h2 {font-size:clamp(32px,6vw,36px)}
  .lr-philosophy > img {height:auto;aspect-ratio:1.85;object-fit:cover}
}

/* Pair the services introduction with the dining photograph immediately below it. */
body.lr-editorial .lr-life-heading {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);
  gap:10px clamp(28px,6vw,84px);align-items:center;
  padding-top:clamp(28px,3.2vw,48px);padding-bottom:clamp(24px,2.6vw,38px);
}
.lr-life-heading > .lr-kicker {display:flex;align-items:center;gap:10px;margin:0;color:#7b683f}
.lr-life-heading > .lr-kicker::before {
  content:"";width:22px;height:22px;background:url('/assets/footer-arch.svg') center/contain no-repeat;
}
body.lr-editorial .lr-life-heading h2 {font-weight:400;line-height:1.08;margin:0}
body.lr-editorial .lr-life-heading h2 em {color:#856d42}
.lr-life-heading > div p {margin:0 0 12px}
@media(max-width:720px){
  body.lr-editorial .lr-life-heading {grid-template-columns:1fr;gap:12px}
  body.lr-editorial .lr-life-heading > div {margin:0}
}
