/* The ranch's existing type, warm paper and moss; photography leads. */
.stays-page main{padding-top:118px}
.stays-opening{max-width:1480px;margin:auto;padding:22px 5vw 44px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:end}
.stays-opening .eyebrow{font-size:10px;color:var(--moss);margin-bottom:19px}
.stays-page .stays-opening h1{font-size:clamp(48px,5.4vw,82px);line-height:1.05}
.stays-opening h1 em,.stays-section-heading h2 em{color:var(--moss)}
.stays-welcome{max-width:440px;justify-self:end}
.stays-welcome>p{font-size:15px;line-height:1.8;color:var(--stone)}
.stays-welcome nav{display:flex;gap:30px;margin-top:17px}
.stays-welcome nav a{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:9px 0;font-size:12px;min-height:44px}
.stays-collection{max-width:1480px;margin:0 auto;padding:20px 5vw 50px;scroll-margin-top:90px}
.stays-section-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:27px;border-top:1px solid var(--line);padding-top:30px}
.stays-section-heading h2{font-size:clamp(36px,3.7vw,55px);line-height:1.1}
.stays-section-heading>p{font-size:14px;line-height:1.8;max-width:410px;color:var(--stone)}
.lodging-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start}
.lodging-card{min-width:0;scroll-margin-top:100px;background:var(--moss);color:var(--bone)}
.lodging-photo{margin:0;position:relative}
.stays-page .lodging-photo img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover;filter:brightness(1.05)}
.stays-page .lodging-photo.stay-carousel{aspect-ratio:3/2}
.stays-page .lodging-photo .stay-photo-open img{height:100%;object-fit:cover}
.stays-page .lodging-photo .stay-photo-arrow{border:0;background:none}
.stays-page .lodging-photo .stay-photo-hint{font-size:10px;left:18px;bottom:13px}
.stays-page .lodging-photo .stay-photo-count{font-size:10px;right:18px;bottom:13px}
.lodging-photo figcaption{position:absolute;bottom:12px;left:18px;right:18px;font-size:9px;color:#fff;text-shadow:0 1px 4px #000;line-height:1.5}
.lodging-copy{padding:29px 32px 30px}
.lodging-copy>.eyebrow{font-size:9px;letter-spacing:.14em;color:var(--bone);opacity:.7}
.lodging-copy h3{font:42px/1.1 var(--serif);color:var(--bone);margin:10px 0 12px}
.lodging-line{font:14px/1.7 var(--sans);color:var(--bone);opacity:.85}
.lodging-copy details{margin-top:20px;border-top:1px solid #f3eee538;border-bottom:1px solid #f3eee538}
.lodging-copy summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;min-height:51px;padding:12px 0;cursor:pointer;font:13px/1.6 var(--sans)}
.lodging-copy summary::-webkit-details-marker{display:none}
.lodging-copy summary>span{height:11px;width:11px;position:relative;flex-shrink:0}
.lodging-copy summary>span:before,.lodging-copy summary>span:after{content:'';position:absolute;top:5px;left:0;width:11px;height:1px;background:currentColor}
.lodging-copy summary>span:after{transform:rotate(90deg)}
.lodging-copy details[open] summary>span:after{transform:none}
.lodging-details{padding:0 0 20px}
.lodging-details p{font-size:14px;line-height:1.8;color:var(--bone);opacity:.85}
.lodging-details .lodging-meta{font-size:11px;line-height:1.8;margin-top:13px}
.lodging-copy .text-link{font-size:10px;letter-spacing:.1em;color:var(--bone);border-color:#f3eee566;min-height:44px;margin-top:12px;gap:32px}
.lodging-card summary:focus-visible,.stays-page main a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.stays-footnote{max-width:1480px;margin:auto;padding:0 5vw 48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 30px;color:var(--stone)}
.stays-footnote p{font-size:11px;line-height:1.7}.stays-footnote .text-link{font-size:10px;min-height:44px}
@media(min-width:901px){#tents .lodging-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}#tents .lodging-card:last-child .lodging-photo{height:100%}#tents .lodging-card:last-child img{height:100%;min-height:320px}}
@media(max-width:900px){.stays-opening{grid-template-columns:1fr;gap:20px}.stays-welcome{justify-self:start;max-width:none}.stays-section-heading{align-items:start;gap:25px}.stays-section-heading>p{max-width:330px}.lodging-grid{gap:22px}.lodging-copy{padding:24px}.lodging-copy h3{font-size:36px}}
@media(max-width:600px){.stays-page main{padding-top:101px}.stays-opening{padding:18px 24px 25px;gap:18px}.stays-opening .eyebrow{font-size:9px;margin-bottom:16px}.stays-page .stays-opening h1{font-size:48px}.stays-welcome>p{font-size:14px}.stays-welcome nav{margin-top:10px;gap:26px}.stays-collection{padding:15px 20px 28px;scroll-margin-top:82px}.stays-section-heading{display:block;padding-top:24px;margin-bottom:21px}.stays-section-heading h2{font-size:39px}.stays-section-heading>p{margin-top:14px;max-width:none;font-size:14px}.lodging-grid{grid-template-columns:1fr;gap:24px}.lodging-copy{padding:24px}.lodging-copy h3{font-size:37px}.lodging-copy summary{font-size:14px;min-height:55px}.stays-footnote{padding:6px 24px 30px;display:block}.stays-footnote p+p{margin-top:7px}.stays-footnote .text-link{margin-top:15px}}
.lodging-copy .stay-key-features{margin:12px 0 16px;font-size:13px;line-height:1.6;color:var(--bone)}
.lodging-copy .stay-key-features strong{display:block;font-size:16px;font-weight:500}
.lodging-copy .stay-key-features span{display:block;margin-top:4px;opacity:.85}
