/* Quiet legal details share the estate's type and palette. */
footer{flex-wrap:wrap}
.legal-footer{flex:1 0 100%;grid-column:1/-1;width:100%;margin-top:24px;padding-top:22px;border-top:1px solid #c8beaf;font-size:11px;line-height:1.8;color:#685a4b;text-align:left}
.legal-footer p{margin:0 0 14px;text-align:left}
.legal-footer nav{display:flex;flex-wrap:wrap;gap:10px 25px;font-size:11px;letter-spacing:0;text-transform:none}
.legal-footer a,.legal-form-links a,.legal-document a,.map-notice a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.legal-form-links{font-size:12px;line-height:1.8;margin:12px 0 20px}
.legal-page .header{padding:30px 6vw;gap:20px;border-bottom:1px solid #d6cbbc}
.legal-document{max-width:880px;padding:60px 30px 90px;margin:0 auto}
.legal-back{display:inline-block;font-size:13px;margin-bottom:48px}
.legal-document h1{font-size:clamp(32px,5.5vw,60px);line-height:1.15;font-weight:400;letter-spacing:-.035em;margin:0 0 20px;hyphens:none;overflow-wrap:normal;word-break:normal}
.legal-document .eyebrow{margin-bottom:20px}
.legal-updated{font-size:12px;color:#736453;margin-bottom:48px}
.legal-document section{margin:36px 0 20px}
.legal-document h2{font-size:27px;line-height:1.3;letter-spacing:-.02em;margin:0 0 16px;hyphens:none;overflow-wrap:normal;word-break:normal}
.legal-document p{font-size:15px;line-height:1.95;overflow-wrap:break-word;hyphens:none}
.legal-document strong{font-weight:500}
.legal-document section[id]{scroll-margin-top:35px}
.bank-number{white-space:normal}
.location{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);grid-template-areas:"heading heading" "distances map" "directions toggle" "note privacy";column-gap:8%;row-gap:18px;align-items:start;border-top:1px solid #d2c7b8;background:#e9e3d8}
.location-heading{grid-area:heading;padding-bottom:22px;max-width:800px}
.location-summary{max-width:650px;margin-top:24px}
.location h2{font-size:clamp(32px,3.3vw,48px);line-height:1.17;margin:0;hyphens:none;overflow-wrap:normal;word-break:normal}
.location .eyebrow{font-size:10px;margin:0 0 22px}
.location-summary>p{font-size:15px;margin:0}
.location .location-address{font-style:normal;font-size:12px;line-height:1.7;margin:12px 0 0;color:#6c5d4d}
.location-distances{grid-area:distances;border-top:1px solid #c5b7a3;padding-top:18px}
.location .distance-heading{font-size:12px;margin:0 0 14px}
.location .distance-group{font-size:11px;color:#736453;margin:18px 0 8px}
.location-facts{padding:0;margin:0;font-size:13px;line-height:1.7}
.location-facts>div{display:grid;grid-template-columns:minmax(0,1fr) 78px;column-gap:18px;align-items:baseline;padding:6px 0}
.location-facts dt,.location-facts dd{margin:0;font-weight:400}
.location-facts dd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.airport-distances dt{display:grid;grid-template-columns:minmax(0,1fr) 34px;column-gap:12px;align-items:baseline}
.airport-code{font-size:10px;color:#736453;white-space:nowrap;letter-spacing:.05em}
.location-directions{grid-area:directions}
.location .distance-note{grid-area:note}
.location-map{grid-area:map;align-self:stretch;display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0}
.map-canvas{aspect-ratio:auto;position:relative;min-height:320px;background:#dfd8cb;overflow:hidden;border:1px solid #c8bba6}
.map-canvas>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.map-canvas #interactive-map{position:absolute;inset:0}
.map-canvas iframe{border:0;width:100%;height:100%;filter:grayscale(.7) sepia(.2);display:block}
.map-controls{grid-area:toggle;padding:0}
.location-directions .text-link,.map-controls .text-link{background:none;border:0;border-bottom:1px solid #8a7257;padding:10px 0;color:inherit;font-size:10px;letter-spacing:.1em;text-transform:uppercase;max-width:100%;text-align:left;line-height:1.7}
.map-notice{grid-area:privacy}
.location .distance-note,.location .map-notice{font-size:11px;line-height:1.7;margin:0;color:#6c5d4d}
.map-notice a{white-space:normal}
.location>noscript{grid-column:1/-1}
.other-airports{margin-top:14px;border-top:1px solid #c5b7a3}
.other-airports summary{display:flex;justify-content:space-between;align-items:baseline;gap:18px;cursor:pointer;list-style:none;padding:12px 0;font-size:13px;line-height:1.7}
.other-airports summary::-webkit-details-marker{display:none}
.other-airports summary>span{display:inline-block;transition:transform .15s ease}
.other-airports[open] summary>span{transform:rotate(45deg)}
.other-airports .location-facts{padding-bottom:6px}
/* Homepage pacing only: spacing and image crops, never language-specific type. */
.pietra-home .intro{padding-top:52px;padding-bottom:32px}
.pietra-home .hero img{aspect-ratio:16/7.2}
.pietra-home .section{padding-top:64px;padding-bottom:64px}
.pietra-home .estate-daylight{margin-top:30px}
.pietra-home .stay{padding-top:0}
.pietra-home .stay figure img{aspect-ratio:1/1}
.pietra-home .celebrate-heading{padding-top:70px;padding-bottom:38px}
.pietra-home .event-image{padding-bottom:25px}
.pietra-home .event-image img{aspect-ratio:16/6.4}
.pietra-home .detail-image img{aspect-ratio:4/3;object-position:center 48%}
.pietra-home .experiences{margin-top:22px;margin-bottom:14px}
.pietra-home .experiences summary{padding:13px 0}
.pietra-home .invitation{padding-top:64px;padding-bottom:60px}
.pietra-home .location-heading{padding-bottom:10px}
@media(max-width:1050px){.pietra-home .section{padding-top:62px;padding-bottom:62px}.pietra-home .stay{padding-top:0}.pietra-home .celebrate-heading{padding-top:58px;padding-bottom:32px}}
@media(max-width:700px){.pietra-home .intro{padding-top:40px;padding-bottom:28px}.pietra-home .hero img{aspect-ratio:16/10}.pietra-home .section{padding-top:40px;padding-bottom:40px}.pietra-home .estate{row-gap:24px}.pietra-home .estate-daylight{margin-top:0}.pietra-home .estate-daylight img{aspect-ratio:3/2}.pietra-home .stay{padding-top:0;gap:24px}.pietra-home .stay figure img{aspect-ratio:4/3}.pietra-home .concierge{gap:24px}.pietra-home .celebrate-heading{padding-top:44px;padding-bottom:28px}.pietra-home .event-image img{aspect-ratio:16/9}.pietra-home .event-image{padding-bottom:20px}.pietra-home .invitation{padding:44px 20px}.pietra-home .location-summary{margin-top:18px}}
@media(max-width:800px){.location{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "distances" "directions" "note" "map" "toggle" "privacy";row-gap:18px}.location-heading{padding-bottom:0}.location-summary{padding-bottom:8px}.location h2{font-size:34px}.location-map{margin-top:15px}.map-canvas{aspect-ratio:5/4;min-height:0}.location-facts>div{column-gap:12px;grid-template-columns:minmax(0,1fr) 72px}.airport-distances dt{column-gap:8px;grid-template-columns:minmax(0,1fr) 30px}}
@media(max-width:700px){.legal-document{padding:40px 24px 60px}.legal-document h2{font-size:25px}.legal-document p{font-size:14px}.legal-footer{margin-top:20px}.legal-footer nav{gap:12px 20px}.legal-page .header{padding:23px 24px}.legal-page .brand{font-size:23px}}

.concierge-options{margin:22px 0 18px;border-top:1px solid #c4b8a6;border-bottom:1px solid #c4b8a6}
.concierge-options>summary{display:flex;justify-content:space-between;gap:20px;padding:15px 0;cursor:pointer;list-style:none;font-size:18px;line-height:1.5}
.concierge-options>summary::-webkit-details-marker{display:none}
.concierge-options>summary>span{flex:none}
.concierge-options[open]>summary>span{transform:rotate(45deg)}
.concierge-options-content article{padding:12px 0;border-top:1px solid #c4b8a6}
.concierge-options-content h3{font-size:18px;line-height:1.5;font-weight:400;margin:0 0 10px}
.concierge-options-content p{font-size:14px;margin:0 0 8px}
