/* The camp's printed rates, made usable without turning them into a reservation. */
.camp-stays{position:relative;background:#f4e8d5;padding-top:100px;scroll-margin-top:35px}
.rate-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:0 0 22px;border-bottom:1px solid #143e3630}
.rate-tabs{display:flex;gap:7px;flex-wrap:wrap}.rate-tabs[hidden]{display:none}
.rate-tabs button{border:1px solid #143e3640;background:transparent;border-radius:28px;padding:13px 19px;font-size:12px;min-height:46px;color:var(--ink);transition:background .2s,color .2s}
.rate-tabs button[aria-pressed=true]{background:#17483a;color:#fff9ed;border-color:#17483a}.rate-tabs button span{opacity:.65;margin-left:8px;font-size:9px}
.rate-toolbar>a{font-size:11px;line-height:1.6;margin:0;min-height:44px;display:flex;align-items:center}
.rate-context{font-size:11px;line-height:1.85;color:#425d4d;max-width:780px;margin:20px 0 35px}
.rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px;align-items:start}
.rate-card{min-width:0;overflow:hidden;background:#fff9ee;border:1px solid #485f3424;border-radius:5px;box-shadow:0 8px 25px #714c2810}.rate-card[hidden]{display:none}
.rate-photo{position:relative;display:block;width:100%;border:0;padding:0;background:#e3d9c2;overflow:hidden;text-align:left;border-radius:0;color:white;aspect-ratio:3/2}
.rate-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.2,1)}
.rate-photo:hover img{transform:scale(1.035)}.rate-photo span{position:absolute;right:16px;top:16px;background:#fff9eaf2;color:#143e36;font-size:9px;border-radius:20px;padding:11px 14px;box-shadow:0 2px 10px #0001}
.rate-photo-caption{padding:12px 27px 0;font-size:8px;letter-spacing:.13em;line-height:1.7;color:#536c5b}
.rate-card-body{padding:25px 28px 29px}.rate-card-body>.eyebrow{font-size:9px;color:#926045;line-height:1.6}.rate-card h3{font-size:clamp(32px,3.4vw,48px);line-height:1.08;letter-spacing:-.045em;margin:10px 0 12px}
.rate-story{font-size:13px;line-height:1.8;color:#425d4d;margin-bottom:23px;min-height:47px;max-width:400px}
.rate-card label{display:block;font-size:10px;line-height:1.7;margin-bottom:8px;color:#425d4d}
.rate-option{font:inherit;font-size:16px;line-height:1.5;width:100%;min-width:0;max-width:100%;min-height:50px;padding:12px 35px 12px 14px;background:#f5f0e4;border:1px solid #143e3640;color:#173f36;border-radius:3px}
.rate-option:disabled{opacity:1;-webkit-text-fill-color:#173f36;background:#f5f0e4;border-color:#143e3620;appearance:none;cursor:default}
.rate-price{display:flex;align-items:center;gap:15px;margin-top:28px;flex-wrap:wrap}.rate-value{font-family:var(--serif);font-size:50px;line-height:1;letter-spacing:-.06em;font-weight:500;color:#a64f32;font-variant-numeric:lining-nums}
.rate-price>span{font-size:8px;line-height:1.8;letter-spacing:.1em;max-width:140px;color:#526b5b}
.rate-period{font-size:10px;line-height:1.65;color:#536c5b;margin:10px 0 21px}
.rate-amenities{display:flex;gap:8px;flex-wrap:wrap;padding:0;list-style:none;min-height:63px;align-content:start}
.rate-amenities li{font-size:10px;line-height:1.5;padding:6px 9px;border-radius:3px;background:#e9eddf;color:#345243}
.rate-detail{border-top:1px solid #143e3624;margin:17px 0 20px}.rate-detail summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none;min-height:48px;font-size:12px;font-weight:500}
.rate-detail summary::-webkit-details-marker,.camp-extras summary::-webkit-details-marker{display:none}.rate-detail summary span{font-size:22px;font-weight:400}.rate-detail[open] summary span{transform:rotate(45deg)}
.rate-detail p{font-size:12px;line-height:1.85;color:#425d4d;margin:0 0 13px}.rate-source{display:inline-flex;align-items:center;min-height:44px;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.rate-inquire{width:100%;justify-content:space-between;background:#17483a;color:#fff9ed;min-height:50px;border:1px solid #17483a;font-size:12px;padding:13px 20px}.rate-inquire:hover{background:#235b47}
.favourite-room{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:35px 0;margin-top:22px}.favourite-room .eyebrow{font-size:8px}.favourite-room h3{font-size:33px;line-height:1.2;letter-spacing:-.04em;margin:12px 0}.favourite-room p:last-child{font-size:12px;line-height:1.8;max-width:550px}.favourite-room button{border:0;border-bottom:1px solid;background:transparent;padding:10px 0;min-height:44px;flex-shrink:0;font-size:12px;color:inherit}
.camp-extras{border-top:1px solid #143e3640;border-bottom:1px solid #143e3640}.camp-extras>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 0;font-family:var(--serif);font-size:32px;letter-spacing:-.04em;line-height:1.2}
.camp-extras>summary small{display:block;font-family:var(--font);letter-spacing:0;font-size:11px;line-height:1.7;color:#526b5b;margin-top:9px}.camp-extras>summary b{font-family:var(--font);font-size:25px;font-weight:400}.camp-extras[open]>summary b{transform:rotate(45deg)}
.camp-extras dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px;padding:0 0 20px}.camp-extras dl>div{border-top:1px solid #143e3620;padding:18px 0;min-width:0}.camp-extras dt{font-size:12px;margin-bottom:8px;line-height:1.5}.camp-extras dd{margin:0;font-size:13px;line-height:1.6}.camp-extras dd strong{font-weight:600}.camp-extras dd small{display:block;font-size:10px;line-height:1.8;color:#425d4d;max-width:380px;margin-top:6px}.camp-extras>p{font-size:11px;line-height:1.8;padding-bottom:22px}
.rate-help{margin-top:28px;display:flex;align-items:start;justify-content:space-between;gap:30px}.rate-help>p{font-size:12px;line-height:1.9;max-width:480px}.rate-help>div{display:flex;gap:5px 22px;flex-wrap:wrap;max-width:440px;justify-content:flex-end}.rate-help a{font-size:11px;text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px;line-height:1.6}
#room-request-error{display:block;color:#a33f30;font-size:11px;line-height:1.7}.form-grid label small{font-weight:400;opacity:.7;margin-left:4px}
@media(min-width:1600px){.rate-grid{gap:48px}.rate-card-body{padding:30px 38px 38px}.rate-photo-caption{padding-left:38px}}
@media(max-width:900px){.rate-grid{gap:22px}.rate-card-body{padding:23px 21px}.rate-photo-caption{padding-left:21px}.rate-story{min-height:70px}.rate-price{gap:10px}.rate-value{font-size:46px}.rate-price>span{max-width:110px;font-size:7px}.favourite-room{display:block}.favourite-room button{margin-top:15px}.rate-help{display:block}.rate-help>div{justify-content:flex-start;margin-top:12px;max-width:none}}
@media(max-width:620px){.camp-stays{padding:65px 6% 60px}.stays-heading{margin-bottom:30px}.stays-heading h2{font-size:clamp(42px,11.5vw,65px)}.rate-toolbar{gap:14px;padding-bottom:15px}.rate-tabs{gap:6px}.rate-tabs button{font-size:10px;padding:11px 13px;min-height:44px}.rate-tabs button span{font-size:8px;margin-left:5px}.rate-toolbar>a{font-size:10px}.rate-context{font-size:10px;margin:17px 0 27px}.rate-grid{grid-template-columns:1fr;gap:27px}.rate-card h3{font-size:39px}.rate-story{min-height:0;font-size:13px;margin-bottom:20px}.rate-card-body{padding:23px 21px 25px}.rate-photo-caption{font-size:7px;padding:11px 21px 0}.rate-value{font-size:48px}.rate-price>span{font-size:8px;max-width:125px}.rate-amenities{min-height:0}.rate-photo span{top:12px;right:12px;padding:10px 12px;font-size:8px}.rate-inquire{font-size:12px}.favourite-room{padding:30px 0;margin-top:8px}.favourite-room h3{font-size:30px}.favourite-room p:last-child{font-size:12px}.camp-extras>summary{font-size:29px}.camp-extras dl{grid-template-columns:1fr}.rate-help>p{font-size:11px}.rate-help>div{column-gap:18px}.rate-help a{font-size:11px}}
@media(max-width:350px){.rate-tabs button{padding:10px 11px}.rate-card-body{padding:21px 17px}.rate-card h3{font-size:35px}.rate-price{gap:12px}.rate-value{font-size:43px}.rate-photo-caption{padding-left:17px}.rate-option{padding-left:10px;font-size:16px}.favourite-room button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.rate-photo img,.rate-tabs button{transition:none}.rate-photo:hover img{transform:none}}
